
:root{
  --navy-950:#052946; --navy-800:#0B3E68; --navy-700:#004892; --navy-500:#3E6FA0;
  --laurel-700:#1F5A26; --laurel-500:#308036; --laurel-200:#C3DCC0;
  --claret-600:#7A2E42; --claret-700:#5E2333;
  --paper:#F5F7F3; --paper-deep:#EAEEE5; --green-tint:color-mix(in srgb,var(--laurel-700) 6%,var(--paper));
  --ink:#1C1D1B; --ink-soft:#53584C; --line:#DCE1D6;
  --container:1320px; --ease:cubic-bezier(.16,1,.3,1);
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--paper);color:var(--ink);font-family:Karla,system-ui,-apple-system,Segoe UI,sans-serif;font-size:16px;line-height:1.65;text-rendering:optimizeLegibility;overflow-x:hidden} img{max-width:100%;display:block} a{color:inherit;text-decoration:none} button,input,select,textarea{font:inherit;color:inherit} ::selection{background:var(--laurel-200);color:var(--navy-950)} :focus-visible{outline:2px solid var(--laurel-500);outline-offset:4px}.skip-link{position:fixed;left:16px;top:16px;z-index:999;transform:translateY(-160%);background:var(--navy-950);color:var(--paper);padding:10px 14px;border-radius:8px}.skip-link:focus{transform:translateY(0)}
.container{width:min(var(--container),calc(100% - 40px));margin-inline:auto}.narrow{width:min(900px,calc(100% - 40px));margin-inline:auto}.section{padding:112px 0;position:relative}.section.compact{padding:64px 0}.bg-paper{background:var(--paper)}.bg-deep{background:var(--paper-deep)}.bg-green{background:var(--green-tint)}.bg-navy{background:var(--navy-950);color:var(--paper)}.bg-navy p,.bg-navy h2,.bg-navy h3,.bg-navy .eyebrow{color:var(--paper)}
.eyebrow,.data-label{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--laurel-700);font-weight:500;margin:0 0 14px} .bg-navy .eyebrow{color:var(--laurel-200)}
h1,h2,h3{font-family:Piazzolla,Georgia,serif;color:var(--navy-950);line-height:1.12;margin:0;font-weight:600;letter-spacing:-.01em}h1{font-size:clamp(38px,6vw,72px);line-height:1}h2{font-size:clamp(24px,3vw,34px)}h3{font-size:clamp(20px,2vw,24px);line-height:1.3}p{margin:0;color:var(--ink-soft)}.lede{font-size:19px;line-height:1.65}.mono{font-family:'IBM Plex Mono',monospace;letter-spacing:.01em}
.site-header{position:fixed;inset:0 0 auto 0;z-index:80;background:color-mix(in srgb,var(--paper) 74%,transparent);transition:background-color 250ms ease,box-shadow 250ms ease,border-color 250ms ease;border-bottom:1px solid transparent;backdrop-filter:blur(12px)}.site-header.scrolled{background:var(--paper);border-bottom-color:var(--line);box-shadow:0 12px 28px color-mix(in srgb,var(--navy-950) 10%,transparent)}.header-shell{width:min(var(--container),calc(100% - 36px));height:78px;margin:auto;display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:28px}.brand img{height:47px;width:auto}.desktop-nav{display:flex;justify-content:center;gap:26px;align-items:center}.nav-link{position:relative;font-weight:500;font-size:15px;color:var(--navy-950);padding:12px 0}.nav-link::after{content:"";position:absolute;left:0;right:0;bottom:7px;height:2px;background:var(--laurel-500);transform:scaleX(0);transform-origin:left;transition:transform 200ms ease}.nav-link:hover::after{transform:scaleX(1)}.nav-link.active::before{content:"";position:absolute;top:2px;left:50%;width:6px;height:6px;border-radius:50%;background:var(--laurel-500);transform:translateX(-50%)}.header-phone{display:inline-flex;align-items:center;gap:8px;font-size:15px;color:var(--navy-700)}.header-phone svg,.mobile-bottom svg,.social-row svg{width:19px;height:19px;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round}
.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;padding:14px 28px;font-weight:600;line-height:1;border:1px solid transparent;transition:transform 180ms ease,background-color 180ms ease,color 180ms ease,border-color 180ms ease;cursor:pointer;gap:8px}.btn.primary{background:var(--claret-600);color:var(--paper);border-color:var(--claret-600)}.btn.primary:hover{background:var(--claret-700);border-color:var(--claret-700);transform:translateY(-2px)}.btn.secondary{border-color:var(--navy-700);color:var(--navy-700);background:transparent}.btn.secondary:hover{background:var(--navy-700);color:var(--paper)}.btn.light{border-color:var(--paper);color:var(--paper)}.btn.light:hover{background:var(--paper);color:var(--claret-600)}.ghost-link{display:inline-flex;gap:7px;align-items:center;color:var(--navy-700);font-weight:600;margin-top:18px}.ghost-link span{transition:transform 180ms ease}.ghost-link:hover span{transform:translateX(4px)}
.menu-toggle{display:none;width:44px;height:44px;border:1px solid var(--line);border-radius:8px;background:var(--paper);position:relative;padding:10px;z-index:95}.menu-toggle span{display:block;height:2px;background:var(--navy-950);margin:6px 0;transition:transform 220ms ease,opacity 180ms ease}.menu-toggle.open span:nth-child(1){transform:translateY(8px) rotate(45deg)}.menu-toggle.open span:nth-child(2){opacity:0}.menu-toggle.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.mobile-overlay{position:fixed;inset:0;background:var(--navy-950);color:var(--paper);display:grid;place-items:center;transform:translateY(-100%);transition:transform 420ms var(--ease);z-index:90}.mobile-overlay.open{transform:translateY(0)}.mobile-overlay nav{display:grid;gap:18px;text-align:center}.mobile-overlay .nav-link{font-family:Piazzolla,Georgia,serif;font-size:28px;color:var(--paper);opacity:0;transform:translateY(16px)}.mobile-overlay.open .nav-link{animation:fadeUp 420ms var(--ease) forwards}.mobile-overlay.open .nav-link:nth-child(2){animation-delay:40ms}.mobile-overlay.open .nav-link:nth-child(3){animation-delay:80ms}.mobile-overlay.open .nav-link:nth-child(4){animation-delay:120ms}.mobile-overlay.open .nav-link:nth-child(5){animation-delay:160ms}.mobile-bottom{position:fixed;left:0;right:0;bottom:0;background:var(--navy-950);color:var(--paper);display:none;grid-template-columns:repeat(3,1fr);z-index:75;border-top:1px solid color-mix(in srgb,var(--line) 20%,transparent)}.mobile-bottom a{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 8px;font-size:13px;font-weight:600;border-right:1px solid color-mix(in srgb,var(--line) 16%,transparent)}
.hero{min-height:100vh;display:grid;align-items:center;padding:120px 0 80px;overflow:hidden}.hero-grid{width:min(var(--container),calc(100% - 40px));margin-inline:auto;display:grid;grid-template-columns:1.02fr .98fr;gap:72px;align-items:center}.hero-copy{max-width:700px}.hero h1 span{display:block}.hero .lede{margin-top:26px;max-width:620px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.hero-meta{display:flex;gap:22px;flex-wrap:wrap;margin-top:34px}.hero-meta span{font-size:13px;text-transform:uppercase;color:var(--ink-soft)}.hero-photo{margin:0;margin-right:calc((min(var(--container),calc(100vw - 40px)) - 100vw)/2);align-self:stretch;min-height:640px;position:relative;background:var(--paper-deep);display:flex;align-items:flex-end;justify-content:center;padding:40px 40px 0}.hero-photo img{width:min(80%,480px);aspect-ratio:4/5;height:auto;object-fit:cover;object-position:top center;border-radius:4px 32px 4px 32px;border:1px solid var(--line)}.hero-photo figcaption{position:absolute;left:38px;bottom:36px;background:var(--paper);border-left:3px solid var(--laurel-500);padding:16px 18px;max-width:360px}.hero-photo strong{display:block;color:var(--navy-950);font-family:Piazzolla,Georgia,serif;font-size:22px}.hero-photo span{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--ink-soft)}
.page-hero{padding:150px 0 96px}.page-grid{display:grid;grid-template-columns:1fr .58fr;gap:72px;align-items:center}.page-grid.text-only{grid-template-columns:1fr}.page-hero h1{font-size:clamp(30px,4vw,46px);line-height:1.08}.page-hero .lede{max-width:760px;margin-top:22px}.portrait-frame{margin:0;aspect-ratio:4/5;background:var(--paper-deep);border-radius:4px 32px 4px 32px;overflow:hidden;border-left:3px solid var(--laurel-500)}.portrait-frame img{width:100%;height:100%;object-fit:cover;object-position:top center}.inline-placeholder,.placeholder{border-bottom:1px dashed currentColor}.section-head{max-width:780px;margin-left:calc((100% - min(var(--container),calc(100% - 40px)))/2 + 96px);margin-bottom:48px}.center-cta{text-align:center;margin-top:40px}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-card{border-radius:4px 24px 4px 24px;border:0;border-left:3px solid var(--laurel-500);background:var(--paper);padding:32px 28px 28px 24px;transition:transform 220ms ease-out,background-color 220ms ease-out,border-color 220ms ease-out;min-height:260px}.bg-deep .service-card,.bg-green .service-card{background:var(--paper)}.service-card:hover{border-left-color:var(--claret-600);background:color-mix(in srgb,var(--laurel-200) 25%,var(--paper));transform:translateY(-4px)}.service-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.icon-ring{width:54px;height:54px;border:1px solid var(--laurel-200);border-radius:50%;display:grid;place-items:center;color:var(--laurel-500);flex:0 0 auto}.icon-ring svg{width:28px;height:28px;stroke:currentColor;stroke-width:1.5;fill:none;stroke-linecap:round;stroke-linejoin:round}.service-card h3{margin-bottom:12px}.service-detail{margin-top:18px;display:grid;gap:8px}.service-detail strong{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--laurel-700)}.service-detail p{font-size:14px}.stat-band{padding:54px 0}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:40px}.stat-block{color:var(--paper)}.stat-number{font-family:'IBM Plex Mono',monospace;font-size:clamp(30px,4vw,44px);line-height:1;color:var(--paper);display:block;letter-spacing:-.03em}.stat-rule{display:block;width:62px;height:2px;background:var(--laurel-500);margin:16px 0}.stat-rule.dashed{height:0;border-top:2px dashed var(--laurel-500);background:transparent}.stat-block p{color:color-mix(in srgb,var(--paper) 78%,transparent);font-size:14px;text-transform:uppercase;letter-spacing:.07em}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}.feature-grid.reverse .feature-panel{order:1}.feature-copy p:not(.eyebrow){margin-top:20px}.feature-panel{background:var(--paper);border-radius:0 32px 0 32px;padding:44px;border-left:3px solid var(--claret-600)}.feature-panel strong{font-family:Piazzolla,Georgia,serif;font-size:48px;line-height:1;color:var(--navy-950);display:block}.feature-panel em{display:block;font-family:'IBM Plex Mono',monospace;font-style:normal;font-size:24px;color:var(--claret-600);margin:4px 0 18px}.feature-kicker{font-size:12px;text-transform:uppercase;letter-spacing:.09em;color:var(--laurel-700)}.line-list{display:grid;gap:0;padding:20px 44px}.line-list div{display:grid;grid-template-columns:68px 1fr;gap:18px;align-items:center;padding:24px 0;border-top:1px solid var(--line)}.line-list div:first-child{border-top:0}.location-grid{display:grid;grid-template-columns:1fr .8fr .75fr;gap:44px;align-items:center}.contact-data{display:grid;gap:16px}.contact-data p{font-family:'IBM Plex Mono',monospace;color:var(--ink);font-size:15px}.contact-data span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.09em;color:var(--laurel-700);margin-bottom:4px}.bg-navy .contact-data p{color:var(--paper)}.bg-navy .contact-data span{color:var(--laurel-200)}.contact-data.wide{grid-template-columns:repeat(4,1fr);gap:26px}.map-card,.large-map{display:block;border-radius:4px 24px 4px 24px;overflow:hidden;border:1px solid var(--line);background:var(--paper)}.map-card iframe{height:260px;width:100%;border:0;display:block}.large-map iframe{width:100%;height:420px;border:0;display:block}.map-open{font-family:'IBM Plex Mono',monospace;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--navy-700);font-weight:500}.cta-band{background:var(--claret-600);color:var(--paper)}.cta-band h2,.cta-band p,.cta-band .eyebrow{color:var(--paper)}.cta-inner{display:grid;grid-template-columns:1fr auto;gap:36px;align-items:center}.cta-inner p:not(.eyebrow){margin-top:14px;color:color-mix(in srgb,var(--paper) 86%,transparent)}.cta-actions{display:flex;gap:14px;flex-wrap:wrap;justify-content:flex-end}.editorial-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.copy-stack{display:grid;gap:20px}.gallery-grid{display:grid;grid-template-columns:.8fr .8fr 1fr;gap:24px}.gallery-card,.photo-placeholder{background:var(--paper);border-radius:4px 24px 4px 24px;overflow:hidden;border-left:3px solid var(--laurel-500);margin:0}.gallery-card img{width:100%;height:380px;object-fit:cover;object-position:top center}.gallery-card figcaption,.photo-placeholder{padding:22px}.photo-placeholder{display:grid;align-content:center;min-height:380px}.service-index{display:flex;gap:14px;flex-wrap:wrap}.service-index a{border:1px solid color-mix(in srgb,var(--paper) 38%,transparent);padding:12px 16px;border-radius:8px;font-family:'IBM Plex Mono',monospace;font-size:12px;text-transform:uppercase;letter-spacing:.07em}.service-index a:hover{background:var(--paper);color:var(--navy-950)}.stage-section{padding:96px 0}.stage-section:last-child{padding-bottom:96px}.stage-marker{max-width:760px;margin-bottom:32px}.detail-cards{grid-template-columns:repeat(2,1fr)}.deep-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}.deep-card{background:var(--paper);border-radius:4px 24px 4px 24px;border-left:3px solid var(--laurel-500);padding:34px}.deep-card ul{color:var(--ink-soft);padding-left:20px}.pull-quote{max-width:980px}.pull-quote p{font-family:Piazzolla,Georgia,serif;font-size:clamp(28px,4vw,52px);line-height:1.15;color:var(--paper)}.pull-quote span{display:block;margin-top:22px;font-family:'IBM Plex Mono',monospace;color:var(--laurel-200);text-transform:uppercase;letter-spacing:.09em}.contact-grid{display:grid;grid-template-columns:1fr .8fr;gap:40px;align-items:start}.form-card{background:var(--paper-deep);border-left:3px solid var(--laurel-500);border-radius:4px 24px 4px 24px;padding:38px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:24px 0}.form-grid label{display:grid;gap:8px;font-weight:600;color:var(--navy-950);min-width:0}.form-grid label.full{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea{border:1px solid var(--line);background:var(--paper);border-radius:8px;padding:13px 14px;min-height:48px;width:100%;min-width:0;box-sizing:border-box}.form-grid textarea{min-height:132px;resize:vertical}.form-status{font-weight:600;margin-top:16px;color:var(--laurel-700)}.loader{display:none;width:16px;height:16px;border:2px solid color-mix(in srgb,var(--paper) 45%,transparent);border-top-color:var(--paper);border-radius:50%;animation:spin 800ms linear infinite}.is-loading .loader{display:inline-block}.is-loading .btn-text{opacity:.72}.map-and-actions{display:grid;gap:24px}.action-stack{display:grid;gap:12px}.privacy-text h2{margin-top:42px}.privacy-text p{margin-top:12px}.site-footer{background:var(--navy-950);color:var(--paper);padding:74px 0 0}.site-footer a,.site-footer p{color:color-mix(in srgb,var(--paper) 82%,transparent)}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr 1fr 1.15fr;gap:44px}.footer-logo-shell{display:inline-flex;background:var(--paper);padding:10px 12px;border-radius:8px;border:1px solid color-mix(in srgb,var(--line) 35%,transparent)}.footer-logo{height:58px;width:auto;filter:none}.footer-quote{font-family:Piazzolla,Georgia,serif;font-style:italic;font-size:20px;line-height:1.45;margin-top:22px;color:var(--paper)}.site-footer h3{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--laurel-200);margin:0 0 18px}.site-footer h3+ a,.site-footer div>a:not(.mini-map){display:block;margin-top:9px}.footer-data{font-family:'IBM Plex Mono',monospace;font-size:13px;line-height:1.55;margin-top:12px}.social-row{display:flex;gap:12px;margin-top:22px}.social-row a{width:42px;height:42px;border:1px solid color-mix(in srgb,var(--line) 24%,transparent);border-radius:8px;display:grid;place-items:center}.mini-map{display:block;margin-top:12px;border:1px solid color-mix(in srgb,var(--line) 22%,transparent);border-radius:8px;overflow:hidden;background:var(--paper)}.mini-map iframe{height:132px;width:100%;border:0;display:block}.mini-map-link{display:inline-block!important;margin-top:14px!important;font-family:'IBM Plex Mono',monospace;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--laurel-200)!important}.footer-bottom{margin-top:56px;border-top:1px solid color-mix(in srgb,var(--line) 20%,transparent);display:flex;justify-content:space-between;gap:20px;padding:18px max(20px,calc((100vw - min(var(--container),calc(100vw - 40px)))/2));font-family:'IBM Plex Mono',monospace;font-size:12px;color:color-mix(in srgb,var(--paper) 68%,transparent)}.reveal{opacity:0;transform:translateY(16px);transition:opacity 500ms var(--ease),transform 500ms var(--ease)}.reveal.visible{opacity:1;transform:translateY(0)}@keyframes fadeUp{to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}
@media (max-width:1180px){.header-phone{display:none}.card-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.hero-grid{gap:42px}.location-grid{grid-template-columns:1fr 1fr}.map-card{grid-column:1/-1}.contact-data.wide{grid-template-columns:repeat(2,1fr)}}
@media (max-width:1023px){.desktop-nav,.header-phone,.site-header .btn{display:none}.menu-toggle{display:block}.header-shell{grid-template-columns:auto 1fr auto}.brand img{height:42px}.hero{min-height:auto;padding-top:120px}.hero-grid,.page-grid,.feature-grid,.feature-grid.reverse,.editorial-grid,.contact-grid{grid-template-columns:1fr}.feature-grid.reverse .feature-panel{order:0}.hero-photo{margin-right:0;min-height:auto;padding:34px}.section{padding:76px 0}.section-head{margin-left:auto;width:min(860px,calc(100% - 40px))}.stat-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid,.deep-grid,.detail-cards{grid-template-columns:1fr}.cta-inner{grid-template-columns:1fr}.cta-actions{justify-content:flex-start}.page-hero{padding-top:124px}.footer-bottom{padding-bottom:78px}}
@media (max-width:639px){body{font-size:15px;padding-bottom:58px}.container,.narrow{width:calc(100% - 28px)}.mobile-bottom{display:grid}.header-shell{height:72px;width:calc(100% - 24px)}.brand img{height:37px}.hero{padding:104px 0 58px}.hero-actions,.cta-actions{flex-direction:column}.btn{width:100%;padding:14px 20px}.hero-photo{padding:18px}.hero-photo img{width:100%}.hero-photo figcaption{position:static;margin-top:14px}.card-grid,.stat-grid,.location-grid,.contact-data.wide,.form-grid{grid-template-columns:1fr}.section{padding:62px 0}.section.compact{padding:52px 0}.section-head{width:calc(100% - 28px);margin-bottom:32px}.service-card{min-height:auto;padding:24px}.line-list{padding:20px}.line-list div{grid-template-columns:54px 1fr}.footer-grid{grid-template-columns:1fr;gap:32px}.footer-bottom{display:grid}.page-hero{padding:110px 0 58px}.page-hero .lede,.lede{font-size:16px}.stat-number{font-size:32px}.gallery-card img{height:320px}.form-card{padding:26px}.form-grid input,.form-grid select,.form-grid textarea{font-size:16px}}
@media (prefers-reduced-motion:reduce){*{animation-duration:.001ms;animation-iteration-count:1;scroll-behavior:auto;transition-duration:.001ms}.reveal{transform:none}.magnetic{transform:none}}

