/* =========================================================
   LEGAL / TERMS AND CONDITIONS
   ========================================================= */

.sg-legal-page{
    --legal-bg:#f7f4ef;
    --legal-surface:#ffffff;
    --legal-text:#1f1a17;
    --legal-muted:#6f6964;
    --legal-line:#e8dfd7;
    --legal-accent:#0e6b68;
    --legal-accent-dark:#0a4f4c;
    --legal-accent-soft:#e5f1f0;
    max-width:980px;
    margin:0 auto 64px;
    color:var(--legal-text);
}

.sg-legal-page,
.sg-legal-page *{
    box-sizing:border-box;
}

.sg-legal-hero{
    margin-bottom:24px;
    padding:42px 40px;
    overflow:hidden;
    color:#ffffff;
    background:linear-gradient(135deg,#155b63 0%,#0d4c52 100%);
    border-radius:18px;
    box-shadow:0 12px 32px rgba(31,26,23,.10);
}

.sg-legal-eyebrow{
    display:inline-flex;
    align-items:center;
    min-height:30px;
    margin-bottom:16px;
    padding:6px 12px;
    color:#dff1ef;
    background:rgba(255,255,255,.12);
    border-radius:999px;
    font-size:12px;
    font-weight:700;
    letter-spacing:.09em;
    text-transform:uppercase;
}

.sg-legal-hero h1{
    margin:0 0 12px;
    color:#ffffff;
    font-size:42px;
    font-weight:700;
    line-height:1.1;
}

.sg-legal-hero > p{
    max-width:65ch;
    margin:0;
    color:rgba(255,255,255,.86);
    font-size:16px;
    line-height:1.65;
}

.sg-legal-meta{
    display:flex;
    flex-wrap:wrap;
    gap:10px 18px;
    margin-top:24px;
    color:rgba(255,255,255,.9);
    font-size:14px;
    font-weight:600;
}

.sg-legal-meta span{
    display:inline-flex;
    align-items:center;
    gap:8px;
}

.sg-legal-meta i{
    color:#d8b27a;
}

.sg-legal-navigation{
    margin-bottom:24px;
    padding:24px;
    background:var(--legal-surface);
    border:1px solid var(--legal-line);
    border-radius:16px;
    box-shadow:0 8px 24px rgba(31,26,23,.05);
}

.sg-legal-navigation strong{
    display:block;
    margin-bottom:12px;
    color:var(--legal-text);
    font-size:15px;
}

.sg-legal-navigation ol{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px 28px;
    margin:0;
    padding-left:22px;
}

.sg-legal-navigation li{
    margin:0;
    color:var(--legal-accent);
}

.sg-legal-navigation a{
    color:var(--legal-accent-dark);
    font-size:14px;
    font-weight:600;
    text-decoration:none;
}

.sg-legal-navigation a:hover,
.sg-legal-navigation a:focus{
    color:var(--legal-accent);
    text-decoration:underline;
}

.sg-legal-content{
    padding:6px 0;
}

.sg-legal-section{
    display:grid;
    grid-template-columns:56px minmax(0,1fr);
    gap:20px;
    margin-bottom:18px;
    padding:30px;
    background:var(--legal-surface);
    border:1px solid var(--legal-line);
    border-radius:16px;
    box-shadow:0 8px 24px rgba(31,26,23,.05);
}

.sg-legal-section-number{
    display:flex;
    align-items:center;
    justify-content:center;
    width:44px;
    height:44px;
    color:#ffffff;
    background:var(--legal-accent);
    border-radius:50%;
    font-size:15px;
    font-weight:800;
}

.sg-legal-section-content{
    min-width:0;
}

.sg-legal-section h2{
    margin:4px 0 16px;
    color:var(--legal-text);
    font-size:26px;
    font-weight:700;
    line-height:1.2;
}

.sg-legal-section h3{
    margin:24px 0 8px;
    color:var(--legal-text);
    font-size:17px;
    font-weight:700;
    line-height:1.35;
}

.sg-legal-section h3:first-of-type{
    margin-top:0;
}

.sg-legal-section p{
    max-width:78ch;
    margin:0 0 16px;
    color:var(--legal-muted);
    font-size:16px;
    line-height:1.72;
}

.sg-legal-section p:last-child{
    margin-bottom:0;
}

.sg-legal-section strong{
    color:var(--legal-text);
}

.sg-legal-list{
    display:grid;
    gap:9px;
    margin:0 0 18px;
    padding:0;
    list-style:none;
}

.sg-legal-list li{
    position:relative;
    padding-left:27px;
    color:var(--legal-muted);
    font-size:16px;
    line-height:1.6;
}

.sg-legal-list li:before{
    position:absolute;
    top:.65em;
    left:0;
    width:9px;
    height:9px;
    background:var(--legal-accent);
    border-radius:50%;
    content:"";
}

.sg-legal-note{
    display:flex;
    gap:12px;
    margin-top:20px;
    padding:16px 18px;
    background:#f4f8f7;
    border:1px solid #d6e8e5;
    border-radius:12px;
}

.sg-legal-note i{
    flex:0 0 auto;
    margin-top:4px;
    color:var(--legal-accent);
    font-size:18px;
}

.sg-legal-note p{
    margin:0;
    color:#48605d;
    font-size:14px;
    line-height:1.65;
}

.sg-legal-highlight{
    display:flex;
    gap:16px;
    align-items:flex-start;
    margin:0 0 20px;
    padding:18px;
    background:linear-gradient(135deg,#edf6f5 0%,#f8fbfa 100%);
    border:1px solid #d8ebe8;
    border-radius:14px;
}

.sg-legal-highlight-icon{
    display:flex;
    flex:0 0 46px;
    align-items:center;
    justify-content:center;
    width:46px;
    height:46px;
    color:#ffffff;
    background:var(--legal-accent);
    border-radius:50%;
}

.sg-legal-highlight h3{
    margin:1px 0 6px;
    color:var(--legal-text);
    font-size:17px;
}

.sg-legal-highlight p{
    margin:0;
    color:var(--legal-muted);
    font-size:14px;
}

.sg-legal-footer{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-top:24px;
    padding:20px 24px;
    color:var(--legal-muted);
    background:#f7f4ef;
    border:1px solid var(--legal-line);
    border-radius:14px;
    font-size:14px;
}

.sg-legal-footer strong{
    color:var(--legal-text);
}

@media (max-width:767px){
    .sg-legal-page{
        margin-bottom:36px;
    }

    .sg-legal-hero{
        padding:30px 22px;
        border-radius:14px;
    }

    .sg-legal-hero h1{
        font-size:32px;
    }

    .sg-legal-navigation{
        padding:20px;
        border-radius:14px;
    }

    .sg-legal-navigation ol{
        grid-template-columns:1fr;
        gap:9px;
    }

    .sg-legal-section{
        grid-template-columns:1fr;
        gap:14px;
        padding:22px 18px;
        border-radius:14px;
    }

    .sg-legal-section-number{
        width:38px;
        height:38px;
        font-size:14px;
    }

    .sg-legal-section h2{
        margin-top:0;
        font-size:23px;
    }

    .sg-legal-section p,
    .sg-legal-list li{
        font-size:15px;
    }

    .sg-legal-highlight{
        padding:16px;
    }

    .sg-legal-footer{
        display:grid;
        gap:5px;
        padding:18px;
    }
}
.sg-legal-navigation {
    scroll-margin-top: 150px;
}

@media (max-width: 991px) {
    .sg-legal-section {
        scroll-margin-top: 115px;
    }

    .sg-legal-navigation {
        scroll-margin-top: 115px;
    }
}

@media (max-width: 575px) {
    .sg-legal-section {
        scroll-margin-top: 95px;
    }

    .sg-legal-navigation {
        scroll-margin-top: 95px;
    }
}