/* Bayberry brand tokens — deep burgundy & gold */
:root{
  --navy:hsl(327,70%,13%);
  --navy-dark:hsl(324,100%,11%);
  --plum:hsl(327,73%,28%);
  --gold:hsl(40,50%,57%);
  --gold-light:hsl(41,60%,63%);
  --gold-deep:hsl(38,50%,45%);
  --off-white:hsl(40,40%,96%);
  --beige:hsl(33,30%,90%);
  --line:hsl(35,25%,85%);
  --ink:hsl(330,22%,14%);
  --muted-text:hsl(322,6%,41%);
  --shadow-card:0 4px 20px rgba(58,10,36,.10);
  --shadow-elev:0 8px 40px rgba(58,10,36,.12);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{overflow-x:hidden}
.grecaptcha-badge{visibility:hidden;opacity:0;pointer-events:none}
body{
  font-family:'Inter',system-ui,-apple-system,sans-serif;
  font-size:16px!important;line-height:1.6!important;color:var(--ink)!important;background:#fff;
  letter-spacing:-.005em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
h1,h2,h3,h4,h5,h6,
.heading,.subheading,.title,.subtitle,
.widget-title,.wp-block-heading,
.section-title,.aroham-section-heading .section-title,.font-display{
  font-family:'Playfair Display',Georgia,serif;
  font-weight:600;
  letter-spacing:-.02em;
  line-height:1.15!important;
}
img{display:block;max-width:100%;height:auto}
a{color:inherit!important;text-decoration:none}
section a:not(.more-link, .btn){color:var(--plum)!important; font-weight: 600;}
section a:not(.more-link,.btn):hover{text-decoration:underline!important;}

ul{list-style:none}
button{font:inherit;cursor:pointer;border:0;background:none;color:inherit!important}
::selection{background:hsl(40 50% 57% / .4);color:var(--navy-dark)!important}
.eyebrow{font-weight:500;font-size:.7rem!important;letter-spacing:.22em;text-transform:uppercase}
.container{width:100%!important;max-width:1280px!important;margin:0 auto!important;padding:0 1.5rem!important}
.gold{color:var(--gold)!important}.gold-deep{color:var(--gold-deep)!important}.gold-light{color:var(--gold-light)!important}
.bg-navy{background:var(--navy)}.bg-navy-dark{background:var(--navy-dark)}
.bg-off{background:var(--off-white)}
.text-navy{color:var(--navy)!important}.text-muted{color:var(--muted-text)!important}.text-white{color:#fff!important}
.divider-line{display:block;height:1px;width:48px;background:var(--gold)}
.divider-line.center{margin-left:auto;margin-right:auto}

/* clear:both fixes common.css float layout — use padding-top (not margin-top) to preserve spacing since margin collapses against clear */
.about-body, .add-grid, .residences, .thx-grid, .adm-grid, .usps-grid, .fac-grid, .pricing-grid, .guides, .guarantee-body, .ct-grid{width:100%;position:relative;clear:both;}
.add-grid{padding-top:3.5rem}
.residences{padding-top:3.5rem}
.thx-grid{padding-top:3.5rem}
.adm-grid{padding-top:3.5rem}
.usps-grid{padding-top:3.5rem}
.fac-grid{padding-top:3rem}
.guides{padding-top:3rem}
.guarantee-body{padding-top:2rem}

/* Global fix: common.css sets p{float:left;width:100%;padding:5px 0} — reset inside page sections */
.about-body p,.two-col p,.body p,.section-head p,.adm-step p,.usp p,.fac figcaption,
.guide p,.guarantee-body p,.rev-card blockquote,.faq-a-inner,.ct .body p{
  float:none!important;width:auto!important;padding:0!important;display:block!important;
}

.max-w-2xl, .form-card, .highlight, .actions{display:flow-root;}
.hero-ctas{float:left;}


/* ---------- Reveal animation ---------- */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .55s ease-out,transform .55s ease-out}
.reveal.visible{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
  .reveal{opacity:1;transform:none}
}

/* ---------- Buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:.5rem;font-weight:600;border-radius:8px;transition:background-color .2s,color .2s,border-color .2s;white-space:nowrap}
.btn-gold{background:var(--gold) !important;color:var(--navy-dark)!important;padding:.875rem 1.75rem;box-shadow:var(--shadow-elev)}
.btn-gold:hover{background:var(--gold-light)}
.btn-navy{background:var(--navy);color:#fff!important;padding:.875rem 1.75rem}
.btn-navy:hover{background:var(--plum)}
.btn-outline-white{border:2px solid #fff;color:#fff!important;padding:.75rem 1.75rem}
.btn-outline-white:hover{background:#fff;color:var(--navy)!important}
.btn-outline-navy{border:2px solid var(--navy);color:var(--navy)!important;padding:.75rem 1.75rem}
.btn-outline-navy:hover{background:var(--navy);color:#fff!important}
.btn-outline-gold-navy{border:1px solid var(--gold);color:var(--navy)!important;padding:.75rem 1.75rem}
.btn-outline-gold-navy:hover{background:var(--gold);color:var(--navy-dark)!important}
.btn .more{display:inline-flex;align-items:center;gap:.4rem}
.btn .arr{display:inline-block!important;color:inherit!important;transition:transform .25s;float:none!important;width:auto!important;padding:0!important}
.btn:hover .arr{transform:translateX(4px)}
.section-actions{margin-top:2.5rem;display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem}

/* ---------- Header (bl-home standard) ---------- */
.bayb-header{position:fixed;top:0;left:0;right:0;z-index:50}
body.admin-bar .bayb-header{top:32px}

/* Topbar */
.topbar{display:none;background:var(--navy-dark);color:rgba(255,255,255,.8)!important;font-size:.78rem!important}
.topbar .container{height:36px;display:flex;align-items:center;justify-content:flex-end;gap:1.25rem}
.topbar a{color:rgba(255,255,255,.8)!important;transition:color .2s}
.topbar a:hover{color:var(--gold)!important}
.topbar .sep{display:inline-block;width:1px;height:12px;background:rgba(255,255,255,.2)}
.topbar a[href^="tel"],.topbar .numberswap,.topbar-phone{display:inline-flex;align-items:center;gap:.375rem;color:#fff!important;font-weight:500}
.topbar-phone{text-decoration:none}
.topbar-phone .icon{width:14px;height:14px;color:var(--gold)}
@media(min-width:768px){.topbar{display:block}}

/* Desktop nav bar — hidden on mobile, shown 1024px+ */
.desktop{display:none;transition:background-color .3s,box-shadow .3s,border-color .3s;background:#fff;border-bottom:1px solid transparent}
@media(min-width:1024px){.desktop{display:block}}
.bayb-header.transparent .desktop{background:transparent;border-bottom-color:transparent}
.bayb-header.scrolled .desktop{background:#fff;box-shadow:0 2px 20px rgba(58,10,36,.08);border-bottom-color:var(--line)}
.header-row{height:80px;display:flex;align-items:center;justify-content:space-between;gap:1rem}
@media(min-width:1024px){.header-row{height:80px}}
@media(min-width:1280px){.header-row{height:96px}}

/* Brand / Logo */
.brand{display:flex;flex-direction: column;align-items:center;height:48px;max-width:260px;flex-shrink:0;position:relative}
@media(min-width:768px){.brand{height:58px}}
.brand img{height:100%;width:auto;object-fit:contain;transition:opacity .3s}
.brand .logo-color{opacity:1}
.brand .logo-white{position:absolute;inset:0;opacity:0}
@media(min-width:768px){
  .bayb-header.transparent .brand .logo-color{opacity:0}
  .bayb-header.transparent .brand .logo-white{opacity:1}
}
.bayb-header.scrolled .brand .logo-color{opacity:1!important}
.bayb-header.scrolled .brand .logo-white{opacity:0!important}
.tagline{font-size:.65rem;color:var(--muted-text);letter-spacing:.08em;text-transform:uppercase;margin-top:.2rem}
.bayb-header.transparent .tagline{color:rgba(255,255,255,.7)}


/* ── Sub-menu dropdown — full Bayberry design ─────────────────────────────── */

/* ── KEY FIX: position all dropdowns relative to .header-row (the container),
   not the individual <li>. This keeps every panel inside the max-width boundary
   and prevents right-edge overflow on smaller screens. ───────────────────── */
.header-row{position:relative!important}

/* Header CTA — show the call button */
.header-cta{display:none;flex-shrink:0;align-items:center;gap:.75rem}
@media(min-width:1200px){.header-cta{display:flex}}
/* .bayb-header.transparent .header-cta a[href^="tel"]{color:#fff!important} */
.header-cta .numberswap{font-weight:600;font-size:.875rem!important;color:var(--navy)!important}
.bayb-header.transparent .header-cta .numberswap{color:#fff!important}
/* CTA call button — unique class to avoid theme conflicts */
.bayb-call-btn{
  display:none;flex-shrink:0;
  font-weight:600;font-size:.85rem!important;
  background:var(--gold)!important;color:var(--navy-dark)!important;
  padding:.65rem 1rem!important;border-radius:8px!important;
  transition:background .25s;white-space:nowrap;
  text-decoration:none!important;
}
.bayb-call-btn:hover{background:var(--gold-light)!important}
@media(min-width:1200px){.bayb-call-btn{display:inline-flex!important;align-items:center}}

/* Mobile header — shown below 1024px */
.mobile{display:block}
@media(min-width:1024px){.mobile{display:none!important}}

.mobile .deskhead{
  transition:background-color .3s,box-shadow .3s;
  background:#fff;
}
.bayb-header.transparent .mobile .deskhead{background:#06060666;}
.bayb-header.scrolled .mobile .deskhead{background:#fff!important;box-shadow:0 2px 20px rgba(58,10,36,.08)}

/* Mobile header inner row 
.mobile .dflex{
  display:flex;align-items:center;justify-content:space-between;
  height:68px;padding:0 1.25rem;
}*/

/* Mobile brand/logo */
.mobile .brand{height:40px;max-width:160px}
.bayb-header.transparent .mobile .brand .logo-color{opacity:0}
.bayb-header.transparent .mobile .brand .logo-white{opacity:1}
.bayb-header.scrolled .mobile .brand .logo-color{opacity:1!important}
.bayb-header.scrolled .mobile .brand .logo-white{opacity:0!important}

/* Mobile icon bar */
.mobiico .alignright{
  display:flex;align-items:center;justify-content:flex-end;
  gap:.75rem;list-style:none!important;margin:0!important;padding:0!important;float:none!important;
}
.mobiico li{float:none!important;display:inline-flex!important;align-items:center}
/* Hamburger icon */
.mobiico .fa-bars,.shiftnav-toggle i{
  font-size:1.35rem;color:var(--navy)!important;
  cursor:pointer;line-height:1;
}
.bayb-header.transparent .mobiico .fa-bars,
.bayb-header.transparent .shiftnav-toggle i{color:#fff!important}
.bayb-header.scrolled .mobiico .fa-bars,
.bayb-header.scrolled .shiftnav-toggle i{color:var(--navy)!important}
/* Phone icon */
.mobiico .numberswap{font-size:.85rem;font-weight:600;color:var(--navy)!important}
.bayb-header.transparent .mobiico .numberswap,.bayb-header.transparent .ukat-gpt-link{color:#fff!important}
.bayb-header.transparent .mobile .spin{filter:brightness(0) invert(1)}
/* Icon sizes */
.icon{width:24px;height:24px;display:inline-block;vertical-align:middle}
.icon-sm{width:16px;height:16px}
.icon-md{width:20px;height:20px}

@keyframes fadeIn{from{opacity:0}to{opacity:1}}

/* ---------- Hero ---------- */
.hero{position:relative;min-height:100vh;width:100%;overflow:hidden}
.hero img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(1.08) saturate(.92)}
/* .hero .overlay{position:absolute;inset:0;background:linear-gradient(135deg,hsl(324 100% 11% / .62) 0%,hsl(327 70% 13% / .52) 55%,hsl(327 73% 28% / .28) 100%)} */
.hero .overlay{position:absolute;inset:0;background:rgb(56 0 35 / 0)}

.hero-inner{position:relative;padding:9rem 0 5rem;min-height:100vh;display:flex;align-items:center;justify-content:center}
@media(min-width:768px){.hero-inner{padding-top:10rem}}
.hero-content{color:#fff;text-align:center;max-width:768px;margin:0 auto;display:flex;flex-direction:column;align-items:center; background:#00000061; padding:15px 5px;}
.hero-eyebrow{color:var(--gold-light);margin-bottom:1.25rem}
.hero h1{font-size:clamp(1.8rem,2.6vw + 1rem,3.4rem)!important;line-height:1.05!important;color:#fff!important}
.hero h1 .accent{color:var(--gold-light)!important}
.hero .lede{margin-top:1.5rem;font-size:1.15rem!important;font-weight:300;color:rgba(255,255,255,.9)!important;line-height:1.6!important;max-width:640px}
.hero-actions{margin-top:2.25rem;display:flex;flex-wrap:wrap;gap:.9rem;justify-content:center}
.hero-badges{margin-top:2.5rem;width:100%;max-width:768px;display:grid;grid-template-columns:1fr 1fr;gap:.75rem}
@media(min-width:768px){.hero-badges{grid-template-columns:repeat(4,1fr);gap:1rem}}
.badge{display:flex;align-items:center;gap:.65rem;border:1px solid hsl(40 50% 57% / .3);background:rgba(255,255,255,.05);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);padding:.75rem .85rem;border-radius:10px;color:rgba(255,255,255,.9)!important;font-size:.85rem!important;font-weight:500;text-align:left;transition:border-color .2s,background .2s}
.badge:hover{border-color:hsl(40 50% 57% / .6);background:rgba(255,255,255,.1)}
.badge-ico{flex-shrink:0;height:32px;width:32px;border-radius:8px;background:hsl(40 50% 57% / .15);border:1px solid hsl(40 50% 57% / .3);display:flex;align-items:center;justify-content:center;color:var(--gold-light)!important}

/* ---------- Stats ---------- */
.stats{background:var(--navy);padding:1.75rem 0}
.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem 1rem;text-align:center}
.stats-grid .stat{padding:0 1.25rem}
.stats-grid .num{font-family:'Playfair Display',serif;color:var(--gold-light)!important;line-height:1!important;font-size:clamp(1.75rem,1.6vw + 1rem,2.4rem)!important;letter-spacing:-.02em}
.stats-grid .lbl{margin:.375rem auto 0;color:rgba(255,255,255,.7)!important;font-size:.78rem!important;line-height:1.35!important;max-width:200px;letter-spacing:.02em}
@media(min-width:1024px){
  .stats-grid{grid-template-columns:repeat(4,1fr)}
  .stats-grid .stat:not(:first-child){border-left:1px solid rgba(255,255,255,.1)}
}

/* ---------- About ---------- */
.about{background:#fff;padding:5rem 0}
@media(min-width:768px){.about{padding:6rem 0}}
.about-grid{display:grid;gap:3rem;align-items:center}
@media(min-width:1024px){.about-grid{grid-template-columns:1fr 1fr;gap:4rem}}
.about h2{font-size:clamp(1.875rem,2vw + 1rem,2.75rem)!important}
.about-body{margin-top:1.75rem;display:flex;flex-direction:column;gap:1.25rem;color:hsl(330 22% 14% / .85)!important;font-size:1.05rem!important;line-height:1.75!important}
.about-actions{margin-top:1.75rem;display:flex;flex-wrap:wrap;gap:.75rem}
.image-frame{position:relative}
.image-frame::before{content:"";position:absolute;inset:-.75rem;background:hsl(40 50% 57% / .15);border-radius:16px;z-index:-1}
.image-frame img{border-radius:12px;box-shadow:var(--shadow-elev);width:100%}

/* ---------- Treatments ---------- */
.tx{background:var(--off-white);padding:5rem 0}
@media(min-width:768px){.tx{padding:6rem 0}}
.tx .center{max-width:48rem;margin:0 auto;text-align:center}
.tx h2{font-size:clamp(1.875rem,2vw + 1rem,2.75rem)!important}
.tx .desc{margin-top:1.25rem;color:var(--muted-text);font-size:1.05rem!important;line-height:1.7!important}
.add-grid{margin-top:3.5rem;display:grid;grid-template-columns:1fr;gap:1.25rem}
@media(min-width:640px){.add-grid{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.add-grid{grid-template-columns:repeat(3,1fr)}}
.add-card{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid hsl(40 50% 57% / .3);border-radius:10px;padding:1.75rem;transition:border-color .25s,box-shadow .25s}
.add-card:hover{border-color:var(--gold);box-shadow:var(--shadow-card)}
.add-card .top{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}
.add-card .ico{display:flex;align-items:center;justify-content:center;height:44px;width:44px;border-radius:8px;background:linear-gradient(135deg,var(--plum),hsl(327 73% 20%));color:var(--gold)!important;box-shadow:0 4px 8px rgba(0,0,0,.15)}
.add-card h4{font-family:'Playfair Display',serif;color:var(--plum)!important;font-size:1.15rem!important;line-height:1.2!important}
.add-card p{color:hsl(330 22% 14% / .75)!important;font-size:.95rem!important;line-height:1.6!important;flex:1}
.add-card .more-link{margin-top:1.25rem;display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem!important;font-weight:600;color:var(--plum)!important;align-self:flex-start}
.add-card .more-link span:first-child{border-bottom:1px solid transparent;transition:border-color .25s}
.add-card .more-link:hover span:first-child{border-bottom-color:var(--gold)}
.add-card .more-link .arr{color:var(--gold)!important;transition:transform .25s}
.add-card .more-link:hover .arr{transform:translateX(4px)}

/* ---------- Treatment rows (Medically Led / Built Around You) ---------- */
.tx-rows{background:#fff}
.tx-row{padding:4rem 0}
@media(min-width:1024px){.tx-row{padding:6rem 0}}
.tx-row.alt{background:hsl(33 30% 90% / .6)}
.tx-row .grid{display:grid;gap:2.5rem;align-items:center}
@media(min-width:1024px){.tx-row .grid{grid-template-columns:48% 52%;gap:4rem}.tx-row.right .grid > :first-child{order:2}}
.tx-img-wrap .imgbox{overflow:hidden;border-radius:12px;box-shadow:var(--shadow-card)}
.tx-img-wrap img{width:100%;height:288px;object-fit:cover;transition:transform 1.2s}
@media(min-width:1024px){.tx-img-wrap img{height:440px}}
.tx-img-wrap img:hover{transform:scale(1.04)}
.tx-row .eb-row{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}
.tx-row .eb-row .bar{height:1px;width:32px;background:var(--gold)}
.tx-row h3{font-size:1.5rem!important;line-height:1.2!important;color:var(--navy)!important}
@media(min-width:1024px){.tx-row h3{font-size:2rem!important;color:var(--navy)!important}}
.tx-row .body{margin-top:1.25rem;color:hsl(330 22% 14% / .8)!important;font-size:1.02rem!important;line-height:1.75!important}
.tx-row .highlight{margin-top:1.5rem;background:var(--off-white);border-left:4px solid var(--gold);border-radius:0 8px 8px 0;padding:1rem 1.25rem;font-size:.92rem!important;line-height:1.7!important;display:flex;align-items:flex-start;gap:.5rem;color:hsl(330 22% 14% / .8)!important}
.tx-row .more-link{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.75rem;font-weight:600;color:var(--gold-deep)!important;transition:color .2s}
.tx-row .more-link span:first-child{border-bottom:1px solid hsl(38 50% 45% / .4)}
.tx-row .more-link:hover{color:var(--navy)}
.tx-row .more-link .arr{transition:transform .2s}
.tx-row .more-link:hover .arr{transform:translateX(4px)}

/* ---------- Residences ---------- */
.res{background:var(--off-white);padding:5rem 0}
@media(min-width:768px){.res{padding:6rem 0}}
.residences{margin-top:3.5rem;display:grid;gap:2rem}
@media(min-width:768px){.residences{grid-template-columns:1fr 1fr}}
.residence{display:flex;flex-direction:column;height:100%;background:#fff;border-radius:16px;overflow:hidden;border:1px solid hsl(35 25% 85% / .6);box-shadow:var(--shadow-elev)}
.residence .photo{aspect-ratio:16/10;overflow:hidden}
.residence .photo img{width:100%;height:100%;object-fit:cover;transition:transform .7s}
.residence:hover .photo img{transform:scale(1.03)}
.residence .res-info{padding:1.75rem;display:flex;flex-direction:column;flex:1}
@media(min-width:768px){.residence .res-info{padding:2rem}}
.residence h3{color:var(--navy)!important;font-size:clamp(1.35rem,1vw + 1rem,1.625rem)!important}
.residence p{margin-top:.75rem;color:hsl(330 22% 14% / .75)!important;font-size:.97rem!important;line-height:1.7!important}
.residence .more-link{margin-top:1.5rem;display:inline-flex;align-items:center;gap:.5rem;color:var(--navy)!important;font-weight:600;font-size:.8rem!important;letter-spacing:.12em;text-transform:uppercase;transition:color .25s}
.residence .more-link:hover{color:var(--plum)}
.residence .more-link .arr{color:var(--gold);transition:transform .25s}
.residence .more-link .arr{color:var(--gold)!important;transition:transform .25s}

/* ---------- Admissions ---------- */
.adm{background:hsl(33 30% 90%);padding:5rem 0}
@media(min-width:768px){.adm{padding:6rem 0}}
.adm .head{text-align:center;margin-bottom:3.5rem}
.adm h2{font-size:clamp(1.875rem,2vw + 1rem,2.625rem)}
.adm-wrap{position:relative}
.adm-line{display:none;position:absolute;top:26px;left:10%;right:10%;border-top:1px dashed var(--line)}
@media(min-width:768px){.adm-line{display:block}}
.adm-grid{display:grid;gap:2.5rem;position:relative}
@media(min-width:768px){.adm-grid{grid-template-columns:repeat(4,1fr);gap:1.5rem}}
.adm-step{text-align:center;padding:0 .75rem}
.adm-circle{position:relative;margin:0 auto;width:52px;height:52px;border-radius:9999px;background:var(--gold);display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;color:var(--navy-dark)!important;font-size:1.25rem!important}
.adm-step h3{margin-top:1.25rem;font-family:'Inter',sans-serif;font-weight:600;font-size:1.05rem!important;line-height:1.3!important;color:var(--ink)!important}
.adm-step p{margin-top:.75rem;color:hsl(330 22% 14% / .75)!important;font-size:.95rem!important;line-height:1.6!important}
.adm-actions{margin-top:3.5rem;display:flex;flex-wrap:wrap;justify-content:center;gap:1rem}

/* ---------- Therapies (dark) ---------- */
.thx{background:var(--navy-dark);padding:5rem 0;color:#fff!important;position:relative;overflow:hidden}
@media(min-width:768px){.thx{padding:6rem 0}}
.thx .dot-bg{position:absolute;inset:0;opacity:.06;pointer-events:none;background-image:radial-gradient(var(--gold) 1px,transparent 1px);background-size:32px 32px}
.thx h2{font-size:clamp(1.875rem,2vw + 1rem,2.625rem)!important;color:#fff!important;max-width:48rem}
.thx .lede{margin-top:1rem;color:rgba(255,255,255,.8)!important;max-width:42rem;font-size:1.05rem!important;line-height:1.7!important}
.thx-grid{display:grid;gap:1.25rem;grid-template-columns:1fr}
@media(min-width:640px){.thx-grid{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.thx-grid{grid-template-columns:repeat(3,1fr)}}
.thx-card{display:flex;flex-direction:column;height:100%;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:1.75rem;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);transition:border-color .25s,background .25s}
.thx-card:hover{border-color:hsl(40 50% 57% / .6);background:rgba(255,255,255,.07)}
.thx-card .ico{color:var(--gold-light)!important;margin-bottom:1rem}
.thx-card h3{font-size:1.15rem!important;color:#fff!important;line-height:1.3!important;flex:1}
.thx-card p{margin-top:.75rem;color:rgba(255,255,255,.7)!important;font-size:.92rem!important;line-height:1.6!important}

.more-link .more{color:var(--plum); margin-top:1.25rem;display:inline-flex;gap:.35rem;font-size:.90rem!important;font-weight:600;align-self:flex-start}
.more-link .arr{color:var(--plum); transition:transform .25s; display:inline-block; margin-left:5px;}
.more-link .arr.gold{color:var(--gold-light);}
.more-link:hover .more{border-bottom:1px solid;}
.more-link:hover .arr{transform:translateX(4px);}
.thx-card .more{color:var(--gold-light)!important;}
.thx-card .more:hover{color:#fff}

/* ---------- USPs / What Sets Bayberry Apart ---------- */
.usps{background:#fff;padding:5rem 0}
@media(min-width:768px){.usps{padding:6rem 0}}
.usps .head{text-align:center;margin-bottom:3rem}
.usps h2{font-size:clamp(1.875rem,2vw + 1rem,2.625rem)!important}
.usps-grid{display:grid;gap:1.5rem}
@media(min-width:768px){.usps-grid{grid-template-columns:1fr 1fr}}
.usp{display:flex;gap:1.25rem;padding:1.75rem;background:var(--off-white);border:1px solid var(--line);border-radius:10px;transition:border-color .25s;height:100%}
.usp:hover{border-color:var(--gold)}
.usp .ico{flex-shrink:0;width:48px;height:48px;border-radius:8px;background:var(--navy);color:var(--gold-light)!important;display:flex;align-items:center;justify-content:center}
.usp h3{font-size:1.2rem!important;color:var(--navy)!important}
.usp p{margin-top:.65rem;color:hsl(330 22% 14% / .75)!important;font-size:.95rem!important;line-height:1.6!important}

/* ---------- Facilities gallery ---------- */
.fac{background:var(--off-white);padding:5rem 0}
@media(min-width:768px){.fac{padding:6rem 0}}
.section-head{text-align:center;max-width:768px;margin:0 auto;margin-bottom:2.5rem}
.section-head.left{text-align:left;margin:0;margin-bottom:2.5rem}
.section-head h2{font-size:clamp(1.875rem,2vw + 1rem,2.75rem)!important}
/* Fix: common.css p{float:left;width:100%;padding:5px 0} breaks centered text */
.section-head p,.section-head .desc,.section-head .lede{
  float:none!important;width:auto!important;display:block!important;
  margin-top:1.25rem;color:hsl(330 22% 14% / .8)!important;
  font-size:1.05rem!important;line-height:1.65!important;padding:0!important;
}
.section-head .eyebrow{color:var(--gold);margin-bottom:1rem;float:none!important;width:auto!important;display:block!important}
.fac-grid{margin-top:3rem;display:grid;gap:1.25rem;grid-template-columns:1fr}
@media(min-width:768px){.fac-grid{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.fac-grid{grid-template-columns:repeat(3,1fr)}}
.photo{position:relative;overflow:hidden;border-radius:10px;background:#fff;box-shadow:var(--shadow-card)}
.photo img{width:100%;height:256px;object-fit:cover;transition:transform .7s}
.photo:hover img{transform:scale(1.05)}
.photo .lbl{position:absolute;inset:auto 0 0;padding:1.25rem;background:linear-gradient(to top,rgba(0,0,0,.7),transparent)}
.photo .lbl p{color:#fff!important;font-size:.92rem!important;line-height:1.6!important}

/* ---------- Pricing ---------- */
.pricing{background:hsl(33 30% 90%);padding:5rem 0}
@media(min-width:768px){.pricing{padding:6rem 0}}
.pricing .section-head{margin-bottom:1.5rem}
.pricing-grid{display:grid;gap:1.5rem;align-items:stretch;padding-top:3rem}
@media(min-width:768px){.pricing-grid{grid-template-columns:repeat(3,1fr);gap:2rem}}
.tier{position:relative;height:100%;border-radius:16px;padding:2rem;display:flex;flex-direction:column;background:var(--off-white);border:1px solid hsl(35 25% 85% / .7);box-shadow:var(--shadow-card);transition:border-color .3s,transform .3s,box-shadow .3s}
@media(min-width:1024px){.tier{padding:2.5rem}}
.tier:hover{border-color:var(--gold);transform:translateY(-4px)}
.tier.featured{background:var(--navy);color:#fff;border:1px solid hsl(40 50% 57% / .4);box-shadow:var(--shadow-elev)}
@media(min-width:1024px){.tier.featured{transform:scale(1.04) translateY(-8px)}.tier.featured:hover{transform:scale(1.04) translateY(-12px)}}
.tier .pop{position:absolute;top:-16px;left:50%;transform:translateX(-50%);background:var(--gold)!important;color:var(--navy-dark)!important;padding:.35rem 1rem;border-radius:8px;white-space:nowrap;box-shadow:var(--shadow-card);font-weight:600!important;font-size:.7rem!important;letter-spacing:.18em}
.tier .eyebrow{color:var(--gold-deep)}
.tier.featured .eyebrow{color:var(--gold-light)}
.tier h3{margin-top:.75rem;font-size:clamp(1.35rem,.6vw + 1.1rem,1.6rem)!important;color:var(--navy)!important}
.tier.featured h3{color:#fff!important}
.tier .price{margin-top:1.5rem;font-family:'Playfair Display',serif;font-size:clamp(2.4rem,1.6vw + 1.4rem,3rem)!important;line-height:1!important;color:var(--navy)!important}
.tier.featured .price{color:var(--gold-light)!important}
.tier .sub{margin-top:.5rem;font-size:.92rem!important;color:var(--muted-text)!important}
.tier.featured .sub{color:rgba(255,255,255,.7)!important}
.tier .rule{margin:1.75rem 0;height:1px;width:100%;background:var(--line)}
.tier.featured .rule{background:rgba(255,255,255,.15)!important}
.tier ul{display:flex;flex-direction:column;gap:.85rem}
.tier li{display:flex;align-items:flex-start;gap:.75rem;font-size:.96rem!important;line-height:1.5!important;color:hsl(330 22% 14% / .85)!important}
.tier.featured li{color:rgba(255,255,255,.9)!important}
.tier li .chk{flex-shrink:0;margin-top:2px;width:20px;height:20px;border-radius:6px;background:hsl(40 50% 57% / .15);color:var(--gold-deep)!important;display:flex;align-items:center;justify-content:center}
.tier.featured li .chk{background:rgba(255,255,255,.1);color:var(--gold-light)!important}
.tier .cta{margin-top:auto;padding-top:2rem;display:block}
.tier .cta span{display:block;width:100%;text-align:center;padding:.85rem 1.5rem;border-radius:8px;font-weight:600;text-transform:uppercase;letter-spacing:.14em;font-size:.78rem!important;border:1px solid var(--gold);color:var(--navy)!important;transition:background .25s,color .25s}
.tier .cta:hover span{background:hsl(40 50% 57% / .15)}
.tier.featured .cta span{background:var(--gold);color:var(--navy-dark)!important;border-color:var(--gold)}
.tier.featured .cta:hover span{background:var(--gold-light);border-color:var(--gold-light)}

/* ---------- Reviews ---------- */
.rev{background:#fff;padding:5rem 0}
@media(min-width:768px){.rev{padding:6rem 0}}
.rev-cards{display:grid;gap:1.25rem;grid-template-columns:1fr}
@media(min-width:768px){.rev-cards{grid-template-columns:repeat(3,1fr)}}
.rev-card{background:var(--off-white);border-radius:12px;padding:1.75rem;box-shadow:var(--shadow-card);border:1px solid var(--line)}
.rev-card .stars{color:var(--gold)!important;font-size:1rem!important;letter-spacing:.1em;margin-bottom:.75rem}
.rev-card blockquote{font-family:'Playfair Display',serif;color:var(--ink)!important;font-size:1.05rem!important;line-height:1.55!important;font-style:italic}
.rev-card cite{display:block;margin-top:1rem;font-style:normal;color:var(--muted-text)!important;font-size:.85rem!important}
.rev-foot{margin-top:2.5rem;text-align:center}
.rev-foot a{display:inline-flex;align-items:center;gap:.5rem;font-weight:600;color:var(--navy)!important;font-size:.95rem!important}
.rev-foot a:hover{color:var(--gold-deep);text-decoration:underline;text-underline-offset:4px}

/* ---------- Help Guides ---------- */
.guides-sec{background:hsl(33 30% 90%);padding:5rem 0}
@media(min-width:768px){.guides-sec{padding:6rem 0}}
.guides{margin-top:3rem;display:grid;gap:1.5rem;grid-template-columns:1fr}
@media(min-width:640px){.guides{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.guides{grid-template-columns:repeat(4,1fr)}}
.guide{display:flex;flex-direction:column;height:100%;background:#fff;padding:1.5rem;border:1px solid transparent;border-radius:8px;box-shadow:0 1px 2px rgba(0,0,0,.05);transition:transform .3s,box-shadow .3s,border-color .3s}
.guide:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.08);border-color:hsl(40 50% 57% / .4)}
.guide-ico{margin-bottom:1.25rem;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:8px;background:hsl(33 30% 90% / .7);color:var(--plum)}
.guide .cat{color:var(--gold)!important;margin-bottom:.5rem;font-size:.7rem!important}
.guide h3{font-size:1.125rem!important;line-height:1.3!important;color:var(--navy)!important}
.guide p{margin-top:.75rem;font-size:.875rem!important;color:hsl(330 22% 14% / .7)!important;line-height:1.6!important;flex:1}
.guide .more{margin-top:1.25rem;font-size:.875rem!important;font-weight:600;color:var(--plum)!important;display:inline-flex;align-items:center;transition:color .25s}
.guide:hover .more{color:var(--navy)}
.guide .arr{margin-left:.35rem;transition:transform .25s}
.guide:hover .arr{transform:translateX(2px)}

/* ---------- Guarantee (dark) ---------- */
.guarantee{background:var(--navy-dark);padding:6rem 0;color:#fff!important;position:relative;overflow:hidden}
@media(min-width:768px){.guarantee{padding:7rem 0}}
.guarantee .dot-bg{position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle,rgba(255,255,255,.4) 1px,transparent 1px);background-size:24px 24px;opacity:.04}
.guarantee-wrap{max-width:768px;margin:0 auto;text-align:center;position:relative}
.guarantee h2{font-size:clamp(2rem,2.6vw + 1rem,3rem)!important;color:#fff!important}
.guarantee h2 .accent{color:var(--gold-light)!important}
.guarantee-body{margin-top:2rem;display:flex;flex-direction:column;gap:1.25rem;color:rgba(255,255,255,.85)!important;font-size:1.05rem!important;line-height:1.8!important}
.gold-light{color:var(--gold-light)!important}

/* ---------- FAQ ---------- */
.faq{background:var(--off-white);padding:5rem 0}
@media(min-width:768px){.faq{padding:6rem 0}}
.faq-list{max-width:896px;margin:3rem auto 0;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-card);overflow:hidden}
.faq-item{border-bottom:1px solid var(--line);padding:0 1.5rem}
.faq-item:last-child{border-bottom:none}
.faq-q{width:100%;text-align:left;font-family:'Playfair Display',serif;font-weight:600;color:var(--navy)!important;font-size:1.05rem!important;padding:1.25rem 0;display:flex;justify-content:space-between;align-items:center;gap:1rem;line-height:1.3!important;letter-spacing:-.02em}
.faq-q .chev{flex-shrink:0;transition:transform .25s;color:var(--gold)!important; max-width: 32px;}
.faq-item.open .chev{transform:rotate(180deg)}
.faq-a{overflow:hidden;max-height:0;transition:max-height .3s ease}
.faq-a-inner{color:hsl(330 22% 14% / .8)!important;font-size:.98rem!important;line-height:1.65!important;padding-bottom:1.25rem}
@keyframes faqIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}

/* ---------- Contact ---------- */
.ct{background:#fff;padding:5rem 0}
@media(min-width:768px){.ct{padding:6rem 0}}
.ct h2{font-size:clamp(1.875rem,2vw + 1rem,2.75rem)!important;color:var(--navy)!important}
.callnote{margin-top:1.25rem;color:var(--muted-text)!important;font-size:.95rem!important}
.callnote a{font-weight:700;color:var(--navy)!important}
.callnote a:hover{color:var(--gold-deep)!important}

/* ---------- [aroham_section] wrapper ---------- */
section.section{padding:5rem 0}
section.section.cream{background:var(--off-white)}
section.section.beige{background:hsl(33 30% 90%)}
section.section.dark{background:var(--navy-dark);color:#fff!important}

/* ---------- [aroham_section_heading] ---------- */
.aroham-section-heading{margin-bottom:2.5rem}
.aroham-section-heading.center{text-align:center;max-width:42rem;margin-left:auto;margin-right:auto;margin-bottom:3rem}
.aroham-section-heading .eyebrow{display:block;margin-bottom:.75rem}
.aroham-section-heading .section-title{display:block;font-family:'Playfair Display',Georgia,serif;font-weight:600;font-size:clamp(1.875rem,2vw + 1rem,2.625rem)!important;line-height:1.15!important;letter-spacing:-.02em;color:var(--ink)!important}
.aroham-section-heading .section-lead{display:block;margin-top:1rem;font-size:1.05rem!important;line-height:1.7!important;color:var(--muted-text)!important;max-width:38rem}
.aroham-section-heading.center .section-lead{margin-left:auto;margin-right:auto}
section.section.dark .aroham-section-heading .section-title{color:#fff!important}
section.section.dark .aroham-section-heading .section-lead{color:rgba(255,255,255,.8)!important}


/* ==========================================================
   Contact — two-column grid layout
   ========================================================== */
.ct-grid{display:grid;gap:3rem;align-items:start}
@media(min-width:1024px){.ct-grid{grid-template-columns:1fr 1fr;gap:4rem}}
/* Left col sticky — stays visible while long form scrolls on the right */
@media(min-width:1024px){.ct-grid>div:first-child{position:sticky;top:140px}}

/* Left column — telline (large phone) */
.ct-telline{
  margin-top:1.75rem;display:inline-flex;align-items:center;gap:.75rem;
  font-family:'Playfair Display',Georgia,serif;color:var(--plum)!important;
  font-size:clamp(1.75rem,2.2vw + 1rem,2.5rem);
  text-decoration:none!important;transition:color .25s;
}
.ct-telline:hover{color:var(--navy)!important}
.ct-telline .icon{width:28px;height:28px;color:var(--gold);flex-shrink:0}

/* Body paragraphs */
.ct-body{margin-top:1.75rem;display:flex;flex-direction:column;gap:1.25rem;color:rgba(43,8,28,.85)!important;font-size:1.02rem!important;line-height:1.75!important}
.ct-body p{float:none!important;width:auto!important;padding:0!important;color:inherit!important}

/* Confidentiality note badge */
.ct-note{
  margin-top:1.75rem;display:flex;gap:.75rem;align-items:flex-start;
  background:var(--off-white);
  border-left:4px solid var(--gold);
  border-top-right-radius:8px;border-bottom-right-radius:8px;
  padding:1rem;
}
.ct-note .icon{width:20px;height:20px;color:var(--gold);flex-shrink:0;margin-top:2px}
.ct-note p{color:var(--muted-text)!important;font-size:.92rem!important;line-height:1.6!important;float:none!important;width:auto!important;padding:0!important}

/* Right column — callback form card */
.callback{
  background:var(--off-white);border-radius:12px;
  padding:1.75rem;border:1px solid var(--line);box-shadow:var(--shadow-card);
}
@media(min-width:768px){.callback{padding:2.25rem}}
.callback h3{font-size:1.4rem!important;color:var(--navy)!important}
.callback .sub{margin-top:.25rem;color:var(--muted-text)!important;font-size:.9rem!important;float:none!important;width:auto!important;padding:0!important}
/* CF7 form fields inside .callback */
.callback .wpcf7-form p{float:none!important;width:auto!important;padding:0!important;margin-bottom:.75rem}
.callback input[type="text"],.callback input[type="email"],.callback input[type="tel"],.callback textarea,.callback select,
.callback .wpcf7-form input[type="text"],.callback .wpcf7-form input[type="email"],.callback .wpcf7-form input[type="tel"],.callback .wpcf7-form textarea{
  width:100%!important;padding:.75rem 1rem!important;background:#fff!important;
  border:1px solid var(--line)!important;border-radius:8px!important;
  outline:none;transition:border-color .2s;font-size:1rem!important;
  box-sizing:border-box!important;
}
.callback .wpcf7-form input[type="tel"]{padding:.75rem 1rem .75rem 52px!important;}
.callback input:focus,.callback textarea:focus,.callback .wpcf7-form input:focus,.callback .wpcf7-form textarea:focus{border-color:var(--gold)!important}
.callback textarea{resize:none}
.callback input[type="submit"],.callback .wpcf7-form input[type="submit"],.callback button[type="submit"]{
  margin-top:1.25rem!important;width:100%!important;
  background:var(--gold)!important;color:var(--navy-dark)!important;
  font-weight:600!important;padding:.85rem!important;border-radius:8px!important;
  transition:background .25s;cursor:pointer;font-size:1rem!important;
  border:0!important;
}
.callback input[type="submit"]:hover,.callback .wpcf7-form input[type="submit"]:hover,.callback button[type="submit"]:hover{background:var(--gold-light)!important}
.callback .fineprint{margin-top:.75rem;color:var(--muted-text)!important;font-size:.78rem!important;text-align:center;float:none!important;width:auto!important;padding:0!important}
.callback .wpcf7-not-valid-tip{color:#c0392b!important;font-size:.8rem!important}
.callback .wpcf7-response-output{margin-top:1rem!important;padding:.75rem!important;border-radius:8px!important;font-size:.9rem!important}

/* ── International Tel Input (iti) inside .callback ── */
.callback .iti{width:100%!important;display:block!important}
.callback .iti input[type="tel"]{width:100%!important;padding:.75rem 1rem .75rem 3.5rem!important;background:#fff!important;border:1px solid var(--line)!important;border-radius:8px!important;font-size:1rem!important;box-sizing:border-box!important}
.callback .iti input[type="tel"]:focus{border-color:var(--gold)!important;outline:none!important}
.callback .iti__flag-container{top:50%!important;transform:translateY(-50%)!important}
.callback .iti__selected-flag{background:transparent!important;border-right:1px solid var(--line)!important;padding:0 .5rem!important}
.callback .iti__selected-flag:hover,.callback .iti__selected-flag:focus{background:rgba(0,0,0,.04)!important}

/* ── Radio & Checkbox labels inside .callback ── */
.callback .wpcf7-form label,
.callback .wpcf7-form .wpcf7-list-item-label{
  color:var(--ink)!important;font-size:.9rem!important;font-weight:400!important;
  float:none!important;width:auto!important;padding:0!important;display:inline!important;
}
.callback .wpcf7-form .wpcf7-list-item{display:inline-flex!important;align-items:center!important;gap:.35rem!important;margin-right:1rem!important;float:none!important}
.callback .wpcf7-form input[type="radio"],
.callback .wpcf7-form input[type="checkbox"]{
  width:auto!important;padding:0!important;margin:0!important;
  accent-color:var(--gold)!important;cursor:pointer;
  border:none!important;background:transparent!important;
}
/* Question label (the <label> wrapping the whole radio group) */
.callback .wpcf7-form .wpcf7-radio,
.callback .wpcf7-form .wpcf7-checkbox{display:flex!important;flex-wrap:wrap!important;gap:.25rem .5rem!important;margin-top:.35rem!important}

@media screen and (max-width: 758px) {
  .headseccont .alignright li.ukat-gpt-link{margin:0 -20px 0 0 !important;}
  .headseccont .container{padding:5px 0 !important}
  .bayb-header.transparent .mobile .spin{width:36px;}
  .ukat-gpt-text, .ukat-gpt-mobile-text{margin-top:0;}
  .container{width:100%!important;max-width:1280px!important;margin:0 auto!important;padding:5px 15px!important}
  .hero .lede{margin-top:0.5rem}
  .hero-content{margin-top:2.5rem;}
}

.t-consentPrompt .t-declineButton, .t-consentPrompt .t-acceptAllButton {
  color: #fff !important;
}