/* =========================================================
   BELLA — PRIVACY POLICY CORE PAGE
   Services/location hero + homepage typography, palette and motion.
   ========================================================= */

.bella-privacy-breadcrumb{border-bottom:1px solid var(--silver);background:#fff}
.bella-privacy-breadcrumb ol{display:flex;flex-wrap:wrap;gap:10px;align-items:center;list-style:none;margin:0;padding:15px 0;font-size:11px;letter-spacing:.11em;text-transform:uppercase;color:#727874}
.bella-privacy-breadcrumb li+li::before{content:"/";margin-right:10px;color:#aab1ad}
.bella-privacy-breadcrumb a{color:var(--sage-deep)}
.bella-privacy-breadcrumb a:hover{color:var(--near-black)}

.bella-privacy-hero .bella-services-hero__visual img{filter:saturate(.65) contrast(.96)}
.bella-privacy-hero .bella-services-hero__visual::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(150deg,rgba(25,25,25,.02),rgba(113,128,120,.14));pointer-events:none}
.bella-privacy-date-row{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:32px;padding-top:21px;border-top:1px solid var(--silver)}
.bella-privacy-date-row span{display:flex;gap:7px;align-items:center;color:var(--graphite);font-size:11px;line-height:1.5}
.bella-privacy-date-row b{font-size:9px;letter-spacing:.11em;text-transform:uppercase;color:var(--sage-deep)}

[data-bella-privacy-reveal]{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .78s cubic-bezier(.22,1,.36,1)}
[data-bella-privacy-reveal].is-visible{opacity:1;transform:none}

.bella-privacy-head,.bella-privacy-section>header{max-width:920px;margin-bottom:36px}
.bella-privacy-head h2,.bella-privacy-section>header h2{margin:0 0 18px;color:var(--near-black);font-size:38px;line-height:1.13;letter-spacing:-.038em;font-weight:600;text-wrap:balance}
.bella-privacy-head>p:not(.bella-services-script),.bella-privacy-section>header>p:not(.bella-services-script){margin:0;color:var(--graphite);font-size:15px;line-height:1.82;max-width:850px}

/* Summary */
.bella-privacy-summary{padding:112px 0 118px;background:var(--mist)}
.bella-privacy-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--silver);border-left:1px solid var(--silver)}
.bella-privacy-summary-card{position:relative;min-height:285px;padding:28px 26px;background:#fff;border-right:1px solid var(--silver);border-bottom:1px solid var(--silver)}
.bella-privacy-summary-card>span{display:block;width:34px;height:1px;margin:0 0 44px;background:var(--sage)}
.bella-privacy-summary-card h3{margin:0 0 14px;font-size:21px;line-height:1.3;letter-spacing:-.025em}
.bella-privacy-summary-card p{margin:0;color:var(--graphite);font-size:13px;line-height:1.78}

/* Main two-column policy */
.bella-privacy-layout{display:grid;grid-template-columns:235px minmax(0,1fr);gap:82px;align-items:start;padding-top:114px;padding-bottom:126px}
.bella-privacy-nav{position:sticky;top:142px;padding:22px 0;border-top:1px solid var(--silver);border-bottom:1px solid var(--silver)}
.bella-privacy-nav>span{display:block;margin-bottom:15px;color:var(--sage);font-size:9px;letter-spacing:.13em;text-transform:uppercase;font-weight:700}
.bella-privacy-nav a{display:block;padding:7px 0;color:#5f6662;font-size:12px;line-height:1.45;transition:color .18s ease,transform .18s ease}
.bella-privacy-nav a:hover{color:var(--near-black);transform:translateX(3px)}
.bella-privacy-main{min-width:0}
.bella-privacy-section{padding:0 0 78px;margin-bottom:78px;border-bottom:1px solid var(--silver);scroll-margin-top:135px}
.bella-privacy-section:last-child{margin-bottom:0}
.bella-privacy-copy{max-width:900px}
.bella-privacy-copy p{margin:0;color:var(--graphite);font-size:15px;line-height:1.86}
.bella-privacy-copy p+p{margin-top:18px}
.bella-privacy-note{margin:24px 0 0;padding:19px 22px;border-left:3px solid var(--sage);background:#f6f7f6;color:var(--graphite);font-size:13px;line-height:1.75}

/* Data groups */
.bella-privacy-data-groups{display:grid;gap:18px}
.bella-privacy-data-card{padding:28px;border:1px solid var(--silver);background:#fff}
.bella-privacy-data-card h3{margin:0 0 20px;font-size:22px;line-height:1.28;letter-spacing:-.025em}
.bella-privacy-data-card ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 25px;margin:0;padding:0;list-style:none}
.bella-privacy-data-card li{position:relative;padding-left:17px;color:#4f5552;font-size:13px;line-height:1.58}
.bella-privacy-data-card li::before{content:"";position:absolute;left:0;top:.68em;width:5px;height:5px;border-radius:50%;background:var(--sage)}
.bella-privacy-data-card>p{margin:22px 0 0;padding-top:19px;border-top:1px solid var(--silver);color:#717773;font-size:12px;line-height:1.7}

/* Storage table */
.bella-privacy-storage-table{border-top:1px solid var(--silver);border-left:1px solid var(--silver)}
.bella-privacy-storage-row{display:grid;grid-template-columns:130px 165px 210px minmax(0,1fr)}
.bella-privacy-storage-row>*{padding:17px 18px;border-right:1px solid var(--silver);border-bottom:1px solid var(--silver);color:#505653;font-size:12px;line-height:1.6}
.bella-privacy-storage-row--head>*{background:var(--near-black);color:#fff;font-size:9px;text-transform:uppercase;letter-spacing:.11em;font-weight:700}
.bella-privacy-storage-row code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:var(--sage-deep);font-size:11px;background:#f8f9f8}
.bella-privacy-storage-row span b{display:block;color:#333936;font-size:11px;margin-bottom:3px}
.bella-privacy-storage-row span small{display:block;color:#747b77;font-size:10px;line-height:1.5}

/* List cards */
.bella-privacy-list-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--silver);border-left:1px solid var(--silver)}
.bella-privacy-list-cards article{min-height:215px;padding:25px 25px 28px;border-right:1px solid var(--silver);border-bottom:1px solid var(--silver);background:#fff}
.bella-privacy-list-cards h3{margin:0 0 13px;font-size:19px;line-height:1.3;letter-spacing:-.02em}
.bella-privacy-list-cards p{margin:0;color:var(--graphite);font-size:13px;line-height:1.75}

/* Law */
.bella-privacy-source-list{margin-top:30px;border-top:1px solid var(--silver)}
.bella-privacy-source-list a{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 0;border-bottom:1px solid var(--silver);color:#3c4440;font-size:12px;font-weight:600}
.bella-privacy-source-list b{color:var(--sage);font-size:17px;font-weight:400}

/* Choice control */
.bella-privacy-choice-section{padding:38px;margin-left:-38px;margin-right:-38px;background:var(--mist);border-bottom:0}
.bella-privacy-choice-box{padding:30px;background:#fff;border:1px solid var(--silver)}
.bella-privacy-choice-status{display:grid;grid-template-columns:12px minmax(0,1fr);gap:15px;align-items:start}
.bella-privacy-choice-dot{width:10px;height:10px;margin-top:7px;border-radius:50%;background:#9aa29e;box-shadow:0 0 0 5px rgba(113,128,120,.09)}
.bella-privacy-choice-box.is-enabled .bella-privacy-choice-dot{background:#718078}
.bella-privacy-choice-box.is-disabled .bella-privacy-choice-dot,.bella-privacy-choice-box.is-signal .bella-privacy-choice-dot{background:#46534d}
.bella-privacy-choice-status strong{display:block;color:var(--near-black);font-size:18px;line-height:1.35}
.bella-privacy-choice-status p{margin:8px 0 0;max-width:760px;color:var(--graphite);font-size:13px;line-height:1.72}
.bella-privacy-choice-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.bella-privacy-choice-actions button{appearance:none;border:1px solid var(--near-black);background:var(--near-black);color:#fff;min-height:46px;padding:0 20px;font-family:inherit;font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:700;cursor:pointer;transition:background .2s ease,color .2s ease}
.bella-privacy-choice-actions button+button{background:#fff;color:var(--near-black)}
.bella-privacy-choice-actions button:hover{background:var(--sage-deep);border-color:var(--sage-deep);color:#fff}
.bella-privacy-choice-actions button:disabled{opacity:.45;cursor:not-allowed}
.bella-privacy-choice-essential{margin:24px 0 0;padding-top:19px;border-top:1px solid var(--silver);color:#737975;font-size:11px;line-height:1.68}

/* Rights */
.bella-privacy-rights-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;padding:1px;background:var(--silver);list-style:none}
.bella-privacy-rights-list li{position:relative;padding:20px 22px 20px 45px;background:#fff;color:#474d4a;font-size:13px;line-height:1.65}
.bella-privacy-rights-list li::before{content:"✓";position:absolute;left:20px;top:19px;color:var(--sage);font-weight:700}

/* Social */
.bella-privacy-sub-label{margin:26px 0 15px;color:var(--sage-deep);font-size:9px;text-transform:uppercase;letter-spacing:.13em;font-weight:700}
.bella-privacy-social-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--silver);border-left:1px solid var(--silver)}
.bella-privacy-social-grid a{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:78px;padding:18px;border-right:1px solid var(--silver);border-bottom:1px solid var(--silver);font-size:12px;font-weight:600}
.bella-privacy-social-grid b{color:var(--sage);font-size:17px;font-weight:400}
.bella-privacy-all-profiles{margin-top:24px;border-top:1px solid var(--silver);border-bottom:1px solid var(--silver)}
.bella-privacy-all-profiles summary{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:19px 0;cursor:pointer;list-style:none;font-size:12px;font-weight:600}
.bella-privacy-all-profiles summary::-webkit-details-marker{display:none}
.bella-privacy-all-profiles summary b{color:var(--sage);font-size:20px;font-weight:400;transition:transform .2s ease}
.bella-privacy-all-profiles[open] summary b{transform:rotate(45deg)}
.bella-privacy-profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-bottom:22px;padding:1px;background:var(--silver)}
.bella-privacy-profile-grid a{display:flex;flex-direction:column;gap:4px;min-height:74px;padding:15px;background:#fff}
.bella-privacy-profile-grid span{font-size:12px;font-weight:600}
.bella-privacy-profile-grid small{font-size:9px;color:#747a77;word-break:break-word}

/* Contact */
.bella-privacy-contact-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.72fr);gap:48px;padding:32px;background:var(--near-black);color:#fff}
.bella-privacy-contact-card h3{margin:8px 0 14px;color:#fff;font-size:29px;letter-spacing:-.035em}
.bella-privacy-contact-card p{margin:0;color:#cfd6d2;font-size:13px;line-height:1.75}
.bella-privacy-contact-card .bella-privacy-sub-label{color:#b7c4bd;margin:0}
.bella-privacy-contact-links{border-top:1px solid rgba(255,255,255,.18)}
.bella-privacy-contact-links a{display:grid;grid-template-columns:130px minmax(0,1fr);gap:15px;padding:15px 0;border-bottom:1px solid rgba(255,255,255,.18);color:#fff}
.bella-privacy-contact-links span{color:#aebbb4;font-size:9px;text-transform:uppercase;letter-spacing:.11em;font-weight:700}
.bella-privacy-contact-links strong{font-size:12px;line-height:1.5;font-weight:500;word-break:break-word}

/* FAQ */
.bella-privacy-faq-list{border-top:1px solid var(--silver)}
.bella-privacy-faq-list details{border-bottom:1px solid var(--silver)}
.bella-privacy-faq-list summary{display:grid;grid-template-columns:minmax(0,1fr) 22px;gap:18px;align-items:center;padding:21px 0;cursor:pointer;list-style:none;font-size:15px;line-height:1.5;font-weight:600}
.bella-privacy-faq-list summary::-webkit-details-marker{display:none}
.bella-privacy-faq-list summary b{position:relative;width:18px;height:18px}
.bella-privacy-faq-list summary b::before,.bella-privacy-faq-list summary b::after{content:"";position:absolute;left:50%;top:50%;width:13px;height:1px;background:var(--sage-deep);transform:translate(-50%,-50%)}
.bella-privacy-faq-list summary b::after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .2s ease}
.bella-privacy-faq-list details[open] summary b::after{transform:translate(-50%,-50%)}
.bella-privacy-faq-list details>div{padding:0 44px 22px 0}
.bella-privacy-faq-list p{margin:0;color:var(--graphite);font-size:13px;line-height:1.8}

@media(max-width:1120px){
  .bella-privacy-layout{grid-template-columns:200px minmax(0,1fr);gap:48px}
  .bella-privacy-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bella-privacy-storage-row{grid-template-columns:115px 145px 180px minmax(0,1fr)}
  .bella-privacy-social-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:900px){
  .bella-privacy-layout{grid-template-columns:1fr;padding-top:80px}
  .bella-privacy-nav{position:static;display:flex;flex-wrap:wrap;gap:8px;padding:0 0 30px;border-top:0}
  .bella-privacy-nav>span{width:100%;margin-bottom:5px}
  .bella-privacy-nav a{padding:8px 12px;border:1px solid var(--silver);background:#fff}
  .bella-privacy-data-card ul{grid-template-columns:1fr}
  .bella-privacy-storage-table{border:0}
  .bella-privacy-storage-row--head{display:none}
  .bella-privacy-storage-row{display:grid;grid-template-columns:1fr;margin-bottom:14px;border:1px solid var(--silver)}
  .bella-privacy-storage-row>*{display:grid;grid-template-columns:125px minmax(0,1fr);gap:14px;border-right:0}
  .bella-privacy-storage-row>*::before{content:attr(data-label);font-size:9px;text-transform:uppercase;letter-spacing:.11em;font-weight:700;color:var(--sage)}
  .bella-privacy-storage-row code{display:grid}
  .bella-privacy-list-cards,.bella-privacy-rights-list{grid-template-columns:1fr}
  .bella-privacy-choice-section{margin-left:0;margin-right:0}
  .bella-privacy-contact-card{grid-template-columns:1fr}
  .bella-privacy-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
  .bella-privacy-summary{padding:80px 0 84px}
  .bella-privacy-layout{padding-top:72px;padding-bottom:90px}
  .bella-privacy-summary-grid{grid-template-columns:1fr}
  .bella-privacy-summary-card{min-height:0}
  .bella-privacy-head h2,.bella-privacy-section>header h2{font-size:30px;line-height:1.16}
  .bella-privacy-section{padding-bottom:58px;margin-bottom:58px}
  .bella-privacy-storage-row>*{grid-template-columns:1fr;gap:5px;padding:14px}
  .bella-privacy-social-grid,.bella-privacy-profile-grid{grid-template-columns:1fr}
  .bella-privacy-choice-section{padding:24px 18px}
  .bella-privacy-choice-box{padding:22px}
  .bella-privacy-choice-actions{display:grid}
  .bella-privacy-choice-actions button{width:100%}
  .bella-privacy-contact-card{padding:25px 20px}
  .bella-privacy-contact-links a{grid-template-columns:1fr;gap:4px}
}
@media(prefers-reduced-motion:reduce){
  [data-bella-privacy-reveal]{opacity:1!important;transform:none!important;transition:none!important}
}
