/* =========================================================
   SANTE BEAUTY — DATENSCHUTZ
   Luxury Editorial Legal Page
========================================================= */

.privacy-page{
    width:100%;
    overflow:hidden;
    background:#fbf8f4;
    color:#342821;
}

.privacy-hero{
    position:relative;
    padding:115px 24px 105px;
    background:
        radial-gradient(circle at 84% 18%,rgba(184,145,112,.18),transparent 31%),
        linear-gradient(135deg,#f8f1ea 0%,#eee0d3 100%);
    border-bottom:1px solid rgba(137,97,70,.12);
}

.privacy-hero::after{
    content:"";
    position:absolute;
    right:8%;
    top:50%;
    width:290px;
    height:290px;
    border:1px solid rgba(151,108,77,.14);
    border-radius:50%;
    transform:translateY(-50%);
}

.privacy-hero-inner{
    position:relative;
    z-index:2;
    width:100%;
    max-width:1180px;
    margin:0 auto;
}

.privacy-kicker{
    display:block;
    margin-bottom:17px;
    font:500 9px "DM Sans",sans-serif;
    letter-spacing:5px;
    color:#9b7155;
}

.privacy-hero h1{
    margin:0;
    font:400 clamp(58px,7vw,96px)/.98 "Playfair Display",serif;
    letter-spacing:-2.5px;
    color:#33251e;
}

.privacy-hero p{
    max-width:590px;
    margin:28px 0 0;
    font:300 15px/1.8 "DM Sans",sans-serif;
    color:#756b64;
}

.privacy-signature{
    margin-top:34px;
    font:500 9px "DM Sans",sans-serif;
    letter-spacing:3.4px;
    color:#9b7155;
}

.privacy-signature span{
    margin-left:8px;
    font-family:"Allura",cursive;
    font-size:27px;
    letter-spacing:0;
    color:#b38a6d;
}

.privacy-content{
    padding:90px 24px 120px;
    background:#fff;
}

.privacy-layout{
    width:100%;
    max-width:1180px;
    margin:0 auto;
    display:grid;
    grid-template-columns:220px minmax(0,760px);
    gap:95px;
    justify-content:center;
    align-items:start;
}

.privacy-side{
    position:sticky;
    top:115px;
    display:flex;
    flex-direction:column;
    gap:14px;
    padding:24px 0;
    border-top:1px solid #d8c6b8;
    border-bottom:1px solid #e8ddd5;
}

.privacy-side>span{
    margin-bottom:7px;
    font:500 8px "DM Sans",sans-serif;
    letter-spacing:3.5px;
    color:#a47a5e;
}

.privacy-side a{
    text-decoration:none;
    font:400 12px/1.5 "DM Sans",sans-serif;
    color:#756a63;
    transition:.25s ease;
}

.privacy-side a:hover{
    color:#8d6044;
    transform:translateX(4px);
}

.privacy-article{
    min-width:0;
}

.privacy-block{
    position:relative;
    padding:0 0 58px;
    margin:0 0 58px;
    border-bottom:1px solid #eee6df;
    scroll-margin-top:115px;
}

.privacy-number{
    display:block;
    margin-bottom:13px;
    font:500 8px "DM Sans",sans-serif;
    letter-spacing:3px;
    color:#b08b72;
}

.privacy-block h2{
    margin:0 0 22px;
    font:400 32px/1.2 "Playfair Display",serif;
    color:#382a23;
}

.privacy-block p{
    margin:0 0 17px;
    font:300 14px/1.85 "DM Sans",sans-serif;
    color:#6f6761;
}

.privacy-card{
    margin:4px 0 25px;
    padding:26px 30px;
    background:#f8f3ee;
    border-left:2px solid #b58a6c;
}

.privacy-card strong{
    display:block;
    margin-bottom:12px;
    font:500 14px "DM Sans",sans-serif;
    letter-spacing:.6px;
    color:#3e2e25;
}

.privacy-card p{
    margin:0 0 12px;
    line-height:1.7;
}

.privacy-card p:last-child{margin-bottom:0}

.privacy-card a{
    color:#8f654c;
    text-decoration:none;
}

.privacy-update{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:22px 0;
    border-top:1px solid #d9c8bb;
    border-bottom:1px solid #d9c8bb;
    font-family:"DM Sans",sans-serif;
}

.privacy-update span{
    font-size:9px;
    letter-spacing:3px;
    text-transform:uppercase;
    color:#9e7a63;
}

.privacy-update strong{
    font-size:12px;
    font-weight:400;
    color:#625850;
}

@media(max-width:900px){
    .privacy-layout{
        grid-template-columns:1fr;
        gap:45px;
        max-width:760px;
    }
    .privacy-side{
        position:static;
        display:grid;
        grid-template-columns:repeat(2,1fr);
        gap:12px 24px;
    }
    .privacy-side>span{grid-column:1/-1}
}

@media(max-width:700px){

    .privacy-page{
        padding-bottom:0;
    }

    body{
        padding-bottom:68px;
    }

    .privacy-hero{
        padding:72px 20px 67px;
    }

    .privacy-hero::after{
        width:190px;
        height:190px;
        right:-65px;
        top:32%;
    }

    .privacy-kicker{
        margin-bottom:13px;
        font-size:7px;
        letter-spacing:3.5px;
    }

    .privacy-hero h1{
        font-size:49px;
        letter-spacing:-1.5px;
    }

    .privacy-hero p{
        max-width:330px;
        margin-top:21px;
        font-size:13px;
        line-height:1.7;
    }

    .privacy-signature{
        margin-top:25px;
        font-size:7px;
        letter-spacing:2.5px;
    }

    .privacy-signature span{font-size:23px}

    .privacy-content{
        padding:48px 20px 70px;
    }

    .privacy-layout{gap:42px}

    .privacy-side{
        grid-template-columns:1fr 1fr;
        padding:20px 0;
    }

    .privacy-side a{font-size:11px}

    .privacy-block{
        padding-bottom:37px;
        margin-bottom:38px;
    }

    .privacy-block h2{
        margin-bottom:18px;
        font-size:27px;
    }

    .privacy-block p{
        font-size:13px;
        line-height:1.78;
    }

    .privacy-card{
        padding:22px 20px;
    }

    .privacy-update{
        padding:18px 0;
    }

    .privacy-update span{font-size:7px}
    .privacy-update strong{font-size:11px}
}


/* =========================================================
   MOBILE BOTTOM NAV — SANTE BEAUTY
   ========================================================= */

.gallery-bottom-nav{
    display:none;
}

@media (max-width:700px){

    body{
        padding-bottom:76px !important;
    }

    .gallery-bottom-nav{
        position:fixed !important;
        left:10px !important;
        right:10px !important;
        bottom:8px !important;

        display:grid !important;
        grid-template-columns:repeat(5, 1fr) !important;
        align-items:center !important;

        width:auto !important;
        height:64px !important;

        margin:0 !important;
        padding:0 6px !important;

        background:rgba(255,253,250,.97) !important;
        border:1px solid rgba(91,64,48,.10) !important;
        border-radius:24px !important;

        box-shadow:0 8px 28px rgba(73,51,41,.14) !important;

        z-index:99999 !important;
        overflow:visible !important;
        box-sizing:border-box !important;
    }

    /* 5 MENU ITEMS */

    .gallery-bottom-nav > a{
        position:relative !important;

        display:flex !important;
        flex-direction:column !important;
        align-items:center !important;
        justify-content:center !important;

        gap:4px !important;

        width:100% !important;
        height:64px !important;

        margin:0 !important;
        padding:7px 1px 5px !important;

        color:#7b6b61 !important;
        background:transparent !important;

        border:0 !important;
        border-radius:0 !important;
        box-shadow:none !important;

        text-decoration:none !important;
        transform:none !important;
        box-sizing:border-box !important;
    }

    /* NORMAL ICONS */

    .gallery-bottom-nav > a > svg{
        display:block !important;

        width:21px !important;
        height:21px !important;

        margin:0 !important;

        fill:none !important;
        stroke:currentColor !important;

        stroke-width:1.7 !important;
        stroke-linecap:round !important;
        stroke-linejoin:round !important;
    }

    /* TEXT */

    .gallery-bottom-nav > a > span{
        display:block !important;

        margin:0 !important;
        padding:0 !important;

        color:inherit !important;

        font-family:"DM Sans",sans-serif !important;
        font-size:9px !important;
        font-weight:500 !important;
        line-height:1 !important;

        letter-spacing:0 !important;
        white-space:nowrap !important;
    }

    /* =========================
       CENTER BOOKING BUTTON
       ========================= */

    .gallery-bottom-nav > a.book{
        justify-content:flex-end !important;
        padding-bottom:6px !important;

        color:#6b4b39 !important;
    }

    .gallery-bottom-nav > a.book > i{
        position:absolute !important;

        left:50% !important;
        top:-18px !important;

        transform:translateX(-50%) !important;

        display:flex !important;
        align-items:center !important;
        justify-content:center !important;

        width:50px !important;
        height:50px !important;

        margin:0 !important;
        padding:0 !important;

        background:linear-gradient(
            145deg,
            #a77752,
            #7f583f
        ) !important;

        border:4px solid #fffdf9 !important;
        border-radius:50% !important;

        box-shadow:
            0 6px 16px rgba(73,51,41,.20) !important;

        box-sizing:border-box !important;
    }
    

    /* BOOKING ICON */

    .gallery-bottom-nav > a.book > i > svg{
        display:block !important;

        width:23px !important;
        height:23px !important;

        fill:none !important;
stroke:#ffffff !important;
        stroke-width:1.8 !important;
        stroke-linecap:round !important;
        stroke-linejoin:round !important;
    }

    /* BOOKING TEXT */

    .gallery-bottom-nav > a.book > span{
        margin-top:31px !important;
    }    }
    /* ===== LEGAL FOOTER ===== */

.datenschutz-mini-footer{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:25px;

    padding:24px max(24px, calc((100% - 1180px)/2));

    background:#fff;
    border-top:1px solid #eee3da;

    font:400 10px "DM Sans", sans-serif;
    color:#82756c;
}

.datenschutz-mini-footer nav{
    display:flex;
    gap:24px;
}

.datenschutz-mini-footer a{
    color:#68584e;
    text-decoration:none;
}

.datenschutz-mini-footer a.active{
    color:#986a4b;
}


/* MOBILE */
@media(max-width:700px){

    .datenschutz-mini-footer{
        display:block;
        text-align:center;

        padding:32px 20px 35px;
        margin-bottom:0;
    }

    .datenschutz-mini-footer nav{
        justify-content:center;
        gap:22px;
        margin-top:18px;
    }

    .datenschutz-mini-footer a{
        font-size:13px;
    }
}