.hero-support,.page-support{margin-top:18px;max-width:650px;color:var(--ink-soft)}
.bg-navy .service-index a{color:var(--paper)}
.reviewed-tag{margin-top:20px;padding-top:14px;border-top:1px solid var(--line);font-family:'IBM Plex Mono',monospace;font-size:12px!important;text-transform:uppercase;letter-spacing:.08em;color:var(--laurel-700)!important}
.bg-navy .reviewed-tag{color:var(--laurel-200)!important;border-top-color:color-mix(in srgb,var(--line) 22%,transparent)}
.faq-section.bg-paper{background:var(--paper)}
.faq-list{display:grid;gap:14px;max-width:980px}
.faq-item{background:var(--paper);border-left:3px solid var(--laurel-500);border-radius:4px 24px 4px 24px;padding:0 22px;transition:background-color 220ms ease,border-color 220ms ease}
.bg-deep .faq-item,.bg-green .faq-item{background:var(--paper)}
.faq-item[open]{background:color-mix(in srgb,var(--laurel-200) 22%,var(--paper));border-left-color:var(--claret-600)}
.faq-item summary{cursor:pointer;font-weight:700;color:var(--navy-950);padding:20px 0;list-style:none}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:'+';float:right;font-family:'IBM Plex Mono',monospace;color:var(--laurel-700)}
.faq-item[open] summary::after{content:'–'}
.faq-item p{padding:0 0 22px;max-width:820px}
.icon-ring.large{width:74px;height:74px;margin-bottom:22px}.icon-ring.large svg{width:38px;height:38px}
.map-copy p:not(.eyebrow){margin-top:10px}.map-and-actions .map-copy{background:var(--paper);border-left:3px solid var(--laurel-500);border-radius:4px 24px 4px 24px;padding:24px}
.stage-marker p:not(.eyebrow){margin-top:12px;max-width:760px}.stage-section .detail-cards{align-items:stretch}
.service-photo{margin:-32px -28px 20px -24px;aspect-ratio:3/2;overflow:hidden;border-radius:4px 24px 0 0}
.service-photo img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;transition:transform 420ms ease-out}
.service-card:hover .service-photo img{transform:scale(1.05)}
.service-card .service-top{margin-bottom:0;position:absolute;top:14px;right:14px;z-index:2}
.service-card{position:relative}
.service-card .service-top .icon-ring{background:var(--paper);box-shadow:0 2px 10px rgba(20,20,20,.14)}
.service-card h3{margin-top:16px}
@media (max-width:639px){.service-photo{margin:-24px -24px 18px -24px;aspect-ratio:3/2;border-radius:4px 16px 0 0}}
.service-card .service-detail + .service-detail{margin-top:14px}
.service-card .service-detail strong{display:block;margin-bottom:4px}
@media (max-width:639px){.card-grid>*,.stat-grid>*,.contact-grid>*,.form-grid>*,.footer-grid>*,.detail-cards>*,.deep-grid>*,.gallery-grid>*,.location-grid>*{min-width:0}}


