:root{--ink:#091426;--navy:#091426;--logo:#1d305e;--muted:#647084;--line:#e5e9ee;--white:#fff;--mist:#edf2f5;--sage:#a7bdb4;--radius:20px;--gutter:clamp(24px,5.55vw,88px);--font:'Manrope',Arial,sans-serif;--ease:cubic-bezier(.2,.65,.3,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:120px}body{margin:0;background:#fff;color:var(--ink);font-family:var(--font);font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{color:inherit}button:disabled{cursor:wait}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #426fa2;outline-offset:5px}button{border:0;background:none}img{display:block;max-width:100%;object-fit:cover}p,h1,h2,h3,figure{margin:0}h1,h2,h3{font-weight:400;line-height:1.14;letter-spacing:-.045em}h2{font-size:clamp(32px,3.25vw,48px)}h3{letter-spacing:-.025em}p{color:var(--muted)}[hidden]{display:none!important}.page-frame{width:calc(100% - var(--gutter) * 2);max-width:calc(1600px - var(--gutter) * 2);margin-inline:auto}.section-wrap{margin-inline:auto;padding-inline:var(--gutter);max-width:1600px}.section-space{padding-block:70px}.eyebrow{font-size:10px;line-height:1.7;letter-spacing:.2em;font-weight:600;color:var(--muted);margin-bottom:28px}.muted-title{color:#7e8c9e}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;min-height:48px;padding:13px 25px;border-radius:100px;font-size:13px;font-weight:500;white-space:nowrap;transition:background .25s,transform .25s var(--ease),box-shadow .25s}.button:hover{transform:translateY(-2px)}.button:active{transform:translateY(0)}.button span{font-size:21px;font-weight:300;line-height:1}.button-navy{color:white;background:var(--navy)}.button-navy:hover{background:#162740;box-shadow:0 5px 18px #09142617}.button-white{background:white;color:var(--ink)}.button-outline{border:1px solid #c2c9d2;background:white}.button-outline:hover{background:#f2f5f7}.text-link{font-size:13px;display:inline-flex;justify-content:space-between;gap:30px;align-items:center;border-bottom:1px solid #bbc4ce;padding:10px 0;color:var(--ink)}.text-link span{font-size:19px;transition:transform .25s}.text-link:hover span{transform:translate(3px,-3px)}.glass{background:#ffffff1f;border:1px solid #ffffff4d;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.status-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#7d9d8f;margin-right:7px;vertical-align:middle}.skip-link{position:fixed;top:-90px;left:20px;background:white;padding:15px;z-index:1000}.skip-link:focus{top:10px}
.header{max-width:1600px;min-height:132px;padding:24px var(--gutter);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:32px;position:relative;z-index:20;background:#fff}.brand{display:flex;align-items:center;gap:17px;flex-shrink:0}.brand img{width:76px;height:76px;object-fit:contain}.brand-name{font-size:22px;line-height:1.35;letter-spacing:-.04em;font-weight:550;color:var(--logo)}.brand-name>span{display:block;font-size:12px;font-weight:400;letter-spacing:-.01em;color:#68738a;margin-top:2px}.desktop-nav{display:flex;gap:29px;align-items:center;margin-left:auto}.desktop-nav a{font-size:12px;position:relative;padding:7px 0}.desktop-nav a:after{content:'';position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--ink);transition:width .25s}.desktop-nav a:hover:after{width:100%}.header-actions{display:flex;align-items:center;gap:25px;margin-left:18px}.emergency-link{font-size:11px;white-space:nowrap}.header-book{min-height:43px;padding:11px 19px;font-size:12px;gap:20px}.menu-toggle{display:none}.mobile-nav{position:absolute;top:100%;left:0;right:0;background:white;box-shadow:0 20px 28px #09142610;padding:20px 25px;flex-direction:column;gap:20px}
.hero{position:relative;min-height:570px;height:calc(100svh - 160px);max-height:720px;border-radius:var(--radius);overflow:hidden;background:#425667;color:white}.hero-image{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#0d1d2d63 0%,#14273918 52%,transparent 75%)}.hero-copy{position:relative;z-index:2;padding:clamp(96px,11vw,166px) 0 130px clamp(36px,5vw,80px);max-width:920px}.hero h1{font-size:clamp(38px,4.15vw,64px);line-height:1.14;font-weight:300;letter-spacing:-.05em}.hero h1 span{font-weight:400}.hero-copy>p{color:#ffffffd9;font-size:15px;line-height:1.65;margin:27px 0 30px}.hero-copy .button{min-width:168px}.hero-emergency{position:absolute;right:45px;bottom:115px;display:flex;align-items:center;gap:35px;padding:18px 20px;border-radius:14px;z-index:2;transition:background .25s}.hero-emergency:hover{background:#ffffff30}.hero-emergency strong{font-size:19px;font-weight:400;display:block;letter-spacing:-.03em}.hero-emergency small{font-size:11px;display:block;color:#ffffffe0;margin-top:3px}.circle-arrow{width:36px;height:36px;border:1px solid #ffffff6b;background:#ffffff10;border-radius:50%;display:grid;place-items:center;font-size:21px}.hero-foot{position:absolute;left:clamp(36px,5vw,80px);right:45px;bottom:34px;display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#ffffffe0;z-index:2}.hero-foot>span{display:flex;align-items:center;gap:15px}.hero-foot i{width:24px;height:1px;background:white;opacity:.7}.hero-foot a{display:flex;align-items:center;gap:23px}.hero-foot a span{font-size:22px}
.intro{padding-top:104px;padding-bottom:66px;display:grid;grid-template-columns:1fr 2.65fr;gap:30px}.intro .eyebrow{margin-top:10px}.intro h2{font-size:clamp(34px,3.1vw,47px)}.intro-bottom{display:flex;gap:60px;justify-content:space-between;margin-top:29px;align-items:end}.intro-bottom p{max-width:530px;font-size:14px;line-height:1.85}.intro-bottom strong{color:var(--ink);font-weight:500}.intro-bottom a{flex-shrink:0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:70px;margin-bottom:45px}.section-heading>.section-wrap{padding:0}.section-heading p:not(.eyebrow){font-size:13px;line-height:1.8;margin-bottom:4px}.service-panels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.service-panel{border-radius:18px;position:relative;overflow:hidden;aspect-ratio:.86;background:#e8edf2;isolation:isolate;text-align:left;padding:0;color:#fff}.service-panel>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease),filter .6s}.service-panel:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 40%,#0b142967 100%);z-index:0}.service-panel:hover>img,.service-panel:focus-visible>img,.service-panel.is-active>img{transform:scale(1.045);filter:blur(7px)}.panel-rest{position:absolute;bottom:0;left:0;right:0;z-index:1;padding:26px;display:flex;align-items:center;justify-content:space-between;gap:15px;background:linear-gradient(180deg,#ffffff0a,#ffffff15);backdrop-filter:blur(12px);border-top:1px solid #ffffff17;transition:opacity .3s}.panel-rest h3{font-size:clamp(20px,2vw,29px);font-weight:350;max-width:240px;line-height:1.18}.panel-rest .circle-arrow{flex-shrink:0}.panel-details{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;justify-content:end;padding:32px;background:#0914264d;opacity:0;transform:translateY(10px);transition:opacity .4s,transform .4s var(--ease);backdrop-filter:blur(3px);pointer-events:none}.panel-details h3{font-size:clamp(23px,2.1vw,32px);font-weight:350;margin-bottom:23px;line-height:1.2}.panel-details p{color:#ffffffe8;font-size:13px;line-height:1.8;max-width:280px}.panel-details .panel-upcoming{font-size:9px;letter-spacing:.17em;margin-top:18px}.panel-details .button{align-self:start;margin-top:25px;min-height:41px;padding:10px 20px;font-size:12px;gap:25px}.service-panel:hover .panel-rest,.service-panel:focus-visible .panel-rest,.service-panel.is-active .panel-rest{opacity:0}.service-panel:hover .panel-details,.service-panel:focus-visible .panel-details,.service-panel.is-active .panel-details{opacity:1;transform:translateY(0)}.service-links{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:30px}.service-links button{width:100%;text-align:left}.service-links .text-link{padding-block:12px;font-size:12px}
.diagnostic{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(45px,7vw,110px);align-items:center}.diagnostic-image{height:540px;border-radius:var(--radius);overflow:hidden;position:relative}.diagnostic-image>img{height:100%;width:100%;object-fit:cover}.photo-caption{position:absolute;bottom:25px;left:25px;padding:10px 16px;color:#fff;border-radius:100px;font-size:10px}.diagnostic-copy>p:not(.eyebrow){font-size:13px;line-height:1.8;max-width:410px;margin-top:23px}.diagnostic-list{margin:26px 0 14px}.diagnostic-list>div{padding:16px 0;border-bottom:1px solid var(--line)}.diagnostic-list h3{font-size:16px;font-weight:500;letter-spacing:-.025em;line-height:1.6}.diagnostic-list>div>span{display:block;color:var(--muted);font-size:11px;line-height:1.8;margin-top:4px}.tag{display:inline-block;padding:4px 9px;border-radius:100px;background:#e7eeeb;color:#466658;font-size:8px;font-weight:500;letter-spacing:.02em;white-space:nowrap;vertical-align:middle;margin-left:7px}.tag-outline{margin-left:0;background:transparent;border:1px solid #c6d0dc;color:var(--muted)}
.history{display:grid;grid-template-columns:.88fr 1.1fr;gap:clamp(60px,8vw,125px);align-items:center}.founder-photo{height:580px;border-radius:var(--radius);overflow:hidden;position:relative}.founder-photo>img{width:100%;height:100%;object-fit:cover;object-position:50% 24%}.founder-photo figcaption{position:absolute;bottom:22px;left:22px;right:22px;border-radius:12px;padding:15px 18px;color:white;background:#09142638;display:flex;flex-direction:column;gap:2px}.founder-photo figcaption strong{font-size:13px;font-weight:500}.founder-photo figcaption span{font-size:10px;opacity:.85}.history-copy p:not(.eyebrow){font-size:13px;line-height:1.9;margin-top:20px;max-width:510px}.history-timeline{display:flex;gap:22px;align-items:center;margin-top:38px}.history-timeline span{display:flex;flex-direction:column;gap:3px;font-size:10px;color:var(--muted);flex-shrink:0}.history-timeline strong{font-weight:500;font-size:14px;color:var(--ink)}.history-timeline i{height:1px;flex:1;background:var(--line)}
.stories{background:#fff}.story-rail{display:grid;grid-template-columns:1fr 1fr;gap:22px}.texture-surface{position:relative;background:#f4f6f8;isolation:isolate;overflow:hidden}.texture-surface:before{content:'';position:absolute;inset:-45%;z-index:-1;background:radial-gradient(ellipse at 30% 20%,#a8bfd349,transparent 48%),radial-gradient(ellipse at 70% 65%,#d3c5b852,transparent 43%),linear-gradient(135deg,#e7edf2,#fff 45%,#dce6ed);filter:blur(24px);animation:surface-drift 20s ease-in-out infinite alternate paused;transform:translate3d(0,0,0);will-change:auto}.texture-surface.is-texture-animating:before{animation-play-state:running;will-change:transform}.texture-surface:after{content:'';position:absolute;inset:0;pointer-events:none;z-index:-1;opacity:.1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.4' filter='url(%23n)'/%3E%3C/svg%3E")}.story-placeholder{height:310px;border:1px solid #edf0f4;border-radius:18px;padding:30px;display:flex;flex-direction:column;justify-content:space-between}.story-placeholder.alternate:before{animation-delay:-10s;background:radial-gradient(ellipse at 60% 30%,#b7c4ce55,transparent 50%),linear-gradient(120deg,#fff,#e5ebef)}.story-number{font-size:11px;letter-spacing:.1em;color:#6d7e91}.story-placeholder h3{font-size:23px;margin:13px 0 7px;font-weight:400}.story-placeholder p{font-size:11px}
.story-video-card{transition:transform .3s var(--ease)}
.story-video-card:hover,.story-video-card:focus-visible{transform:translateY(-2px)}
.story-video-card:focus-visible{outline:2px solid #426fa2;outline-offset:4px}
.story-video-preview{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s ease;pointer-events:none}
.story-video-card.is-playing .story-video-preview{opacity:.48;mix-blend-mode:multiply}
.story-video-card .story-number{position:relative;z-index:1}
.story-card-copy{position:relative;z-index:1;max-width:500px}
.story-category{display:block;margin-bottom:10px;color:#6d8091;font-size:8px;font-weight:600;letter-spacing:.15em}
.story-placeholder .story-card-copy p{max-width:460px;line-height:1.75}
.story-card-link{display:inline-flex;align-items:center;gap:18px;margin-top:17px;color:var(--ink);font-size:10px;font-weight:500;border-bottom:1px solid #b8c4cf;padding-bottom:5px}
.story-card-link span{font-size:15px;transition:transform .25s var(--ease)}
.story-video-card:hover .story-card-link span,.story-video-card:focus-visible .story-card-link span{transform:translate(3px,-3px)}
.team-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 22px}.team-card{padding:0;display:block;text-align:left;width:100%}.team-image{position:relative;border-radius:14px;height:285px;margin-bottom:18px;overflow:hidden;background:#f2f5f7}.team-image img{width:100%;height:100%;object-fit:cover;object-position:center 20%;transition:transform .5s var(--ease)}.team-image.placeholder{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f1f4f6,#e2e9ef 75%)}.team-initials{font-size:52px;font-weight:300;letter-spacing:-.04em;color:#91a1b36e}.team-placeholder-label{position:absolute;bottom:17px;font-size:8px;color:#7a8898;letter-spacing:.08em}.team-plus{position:absolute;right:14px;top:14px;background:#ffffffa6;backdrop-filter:blur(10px);width:30px;height:30px;display:grid;place-items:center;border-radius:50%;font-size:17px;transition:background .2s}.team-card:hover img{transform:scale(1.035)}.team-card:hover .team-plus{background:#fff}.team-card h3{font-size:13px;font-weight:500;letter-spacing:-.02em;line-height:1.5}.team-card p{font-size:10px;margin-top:3px;line-height:1.65}.team-actions{display:flex;align-items:center;gap:28px;margin-top:35px}.quiet-note{font-size:10px;color:#85909e}.team-grid.is-expanded .team-image{height:235px}
.location{padding-bottom:45px}.location-details p{font-size:13px!important}.location-details .text-link{margin-top:5px;font-size:11px}.maps-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.map-panel{position:relative;height:400px;border-radius:18px;overflow:hidden;background:#f1f4f6;border:1px solid #edf0f3}.map-topline{position:absolute;top:17px;left:17px;right:17px;z-index:3;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 13px;background:#ffffffdf;backdrop-filter:blur(16px);border-radius:9px;pointer-events:none}.map-topline h3{font-size:11px;font-weight:550;letter-spacing:0}.map-topline>span{font-size:9px;color:var(--muted)}.map-panel iframe{border:0;width:100%;height:100%;display:block}.map-route{position:absolute;left:18px;bottom:24px;background:#fffffff2;border-color:#e5e9ed;border-radius:100px;padding:10px 17px;font-size:11px;display:flex;gap:28px;z-index:2}.map3d{width:100%;height:100%}.map-fallback{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:70px 25px 30px;text-align:center}.map-fallback strong{font-size:19px;font-weight:500;margin-top:4px}.map-fallback p{font-size:11px;margin:9px 0 17px;line-height:1.8}.map-fallback .button{font-size:11px;min-height:41px}.map-location-symbol{height:42px;width:42px;border-radius:50%;background:var(--navy);color:white;display:grid;place-items:center;font-size:24px}.map-fallback #map-status{font-size:10px;max-width:290px;margin:10px 0 0}.map-reset{position:absolute;right:12px;bottom:42px;width:34px;height:34px;display:grid;place-items:center;background:white;border-radius:8px;font-size:23px;z-index:5;border-color:var(--line)}.map-coverage{position:absolute;bottom:25px;left:10px;z-index:2;font-size:8px;padding:3px 5px;background:#ffffffc9;color:#546174;pointer-events:none}.map-pin{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#ffffffea;box-shadow:0 4px 22px #0914261c;border-radius:10px;border:1px solid white}.map-pin img{width:36px;height:36px;object-fit:contain}.map-pin strong{display:block;font-size:11px;color:var(--ink)}.map-pin small{font-size:8px;color:#657488}.maplibregl-ctrl-attrib{font-size:8px!important}.maplibregl-ctrl-top-right{top:65px!important}.location-bottom{display:flex;justify-content:space-between;gap:20px;font-size:10px;margin-top:20px;color:var(--muted)}.location-bottom a{color:var(--ink)}.location-bottom a span{margin-left:20px}.map-tabs{display:none}
.closing{display:flex;justify-content:space-between;align-items:center;gap:55px;margin-top:60px;padding-top:65px;padding-bottom:65px;border-radius:22px;max-width:calc(1600px - 48px);margin-inline:24px;background:white;border:1px solid #eef1f5}.closing:before{opacity:.58}.closing h2{font-size:clamp(32px,3.4vw,50px)}.closing .eyebrow{font-size:9px;margin-bottom:23px}.closing-actions{display:flex;align-items:start;flex-direction:column;gap:19px;margin-right:50px}.closing-actions .text-link{font-size:11px}.footer{padding-top:70px;padding-bottom:22px}.footer-main{display:grid;grid-template-columns:130px 1fr 1.2fr 40px;gap:30px;align-items:center;padding-bottom:50px}.footer-brand img{width:90px;height:90px;object-fit:contain}.footer-main>p{font-size:15px;line-height:1.6;color:var(--ink)}.footer-main>div{display:flex;flex-direction:column;gap:8px}.footer-label{font-size:8px;letter-spacing:.16em;color:#83909e;margin-bottom:5px}.footer-main>div>a{font-size:11px}.back-top{border:1px solid var(--line);width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-size:18px}.footer-bottom{border-top:1px solid var(--line);padding-top:18px;display:flex;justify-content:space-between;gap:20px;font-size:9px;color:#7f8b9a}.footer-bottom button{font-size:9px;padding:0;color:#7f8b9a}.mobile-contact{display:none}
.dialog{border:1px solid #e6eaf0;border-radius:24px;background:white;color:var(--ink);padding:40px;width:min(550px,calc(100% - 30px));max-height:90svh;box-shadow:0 30px 130px #0d172b3b}.dialog::backdrop{background:#09142660;backdrop-filter:blur(8px)}.dialog-close{position:absolute;right:18px;top:15px;width:32px;height:32px;border-radius:50%;background:#f1f4f6;font-size:24px;font-weight:300;line-height:1}.dialog h2{font-size:31px;margin-bottom:16px}.dialog .eyebrow{font-size:8px;margin-bottom:18px}.dialog p{font-size:12px;line-height:1.8}.booking-heading{margin-bottom:24px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:17px}.field label{font-size:11px;color:var(--ink);font-weight:500}.field label span{font-weight:400;color:#7d8999;font-size:9px}.field input,.field select,.field textarea{width:100%;background:#fafbfc;color:var(--ink);border:1px solid #dfe5eb;border-radius:9px;padding:11px 12px;font-size:12px;min-height:43px}.field textarea{resize:vertical;min-height:68px}.field input::placeholder,.field textarea::placeholder{color:#98a2ae}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.booking-note{font-size:10px!important;color:#768393;margin-bottom:18px}.booking-submit{width:100%;font-size:12px}.booking-emergency{margin-top:15px;text-align:center;font-size:10px!important}.booking-emergency a{text-decoration:underline;text-underline-offset:3px;color:var(--ink)}#booking-summary h3{font-size:24px;margin-bottom:12px}#booking-summary pre{white-space:pre-wrap;font-family:var(--font);font-size:11px;background:#f3f6f8;border-radius:12px;padding:18px;color:#546174;line-height:1.8;margin-block:20px}#booking-summary .button{width:100%;font-size:12px}#booking-edit{display:block;margin:10px auto 20px;font-size:11px}.summary-mark{display:grid;place-items:center;width:45px;height:45px;border-radius:50%;background:#edf3ef;color:#537362;font-size:26px;margin-bottom:20px}.detail-dialog h2{max-width:410px;font-size:29px}.detail-dialog ul{list-style:none;padding:0;margin:24px 0}.detail-dialog li{padding:12px 0;border-bottom:1px solid var(--line);font-size:12px}.detail-dialog .button{margin-top:18px;font-size:12px}.detail-portrait{width:115px;height:138px;object-fit:cover;object-position:50% 15%;border-radius:10px;margin-bottom:25px}.detail-dialog .tag{margin:20px 0 0}.reveal{opacity:1;transform:none}html.motion-ready .reveal{opacity:0;transform:translateY(16px);transition:opacity .8s var(--ease),transform .8s var(--ease)}html.motion-ready .reveal.is-visible{opacity:1;transform:none}@keyframes surface-drift{0%{transform:translate3d(-4%,-2%,0) rotate(-4deg)}100%{transform:translate3d(5%,4%,0) rotate(5deg)}}
@media(min-width:1600px){.page-frame{margin-inline:auto}.closing{margin-inline:auto}}@media(max-width:1200px){.header{gap:20px;padding-inline:35px}.desktop-nav{gap:20px}.header-actions{gap:18px;margin-left:10px}.brand-name{font-size:20px}.brand img{width:69px;height:69px}.emergency-link{font-size:10px}.hero h1{font-size:52px}.hero-copy{padding-top:125px}.hero-emergency{right:30px;gap:20px}.intro-bottom{gap:30px}.team-image{height:240px}.founder-photo{height:520px}.diagnostic-image{height:510px}.closing-actions{margin-right:0}}@media(max-width:1000px){.desktop-nav{gap:18px}.desktop-nav a{font-size:11px}.brand-name{display:none}.header{min-height:118px}.hero{min-height:560px;max-height:650px}.hero h1{font-size:46px}.hero-copy{padding:115px 32px 150px}.hero-copy p{font-size:13px}.hero-emergency{bottom:100px;padding:13px 17px}.hero-emergency strong{font-size:16px}.hero-foot{left:32px;right:30px}.intro{grid-template-columns:1fr 3fr}.intro-bottom{display:block}.intro-bottom a{margin-top:18px}.section-heading{gap:35px}.service-panels{gap:12px}.panel-rest{padding:20px 17px}.panel-rest h3{font-size:21px}.panel-rest .circle-arrow{width:30px;height:30px;font-size:17px}.panel-details{padding:22px}.panel-details h3{font-size:24px}.panel-details p{font-size:11px}.service-links{gap:25px}.diagnostic,.history{gap:45px}.diagnostic-image,.founder-photo{height:475px}.history-copy p:not(.eyebrow){font-size:12px}.team-grid{gap:25px 15px}.team-image{height:210px}.map-panel{height:365px}.footer-main{grid-template-columns:100px 1fr 1.6fr 35px;gap:22px}.footer-main>div>a{font-size:10px}}
@media(max-width:760px){:root{--gutter:24px}html{scroll-padding-top:25px}.page-frame{margin-inline:auto}.header{min-height:108px;padding:17px 24px;gap:15px}.brand img{width:68px;height:68px}.brand-name{display:block;font-size:18px}.brand-name>span{font-size:10px}.desktop-nav,.header-book{display:none}.header-actions{gap:17px;margin-left:0}.emergency-link{font-size:9px}.menu-toggle{display:flex;width:28px;height:35px;padding:7px 2px;flex-direction:column;justify-content:center;gap:6px}.menu-toggle span{display:block;height:1px;width:22px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mobile-nav:not([hidden]){display:flex}.mobile-nav a{font-size:13px;padding-block:4px}.hero{height:690px;max-height:calc(100svh - 140px);min-height:570px;border-radius:17px}.hero-image{object-position:61% center}.hero-shade{background:linear-gradient(90deg,#0e1e2d82,transparent),linear-gradient(0deg,#0914265c,transparent 40%)}.hero-copy{padding:62px 25px 200px;max-width:100%}.hero h1{font-size:clamp(31px,7.1vw,50px);font-weight:350;line-height:1.2}.hero-copy>p{font-size:12px;margin:23px 0 25px}.hero-copy .button{font-size:12px;min-height:44px;min-width:155px}.hero-emergency{bottom:85px;left:25px;right:auto;padding:13px 16px;gap:35px}.hero-emergency strong{font-size:16px}.hero-emergency small{font-size:9px}.hero-foot{left:25px;right:25px;bottom:25px;font-size:8px}.hero-foot>span{gap:8px}.hero-foot i{width:15px}.hero-foot a{font-size:0;gap:0}.hero-foot a span{font-size:23px}.intro{padding-top:65px;padding-bottom:25px;grid-template-columns:1fr;gap:0}.intro .eyebrow{margin-top:0;margin-bottom:20px}.intro h2{font-size:34px}.intro-bottom{margin-top:22px}.intro-bottom p{font-size:12px;max-width:480px}.intro-bottom a{font-size:12px;margin-top:15px}.section-space{padding-block:45px}.section-heading{display:block;margin-bottom:30px}.section-heading .eyebrow{margin-bottom:20px}.section-heading>p,.section-heading>div.location-details{margin-top:21px;font-size:12px}.section-heading h2{font-size:34px}.section-heading p br{display:none}.service-panels{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding:0 10px 10px;margin-inline:14px;scrollbar-width:thin}.service-panel{flex:0 0 79%;aspect-ratio:.82;scroll-snap-align:center}.panel-rest{padding:24px 20px}.panel-rest h3{font-size:24px}.panel-details{padding:28px 25px}.panel-details h3{font-size:26px}.panel-details p{font-size:12px}.service-links{display:block;margin-top:19px}.service-links .text-link{padding-block:17px;font-size:12px}.diagnostic,.history{display:flex;flex-direction:column;gap:35px}.diagnostic-image{height:420px;width:100%}.diagnostic-copy h2,.history-copy h2{font-size:34px}.diagnostic-copy>p:not(.eyebrow){font-size:12px}.diagnostic-copy .eyebrow{font-size:8px;margin-bottom:22px}.diagnostic-list{margin-top:20px}.diagnostic-list h3{font-size:15px}.diagnostic-list>div>span{font-size:11px}.tag{font-size:7px;padding:4px 7px}.founder-photo{width:100%;height:490px}.history-copy .eyebrow{margin-bottom:20px}.history-copy p:not(.eyebrow){font-size:12px;line-height:1.9}.history-timeline{margin-top:28px}.story-rail{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:15px;padding-inline:24px}.story-placeholder{flex:0 0 83%;height:270px;padding:26px;scroll-snap-align:center}.story-placeholder h3{font-size:21px}.team-grid{grid-template-columns:1fr 1fr;gap:25px 15px}.team-image{height:235px;margin-bottom:13px}.team-card h3{font-size:12px}.team-card p{font-size:10px}.team-initials{font-size:44px}.team-placeholder-label{font-size:7px;bottom:14px}.team-actions{align-items:start;gap:16px;flex-direction:column;margin-top:28px}.team-actions .button{font-size:11px;min-height:44px}.team-grid.is-expanded .team-image{height:210px}.location-details p{font-size:12px!important}.location .section-heading{margin-bottom:25px}.map-tabs{display:flex;gap:6px;background:#f2f5f7;border-radius:100px;padding:4px;margin-bottom:17px;max-width:285px}.map-tabs button{font-size:11px;padding:9px 17px;border-radius:100px;flex:1}.map-tabs button.active{background:#fff;box-shadow:0 2px 7px #0914260a}.maps-grid{display:block}.map-panel{height:370px}.map3d-panel{display:none}.maps-grid.show-3d .google-panel{display:none}.maps-grid.show-3d .map3d-panel{display:block}.location-bottom{flex-direction:column;gap:12px;font-size:10px;margin-top:18px}.closing{margin:30px 14px 0;display:block;padding:45px 27px;border-radius:17px}.closing h2{font-size:34px}.closing .eyebrow{font-size:8px;max-width:230px;line-height:1.8;margin-bottom:20px}.closing-actions{margin-top:27px;gap:15px}.closing-actions .button{font-size:12px;min-height:44px}.footer{padding-top:45px;padding-bottom:90px}.footer-main{grid-template-columns:70px 1fr 32px;gap:20px;padding-bottom:30px}.footer-brand img{width:65px;height:65px}.footer-main>p{font-size:12px}.footer-main>div{grid-column:1/4;margin-top:10px}.footer-main>div>a{font-size:11px}.footer-main>.back-top{grid-column:3;grid-row:1}.footer-bottom{font-size:8px;flex-direction:column;gap:10px;padding-top:16px}.footer-bottom button{text-align:left;font-size:8px}.mobile-contact{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:30;justify-content:space-between;align-items:center;padding:12px 20px calc(12px + env(safe-area-inset-bottom));background:#ffffffed;backdrop-filter:blur(15px);border-top:1px solid var(--line);gap:20px}.mobile-contact a{font-size:10px}.mobile-contact button{background:var(--navy);color:white;padding:10px 17px;border-radius:100px;font-size:11px;display:flex;gap:22px;align-items:center}.mobile-contact button span{font-size:18px}.dialog{padding:35px 23px 25px;border-radius:19px;max-height:92svh}.dialog h2{font-size:28px}.dialog-close{right:12px;top:12px}.form-row{gap:10px}.field input,.field select,.field textarea{font-size:16px;padding:10px;min-height:43px}.field label{font-size:10px}.field label span{font-size:8px}.booking-heading>p{font-size:11px}.booking-note{font-size:9px!important}.detail-dialog h2{font-size:27px}}
@media(max-width:390px){.brand-name{font-size:16px}.brand-name>span{font-size:9px}.brand{gap:10px}.header{padding-inline:19px}.header .emergency-link{display:none}.hero h1{font-size:30px}.hero-copy{padding-inline:21px}.team-image{height:195px}.founder-photo{height:430px}.team-grid.is-expanded .team-image{height:180px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal,html.motion-ready .reveal{opacity:1!important;transform:none!important}}

/* El retrato y el relato comparten la misma línea superior e inferior. */
@media(min-width:761px){
  .history{align-items:stretch}
  .founder-photo{height:auto;min-height:580px}
  .history-copy{display:flex;min-height:580px;flex-direction:column}
  .history-copy>p:last-child{margin-top:auto}
}
@media(min-width:761px) and (max-width:1200px){
  .founder-photo,.history-copy{min-height:520px}
}

/* Urgencias comparte la escala tipográfica de la navegación principal. */
@media(min-width:1001px){.header .emergency-link{font-size:12px}}
@media(min-width:761px) and (max-width:1000px){.header .emergency-link{font-size:11px}}

/* Selector de idioma: compacto, sereno y coherente con el encabezado. */
.language-switcher{position:relative;flex:0 0 auto;z-index:45}
.language-trigger{width:46px;height:36px;border:1px solid #dfe5eb;border-radius:100px;display:flex;align-items:center;justify-content:center;gap:6px;background:#ffffffb8;color:#304258;font-size:10px;font-weight:600;letter-spacing:.08em;transition:border-color .2s,background .2s,box-shadow .2s}
.language-trigger:hover,.language-switcher.is-open .language-trigger{background:#fff;border-color:#b9c5d0;box-shadow:0 6px 22px #0914260d}
.language-trigger svg{width:9px;height:6px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.language-switcher.is-open .language-trigger svg{transform:rotate(180deg)}
.language-menu{position:absolute;top:calc(100% + 10px);left:50%;width:152px;padding:7px;border:1px solid #e5e9ee;border-radius:14px;background:#fffffff2;box-shadow:0 18px 55px #0914261a;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);opacity:0;visibility:hidden;transform:translate(-50%,-5px);transition:opacity .2s,transform .2s,visibility .2s}
.language-switcher.is-open .language-menu{opacity:1;visibility:visible;transform:translate(-50%,0)}
.language-menu button{width:100%;min-height:37px;padding:8px 10px;border-radius:9px;display:flex;align-items:center;gap:11px;text-align:left;color:#536174;font-size:11px;transition:background .18s,color .18s}
.language-menu button:hover,.language-menu button.is-active{background:#eef3f6;color:var(--ink)}
.language-menu button span{width:25px;color:#7890a4;font-size:9px;font-weight:650;letter-spacing:.1em}
@media(max-width:760px){.language-trigger{width:40px;height:34px;font-size:9px}.language-menu{left:auto;right:-38px;transform:translateY(-5px)}.language-switcher.is-open .language-menu{transform:translateY(0)}}
/* Review refinements: three hero directions, calm moving team, spacious map. */
.hero-slide{position:absolute;inset:0}.hero-slide[hidden]{display:none}.hero-slide.is-active{animation:hero-in .55s var(--ease)}.hero-slide h2{font-size:clamp(38px,4.15vw,64px);line-height:1.14;font-weight:300;letter-spacing:-.05em}.hero-slide h2 span{font-weight:400}.hero-placeholder{background:#10263b}.hero-placeholder-care{background:linear-gradient(115deg,#102338 10%,#365266 65%,#9aafb5)}.hero-placeholder-history{background:linear-gradient(115deg,#152334,#455b65 65%,#b4bdb4)}.hero-placeholder:after{content:'';position:absolute;inset:0;pointer-events:none;opacity:.15;background:repeating-linear-gradient(108deg,transparent 0 9px,#fff5 10px,transparent 11px 24px);mask-image:linear-gradient(90deg,transparent 35%,#000);background-size:150% 150%;animation:hero-texture 22s ease-in-out infinite alternate}.hero-placeholder-note{position:absolute;top:28px;right:32px;font-size:8px;letter-spacing:.14em;opacity:.65;z-index:2}.hero-pagination{display:flex;align-items:center;gap:10px}.hero-pagination button{padding:9px 10px;color:#ffffffa6;font-size:10px;border-bottom:1px solid #ffffff40;background:transparent;min-width:37px}.hero-pagination button[aria-pressed=true]{color:white;border-color:white}.hero-pagination button:hover{background:#ffffff16}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.team-carousel-controls{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin:-5px 0 23px}.team-carousel-controls[hidden]{display:none}.team-carousel-controls>button{width:35px;height:35px;border:1px solid var(--line);border-radius:50%;font-size:17px;background:#fff}.team-carousel-controls>#team-play{font-size:10px;width:auto;border:0;padding-inline:10px;color:var(--muted)}.team-grid{display:flex;gap:22px;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain;padding-block:7px 12px}.team-grid::-webkit-scrollbar{display:none}.team-group{display:flex;gap:22px;flex:0 0 auto}.team-group .team-card{width:clamp(200px,20vw,286px);flex:0 0 auto}.team-group .team-image{height:300px}.team-grid.is-expanded{display:block;overflow:visible}.team-grid.is-expanded .team-group{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 22px}.team-grid.is-expanded .team-card{width:100%}.maps-grid{grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr)}.map-panel{height:550px}.map-topline{right:17px}.map3d-panel .map-topline{right:75px}.map-tools{position:absolute;left:18px;top:78px;display:flex;gap:7px;z-index:4}.map-tools[hidden],.map-help[hidden]{display:none}.map-tools button{background:#ffffffef;box-shadow:0 2px 14px #0914260c;border:1px solid #e3e7eb;padding:8px 12px;border-radius:100px;font-size:10px}.map-reset{width:auto;min-height:35px;height:auto;padding:8px 12px;bottom:63px;right:18px;font-size:10px;border-radius:100px;gap:8px}.map-help{position:absolute;left:18px;bottom:62px;background:#ffffffeb;border-radius:8px;padding:7px 10px;color:#526075;font-size:9px;max-width:60%;z-index:2;pointer-events:none}.map-coverage{bottom:34px;left:18px}.map3d-panel .maplibregl-ctrl-top-right{top:78px!important;right:8px!important}.maplibregl-ctrl-group button{width:35px!important;height:35px!important}.map-pin{border:1px solid #bfcbd6;box-shadow:0 6px 28px #09142624}.map-pin:after{content:'';position:absolute;left:50%;bottom:-6px;width:10px;height:10px;background:#fff;transform:translateX(-50%) rotate(45deg);border-right:1px solid #bfcbd6;border-bottom:1px solid #bfcbd6}.maps-grid.map-expanded{grid-template-columns:1fr}.maps-grid.map-expanded .google-panel{display:none}.maps-grid.map-expanded .map3d-panel{height:min(75svh,760px);min-height:550px}.maplibregl-canvas{outline-offset:-3px!important}@keyframes hero-in{from{opacity:.5}to{opacity:1}}@keyframes hero-texture{to{background-position:90% 40%}}
@media(max-width:1100px){.maps-grid{grid-template-columns:minmax(230px,.65fr) minmax(0,1.35fr)}.map-panel{height:520px}.map-help{max-width:55%;font-size:8px}.map-reset{font-size:9px;padding-inline:10px}.team-grid.is-expanded .team-group{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.hero-slide h2{font-size:clamp(31px,7.1vw,50px);line-height:1.2}.hero-placeholder-note{top:22px;right:22px;font-size:7px}.hero-placeholder .hero-copy{padding-top:90px}.hero-pagination{gap:7px}.hero-pagination button{font-size:9px;padding:6px 9px;min-width:32px}.team-group .team-card{width:225px}.team-group .team-image{height:285px}.team-grid.is-expanded .team-group{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 15px}.team-grid.is-expanded .team-image{height:215px}.team-carousel-controls{justify-content:space-between;margin-bottom:16px}.maps-grid{display:block}.map-panel{height:500px}.map3d-panel .map-topline{right:17px}.map3d-panel .maplibregl-ctrl-top-right{top:130px!important}.map-tools{top:76px;left:15px;right:15px;justify-content:space-between}.map-tools button{font-size:10px}.map-reset{bottom:76px;right:15px}.map-help{left:15px;bottom:41px;max-width:none;font-size:8px}.map-coverage{bottom:20px;left:15px;font-size:7px}.maps-grid.map-expanded .map3d-panel{min-height:570px;height:75svh}.maps-grid.map-expanded:not(.show-3d) .google-panel{display:block}.maps-grid.map-expanded:not(.show-3d) .map3d-panel{display:none}}
@media(prefers-reduced-motion:reduce){.hero-slide.is-active,.hero-placeholder:after{animation:none}}
@media(max-width:760px){.section-heading .location-details p br{display:block}}

/* Compact gradient spheres: no panel, permanent titles or playback controls. */
.hero-orb-nav{position:absolute;z-index:4;left:clamp(25px,5vw,80px);bottom:29px;display:flex;align-items:center;gap:6px;width:max-content}
.hero-orb-button{position:relative;display:grid;place-items:center;width:44px;height:48px;padding:0;isolation:isolate;border-radius:50%;color:#fff;background:transparent}
.hero-orb{position:relative;display:block;width:25px;height:25px;border-radius:50%;background:radial-gradient(circle at 29% 24%,#f1f5ffdb 0%,#9cb2d0 22%,#536e9d 49%,#213754 77%,#13213b 100%);box-shadow:inset -3px -5px 7px #09142640,inset 1px 1px 3px #ffffff60,0 5px 13px #09142633;transition:transform .4s var(--ease),box-shadow .4s}
.orb-care{background:radial-gradient(circle at 28% 22%,#f4f0ff 0%,#b6bbd8 23%,#7784b1 50%,#3c506e 79%,#253349 100%)}
.orb-history{background:radial-gradient(circle at 28% 22%,#f4f5e9 0%,#c3cdbe 23%,#8caaa1 50%,#436b68 79%,#24444d 100%)}
.orb-diagnostic{background:radial-gradient(circle at 28% 22%,#edffff 0%,#afd8dc 23%,#6cabb8 50%,#34637e 79%,#223a56 100%)}
.hero-orb:after{content:'';position:absolute;inset:-5px;border:1px solid #ffffff00;border-radius:50%;transition:border-color .3s,transform .3s}
.hero-orb-button[aria-pressed=true] .hero-orb:after{border-color:#ffffffe0}
.hero-orb-button:hover .hero-orb,.hero-orb-button:focus-visible .hero-orb{transform:translateY(-3px) scale(1.1);box-shadow:inset -3px -5px 7px #09142640,inset 1px 1px 3px #ffffff80,0 7px 18px #09142635}
.hero-orb-label{position:absolute;left:50%;bottom:calc(100% + 7px);transform:translate(-50%,5px);padding:7px 11px;border-radius:7px;background:#ffffffed;color:var(--ink);backdrop-filter:blur(14px);box-shadow:0 4px 18px #09142614;font-size:10px;font-weight:450;line-height:1.4;white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s,transform .25s,visibility .2s}
.hero-orb-button:first-child .hero-orb-label{left:0;transform:translateY(5px)}
.hero-orb-button:hover .hero-orb-label,.hero-orb-button:focus-visible .hero-orb-label{visibility:visible;opacity:1;transform:translate(-50%,0)}
.hero-orb-button:first-child:hover .hero-orb-label,.hero-orb-button:first-child:focus-visible .hero-orb-label{transform:translateY(0)}
.hero .hero-copy{padding-top:clamp(76px,7.5vw,115px)}
.hero .hero-emergency{top:30px;bottom:auto;right:34px;padding:14px 16px;gap:20px}.hero .hero-emergency strong{font-size:16px}.hero .hero-emergency small{font-size:10px}
.hero-placeholder-note{top:35px;left:clamp(36px,5vw,80px);right:auto}.hero-placeholder-diagnostic{background:linear-gradient(115deg,#112d40,#3e6878 68%,#aec4c4)}
.hero-slide.is-active{animation:hero-editorial-in .65s var(--ease)}.hero-slide.is-active .hero-copy{animation:hero-copy-in .7s var(--ease)}.hero{touch-action:pan-y pinch-zoom}
@keyframes hero-editorial-in{from{opacity:.3;transform:scale(1.008)}to{opacity:1;transform:scale(1)}}@keyframes hero-copy-in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.hero-orb-nav{left:22px;bottom:20px;gap:5px}.hero-orb-button{width:44px;height:46px}.hero-orb{width:24px;height:24px}.hero .hero-copy{padding-top:62px;padding-bottom:200px}.hero.hero .hero-placeholder .hero-copy{padding-top:78px}.hero .hero-emergency{top:auto;bottom:112px;right:auto;left:25px;padding:11px 14px;gap:25px}.hero .hero-emergency strong{font-size:14px}.hero .hero-emergency small{font-size:9px}.hero-placeholder-note{top:28px;left:25px;font-size:7px}.hero-orb-label{font-size:9px;bottom:calc(100% + 5px)}}
@media(hover:none){.hero-orb-button[aria-pressed=true] .hero-orb-label{visibility:visible;opacity:1;transform:translate(-50%,0)}.hero-orb-button:first-child[aria-pressed=true] .hero-orb-label{transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.hero-orb,.hero-slide.is-active,.hero-slide.is-active .hero-copy{animation:none}}
.hero-orb-nav:has(.hero-orb-button:focus-visible) .hero-orb-button:not(:focus-visible) .hero-orb-label{opacity:0;visibility:hidden}

/* UI Garden: predictable focus and interaction-led motion. */
.hero-orb-button:focus-visible{outline:2px solid #fff;outline-offset:1px}.hero-orb-button:hover .hero-orb,.hero-orb-button:focus-visible .hero-orb{filter:brightness(1.08)}

/* Responsive refinements from the current review. */
.hero .hero-emergency{top:auto;bottom:15px;right:34px;left:auto;gap:15px;padding:10px 12px}
.hero .hero-emergency strong{font-size:14px}.hero .hero-emergency small{font-size:9px}.hero .hero-emergency .circle-arrow{width:30px;height:30px;font-size:17px}
.hero-orb-nav{left:clamp(25px,5vw,80px);right:auto;bottom:27px;width:min(50%,600px);justify-content:space-between;gap:0}
.hero-orb-button{width:36px;height:38px}
.hero-orb-button:is(:hover,:focus-visible){z-index:5}
.hero-orb{width:12px;height:12px;border:1px solid #ffffffa8;background:linear-gradient(145deg,#b7c4d7,#6e84a6 55%,#334b6e);box-shadow:none;transition:background-color .2s,filter .2s,transform .2s}
.orb-care{background:linear-gradient(145deg,#d2d2df,#898cae 55%,#555f84)}
.orb-history{background:linear-gradient(145deg,#cbd6ce,#91aa9e 55%,#526f69)}
.orb-diagnostic{background:linear-gradient(145deg,#c8dfe0,#83b0b5 55%,#466f83)}
.hero-orb:after{inset:-3px}
.hero-orb-button[aria-pressed=true] .hero-orb:after{border-color:#ffffffc4}
.hero-orb-button:hover .hero-orb,.hero-orb-button:focus-visible .hero-orb{transform:none;filter:brightness(1.16);box-shadow:none}
.hero-orb-label,.hero-orb-button:first-child .hero-orb-label{left:calc(50% + 13px);top:50%;bottom:auto;padding:0;background:transparent;color:#fff;box-shadow:none;backdrop-filter:none;font-size:10px;font-weight:600;text-shadow:0 1px 10px #091426bf;opacity:0;transform:translate(0,-50%);clip-path:inset(0 100% 0 0);transition:opacity .25s ease,clip-path .34s ease,visibility .34s ease}
.hero-orb-button:is(:hover,:focus-visible) .hero-orb-label,.hero-orb-button:first-child:is(:hover,:focus-visible) .hero-orb-label{opacity:1;visibility:visible;transform:translate(0,-50%);clip-path:inset(0 0 0 0)}
.team-carousel-controls>#team-prev,.team-carousel-controls>#team-next{display:grid;place-items:center;padding:0;line-height:1}
.team-carousel-controls svg{display:block;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.history-timeline{margin:90px 47px -72px 0}
@media(max-width:850px){.hero .hero-emergency{bottom:98px;left:clamp(25px,5vw,80px);right:auto}}
@media(max-width:760px){
  .hero .hero-emergency{top:auto;bottom:100px;left:25px;right:auto}
  .hero-orb-nav{left:22px;right:22px;bottom:20px;width:auto;gap:0}
  .hero-orb-button{width:34px;height:40px}
  .hero-orb{width:11px;height:11px}
  .hero .hero-copy{padding-bottom:200px}
  .history-timeline{margin:34px 0 0}
}
@media(hover:none){.hero-orb-button[aria-pressed=true] .hero-orb-label{top:auto;bottom:calc(100% + 5px);left:50%;padding:5px 9px;background:#091426b8;opacity:1;visibility:visible;transform:translateX(-50%);clip-path:none}}

/* Los retratos pendientes comparten el fondo luminoso de las tarjetas de historias. */
.team-image.placeholder.texture-surface{background:#f4f6f8}
.team-image.texture-surface:before{inset:-45%;z-index:-1}
.team-image.texture-surface:after{z-index:-1}

/* La llamada de urgencias debe leerse claramente sobre la portada. */
.hero .hero-emergency{padding:13px 16px;gap:18px}
.hero .hero-emergency strong{font-size:18px;line-height:1.25}
.hero .hero-emergency small{font-size:11px;line-height:1.45}
.hero .hero-emergency .circle-arrow{width:34px;height:34px;flex:0 0 34px}
@media(max-width:760px){
  .hero .hero-emergency{padding:12px 14px;gap:14px}
  .hero .hero-emergency strong{font-size:16px}
  .hero .hero-emergency small{font-size:10px}
}

/* El retrato de la historia usa el mismo fondo detrás de la silueta. */
.founder-photo.texture-surface{background:#f4f6f8}
.founder-photo.texture-surface>img{object-position:center top}
.founder-photo.texture-surface figcaption{background:#091426a6}

/* Curvas en S con reflejos opalescentes tomados de la paleta del sitio. */
.closing{isolation:isolate;background:#e7edf2;border-color:#e3e9ed}
.closing.texture-surface:before,.closing.texture-surface:after{content:none}
.closing-fluid{position:absolute;inset:0;z-index:0;overflow:hidden;border-radius:inherit;pointer-events:none;contain:paint;background:linear-gradient(125deg,#dce6ed 0%,#fbfcfc 42%,#e7edf2 72%,#f5f6f7 100%)}
.closing-fluid:after{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(90deg,#ffffffc9 1px,transparent 1px),linear-gradient(#ffffffc9 1px,transparent 1px);background-size:48px 48px;opacity:.68;mask-image:linear-gradient(90deg,#0009,#000)}
.closing-fluid span{position:absolute;display:block}
.closing-fluid.is-animating span{animation-play-state:running;will-change:transform}
.closing-fluid span:nth-child(1){inset:-14% -16%;background:url("assets/liquid-opal.svg?v=soft2") center/100% 100% no-repeat;opacity:.9;animation:closing-flow-one 18s ease-in-out infinite alternate paused}
.closing-fluid span:nth-child(2){inset:-20% -25%;background:url("assets/liquid-opal.svg?v=soft2") center/100% 100% no-repeat;opacity:.26;animation:closing-flow-two 24s ease-in-out infinite alternate paused}
.closing-fluid span:nth-child(3){width:95%;height:160%;left:12%;top:-30%;border-radius:50%;background:radial-gradient(ellipse,#a8bfd34d 0%,#d3c5b83d 37%,transparent 72%);animation:closing-flow-three 28s ease-in-out infinite alternate paused}
.closing>div:not(.closing-fluid){position:relative;z-index:1}
@media(max-width:760px){.closing-fluid:after{background-size:38px 38px;opacity:.62}}
@keyframes closing-flow-one{0%{transform:translate(-5%,-3%) rotate(-4deg) scale(1.04,1)}50%{transform:translate(7%,5%) rotate(3deg) scale(1.1,.95)}100%{transform:translate(-2%,-4%) rotate(-2deg) scale(.99,1.07)}}
@keyframes closing-flow-two{0%{transform:translate(6%,-7%) rotate(178deg) scale(.96,1)}50%{transform:translate(-8%,5%) rotate(184deg) scale(1.07,.94)}100%{transform:translate(3%,8%) rotate(176deg) scale(.93,1.1)}}
@keyframes closing-flow-three{0%{transform:translate(-9%,4%) scale(1)}50%{transform:translate(13%,-8%) scale(1.13,.9)}100%{transform:translate(-5%,-4%) scale(.92,1.08)}}
@media(prefers-reduced-motion:reduce){.closing-fluid.is-animating span{will-change:auto}}

/* The closing panel is a visual pause; its invitation lives in the footer. */
.closing{height:clamp(390px,36vw,550px);padding:0;display:block;overflow:hidden;position:relative;cursor:crosshair}
.closing-fluid:after{opacity:.25;mask-image:none}
.closing-grid{position:absolute!important;z-index:1!important;inset:0;pointer-events:none;background-image:linear-gradient(90deg,#fff 1px,transparent 1px),linear-gradient(#fff 1px,transparent 1px);background-size:48px 48px;opacity:0;mask-image:radial-gradient(circle 190px at var(--gs-x,50%) var(--gs-y,50%),#000 15%,transparent 100%);transition:opacity .4s ease}
.closing-fluid.is-grid-active .closing-grid{opacity:.9}
.closing-heart{position:absolute;z-index:2;width:min(38%,440px);height:auto;left:33.333%;top:50%;transform:translate(-50%,-50%);filter:drop-shadow(0 14px 26px #35495b35);pointer-events:none;user-select:none}
.footer{padding-top:54px}
.footer-cta{display:flex;justify-content:space-between;align-items:end;gap:45px;padding:0 0 55px;border-bottom:1px solid var(--line);margin-bottom:45px}
.footer-cta .eyebrow{font-size:9px;margin-bottom:20px}
.footer-cta h2{font-size:clamp(30px,3.2vw,46px);font-weight:350;line-height:1.15;letter-spacing:-.045em}
.footer-cta-actions{display:flex;align-items:flex-start;flex-direction:column;gap:17px;flex:none}
.footer-cta-actions .text-link{font-size:11px}
@media(max-width:760px){.closing{height:390px;margin:30px 14px 0;padding:0}.closing-fluid:after,.closing-grid{background-size:38px 38px}.closing-fluid:after{opacity:.34}.closing-heart{width:min(65%,290px);left:50%}.footer{padding-top:48px}.footer-cta{display:block;padding-bottom:38px;margin-bottom:35px}.footer-cta .eyebrow{font-size:8px;line-height:1.7}.footer-cta h2{font-size:34px;max-width:370px}.footer-cta-actions{margin-top:26px}.footer-cta-actions .button{font-size:12px;min-height:44px}}
@media(hover:none){.closing{cursor:default}.closing-grid{opacity:.24;mask-image:none}}

/* Hero cards advance horizontally; the active sphere carries its title. */
.hero-slide{transition:transform .62s var(--ease),opacity .62s ease;will-change:transform}
.hero-slide.is-active{animation:none;transform:translateX(0);opacity:1;z-index:2}
.hero-slide.is-active .hero-copy{animation:none}
.hero-slide.hero-enter-right{transform:translateX(100%);opacity:.75;z-index:2}
.hero-slide.hero-enter-left{transform:translateX(-100%);opacity:.75;z-index:2}
.hero-slide.hero-exit-left{transform:translateX(-100%);opacity:.65;z-index:1}
.hero-slide.hero-exit-right{transform:translateX(100%);opacity:.65;z-index:1}
.hero-orb-nav .hero-orb-button[aria-pressed=true] .hero-orb-label{opacity:1;visibility:visible;transform:translate(0,-50%);clip-path:inset(0 0 0 0)}
@media(max-width:760px){.hero-orb-nav .hero-orb-button:last-of-type[aria-pressed=true] .hero-orb-label{left:auto;right:calc(50% + 13px);transform:translate(0,-50%)}}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none;will-change:auto}.hero-slide.hero-enter-right,.hero-slide.hero-enter-left,.hero-slide.hero-exit-left,.hero-slide.hero-exit-right{transform:none;opacity:1}}
/* Spheres stay borderless; state is carried by their tone and active label. */
.hero-orb{border:0!important}
.hero-orb:after{border:0!important;box-shadow:none!important}
.hero-orb-button[aria-pressed=true] .hero-orb:after{border:0!important}

/* The heart responds to hover and a gentle click pulse. */
.closing-heart-button{position:absolute;z-index:2;left:33.333%;top:50%;width:min(38%,440px);padding:0;border:0;background:transparent;transform:translate(-50%,-50%);cursor:pointer;line-height:0}
.closing-heart-button picture{display:block;width:100%}
.closing-heart-button .closing-heart{position:relative;left:auto;top:auto;width:100%;transform:none;transition:transform .42s var(--ease);filter:drop-shadow(0 14px 26px #35495b35);pointer-events:none}
.closing-heart-button:hover .closing-heart,.closing-heart-button:focus-visible .closing-heart{transform:scale(1.05)}
.closing-heart-button:focus-visible{outline:2px solid #ffffffb8;outline-offset:7px;border-radius:50%}
.closing-heart-button.is-pulsing .closing-heart{animation:heart-pulse .72s var(--ease)}
@keyframes heart-pulse{0%,100%{transform:scale(1)}35%{transform:scale(1.075)}62%{transform:scale(1.035)}}
@media(max-width:760px){.closing-heart-button{width:min(65%,290px);left:50%}}
@media(prefers-reduced-motion:reduce){.closing-heart-button .closing-heart{transition:none}.closing-heart-button.is-pulsing .closing-heart{animation:none}}

/* Gradiente Senior: one reusable cloudy surface for the hero and closing mark. */
.gradiente-senior{position:absolute;inset:0;z-index:0;overflow:hidden;isolation:isolate;contain:paint;border-radius:inherit;pointer-events:none;background:linear-gradient(128deg,#dce6ed 0%,#f9fbfc 42%,#e7edf2 76%,#f2f4f5 100%)}
.gradiente-senior__scanner{position:absolute;z-index:0;right:-4%;bottom:-28%;width:76%;height:138%;object-fit:contain;object-position:right bottom;opacity:.62;filter:blur(3px) saturate(.66);mix-blend-mode:multiply}
.gradiente-senior:before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(118deg,#eef3f5d9 0%,#ffffffa6 45%,#eaf0f3b8 100%);backdrop-filter:blur(12px) saturate(1.08);-webkit-backdrop-filter:blur(12px) saturate(1.08)}
.gradiente-senior__fluid{position:absolute;z-index:2;display:block;inset:-18% -14%;background:url("assets/liquid-opal.svg?v=soft2") center/100% 100% no-repeat;opacity:.44;transform:translate3d(0,0,0);animation:closing-flow-one 20s ease-in-out infinite alternate paused;will-change:auto}
.gradiente-senior__fluid--two{inset:-28% -24%;opacity:.26;transform:rotate(178deg);animation:closing-flow-two 27s ease-in-out infinite alternate paused}
.gradiente-senior__fluid--three{inset:-18% -14%;opacity:.2;filter:hue-rotate(16deg);animation:closing-flow-three 30s ease-in-out infinite alternate paused}
.gradiente-senior.is-animating .gradiente-senior__fluid{animation-play-state:running;will-change:transform}
.gradiente-senior__grid{position:absolute;z-index:3;inset:0;background-image:linear-gradient(90deg,#fff 1px,transparent 1px),linear-gradient(#fff 1px,transparent 1px);background-size:48px 48px;opacity:.2;mask-image:radial-gradient(circle 210px at var(--gs-x,50%) var(--gs-y,50%),#000 10%,transparent 100%);transition:opacity .4s ease}
.gradiente-senior.is-grid-active .gradiente-senior__grid{opacity:.85}
.hero-urgencies-grid{--urgencies-grid-lines:linear-gradient(90deg,#ffffff80 1px,transparent 1px),linear-gradient(#ffffff80 1px,transparent 1px);position:absolute;z-index:1;inset:0;pointer-events:none;background-size:48px 48px}
.hero-urgencies-grid::before,.hero-urgencies-grid::after{content:"";position:absolute;inset:0;background-image:var(--urgencies-grid-lines);background-size:inherit}
.hero-urgencies-grid::before{opacity:.162}
.hero-urgencies-grid::after{opacity:0;mask-image:radial-gradient(circle 230px at var(--gs-x,50%) var(--gs-y,50%),#000 5%,transparent 100%);transition:opacity .6s ease}
.hero-urgencies-grid.is-grid-active::after{opacity:.22}
.hero-senior{background:#e7edf2}
.hero-senior .hero-copy{position:relative;z-index:4;max-width:min(700px,62%);color:#1d305e;text-shadow:none}
.hero-senior .hero-copy p{color:#526274}
.hero-senior .hero-copy h2{color:#1d305e}
.hero-senior__logo-window{position:absolute;z-index:4;inset:0;pointer-events:none;-webkit-mask-image:url("assets/medifauna.svg?v=full-mark");mask-image:url("assets/medifauna.svg?v=full-mark");-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:min(34%,390px) auto;mask-size:min(34%,390px) auto;-webkit-mask-position:right clamp(30px,6vw,92px) center;mask-position:right clamp(30px,6vw,92px) center}.hero-senior__clear-scanner{position:absolute;right:-7%;bottom:-13%;width:72%;height:125%;object-fit:cover;object-position:right center;filter:contrast(1.25) saturate(1.08)}
@media(min-width:1100px){.hero-senior__clear-scanner{right:5%}}
.closing{background:linear-gradient(128deg,#dce6ed 0%,#f9fbfc 42%,#e7edf2 76%,#f2f4f5 100%);border:0}
.closing .gradiente-senior{border-radius:inherit}
.closing>.gradiente-senior{position:absolute;z-index:0}
.closing-heart-button{z-index:4}
.closing-heart-button .closing-heart{filter:drop-shadow(0 14px 26px #35495b35);opacity:1}
#booking-summary #email-request{margin-top:10px}
@media(max-width:760px){.gradiente-senior__scanner{width:96%;height:115%;right:-19%;bottom:-20%;opacity:.46}.gradiente-senior:before{backdrop-filter:blur(9px) saturate(1.05);-webkit-backdrop-filter:blur(9px) saturate(1.05)}.gradiente-senior__grid{background-size:38px 38px;opacity:.3}.hero-senior .hero-copy{max-width:100%;padding-top:78px}.hero-senior__logo-window{-webkit-mask-size:min(58%,240px) auto;mask-size:min(58%,240px) auto;-webkit-mask-position:right -4% bottom 5%;mask-position:right -4% bottom 5%}.hero-senior__clear-scanner{width:92%;height:112%;right:-20%;bottom:-8%;object-fit:cover;object-position:right center}.closing-heart-button{width:min(65%,290px);left:50%}}
.hero-placeholder-history .hero-copy{z-index:2}
.hero-placeholder-history .hero-hours{display:inline-block;white-space:nowrap;font-size:clamp(78px,7.5vw,112px);line-height:.9;font-weight:400;letter-spacing:-.065em;margin-top:.04em}
@media(max-width:760px){.hero-placeholder-history .hero-hours{font-size:clamp(44px,13vw,62px);line-height:.94}}
@media(max-width:760px){.hero-urgencies-grid{background-size:38px 38px}.hero-urgencies-grid::before{opacity:.198}}
@media(hover:none){.hero-urgencies-grid::before{opacity:.198}.hero-urgencies-grid::after{display:none}}
@media(prefers-reduced-motion:reduce){.hero-urgencies-grid::after{transition:none}}
@media(prefers-reduced-motion:reduce){.gradiente-senior__fluid{animation:none!important;will-change:auto}.gradiente-senior__grid{transition:none}}
/* One horizontal guide for framed panels and the content inside full-width sections. */
.closing{width:calc(100% - var(--gutter) * 2);max-width:calc(1600px - var(--gutter) * 2);margin-inline:auto}

/* Final hero cleanup: no ring around the spheres and no dark halo behind labels. */
.hero-orb-button,
.hero-orb-button:focus,
.hero-orb-button:focus-visible{outline:0!important;box-shadow:none!important}
.hero-orb,
.hero-orb:before,
.hero-orb:after{border:0!important;outline:0!important;box-shadow:none!important}
.hero-orb-label{ text-shadow:none!important; filter:none!important }

/* Service cards reveal a short, client-friendly explanation by sliding down. */
.panel-details{transform:translateY(-22px);transition:opacity .35s ease,transform .5s var(--ease)}
.service-panel:hover .panel-details,
.service-panel:focus-visible .panel-details,
.service-panel.is-active .panel-details{transform:translateY(0)}
.panel-details p{max-width:340px}

.booking-honeypot{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.booking-send-status{margin:0 0 14px!important;color:#537362!important;font-size:12px!important}.booking-send-status.is-error{color:#8b5e30!important}

/* Six service cards move as one continuous, user-controlled carousel. */
.service-carousel-controls{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin:-14px var(--gutter) 22px}
.service-carousel-controls[hidden]{display:none}
.service-carousel-controls>button{width:35px;height:35px;border:1px solid var(--line);border-radius:50%;font-size:17px;background:#fff}
.service-carousel-controls>#services-play{font-size:10px;width:auto;border:0;padding-inline:10px;color:var(--muted)}
.service-carousel-controls>#services-prev,.service-carousel-controls>#services-next{display:grid;place-items:center;padding:0;line-height:1}
.service-carousel-controls>#services-prev:disabled,.service-carousel-controls>#services-next:disabled{opacity:.28;color:var(--muted);background:transparent;cursor:default}
.service-carousel-controls>#services-prev:not(:disabled):hover,.service-carousel-controls>#services-next:not(:disabled):hover{border-color:#9aa9bb;background:#f7f9fb}
.service-carousel-controls svg{display:block;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
#service-panels.service-panels{display:flex;gap:0;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain;scroll-snap-type:x mandatory}
#service-panels.service-panels::-webkit-scrollbar{display:none}
.service-group{display:flex;flex:0 0 auto;gap:18px;padding-right:18px}
.service-panel{flex:0 0 clamp(235px,calc(31vw - 34px),430px);scroll-snap-align:start}
.service-panels.is-bouncing-start .service-group{animation:service-edge-start .28s var(--ease)}
.service-panels.is-bouncing-end .service-group{animation:service-edge-end .28s var(--ease)}
@keyframes service-edge-start{0%,100%{transform:translateX(0)}48%{transform:translateX(4px)}}
@keyframes service-edge-end{0%,100%{transform:translateX(0)}48%{transform:translateX(-4px)}}
@media(max-width:760px){.service-carousel-controls{justify-content:space-between;margin:0 var(--gutter) 16px}#service-panels.service-panels{padding:0 0 10px;margin-inline:auto}.service-group{gap:14px;padding-right:14px}.service-panel{flex-basis:79vw;aspect-ratio:.82;scroll-snap-align:center}}
@media(prefers-reduced-motion:reduce){#service-panels.service-panels{scroll-behavior:auto}.service-panels.is-bouncing-start .service-group,.service-panels.is-bouncing-end .service-group{animation:none}}
.hero-senior .gradiente-senior__scanner{width:72%;height:125%;right:-7%;bottom:-13%;object-fit:cover;object-position:right center;opacity:.95;filter:blur(1.5px) saturate(.82) contrast(1.12);mix-blend-mode:normal}
.hero-senior .gradiente-senior:before{background:linear-gradient(105deg,#eef3f5eb 0%,#f6f8f9b0 38%,#eaf0f35c 66%,#e4ebf146 100%);backdrop-filter:blur(5px) saturate(1.04);-webkit-backdrop-filter:blur(5px) saturate(1.04)}
.hero-senior__logo{opacity:.26}
.detail-dialog .service-accordion-list{margin:24px 0}
.detail-dialog .service-accordion-list>li{padding:0;border-bottom:1px solid var(--line)}
.service-accordion summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:54px;padding:14px 0;list-style:none;cursor:pointer;font-size:14px;font-weight:500;line-height:1.5;color:var(--ink)}
.service-accordion summary::-webkit-details-marker{display:none}
.service-accordion summary:focus-visible{outline:2px solid #546b8b;outline-offset:4px;border-radius:4px}
.service-accordion summary:hover{color:#546b8b}
.service-option-icon{position:relative;flex:0 0 9px;width:9px;height:9px;opacity:.55}
.service-option-icon:before,.service-option-icon:after{content:"";position:absolute;left:0;top:4px;width:9px;height:1px;background:currentColor}
.service-option-icon:after{transform:rotate(90deg);transition:transform .25s ease,opacity .25s ease}
.service-accordion[open] .service-option-icon:after{transform:rotate(0);opacity:0}
.detail-dialog .service-explanation p{margin:0;padding:0 28px 20px 0;font-size:13px;line-height:1.8;color:#5b6878}
.service-accordion[open] .service-explanation{animation:service-explanation-in .25s ease-out}
@keyframes service-explanation-in{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@supports (interpolate-size:allow-keywords) and selector(details::details-content){.service-accordion{interpolate-size:allow-keywords}.service-accordion::details-content{block-size:0;overflow:clip;transition:block-size .28s var(--ease),content-visibility .28s allow-discrete}.service-accordion[open]::details-content{block-size:auto}}
@media(prefers-reduced-motion:reduce){.service-accordion::details-content,.service-option-icon:after{transition:none}.service-accordion[open] .service-explanation{animation:none}}
@media(max-width:760px){.hero-senior .gradiente-senior__scanner{width:92%;height:112%;right:-20%;bottom:-8%;opacity:.64;filter:blur(2px) saturate(.72) contrast(1.04)}}

/* Portada navigation lives on the white page below the image. */
.hero{height:calc(100svh - 250px);min-height:500px;max-height:660px}
.hero-orb-nav.page-frame{position:relative;inset:auto;width:calc(100% - var(--gutter) * 2);max-width:calc(1600px - var(--gutter) * 2);z-index:1;display:grid;grid-template-columns:repeat(var(--hero-count,5),minmax(0,1fr));gap:0;margin:12px auto 0;padding:3px clamp(12px,3vw,42px) 0;color:var(--muted)}
.hero-orb-nav.page-frame .hero-orb-button{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:9px;width:100%;height:auto;min-height:69px;padding:7px 7px 14px;color:var(--muted);border-radius:8px}
.hero-orb-nav.page-frame .hero-orb{flex:none;width:14px;height:14px;transition:transform .35s var(--ease),filter .35s var(--ease)}
.hero-orb-nav.page-frame .hero-orb-button[aria-pressed=true] .hero-orb{transform:scale(1.25);filter:brightness(1.08)}
.hero-orb-nav.page-frame .hero-orb-label,.hero-orb-nav.page-frame .hero-orb-button:first-child .hero-orb-label{position:static;display:block;max-width:100%;padding:0;background:none;color:#687484;font-size:11px;font-weight:500;line-height:1.35;text-align:center;text-shadow:none;white-space:normal;opacity:1;visibility:visible;clip-path:none;transform:none;transition:color .3s ease}
.hero-orb-nav.page-frame .hero-orb-button[aria-pressed=true] .hero-orb-label{color:#3f4d60;font-weight:600;transform:none}
.hero-orb-nav.page-frame .hero-orb-button:last-of-type[aria-pressed=true] .hero-orb-label{left:auto;right:auto;transform:none}
.hero-orb-nav.page-frame .hero-orb-button:is(:hover,:focus-visible) .hero-orb-label{color:#23364c;opacity:1;visibility:visible;clip-path:none;transform:none}
.hero-orb-nav.page-frame .hero-orb-button:focus-visible{outline:2px solid #7992ae!important;outline-offset:-2px}
.hero-orb-nav.page-frame .hero-orb-button[aria-pressed=true]:after{content:"";position:absolute;bottom:6px;width:min(55%,90px);height:1px;background:#9bacbf;transform-origin:left;animation:hero-orb-progress var(--hero-slide-duration,10s) linear both}
.hero-orb-nav.is-paused .hero-orb-button[aria-pressed=true]:after{animation:none}
@keyframes hero-orb-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:760px){.hero{height:calc(100svh - 235px);min-height:500px;max-height:650px}.hero-orb-nav.page-frame{margin:10px auto 0;padding-inline:4px}.hero-orb-nav.page-frame .hero-orb-button{min-height:81px;gap:8px;padding:7px 3px 14px}.hero-orb-nav.page-frame .hero-orb-label{font-size:9px}}
@media(prefers-reduced-motion:reduce){.hero-orb-nav.page-frame .hero-orb-button[aria-pressed=true]:after{animation:none;transform:none}}

/* Smaller spheres with labels beside them, still distributed below the hero. */
.hero-orb-nav.page-frame .hero-orb-button{flex-direction:row;justify-content:center;gap:9px;min-height:53px;padding:8px 5px 14px}
.hero-orb-nav.page-frame .hero-orb{width:10px;height:10px}
.hero-orb-nav.page-frame .hero-orb-label,.hero-orb-nav.page-frame .hero-orb-button:first-child .hero-orb-label{text-align:left;font-size:11px}
.hero-orb-nav.page-frame .hero-orb-button[aria-pressed=true]:after{bottom:4px}
@media(max-width:760px){.hero-orb-nav.page-frame .hero-orb-button{min-height:64px;gap:5px;padding:7px 2px 13px}.hero-orb-nav.page-frame .hero-orb{width:9px;height:9px}.hero-orb-nav.page-frame .hero-orb-label,.hero-orb-nav.page-frame .hero-orb-button:first-child .hero-orb-label{font-size:10px;line-height:1.25}}

/* Seven-step history, spanning the width beneath the founder portrait. */
.history{row-gap:0}
.history-timeline{display:block;grid-column:1/-1;margin:54px 0 0;min-width:0;width:100%;max-width:100%}
.history-timeline span{display:block;flex:none}
.timeline-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:52px}
.timeline-heading .eyebrow{margin-bottom:17px;font-size:10px;letter-spacing:.19em;color:#637c91}
.timeline-heading h3{font-size:clamp(32px,3.2vw,47px);line-height:1.13;font-weight:400}
.timeline-heading h3 span{font-size:inherit;color:#7e8c9e;line-height:inherit}
.timeline-heading>p{max-width:300px;font-size:12px;line-height:1.8;color:#768292}
.timeline-list{position:relative;display:flex;flex-direction:column;gap:12px;list-style:none;margin:0;padding:0}
.timeline-list:before{content:"";position:absolute;top:18px;bottom:24px;left:50%;width:2px;background:linear-gradient(#849eb0 0%,#c7d3da 50%,#849eb0 100%);transform:translateX(-50%)}
.timeline-entry{position:relative;width:calc(50% - 44px);min-height:126px;padding:14px 22px 16px;background:#f7f9fa;border-top:2px solid #bac9d2;border-radius:0 0 8px 8px}
.timeline-entry:nth-child(even){margin-left:auto}
.timeline-entry:before{content:"";position:absolute;top:18px;right:-51px;width:12px;height:12px;border:2px solid #9bafbc;border-radius:50%;background:#fff;z-index:1}
.timeline-entry:nth-child(even):before{right:auto;left:-51px}
.timeline-entry:after{content:"";position:absolute;top:24px;right:-44px;width:44px;height:1px;background:#c3d0d8}
.timeline-entry:nth-child(even):after{right:auto;left:-44px}
.timeline-entry.is-confirmed{background:#eef3f6;border-top-color:#284867}
.timeline-entry.is-confirmed:before{background:#284867;border-color:#284867;box-shadow:0 0 0 5px #eaf0f3}
.timeline-index{font-size:9px!important;line-height:1.5;letter-spacing:.16em;font-weight:650;color:#6d8190!important}
.timeline-date{margin-top:11px;font-size:14px!important;line-height:1.2;color:#788799!important;font-weight:450}
.is-confirmed .timeline-date{font-size:26px!important;font-weight:450;color:#1f3d59!important;letter-spacing:-.05em}
.timeline-entry h4{margin:5px 0 4px;font-size:18px;line-height:1.3;font-weight:500;letter-spacing:-.035em;color:#253c53}
.timeline-entry p{font-size:11px;line-height:1.65;color:#778595}
@media(max-width:760px){.history-timeline{margin:34px 0 0}.timeline-heading{display:block;margin-bottom:30px}.timeline-heading h3{font-size:34px}.timeline-heading>p{margin-top:17px;font-size:11px}.timeline-list{gap:12px;padding-left:35px}.timeline-list:before{left:5px;transform:none}.timeline-entry,.timeline-entry:nth-child(even){width:100%;min-height:113px;margin-left:0;padding:13px 16px 14px}.timeline-entry:before,.timeline-entry:nth-child(even):before{left:-35px;right:auto;width:10px;height:10px}.timeline-entry:after,.timeline-entry:nth-child(even):after{left:-27px;right:auto;width:27px}.timeline-entry h4{font-size:16px}.is-confirmed .timeline-date{font-size:23px!important}}

/* A clear horizontal rule joins the milestones; the pointer adds a sharp accent. */
.timeline-heading{margin-bottom:25px}
.timeline-controls{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:10px;color:#788799}
.timeline-controls>span{font-size:9px;letter-spacing:.17em;font-weight:600}
.timeline-controls>span>span{display:inline}
.timeline-controls svg{display:block;width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.timeline-controls .timeline-hint-arrow{display:inline-block;width:12px;height:12px;vertical-align:-2px;margin-left:3px}
.timeline-controls>div{display:flex;gap:7px}
.timeline-controls button{display:grid;place-items:center;flex:none;width:35px;height:35px;padding:0;border:1px solid #d9e1e8;border-radius:50%;background:#fff;color:#3e5872;transition:background .2s,opacity .2s}
.timeline-controls button:hover{background:#eef3f6}.timeline-controls button:disabled{opacity:.32;cursor:default}
.timeline-rail{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#c1cdd6 transparent;overscroll-behavior-x:contain}
.timeline-rail:focus-visible{outline:2px solid #849db5;outline-offset:3px}
.timeline-list{--timeline-item-width:clamp(235px,25vw,300px);display:flex;flex-direction:row;align-items:stretch;gap:18px;width:max-content;min-width:100%;height:320px;padding:47px 4px 18px;--timeline-progress:0%;--timeline-glow-x:40px;--timeline-glow-opacity:0}
.timeline-list:before{content:"";position:absolute;left:21px;right:calc(var(--timeline-item-width) - 13px);top:21.5px;bottom:auto;width:auto;height:1px;background:linear-gradient(to right,#55758c var(--timeline-progress),#a3b2bd var(--timeline-progress));-webkit-mask-image:repeating-linear-gradient(to right,#000 0 5px,transparent 5px 10px);mask-image:repeating-linear-gradient(to right,#000 0 5px,transparent 5px 10px);transform:none}
.timeline-list:after{content:"";position:absolute;left:21px;right:calc(var(--timeline-item-width) - 13px);top:21.5px;width:auto;height:1px;transform:none;background:radial-gradient(ellipse 110px 12px at calc(var(--timeline-glow-x) - 21px) 50%,#305e85 0%,#6a8aa3 55%,transparent 100%);-webkit-mask-image:repeating-linear-gradient(to right,#000 0 5px,transparent 5px 10px);mask-image:repeating-linear-gradient(to right,#000 0 5px,transparent 5px 10px);opacity:var(--timeline-glow-opacity);pointer-events:none;transition:opacity .18s}
.timeline-entry,.timeline-entry:nth-child(even){flex:0 0 var(--timeline-item-width);width:auto;min-height:0;margin:0;padding:0;border:0;background:transparent;scroll-snap-align:start}
.timeline-entry:before,.timeline-entry:after,.timeline-entry:nth-child(even):before,.timeline-entry:nth-child(even):after{content:none}
.timeline-card,.timeline-card[open]{position:relative;height:100%;border:0;border-radius:0;background:transparent;box-shadow:none;transition:none}
.timeline-card:hover{transform:none;border-color:transparent;box-shadow:none}
.timeline-card summary{position:relative;display:grid;grid-template-columns:74px minmax(0,1fr);gap:11px;align-items:center;min-height:112px;padding:4px 18px 8px 12px;list-style:none;cursor:pointer}
.timeline-card summary::-webkit-details-marker{display:none}
.timeline-card summary:focus-visible{outline:2px solid #6080a0;outline-offset:-2px;border-radius:4px}
.timeline-node{position:absolute;top:-29px;left:13px;width:8px;height:8px;border:1px solid #66849a;border-radius:50%;background:#7893a6;box-shadow:none;z-index:2;transition:background .2s,border-color .2s}
.timeline-card[open] .timeline-node{border-color:#315979;background:#315979;box-shadow:none}
.timeline-card summary:hover .timeline-node,.timeline-card summary:focus-visible .timeline-node{border-color:#315979;background:#315979}
.timeline-entry:first-child .timeline-node,.timeline-entry:last-child .timeline-node{top:-29px;left:13px;width:8px;height:8px;border:1px solid #315979;background:#7893a6;box-shadow:none}
.timeline-entry:first-child .timeline-node{background:#315979}
.timeline-thumb.texture-surface{display:grid;place-items:center;width:74px;height:82px;border-radius:3px;background:linear-gradient(135deg,#b9d0df,#f3f4f6 52%,#cbbdd7);flex:none}
.timeline-thumb.texture-surface:before{inset:0;z-index:0;filter:saturate(.7);animation:none;opacity:0;background:linear-gradient(135deg,#e79b78ed,#f4e9e5ed 52%,#c98291ed),radial-gradient(ellipse at 22% 20%,#e98765a8,transparent 55%),radial-gradient(circle at 80% 82%,#b96d82a0,transparent 56%);transition:opacity .72s cubic-bezier(.22,.61,.36,1)}
.timeline-thumb.texture-surface:after{opacity:.035}
.timeline-card summary:hover .timeline-thumb.texture-surface:before,.timeline-card summary:focus-visible .timeline-thumb.texture-surface:before{opacity:.94}
.timeline-thumb .timeline-thumb-number{display:block;position:relative;z-index:1;font-size:29px;line-height:1;font-weight:300;letter-spacing:-.075em;font-variant-numeric:tabular-nums;color:#526e86;opacity:.72;transition:color .72s cubic-bezier(.22,.61,.36,1),opacity .72s cubic-bezier(.22,.61,.36,1)}
.timeline-card summary:hover .timeline-thumb-number,.timeline-card summary:focus-visible .timeline-thumb-number{color:#925a45;opacity:.84}
.timeline-card-copy{min-width:0}.timeline-index{font-size:8px!important;letter-spacing:.1em;color:#71899b!important}
.timeline-date,.is-confirmed .timeline-date{display:block;margin-top:7px;font-size:16px!important;line-height:1.2;font-weight:500;letter-spacing:-.035em;color:#263f56!important}
.timeline-entry:first-child .timeline-date,.timeline-entry:last-child .timeline-date{font-size:24px!important;color:#173b5b!important}
.timeline-card-title{display:block;margin-top:4px;font-size:11px!important;line-height:1.35;font-weight:500;color:#536577!important}
.timeline-entry:first-child .timeline-card-title,.timeline-entry:last-child .timeline-card-title{font-size:13px!important;color:#304e68!important}
.timeline-detail{padding:0 18px 12px 97px;border:0}.timeline-detail p{font-size:11px;line-height:1.65;color:#596d7f}.timeline-detail small{display:block;margin-top:8px;font-size:8px;letter-spacing:.1em;text-transform:uppercase;color:#95a3af}
.timeline-card[open] .timeline-detail{animation:timeline-reveal .44s cubic-bezier(.22,.61,.36,1) both}
@keyframes timeline-reveal{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.timeline-heading{margin-bottom:21px}.timeline-controls>span{font-size:8px}.timeline-list{--timeline-item-width:76vw;gap:12px;padding:47px 4px 18px}.timeline-list:before{left:21px;top:21.5px}.timeline-entry,.timeline-entry:nth-child(even){flex-basis:var(--timeline-item-width);width:auto;min-height:0;margin:0;padding:0}.timeline-card summary{grid-template-columns:68px minmax(0,1fr);min-height:104px}.timeline-thumb.texture-surface{width:68px;height:76px}.timeline-detail{padding-left:91px}}
@media(prefers-reduced-motion:reduce){.timeline-card,.timeline-controls button,.timeline-node{transition:none}.timeline-card[open] .timeline-detail{animation:none}}


/* Header content follows the same horizontal guide at every breakpoint. */
.header{padding-inline:var(--gutter)}

/* A single banner carries the hospital message directly below the hero. */
#hospital.intro{position:relative;isolation:isolate;display:block;margin-block:55px 18px;padding:clamp(34px,5vw,70px);min-height:295px;border-radius:18px;overflow:hidden;background:radial-gradient(ellipse 55% 100% at 100% 0%,#c3a8c6ad,transparent 75%),radial-gradient(ellipse 65% 100% at 85% 110%,#83b8bd,transparent 75%),linear-gradient(110deg,#223b5c 8%,#466f8c 65%,#9caabc 100%);color:#fff}
#hospital.intro .eyebrow{margin:0 0 22px;color:#fff;opacity:.76;font-size:10px;letter-spacing:.18em}
#hospital.intro h2{max-width:750px;color:#fff;font-size:clamp(36px,3.9vw,58px);font-weight:350;line-height:1.13;letter-spacing:-.052em}
#hospital.intro h2 span{font-weight:450}
#hospital.intro .intro-description{max-width:670px;margin-top:24px;color:#fff;opacity:.92;font-size:clamp(12px,1.05vw,15px);line-height:1.75}
#hospital.intro .intro-description strong{font-weight:650;color:#fff}
@media(max-width:760px){#hospital.intro{display:block;margin-block:34px 6px;padding:32px 27px 36px;min-height:0;border-radius:16px;background:radial-gradient(ellipse 95% 70% at 105% 100%,#84b8bd,transparent 82%),radial-gradient(ellipse 70% 95% at 105% 0%,#ad9dbab8,transparent 80%),linear-gradient(120deg,#223b5c,#496f8e)}#hospital.intro .eyebrow{margin:0 0 20px;font-size:9px}#hospital.intro h2{font-size:clamp(32px,8vw,44px);max-width:520px}#hospital.intro .intro-description{margin-top:19px;font-size:12px;line-height:1.75}}

/* Reuse the actual Gradiente Senior surface without the hero's scanner. */
#hospital.intro{background:#e7edf2;color:var(--logo)}
#hospital .gradiente-senior{border-radius:inherit}
#hospital .gradiente-senior__fluid{opacity:.75}
#hospital .gradiente-senior__fluid--two{opacity:.36}
#hospital .gradiente-senior__grid{opacity:.16}
#hospital .intro-content{position:relative;z-index:1;max-width:790px}
#hospital.intro .eyebrow{color:#3f5874;opacity:1}
#hospital.intro h2,#hospital.intro .intro-description strong{color:#1d305e}
#hospital.intro .intro-description{color:#344b65;opacity:1}
@media(prefers-reduced-motion:reduce){.story-video-card,.story-video-preview{transition:none}}

.diagnostic-image{background:#101c28}
.diagnostic-image>.diagnostic-video{display:block;width:100%;height:100%;object-fit:cover;object-position:center 48%}
.diagnostic-image:has(>.diagnostic-video)::before{content:none}
.diagnostic-image:has(>.diagnostic-video)::after{content:none}

.hero-team .hero-image{filter:saturate(.88) brightness(1.08)}.hero-team .hero-shade{background:linear-gradient(90deg,#09142633 0%,#09142617 37%,#09142608 66%,transparent 88%),linear-gradient(0deg,#09142608,transparent 38%)}

/* Keep the site navigation visible and leave room for anchored sections. */
html{scroll-padding-top:148px}
.header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.74);-webkit-backdrop-filter:blur(22px) saturate(1.2);backdrop-filter:blur(22px) saturate(1.2);box-shadow:0 8px 28px #0914260a}
@media(max-width:1000px){html{scroll-padding-top:134px}}
@media(max-width:760px){html{scroll-padding-top:124px}}

/* Closing composition: the interactive heart and invitation share the opal surface. */
.closing-heart-button{left:25%;width:min(36%,430px)}
.closing>div.closing-copy{position:absolute;z-index:3;left:59%;right:7%;top:50%;transform:translateY(-50%);pointer-events:none}
.closing-copy .eyebrow{color:#495c71;max-width:28ch;font-size:10px;line-height:1.8;margin-bottom:23px}
.closing-copy h2{max-width:12ch;color:var(--ink);font-size:clamp(34px,3.5vw,54px);font-weight:350;line-height:1.14;letter-spacing:-.045em}
.closing-outside-actions{width:calc(100% - var(--gutter) * 2);max-width:calc(1600px - var(--gutter) * 2);margin:0 auto;display:grid;grid-template-columns:59% 1fr;justify-items:start;gap:7px;padding:18px 0 0}
.closing-outside-actions>*{grid-column:2}
.closing-outside-actions .text-link{font-size:11px;padding-block:9px}
.footer{padding-top:54px}
@media(max-width:760px){
  .closing-heart-button{left:25%;width:43%}
  .closing>div.closing-copy{left:53%;right:5%}
  .closing-copy .eyebrow{font-size:8px;line-height:1.6;margin-bottom:14px}
  .closing-copy h2{font-size:clamp(25px,4vw,34px)}
  .closing-outside-actions{grid-template-columns:53% 1fr;padding-top:16px}
}
@media(max-width:560px){
  .closing{height:510px}
  .closing-heart-button{left:50%;top:34%;width:min(57%,250px)}
  .closing>div.closing-copy{left:9%;right:9%;top:auto;bottom:10%;transform:none;text-align:center}
  .closing-copy .eyebrow{max-width:none;margin-bottom:13px}
  .closing-copy h2{max-width:none;font-size:clamp(29px,7vw,36px)}
  .closing-outside-actions{display:flex;align-items:center;flex-direction:column;padding:16px 0 0}
  .closing-outside-actions .button{font-size:12px;min-height:44px}
  .footer{padding-top:45px}
}

/* The actions sit outside the opal panel and share the invitation's right-hand guide. */
.closing{height:clamp(340px,30vw,420px)}
.closing>div.closing-copy{top:62%}
.closing-outside-actions{display:grid;grid-template-columns:59% minmax(0,1fr);gap:0;padding:10px 0 0}
.closing-action-group{grid-column:2;display:flex;align-items:center;gap:10px}
.closing-outside-actions .button{min-height:46px;padding:10px 20px;gap:19px}
.closing-call{display:inline-flex;align-items:center;justify-content:space-between;gap:11px;min-height:46px;padding:10px 14px;border:1px solid #d4dde6;border-radius:100px;background:#f3f6f9b8;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-size:11px;font-weight:500;line-height:1.2;white-space:nowrap;transition:background .25s,transform .25s var(--ease),box-shadow .25s}
.closing-call:hover{background:#e9eff5;transform:translateY(-2px);box-shadow:0 5px 18px #09142612}
.closing-call:active{transform:translateY(0)}
.closing-call>span:last-child{font-size:19px;font-weight:300;line-height:1;transition:transform .25s}
.closing-call:hover>span:last-child{transform:translate(2px,-2px)}
.closing-call-short{display:none}
@media(max-width:960px){
  .closing-outside-actions{grid-template-columns:53% minmax(0,1fr)}
  .closing-action-group{gap:8px}
  .closing-call-long{display:none}
  .closing-call-short{display:inline}
}
@media(max-width:760px){
  .closing{height:380px}
  .closing>div.closing-copy{top:65%}
}
@media(max-width:560px){
  .closing{height:440px}
  .closing-heart-button{top:32%}
  .closing>div.closing-copy{top:auto;bottom:12%;left:9%;right:9%;transform:none;text-align:left}
  .closing-copy .eyebrow{margin-bottom:10px}
  .closing-outside-actions{display:block;padding:10px 0 0}
  .closing-action-group{gap:8px;padding-inline:9%}
  .closing-outside-actions .button{padding-inline:17px;gap:16px}
  .closing-call{padding-inline:12px;gap:8px}
}

/* The diagnostic video and its complete copy share the same top and bottom guides. */
@media(min-width:761px){
  .diagnostic{align-items:stretch}
  .diagnostic-image{height:auto;min-height:540px}
  .diagnostic-image>.diagnostic-video{position:absolute;inset:0}
  .diagnostic-copy{display:flex;flex-direction:column;min-width:0}
  .diagnostic-copy>.eyebrow{margin-top:0}
  .diagnostic-copy .diagnostic-list{margin-top:auto}
  .diagnostic-copy>.text-link{align-self:flex-start}
  .desktop-nav{gap:clamp(25px,2.65vw,36px)}
  .header-actions{gap:clamp(28px,3vw,40px)}
}
@media(min-width:761px) and (max-width:849px){
  .header{gap:15px}
  .brand-name{display:block;font-size:18px}
  .brand-name>span{font-size:10px}
  .desktop-nav,.header-book{display:none}
  .header-actions{gap:17px;margin-left:auto}
  .menu-toggle{display:flex;width:28px;height:35px;padding:7px 2px;flex-direction:column;justify-content:center;gap:6px}
  .menu-toggle span{display:block;height:1px;width:22px;background:var(--ink);transition:transform .2s}
  .menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}
  .menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
  .mobile-nav:not([hidden]){display:flex}
}

/* Manual seven-service editorial slider. Each panel shares the diagnostic grid. */
.service-feature-viewport{overflow:hidden;transition:height .62s var(--ease);touch-action:pan-y pinch-zoom}
.service-feature-track{display:flex;align-items:flex-start;width:100%;transition:transform .68s var(--ease);will-change:transform}
.service-feature-slide{flex:0 0 100%;min-width:0;min-height:740px;align-items:stretch}
.service-feature-slide .diagnostic-image>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.service-feature-slide .diagnostic-copy{display:flex;flex-direction:column;min-width:0}
.service-feature-slide .diagnostic-list{margin-top:auto}
.service-feature-slide .diagnostic-copy>.text-link{align-self:flex-start}
.service-feature-nav{display:flex;align-items:center;justify-content:center;gap:6px;padding-top:26px}
.service-feature-dot{display:grid;place-items:center;width:38px;height:38px;padding:0;border-radius:50%}
.service-feature-dot span{display:block;width:11px;height:11px;border-radius:50%;background:#c4ced7;box-shadow:inset 0 1px 2px #43536a1c;transition:background .25s,transform .3s var(--ease),box-shadow .25s}
.service-feature-dot[aria-pressed=true] span{background:#315a80;transform:scale(1.27);box-shadow:0 0 0 4px #315a801b}
.service-feature-dot:hover span,.service-feature-dot:focus-visible span{background:#5c7896;transform:scale(1.2)}
@media(max-width:760px){
  .service-feature-slide{min-height:0}
  .service-feature-slide .diagnostic-image{flex:none;height:420px;min-height:0}
  .service-feature-slide .diagnostic-list{margin-top:20px}
  .service-feature-nav{padding-top:14px;gap:3px}
  .service-feature-dot{width:37px;height:40px}
}
@media(prefers-reduced-motion:reduce){
  .service-feature-viewport,.service-feature-track,.service-feature-dot span{transition:none;will-change:auto}
}

/* Quiet hero markers reveal their labels in reading order when the hero returns to view. */
.hero-orb-nav.page-frame .hero-orb,
.hero-orb-nav.page-frame .orb-care,
.hero-orb-nav.page-frame .orb-history,
.hero-orb-nav.page-frame .orb-diagnostic{
  width:10px;height:10px;border:0!important;background:#aebbc6;box-shadow:none!important;filter:none!important;
  transition:background-color .3s ease,transform .3s var(--ease)
}
.hero-orb-nav.page-frame .hero-orb-button[aria-pressed=true] .hero-orb{background:#385a7a;transform:scale(1.18)}
.hero-orb-nav.page-frame .hero-orb-button:is(:hover,:focus-visible) .hero-orb{background:#537491;transform:scale(1.16);filter:none!important}
.hero-orb-nav.page-frame .hero-orb-label,.hero-orb-nav.page-frame .hero-orb-button:first-child .hero-orb-label{font-size:11px;font-weight:450}
.hero-orb-nav.hero-orb-animated .hero-orb-button{opacity:0;transform:translateX(-13px)}
.hero-orb-nav.page-frame.hero-orb-animated .hero-orb-button .hero-orb-label{opacity:0;clip-path:inset(0 100% 0 0)}
.hero-orb-nav.hero-orb-animated.is-visible .hero-orb-button{animation:hero-orb-enter .62s var(--ease) both}
.hero-orb-nav.page-frame.hero-orb-animated.is-visible .hero-orb-button .hero-orb-label{animation:hero-orb-label-enter .55s ease both}
.hero-orb-nav.hero-orb-animated .hero-orb-button:nth-of-type(1),.hero-orb-nav.hero-orb-animated .hero-orb-button:nth-of-type(1) .hero-orb-label{animation-delay:0ms}
.hero-orb-nav.hero-orb-animated .hero-orb-button:nth-of-type(2),.hero-orb-nav.hero-orb-animated .hero-orb-button:nth-of-type(2) .hero-orb-label{animation-delay:140ms}
.hero-orb-nav.hero-orb-animated .hero-orb-button:nth-of-type(3),.hero-orb-nav.hero-orb-animated .hero-orb-button:nth-of-type(3) .hero-orb-label{animation-delay:280ms}
.hero-orb-nav.hero-orb-animated .hero-orb-button:nth-of-type(4),.hero-orb-nav.hero-orb-animated .hero-orb-button:nth-of-type(4) .hero-orb-label{animation-delay:420ms}
@keyframes hero-orb-enter{to{opacity:1;transform:translateX(0)}}
@keyframes hero-orb-label-enter{to{opacity:1;clip-path:inset(0 0 0 0)}}
@media(max-width:760px){
  .hero{height:calc(100svh - 270px)}
  .hero-orb-nav.page-frame .hero-orb-label,.hero-orb-nav.page-frame .hero-orb-button:first-child .hero-orb-label{font-size:10px}
}
@media(prefers-reduced-motion:reduce){
  .hero-orb-nav.hero-orb-animated .hero-orb-button,.hero-orb-nav.hero-orb-animated .hero-orb-label{animation:none;opacity:1;transform:none;clip-path:none}
}

/* Career invitation joins the closing actions without squeezing the contact links. */
.closing-action-group{flex-wrap:wrap;justify-content:space-between}
.closing-action-group .careers-link{margin-left:0;border-color:#d4dde6;background:#f3f6f9b8}

/* Seven service indicators echo the hero spheres, without visible captions. */
.service-feature-dot span{width:10px;height:10px;background:#aebbc6;box-shadow:none}
.service-feature-dot[aria-pressed=true] span{background:#385a7a;transform:scale(1.18);box-shadow:none}
.service-feature-dot:hover span,.service-feature-dot:focus-visible span{background:#537491;transform:scale(1.16);box-shadow:none}
.service-feature-nav.feature-nav-animated .service-feature-dot{opacity:0;transform:translateX(-13px)}
.service-feature-nav.feature-nav-animated.is-visible .service-feature-dot{animation:service-dot-enter .58s var(--ease) both}
.service-feature-nav.feature-nav-animated .service-feature-dot:nth-child(1){animation-delay:0ms}
.service-feature-nav.feature-nav-animated .service-feature-dot:nth-child(2){animation-delay:110ms}
.service-feature-nav.feature-nav-animated .service-feature-dot:nth-child(3){animation-delay:220ms}
.service-feature-nav.feature-nav-animated .service-feature-dot:nth-child(4){animation-delay:330ms}
.service-feature-nav.feature-nav-animated .service-feature-dot:nth-child(5){animation-delay:440ms}
.service-feature-nav.feature-nav-animated .service-feature-dot:nth-child(6){animation-delay:550ms}
.service-feature-nav.feature-nav-animated .service-feature-dot:nth-child(7){animation-delay:660ms}
@keyframes service-dot-enter{to{opacity:1;transform:translateX(0)}}
@media(prefers-reduced-motion:reduce){.service-feature-nav.feature-nav-animated .service-feature-dot{animation:none;opacity:1;transform:none}}

/* Pharmacy portrait keeps the corrected cabinet geometry and both people in frame. */
.service-panel[data-service="prevencion"]>img{object-position:50% 44%}
.service-feature-slide[data-feature-slide="prevencion"] .diagnostic-image>img{object-position:50% 44%}

/* The facade bridges the maps and the closing heart without adding another reading layer. */
.facade-bridge{position:relative;width:100%;aspect-ratio:2.197/1;margin:22px 0 0;overflow:hidden;border:1px solid #e8edf1;border-radius:22px;background:#e9eff3;box-shadow:0 18px 55px #26384b0a}.facade-bridge img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.88) contrast(.98);transition:transform 1.1s var(--ease),filter .8s ease}.facade-bridge:hover img{transform:scale(1.012);filter:saturate(.94) contrast(1)}
@media(max-width:760px){.facade-bridge{margin-top:16px;border-radius:17px}}
@media(prefers-reduced-motion:reduce){.facade-bridge img{transition:none}.facade-bridge:hover img{transform:none}}

/* FAQ follows the facade as a quieter editorial layer: native details keep it accessible and lightweight. */
.faq{display:grid;grid-template-columns:minmax(240px,.75fr) minmax(0,1.25fr);gap:clamp(38px,8vw,120px);align-items:start;padding-block:30px 74px}.faq-copy{padding-top:9px}.faq-copy .eyebrow{margin-bottom:21px}.faq-copy h2{font-size:clamp(32px,3.4vw,50px);line-height:1.08}.faq-copy>p:last-child{max-width:330px;margin-top:25px;font-size:13px;line-height:1.8;color:var(--muted)}.faq-list{border-top:1px solid #dbe3ea}.faq-item{border-bottom:1px solid #dbe3ea}.faq-item summary{position:relative;display:flex;align-items:center;justify-content:space-between;gap:25px;list-style:none;cursor:pointer;padding:21px 1px 20px;color:var(--ink);font-size:15px;line-height:1.45;font-weight:500;transition:color .22s var(--ease),padding-left .22s var(--ease)}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:hover{color:#355f80;padding-left:6px}.faq-item summary:focus-visible{outline:2px solid #48789c;outline-offset:4px;border-radius:3px}.faq-item summary i{position:relative;display:block;flex:none;width:27px;height:27px;border:1px solid #d1dce6;border-radius:50%;transition:background .25s var(--ease),border-color .25s var(--ease),transform .25s var(--ease)}.faq-item summary i:before,.faq-item summary i:after{content:'';position:absolute;top:50%;left:50%;width:9px;height:1px;background:var(--ink);transform:translate(-50%,-50%);transition:transform .25s var(--ease)}.faq-item summary i:after{transform:translate(-50%,-50%) rotate(90deg)}.faq-item[open] summary{padding-left:6px;color:#355f80}.faq-item[open] summary i{background:#edf3f7;border-color:#b5c8d7;transform:rotate(180deg)}.faq-item[open] summary i:after{transform:translate(-50%,-50%) rotate(0)}.faq-answer{padding:0 54px 22px 7px}.faq-answer p{max-width:700px;font-size:12px;line-height:1.85;color:var(--muted);animation:faq-answer-in .34s var(--ease) both}@keyframes faq-answer-in{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:none}}@media(max-width:760px){.faq{grid-template-columns:1fr;gap:29px;padding-block:17px 52px}.faq-copy{padding-top:0}.faq-copy .eyebrow{margin-bottom:18px}.faq-copy h2{font-size:34px}.faq-copy>p:last-child{margin-top:19px;font-size:12px}.faq-item summary{font-size:13px;padding-block:18px}.faq-item summary:hover,.faq-item[open] summary{padding-left:3px}.faq-answer{padding:0 39px 19px 3px}.faq-answer p{font-size:11px;line-height:1.8}}@media(prefers-reduced-motion:reduce){.faq-item summary,.faq-item summary i,.faq-item summary i:before,.faq-item summary i:after{transition:none}.faq-answer p{animation:none}}

/* Native snapping returns as soon as a visitor pauses or handles the service rail. */
#service-panels.service-panels.is-auto-moving{scroll-snap-type:none}

/* Bring these two team portraits to the same visual distance as their neighbors. */
.team-image img.portrait-daniel,.team-image img.portrait-camila-jurado{object-position:center top;transform-origin:center top;transform:scale(var(--portrait-scale))}
.team-image img.portrait-daniel{--portrait-scale:1.18;--portrait-hover-scale:1.22}
.team-image img.portrait-camila-jurado{--portrait-scale:1.16;--portrait-hover-scale:1.20}
.team-card:hover .team-image img.portrait-daniel,.team-card:hover .team-image img.portrait-camila-jurado{transform:scale(var(--portrait-hover-scale))}
@media(max-width:760px){.team-grid.is-expanded .team-image img.portrait-daniel{--portrait-scale:1.10;--portrait-hover-scale:1.13}.team-grid.is-expanded .team-image img.portrait-camila-jurado{--portrait-scale:1.08;--portrait-hover-scale:1.11}}


/* Editorial labels no longer need ordinal badges; keep the cards anchored to their grid. */
.story-video-card .story-card-copy{margin-top:auto}
.history-timeline .timeline-card summary{grid-template-columns:minmax(0,1fr);gap:0}
.history-timeline .timeline-detail{padding-left:12px}

/* Archivo fotográfico: una franja silenciosa anclada a la misma retícula de la historia. */
.history-archive-banner{grid-column:1/-1;width:100%;height:clamp(220px,26vw,360px);margin:clamp(34px,5vw,64px) 0 0;border-radius:18px;overflow:hidden;background:#edf2f5}
.history-archive-banner img{width:100%;height:100%;object-fit:cover;object-position:center 52%;filter:saturate(.88) contrast(.97)}
@media(max-width:760px){.history-archive-banner{height:250px;margin-top:34px;border-radius:16px}.history-archive-banner img{object-position:center 54%}}

/* A fifth editorial cover shares the same hero grid and leads to the orthopedic story. */
.hero-orthopedics-backdrop{position:absolute;inset:0;background:linear-gradient(115deg,#142a3b,#516f7a 70%,#acb8b6)}
.hero-orthopedics-image{position:absolute;right:0;top:0;width:53%;height:100%;object-fit:cover;object-position:center 57%;mask-image:linear-gradient(90deg,transparent,#000 14%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 14%)}
.hero-orthopedics .hero-copy{max-width:54%;padding-right:25px}
.hero-orthopedics .hero-copy>p{max-width:43ch}
.hero-orthopedics .hero-shade{background:linear-gradient(90deg,#091426c9 0%,#09142682 45%,#0914260f 80%)}
.hero-orb-nav.hero-orb-animated .hero-orb-button:nth-of-type(5),.hero-orb-nav.hero-orb-animated .hero-orb-button:nth-of-type(5) .hero-orb-label{animation-delay:560ms}
@media(max-width:760px){
  .hero-orthopedics .hero-copy{max-width:100%;padding-top:62px;padding-right:25px}
  .hero-orthopedics .hero-copy>p{max-width:37ch;font-size:12px;line-height:1.75}
  .hero-orthopedics-image{top:auto;bottom:0;width:100%;height:62%;object-position:center 60%;mask-image:linear-gradient(180deg,transparent,#000 28%);-webkit-mask-image:linear-gradient(180deg,transparent,#000 28%)}
  .hero-orb-nav.page-frame{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(122px,1fr);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scroll-padding-inline:4px;scrollbar-width:none}
  .hero-orb-nav.page-frame::-webkit-scrollbar{display:none}
  .hero-orb-nav.page-frame .hero-orb-button{scroll-snap-align:start;min-height:64px}
}
