:root{--v2-paper:#fffaf8;--v2-ink:#211d1c;--v2-wine:#531f24;--v2-wine-deep:#351416;--v2-blue:#76a9c4;--v2-line:#e8dfda;--v2-fog:#f3efed}
body{background:#d9d8d7;color:var(--v2-ink)}
.page-shell{background:var(--v2-paper)}
.topbar{background:rgba(255,250,248,.9);border-color:rgba(83,31,36,.12)}
.topbar .logo,.topbar nav a{color:var(--v2-ink)}
.topbar .logo span{color:var(--v2-wine)}
.button.black{background:var(--v2-wine-deep);border-color:var(--v2-wine-deep)}
.hero{min-height:720px;background:#dbe8ef}
.hero-photo{background-image:url('assets/hero-v2.png');background-position:center center;background-size:cover}
.hero-overlay{background:linear-gradient(90deg,rgba(236,246,249,.96) 0%,rgba(236,246,249,.78) 36%,rgba(236,246,249,.08) 68%,rgba(33,29,28,.08) 100%)}
.hero-copy{max-width:860px}
.hero-copy h1{font-size:clamp(58px,7vw,118px);line-height:.88;letter-spacing:-.072em;max-width:900px}
.hero-copy h1 span{color:var(--v2-wine);white-space:nowrap}
.hero-note{max-width:520px;font-size:15px;line-height:1.45}
.hero-stats b{color:var(--v2-wine)}
.section{background:var(--v2-paper)}
.section-title small,.faq small{color:var(--v2-wine)}
.photo-rail,.team-rail{cursor:grab;user-select:none;scrollbar-width:none;touch-action:pan-y}
.photo-rail.dragging,.team-rail.dragging{cursor:grabbing;scroll-snap-type:none}
.photo-rail::-webkit-scrollbar,.team-rail::-webkit-scrollbar{display:none}
.rail-card{flex:0 0 clamp(310px,30vw,430px);height:500px;border-radius:22px;background-size:cover!important;background-position:center!important;box-shadow:0 18px 50px rgba(53,20,22,.08)}
.rail-card.planning{background-image:url('assets/service-planning.png')!important}
.rail-card.training{background-image:url('assets/service-training.png')!important}
.rail-card.sterile{background-image:url('assets/service-sterile.png')!important}
.rail-card.strategy{background-image:url('assets/service-strategy.png')!important}
.rail-card:after{background:linear-gradient(180deg,transparent 42%,rgba(53,20,22,.86) 100%)}
.rail-card>div{padding:28px}
.rail-card b{font-size:23px}.rail-card span{font-size:14px;max-width:280px}
.service-explorer{padding-top:128px;padding-bottom:128px;background:linear-gradient(180deg,#f5f1ef 0%,#fffaf8 100%)}
.service-explorer .section-title{align-items:flex-end;margin-bottom:50px}
.service-explorer .section-title h2{font-size:clamp(54px,6vw,92px);letter-spacing:-.06em}
.service-list{border-top:1px solid rgba(83,31,36,.2)}
.service-item{border-bottom:1px solid rgba(83,31,36,.2);transition:background .35s,color .35s}
.service-trigger{width:100%;display:grid;grid-template-columns:70px minmax(290px,1.4fr) minmax(260px,1fr) 60px;gap:24px;align-items:center;padding:30px 12px;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}
.service-trigger span{font-size:13px;letter-spacing:.12em;color:var(--v2-wine)}
.service-trigger strong{font-size:clamp(26px,3vw,46px);font-weight:500;letter-spacing:-.045em}
.service-trigger em{font-size:16px;font-style:normal;color:#756763}
.service-trigger i{justify-self:end;width:46px;height:46px;display:grid;place-items:center;border:1px solid rgba(83,31,36,.25);border-radius:50%;font-size:26px;font-style:normal;transition:transform .35s,background .35s}
.service-details{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .45s ease,opacity .35s ease;padding:0 106px}
.service-details>*{overflow:hidden}
.service-details ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 36px;margin:0;padding:0;list-style:none}
.service-details li{position:relative;padding:14px 0 14px 24px;border-top:1px solid rgba(255,255,255,.22);font-size:16px;line-height:1.35}
.service-details li:before{content:'↗';position:absolute;left:0;color:var(--v2-blue)}
.service-cta{justify-self:start;margin:26px 0 34px;padding:13px 20px;border:1px solid rgba(255,255,255,.45);border-radius:999px;background:#fff;color:var(--v2-wine-deep);cursor:pointer}
.service-item.is-open{background:var(--v2-wine-deep);color:#fff}
.service-item.is-open .service-trigger{padding-top:38px}
.service-item.is-open .service-trigger span,.service-item.is-open .service-trigger em{color:rgba(255,255,255,.68)}
.service-item.is-open .service-trigger i{background:#fff;color:var(--v2-wine-deep);transform:rotate(45deg)}
.service-item.is-open .service-details{grid-template-rows:1fr;opacity:1}
.team{padding-top:130px;padding-bottom:140px;background:#fffaf8}
.team .section-title p{max-width:560px;color:#796963}
.team-rail{gap:18px;padding-bottom:8px}
.person{flex:0 0 clamp(330px,31vw,430px);border-radius:24px;overflow:hidden;background:#eee8e5;box-shadow:0 16px 46px rgba(53,20,22,.07)}
.portrait{height:540px;background-size:500% auto!important;background-position-y:center!important;background-repeat:no-repeat!important}
.person-info{min-height:190px;padding:26px 28px 28px;background:var(--v2-wine-deep);color:#fff}
.person-info h3{font-size:31px;line-height:1.05;margin:10px 0}.person-info p{color:rgba(255,255,255,.7)}
.person-info button{background:#fff;color:var(--v2-wine-deep)}
.process-grid article:nth-child(odd),.process-grid article:nth-child(even){background:#f3efed;color:var(--v2-ink)}
.process-grid article span{color:var(--v2-wine)}
.benefits{background:#edf4f6}.chip-grid span{background:rgba(255,255,255,.8);border-color:#d8e6eb}
.outcomes,.faq{background:var(--v2-paper)}
.closing-shade{background:linear-gradient(90deg,rgba(53,20,22,.9),rgba(53,20,22,.08))}
footer{background:var(--v2-wine-deep)}
@media(max-width:900px){.hero{min-height:690px}.hero-copy h1{font-size:clamp(48px,11vw,76px)}.hero-copy h1 span{white-space:normal}.hero-overlay{background:linear-gradient(90deg,rgba(236,246,249,.96),rgba(236,246,249,.62) 68%,rgba(236,246,249,.12))}.service-trigger{grid-template-columns:44px 1fr 44px}.service-trigger em{display:none}.service-details{padding:0 64px}.service-details ul{grid-template-columns:1fr}.portrait{height:500px}}
@media(max-width:620px){.hero{min-height:700px}.hero-photo{background-position:61% center}.hero-overlay{background:linear-gradient(180deg,rgba(236,246,249,.9) 0%,rgba(236,246,249,.55) 52%,rgba(33,29,28,.18) 100%)}.hero-copy h1{font-size:44px;line-height:.94;letter-spacing:-.06em}.hero-note{max-width:92%;font-size:13px}.rail-card{height:430px}.service-explorer{padding-top:88px;padding-bottom:88px}.service-trigger{grid-template-columns:34px 1fr 40px;gap:10px;padding:23px 4px}.service-trigger strong{font-size:25px}.service-details{padding:0 44px}.service-details li{font-size:14px}.person{flex-basis:86vw}.portrait{height:470px}}