/* --- July update: hero banners, social icons, floating WhatsApp --- */
.header-socials{display:flex;align-items:center;gap:10px}
.header-socials a,.social-row a{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;border:1px solid var(--line);background:var(--paper);transition:transform 180ms ease,box-shadow 180ms ease,border-color 180ms ease}
.header-socials a:hover,.social-row a:hover{transform:translateY(-2px);box-shadow:0 10px 22px color-mix(in srgb,var(--navy-950) 10%,transparent)}
.header-socials svg,.social-row svg,.floating-whatsapp svg{width:20px;height:20px;fill:currentColor;stroke:none}
.header-socials .instagram,.social-row .instagram{color:#E4405F}
.header-socials .facebook,.social-row .facebook{color:#1877F2}
.header-socials .whatsapp,.social-row .whatsapp,.floating-whatsapp{color:#25D366}
.floating-whatsapp{position:fixed;right:22px;bottom:88px;width:58px;height:58px;border-radius:50%;background:#fff;display:grid;place-items:center;box-shadow:0 18px 34px rgba(0,0,0,.18);border:1px solid color-mix(in srgb,#25D366 18%,#fff);z-index:74}
.floating-whatsapp:hover{transform:translateY(-3px)}
.hero-banner,.page-banner{position:relative;overflow:hidden}
.hero-banner{min-height:100vh;display:flex;align-items:flex-end;padding:120px 0 76px;background:linear-gradient(90deg,rgba(245,247,243,.93) 0%,rgba(245,247,243,.88) 34%,rgba(245,247,243,.35) 60%,rgba(245,247,243,.02) 80%),center/cover no-repeat}
.hero-banner .container,.page-banner .container{position:relative;z-index:2}
.hero-banner .banner-content{max-width:700px;padding:38px 0}
.page-banner{padding:170px 0 92px;background:linear-gradient(90deg,rgba(245,247,243,.95) 0%,rgba(245,247,243,.9) 40%,rgba(245,247,243,.3) 72%,rgba(245,247,243,.06) 100%),center/cover no-repeat}
.page-banner .banner-copy{max-width:760px}
.banner-card{margin-top:28px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;max-width:760px}
.banner-card .mini{background:rgba(255,255,255,.74);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.7);border-radius:10px;padding:14px 16px}
.banner-card .mini strong{display:block;color:var(--navy-950);font-family:'IBM Plex Mono',monospace;font-size:14px}
.banner-card .mini span{display:block;color:var(--ink-soft);font-size:13px;margin-top:4px}
.hero-banner.home{background-image:linear-gradient(90deg,rgba(245,247,243,.95) 0%,rgba(245,247,243,.88) 36%,rgba(245,247,243,.35) 60%,rgba(245,247,243,.05) 84%),url('../img/banner-home.png')}
.page-banner.services{background-image:linear-gradient(90deg,rgba(245,247,243,.94) 0%,rgba(245,247,243,.88) 42%,rgba(245,247,243,.3) 70%,rgba(245,247,243,.05) 100%),url('../img/banner-pregnancy.png')}
.page-banner.pregnancy{background-image:linear-gradient(90deg,rgba(245,247,243,.92) 0%,rgba(245,247,243,.86) 38%,rgba(245,247,243,.2) 56%,rgba(245,247,243,.03) 86%),url('../img/banner-couple.png')}
.page-banner.about{background-image:linear-gradient(90deg,rgba(245,247,243,.95) 0%,rgba(245,247,243,.88) 44%,rgba(245,247,243,.4) 72%,rgba(245,247,243,.08) 100%),url('../img/banner-home.png')}
.page-banner.contact{background-image:linear-gradient(90deg,rgba(245,247,243,.95) 0%,rgba(245,247,243,.9) 44%,rgba(245,247,243,.42) 72%,rgba(245,247,243,.06) 100%),url('../img/banner-couple.png')}
.about-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;align-items:start}
.bio-card{background:var(--paper);border-left:3px solid var(--laurel-500);border-radius:4px 24px 4px 24px;padding:34px}
.key-points{display:grid;gap:14px;margin-top:26px}.key-points div{padding:14px 0;border-top:1px solid var(--line)}.key-points strong{display:block;color:var(--navy-950)}
.info-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.info-card{background:var(--paper);border-left:3px solid var(--laurel-500);border-radius:4px 24px 4px 24px;padding:28px}
.page-banner .hero-actions{margin-top:28px}
@media (max-width:1180px){.header-socials{display:none}}
@media (max-width:1023px){.floating-whatsapp{bottom:76px}.banner-card{grid-template-columns:1fr}.about-grid,.info-cards{grid-template-columns:1fr}}
@media (max-width:639px){.floating-whatsapp{right:16px;bottom:72px;width:54px;height:54px}.hero-banner{padding:106px 0 56px;min-height:auto}.page-banner{padding:116px 0 56px}.banner-card .mini{padding:12px 14px}}

/* --- Final refinement: automatic hero slider, real social logos, row animation, stronger home sections --- */
.header-socials svg,.social-row svg,.floating-whatsapp svg{fill:currentColor!important;stroke:none!important}
.mobile-bottom a:nth-child(2) svg{fill:currentColor!important;stroke:none!important}
.hero-banner.home{background:var(--paper)!important}
.hero-banner .hero-slider{position:absolute;inset:0;z-index:0;overflow:hidden}
.hero-banner .hero-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;animation:heroSlideFade 18s infinite}
.hero-banner .hero-slide:nth-child(1){background-image:url('../img/banner-home.png');animation-delay:0s}
.hero-banner .hero-slide:nth-child(2){background-image:url('../img/banner-couple.png');animation-delay:6s}
.hero-banner .hero-slide:nth-child(3){background-image:url('../img/banner-pregnancy.png');animation-delay:12s}
.hero-banner::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(245,247,243,.96) 0%,rgba(245,247,243,.88) 36%,rgba(245,247,243,.42) 62%,rgba(245,247,243,.08) 100%)}
@keyframes heroSlideFade{0%{opacity:0;transform:scale(1.02)}7%{opacity:1;transform:scale(1)}30%{opacity:1;transform:scale(1)}38%{opacity:0;transform:scale(1.015)}100%{opacity:0;transform:scale(1.02)}}
.animated-rows .row-animate{opacity:0;transform:translateY(18px);transition:opacity 520ms var(--ease),transform 520ms var(--ease)}
.animated-rows.visible .row-animate{opacity:1;transform:translateY(0)}
.animated-rows.visible .row-animate:nth-child(1){transition-delay:80ms}
.animated-rows.visible .row-animate:nth-child(2){transition-delay:180ms}
.animated-rows.visible .row-animate:nth-child(3){transition-delay:280ms}
.line-list.text-list div{display:block;grid-template-columns:1fr;padding:24px 0}
.line-list.text-list p{margin:0;color:var(--ink-soft)}
.line-list.text-list strong{display:block;color:var(--navy-950);font-family:Piazzolla,Georgia,serif;font-size:22px;margin-bottom:6px}
.doctor-home-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:56px;align-items:center}
.doctor-home-photo{margin:0;border-radius:4px 32px 4px 32px;overflow:hidden;border-left:3px solid var(--laurel-500);background:var(--paper)}
.doctor-home-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:top center}
.doctor-home-copy .lede{margin-top:18px}
.seo-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:34px}
.seo-box{background:var(--paper);border-left:3px solid var(--laurel-500);border-radius:4px 24px 4px 24px;padding:28px}
.seo-box h3{margin-bottom:12px}
@media (max-width:1023px){.doctor-home-grid,.seo-columns{grid-template-columns:1fr}.hero-banner::before{background:linear-gradient(90deg,rgba(245,247,243,.96),rgba(245,247,243,.78))}}
@media (prefers-reduced-motion:reduce){.hero-banner .hero-slide{animation:none}.hero-banner .hero-slide:first-child{opacity:1}.animated-rows .row-animate{opacity:1;transform:none}}


