@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&family=Space+Grotesk:wght@500;600;700&display=swap');
:root{--ink:#18332f;--cream:#f6f3ed;--coral:#ee8a72;--mint:#cbe5d5;--blue:#b8d8df;--yellow:#f6d36c}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:'DM Sans',sans-serif;background:var(--cream)}a{color:inherit;text-decoration:none}.notice{background:#18332f;color:#fff;text-align:center;font-size:12px;padding:9px 16px}.site-header{padding:26px 6vw;border-bottom:1px solid #d8ddd5}.top{max-width:1240px;margin:auto;display:flex;align-items:center;gap:42px}.brand,.footer-brand{font:700 34px 'Space Grotesk';letter-spacing:-2px}.brand span,.footer-brand span{color:#e96855;margin-left:3px}nav{display:flex;gap:28px;font-size:15px;margin-left:auto}nav a:hover,.footer-links a:hover{color:#e96855}.search,.menu{border:0;background:none;color:var(--ink);font:500 15px inherit;cursor:pointer}.search{font-size:27px}.menu{display:none}.hero{max-width:1240px;margin:auto;padding:75px 6vw 80px;display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:1.7px;font-size:11px;font-weight:700;color:#5f7871;margin:0 0 20px}.hero h1,h2{font:600 clamp(45px,6vw,82px)/.98 'Space Grotesk';letter-spacing:-3px;margin:0 0 27px}.hero h1 em{color:#e96855;font-style:normal}.intro{font-size:19px;line-height:1.6;max-width:510px}.actions{display:flex;align-items:center;gap:28px;margin-top:34px}.button{display:inline-flex;align-items:center;gap:18px;font-weight:700}.button.primary{background:var(--ink);color:#fff;padding:16px 23px;border-radius:2px}.button.text{border-bottom:1px solid var(--ink);padding-bottom:6px}.button.text span{font-size:22px}.hero-art{height:490px;position:relative;overflow:hidden;background:var(--yellow);border-radius:48% 48% 0 0}.sun{position:absolute;width:230px;height:230px;border-radius:50%;background:#f7b27f;top:56px;right:60px}.shape{position:absolute;border-radius:50%}.one{width:360px;height:360px;background:var(--coral);left:-80px;bottom:-110px}.two{width:250px;height:250px;background:var(--mint);right:-40px;bottom:-60px}.three{width:95px;height:95px;border:18px solid var(--ink);left:45%;top:210px}.label{position:absolute;bottom:35px;left:35px;font:600 26px/1.05 'Space Grotesk'}.quick{background:var(--ink);color:white;padding:21px 6vw;display:flex;justify-content:space-between;align-items:center}.quick div{display:flex;gap:20px}.quick span{color:#c5d7cf}.quick a{color:var(--yellow);font-weight:700}.section,.split,.news{max-width:1240px;margin:auto;padding:100px 6vw}.section-head{max-width:670px}.section h2,.split h2,.news h2{font-size:55px;letter-spacing:-2px}.section-head>p:last-child,.split-copy>p:not(.eyebrow){font-size:18px;line-height:1.65}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:50px}.card{min-height:295px;padding:27px;display:flex;flex-direction:column;transition:transform .2s}.card:hover{transform:translateY(-5px)}.card.coral{background:var(--coral)}.card.mint{background:var(--mint)}.card.blue{background:var(--blue)}.card span{font-size:12px}.card h3{font:600 31px 'Space Grotesk';margin:52px 0 10px}.card p{line-height:1.5;margin:0;max-width:260px}.card b{margin-top:auto;font-size:25px}.split{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:center}.photo{height:450px;background:var(--blue);position:relative;overflow:hidden}.photo:before{content:'';position:absolute;width:350px;height:500px;background:var(--mint);border-radius:50%;left:12%;top:-80px;transform:rotate(25deg)}.circle{position:absolute;z-index:1;right:16%;bottom:15%;width:150px;height:150px;border-radius:50%;display:grid;place-items:center;background:var(--coral);font:700 26px 'Space Grotesk'}.split h2{font-size:53px}.news{background:#fff;max-width:none;padding-left:calc((100% - 1240px)/2 + 6vw);padding-right:calc((100% - 1240px)/2 + 6vw)}.news-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.news article{padding:28px 0;border-top:2px solid var(--ink)}.news small{font-size:11px;letter-spacing:1px}.news h3{font:600 28px 'Space Grotesk';max-width:380px}.news a{font-weight:700}footer{background:var(--ink);color:#fff;padding:70px 6vw 35px;display:grid;grid-template-columns:1fr 1fr;gap:20px}footer p{max-width:280px;line-height:1.5}.footer-links{display:flex;gap:25px;justify-content:flex-end}.footer-links a{color:var(--yellow)}footer small{grid-column:1/-1;color:#afc2b9;margin-top:45px}@media(max-width:700px){.top{gap:18px}.top nav{display:none}.top nav.open{display:flex;position:absolute;top:88px;left:0;right:0;background:var(--cream);padding:25px 6vw;flex-direction:column;z-index:2}.menu{display:block;margin-left:auto}.hero,.split{grid-template-columns:1fr;padding-top:55px}.hero-art{height:330px}.hero h1{font-size:55px}.quick{display:block}.quick div{display:block;margin-bottom:12px}.cards,.news-grid{grid-template-columns:1fr}.section,.split,.news{padding:70px 6vw}.section h2,.split h2,.news h2{font-size:43px}footer{grid-template-columns:1fr}.footer-links{justify-content:flex-start;flex-wrap:wrap}}
.modal{position:fixed;inset:0;background:#18332fcc;display:grid;place-items:center;padding:20px;z-index:5}.modal[aria-hidden=true]{display:none}.modal-card{background:var(--cream);max-width:680px;width:100%;padding:42px;position:relative}.modal-card h2{font-size:42px}.modal-close{position:absolute;right:18px;top:12px;border:0;background:none;font-size:32px;cursor:pointer;color:var(--ink)}#search-form{display:flex;gap:10px}#search-input{flex:1;border:1px solid #b6c5bd;background:white;padding:15px;font:inherit}body.locked{overflow:hidden}
.detail-page{max-width:1240px;margin:auto;padding:100px 6vw 150px;min-height:75vh}.detail-page h1{font:600 clamp(48px,7vw,92px)/.98 'Space Grotesk';letter-spacing:-4px;max-width:900px;margin:0 0 32px;color:var(--ink)}.detail-lead{font-size:23px;line-height:1.55;max-width:760px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:70px}.detail-grid article{padding:32px;background:var(--mint);min-height:240px}.detail-grid article+article{background:var(--coral)}.detail-grid h2{font-size:32px;letter-spacing:-1px;margin:0 0 18px}.detail-grid p{font-size:17px;line-height:1.5}@media(max-width:700px){.detail-page{padding:65px 6vw 100px}.detail-page h1{font-size:52px}.detail-lead{font-size:19px}.detail-grid{grid-template-columns:1fr;margin-top:45px}}
.utility{max-width:1240px;margin:auto;padding:9px 6vw;display:flex;justify-content:flex-end;gap:24px;border-bottom:1px solid #d8ddd5;font-size:12px}.utility span{margin-right:auto;color:#5f7871}.utility a:last-child{color:#c94f3f;font-weight:700}.emergency-page{max-width:1240px;margin:auto;padding:36px 6vw 120px}.breadcrumbs{display:flex;gap:10px;font-size:13px;color:#667a73;margin-bottom:65px}.breadcrumbs a{color:#c94f3f}.emergency-page h1{font:600 clamp(45px,6vw,78px)/1 'Space Grotesk';letter-spacing:-3px;max-width:850px;margin:0 0 24px}.emergency-alert{margin:42px 0;background:#f3d36a;border-left:8px solid #c94f3f;padding:24px 28px;display:flex;gap:18px;font-size:19px}.emergency-alert a{color:#b6382c;font-weight:700;font-size:25px}.emergency-layout{display:grid;grid-template-columns:250px 1fr;gap:80px;margin-top:65px;border-top:1px solid #cfd8d2;padding-top:40px}.emergency-layout aside{display:flex;flex-direction:column;gap:16px;align-self:start;position:sticky;top:20px}.emergency-layout aside h3{font:600 21px 'Space Grotesk';margin:0 0 8px}.emergency-layout aside a{font-size:14px;color:#526b63}.emergency-layout aside a:hover{color:#c94f3f}.emergency-content section{padding-bottom:42px;margin-bottom:42px;border-bottom:1px solid #d8ddd5}.emergency-content h2{font-size:38px;letter-spacing:-1px;margin:0 0 18px}.emergency-content p,.emergency-content li{font-size:18px;line-height:1.65}.emergency-content ul{padding-left:20px}.address{display:inline-block;background:#cbe5d5;padding:22px 28px;line-height:1.7;margin-top:12px}.address a{color:#b6382c;font-weight:700}@media(max-width:700px){.utility{padding:8px 6vw}.utility span{display:none}.emergency-page{padding-top:25px}.breadcrumbs{margin-bottom:42px}.emergency-layout{grid-template-columns:1fr;gap:35px}.emergency-layout aside{position:static;background:#e6eee8;padding:20px}.emergency-alert{display:block}.emergency-alert span{display:block;margin-top:8px}}
:root{--ease-out:cubic-bezier(.23,1,.32,1);--focus:#b6382c}*{scroll-behavior:smooth}a,button,input{outline-offset:4px}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.button,nav a,.card,.search,.menu,.utility a{transition:transform 180ms var(--ease-out),color 180ms ease,background-color 180ms ease}.button:active,.search:active,.menu:active{transform:scale(.97)}.card:hover{transform:translateY(-4px)}.modal-card{animation:modal-in 220ms var(--ease-out)}@keyframes modal-in{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}.eyebrow{text-transform:none;letter-spacing:.08em}.site-header{background:rgba(246,243,237,.96);position:sticky;top:0;z-index:4;backdrop-filter:blur(12px)}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
.scroll-progress{position:fixed;z-index:9;top:0;left:0;width:100%;height:3px;background:transparent;pointer-events:none}.scroll-progress span{display:block;height:100%;width:100%;background:var(--coral);transform:scaleX(0);transform-origin:left;will-change:transform}.header-actions{display:flex;align-items:center;gap:18px}.portal{font-size:13px;font-weight:700;color:var(--ink);border:1px solid #b7c9c0;padding:10px 14px;transition:background-color 180ms ease,transform 180ms var(--ease-out)}.portal:hover{background:var(--mint)}.portal:active{transform:scale(.97)}.utility-emergency{font-weight:700;color:#b6382c!important}.reveal{opacity:0;transform:translateY(18px);transition:opacity 500ms var(--ease-out),transform 500ms var(--ease-out);transition-delay:var(--reveal-delay,0ms)}.reveal.is-visible{opacity:1;transform:none}.detail-page,.emergency-page{animation:page-in 260ms var(--ease-out)}@keyframes page-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(hover:hover) and (pointer:fine){.button:hover{transform:translateY(-2px)}.card:hover{transform:translateY(-5px)}.portal:hover{transform:translateY(-1px)}}@media(max-width:700px){.portal{display:none}.header-actions{margin-left:auto}.reveal{transform:translateY(10px);transition-duration:380ms}}@media(prefers-reduced-motion:reduce){.reveal,.detail-page,.emergency-page{opacity:1;transform:none;animation:none;transition:opacity 180ms ease}.scroll-progress{display:none}}
/* Meng To polish pass: quiet depth, stronger hierarchy, and deliberate surfaces. */
:root{--surface:#fffdf9;--line:rgba(24,51,47,.12);--shadow:0 18px 50px rgba(24,51,47,.08)}body{background:linear-gradient(180deg,#f8f6f1 0%,var(--cream) 38%,#fbfaf7 100%)}.gradient-blur{position:fixed;z-index:3;inset:0 0 auto 0;height:92px;pointer-events:none}.gradient-blur>div,.gradient-blur::before,.gradient-blur::after{position:absolute;inset:0}.gradient-blur::before{content:'';z-index:1;backdrop-filter:blur(.5px);mask:linear-gradient(to top,transparent 0%,#000 30%,#000 55%,transparent 75%)}.gradient-blur>div:nth-of-type(1){z-index:2;backdrop-filter:blur(1px);mask:linear-gradient(to top,transparent 15%,#000 40%,#000 65%,transparent 85%)}.gradient-blur>div:nth-of-type(2){z-index:3;backdrop-filter:blur(2px);mask:linear-gradient(to top,transparent 30%,#000 55%,#000 75%,transparent 95%)}.gradient-blur>div:nth-of-type(3){z-index:4;backdrop-filter:blur(4px);mask:linear-gradient(to top,transparent 45%,#000 65%,#000 85%,transparent 100%)}.gradient-blur::after{content:'';z-index:5;background:rgba(246,243,237,.56);mask:linear-gradient(to top,transparent 45%,#000 80%)}.site-header{z-index:4;border-bottom:1px solid var(--line);box-shadow:0 8px 24px rgba(24,51,47,.03)}.hero{padding-top:96px}.hero-copy{position:relative;z-index:1}.hero h1{max-width:650px}.hero-art{border-radius:28px;box-shadow:var(--shadow);isolation:isolate}.hero-art::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,transparent 0 48%,rgba(255,255,255,.18) 48% 49%,transparent 49% 100%),linear-gradient(rgba(24,51,47,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(24,51,47,.07) 1px,transparent 1px);background-size:auto,32px 32px,32px 32px;mix-blend-mode:multiply;opacity:.32;pointer-events:none}.quick{position:relative;z-index:1}.cards{gap:22px}.card{border:1px solid rgba(24,51,47,.08);border-radius:16px;box-shadow:0 8px 24px rgba(24,51,47,.05);overflow:hidden;position:relative}.card::before{content:'';position:absolute;inset:0 0 auto;height:5px;background:rgba(24,51,47,.22);transform:scaleX(0);transform-origin:left;transition:transform 220ms var(--ease-out)}.card:hover::before{transform:scaleX(1)}.card h3{margin-top:44px}.split .photo{border-radius:24px;box-shadow:var(--shadow)}.news{border-top:1px solid var(--line)}.news article{transition:transform 180ms var(--ease-out),border-color 180ms ease}.news article:hover{transform:translateY(-3px);border-color:var(--coral)}.button.primary{border-radius:10px;box-shadow:0 8px 18px rgba(24,51,47,.15)}.button.text{border-bottom-width:2px}.detail-grid article{border-radius:16px;box-shadow:0 12px 30px rgba(24,51,47,.06)}.emergency-alert{border-radius:12px;box-shadow:0 10px 22px rgba(198,110,50,.12)}.address{border-radius:12px}.modal-card{border-radius:18px;box-shadow:0 24px 80px rgba(0,0,0,.2)}@media(max-width:700px){.gradient-blur{height:76px}.hero{padding-top:64px}.hero-art{border-radius:20px}.cards{gap:14px}.card{min-height:250px}.utility{position:relative;z-index:5}}
/* Motion stability: reveal owns entry transform; hover owns transform only after entry. */
.reveal{will-change:opacity,transform;pointer-events:none}.reveal.is-visible{pointer-events:auto}.reveal.card:hover{transform:none}.reveal.card.is-visible:hover{transform:translateY(-5px)}.reveal.news article:hover,.reveal.detail-grid article:hover{transform:none}.reveal.news article.is-visible:hover,.reveal.detail-grid article.is-visible:hover{transform:translateY(-3px)}.reveal{transition:opacity 420ms var(--ease-out),transform 420ms var(--ease-out)}.reveal.is-visible{transition-delay:0ms}.detail-page,.emergency-page{animation:none}.modal-card{animation:modal-in 180ms var(--ease-out)}
@media(prefers-reduced-motion:reduce){.reveal{will-change:auto;transition:opacity 160ms ease}.reveal:not(.is-visible){opacity:0;transform:none}}

/* ZGFK 2026 design system: calm, clinical, and easy to scan. */
:root{--ink:#123b47;--ink-soft:#45636b;--blue:#076b89;--blue-dark:#075264;--sky:#edf7f8;--coral:#d95f4b;--coral-dark:#a83d31;--line:#d5e3e5;--paper:#fff;--max:1240px;--ease-out:cubic-bezier(.23,1,.32,1)}
html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.5}.skip-link{position:fixed;left:1rem;top:.75rem;z-index:100;padding:.7rem 1rem;background:var(--ink);color:#fff;transform:translateY(-180%);transition:transform 160ms var(--ease-out)}.skip-link:focus{transform:none}.utility{background:var(--ink);color:#e8f3f4;border:0}.utility-inner{min-height:34px;padding:.35rem 2rem;max-width:var(--max);font-size:.76rem}.utility-links{display:flex;gap:1.1rem}.utility-links a{color:#e8f3f4}.language-switch{border-left:1px solid #5c7b84;padding-left:.8rem;background:none;border-radius:0}.language-switch button{color:#e8f3f4;padding:.2rem .45rem;border-radius:3px}.language-switch button.active{background:#fff;color:var(--ink)}.top{min-height:82px;padding:0 2rem;max-width:var(--max);gap:2.4rem}.site-header{box-shadow:0 4px 18px rgba(18,59,71,.08);border-bottom:1px solid var(--line)}.brand-lockup{display:inline-flex;align-items:center;position:relative}.brand-lockup img{width:142px;height:auto}.orbit-plus{position:absolute;right:-15px;top:-7px;color:var(--coral);font:800 1.3rem/1 system-ui}.top nav{gap:1.25rem}.nav-label{font-size:.72rem;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.08em;margin-right:.15rem}.top nav a{padding:1.8rem 0;border-bottom:3px solid transparent;font-size:.9rem;font-weight:700}.top nav a:hover,.top nav a[aria-current=page]{border-bottom-color:var(--coral);color:var(--blue-dark)}.header-actions{gap:.65rem}.portal{background:var(--blue);border:0;color:#fff;padding:.72rem 1rem;border-radius:4px}.portal:hover{background:var(--blue-dark)}.menu{border:1px solid var(--line);border-radius:4px;padding:.65rem .8rem}.urgent-bar{background:#fff1ed;color:var(--ink);border-bottom:1px solid #f1c9c1;padding:.8rem 1.25rem;gap:1rem}.urgent-bar strong{font-weight:800}.urgent-bar span{color:var(--ink-soft)}.urgent-bar a{background:var(--coral-dark);border-radius:4px;padding:.5rem .85rem;color:#fff}.institution-hero{max-width:var(--max);padding:4.5rem 2rem 4rem;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:4.5rem}.hero-panel{padding:1.5rem 0}.eyebrow{font-size:.78rem;letter-spacing:.02em;text-transform:none;color:var(--blue);font-weight:800}.hero-panel h1{font-size:clamp(3.2rem,6vw,5.6rem);line-height:1;letter-spacing:-.07em;margin:1rem 0 1.4rem;max-width:650px}.hero-panel>p:not(.eyebrow){font-size:1.12rem;color:var(--ink-soft);max-width:540px}.hero-actions{margin-top:2rem;gap:.8rem}.button{border-radius:4px;min-height:48px;padding:.8rem 1.15rem}.button.primary{background:var(--coral);box-shadow:0 6px 16px rgba(168,61,49,.18)}.button.primary:hover{background:var(--coral-dark)}.button.outline{border:1px solid var(--blue);color:var(--blue);background:#fff}.button.outline:hover{background:var(--sky)}.hero-note{display:flex;gap:.6rem;align-items:center;margin-top:1.5rem!important;font-size:.87rem!important;color:var(--ink-soft)!important}.hero-note span{color:#5ba67b;font-size:.75rem}.hero-image{min-height:440px;border-radius:16px;box-shadow:0 18px 45px rgba(18,59,71,.14);background:var(--sky)}.hero-image img{object-fit:cover}.image-caption{background:rgba(7,82,100,.92);padding:.85rem 1rem;font-size:.82rem}.priority-grid{max-width:var(--max);grid-template-columns:repeat(4,1fr);gap:1rem;margin:0 auto 4rem;padding:0 2rem}.priority-grid a{border-top:4px solid var(--blue);background:var(--sky);min-height:158px;padding:1.25rem 1.2rem;display:grid;align-content:start;gap:.35rem;transition:transform 180ms var(--ease-out),background-color 180ms ease}.priority-grid a:hover{background:#e1f0f2;transform:translateY(-3px)}.priority-grid .priority-alert{border-color:var(--coral);background:#fff4f1}.priority-grid .priority-alert:hover{background:#ffebe7}.priority-kicker{font-size:.72rem;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.08em}.priority-grid strong{font-size:1.12rem;line-height:1.2}.priority-grid a>span:not(.priority-kicker){color:var(--ink-soft);font-size:.9rem}.priority-grid b{margin-top:auto;justify-self:end;color:var(--blue);font-size:1.3rem}.priority-alert b{color:var(--coral-dark);font-size:1rem}.directory-section{max-width:var(--max);padding:5rem 2rem 5.5rem}.section-intro{margin-bottom:2.5rem}.section-intro h2{font-size:clamp(2.2rem,4vw,3.7rem);max-width:720px;letter-spacing:-.055em}.section-intro>p:last-child{color:var(--ink-soft);max-width:650px}.directory-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.directory-grid a{min-height:122px;padding:1.2rem 1rem;border-bottom:1px solid var(--line);position:relative;color:var(--ink);font-weight:750}.directory-grid a::after{background:var(--coral)}.directory-grid a:hover{background:var(--sky)}.story-section{max-width:none;padding:0 max(2rem,calc((100vw - var(--max))/2 + 2rem)) 6rem;display:grid;grid-template-columns:1.1fr .9fr;gap:4.5rem;align-items:center}.story-image{position:relative;min-height:340px;overflow:hidden;border-radius:16px}.story-image img{width:100%;height:100%;object-fit:cover;display:block}.story-image>span{position:absolute;left:1rem;bottom:1rem;background:var(--ink);color:#fff;padding:.45rem .7rem;font-size:.76rem}.story-copy{max-width:520px}.story-copy h2,.experience-section h2{font-size:clamp(2.2rem,4vw,3.8rem);letter-spacing:-.06em;line-height:1.04}.text-link{color:var(--blue);font-weight:800;text-decoration:underline;text-underline-offset:4px}.experience-section{max-width:none;background:var(--ink);color:#fff;padding:5.5rem max(2rem,calc((100vw - var(--max))/2 + 2rem));display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.experience-section .eyebrow{color:#9fd5d9}.experience-section p{color:#c8dadd}.experience-section .text-link{color:#fff}.rating{justify-self:end;border-left:1px solid #5c7b84;padding-left:3rem;min-width:250px}.rating strong{display:block;font-size:5rem;line-height:1;letter-spacing:-.08em}.rating strong span{font-size:1.5rem;letter-spacing:0;color:#9fd5d9}.rating span{color:#c8dadd}.rating-line{margin-top:1.5rem;background:#436773;height:5px;max-width:230px}.rating-line i{display:block;width:94%;height:100%;background:var(--coral)}footer{background:var(--sky);padding:4rem max(2rem,calc((100vw - var(--max))/2 + 2rem)) 1.5rem}.footer-top{grid-template-columns:1.35fr repeat(2,1fr);gap:3rem}.footer-brand p{color:var(--ink-soft)}.footer-column a{color:var(--ink-soft)}.footer-column a:hover{color:var(--coral-dark)}.footer-bottom{color:var(--ink-soft);border-color:var(--line)}
.detail-page{max-width:var(--max);padding:2.8rem 2rem 7rem}.detail-hero{display:grid;grid-template-columns:1fr .85fr;gap:4rem;align-items:center;margin-bottom:4.5rem}.detail-page h1{font-size:clamp(3rem,6vw,5.5rem);letter-spacing:-.07em}.detail-lead{font-size:1.2rem;color:var(--ink-soft);max-width:650px}.detail-hero-image{border-radius:16px;overflow:hidden;background:var(--sky);box-shadow:0 14px 35px rgba(18,59,71,.12)}.detail-hero-image img{width:100%;height:100%;object-fit:cover}.prose{max-width:850px}.prose section{padding:0 0 2.8rem;margin:0 0 2.8rem}.prose h2{font-size:2rem;letter-spacing:-.04em}.prose p{font-size:1.08rem;line-height:1.75;color:var(--ink-soft)}.booking{background:var(--sky);padding:2rem;border-left:5px solid var(--blue);border-radius:8px}.booking h2{font-size:2rem}.booking input,.booking select{border:1px solid #9dbcc2;border-radius:4px}.ticket{border-color:var(--blue);background:#fff}.modal-card{border-radius:12px}
@media(max-width:900px){.top{padding:0 1.25rem}.top nav{display:none}.top nav.open{display:flex;position:absolute;left:0;right:0;top:100%;padding:1rem 1.25rem;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 12px 20px rgba(18,59,71,.12);flex-direction:column;gap:0;z-index:25}.top nav.open .nav-label{padding:.5rem 0}.top nav.open a{padding:.8rem 0;border-bottom:1px solid var(--line)}.menu{display:block}.institution-hero,.story-section,.experience-section{grid-template-columns:1fr;gap:2.5rem}.institution-hero{padding:3rem 1.25rem}.priority-grid,.directory-section{padding-left:1.25rem;padding-right:1.25rem}.priority-grid{grid-template-columns:repeat(2,1fr)}.story-section,.experience-section{padding-left:1.25rem;padding-right:1.25rem}.rating{justify-self:start;border-left:0;border-top:1px solid #5c7b84;padding:2rem 0 0}.detail-hero{grid-template-columns:1fr;gap:2rem}.footer-top{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.utility-inner{padding:.35rem 1rem}.utility-inner>span,.utility-links{display:none}.top{min-height:72px}.brand-lockup img{width:116px}.portal{display:none}.institution-hero{padding-top:2.2rem}.hero-panel h1{font-size:3.2rem}.hero-image{min-height:280px;border-radius:12px}.priority-grid,.directory-grid{grid-template-columns:1fr}.priority-grid{margin-bottom:2rem}.directory-section{padding-top:3.5rem}.story-section{padding-bottom:4rem}.experience-section{padding-top:4rem;padding-bottom:4rem}.rating strong{font-size:4.2rem}.footer-top{grid-template-columns:1fr}.footer-bottom{gap:.8rem}.detail-page{padding:2rem 1.25rem 5rem}.detail-page h1{font-size:3rem}.detail-hero-image{aspect-ratio:4/3}.booking{padding:1.25rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.priority-grid a,.skip-link{transition:none}.priority-grid a:hover{transform:none}}

/* Restore the intentional rhythm: quick actions travel in one calm row. */
.priority-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch}.priority-grid a{min-height:170px}.priority-grid a strong{max-width:15ch}.priority-grid .priority-alert{display:grid}
.reveal{opacity:0;transform:translateY(24px);transition:opacity 520ms var(--ease-out),transform 520ms var(--ease-out);transition-delay:var(--reveal-delay,0ms);will-change:opacity,transform}.reveal.is-visible{opacity:1;transform:none}.reveal.priority-grid.is-visible{transition-delay:80ms}.reveal.story-section.is-visible,.reveal.experience-section.is-visible{transition-delay:40ms}
@media(max-width:900px){.priority-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.priority-grid{grid-template-columns:1fr}.priority-grid a{min-height:138px}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

/* Header alignment: keep the logo and visit links on the same baseline. */
.site-header .top{display:flex;flex-wrap:nowrap;align-items:center;gap:2.5rem;min-height:82px;padding-top:0;padding-bottom:0}
.site-header .top nav{display:flex;align-items:center;align-self:center;gap:clamp(1rem,2vw,2rem);flex:1;min-width:0}
.site-header .top nav a{display:block;min-height:0;padding:1.8rem 0;white-space:nowrap;text-align:left}
@media(max-width:900px){.site-header .top{flex-wrap:wrap;gap:0 1.25rem;padding-top:16px;padding-bottom:16px}.site-header .top nav{display:none}.site-header .top nav.open{display:grid;grid-template-columns:1fr;align-self:auto;gap:0}}
.language-switch{display:flex;gap:2px;margin-left:10px;background:rgba(24,51,47,.06);padding:2px;border-radius:999px}.language-switch button{border:0;background:transparent;color:var(--ink);font:600 11px inherit;padding:6px 9px;border-radius:999px;cursor:pointer}.language-switch button.active{background:var(--ink);color:#fff}.language-switch button:focus-visible{outline:2px solid var(--coral);outline-offset:2px}@media(max-width:700px){.language-switch{margin-left:auto}.utility a{display:none}.language-switch button{padding:5px 8px}.header-actions{margin-left:0}}

/* Institutional reference pass: restrained hospital grid, clear hierarchy, useful density. */
:root{--ink:#102d3a;--blue:#005b7f;--sky:#e8f4f6;--line:#c9dadd;--coral:#e86e57;--max:1240px}
body{background:#fff;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.notice{font-size:.78rem;padding:.55rem 5vw;background:#e8f4f6;color:#34505b;text-align:center}.notice a{color:var(--blue);text-decoration:underline}
.utility{background:#0d3340;color:#e4f2f4;font-size:.78rem}.utility-inner{max-width:var(--max);margin:auto;padding:.55rem 2rem;display:flex;gap:1.25rem;align-items:center}.utility a{color:inherit;opacity:.92}.utility-spacer{flex:1}.utility-emergency{background:var(--coral);padding:.5rem .9rem;font-weight:700}.language-switch{display:flex;border-left:1px solid #52717a;padding-left:1rem;gap:.2rem}.language-switch button{font:inherit;color:inherit;background:none;border:0;padding:.28rem .45rem;cursor:pointer}.language-switch button.active{background:#fff;color:var(--ink);border-radius:2px}
.site-header{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 2px 16px #13374310}.top{max-width:var(--max);margin:auto;min-height:76px;padding:0 2rem;display:flex;align-items:center;gap:2.5rem}.brand{font-size:2rem;font-weight:800;letter-spacing:-.08em;color:#0d3340}.brand span,.footer-brand span{color:var(--coral)}nav{display:flex;gap:1.65rem;align-items:center;flex:1}nav a{font-weight:650;font-size:.9rem;color:var(--ink);padding:1.65rem 0;border-bottom:3px solid transparent}nav a:hover{border-color:var(--coral)}.header-actions{display:flex;gap:.7rem;align-items:center}.portal{background:var(--blue);color:#fff;padding:.8rem 1rem;font-weight:700}.portal span{opacity:.7}.search,.menu{background:none;border:0;color:var(--ink);font:inherit;cursor:pointer}.search{font-size:1.7rem}.menu{display:none}
.institution-hero{max-width:var(--max);margin:auto;padding:3.25rem 2rem 4rem;display:grid;grid-template-columns: .88fr 1.12fr;gap:4rem;align-items:stretch}.hero-panel{padding:3rem 0}.eyebrow{color:var(--blue);font-weight:750;letter-spacing:.02em}.hero-panel h1{font-size:clamp(2.7rem,5vw,5.6rem);line-height:1.02;letter-spacing:-.065em;max-width:650px;margin:1rem 0 1.5rem}.hero-panel>p:not(.eyebrow){font-size:1.12rem;line-height:1.65;max-width:540px;color:#45606a}.hero-actions{display:flex;gap:.85rem;margin-top:2rem}.button{display:inline-flex;align-items:center;padding:.85rem 1.15rem;font-weight:750}.button.primary{background:var(--coral);color:#fff}.button.outline{border:1px solid var(--blue);color:var(--blue)}.hero-image{position:relative;min-height:430px;background:#d9eaeb}.hero-image img{width:100%;height:100%;object-fit:cover;display:block}.image-caption{position:absolute;bottom:0;left:0;background:#0d3340e8;color:#fff;padding:.9rem 1.2rem;font-size:.86rem}
.priority-grid{max-width:var(--max);margin:0 auto 5rem;padding:0 2rem;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.priority-grid a{border-top:5px solid var(--blue);padding:1.2rem 1.25rem 1.35rem;background:var(--sky);display:grid;gap:.4rem;min-height:130px}.priority-grid strong{font-size:1.2rem}.priority-grid span{color:#47616a}.priority-grid b{justify-self:end;font-size:1.3rem;color:var(--blue)}.priority-grid .priority-alert{border-color:var(--coral);background:#fff3ef}
.content-section,.directory-section,.news-section{max-width:var(--max);margin:0 auto;padding:5rem 2rem}.section-intro{max-width:720px;margin-bottom:2.5rem}.section-intro h2,.feature-copy h2,.story-copy h2,.experience-section h2{font-size:clamp(2rem,3vw,3.5rem);line-height:1.06;letter-spacing:-.045em;margin:.7rem 0 1rem}.section-intro>p:last-child,.feature-copy>p,.story-copy>p,.experience-section>div:first-child>p:last-child{color:#526a72;line-height:1.65;font-size:1.05rem}.link-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.link-grid a{padding:1.35rem 1rem;border-bottom:1px solid var(--line);display:grid;gap:.45rem;min-height:132px}.link-grid a:hover,.directory-grid a:hover{background:var(--sky)}.link-grid span{color:#597178;font-size:.9rem}.link-grid b{color:var(--coral);justify-self:end}.feature-band{background:#dceef0;display:grid;grid-template-columns:1fr 1fr;gap:4rem;padding:5rem max(2rem,calc((100vw - var(--max))/2 + 2rem));align-items:center}.feature-copy{max-width:520px}.feature-cards{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.feature-cards a{background:#fff;padding-bottom:1rem}.feature-cards img{display:block;width:100%;height:190px;object-fit:cover}.feature-cards strong,.feature-cards span{display:block;padding:0 1rem}.feature-cards strong{margin-top:1rem}.feature-cards span{margin-top:.35rem;color:#597178}.story-section{max-width:var(--max);margin:auto;padding:6rem 2rem;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:4rem}.story-image img{display:block;width:100%;height:390px;object-fit:cover}.story-copy{max-width:450px}.text-link{font-weight:750;color:var(--blue)}.text-link span{color:var(--coral);margin-left:.35rem}.experience-section{background:#0d3340;color:#fff;padding:5.5rem max(2rem,calc((100vw - var(--max))/2 + 2rem));display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.experience-section .eyebrow{color:#92d0d4}.experience-section p{color:#d2e4e5}.rating{border-left:1px solid #6e9299;padding-left:5rem}.rating strong{font-size:clamp(5rem,10vw,9rem);line-height:.9;letter-spacing:-.08em;display:block}.rating span{display:block;margin-top:1rem;font-size:1.1rem}.rating-line{margin-top:2rem;height:6px;background:#42616a}.rating-line i{display:block;background:var(--coral);height:100%;width:87%}.directory-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.directory-grid a{padding:1.15rem 0;border-bottom:1px solid var(--line);margin-right:2rem;font-weight:700;display:flex;justify-content:space-between}.directory-grid b{color:var(--coral)}.section-intro.inline{display:flex;align-items:end;justify-content:space-between;max-width:none}.news-grid.rich{grid-template-columns:repeat(2,1fr)}.news-grid.rich article{border-top:4px solid var(--coral);padding:1.25rem 0}.news-date{font-size:.8rem;color:#61777d;margin-bottom:1rem}.news-grid.rich h3{font-size:1.65rem;max-width:460px}.news-grid.rich p{color:#597178;max-width:500px;line-height:1.55}.news-grid.rich a{font-weight:700;color:var(--blue)}
footer{background:#e8f4f6;padding:4rem max(2rem,calc((100vw - var(--max))/2 + 2rem)) 1.5rem}.footer-top{display:grid;grid-template-columns:1.35fr repeat(3,1fr);gap:3rem;padding-bottom:4rem}.footer-brand{font-size:2rem;font-weight:800;letter-spacing:-.06em}.footer-brand p{font-size:.95rem;letter-spacing:0;font-weight:400;max-width:220px;line-height:1.45;color:#4c6870}.footer-column{display:grid;align-content:start;gap:.75rem}.footer-column h3{font-size:.85rem;margin:0 0 .5rem}.footer-column a{font-size:.9rem;color:#40616a}.footer-bottom{border-top:1px solid #b8d1d5;padding-top:1rem;display:flex;gap:1.4rem;font-size:.78rem;color:#527079}.footer-bottom a:last-child{margin-left:auto;color:var(--blue);font-weight:700}
@media(max-width:900px){.utility-inner{overflow:auto;white-space:nowrap}.top{padding:0 1.25rem}.top nav{display:none}.menu{display:block}.institution-hero,.feature-band,.story-section,.experience-section{grid-template-columns:1fr;gap:2rem;padding-left:1.25rem;padding-right:1.25rem}.hero-panel{padding:1rem 0}.priority-grid,.content-section,.directory-section,.news-section{padding-left:1.25rem;padding-right:1.25rem}.priority-grid,.link-grid,.directory-grid{grid-template-columns:1fr}.feature-cards{grid-template-columns:1fr 1fr}.footer-top{grid-template-columns:1fr 1fr}.footer-bottom{flex-wrap:wrap}.footer-bottom a:last-child{margin-left:0}}
@media(max-width:560px){.hero-image{min-height:290px}.feature-cards{grid-template-columns:1fr}.footer-top{grid-template-columns:1fr}.utility-inner{padding-left:1rem;padding-right:1rem}.portal{display:none}.hero-panel h1{font-size:3rem}}

/* Contrast and interaction corrections for the institutional sections. */
.feature-band,.feature-band h2,.feature-band p,.feature-band strong,.feature-band span{color:var(--ink)}
.feature-band .eyebrow{color:var(--blue)}
.feature-band .button.outline{color:var(--blue);background:#fff}
.footer-top,.footer-top h3,.footer-top a,.footer-brand,.footer-brand p,.footer-bottom,.footer-bottom a{color:var(--ink)}
.link-grid a,.priority-grid a,.directory-grid a,.feature-cards a{cursor:pointer;transition:background-color 180ms ease,transform 180ms ease}
.link-grid a:hover,.priority-grid a:hover,.directory-grid a:hover,.feature-cards a:hover{transform:translateY(-2px)}

/* Route pages contain the actual utility behind each navigation choice. */
.utility-detail{max-width:var(--max);padding-top:2.5rem}.breadcrumbs{display:flex;gap:.6rem;color:#658087;font-size:.84rem;margin-bottom:3rem}.breadcrumbs a{color:var(--blue);font-weight:700}.utility-detail h1{max-width:850px}.utility-page{margin-top:3.5rem}.utility-page-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line)}.utility-page-grid a{padding:1.6rem 1.4rem 1.8rem 0;border-bottom:1px solid var(--line);margin-right:2rem;min-height:185px}.utility-page-grid a:hover{background:var(--sky);padding-left:1rem}.utility-page-grid h3{font-size:1.35rem;margin:0 0 .55rem}.utility-page-grid p{color:#526a72;line-height:1.55;max-width:450px}.utility-page-grid b,.directory-list span{color:var(--blue)}.prose{max-width:850px}.prose h2{font-size:2rem;letter-spacing:-.03em;margin:3rem 0 1rem}.prose p{font-size:1.08rem;line-height:1.7;color:#526a72}.fact-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:2.5rem 0 4rem}.fact-row div{background:var(--sky);padding:1.4rem}.fact-row strong{font-size:2.8rem;display:block}.fact-row span{color:#526a72}.directory-list{border-top:1px solid var(--line);max-width:900px}.directory-list a{display:flex;justify-content:space-between;gap:1rem;padding:1.35rem 0;border-bottom:1px solid var(--line)}.directory-list strong{font-size:1.12rem}.directory-list span{text-align:right}.checklist{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2.5rem}.checklist>div{border-top:4px solid var(--coral);padding:1.3rem 1rem;background:#f7faf9}.checklist span{color:var(--coral);font-weight:800}.checklist h3{margin:.8rem 0 .4rem}.checklist p{font-size:.98rem}.visit-columns,.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;max-width:950px}.visit-columns h2{font-size:2rem;letter-spacing:-.03em;margin:0 0 .8rem}.info-card{background:var(--sky);padding:1.6rem;align-self:start}.info-card h2{font-size:1.6rem;letter-spacing:-.03em;margin:0 0 1rem}.info-card p{line-height:1.7;color:#526a72}.emergency-inline{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap;background:#fff2ed;border-left:5px solid var(--coral);padding:1.2rem 1.4rem;margin-top:2.5rem;max-width:950px}.emergency-inline span{color:#526a72}.emergency-inline a{color:var(--blue);font-weight:750}@media(max-width:700px){.utility-page-grid,.checklist,.visit-columns,.contact-grid{grid-template-columns:1fr}.directory-list a{display:grid}.directory-list span{text-align:left}.fact-row{grid-template-columns:1fr}.utility-page-grid a{margin-right:0}}

/* Utility bar: compact controls with magnetic pointer feedback. */
.utility-inner{position:relative}.utility-inner>a,.language-switch button{position:relative;transform:translate3d(var(--mx,0px),var(--my,0px),0);transition:transform 180ms var(--ease-out),background-color 180ms ease,color 180ms ease,box-shadow 180ms ease}.utility-inner>a{padding:.48rem .65rem;border-radius:999px}.utility-inner>a:hover{background:#255464;color:#fff;box-shadow:0 5px 14px #061c2438}.utility-emergency{border-radius:999px!important;background:var(--coral)!important;color:#fff!important}.language-switch{border-left:0;background:#173f4b;border:1px solid #47717a;border-radius:999px;padding:.18rem;gap:.15rem}.language-switch button{border-radius:999px}.language-switch button.active{box-shadow:0 2px 8px #061c2440}.utility-inner>a.is-pressed,.language-switch button.is-pressed{transform:translate3d(0,1px,0) scale(.96);transition-duration:120ms}.utility-inner>a::after,.language-switch button::after{content:'';position:absolute;inset:0;border-radius:inherit;opacity:0;background:radial-gradient(circle at var(--rx,50%) var(--ry,50%),#ffffff55,transparent 55%);transition:opacity 180ms ease;pointer-events:none}.utility-inner>a:hover::after,.language-switch button:hover::after{opacity:1}
@media(prefers-reduced-motion:reduce){.utility-inner>a,.language-switch button{transform:none!important;transition:color 180ms ease,background-color 180ms ease}.utility-inner>a::after,.language-switch button::after{display:none}}

/* Final language control correction: no white active tile. */
.language-switch button,.language-switch button.active{background:transparent!important;color:#e4f2f4!important;box-shadow:none!important}
.language-switch button.active{color:#fff!important;background:#2b6977!important;box-shadow:0 2px 8px #061c2440!important}
.language-switch button:hover{background:#376f7b!important;color:#fff!important}

/* Emergency page: a deliberate utility layout with clear hierarchy and scrollable navigation. */
.emergency-page{max-width:var(--max);margin:auto;padding:2.5rem 2rem 7rem;min-height:70vh}.emergency-page .breadcrumbs{margin-bottom:2.5rem}.emergency-page h1{font:650 clamp(2.7rem,6vw,5.5rem)/1.02 Inter,system-ui,sans-serif;letter-spacing:-.06em;max-width:850px;color:var(--ink);margin:0 0 1rem}.emergency-page .detail-lead{font-size:1.15rem;line-height:1.65;color:#526a72;max-width:700px}.emergency-alert{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:#fff0e9;border:1px solid #f2b4a4;border-left:6px solid var(--coral);padding:1.2rem 1.4rem;margin:2.5rem 0;border-radius:3px}.emergency-alert strong{font-size:1.1rem}.emergency-alert span{color:#526a72}.emergency-alert a{color:#bf4938;font-weight:800;font-size:1.25rem}.emergency-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:4rem;margin-top:3.5rem;border-top:1px solid var(--line);padding-top:2rem}.emergency-layout aside{position:sticky;top:7rem;height:max-content;display:grid;gap:.25rem}.emergency-layout aside h3{font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;color:#668089;margin:0 0 .7rem}.emergency-layout aside a{padding:.65rem .8rem;border-left:2px solid transparent;color:#526a72}.emergency-layout aside a:hover{border-color:var(--coral);background:var(--sky);color:var(--ink)}.emergency-content section{padding:0 0 2.8rem;margin:0 0 2.8rem;border-bottom:1px solid var(--line)}.emergency-content h2{font:650 clamp(1.7rem,3vw,2.5rem)/1.1 Inter,system-ui,sans-serif;letter-spacing:-.04em;margin:0 0 1rem}.emergency-content p,.emergency-content li{font-size:1.03rem;line-height:1.7;color:#526a72}.emergency-content ul{padding-left:1.2rem}.address{background:var(--sky);border-left:4px solid var(--blue);padding:1.2rem 1.4rem;line-height:1.7;margin-top:1rem}.address a{color:var(--blue);font-weight:750}@media(max-width:700px){.emergency-page{padding:2rem 1.25rem 5rem}.emergency-alert{display:grid}.emergency-layout{grid-template-columns:1fr;gap:2rem}.emergency-layout aside{position:static;background:var(--sky);padding:1rem;display:grid;grid-template-columns:1fr 1fr}.emergency-layout aside h3{grid-column:1/-1}.emergency-layout aside a{font-size:.9rem}}

/* Refined language selector: stable segmented control, no shine or pointer spotlight. */
.language-switch{position:relative;isolation:isolate;display:inline-flex;align-items:center;gap:0;padding:3px;background:#123c49;border:1px solid #356574;border-radius:999px;box-shadow:inset 0 1px 0 #ffffff12}
.language-switch::before{content:'';position:absolute;z-index:-1;top:3px;bottom:3px;left:3px;width:calc(50% - 3px);border-radius:999px;background:#f2fbfb;box-shadow:0 2px 7px #061c2438;transition:transform 180ms var(--ease-out)}
.language-switch:has(button:nth-child(2).active)::before{transform:translateX(100%)}
.language-switch button,.language-switch button.active{min-width:66px;padding:.38rem .7rem;border:0!important;border-radius:999px;background:transparent!important;color:#b9d5d9!important;box-shadow:none!important;font-size:.75rem;font-weight:750;line-height:1;transform:none!important;transition:color 160ms ease}
.language-switch button.active{color:#123c49!important}
.language-switch button:hover{background:transparent!important;color:#fff!important}
.language-switch button.active:hover{color:#123c49!important}
.language-switch button::after{display:none!important}
.language-switch button.is-pressed{transform:scale(.96)!important;transition:transform 110ms var(--ease-out)!important}
@media(prefers-reduced-motion:reduce){.language-switch::before{transition:none}.language-switch button.is-pressed{transform:none!important}}

/* Simpler institutional utility navigation. Language remains its own control. */
.utility{background:#0d3340;color:#d9edef}
.utility-inner{gap:0;padding:.35rem 2rem;min-height:42px}
.utility-inner>a{padding:.35rem .8rem;border-radius:0;background:transparent!important;box-shadow:none!important;color:#c6dfe2;transform:none!important;opacity:1;line-height:1}
.utility-inner>a+a{border-left:1px solid #47717a}
.utility-inner>a::before{content:'';position:absolute;left:.8rem;right:.8rem;bottom:.05rem;height:1px;background:#8ed2d2;transform:scaleX(0);transform-origin:left;transition:transform 160ms var(--ease-out)}
.utility-inner>a:hover{color:#fff}
.utility-inner>a:hover::before{transform:scaleX(1)}
.utility-inner>a.is-pressed{transform:translateY(1px)!important;color:#fff}
.utility-inner .utility-spacer{flex:1}
.utility-inner>a.utility-emergency{padding:.4rem .75rem;border-left:0;border-radius:3px!important;margin-left:.6rem;background:#e86e57!important;color:#fff!important;font-weight:750}
.utility-inner>a.utility-emergency::before{display:none}
.language-switch{margin-left:.7rem}
@media(max-width:700px){.utility-inner{padding:.35rem 1rem}.utility-inner>a{display:none}.utility-inner>a.utility-emergency{display:block;margin-left:auto}.language-switch{margin-left:.55rem}.utility-inner>a.utility-emergency+a{display:none}}

/* Keep the institutional links calm: underline feedback only, no glow or spotlight. */
.utility-inner>a::after{display:none!important}
.utility-inner>a{transition:color 160ms ease!important}
.utility-inner>a.is-pressed{transform:translateY(1px)!important;transition:transform 110ms var(--ease-out),color 160ms ease!important}

/* Route transition: short spatial handoff without animating layout or content position. */
main.route-arrive{animation:route-arrive 240ms var(--ease-out) both}
@keyframes route-arrive{from{opacity:.18;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){main.route-arrive{animation:none}}

.hero-image{overflow:hidden}
.hero-image img{object-position:center center}

.brand img{display:block;width:128px;height:auto;max-height:42px;object-fit:contain;object-position:left center}
.footer-brand img{display:block;width:142px;height:auto;max-height:48px;object-fit:contain;object-position:left center;margin-bottom:.7rem}
.brand,.footer-brand{letter-spacing:0}
@media(max-width:560px){.brand img{width:112px}.footer-brand img{width:128px}}

/* Fixed logo accent: one in-place 3D turn every two seconds. */
:root{--ease-in-out:cubic-bezier(.77,0,.175,1)}
.brand-lockup{position:relative;display:inline-block;line-height:0;overflow:visible}
.brand-lockup img{display:block;width:128px;height:auto;max-height:none;object-fit:contain}
.brand-lockup .orbit-plus{position:absolute;top:-4px;right:-17px;width:18px;height:18px;margin:0;display:block;font-size:0;line-height:0;transform-origin:center;transform-style:preserve-3d;animation:zgfk-plus-flip 2s var(--ease-out) infinite;pointer-events:none}
.orbit-plus::before,.orbit-plus::after{content:'';position:absolute;inset:0;background:#ff5738;clip-path:polygon(36% 0,64% 0,64% 36%,100% 36%,100% 64%,64% 64%,64% 100%,36% 100%,36% 64%,0 64%,0 36%,36% 36%);backface-visibility:hidden}
.orbit-plus::before{transform:translateZ(1px)}
.orbit-plus::after{transform:rotateY(180deg) translateZ(1px);background:#ff5738}
.footer-brand .brand-lockup img{width:142px;max-height:none}
.footer-brand .orbit-plus{top:-4px;right:-18px}
@keyframes zgfk-plus-flip{
  0%,35%{transform:perspective(240px) rotateY(0deg)}
  85%,100%{transform:perspective(240px) rotateY(180deg)}
}
@media(max-width:560px){.brand-lockup img{width:112px}.footer-brand .brand-lockup img{width:128px}.brand-lockup .orbit-plus{right:-15px}.footer-brand .orbit-plus{right:-16px}}
@media(prefers-reduced-motion:reduce){.brand-lockup .orbit-plus{animation:none;transform:none}}
/* Emergency-only navigation and layout. */
.site-header{padding:0}.utility{display:block;max-width:none;padding:0}.utility-inner{width:100%}.top{gap:2rem}.top nav{gap:1.3rem}.top nav a{font-size:.85rem}.urgent-bar{display:flex;align-items:center;justify-content:center;gap:1.5rem;background:#fff0e9;color:#102d3a;padding:14px 20px}.urgent-bar a{background:#ac3525;color:#fff;padding:8px 18px;border-radius:4px;font-weight:750}.institution-hero{padding-top:2rem}.hero-panel h1{font-size:clamp(2.7rem,5vw,4.5rem)}.hero-image{min-height:320px}.hero-image img{height:100%;width:100%;object-fit:cover}.priority-grid{margin-bottom:4rem}.prose section{padding-bottom:1rem;border-bottom:1px solid var(--line)}footer{display:block}.footer-top{grid-template-columns:1.4fr 1fr 1fr}.footer-bottom{margin-top:1rem}.top nav a[aria-current=page]{border-bottom-color:var(--coral)}
@media(max-width:900px){.top{min-height:80px}.top nav.open{display:flex;position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;padding:1rem;gap:0;border-bottom:1px solid var(--line)}.top nav.open a{padding:1rem}.menu{display:block;margin-left:auto}.footer-top{grid-template-columns:1fr}.institution-hero{padding-top:1rem}}
.restored-experiences{max-width:var(--max);margin:0 auto 5rem;padding:2rem;display:grid;grid-template-columns:1fr 1fr;gap:2rem;background:var(--sky);color:var(--ink)}.restored-experiences h2{font-size:2rem;letter-spacing:-.04em;line-height:1.15}.restored-experiences p{line-height:1.6}.restored-experiences a{display:inline-block;font-weight:700;text-decoration:underline;text-underline-offset:5px;color:var(--blue)}@media(max-width:700px){.restored-experiences{grid-template-columns:1fr}}
.booking{max-width:760px;margin:2rem 0}.booking label{display:grid;gap:.5rem;font-weight:600}.booking input,.booking select{width:100%;padding:12px;border:1px solid #8aa7ae;border-radius:6px;font:inherit;background:white;color:#102d3a}.booking-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:20px 0}.booking button{cursor:pointer;border:0;font:inherit}.booking .full{grid-column:1/-1}.ticket{padding:28px;border:2px solid #005b7f;background:#e8f4f6;border-radius:12px}.ticket-code{display:block;font:700 2rem monospace;letter-spacing:.1em;margin:20px 0}.booking-status{line-height:1.6}.booking small{font-weight:400;line-height:1.5}@media(max-width:600px){.booking-fields{grid-template-columns:1fr}}
.experience-section .text-link{color:#fff}.experience-section .rating span{color:#d2e4e5;font-size:.9rem;max-width:280px;line-height:1.5}

/* Keep utility navigation together as one aligned group. */
.site-header .utility-inner{display:flex;justify-content:flex-end;align-items:center;gap:12px;flex-wrap:nowrap}
.site-header .utility-inner .utility-spacer{display:none}
.site-header .utility-inner>a{flex:0 0 auto;white-space:nowrap;margin:0}
.site-header .utility-inner .language-switch{flex:0 0 auto;margin:0;white-space:nowrap}
@media(max-width:700px){
 .site-header .utility-inner{justify-content:center;gap:6px;padding:10px 8px;overflow-x:auto}
 .site-header .utility-inner>a{display:block;padding:6px 4px;font-size:11px}
 .site-header .utility-inner .language-switch button{min-width:0;padding:7px 6px;font-size:11px}
}

/* Main navigation: distribute the available width evenly beside the logo. */
.site-header .top{gap:clamp(2rem,4vw,4rem)}
.site-header .top .brand{flex:0 0 auto;padding-right:18px}
.site-header .top nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-self:stretch;align-items:stretch;flex:1;min-width:0;margin:0;gap:clamp(.5rem,1.2vw,1.25rem)}
.site-header .top nav a{display:flex;align-items:center;justify-content:center;text-align:center;min-width:0;min-height:84px;padding:1rem .5rem;font-size:clamp(.85rem,1.1vw,.95rem);line-height:1.4;text-wrap:balance}
.site-header .top nav a:focus-visible{outline:2px solid var(--blue);outline-offset:-5px;border-radius:3px}
@media(max-width:900px){
 .site-header .top{flex-wrap:wrap;gap:0 2rem;padding-top:16px;padding-bottom:16px}
 .site-header .top nav{display:none}
 .site-header .top nav.open{position:static;display:grid;grid-template-columns:1fr;flex:0 0 100%;width:100%;margin-top:16px;padding:0;border-top:1px solid var(--line);border-bottom:0;gap:0;background:#fff}
 .site-header .top nav.open a{justify-content:flex-start;text-align:left;min-height:52px;padding:12px 8px;font-size:.95rem}
}

/* Practical navigation echoes the header's orange underline feedback. */
.directory-section .directory-grid a{position:relative;background:transparent;transform:none;transition:color 180ms ease}
.directory-section .directory-grid a::after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--coral);transform:scaleX(0);transform-origin:left;transition:transform 180ms var(--ease-out)}
.directory-section .directory-grid a:hover::after,
.directory-section .directory-grid a:focus-visible::after{transform:scaleX(1)}
.directory-section .directory-grid a:focus-visible{outline:2px solid var(--blue);outline-offset:5px}
@media(prefers-reduced-motion:reduce){.directory-section .directory-grid a::after{transition:none}}

/* Footer links: the same underline feedback, preserving the footer background. */
.footer-column a{position:relative;justify-self:start}
.footer-column a::after{content:'';position:absolute;left:0;right:0;bottom:-4px;height:3px;background:var(--coral);transform:scaleX(0);transform-origin:left;transition:transform 180ms var(--ease-out);pointer-events:none}
.footer-column a:hover::after,
.footer-column a:focus-visible::after{transform:scaleX(1)}
.footer-column a:focus-visible{outline:2px solid var(--blue);outline-offset:6px}
@media(prefers-reduced-motion:reduce){.footer-column a::after{transition:none}}

/* Detail pages keep the heading compact and reserve a visual column. */
.detail-page{padding-top:54px}
.detail-page .detail-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);gap:clamp(2rem,6vw,5rem);align-items:center;margin-bottom:58px}
.detail-page h1{font-size:clamp(38px,5vw,64px);line-height:1.04;letter-spacing:-2.5px;max-width:650px;margin:0 0 20px}
.detail-page .detail-lead{max-width:560px;margin:0;font-size:clamp(18px,2vw,22px);line-height:1.5}
.detail-hero-image{height:260px;overflow:hidden;background:var(--sky)}
.detail-hero-image img{width:100%;height:100%;display:block;object-fit:cover}
@media(max-width:700px){.detail-page{padding-top:30px}.detail-page .detail-hero{grid-template-columns:1fr;gap:24px;margin-bottom:38px}.detail-hero-image{height:210px}.detail-page h1{font-size:clamp(36px,11vw,50px)}}

/* Give detail-page photography a generous, wide frame. */
.detail-hero-image{height:auto;min-height:330px;aspect-ratio:3 / 2}
.detail-hero-image img{object-fit:cover;object-position:center}
@media(max-width:700px){.detail-hero-image{min-height:0;height:auto;aspect-ratio:3 / 2}}

/* Each detail route can use an image frame suited to its own photograph. */
.detail-hero-spoed{min-height:410px;aspect-ratio:3 / 2}
.detail-hero-spoed img{object-position:center 48%}
.detail-hero-aankomst{min-height:340px;aspect-ratio:4 / 3}
.detail-hero-afspraak{min-height:300px;aspect-ratio:16 / 11}
.detail-hero-naasten{min-height:360px;aspect-ratio:4 / 3}
@media(max-width:700px){.detail-hero-spoed{min-height:0;aspect-ratio:3 / 2}.detail-hero-aankomst,.detail-hero-afspraak,.detail-hero-naasten{min-height:0}}

.detail-hero-image{width:100%;max-width:100%;justify-self:end;transform:translateX(-10px)}
@media(max-width:700px){.detail-hero-image{transform:none}}

/* Preserve the full supplied photograph inside the detail frame. */
.detail-hero-image{transform:none;display:grid;place-items:center;background:#dceef0;overflow:hidden}
.detail-hero-image img{width:100%;height:100%;object-fit:contain;object-position:center}
@media(max-width:700px){.detail-hero-image{transform:none}}

/* Original photo presentation: centered with generous white side margins. */
.detail-hero-image{background:#fff;display:flex;align-items:center;justify-content:center;padding:0 4cm;aspect-ratio:auto;min-height:410px}
.detail-hero-image img{display:block;width:100%;height:auto;max-height:410px;object-fit:contain;object-position:center}
@media(max-width:900px){.detail-hero-image{padding:0 2rem;min-height:300px}.detail-hero-image img{max-height:340px}}
@media(max-width:700px){.detail-hero-image{padding:0 1rem;min-height:0}.detail-hero-image img{max-height:none}}

/* Widen the visual column; keep the photo large while the frame stays centered. */
.detail-page .detail-hero{grid-template-columns:minmax(0,1fr) minmax(360px,1fr)}
.detail-hero-image{padding:0;min-height:430px;background:#fff}
.detail-hero-image img{width:100%;height:100%;max-height:430px;object-fit:contain}
@media(max-width:900px){.detail-page .detail-hero{grid-template-columns:minmax(0,1fr) minmax(300px,.9fr)}.detail-hero-image{min-height:340px}}
@media(max-width:700px){.detail-page .detail-hero{grid-template-columns:1fr}.detail-hero-image{min-height:0}.detail-hero-image img{height:auto;max-height:none}}

/* Screenshot-matched detail composition: heading and image stay inside one centered canvas. */
.detail-page .detail-hero{display:block;max-width:1180px;margin:0 auto 58px}
.detail-page .detail-hero>div:first-child{max-width:760px;margin-bottom:34px}
.detail-hero-image{width:min(100%,1000px);margin:0 auto;min-height:0;height:auto;aspect-ratio:3 / 2;padding:0;background:#fff;transform:none}
.detail-hero-image img{width:100%;height:auto;max-height:none;object-fit:contain;display:block}
@media(max-width:700px){.detail-page .detail-hero{margin-bottom:38px}.detail-page .detail-hero>div:first-child{margin-bottom:24px}.detail-hero-image{width:100%;aspect-ratio:3 / 2}}

/* Editorial image treatments: each page has its own visual rhythm. */
.detail-hero-spoed{width:min(100%,1000px);margin:0 auto;aspect-ratio:3 / 2}
.detail-hero-aankomst{width:min(86%,860px);margin:0 0 0 auto;aspect-ratio:16 / 9;transform:translateX(-2vw)}
.detail-hero-afspraak{width:min(72%,700px);margin:0 auto 0 6vw;aspect-ratio:4 / 3}
.detail-hero-naasten{width:min(92%,920px);margin:0 auto;aspect-ratio:5 / 3}
.detail-hero-meenemen{width:min(78%,760px);margin:0 5vw 0 auto;aspect-ratio:4 / 3}
.detail-hero-contact{width:min(68%,660px);margin:0 auto 0 3vw;aspect-ratio:16 / 10}
.detail-hero-over{width:min(82%,820px);margin:0 auto;aspect-ratio:3 / 2}
.detail-hero-wachttijden{width:min(74%,720px);margin:0 8vw 0 auto;aspect-ratio:16 / 10}
.detail-hero-parkeren{width:min(88%,860px);margin:0 auto 0 2vw;aspect-ratio:5 / 3}
.detail-hero-faciliteiten{width:min(76%,740px);margin:0 auto;aspect-ratio:4 / 3}
.detail-hero-ervaringen{width:min(70%,680px);margin:0 4vw 0 auto;aspect-ratio:16 / 10}
.detail-hero-verhalen{width:min(90%,900px);margin:0 auto;aspect-ratio:3 / 2}
@media(max-width:700px){
 .detail-hero-spoed,.detail-hero-aankomst,.detail-hero-afspraak,.detail-hero-naasten,.detail-hero-meenemen,.detail-hero-contact,.detail-hero-over,.detail-hero-wachttijden,.detail-hero-parkeren,.detail-hero-faciliteiten,.detail-hero-ervaringen,.detail-hero-verhalen{width:100%;margin:0;transform:none;aspect-ratio:3 / 2}
}

/* Route-specific overrides must win over the shared frame defaults. */
.detail-hero-image.detail-hero-spoed{width:1000px;max-width:100%;margin-left:auto;margin-right:auto;aspect-ratio:3/2}
.detail-hero-image.detail-hero-aankomst{width:86%;margin-left:auto;margin-right:0;aspect-ratio:16/9;transform:translateX(-24px)}
.detail-hero-image.detail-hero-afspraak{width:72%;margin-left:6vw;margin-right:auto;aspect-ratio:4/3}
.detail-hero-image.detail-hero-naasten{width:92%;margin-left:auto;margin-right:auto;aspect-ratio:5/3}
.detail-hero-image.detail-hero-meenemen{width:78%;margin-left:auto;margin-right:5vw;aspect-ratio:4/3}
.detail-hero-image.detail-hero-contact{width:68%;margin-left:3vw;margin-right:auto;aspect-ratio:16/10}
.detail-hero-image.detail-hero-over{width:82%;margin-left:auto;margin-right:auto;aspect-ratio:3/2}
.detail-hero-image.detail-hero-wachttijden{width:74%;margin-left:auto;margin-right:8vw;aspect-ratio:16/10}
.detail-hero-image.detail-hero-parkeren{width:88%;margin-left:2vw;margin-right:auto;aspect-ratio:5/3}
.detail-hero-image.detail-hero-faciliteiten{width:76%;margin-left:auto;margin-right:auto;aspect-ratio:4/3}
.detail-hero-image.detail-hero-ervaringen{width:70%;margin-left:auto;margin-right:4vw;aspect-ratio:16/10}
.detail-hero-image.detail-hero-verhalen{width:90%;margin-left:auto;margin-right:auto;aspect-ratio:3/2}
@media(max-width:700px){.detail-hero-image[class*="detail-hero-"]{width:100%;margin-left:0;margin-right:0;transform:none;aspect-ratio:3/2}}

/* At emergency care: text-led layout with photography anchored on the right. */
.detail-hero:has(.detail-hero-aankomst){display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.82fr);gap:clamp(2rem,6vw,5rem);align-items:center}
.detail-hero:has(.detail-hero-aankomst)>div:first-child{grid-column:1;grid-row:1;margin:0;max-width:620px}
.detail-hero:has(.detail-hero-aankomst) .detail-hero-aankomst{grid-column:2;grid-row:1;width:100%;margin:0;transform:none;aspect-ratio:4/3}
@media(max-width:700px){.detail-hero:has(.detail-hero-aankomst){display:block}.detail-hero:has(.detail-hero-aankomst)>div:first-child{margin-bottom:24px}.detail-hero:has(.detail-hero-aankomst) .detail-hero-aankomst{width:100%;aspect-ratio:3/2}}

/* Appointments: compact image on the right, uninterrupted text flow on the left. */
.detail-hero:has(.detail-hero-afspraak){display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,380px);gap:clamp(2rem,6vw,5rem);align-items:center}
.detail-hero:has(.detail-hero-afspraak)>div:first-child{grid-column:1;grid-row:1;max-width:680px;margin:0}
.detail-hero:has(.detail-hero-afspraak) .detail-hero-afspraak{grid-column:2;grid-row:1;width:100%;margin:0;aspect-ratio:4/3;transform:none}
@media(max-width:700px){.detail-hero:has(.detail-hero-afspraak){display:block}.detail-hero:has(.detail-hero-afspraak)>div:first-child{margin-bottom:24px}.detail-hero:has(.detail-hero-afspraak) .detail-hero-afspraak{width:72%;margin:0 0 0 auto;aspect-ratio:4/3}}
/* Saved image-editor positions are applied by the main app when present. */
.detail-hero-image img{width:var(--img-w,100%);position:relative;left:var(--img-x,0);top:var(--img-y,0)}
.visual-editor{position:fixed;z-index:1000;right:18px;bottom:18px;background:#0d3340;color:#fff;padding:12px 14px;display:flex;gap:9px;align-items:center;box-shadow:0 8px 28px #0d334055;font:13px system-ui}.visual-editor button,.visual-editor input{font:inherit}.visual-editor button{padding:7px 10px;border:0;background:#ee8a72;color:#fff;cursor:pointer}.visual-editor small{opacity:.8}.editing-image{outline:3px solid #ee8a72;cursor:grab!important}

/* Allow deliberate enlargement beyond the default frame size. */
.visual-editor input[type=range]{width:150px}
.detail-hero-image{overflow:visible}
.detail-hero-image img{max-width:none}
@media(max-width:700px){.detail-hero-image{overflow:hidden}.detail-hero-image img{max-width:100%}}

/* Safe defaults for the urgent-help and family pages: image stays clear of copy. */
.detail-hero:has(.detail-hero-spoed),.detail-hero:has(.detail-hero-naasten){display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.85fr);gap:clamp(2rem,6vw,5rem);align-items:center}
.detail-hero:has(.detail-hero-spoed)>div:first-child,.detail-hero:has(.detail-hero-naasten)>div:first-child{grid-column:1;grid-row:1;max-width:650px;margin:0}
.detail-hero:has(.detail-hero-spoed) .detail-hero-spoed,.detail-hero:has(.detail-hero-naasten) .detail-hero-naasten{grid-column:2;grid-row:1;width:100%;margin:0;transform:none;aspect-ratio:4/3;position:relative;z-index:0}
@media(max-width:700px){.detail-hero:has(.detail-hero-spoed),.detail-hero:has(.detail-hero-naasten){display:block}.detail-hero:has(.detail-hero-spoed)>div:first-child,.detail-hero:has(.detail-hero-naasten)>div:first-child{margin-bottom:24px}.detail-hero:has(.detail-hero-spoed) .detail-hero-spoed,.detail-hero:has(.detail-hero-naasten) .detail-hero-naasten{width:100%;aspect-ratio:3/2}}

/* Distinct hospital-style hero compositions, based on the reviewed references. */
.detail-hero:has(.detail-hero-spoed){display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:clamp(2rem,6vw,5rem);align-items:center}
.detail-hero:has(.detail-hero-spoed)>div:first-child{grid-column:1;grid-row:1;margin:0;max-width:620px}
.detail-hero:has(.detail-hero-spoed) .detail-hero-spoed{grid-column:2;grid-row:1;width:100%;margin:0;aspect-ratio:4/3}
.detail-hero:has(.detail-hero-naasten){display:grid;grid-template-columns:minmax(360px,.95fr) minmax(0,1.05fr);gap:clamp(2rem,6vw,5rem);align-items:center}
.detail-hero:has(.detail-hero-naasten)>div:first-child{grid-column:2;grid-row:1;margin:0;max-width:620px}
.detail-hero:has(.detail-hero-naasten) .detail-hero-naasten{grid-column:1;grid-row:1;width:100%;margin:0;aspect-ratio:5/4}
@media(max-width:700px){
 .detail-hero:has(.detail-hero-spoed),.detail-hero:has(.detail-hero-naasten){display:block}
 .detail-hero:has(.detail-hero-spoed)>div:first-child,.detail-hero:has(.detail-hero-naasten)>div:first-child{margin-bottom:24px}
 .detail-hero:has(.detail-hero-spoed) .detail-hero-spoed,.detail-hero:has(.detail-hero-naasten) .detail-hero-naasten{width:100%;aspect-ratio:3/2}
}

/* Final clinical hero system: controlled grid, readable copy, route-specific media rhythm. */
.detail-page .detail-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:clamp(2rem,5vw,5rem);align-items:center;max-width:1240px;margin:0 auto 64px}
.detail-page .detail-hero>div:first-child{grid-column:1;grid-row:1;max-width:650px;margin:0}
.detail-page .detail-hero .detail-hero-image{grid-column:2;grid-row:1;width:100%;margin:0;transform:none;aspect-ratio:4/3;min-height:0;padding:0;background:#fff;overflow:hidden}
.detail-page .detail-hero .detail-hero-image img{width:100%;height:100%;max-width:none;object-fit:cover;object-position:center}
.detail-page .detail-hero:has(.detail-hero-spoed) .detail-hero-image{aspect-ratio:4/3}
.detail-page .detail-hero:has(.detail-hero-aankomst) .detail-hero-image{aspect-ratio:16/10}
.detail-page .detail-hero:has(.detail-hero-afspraak) .detail-hero-image{width:88%;justify-self:end;aspect-ratio:5/4}
.detail-page .detail-hero:has(.detail-hero-naasten){grid-template-columns:minmax(320px,.95fr) minmax(0,1.05fr)}
.detail-page .detail-hero:has(.detail-hero-naasten)>div:first-child{grid-column:2}
.detail-page .detail-hero:has(.detail-hero-naasten) .detail-hero-image{grid-column:1;aspect-ratio:4/3}
@media(max-width:700px){
 .detail-page .detail-hero,.detail-page .detail-hero:has(.detail-hero-naasten){display:block;margin-bottom:42px}
 .detail-page .detail-hero>div:first-child,.detail-page .detail-hero:has(.detail-hero-naasten)>div:first-child{margin:0 0 24px;max-width:none}
 .detail-page .detail-hero .detail-hero-image,.detail-page .detail-hero:has(.detail-hero-afspraak) .detail-hero-image{width:100%;aspect-ratio:3/2}
}
.location-map{display:grid;grid-template-columns:minmax(240px,1fr) minmax(0,1.35fr);gap:2rem;align-items:center;margin:4rem 0 0;padding:2rem;background:#edf7f8;border-radius:12px}.location-map h2{font-size:2rem;letter-spacing:-.04em;margin:.5rem 0 1rem}.location-map address{font-style:normal;font-weight:750;line-height:1.6}.location-map p{color:#45636b}.location-map iframe{width:100%;height:340px;border:0;border-radius:8px;background:#dcebed}@media(max-width:700px){.location-map{grid-template-columns:1fr;padding:1.25rem}.location-map iframe{height:280px}}

/* Attributed patient experience and Amsterdam source cards. */
.patient-evidence{max-width:1240px;margin:0 auto;padding:4rem 2rem 5rem;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);align-items:center;gap:4rem;color:#123b47}.evidence-copy h2{font:650 clamp(2rem,3.8vw,3.4rem)/1.1 system-ui;letter-spacing:-.045em;margin:1rem 0}.evidence-copy p{max-width:50ch;line-height:1.7;color:#45636b}.evidence-card{background:#edf7f8;border:1px solid #c8dfe3;border-radius:16px;padding:2rem}.evidence-meta{display:flex;justify-content:space-between;gap:1rem;align-items:center}.evidence-meta span{font-size:.78rem;max-width:22ch;text-align:right}.evidence-score{display:flex;align-items:baseline;gap:.7rem;margin:1.8rem 0 .3rem}.evidence-score strong{font:700 clamp(4rem,7vw,6rem)/1 system-ui;letter-spacing:-.07em}.evidence-score>span{font-size:1.4rem;color:#45636b}.evidence-card>p{margin:.6rem 0 1.5rem}.evidence-facts{display:grid;grid-template-columns:1fr 1fr;gap:1rem;border-top:1px solid #b9d4da;padding:1.2rem 0}.evidence-facts strong,.evidence-facts span{display:block}.evidence-facts strong{font-size:1.1rem}.evidence-facts span,.evidence-card small{font-size:.8rem;color:#45636b}.amsterdam-sources{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin:2rem 0 4rem}.amsterdam-sources>a{padding:2rem;border:1px solid #c8dfe3;border-top:4px solid #076b89;border-radius:8px;background:#edf7f8}.amsterdam-sources h2{font:650 1.6rem/1.2 system-ui;letter-spacing:-.03em;margin:1rem 0}.amsterdam-sources p{line-height:1.7}.amsterdam-sources span{font-size:.8rem}.amsterdam-sources strong{color:#075264;text-decoration:underline;text-underline-offset:4px}.detail-page .patient-evidence{padding:1rem 0 3rem}@media(max-width:700px){.patient-evidence,.amsterdam-sources{grid-template-columns:1fr;gap:2rem}.patient-evidence{padding:3rem 1.25rem}.evidence-card{padding:1.5rem}}

.amsterdam-sources>article{padding:2rem;border:1px solid #c8dfe3;border-top:4px solid #076b89;border-radius:8px;background:#edf7f8}

/* Preserve the full parking photograph, including the ZGFK sign on the right. */
.detail-page .detail-hero:has(.detail-hero-parkeren){grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);gap:2.5rem}
.detail-page .detail-hero .detail-hero-image.detail-hero-parkeren{aspect-ratio:16/9;height:auto;min-height:0;position:relative;overflow:hidden}
.detail-page .detail-hero .detail-hero-parkeren img{display:block;position:absolute;width:100%;height:100%;max-height:none;object-fit:cover;object-position:right center;left:0;top:0;transform:none}

/* About only: generous photo, both nurses preserved in full. */
.detail-page .detail-hero:has(.detail-hero-over){grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);gap:2.5rem}
.detail-page .detail-hero .detail-hero-image.detail-hero-over{aspect-ratio:auto;height:auto;min-height:0;overflow:hidden}
.detail-page .detail-hero .detail-hero-image.detail-hero-over img{position:static;display:block;width:100%;height:auto;max-height:none;object-fit:contain;transform:none}

/* Facilities only: a slightly larger landscape image with no subject cropping. */
.detail-page .detail-hero:has(.detail-hero-faciliteiten){grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:2.5rem}
.detail-page .detail-hero .detail-hero-image.detail-hero-faciliteiten{aspect-ratio:auto;height:auto;min-height:0;overflow:hidden;border-radius:16px}
.detail-page .detail-hero .detail-hero-image.detail-hero-faciliteiten img{position:static;display:block;width:100%;height:auto;max-height:none;object-fit:contain;transform:none}

/* Appointment route: keep the booking flow focused and image-free. */
.appointment-intro{max-width:760px;margin:2rem 0 2.25rem}
.appointment-intro .detail-lead{max-width:58ch}
.detail-page:has(.appointment-intro) .booking{max-width:920px;margin:0 0 3.5rem}
@media(max-width:700px){.appointment-intro{margin:1.25rem 0 1.75rem}.detail-page:has(.appointment-intro) .booking{margin-bottom:2.5rem}}

/* Patient rating only: preserve the kiosk and both ZGFK signs. */
.detail-page .detail-hero .detail-hero-image.detail-hero-ervaringen{aspect-ratio:auto;height:auto;overflow:hidden}
.detail-page .detail-hero .detail-hero-image.detail-hero-ervaringen img{position:static;display:block;width:100%;height:auto;object-fit:contain;transform:none}

/* Patient stories only: retain the original portrait proportions without cropping. */
.detail-page .detail-hero .detail-hero-image.detail-hero-verhalen{aspect-ratio:auto;height:auto;min-height:0;overflow:hidden}
.detail-page .detail-hero .detail-hero-image.detail-hero-verhalen img,
.story-image.patient-stories-photo img{position:static;display:block;width:auto;max-width:100%;height:auto;max-height:none;object-fit:contain;transform:none;margin-inline:auto}
.story-image.patient-stories-photo{aspect-ratio:auto;height:auto;min-height:0}

/* Static location map and compact directions link. */
.location-map .location-map-image{display:block;width:100%;height:auto;border-radius:8px}
.location-map .button{display:inline-flex;width:fit-content;min-height:36px;padding:.5rem .8rem;font-size:.82rem;line-height:1.3;box-shadow:none}

/* Contact email above the logo, opposite the utility navigation. */
.utility-inner .utility-email{display:flex;margin-right:auto;flex:0 0 auto}
.utility-inner .utility-email a{display:inline;color:#e8f3f4;font-weight:400;white-space:nowrap}
