
body{padding-bottom:calc(86px + env(safe-area-inset-bottom,0px))}
.home{padding-bottom:calc(86px + env(safe-area-inset-bottom,0px))}
.contact-dock{position:fixed;left:0;right:0;bottom:0;z-index:55;display:grid;grid-template-columns:1fr 1fr 1fr 1.35fr;gap:12px;padding:12px max(5%,calc((100% - 1100px)/2)) calc(12px + env(safe-area-inset-bottom,0px));background:#171413f5;border-top:1px solid #b9958266;backdrop-filter:blur(12px)}
.contact-dock[hidden],body.menu-open .contact-dock{display:none}
.contact-dock a{display:flex;align-items:center;justify-content:center;text-align:center;min-height:48px;padding:10px 16px;border:1px solid #b99582;border-radius:3px;color:#fff;text-decoration:none;font:400 16px/1.3 var(--sans);background:transparent}
.contact-dock .contact-dock-booking{background:#d8b69e;border-color:#d8b69e;color:#21130c}
.contact-dock a:hover{background:#654739;color:#fff}
.contact-dock a:focus-visible{outline:2px solid #e7c7aa;outline-offset:3px}
@media(max-width:760px){
.contact-dock{gap:7px;padding:10px 4% calc(10px + env(safe-area-inset-bottom,0px));grid-template-columns:1fr 1fr}
.contact-dock a{font-size:14px;padding:8px 5px;min-height:48px}
}

/* Compact steps section, including animated word spans. */
.cin-steps{padding:64px 0}
.cin-steps h2{font-size:clamp(48px,5.5vw,80px);line-height:1.08;margin:0 0 32px;max-width:100%}
.cin-steps h2 span{display:inline;margin-left:0;color:inherit}
.cin-steps-layout{gap:6%}
.cin-step summary{padding:16px 0;font-size:clamp(32px,3vw,44px);line-height:1.1}
.cin-step>div{padding-bottom:16px}
.cin-step p{font-size:16px;line-height:1.5;margin:0;max-width:600px}
@media(max-width:760px){
.cin-steps{padding:36px 0}
.cin-steps h2{font-size:clamp(38px,10vw,54px);line-height:1.08;margin:0 0 24px}
.cin-steps h2 span{display:inline;margin-left:0}
.cin-step summary{padding:14px 0;font-size:30px;gap:12px;min-height:48px}
.cin-step>div{padding:0 0 16px 30px}
.cin-steps-photo{margin-top:24px}
}

/* Understated portrait and introduction. */
.cin-intro.calm-intro{padding:64px 0;background:#171413}
.calm-intro-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:48px;align-items:center;max-width:1240px;margin:0 auto}
.calm-intro-photo{margin:0;overflow:hidden;border-radius:4px}
.calm-intro-photo img{display:block;width:100%;height:auto}
.calm-intro-text h2{font:400 28px/1.25 var(--sans);letter-spacing:0;color:#d8b69e;margin:0 0 18px;text-transform:none}
.calm-intro-text p{font:400 18px/1.65 var(--sans);color:#e8e0db;margin:0 0 24px;max-width:420px}
.calm-intro-text a{display:inline-flex;align-items:center;min-height:44px;font:400 16px/1.4 var(--sans);color:#d8b69e;text-decoration:none;border-bottom:1px solid #b9958266;padding:6px 0}
.calm-intro-text a:hover{color:#fff;border-color:#fff}
@media(max-width:760px){
.cin-intro.calm-intro{padding:32px 0 36px}
.calm-intro-layout{display:flex;flex-direction:column;gap:24px;align-items:stretch}
.calm-intro-text h2{font-size:24px;margin-bottom:12px}
.calm-intro-text p{font-size:16px;line-height:1.6;margin-bottom:16px;max-width:none}
}

.calm-intro-heading{grid-column:1/-1;font:400 28px/1.25 var(--sans);letter-spacing:0;color:#d8b69e;margin:0;text-transform:none}
.calm-intro-layout{row-gap:24px}
@media(max-width:760px){.calm-intro-heading{font-size:24px}.calm-intro-layout{gap:20px}}

/* Read introduction before its portrait at every screen size. */
.calm-intro-layout{display:flex;flex-direction:column;align-items:stretch;gap:24px}
.calm-intro-text{max-width:720px}
.calm-intro-text a{font-size:24px;margin:0 0 16px;padding:0 0 8px}
.calm-intro-text p{max-width:720px;margin:0}
@media(max-width:760px){.calm-intro-layout{gap:20px}.calm-intro-text a{font-size:22px;margin-bottom:14px}}

.cin-steps-layout{grid-template-columns:1fr;gap:0}

/* Compact contact bar; one clear row at every screen width. */
body,.home{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}
.contact-dock{grid-template-columns:1fr 1fr 1fr 1.35fr;gap:8px;padding:10px max(4%,calc((100% - 1100px)/2)) calc(10px + env(safe-area-inset-bottom,0px));background:#171413f2;border-top:1px solid #b995822e}
.contact-dock a{min-height:48px;padding:10px 12px;border-color:transparent;border-radius:8px;color:#e8e0db;font-size:15px;white-space:nowrap}
.contact-dock a:not(.contact-dock-booking):hover{background:#b9958217}
.contact-dock .contact-dock-booking{background:#c8a48b;border-color:#c8a48b;color:#21130c}
.home .cin-hero{height:calc(100svh - var(--home-header-height) - 72px - env(safe-area-inset-bottom,0px));min-height:560px}
.home .patient-hero .hero-actions[hidden]{display:none}
@media(max-width:760px){
body,.home{padding-bottom:calc(68px + env(safe-area-inset-bottom,0px))}
.contact-dock{grid-template-columns:1fr .95fr .95fr 1.35fr;gap:2px;padding:8px 8px calc(8px + env(safe-area-inset-bottom,0px))}
.contact-dock a{font-size:14px;min-height:48px;padding:8px 2px;border-radius:7px}
.home .cin-hero{height:calc(100svh - var(--home-header-height) - 68px - env(safe-area-inset-bottom,0px));min-height:520px;padding-bottom:20px}
}
@media(max-width:350px){.contact-dock{grid-template-columns:1fr .95fr .95fr 1.35fr;gap:0;padding-left:4px;padding-right:4px}.contact-dock a{font-size:12px}}