/* --- final polish update: header cleanup, clearer banners, footer logo/icons --- */
.header-shell{grid-template-columns:auto 1fr auto auto;gap:22px}
.site-header .header-shell > .btn.primary.magnetic{display:none!important}
.header-socials,.social-row{display:flex;align-items:center;gap:16px}
.header-socials a,.social-row a{width:auto!important;height:auto!important;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;padding:0!important}
.header-socials a:hover,.social-row a:hover{transform:translateY(-2px)!important;box-shadow:none!important}
.header-socials svg,.social-row svg{width:26px!important;height:26px!important}
.footer-logo-shell{display:inline-block!important;background:transparent!important;border:0!important;padding:0!important;border-radius:0!important}
.footer-logo{height:66px;width:auto}
.hero-banner .hero-slider,.hero-banner .hero-slide{z-index:0}
.hero-banner .hero-slide{background-position:right center!important;background-size:cover!important}
.hero-banner::before{background:linear-gradient(90deg,rgba(245,247,243,.97) 0%,rgba(245,247,243,.92) 36%,rgba(245,247,243,.68) 50%,rgba(245,247,243,.18) 72%,rgba(245,247,243,0) 100%)!important}
.hero-banner .banner-content{max-width:760px;position:relative;z-index:3}
.page-banner{background-position:right center!important;background-size:cover!important;position:relative}
.page-banner::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(245,247,243,.97) 0%,rgba(245,247,243,.92) 40%,rgba(245,247,243,.66) 54%,rgba(245,247,243,.18) 74%,rgba(245,247,243,0) 100%)}
.page-banner .container{position:relative;z-index:2}
.page-banner.contact{background-image:url('../img/banner-couple.png')!important}
.page-banner.contact::before{background:linear-gradient(90deg,rgba(245,247,243,.97) 0%,rgba(245,247,243,.92) 40%,rgba(245,247,243,.62) 54%,rgba(245,247,243,.12) 73%,rgba(245,247,243,0) 100%)!important}
.page-banner.about{background-image:url('../img/banner-home.png')!important}
.page-banner.pregnancy{background-image:url('../img/banner-pregnancy.png')!important}
.page-banner.services{background-image:url('../img/banner-pregnancy.png')!important}
@media (max-width:1180px){.header-shell{grid-template-columns:auto 1fr auto;gap:18px}.desktop-nav{gap:18px}.header-phone{font-size:14px}}
@media (max-width:1023px){.page-banner::before,.hero-banner::before{background:linear-gradient(180deg,rgba(245,247,243,.95) 0%,rgba(245,247,243,.9) 38%,rgba(245,247,243,.52) 60%,rgba(245,247,243,.22) 100%)!important}.header-socials{display:none!important}}


