/* Cinematic first impression, followed by layered medical coordination content. */
.premium-home .hero { min-height:calc(100svh - 116px); }
.premium-home .cover-art { animation:none; }
.premium-home .hero h1 { font-size:clamp(4.2rem,6.3vw,6.5rem); max-width:900px; line-height:1.06; }
.premium-home .hero .hero-in { max-width:900px; }
.premium-home .hero .lead { max-width:480px; line-height:1.85; }
.premium-home .hero-shade { background:linear-gradient(90deg,#101714d9,#1017148c 48%,#1017141a),linear-gradient(0deg,#1011109c,transparent 40%); }
.hero-video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0; transition:opacity 1.2s; }
.hero-video.is-ready { opacity:1; }
.premium-home .hero-photo { transform:none; }
.care-promises { border-bottom:1px solid var(--line); }
.care-promises .wrap { display:flex; justify-content:space-between; gap:30px; padding-block:25px; }
.care-promises span { font-size:11px; color:var(--muted); letter-spacing:.04em; }
.care-promises span::before { content:'✦'; color:var(--accent); margin-right:15px; font-size:9px; }
.premium-home .experience-section { padding-bottom:40px; background:#201e19; border-block:1px solid #504b3e; }
.experience-heading { display:grid; grid-template-columns:1.05fr 1fr; gap:70px; align-items:end; margin-bottom:44px; }
.experience-heading h2 { margin:0; }
.experience-heading .lead { font-size:14px; }
.gallery-disclosure { color:#b7b1a3; font-size:10px; line-height:1.8; margin:0; max-width:470px; }
.gallery-viewport { width:100%; overflow-x:auto; overflow-y:hidden; scrollbar-width:none; cursor:grab; outline-offset:-4px; touch-action:pan-x pan-y; overscroll-behavior-x:contain; }
.gallery-viewport::-webkit-scrollbar { display:none; }
.gallery-viewport.is-dragging { cursor:grabbing; }
.gallery-track,.gallery-set { display:flex; width:max-content; }
.gallery-set { gap:14px; padding-right:14px; }
.gallery-set figure { margin:0; width:clamp(330px,35vw,560px); position:relative; flex:none; user-select:none; }
.gallery-set img { width:100%; height:390px; object-fit:cover; display:block; pointer-events:none; }
.gallery-set figcaption { position:absolute; bottom:0; left:0; right:0; padding:40px 22px 20px; background:linear-gradient(transparent,#101110bd); color:var(--ink); font-size:12px; letter-spacing:.02em; }
.gallery-set figcaption span { font-size:10px; color:var(--accent); margin-right:15px; }
.gallery-footer { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:24px; }
.gallery-footer p { margin:0; font-size:10px; color:#b7b1a3; }
.gallery-footer p span { margin:0 12px; }
.gallery-controls { display:flex; gap:8px; }
.gallery-controls button { width:42px; height:42px; border:1px solid #726b59; border-radius:2px; color:var(--ink); background:transparent; font:16px Inter,sans-serif; cursor:pointer; }
.gallery-controls button:hover { border-color:var(--accent); background:#ffffff08; }
.premium-home .support-section { background:#e9e6df; color:#252a25; border-bottom:1px solid #c9c4b7; }
.premium-home .support-section .eyebrow { color:#736346; }
.premium-home .support-section .lead { color:#5d6259; }
.support-layout { display:grid; grid-template-columns:1.1fr .9fr; gap:65px; align-items:stretch; }
.support-tabs { display:grid; grid-template-columns:repeat(3,1fr); border-bottom:1px solid #bdb9ac; }
.support-tabs button { border:0; border-bottom:2px solid transparent; background:transparent; padding:18px 10px; color:#686e63; font:500 14px Inter,sans-serif; cursor:pointer; }
.support-tabs button[aria-selected=true] { color:#252a25; border-bottom-color:#7a6844; }
.support-panel { padding-top:30px; }
.support-panel h3 { font-size:36px; }
.support-panel > p { font-size:14px; line-height:1.9; color:#5d6259; }
.support-panel ul { list-style:none; padding:0; margin:23px 0; }
.support-panel li { border-top:1px solid #cfcbc0; padding:14px 0 14px 23px; font-size:13px; color:#454d42; position:relative; }
.support-panel li::before { content:'✓'; position:absolute; left:0; color:#6d765d; }
.support-price { display:flex; justify-content:space-between; gap:20px; padding:17px 0 25px; border-top:1px solid #cfcbc0; font-size:12px; }
.support-price > span { color:#62685d; }
.luxury-home .support-panel .btn { background:#252c25!important; color:#f2eee5!important; }
.support-panel p.support-boundary { font-size:10px; line-height:1.8; color:#686e63; margin-top:17px; }
.support-image { margin:0; position:relative; min-height:550px; }
.support-image img { width:100%; height:100%; max-height:670px; object-fit:cover; }
.support-image figcaption { position:absolute; bottom:0; left:0; right:0; background:linear-gradient(transparent,#101110d9); padding:45px 24px 22px; color:#eee9df; font-size:11px; }
.journey-tabs { display:grid; grid-template-columns:repeat(5,1fr); border-bottom:1px solid var(--line); margin-bottom:35px; }
.journey-tabs button { border:0; border-bottom:2px solid transparent; padding:18px 8px; color:var(--muted); background:none; font:12px Inter,sans-serif; cursor:pointer; }
.journey-tabs button[aria-selected=true] { border-color:var(--accent); color:var(--ink); }
.journey-panel { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.journey-visual { position:relative; min-height:390px; }
.journey-visual img { display:block; width:100%; height:420px; object-fit:cover; }
.journey-number { position:absolute; bottom:15px; left:24px; font:500 80px Georgia,serif; color:#f2eee5dc; }
.luxury-home .journey-copy h3 { font-size:39px; margin-bottom:25px; }
.journey-copy > p:not(.eyebrow) { font-size:14px; color:var(--muted); line-height:1.9; }
.journey-copy dl { border-top:1px solid var(--line); margin:25px 0 0; padding-top:18px; }
.journey-copy dt { font-size:10px; text-transform:uppercase; letter-spacing:.11em; color:var(--accent); margin-bottom:7px; }
.journey-copy dd { margin:0 0 17px; font-size:12px; line-height:1.8; color:var(--muted); }
@media(max-width:1000px) and (min-width:821px) { .support-layout { gap:35px; } .journey-panel { gap:35px; } .gallery-set img { height:340px; } }
@media(max-width:820px) {
 .premium-home .hero h1 { font-size:clamp(3.6rem,10.8vw,5.4rem); }
 .premium-home .hero .hero-in { max-width:620px; }
 .premium-home .hero-shade { background:linear-gradient(0deg,#101714fa,#101714b8 54%,#10171435); }
 .hero-video,.premium-home .hero-photo { object-position:60% center; }
 .care-promises .wrap { flex-wrap:wrap; gap:10px 20px; padding-block:20px; }
 .care-promises span { font-size:10px; }
 .care-promises span::before { margin-right:10px; }
 .experience-heading,.support-layout,.journey-panel { grid-template-columns:1fr; gap:25px; }
 .gallery-set figure { width:82vw; max-width:470px; }
 .gallery-set img { height:320px; }
 .gallery-footer { align-items:flex-start; }
 .gallery-footer p { font-size:9px; max-width:160px; }
 .gallery-footer p span { display:none; }
 .gallery-controls button { width:38px; height:38px; }
 .support-image { min-height:0; height:300px; order:-1; }
 .support-image img { height:300px; }
 .support-tabs button { font-size:12px; padding:15px 8px; }
 .support-price { font-size:11px; }
 .journey-tabs { overflow-x:auto; grid-template-columns:repeat(5,minmax(130px,1fr)); }
 .journey-tabs button { white-space:nowrap; font-size:11px; }
 .journey-visual { min-height:0; }
 .journey-visual img { height:280px; }
 .luxury-home .journey-copy h3 { font-size:34px; }
}
@media(prefers-reduced-motion:reduce) { .hero-video { display:none; } }
@media(prefers-reduced-motion:reduce) { .gallery-toggle { display:none; } }
/* Keep the clinician/visitor interaction visible behind the medical cover copy. */
.premium-home .hero-video,.premium-home .hero-photo { object-position:64% center; }
.premium-home .hero-shade { background:linear-gradient(90deg,#101110eb,#1011108c 48%,#10111018 80%),linear-gradient(0deg,#1011109c,transparent 40%); }
@media(max-width:820px) {
 .premium-home .hero-video,.premium-home .hero-photo { object-position:67% center; }
 .premium-home .hero-shade { background:linear-gradient(0deg,#101110fa,#101110b8 54%,#10111035); }
}
@media(min-width:821px) { .premium-home .cover-caption { right:90px; } }
