/* R59 — premium polish
   Visual-only refinement on top of R58. Focus: brand integration, hierarchy,
   premium depth, practice-note contrast, CTA rhythm and footer composition. */

body.home{
  --r59-gold:#dfb25c;
  --r59-gold-soft:#f0cf87;
  --r59-ink:#062746;
  --r59-ink-deep:#02192f;
  --r59-pearl:#f6f1e8;
  --r59-line:rgba(12,52,87,.12);
}

/* ---------- Brand lockup: one coherent crest on dark fields ---------- */
.home .site-header .brand,
.home .site-footer .footer-brand .brand{
  isolation:isolate;
}
.home .site-header .brand-mark,
.home .site-footer .footer-brand .brand-mark{
  position:relative!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  overflow:visible!important;
  border:0!important;
  border-radius:18px!important;
  background:linear-gradient(145deg,#fbf7ef 0%,#e9dfcf 100%)!important;
  box-shadow:
    0 12px 28px rgba(0,13,30,.28),
    0 0 0 1px rgba(224,176,82,.72),
    inset 0 1px 0 rgba(255,255,255,.9)!important;
  filter:none!important;
  backdrop-filter:none!important;
}
.home .site-header .brand-mark::after,
.home .site-footer .footer-brand .brand-mark::after{
  content:"";
  position:absolute;
  inset:5px;
  border:1px solid rgba(8,48,87,.16);
  border-radius:13px;
  pointer-events:none;
}
.home .site-header .brand-mark .approved-brand-symbol,
.home .site-footer .footer-brand .brand-mark .approved-brand-symbol{
  width:88%!important;
  height:88%!important;
  object-fit:contain!important;
  filter:drop-shadow(0 3px 4px rgba(2,25,47,.16))!important;
  transform:none!important;
}
.home .site-header .brand-mark{
  width:54px!important;height:54px!important;flex:0 0 54px!important;
  margin-right:12px!important;
}
.home .site-header .brand-copy{
  padding-left:13px!important;
  border-left:1px solid rgba(223,178,91,.45)!important;
  gap:0!important;
}
.home .site-header .brand-copy strong{
  color:#fff!important;font-size:12.5px!important;line-height:1.08!important;
  letter-spacing:.018em!important;text-shadow:0 1px 8px rgba(0,0,0,.18);
}
.home .site-header .brand-copy small{
  color:#e5b85f!important;font-size:7px!important;line-height:1!important;
  letter-spacing:.22em!important;margin-top:7px!important;
}
.home .site-header .brand-copy em{
  color:#a9bac8!important;font-size:6.6px!important;line-height:1!important;
  letter-spacing:.18em!important;margin-top:5px!important;
}
html[dir="rtl"] .home .site-header .brand-mark{margin-right:12px!important;margin-left:0!important}
html[dir="rtl"] .home .site-header .brand-copy{padding-left:13px!important;padding-right:0!important;border-left:1px solid rgba(223,178,91,.45)!important;border-right:0!important}

/* ---------- Header refinement ---------- */
.home .site-header{
  border-bottom-color:rgba(255,255,255,.10)!important;
  box-shadow:0 10px 30px rgba(1,18,35,.10)!important;
}
.home .site-header .desktop-nav{
  background:rgba(0,19,39,.30)!important;
  border-color:rgba(255,255,255,.13)!important;
}
.home .site-header .desktop-nav .menu a{
  color:#e8eff4!important;
  font-weight:650!important;
}
.home .site-header .desktop-nav .current-menu-item>a,
.home .site-header .desktop-nav .menu a:hover{color:#fff!important}
.home .site-header .header-cta{
  background:linear-gradient(135deg,#efca77,#dba647)!important;
  box-shadow:0 11px 28px rgba(0,17,37,.22),inset 0 1px 0 rgba(255,255,255,.38)!important;
}

/* ---------- Manifesto + section rhythm ---------- */
body.home .manifesto{padding-top:84px!important;padding-bottom:86px!important}
body.home .manifesto-grid{grid-template-columns:138px minmax(0,1.12fr) minmax(310px,.88fr)!important;gap:38px!important}
body.home .manifesto h2{font-size:clamp(44px,4vw,58px)!important}
body.home .manifesto-copy{font-size:13.5px!important;line-height:1.9!important;color:#6f8293!important}

/* ---------- Services: more editorial, less poster-like ---------- */
body.home .services{padding-top:88px!important;padding-bottom:102px!important}
body.home .section-top{margin-bottom:36px!important}
body.home .service-bento{gap:20px!important;grid-template-rows:repeat(2,328px)!important}
body.home .service-card{border-radius:16px!important;box-shadow:0 18px 44px rgba(3,28,53,.09)!important}
body.home .service-card::after{height:68%!important;background:linear-gradient(180deg,transparent 0%,rgba(2,25,48,.08) 25%,rgba(2,25,48,.91) 100%)!important}
body.home .card-copy{inset:auto 22px 20px!important}
body.home .card-copy h3{font-size:clamp(25px,1.8vw,31px)!important;line-height:1.05!important;max-width:94%!important}
body.home .card-copy p{color:rgba(255,255,255,.84)!important}
body.home .card-copy button{opacity:.92!important}

/* ---------- Journey: remove flat grey card feeling ---------- */
body.home .journey{background:
  radial-gradient(circle at 92% 18%,rgba(61,125,181,.26),transparent 34%),
  linear-gradient(135deg,#042646 0%,#0b3e6a 58%,#164f7f 100%)!important}
body.home .journey-grid{gap:16px!important}
body.home .journey-step{
  min-height:286px!important;
  border-color:rgba(255,255,255,.16)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.025))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
}
body.home .journey-step:last-child{
  background:linear-gradient(145deg,rgba(255,255,255,.17),rgba(255,255,255,.075))!important;
}
body.home .journey-icon{
  border-color:rgba(231,186,96,.48)!important;
  color:#edc36f!important;
  background:rgba(2,29,55,.18)!important;
}
body.home .journey-step h3{font-size:28px!important}
body.home .journey-step p{color:#d1dde6!important}

/* ---------- Doctor: quieter editorial relationship ---------- */
body.home .doctor{gap:60px!important}
body.home .doctor-photo{box-shadow:0 24px 58px rgba(1,20,39,.18)!important}
body.home .doctor-content{max-width:620px!important}
body.home .doctor h2{letter-spacing:-.025em!important}
body.home .doctor-stats{border-color:rgba(255,255,255,.14)!important}

/* ---------- Practice gallery: fix note contrast + spatial balance ---------- */
body.home .practice{padding-top:94px!important;padding-bottom:108px!important}
body.home .practice-gallery{gap:18px!important}
body.home .practice-gallery figure{box-shadow:0 18px 46px rgba(3,28,53,.09)!important}
body.home .practice-note{
  background:linear-gradient(145deg,#f7f1e7,#eee3d3)!important;
  border:1px solid rgba(209,164,79,.30)!important;
  box-shadow:0 18px 42px rgba(3,28,53,.10)!important;
}
body.home .practice-note>span{color:#a86f1b!important;font-weight:800!important;letter-spacing:.16em!important}
body.home .practice-note h3{color:#12375d!important;font-size:27px!important;line-height:1.12!important;text-shadow:none!important}
body.home .practice-note p{color:#607486!important;font-size:12.5px!important}
html[dir="rtl"] body.home .practice-note h3{color:#12375d!important}

/* ---------- Testimonials: stronger separation without oversized emptiness ---------- */
body.home .voices{padding-top:92px!important;padding-bottom:92px!important}
body.home .voices-layout{align-items:center!important}
body.home .quote-stage{border-left-color:rgba(255,255,255,.14)!important}
body.home .quote-stage blockquote{max-width:700px!important;line-height:1.25!important}
body.home .quote-controls button{background:rgba(255,255,255,.025)!important;border-color:rgba(255,255,255,.22)!important}
body.home .quote-controls button:hover{background:rgba(255,255,255,.08)!important}

/* ---------- Visit: premium card edges ---------- */
body.home .visit-panel{box-shadow:0 18px 46px rgba(3,28,53,.075)!important}
body.home .map-consent-card{box-shadow:0 20px 50px rgba(3,28,53,.08)!important;border:1px solid rgba(10,48,82,.08)!important}

/* ---------- Contact CTA: one visual system ---------- */
body.home .contact{padding-top:86px!important;padding-bottom:88px!important;background:#f8f4ec!important}
body.home .contact-grid{grid-template-columns:minmax(0,1.18fr) minmax(0,.92fr) minmax(0,.82fr)!important;column-gap:18px!important;row-gap:16px!important}
body.home .contact-copy{padding-right:44px!important;align-self:center!important}
body.home .contact-copy h2{font-size:clamp(44px,4vw,58px)!important;line-height:1.05!important}
body.home .contact-action{
  min-height:142px!important;
  border-radius:14px!important;
  border-color:rgba(12,52,87,.12)!important;
  box-shadow:0 14px 34px rgba(3,28,53,.055)!important;
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease!important;
}
body.home .contact-action:hover{transform:translateY(-3px)!important;box-shadow:0 20px 44px rgba(3,28,53,.10)!important;border-color:rgba(215,167,79,.34)!important}
body.home .contact-action.primary{
  background:linear-gradient(145deg,#082f58,#052849)!important;
  box-shadow:0 18px 42px rgba(3,28,53,.15)!important;
}
body.home .contact-action span{font-size:22px!important}

/* ---------- Floating CTA: quieter and visually subordinate ---------- */
body.home .floating-appointment,
body.home [class*="floating"][class*="appointment"]{
  min-width:104px!important;
  height:42px!important;
  padding-inline:18px!important;
  border-radius:999px!important;
  box-shadow:0 12px 28px rgba(2,22,43,.18)!important;
}

/* ---------- Footer: stronger brand signature, cleaner column rhythm ---------- */
.home .site-footer .footer-main{
  background:
    radial-gradient(circle at 14% 0%,rgba(39,92,139,.20),transparent 28%),
    linear-gradient(180deg,#031d38,#02162a)!important;
  padding-top:54px!important;
}
.home .site-footer .footer-grid{
  grid-template-columns:1.45fr .78fr 1.02fr .82fr!important;
  gap:46px!important;
  padding-bottom:40px!important;
}
.home .site-footer .footer-brand .brand{
  max-width:360px!important;
  align-items:center!important;
}
.home .site-footer .footer-brand .brand-mark{
  width:66px!important;height:66px!important;flex:0 0 66px!important;margin-right:15px!important;
  border-radius:20px!important;
}
.home .site-footer .footer-brand .brand-copy{
  padding-left:15px!important;
  border-left:1px solid rgba(223,178,91,.38)!important;
}
.home .site-footer .footer-brand .brand-copy strong{font-size:15px!important;line-height:1.08!important;letter-spacing:.012em!important}
.home .site-footer .footer-brand .brand-copy small{font-size:7.8px!important;letter-spacing:.20em!important;margin-top:7px!important}
.home .site-footer .footer-brand .brand-copy em{font-size:6.8px!important;letter-spacing:.16em!important;margin-top:5px!important}
.home .site-footer .footer-grid>div:not(.footer-brand):not(.footer-motto){padding-top:7px!important}
.home .site-footer .footer-grid>div>strong{font-size:9.5px!important;color:#e5b45b!important;letter-spacing:.11em!important}
.home .site-footer .footer-links{gap:6px!important}
.home .site-footer .footer-links a{font-size:10.5px!important;color:#c0d0dc!important}
.home .site-footer .footer-motto{padding-top:7px!important}
.home .site-footer .footer-motto>span{font-size:20px!important}
.home .site-footer .footer-motto>em{font-size:17px!important}
.home .site-footer .footer-bottom{min-height:54px!important;padding:14px 0!important;color:#839caf!important}
html[dir="rtl"] .home .site-footer .footer-brand .brand{margin-left:auto!important;margin-right:0!important}
html[dir="rtl"] .home .site-footer .footer-brand .brand-mark{margin-right:15px!important;margin-left:0!important}
html[dir="rtl"] .home .site-footer .footer-brand .brand-copy{padding-left:15px!important;padding-right:0!important;border-left:1px solid rgba(223,178,91,.38)!important;border-right:0!important}

/* ---------- Tablet / mobile ---------- */
@media(max-width:1100px){
  .home .site-header .brand-mark{width:50px!important;height:50px!important;flex-basis:50px!important}
  .home .site-header .brand-copy{display:none!important}
  .home .site-header .brand{min-width:50px!important;max-width:50px!important;width:50px!important;flex:0 0 50px!important}
  body.home .service-bento{grid-template-rows:repeat(2,300px)!important}
  body.home .contact-grid{grid-template-columns:1fr 1fr!important}
  body.home .contact-copy{grid-column:1/-1;padding-right:0!important;max-width:760px!important}
  body.home .contact-action.primary{grid-row:auto!important}
  body.home .contact-action:last-child{grid-column:auto!important;grid-row:auto!important}
}
@media(max-width:860px){
  .home .site-header .brand-mark{width:44px!important;height:44px!important;flex-basis:44px!important;border-radius:14px!important}
  .home .site-header .brand{min-width:44px!important;max-width:44px!important;width:44px!important;flex-basis:44px!important}
  body.home .service-bento{grid-template-rows:none!important}
  body.home .contact-grid{grid-template-columns:1fr!important}
  body.home .contact-action{min-height:118px!important}
  .home .site-footer .footer-brand .brand-mark{width:58px!important;height:58px!important;flex-basis:58px!important}
}
@media(max-width:520px){
  body.home .manifesto{padding-top:64px!important;padding-bottom:66px!important}
  body.home .services{padding-top:70px!important;padding-bottom:78px!important}
  body.home .journey{padding-top:74px!important;padding-bottom:78px!important}
  body.home .practice{padding-top:72px!important;padding-bottom:82px!important}
  body.home .voices{padding-top:74px!important;padding-bottom:76px!important}
  body.home .contact{padding-top:68px!important;padding-bottom:72px!important}
  body.home .contact-copy h2{font-size:38px!important}
  .home .site-footer .footer-grid{gap:24px!important}
  .home .site-footer .footer-brand .brand{max-width:290px!important}
  .home .site-footer .footer-brand .brand-copy strong{font-size:13px!important}
}