/* --- final v3: clean header, visible right-side hero/contact banners, footer credit --- */
.site-header .header-shell > .btn.primary.magnetic{display:none!important}
.header-shell{grid-template-columns:auto 1fr auto auto!important;gap:22px!important}
.header-socials,.social-row{display:flex!important;align-items:center!important;gap:16px!important}
.header-socials a,.social-row a{width:auto!important;height:auto!important;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;padding:9px!important;margin:-9px!important}
.header-socials a:hover,.social-row a:hover{transform:translateY(-2px)!important;box-shadow:none!important}
.header-socials svg,.social-row svg{width:26px!important;height:26px!important;fill:currentColor!important;stroke:none!important}
.footer-logo-shell{display:inline-block!important;background:transparent!important;border:0!important;padding:0!important;border-radius:0!important}
.footer-logo{height:72px!important;width:auto!important;filter:none!important}
.footer-bottom a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.footer-bottom a:hover{color:var(--laurel-200)}

.hero-banner{position:relative!important;min-height:calc(100vh - 0px)!important;display:flex!important;align-items:center!important;overflow:hidden!important;background:var(--paper)!important;padding:120px 0 76px!important}
.hero-banner .container{position:relative!important;z-index:3!important}
.hero-banner .banner-content{max-width:780px!important;position:relative!important;z-index:3!important;padding:28px 0!important}
.hero-banner .hero-slider{position:absolute!important;inset:0!important;z-index:0!important;overflow:hidden!important;background:var(--paper)!important}
.hero-banner .hero-slide{position:absolute!important;inset:0!important;opacity:0;animation:heroSlideFade 18s infinite;background-repeat:no-repeat!important;background-size:auto 100%!important;background-position:right center!important}
.hero-banner .hero-slide:nth-child(1){background-image:url('../img/banner-home-right.jpg')!important;animation-delay:0s}
.hero-banner .hero-slide:nth-child(2){background-image:url('../img/banner-couple-right.jpg')!important;animation-delay:6s}
.hero-banner .hero-slide:nth-child(3){background-image:url('../img/banner-pregnancy-right.jpg')!important;animation-delay:12s}
.hero-banner::before{content:""!important;position:absolute!important;inset:0!important;z-index:1!important;background:linear-gradient(90deg,rgba(245,247,243,1) 0%,rgba(245,247,243,.98) 36%,rgba(245,247,243,.82) 51%,rgba(245,247,243,.22) 68%,rgba(245,247,243,0) 82%)!important}
@keyframes heroSlideFade{0%,28%{opacity:1}33%,95%{opacity:0}100%{opacity:1}}

