:root{--ink:#11333d;--deep:#092630;--teal:#08747b;--pale:#f0f8f8;--muted:#55717a;--line:#d8e8e8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:16px/1.65 system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:white}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.14;letter-spacing:-.035em}h1{font-size:clamp(2.6rem,6vw,5rem)}h2{font-size:clamp(2rem,4vw,3.2rem)}h3{font-size:1.3rem}p{color:var(--muted)}a{color:inherit}img{display:block;max-width:100%}a:focus-visible,summary:focus-visible{outline:3px solid #f7ba60;outline-offset:4px}.wrap{max-width:1190px;width:calc(100% - 44px);margin:auto}.skip{position:absolute;left:-9999px;top:8px;background:#fff;padding:12px;z-index:40}.skip:focus{left:12px}.topbar{background:var(--deep);color:#d1e4e7;font-size:.76rem}.topbar .wrap{display:flex;justify-content:space-between;gap:14px;padding:8px 0}.topbar a{color:#fff;text-decoration:none}header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.nav{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;align-items:center;gap:11px;text-decoration:none}.brand img{width:60px;height:60px;object-fit:contain}.brand strong{display:block;font-size:1.5rem;letter-spacing:.06em;line-height:1.05}.brand small{display:block;color:#607780;line-height:1.3;font-size:.63rem;font-weight:650;margin-top:5px}.links{display:flex;align-items:center;gap:25px}.links a{text-decoration:none;font-size:.88rem;font-weight:750}.links a:hover,.text-link:hover{color:var(--teal)}.links .call{background:var(--ink);color:#fff;padding:12px 17px;border-radius:7px}.links .call:hover{color:#fff;background:var(--teal)}.menu{display:none}.eyebrow{color:var(--teal);font-weight:850;letter-spacing:.16em;text-transform:uppercase;font-size:.72rem}.hero{background:#f7fbfa}.hero .wrap{display:grid;grid-template-columns:1.07fr .93fr;gap:58px;align-items:center;padding:78px 0 88px}.hero h1{margin:22px 0}.hero h1 em{font-style:normal;color:var(--teal)}.lead{font-size:1.06rem;line-height:1.82}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0 21px}.btn{display:inline-flex;justify-content:space-between;align-items:center;gap:22px;text-decoration:none;font-size:.88rem;font-weight:780;min-height:52px;padding:13px 20px;border-radius:8px;border:1px solid transparent}.btn:after{content:"↗";font-size:1.1rem}.primary{background:var(--teal);color:#fff}.primary:hover{background:#07545b}.secondary{background:#fff;border-color:#c9dcdc}.secondary:hover{background:#e8f4f4}.tiny{font-size:.84rem}.visual{min-height:470px;border-radius:12px 12px 82px 12px;background:linear-gradient(140deg,#093742,#08747b);color:#fff;position:relative;overflow:hidden;padding:44px;display:flex;flex-direction:column;justify-content:space-between;isolation:isolate}.visual:before{content:"";position:absolute;width:420px;height:420px;right:-130px;top:-110px;border:1px solid #ffffff70;border-radius:50%;z-index:-1}.visual:after{content:"";position:absolute;inset:0;background-image:linear-gradient(#ffffff36 1px,transparent 1px),linear-gradient(90deg,#ffffff36 1px,transparent 1px);background-size:40px 40px;opacity:.5;z-index:-1}.visual small{font-size:.71rem;letter-spacing:.22em;font-weight:850}.visual b{font-size:clamp(3.3rem,5.2vw,5rem);line-height:1.07;letter-spacing:-.055em}.visual footer{font-size:.75rem;border-top:1px solid #ffffff80;padding-top:20px;display:flex;justify-content:space-between;gap:15px}.quick{border-bottom:1px solid var(--line)}.quick .wrap{display:grid;grid-template-columns:repeat(3,1fr)}.quick .wrap>div{padding:25px;border-right:1px solid var(--line)}.quick .wrap>div:first-child{padding-left:0}.quick .wrap>div:last-child{border:0}.quick span{display:block;color:var(--teal);letter-spacing:.12em;font-size:.7rem;font-weight:850;text-transform:uppercase}.quick strong,.quick a{font-size:.92rem;text-decoration:none}.section{padding:102px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(35px,8vw,135px)}.split p{font-size:1.02rem;line-height:1.85}.text-link{color:var(--teal);font-size:.88rem;text-decoration:none;font-weight:850;border-bottom:1px solid #b3d0cb;padding-bottom:5px}.tint{background:var(--pale)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:34px}.section-head h2{margin-bottom:0}.section-head>p{max-width:360px;margin:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:32px;display:flex;flex-direction:column;align-items:flex-start;min-height:300px}.card .num{font-size:.75rem;font-weight:850;color:var(--teal);letter-spacing:.13em;margin-bottom:35px}.card p{font-size:.92rem}.card .text-link{margin-top:auto}.note{margin:22px 0 0;font-size:.8rem;max-width:800px}.visit{display:grid;grid-template-columns:1fr 1fr;background:var(--pale);border-radius:12px;overflow:hidden}.visit-copy{padding:50px}.visit-copy p{line-height:1.8}.map{min-height:365px;background:#d3eae5;position:relative;overflow:hidden}.map:before{content:"";position:absolute;top:48%;left:-12%;width:125%;height:25px;background:white;transform:rotate(-25deg);box-shadow:0 0 0 6px #bcdad3}.map:after{content:"";position:absolute;top:-10%;left:38%;height:120%;width:23px;background:white;transform:rotate(20deg);box-shadow:0 0 0 6px #bcdad3}.pin{position:absolute;top:35%;left:56%;z-index:2;background:var(--teal);border-radius:50% 50% 50% 0;transform:rotate(-45deg);width:77px;height:77px;display:grid;place-items:center;color:#fff;font-size:2.4rem}.pin span{transform:rotate(45deg)}.map-label{position:absolute;bottom:17px;right:17px;z-index:2;background:#fff;padding:10px 15px;font-size:.67rem;letter-spacing:.1em;font-weight:800}.faq{max-width:900px}.faq details{border-bottom:1px solid #cddfdf;padding:20px 0}.faq summary{font-weight:760;cursor:pointer}.faq details p{margin:13px 30px 0 0}.ribbon{background:var(--ink);color:#fff;padding:58px 0}.ribbon .wrap{display:flex;align-items:center;justify-content:space-between;gap:25px}.ribbon .eyebrow{color:#b1dddc}.ribbon h2{color:#fff;font-size:clamp(1.8rem,3vw,2.65rem);margin:5px 0}.ribbon .btn{background:#fff;flex-shrink:0}.site-footer{background:var(--deep);color:#e0eeee;padding:58px 0 24px}.foot-grid{display:grid;grid-template-columns:1.55fr 1fr 1fr;gap:44px}.site-footer .brand small,.site-footer p{color:#b2cbcf}.site-footer h3{font-size:.93rem}.site-footer .foot-links{display:flex;flex-direction:column;gap:10px}.foot-links a,.foot-links span{font-size:.87rem;color:#b7d0d2;text-decoration:none}.foot-links a:hover{color:#fff;text-decoration:underline}.copyright{border-top:1px solid #ffffff2c;padding-top:20px;margin-top:42px;display:flex;justify-content:space-between;font-size:.75rem;color:#b3cdd0;gap:10px}.copyright a{color:#fff;text-decoration:none}
@media(max-width:950px){.links{gap:13px}.hero .wrap{gap:30px}.visual{padding:30px}.cards{grid-template-columns:repeat(2,1fr)}.cards .card:last-child{grid-column:1/-1}}
@media(max-width:760px){.links{display:none}.menu{display:block;position:relative}.menu summary{background:var(--ink);color:white;border-radius:7px;padding:9px 14px;cursor:pointer;font-weight:750;list-style:none}.menu summary::-webkit-details-marker{display:none}.menu div{position:absolute;right:0;top:43px;background:#fff;border:1px solid var(--line);box-shadow:0 16px 27px #0002;padding:12px;min-width:200px;z-index:10;border-radius:8px}.menu a{display:block;text-decoration:none;font-size:.88rem;font-weight:700;padding:10px}.hero .wrap{grid-template-columns:1fr;padding:58px 0}.visual{min-height:340px}.split{grid-template-columns:1fr;gap:16px}.quick .wrap{grid-template-columns:1fr}.quick .wrap>div{padding:17px 0;border-right:0;border-bottom:1px solid var(--line)}.quick .wrap>div:last-child{border:0}.visit{grid-template-columns:1fr}.map{min-height:300px}.foot-grid{grid-template-columns:1fr 1fr}.foot-grid>div:first-child{grid-column:1/-1}.ribbon .wrap{display:block}.ribbon .btn{margin-top:20px}}
@media(max-width:520px){.wrap{width:calc(100% - 32px)}.topbar .wrap{font-size:.67rem}.nav{min-height:75px}.brand img{width:48px;height:48px}.brand strong{font-size:1.2rem}.brand small{font-size:.52rem}.hero h1{font-size:clamp(2.8rem,10vw,4.1rem)}.visual{min-height:315px}.visual b{font-size:3.1rem}.actions .btn{width:100%}.section{padding:69px 0}.section-head{display:block}.section-head>p{margin-top:14px}.cards{grid-template-columns:1fr}.cards .card:last-child{grid-column:auto}.visit-copy{padding:30px}.foot-grid{grid-template-columns:1fr}.foot-grid>div:first-child{grid-column:auto}.copyright{display:block}.copyright span{display:block;margin-top:7px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.booking-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(30px,8vw,110px);align-items:start}
.booking-layout>div>p:not(.eyebrow){font-size:1.02rem;line-height:1.8}
.booking-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:clamp(24px,4vw,42px);display:grid;gap:10px;box-shadow:0 13px 35px #0926300d}
.booking-card h3{margin-bottom:12px}
.booking-card label{display:block;font-size:.85rem;color:var(--ink);font-weight:760}
.booking-card input:not([type=checkbox]),.booking-card select{display:block;width:100%;min-height:47px;border:1px solid #bacfd3;border-radius:8px;padding:10px 12px;color:var(--ink);background:#fff;font:inherit}
.booking-card input:focus-visible,.booking-card select:focus-visible{outline:3px solid #f2ba5a;outline-offset:2px}
.booking-card select{cursor:pointer}.booking-dates{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.booking-dates>div{min-width:0}.booking-dates label{margin-bottom:8px}
.booking-privacy{margin-top:9px}.booking-privacy label{font-weight:550;display:flex;align-items:flex-start;gap:10px;line-height:1.5}
.booking-privacy input{margin-top:5px;flex-shrink:0}
.booking-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.booking-status{font-size:.84rem;margin:8px 0;min-height:2.8em}.booking-status[data-error=true]{color:#9b3832}
.booking-card button{font:inherit;cursor:pointer}.booking-card button:disabled{opacity:.52;cursor:not-allowed}
@media(max-width:800px){.booking-layout{grid-template-columns:1fr;gap:24px}}
@media(max-width:520px){.booking-dates{grid-template-columns:1fr}}


/* Accessible, persistent language switching across desktop and mobile. */
.language-selector{display:flex;align-items:center;gap:9px;flex-shrink:0}
.language-selector label{font-size:.72rem;font-weight:800;color:var(--muted);white-space:nowrap}
.language-selector select{width:148px;max-width:100%;min-height:42px;padding:8px 28px 8px 10px;border:1px solid #b7d0d3;background:#fff;border-radius:8px;color:var(--ink);font:600 .83rem/1.35 system-ui,sans-serif;cursor:pointer}
.language-selector select:focus-visible{outline:3px solid #e6a840;outline-offset:2px}
.language-notice{margin:0 auto;padding:13px max(22px,calc((100vw - 1190px)/2));max-width:none;border-bottom:1px solid var(--line);background:#f5f8f8;color:#304852;font-size:.84rem;line-height:1.5}
.language-notice[hidden]{display:none}
@media(max-width:1240px){.nav{gap:13px}.links{gap:12px}.links a{font-size:.76rem}.language-selector select{width:135px}.language-selector label{display:none}}
@media(max-width:760px){.language-selector{margin-left:auto}.language-selector label{display:none}.language-selector select{min-width:112px;width:127px}}
@media(max-width:400px){.brand small{display:none}.brand{gap:6px}.brand img{width:43px;height:43px}.language-selector select{width:118px;font-size:.74rem;padding-left:7px}.menu summary{padding:9px}}


.hero-welcome{font-weight:800;letter-spacing:.03em;font-size:.93rem;color:#096f73;margin:0 0 8px}


/* Real BOCATS facility photography. One compressed atlas avoids six photo downloads. */
.visual-hospital{background:#12333d url("https://1744270f-92c4-4fee-87ba-59a2ad385863.sandbox.floot.app/_cdn/static/bb5d25bb-8ce4-4800-9f03-ca071bc452f2-bocats-facilities.webp") left top / 300% 200% no-repeat}
.visual-hospital::before{background:linear-gradient(90deg,#092630ca,#09263028);inset:0;width:auto;height:auto;border:0;border-radius:0;top:0;right:0;z-index:-1}
.visual-hospital::after{display:none}
.gallery-section{background:#fff}.facility-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.facility-gallery figure{margin:0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#f7fbfa}
.facility-photo{width:100%;aspect-ratio:3/2;background-image:url("https://1744270f-92c4-4fee-87ba-59a2ad385863.sandbox.floot.app/_cdn/static/bb5d25bb-8ce4-4800-9f03-ca071bc452f2-bocats-facilities.webp");background-size:300% 200%;background-repeat:no-repeat;background-color:#d9e8e7}
.facility-1{background-position:0% 0%}.facility-2{background-position:50% 0%}.facility-3{background-position:100% 0%}
.facility-4{background-position:0% 100%}.facility-5{background-position:50% 100%}.facility-6{background-position:100% 100%}
.facility-gallery figcaption{padding:15px 17px;color:var(--ink);font-size:.9rem;font-weight:760}
@media(max-width:900px){.facility-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.facility-gallery{grid-template-columns:1fr}.facility-photo{aspect-ratio:3/2}}


/* Dedicated multi-page BOCATS navigation and section layout. */
.links a[aria-current=page],.menu a[aria-current=page]{color:var(--teal);text-decoration:underline;text-underline-offset:7px}
.page-hero{background:#f2f8f8;padding:72px 0 76px;border-bottom:1px solid var(--line)}
.page-hero .eyebrow{margin-bottom:15px}.page-hero h1{max-width:960px;font-size:clamp(2.8rem,5vw,4.7rem);margin:0 0 17px}
.page-hero .lead{max-width:780px;margin:0;line-height:1.75}
.page-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.page-links>a{display:flex;flex-direction:column;gap:13px;min-height:246px;padding:26px;background:#fff;border:1px solid var(--line);border-radius:10px;text-decoration:none;transition:border-color .16s ease,transform .16s ease}
.page-links>a:hover{transform:translateY(-2px);border-color:var(--teal)}
.page-links span{font-size:.7rem;letter-spacing:.13em;font-weight:850;color:var(--teal)}
.page-links strong{font-size:1.45rem;line-height:1.22;letter-spacing:-.025em}
.page-links small{font-size:.9rem;color:var(--muted);line-height:1.55}
.page-links b{margin-top:auto;font-size:.83rem;color:var(--teal)}
.page-links.short-links{grid-template-columns:repeat(2,minmax(0,1fr))}
.teaser-photo{display:flex;align-items:end;justify-content:end;min-height:330px;border-radius:12px;overflow:hidden;text-decoration:none;background:#12333d url("https://1744270f-92c4-4fee-87ba-59a2ad385863.sandbox.floot.app/_cdn/static/bb5d25bb-8ce4-4800-9f03-ca071bc452f2-bocats-facilities.webp") left top / 300% 200% no-repeat}
.teaser-photo span{padding:15px 18px;background:#fff;font-weight:800;font-size:.9rem;color:var(--ink);margin:15px;border-radius:6px}
.team-intro{max-width:700px;line-height:1.8}.team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;margin-top:32px}
.team-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}
.team-card>img,.team-card>.facility-photo{display:block;width:100%;height:350px;object-fit:cover;object-position:center 32%;background-color:#e2eeee}
.team-card>div:last-child{padding:24px 28px 30px}
.team-card .eyebrow{margin-bottom:12px}.team-card h3{font-size:1.55rem}
@media(max-width:1200px){.links{display:none}.menu{display:block;position:relative}.menu summary{background:var(--ink);color:#fff;border-radius:7px;padding:10px 14px;cursor:pointer;font-weight:750;list-style:none}.menu div{position:absolute;right:0;top:44px;background:#fff;border:1px solid var(--line);box-shadow:0 14px 28px #0002;padding:12px;min-width:240px;z-index:11;border-radius:8px;max-height:70vh;overflow:auto}.menu a{display:block;text-decoration:none;font-size:.88rem;font-weight:700;padding:9px}.nav{gap:15px}}
@media(max-width:900px){.page-links{grid-template-columns:repeat(2,minmax(0,1fr))}.team-grid{grid-template-columns:1fr}}
@media(max-width:600px){.page-hero{padding:49px 0 51px}.page-links,.page-links.short-links{grid-template-columns:1fr}.page-links>a{min-height:190px}.team-card>img,.team-card>.facility-photo{height:270px}.team-card>div:last-child{padding:22px}}
@media(prefers-reduced-motion:reduce){.page-links>a{transition:none}.page-links>a:hover{transform:none}}


/* BOCATS 2026: production-ready editorial hospital design system.
   Overrides obsolete one-page styles in site.css without changing care facts. */
:root{--ink:#18343b;--deep:#0d272c;--teal:#07685f;--pale:#f3f7f5;--muted:#506870;--line:#dce6e4;--warm:#e9eee9}
html{scroll-padding-top:134px}
body{background:#fff;color:var(--ink);font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.66;text-rendering:optimizeLegibility}
h1,h2{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.035em;font-weight:700;line-height:1.13;overflow-wrap:break-word}
h3{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:-.025em;line-height:1.28}
h1{font-size:clamp(2.7rem,5vw,4.65rem)}
h2{font-size:clamp(2rem,3.35vw,3.05rem)}
p{color:var(--muted)} strong{color:inherit}
button,input,select{font:inherit}
a{transition:color .15s ease,background-color .15s ease,border-color .15s ease}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #c88c2e;outline-offset:3px}
.wrap{max-width:1230px;width:calc(100% - 64px)}
.topbar{background:#0b3036;letter-spacing:.015em}
.topbar .wrap{min-height:36px;align-items:center;padding:5px 0;font-size:.76rem}
.topbar a{font-weight:800}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.99);border-bottom:1px solid #dbe4e1;box-shadow:0 5px 26px rgba(13,39,44,.06)}
.nav{min-height:unset;display:grid;grid-template-columns:minmax(230px,1fr) auto;grid-template-rows:auto auto;gap:10px 25px;align-items:center;padding:14px 0 0}
.brand{grid-area:auto;min-width:0;width:max-content;max-width:100%;gap:12px}
.brand img{width:54px;height:54px;object-fit:contain;flex:none}
.brand strong{color:#16383b;font-size:1.4rem;letter-spacing:.07em;font-weight:850}
.brand small{font-size:.61rem;letter-spacing:.015em;margin-top:3px;color:#547179}
.header-controls{display:flex;justify-content:flex-end;align-items:center;gap:16px;min-width:0}
.header-cta{display:inline-flex;align-items:center;gap:20px;min-height:43px;padding:8px 17px;background:var(--teal);border:1px solid var(--teal);color:#fff;text-decoration:none;border-radius:5px;font-size:.83rem;font-weight:800;white-space:nowrap}
.header-cta:hover{background:#064b47;color:#fff}
.language-selector{gap:8px}
.language-selector label{font-size:.72rem;color:var(--muted);font-weight:800}
.language-selector select{width:151px;min-height:43px;border:1px solid #c4d4d1;border-radius:5px;background:#fff;font-weight:700;color:var(--ink);font-size:.84rem}
.links{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:6px;border-top:1px solid var(--line);min-width:0}
.links a{display:inline-flex;align-items:center;min-height:50px;padding:9px 10px;color:#36535a;font-size:.835rem;font-weight:730;text-decoration:none;white-space:nowrap;border-bottom:3px solid transparent}
.links a:hover{color:var(--teal);background:var(--pale)}
.links a[aria-current="page"]{color:var(--teal);border-color:var(--teal);text-decoration:none}
.menu{display:none}
.language-notice{position:relative;z-index:1;padding:10px max(20px,calc((100vw - 1230px)/2));border-bottom:1px solid #d2e4dc;background:#f6f8ed;color:#4f5333}
.hero{background:linear-gradient(120deg,#f7faf8 0%,#ecf3ef 100%);border-bottom:1px solid var(--line)}
.hero .wrap{grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);gap:clamp(28px,4vw,66px);padding:clamp(52px,6.2vw,84px) 0;align-items:center}
.hero h1{max-width:660px;font-size:clamp(2.7rem,4.9vw,4.75rem);line-height:1.13;margin:14px 0 19px}
.hero h1 em{font-style:normal;color:var(--teal)}
.hero .lead{max-width:620px;line-height:1.76;font-size:1.08rem}
.hero .eyebrow{font-size:.71rem;letter-spacing:.13em}
.hero-welcome{color:#2b5b59;letter-spacing:.035em;font-size:.81rem;margin-bottom:10px}
.actions{gap:11px;margin:27px 0 21px}
.btn{min-height:49px;display:inline-flex;align-items:center;justify-content:center;gap:12px;line-height:1.25;text-align:center;border-radius:5px;padding:13px 20px;white-space:normal;font-weight:780;font-size:.85rem}
.btn::after{display:none}
.btn.primary{background:var(--teal);border-color:var(--teal);color:white}
.btn.primary:hover{background:#034c46}
.btn.secondary{background:#fff;border-color:#b9cfcb;color:var(--ink)}
.btn.secondary:hover{background:#e5efeb}
.visual-hospital{min-height:490px;aspect-ratio:9/10;margin:0;padding:0;background:#dae3df;border:0;border-radius:9px;overflow:hidden;box-shadow:0 23px 45px rgba(19,47,48,.13);isolation:auto}
.visual-hospital::before,.visual-hospital::after{display:none}
.visual-hospital img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.visual-caption{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:12px;background:rgba(10,43,47,.93);padding:16px 20px;color:#fff;font-size:.78rem;font-weight:700}
.visual-caption span{color:#d6eae6;letter-spacing:.035em}
.visual-caption strong{font-weight:800}
.quick{background:#fff}
.quick .wrap{grid-template-columns:repeat(3,minmax(0,1fr))}
.quick .wrap>div{padding:22px 25px}
.quick span{font-size:.65rem;letter-spacing:.11em;color:var(--teal)}
.quick strong,.quick a{font-weight:760;font-size:.9rem;overflow-wrap:anywhere}
.section{padding:clamp(64px,6.5vw,92px) 0}
.split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,6vw,100px);align-items:start}
.split p{font-size:1rem;line-height:1.83}
.eyebrow{color:var(--teal);font-weight:850;letter-spacing:.15em;font-size:.7rem}
.section-head{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.85fr);gap:clamp(18px,4vw,50px);align-items:end;margin-bottom:32px}
.section-head h2{margin:0}.section-head>p{max-width:460px;margin:0;font-size:.96rem;line-height:1.76}
.page-hero{padding:clamp(43px,5vw,68px) 0;min-height:0;border-bottom:1px solid var(--line);background:#f4f8f6}
.page-hero h1{max-width:920px;font-size:clamp(2.45rem,4.3vw,4.05rem);margin:9px 0 14px}
.page-hero .lead{max-width:780px;font-size:1.05rem;line-height:1.74}
.page-hero .eyebrow{margin:7px 0 4px}
.breadcrumb{display:flex;align-items:center;gap:11px;margin-bottom:26px;font-size:.76rem;color:#526f73;font-weight:730}
.breadcrumb a{text-decoration:none;color:#315d61}.breadcrumb a:hover{text-decoration:underline}
.breadcrumb [aria-current="page"]{color:var(--ink)}
.page-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.page-links>a{min-width:0;min-height:235px;padding:27px;background:#fff;border:1px solid var(--line);border-radius:7px;box-shadow:none;display:flex;flex-direction:column;gap:12px}
.page-links>a:hover{border-color:#72a7a0;transform:translateY(-2px);box-shadow:0 8px 25px rgba(15,55,53,.07)}
.page-links span{color:var(--teal);font-size:.69rem}
.page-links strong{font-size:1.32rem;line-height:1.29;letter-spacing:-.02em}
.page-links small{font-size:.9rem;line-height:1.58}
.page-links b{margin-top:auto;color:var(--teal);font-size:.8rem}
.page-links.short-links{grid-template-columns:repeat(2,minmax(0,1fr))}
.teaser-photo{position:relative;min-height:350px;display:block;overflow:hidden;background:#d7e5df;border-radius:8px}
.teaser-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform .25s ease}
.teaser-photo:hover img{transform:scale(1.025)}
.teaser-photo span{position:absolute;right:14px;bottom:14px;margin:0;background:#fff;padding:11px 15px;font-size:.8rem;box-shadow:0 2px 12px #0002}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.card{min-width:0;min-height:270px;padding:27px;background:#fff;border:1px solid var(--line);border-radius:7px;box-shadow:none}
.card .num{font-size:.65rem;letter-spacing:.1em;margin-bottom:15px}
.card h3{margin:0 0 10px;font-size:1.2rem;line-height:1.35;overflow-wrap:break-word}
.card p{font-size:.89rem;line-height:1.7;margin-bottom:22px}
.card .text-link{margin-top:auto;font-size:.78rem}
.text-link{color:var(--teal);border-color:#a4c8c1}
.note{max-width:850px;font-size:.82rem;line-height:1.76}
.service-tools{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;margin:0 0 23px;padding:20px;background:#fff;border:1px solid var(--line);border-radius:7px}
.service-tools label{font-size:.85rem;font-weight:750;white-space:nowrap}
.service-tools input{width:clamp(200px,32vw,390px);min-height:44px;border-radius:5px;padding:9px 13px;border:1px solid #b9d1cb;background:#fff;color:var(--ink)}
.service-tools span{font-size:.79rem;color:var(--muted);margin-left:auto}
.service-empty{padding:25px;background:#fff;border-left:3px solid var(--teal);border-radius:5px;font-weight:650}
.service-empty[hidden]{display:none}
.facility-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.facility-gallery-item{background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;margin:0;min-width:0;box-shadow:0 4px 12px rgba(19,43,42,.035)}
.facility-gallery-item:first-child{grid-column:span 2}
.gallery-image{display:block;overflow:hidden;background:#e9eeee;aspect-ratio:4/3}
.facility-gallery-item:first-child .gallery-image{aspect-ratio:2.02/1}
.gallery-image img{width:100%;height:100%;display:block;object-fit:cover;object-position:center;transition:transform .23s ease}
.gallery-image:hover img{transform:scale(1.035)}
.facility-gallery-item figcaption{padding:15px 18px;font-size:.86rem;font-weight:750;display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--ink)}
.facility-gallery-item figcaption span{color:var(--teal)}
.facility-gallery-item>.facility-photo{aspect-ratio:4/3}
.team-intro{max-width:780px;line-height:1.75}
.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.team-card{border-radius:8px;overflow:hidden;min-width:0}
.team-card>img,.team-card>.facility-photo{height:clamp(270px,32vw,410px);width:100%;object-fit:cover;object-position:center 25%}
.team-card>div:last-child{padding:27px}
.team-card h3{font-size:1.38rem;line-height:1.4}
.team-card .eyebrow{margin-bottom:8px}
.booking-layout{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:clamp(27px,5vw,80px);align-items:start}
.booking-layout>div>p:not(.eyebrow){line-height:1.8}
.booking-card{border:1px solid var(--line);border-radius:9px;box-shadow:0 12px 33px rgba(20,51,45,.07);padding:clamp(25px,3vw,39px);gap:10px;min-width:0}
.booking-card h3{margin:0 0 9px;font-size:1.38rem}
.booking-card label{font-size:.83rem;line-height:1.5;margin-top:7px}
.booking-card input:not([type=checkbox]),.booking-card select{min-height:48px;border-radius:5px;border:1px solid #b9cfc8;background:#fff;color:var(--ink);font-size:.9rem;padding:10px 12px}
.booking-card input:focus-visible,.booking-card select:focus-visible{outline:3px solid #c88c2e;outline-offset:2px}
.booking-card button{width:100%;font-weight:790}
.booking-card[hidden],.booking-fallback[hidden]{display:none}
.booking-fallback{background:#fff;border:1px solid #bad1c7;border-left:4px solid var(--teal);border-radius:8px;padding:28px;box-shadow:0 7px 28px #0000000d}
.booking-fallback h3{margin:0 0 12px;font-size:1.32rem}.booking-fallback p{line-height:1.75}
.booking-fallback .actions{margin:15px 0 0}
.booking-privacy label{font-size:.85rem!important;font-weight:530}
.visit{grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:#f5f8f6;border:1px solid var(--line);border-radius:10px}
.visit-copy{padding:clamp(25px,4vw,51px)}
.visit-copy h2{margin-bottom:18px}
.visit-copy p{font-size:.94rem;line-height:1.77}
.visit-copy a:not(.btn){overflow-wrap:anywhere;color:var(--teal);text-underline-offset:3px}
.location-visual{display:flex;flex-direction:column;background:#e4eeeb;min-width:0}
.location-visual>img{display:block;width:100%;height:310px;object-fit:cover;object-position:center}
.location-visual>div{background:#e6f0ec;padding:23px 25px;display:flex;flex-direction:column;align-items:flex-start;gap:7px;min-height:180px}
.location-visual strong{font-size:1.13rem;color:var(--ink)}
.location-visual span{font-size:.88rem;color:var(--muted)}
.location-visual a{font-size:.86rem;color:var(--teal);font-weight:800;text-decoration:none;margin-top:12px}
.location-visual a:hover{text-decoration:underline}
.faq{max-width:920px}
.faq details{border:1px solid var(--line);border-radius:7px;background:#fff;margin-bottom:10px;padding:0}
.faq summary{position:relative;padding:21px 55px 21px 22px;list-style:none;line-height:1.55;font-size:.95rem;cursor:pointer;font-weight:770;color:var(--ink)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:22px;top:50%;transform:translateY(-50%);font-size:1.4rem;font-weight:500;color:var(--teal)}
.faq details[open] summary::after{content:"−"}
.faq details[open] summary{border-bottom:1px solid var(--line)}
.faq details p{padding:19px 22px 21px;margin:0;font-size:.91rem;line-height:1.75}
.ribbon{background:#12343b;padding:clamp(38px,5vw,60px) 0}
.ribbon .wrap{gap:25px}
.ribbon h2{font-size:clamp(1.8rem,3vw,2.45rem)}
.ribbon .btn{min-width:215px;background:#fff;color:var(--ink)}
.site-footer{background:#0b262c;padding:58px 0 22px}
.foot-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr) minmax(0,1fr);gap:35px}
.site-footer .brand strong{color:#fff}
.site-footer p{max-width:370px;font-size:.86rem;line-height:1.72}
.site-footer .foot-links a,.site-footer .foot-links span{font-size:.85rem;line-height:1.55}
.site-footer .foot-links a:hover{color:#fff}
.copyright{margin-top:42px;flex-wrap:wrap}
@media(max-width:1060px){
 .nav{display:flex;justify-content:space-between;padding:12px 0;min-height:79px}
 .links{display:none}
 .menu{display:block;position:relative}
 .menu summary{display:flex;align-items:center;gap:7px;min-height:42px;background:var(--deep);color:white;border-radius:5px;padding:9px 12px;font-size:.82rem;font-weight:750;list-style:none;cursor:pointer}
 .menu summary::-webkit-details-marker{display:none}
 .menu .menu-symbol{font-size:1.15rem;line-height:1}
 .menu>div{position:absolute;top:calc(100% + 11px);right:0;z-index:70;background:#fff;border:1px solid #bfd1cc;box-shadow:0 17px 45px #102c3540;padding:11px;min-width:min(310px,calc(100vw - 35px));max-height:min(75vh,640px);overflow-y:auto;border-radius:7px}
 .menu a{display:block;min-height:43px;padding:10px 12px;border-radius:4px;font-size:.9rem;font-weight:750;text-decoration:none}
 .menu a:hover,.menu a[aria-current="page"]{background:#eaf3f0;color:var(--teal)}
 .menu .menu-call{margin-top:9px;border-top:1px solid var(--line);border-radius:0;color:var(--teal)}
 .language-selector label{display:none}
 .hero .wrap{gap:30px}
}
@media(max-width:820px){
 .wrap{width:calc(100% - 42px)}
 .section-head{grid-template-columns:1fr;gap:14px}
 .section-head>p{max-width:650px}
 .hero .wrap{grid-template-columns:1fr;padding:56px 0}
 .hero h1{max-width:720px}
 .visual-hospital{min-height:370px;aspect-ratio:16/10}
 .split,.booking-layout,.visit{grid-template-columns:1fr}
 .page-links,.cards,.facility-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
 .facility-gallery-item:first-child{grid-column:span 2}
 .team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
 .team-card>img,.team-card>.facility-photo{height:280px}
 .location-visual>img{height:300px}
 .quick .wrap{grid-template-columns:1fr 1fr}
 .quick .wrap>div{padding:17px 11px}
 .quick .wrap>div:last-child{grid-column:span 2;border-top:1px solid var(--line)}
 .foot-grid{grid-template-columns:1fr 1fr}
 .foot-grid>div:first-child{grid-column:span 2}
 .ribbon .wrap{display:block}.ribbon .btn{margin-top:20px}
}
@media(max-width:580px){
 .wrap{width:calc(100% - 34px)}
 .topbar .wrap{justify-content:center;font-size:.72rem}
 .topbar .wrap>span{display:none}
 .nav{gap:8px;min-height:69px;padding:9px 0}
 .brand{gap:7px}.brand img{width:43px;height:43px}.brand strong{font-size:1.17rem}
 .brand small{font-size:.49rem;line-height:1.25}
 .header-controls{gap:6px}
 .header-cta{display:none}
 .language-selector select{width:108px;max-width:108px;min-height:42px;padding:6px 20px 6px 7px;font-size:.73rem}
 .menu summary{width:45px;min-height:42px;justify-content:center;padding:6px 9px}
 .menu .menu-word{display:none}
 .hero .wrap{padding:39px 0 49px}
 .hero h1{font-size:clamp(2.6rem,10vw,3.5rem)}
 .hero .lead,.page-hero .lead{font-size:.98rem}
 .hero .actions .btn,.booking-fallback .actions .btn{width:100%}
 .visual-hospital{min-height:310px;aspect-ratio:4/3}
 .quick .wrap{grid-template-columns:1fr}
 .quick .wrap>div,.quick .wrap>div:last-child{grid-column:1;min-width:0;border-right:0;border-bottom:1px solid var(--line);padding:15px 0}
 .quick .wrap>div:last-child{border:0}
 .section{padding:58px 0}
 .split{gap:20px}
 .page-links,.page-links.short-links,.cards,.facility-gallery,.team-grid{grid-template-columns:1fr}
 .page-links>a{min-height:177px;padding:22px}
 .facility-gallery-item:first-child{grid-column:span 1}
 .gallery-image,.facility-gallery-item:first-child .gallery-image{aspect-ratio:4/3}
 .team-card>img,.team-card>.facility-photo{height:320px}
 .service-tools{display:grid;gap:9px;padding:15px}
 .service-tools input{width:100%}
 .service-tools span{margin:0}
 .booking-card{padding:22px 18px}
 .booking-dates{grid-template-columns:1fr}
 .visit-copy{padding:24px}
 .location-visual>img{height:240px}
 .foot-grid{grid-template-columns:1fr;gap:26px}
 .foot-grid>div:first-child{grid-column:auto}
 .copyright{display:block}
 .copyright span{display:block;margin:7px 0}
 .visual-caption{font-size:.7rem;gap:7px;padding:12px 13px}
 .faq summary{padding:18px 45px 18px 17px}
 .faq details p{padding:16px 17px}
}
@media(max-width:350px){
 .brand small{display:none}
 .language-selector select{width:99px;max-width:99px}
 .menu summary{width:42px}
}
@media(prefers-reduced-motion:reduce){
 a,.page-links>a,.gallery-image img,.teaser-photo img{transition:none!important}
 .page-links>a:hover,.gallery-image:hover img,.teaser-photo:hover img{transform:none!important}
}

/* Filtered service cards must actually disappear despite their author-defined flex display. */
.card[hidden]{display:none!important}

