/* Blanc Estates Miami — Shared stylesheet v2026-05-13
   Used by index.html and all service / blog / area pages.
*/

:root {
  --navy: #0F2347;
  --navy2: #1A3A5C;
  --navy-deep: #081530;
  --gold: #C9A84C;
  --gold-light: #e8c96a;
  --teal: #2C7A7B;
  --cream: #FAF8F3;
  --light: #F3EFE6;
  --gray: #6B7280;
  --gray-soft: #9CA3AF;
  --dark: #1a1a1a;
  --white: #ffffff;
  --success: #2D6A4F;
}
*{margin:0;padding:0;box-sizing:border-box;}
html,body{overflow-x:hidden;width:100%;max-width:100%;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%;}
body{font-family:'Montserrat',sans-serif;background:#fff;color:var(--dark);font-size:15px;line-height:1.75;-webkit-font-smoothing:antialiased;position:relative;}
img{max-width:100%;display:block;height:auto;}
a{color:var(--navy);}
a:hover{color:var(--gold);}

/* ── LANG TOGGLE ── */
.lang-es .en{display:none!important;}
.lang-en .es{display:none!important;}

/* ── NAV ── */
nav.site-nav{position:fixed;top:0;left:0;right:0;width:100%;max-width:100vw;z-index:1000;background:rgba(15,35,71,0.97);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:14px 60px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(201,168,76,0.25);}
.nav-logo{display:flex;align-items:center;gap:14px;text-decoration:none;}
.nav-diamond{width:36px;height:36px;border:1.5px solid var(--gold);transform:rotate(45deg);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.nav-diamond span{transform:rotate(-45deg);font-size:13px;color:var(--gold);font-family:'Cormorant Garamond',serif;}
.nav-brand h1, .nav-brand .nav-brandmark{font-family:'Cormorant Garamond',serif;font-size:19px;letter-spacing:5px;color:white;font-weight:400;margin:0;}
.nav-brand p{font-size:9px;letter-spacing:4px;color:var(--gold);text-transform:uppercase;margin-top:1px;}
.nav-links{display:flex;align-items:center;gap:30px;}
.nav-links a{color:rgba(255,255,255,0.8);text-decoration:none;font-size:11px;letter-spacing:2px;text-transform:uppercase;transition:color .3s;}
.nav-links a:hover{color:var(--gold);}
.nav-cta{background:var(--gold);color:var(--navy)!important;padding:10px 22px;font-weight:600;letter-spacing:1.5px;transition:background .3s!important;}
.nav-cta:hover{background:var(--gold-light)!important;}
.nav-actions{display:flex;align-items:center;gap:14px;margin-left:auto;}
.lang-btn{background:transparent;border:1px solid rgba(201,168,76,0.5);color:var(--gold);font-size:11px;letter-spacing:2px;padding:8px 14px;cursor:pointer;font-family:'Montserrat',sans-serif;font-weight:600;transition:background .25s,color .25s;display:inline-flex;align-items:center;gap:5px;line-height:1;text-decoration:none;}
.lang-btn:hover,.lang-btn:focus{background:var(--gold);color:var(--navy);outline:none;}
.lang-current{color:var(--gold);font-weight:700;transition:color .25s;}
.lang-btn:hover .lang-current,.lang-btn:focus .lang-current{color:var(--navy);}
.lang-sep{opacity:0.5;}
.lang-other{opacity:0.55;}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:6px;background:transparent;border:none;}
.hamburger span{display:block;width:24px;height:2px;background:white;transition:all .3s;pointer-events:none;}
@media(max-width:1024px){
  nav.site-nav{padding:12px 20px;}
  .nav-brand h1,.nav-brand .nav-brandmark{font-size:16px;letter-spacing:3px;}
  .nav-brand p{font-size:8px;letter-spacing:3px;}
  .nav-diamond{width:32px;height:32px;}
  .nav-links{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(15,35,71,0.98);flex-direction:column;align-items:center;justify-content:center;gap:28px;z-index:999;padding:80px 20px 40px;overflow-y:auto;}
  .nav-links.open{display:flex;}
  .nav-links a{font-size:13px;}
  .hamburger{display:flex;z-index:1001;}
  .hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  .hamburger.open span:nth-child(2){opacity:0;}
  .hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
}

/* ── PAGE HERO (service / blog) ── */
.page-hero{background:linear-gradient(160deg,#081530 0%,#0F2347 45%,#1a3060 100%);padding:160px 60px 80px;color:white;position:relative;overflow:hidden;}
.page-hero::before{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23C9A84C' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");}
.page-hero-inner{position:relative;z-index:1;max-width:920px;margin:0 auto;}
.breadcrumb{font-size:11px;letter-spacing:2px;color:rgba(255,255,255,0.55);text-transform:uppercase;margin-bottom:24px;}
.breadcrumb a{color:var(--gold);text-decoration:none;}
.breadcrumb a:hover{color:var(--gold-light);}
.breadcrumb span{color:rgba(255,255,255,0.3);margin:0 8px;}
.page-hero-badge{display:inline-flex;align-items:center;gap:10px;border:1px solid rgba(201,168,76,0.4);padding:8px 18px;margin-bottom:24px;}
.page-hero-badge span{font-size:10px;letter-spacing:3px;color:var(--gold);text-transform:uppercase;}
.page-hero h1{font-family:'Cormorant Garamond',serif;font-size:clamp(36px,4.5vw,58px);font-weight:300;line-height:1.15;margin-bottom:18px;}
.page-hero h1 em{color:var(--gold);font-style:italic;}
.page-hero .lead{font-size:16px;line-height:1.85;color:rgba(255,255,255,0.78);max-width:740px;margin-bottom:32px;}
.page-hero-trust{display:flex;flex-wrap:wrap;gap:18px;margin-bottom:32px;}
.page-hero-trust .trust-item{display:flex;align-items:center;gap:8px;font-size:11px;letter-spacing:1.5px;color:rgba(255,255,255,0.75);text-transform:uppercase;}
.page-hero-trust .trust-dot{width:6px;height:6px;background:var(--gold);border-radius:50%;}
.page-hero-btns{display:flex;flex-wrap:wrap;gap:14px;}
.btn-primary{background:var(--gold);color:var(--navy);padding:16px 32px;font-size:11px;letter-spacing:2.5px;font-weight:600;text-transform:uppercase;text-decoration:none;border:none;cursor:pointer;transition:all .3s;display:inline-block;}
.btn-primary:hover{background:var(--gold-light);transform:translateY(-1px);color:var(--navy);}
.btn-outline{background:transparent;color:white;padding:16px 32px;font-size:11px;letter-spacing:2.5px;font-weight:500;text-transform:uppercase;text-decoration:none;border:1px solid rgba(255,255,255,0.4);cursor:pointer;transition:all .3s;display:inline-block;}
.btn-outline:hover{border-color:var(--gold);color:var(--gold);}
.btn-navy{background:var(--navy);color:white;padding:16px 32px;font-size:11px;letter-spacing:2.5px;font-weight:600;text-transform:uppercase;text-decoration:none;display:inline-block;transition:all .3s;}
.btn-navy:hover{background:var(--gold);color:var(--navy);}
@media(max-width:768px){.page-hero{padding:120px 22px 56px;}.page-hero h1{font-size:clamp(28px,8vw,40px);}.page-hero .lead{font-size:14px;}.btn-primary,.btn-outline{padding:14px 22px;font-size:10px;letter-spacing:2px;}}

/* ── ARTICLE / SERVICE BODY ── */
.svc-body{padding:80px 60px;max-width:100%;}
.svc-body-inner{max-width:920px;margin:0 auto;}
.svc-body h2{font-family:'Cormorant Garamond',serif;font-size:clamp(28px,3.4vw,40px);font-weight:300;color:var(--navy);line-height:1.25;margin:48px 0 18px;}
.svc-body h2:first-child{margin-top:0;}
.svc-body h2 em{color:var(--gold);font-style:italic;}
.svc-body h3{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:500;color:var(--navy);margin:32px 0 12px;}
.svc-body p{color:var(--dark);font-size:15px;line-height:1.85;margin-bottom:18px;}
.svc-body p.tldr{background:var(--cream);border-left:4px solid var(--gold);padding:20px 24px;font-size:14px;color:var(--navy);margin:0 0 32px;}
.svc-body p.tldr strong{display:block;font-size:10px;letter-spacing:3px;color:var(--gold);text-transform:uppercase;margin-bottom:8px;font-weight:700;}
.svc-body ul, .svc-body ol{margin:0 0 22px 24px;}
.svc-body ul li, .svc-body ol li{font-size:15px;color:var(--dark);margin-bottom:10px;line-height:1.8;padding-left:6px;}
.svc-body ul li::marker{color:var(--gold);}
.svc-body ol li::marker{color:var(--gold);font-weight:600;}
.svc-body strong{color:var(--navy);font-weight:600;}
.svc-body a{color:var(--navy);text-decoration:underline;text-decoration-color:rgba(201,168,76,0.5);text-underline-offset:3px;}
.svc-body a:hover{color:var(--gold);}
.svc-body blockquote{border-left:4px solid var(--gold);padding:14px 22px;margin:24px 0;font-family:'Cormorant Garamond',serif;font-style:italic;color:var(--navy);font-size:20px;line-height:1.6;}
@media(max-width:768px){.svc-body{padding:56px 22px;}.svc-body p, .svc-body ul li, .svc-body ol li{font-size:14px;}}

/* ── PROTOCOL STEPS BLOCK ── */
.svc-steps{margin:32px 0;}
.svc-step{display:grid;grid-template-columns:80px 1fr;gap:24px;margin-bottom:24px;padding:24px;background:var(--cream);border-left:3px solid var(--gold);}
.svc-step-num{font-family:'Cormorant Garamond',serif;font-size:46px;color:var(--gold);line-height:1;font-weight:300;}
.svc-step-content h4{font-size:13px;letter-spacing:2px;color:var(--navy);text-transform:uppercase;font-weight:700;margin-bottom:8px;}
.svc-step-content p{font-size:14px;color:var(--gray);line-height:1.8;margin:0;}
@media(max-width:600px){.svc-step{grid-template-columns:1fr;gap:8px;padding:20px;}.svc-step-num{font-size:32px;}}

/* ── KPI CARDS ── */
.kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:32px 0;}
.kpi-card{background:white;border:1px solid var(--light);padding:24px 22px;text-align:center;}
.kpi-num{font-family:'Cormorant Garamond',serif;font-size:38px;color:var(--gold);font-weight:300;line-height:1;margin-bottom:8px;}
.kpi-label{font-size:11px;letter-spacing:1.5px;color:var(--navy);text-transform:uppercase;font-weight:600;}
@media(max-width:768px){.kpi-grid{grid-template-columns:1fr;}}

/* ── PRICING BAND ── */
.pricing-band{background:var(--navy);color:white;padding:48px 40px;margin:48px 0;text-align:center;border-left:4px solid var(--gold);}
.pricing-band-label{font-size:10px;letter-spacing:3px;color:var(--gold);text-transform:uppercase;font-weight:700;margin-bottom:10px;}
.pricing-band-amount{font-family:'Cormorant Garamond',serif;font-size:44px;color:white;font-weight:300;margin-bottom:14px;}
.pricing-band-amount span{color:var(--gold);font-style:italic;}
.pricing-band-note{font-size:13px;color:rgba(255,255,255,0.7);line-height:1.7;max-width:560px;margin:0 auto 24px;}

/* ── FAQ ── */
.svc-faq{background:var(--cream);padding:80px 60px;}
.svc-faq-inner{max-width:920px;margin:0 auto;}
.svc-faq h2{font-family:'Cormorant Garamond',serif;font-size:clamp(28px,3.4vw,42px);font-weight:300;color:var(--navy);margin-bottom:14px;line-height:1.2;}
.svc-faq h2 em{color:var(--gold);font-style:italic;}
.svc-faq-intro{color:var(--gray);font-size:14px;margin-bottom:32px;line-height:1.8;}
.svc-faq-list{margin-top:32px;}
.svc-faq-item{border-bottom:1px solid rgba(15,35,71,0.10);background:white;}
.svc-faq-q{padding:22px 26px;font-family:'Cormorant Garamond',serif;font-size:20px;font-weight:400;color:var(--navy);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:24px;transition:color .3s;}
.svc-faq-q:hover{color:var(--gold);}
.svc-faq-q::after{content:'+';font-size:26px;color:var(--gold);font-weight:300;line-height:1;transition:transform .3s;}
.svc-faq-item.open .svc-faq-q::after{content:'−';}
.svc-faq-a{display:none;padding:0 26px 26px;color:var(--gray);font-size:14px;line-height:1.85;}
.svc-faq-a strong{color:var(--navy);font-weight:600;}
.svc-faq-item.open .svc-faq-a{display:block;}
@media(max-width:768px){.svc-faq{padding:56px 22px;}.svc-faq-q{font-size:17px;padding:18px 20px;}.svc-faq-a{padding:0 20px 20px;font-size:13px;}}

/* ── RELATED SERVICES ── */
.related{background:white;padding:80px 60px;}
.related-inner{max-width:1280px;margin:0 auto;}
.related h2{font-family:'Cormorant Garamond',serif;font-size:clamp(28px,3.4vw,42px);font-weight:300;color:var(--navy);text-align:center;margin-bottom:14px;line-height:1.2;}
.related h2 em{color:var(--gold);font-style:italic;}
.related-sub{text-align:center;color:var(--gray);font-size:14px;margin-bottom:48px;}
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.related-card{background:var(--cream);padding:32px 28px;border-top:3px solid var(--gold);display:flex;flex-direction:column;text-decoration:none;color:inherit;transition:all .3s;}
.related-card:hover{transform:translateY(-4px);box-shadow:0 18px 50px rgba(15,35,71,0.10);background:white;}
.related-card .icon{font-size:26px;color:var(--gold);margin-bottom:14px;line-height:1;}
.related-card h4{font-family:'Cormorant Garamond',serif;font-size:22px;color:var(--navy);font-weight:400;line-height:1.25;margin-bottom:12px;}
.related-card p{font-size:13px;color:var(--gray);line-height:1.75;flex:1;margin-bottom:18px;}
.related-card .link{color:var(--navy);font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:600;border-bottom:1px solid var(--gold);padding-bottom:4px;align-self:flex-start;}
.related-card:hover .link{color:var(--gold);}
@media(max-width:900px){.related-grid{grid-template-columns:1fr;}.related{padding:56px 22px;}}

/* ── INLINE CTA ── */
.svc-cta-band{background:linear-gradient(135deg,var(--navy-deep) 0%,#1a3060 100%);color:white;padding:80px 60px;text-align:center;position:relative;overflow:hidden;}
.svc-cta-band::before{content:'';position:absolute;top:-100px;left:50%;transform:translateX(-50%);width:560px;height:560px;border:1px solid rgba(201,168,76,0.12);border-radius:50%;}
.svc-cta-inner{position:relative;z-index:1;max-width:720px;margin:0 auto;}
.svc-cta-band h2{font-family:'Cormorant Garamond',serif;font-size:clamp(30px,4vw,48px);font-weight:300;line-height:1.25;margin-bottom:16px;}
.svc-cta-band h2 em{color:var(--gold);font-style:italic;}
.svc-cta-band p{color:rgba(255,255,255,0.75);font-size:15px;line-height:1.8;margin-bottom:32px;}
.svc-cta-btns{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;}
@media(max-width:768px){.svc-cta-band{padding:56px 22px;}.svc-cta-btns{flex-direction:column;}.svc-cta-btns a{width:100%;}}

/* ── DISCLAIMER ── */
.medical-disclaimer{margin-top:32px;padding:18px 22px;background:rgba(15,35,71,0.04);border-left:3px solid var(--gray-soft);font-size:12px;color:var(--gray);line-height:1.7;font-style:italic;}

/* ── FOOTER ── */
footer.site-footer{background:var(--navy-deep);padding:64px 60px 32px;border-top:1px solid rgba(201,168,76,0.2);}
.footer-inner{max-width:1280px;margin:0 auto 40px;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;}
.footer-brand h3{font-family:'Cormorant Garamond',serif;font-size:22px;color:white;letter-spacing:3px;font-weight:400;margin-bottom:8px;}
.footer-brand .footer-tag{font-size:10px;letter-spacing:3px;color:var(--gold);text-transform:uppercase;margin-bottom:16px;}
.footer-brand p{font-size:12px;color:rgba(255,255,255,0.5);max-width:280px;line-height:1.7;margin-bottom:20px;}
.footer-cert{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;}
.footer-cert-chip{font-size:9px;letter-spacing:2px;color:var(--gold);border:1px solid rgba(201,168,76,0.3);padding:5px 10px;text-transform:uppercase;}
.footer-col h4{font-size:10px;letter-spacing:3px;color:var(--gold);text-transform:uppercase;margin-bottom:20px;}
.footer-col ul{list-style:none;}
.footer-col ul li{margin-bottom:10px;}
.footer-col ul li a{color:rgba(255,255,255,0.55);text-decoration:none;font-size:13px;transition:color .3s;}
.footer-col ul li a:hover{color:var(--gold);}
.footer-bottom{max-width:1280px;margin:0 auto;border-top:1px solid rgba(255,255,255,0.08);padding-top:28px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;}
.footer-bottom p{font-size:11px;color:rgba(255,255,255,0.4);margin:0;}
.footer-bottom a{color:rgba(255,255,255,0.4);text-decoration:none;font-size:11px;}
.footer-bottom a:hover{color:var(--gold);}
@media(max-width:900px){.footer-inner{grid-template-columns:1fr 1fr;}.footer-bottom{flex-direction:column;text-align:center;}}
@media(max-width:600px){footer.site-footer{padding:48px 24px 24px;}.footer-inner{grid-template-columns:1fr;}}

/* ── HERO IMAGE BACKGROUND (page-hero with photo) ── */
.page-hero.with-photo{position:relative;}
.page-hero.with-photo::before{
  content:'';position:absolute;inset:0;
  background-size:cover;background-position:center;
  filter:saturate(0.7) contrast(0.95);
  opacity:0.45;z-index:0;
}
.page-hero.with-photo::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(135deg,rgba(8,21,48,0.92) 0%,rgba(15,35,71,0.78) 50%,rgba(26,48,96,0.85) 100%);
  z-index:1;
}
.page-hero.with-photo .page-hero-inner{position:relative;z-index:2;}
.page-hero.hero-healthcare::before{background-image:url('/assets/images/01-operating-room-medibios.jpg');}
.page-hero.hero-dental::before{background-image:url('/assets/images/01-operating-room-medibios.jpg');}
.page-hero.hero-sensitive::before{background-image:url('/assets/images/08-medibios-pre-op-room.jpg');}
.page-hero.hero-research::before{background-image:url('/assets/images/07-equiesteril-poster-or.jpg');}

/* ── INLINE PHOTOGRAPH (content image with caption) ── */
.svc-photo{margin:32px 0;position:relative;background:var(--cream);}
.svc-photo img{width:100%;height:auto;display:block;}
.svc-photo figcaption{padding:16px 22px;background:var(--cream);font-size:12px;color:var(--gray);font-style:italic;line-height:1.6;border-left:3px solid var(--gold);}
.svc-photo figcaption strong{color:var(--navy);font-style:normal;font-weight:600;}

/* ── REFERENCE LETTER (Jackson Memorial display) ── */
.ref-letter{margin:40px 0;background:white;padding:0;border:1px solid var(--light);box-shadow:0 12px 36px rgba(15,35,71,0.10);}
.ref-letter-img{width:100%;height:auto;display:block;}
.ref-letter-caption{padding:20px 28px;background:var(--navy);color:white;font-size:13px;line-height:1.7;}
.ref-letter-caption .small-label{font-size:10px;letter-spacing:3px;color:var(--gold);text-transform:uppercase;font-weight:700;display:block;margin-bottom:6px;}
.ref-letter-caption a{color:var(--gold);text-decoration:underline;}
.ref-letter-caption a:hover{color:var(--gold-light);}

/* ── TEAM PHOTO INLINE ── */
.team-photo{display:grid;grid-template-columns:200px 1fr;gap:24px;margin:32px 0;align-items:center;}
.team-photo img{width:100%;height:auto;border-radius:6px;}
.team-photo-text strong{display:block;color:var(--navy);font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:500;margin-bottom:6px;}
.team-photo-text p{font-size:14px;color:var(--gray);line-height:1.7;margin:0;}
@media(max-width:600px){.team-photo{grid-template-columns:1fr;text-align:center;}.team-photo img{max-width:280px;margin:0 auto;}}