.page-banner{position:relative!important;overflow:hidden!important;background-color:var(--paper)!important;background-repeat:no-repeat!important;background-size:auto 100%!important;background-position:right center!important;padding:170px 0 92px!important}
.page-banner::before{content:""!important;position:absolute!important;inset:0!important;z-index:1!important;background:linear-gradient(90deg,rgba(245,247,243,1) 0%,rgba(245,247,243,.98) 40%,rgba(245,247,243,.82) 55%,rgba(245,247,243,.22) 70%,rgba(245,247,243,0) 84%)!important}
.page-banner .container{position:relative!important;z-index:2!important}
.page-banner .banner-copy{max-width:820px!important}
.page-banner.contact{background-image:url('../img/banner-couple-right.jpg')!important}
.page-banner.about{background-image:url('../img/banner-home-right.jpg')!important}
.page-banner.services{background-image:url('../img/banner-pregnancy-right.jpg')!important}
.page-banner.pregnancy{background-image:url('../img/banner-pregnancy-right.jpg')!important}
@media (max-width:1180px){.header-shell{grid-template-columns:auto 1fr auto!important}.header-socials{display:none!important}}
@media (max-width:1023px){
  .hero-banner .hero-slide,.page-banner{background-size:cover!important;background-position:center!important}
  .hero-banner::before,.page-banner::before{background:linear-gradient(180deg,rgba(245,247,243,.98) 0%,rgba(245,247,243,.92) 45%,rgba(245,247,243,.62) 100%)!important}
}
@media (prefers-reduced-motion:reduce){.hero-banner .hero-slide{animation:none!important}.hero-banner .hero-slide:first-child{opacity:1!important}}

