/* Simple content template for privacy policy, terms, trade terms and similar pages. */
.sgg-legal-page {
    --sgg-legal-nav-offset:78px;
    min-height:60vh;
    background:#faf9f5;
    padding:calc(var(--sgg-legal-nav-offset) + 38px) 0 96px;
    color: #111;
}

.sgg-legal-article {
    width: min(100%, 880px);
    margin: 0 auto;
}

.sgg-legal-header {
    margin: 0 0 42px;
    padding-bottom: 26px;
    border-bottom: 1px solid #dfded8;
}

.sgg-legal-header h1 {
    margin: 0;
    max-width: 780px;
    font-size: clamp(2.25rem, 5vw, 4rem);
    line-height: .98;
    letter-spacing: -.045em;
    font-weight: 800;
    color: #111;
}

.sgg-legal-content {
    font-size: 1rem;
    line-height: 1.78;
    color: #3f3f3a;
}

.sgg-legal-content > *:first-child { margin-top: 0; }
.sgg-legal-content > *:last-child { margin-bottom: 0; }

.sgg-legal-content h2,
.sgg-legal-content h3,
.sgg-legal-content h4 {
    color: #111;
    letter-spacing: -.025em;
    font-weight: 750;
}

.sgg-legal-content h2 {
    margin: 52px 0 16px;
    font-size: clamp(1.55rem, 3vw, 2.1rem);
    line-height: 1.15;
}

.sgg-legal-content h3 {
    margin: 34px 0 12px;
    font-size: 1.25rem;
    line-height: 1.25;
}

.sgg-legal-content h4 {
    margin: 28px 0 10px;
    font-size: 1.05rem;
    line-height: 1.3;
}

.sgg-legal-content p,
.sgg-legal-content ul,
.sgg-legal-content ol,
.sgg-legal-content table,
.sgg-legal-content blockquote {
    margin-top: 0;
    margin-bottom: 20px;
}

.sgg-legal-content ul,
.sgg-legal-content ol {
    padding-left: 1.35rem;
}

.sgg-legal-content li + li { margin-top: 7px; }

.sgg-legal-content a {
    color: #111;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}

.sgg-legal-content a:hover { color: #227950; }

.sgg-legal-content strong { color: #111; }

.sgg-legal-content hr {
    margin: 42px 0;
    border: 0;
    border-top: 1px solid #dfded8;
}

.sgg-legal-content blockquote {
    padding: 4px 0 4px 22px;
    border-left: 2px solid #227950;
    color: #55554f;
}

.sgg-legal-content table {
    width: 100%;
    border-collapse: collapse;
    font-size: .94rem;
}

.sgg-legal-content th,
.sgg-legal-content td {
    padding: 12px 14px;
    border-bottom: 1px solid #dfded8;
    text-align: left;
    vertical-align: top;
}

.sgg-legal-content th {
    color: #111;
    font-weight: 700;
}

@media (max-width: 767px) {
    .sgg-legal-page { --sgg-legal-nav-offset:72px; padding:calc(var(--sgg-legal-nav-offset) + 28px + env(safe-area-inset-top)) 0 70px; }
    .sgg-legal-header { margin-bottom: 30px; padding-bottom: 20px; }
    .sgg-legal-content { font-size: .97rem; line-height: 1.72; }
    .sgg-legal-content h2 { margin-top: 40px; }
}


/* v9.6.51 · Legal/cookie pages stay below the fixed mobile navigation. */
@media(max-width:767px){
    .sgg-legal-header h1{font-size:clamp(2.15rem,10vw,3rem);line-height:1.02;}
    .sgg-legal-header{margin-bottom:26px;}
    .sgg-legal-content table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;}
}