/* ============================================================
   PREMIUM UPGRADE LAYER — motion, depth, ambient detail, wheel
   ============================================================ */
[id]{scroll-margin-top:112px}

/* --- Reveal: overshoot + scale instead of flat fade-up --- */
.reveal{transition:opacity 620ms cubic-bezier(.16,1,.3,1),transform 620ms cubic-bezier(.16,1,.3,1)}
.service-card.reveal,.deep-card.reveal,.seo-box.reveal,.faq-item.reveal,.bio-card.reveal,.info-card.reveal,.gallery-card.reveal{
  transform:translateY(26px) scale(.965);
  transition:opacity 640ms cubic-bezier(.16,1,.3,1),transform 640ms cubic-bezier(.34,1.56,.64,1)
}
.service-card.reveal.visible,.deep-card.reveal.visible,.seo-box.reveal.visible,.faq-item.reveal.visible,.bio-card.reveal.visible,.info-card.reveal.visible,.gallery-card.reveal.visible{
  transform:translateY(0) scale(1)
}
.section-head.reveal h2{position:relative}
.section-head.reveal h2::after{content:"";position:absolute;left:0;bottom:-10px;height:2px;width:56px;background:var(--laurel-500);transform:scaleX(0);transform-origin:left;transition:transform 560ms 220ms cubic-bezier(.16,1,.3,1)}
.section-head.reveal.visible h2::after{transform:scaleX(1)}
.bg-navy .section-head.reveal h2::after,.cta-band .section-head.reveal h2::after{background:var(--laurel-200)}

/* --- Cards: tilt, layered shadow, sheen sweep, icon glow --- */
.service-card,.deep-card,.seo-box,.bio-card,.info-card{
  position:relative;overflow:hidden;will-change:transform;
  transition:transform 260ms cubic-bezier(.16,1,.3,1),box-shadow 320ms ease,background-color 220ms ease,border-color 220ms ease;
  transform:perspective(900px) rotateX(var(--ry,0deg)) rotateY(var(--rx,0deg)) translateY(var(--ty,0px));
}
.service-card::before,.deep-card::before,.seo-box::before,.bio-card::before,.info-card::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(115deg,transparent 40%,color-mix(in srgb,var(--laurel-200) 55%,transparent) 50%,transparent 60%);
  transform:translateX(-120%);transition:transform 700ms ease;opacity:.55
}
.service-card:hover,.deep-card:hover,.seo-box:hover,.bio-card:hover,.info-card:hover{
  --ty:-6px;
  box-shadow:0 6px 14px rgba(5,41,70,.06),0 26px 46px rgba(5,41,70,.14)
}
.service-card:hover::before,.deep-card:hover::before,.seo-box:hover::before,.bio-card:hover::before,.info-card:hover::before{transform:translateX(120%)}
.service-card .icon-ring{transition:transform 320ms cubic-bezier(.34,1.56,.64,1),box-shadow 320ms ease,color 320ms ease}
.service-card:hover .icon-ring{transform:rotate(-6deg) scale(1.08);box-shadow:0 0 0 8px color-mix(in srgb,var(--laurel-200) 45%,transparent);color:var(--claret-600)}

@media (hover:hover) and (pointer:fine){
  .service-card,.deep-card,.seo-box,.bio-card,.info-card{transform-style:preserve-3d}
}

/* --- Buttons: tactile press + smoother magnetic spring --- */
.btn{transition:transform 220ms cubic-bezier(.34,1.56,.64,1),background-color 180ms ease,color 180ms ease,border-color 180ms ease,box-shadow 220ms ease}
.btn:active{transform:scale(.96)}
.btn.magnetic{transition:transform 340ms cubic-bezier(.34,1.56,.64,1),background-color 180ms ease,border-color 180ms ease}
.btn.primary:hover{box-shadow:0 14px 28px color-mix(in srgb,var(--claret-600) 32%,transparent)}
.ghost-link span{transition:transform 260ms cubic-bezier(.34,1.56,.64,1)}
.ghost-link:hover span{transform:translateX(6px)}

/* --- Stat rule: draws in instead of appearing flat --- */
.stat-grid .stat-rule{transform:scaleX(0);transform-origin:left;transition:transform 620ms 200ms cubic-bezier(.16,1,.3,1)}
.stat-grid.reveal.visible .stat-rule{transform:scaleX(1)}
.stat-grid.reveal.visible .stat-block:nth-child(2) .stat-rule{transition-delay:280ms}
.stat-grid.reveal.visible .stat-block:nth-child(3) .stat-rule{transition-delay:360ms}
.stat-grid.reveal.visible .stat-block:nth-child(4) .stat-rule{transition-delay:440ms}

/* --- FAQ: rotate marker, smooth height (JS-controlled max-height) --- */
.faq-item summary::after{transition:transform 320ms cubic-bezier(.34,1.56,.64,1)}
.faq-item[open] summary::after{content:"+";transform:rotate(45deg)}
.faq-item p{overflow:hidden;transition:max-height 340ms cubic-bezier(.16,1,.3,1)}

/* --- Ambient hero/page-banner motif — pure CSS, no markup change --- */
.hero-banner::after,.page-banner::after{
  content:"";position:absolute;z-index:1;pointer-events:none;
  width:640px;height:640px;right:-180px;top:50%;
  transform:translateY(-50%) rotate(0deg);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cg fill='none' stroke='%231F5A26' stroke-width='0.6' opacity='0.35'%3E%3Ccircle cx='100' cy='100' r='92'/%3E%3Ccircle cx='100' cy='100' r='70'/%3E%3Cpath d='M100 8 C130 40 130 160 100 192'/%3E%3Cpath d='M100 8 C70 40 70 160 100 192'/%3E%3Cpath d='M8 100 C40 70 160 70 192 100'/%3E%3Cpath d='M8 100 C40 130 160 130 192 100'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat:no-repeat;background-size:contain;
  animation:ambientSpin 90s linear infinite;
  opacity:.6
}
@keyframes ambientSpin{to{transform:translateY(-50%) rotate(360deg)}}
@media (max-width:1023px){.hero-banner::after,.page-banner::after{width:420px;height:420px;right:-140px;opacity:.4}}
@media (max-width:639px){.hero-banner::after,.page-banner::after{display:none}}

/* --- Section rhythm: faint alternating texture, no extra markup --- */
.bg-deep::before,.bg-green::before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:0;opacity:.5;
  background-image:radial-gradient(color-mix(in srgb,var(--navy-950) 6%,transparent) 1px,transparent 1px);
  background-size:22px 22px
}
.bg-deep,.bg-green{position:relative}
.bg-deep>*,.bg-green>*{position:relative;z-index:1}

/* --- Pathway wheel (pregnancy-fertility.html signature element) --- */
.pathway-section{position:relative;overflow:hidden}
.pathway-wheel{position:relative;width:min(460px,90vw);height:min(460px,90vw);margin:0 auto;display:grid;place-items:center}
.wheel-ring{position:absolute;inset:0;border:1px dashed color-mix(in srgb,var(--paper) 32%,transparent);border-radius:50%;animation:ambientSpin 70s linear infinite}
.wheel-petal{position:absolute;top:50%;left:50%;width:158px;margin:-48px 0 0 -79px;
  transform:rotate(var(--angle)) translate(178px) rotate(calc(var(--angle) * -1));
  background:var(--paper);color:var(--navy-950);text-align:left;cursor:pointer;
  border:0;border-left:3px solid var(--laurel-500);border-radius:4px 20px 4px 20px;padding:15px 16px;
  font-family:inherit;box-shadow:0 14px 28px rgba(0,0,0,.22);
  transition:transform 300ms cubic-bezier(.34,1.56,.64,1),box-shadow 260ms ease,background-color 260ms ease,color 260ms ease,border-color 260ms ease
}
.wheel-petal:hover,.wheel-petal:focus-visible{border-left-color:var(--claret-600);box-shadow:0 20px 36px rgba(0,0,0,.3)}
.wheel-petal[aria-pressed="true"]{background:var(--claret-600);color:var(--paper);border-left-color:var(--paper)}
.wheel-petal .petal-index{display:block;font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.08em;opacity:.7;margin-bottom:4px}
.wheel-petal span:last-child{font-weight:600;font-size:14px;line-height:1.25;display:block}
.wheel-hub{position:relative;z-index:2;width:min(250px,60vw);text-align:center;background:var(--navy-800);
  border-radius:4px 40px 4px 40px;padding:30px 26px;border:1px solid color-mix(in srgb,var(--paper) 20%,transparent)}
.wheel-hub .eyebrow{color:var(--laurel-200);min-height:32px}
.wheel-hub-text{color:color-mix(in srgb,var(--paper) 88%,transparent);font-size:14px;line-height:1.55;min-height:66px}
.wheel-hub .ghost-link{color:var(--laurel-200);margin-top:14px}
@media (max-width:767px){
  .pathway-wheel{width:100%;height:auto;display:grid;gap:12px}
  .wheel-ring{display:none}
  .wheel-petal{position:static;transform:none;margin:0;width:100%}
  .wheel-hub{width:100%;order:99;margin-top:6px}
}
@media (prefers-reduced-motion:reduce){
  .hero-banner::after,.page-banner::after,.wheel-ring{animation:none}
  .service-card,.deep-card,.seo-box,.bio-card,.info-card{transform:none!important}
}

/* --- Mobile header fix (final, highest priority): right-align hamburger, restore social icons, guaranteed-visible hero banner --- */
@media (max-width:1023px){
  .header-shell{display:flex!important;align-items:center;justify-content:flex-start;gap:12px}
  .header-socials{display:flex!important;gap:12px;margin-left:auto}
  .header-socials svg{width:21px!important;height:21px!important}
  .menu-toggle{margin-left:0;flex:0 0 auto}
  .hero-banner .hero-slide{animation:none!important;opacity:0!important}
  .hero-banner .hero-slide:first-child{opacity:1!important}
}
@media (max-width:420px){
  .header-socials{gap:9px}
  .header-socials svg{width:19px!important;height:19px!important}
}


/* --- v10 definitive mobile hero fix: real banner image as hero section background --- */
@media (max-width: 900px){
  .hero-banner.home{
    min-height: 100vh !important;
    min-height: 100svh !important;
    padding: 108px 0 96px !important;
    align-items: center !important;
    background-color: var(--paper) !important;
    background-image: linear-gradient(180deg, rgba(245,247,243,.68) 0%, rgba(245,247,243,.62) 46%, rgba(245,247,243,.84) 100%), url('../img/banner-home-mobile-v10.jpg') !important;
    background-repeat: no-repeat !important;
    background-size: auto 100% !important;
    background-position: right center !important;
  }
  .hero-banner.home .hero-slider,
  .hero-banner.home .hero-slide{
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    animation: none !important;
  }
  .hero-banner.home::before{
    content: none !important;
    display: none !important;
    background: none !important;
  }
  .hero-banner.home .container,
  .hero-banner.home .banner-content{
    position: relative !important;
    z-index: 3 !important;
  }
  .hero-banner.home .banner-content{
    max-width: 100% !important;
  }
}
@media (max-width: 480px){
  .hero-banner.home{
    background-size: auto 100% !important;
    background-position: right center !important;
  }
}
