/* Editorial art direction: quiet Kerala luxury, botanical ink, uncoated paper. */
:root { --ivory:#f3efe5; --forest:#263d2b; --ink:#27372b; --gold:#9a8156; --beige:#e7e5d8; --line:#d0cdbf; --gutter:clamp(24px,7vw,120px); }
body { background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%239b8f72' opacity='.035' filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E"); }
em { font-weight:400; }
h2 { font-weight:400; line-height:1; }
.eyebrow { color:#7b7c60; font-size:9px; letter-spacing:.22em; }
.button { border-radius:0; gap:30px; padding:17px 25px; font-size:11px; box-shadow:none!important; }
.button:hover { transform:translateY(-2px); }
.button span { font-size:22px; }
.text-link { font-size:11px; padding-bottom:8px; }
.header { height:94px; padding:0 4%; background:#f3efe5ed; backdrop-filter:blur(12px); border-bottom:1px solid #b8bba43b; }
.header .brand svg { width:41px; }
.header .brand>span { font-size:31px; font-weight:500; }
.header .brand small { font-size:8px; letter-spacing:2.4px; }
.header nav { font-size:11px; gap:29px; }
.header .button { padding:14px 21px; font-size:10px; }
.header .button span { font-size:20px; }
/* A deliberately asymmetric cover — live type on paper, framed photography. */
.hero { display:grid; grid-template-columns:47% 53%; height:auto; min-height:0; max-height:none; overflow:visible; color:var(--ink); background:transparent; margin:24px 24px 0 0; }
.hero-content { padding:58px 5% 50px calc(var(--gutter) + 0px); align-self:center; height:auto; min-height:700px; }
.hero h1 { font-size:clamp(78px,7.55vw,122px); line-height:.86; font-weight:400; letter-spacing:-.05em; }
.hero h1 em { color:#708062; display:inline-block; padding-right:10px; }
.hero .eyebrow { display:flex; align-items:center; gap:12px; margin-bottom:35px; font-size:9px; }
.tiny-star { font-size:21px; color:var(--gold); }
.hero-description { margin-top:32px; font-size:12px; line-height:1.9; color:#6a715f; }
.hero-buttons { gap:25px; margin-top:25px; }
.hero .journey { font-size:10px; gap:9px; }
.hero .play { width:28px; height:28px; border-color:#959e86; font-size:8px; }
.hero-footnote { display:flex; align-items:center; gap:13px; color:#8a8e79; font-size:9px; margin-top:45px; }
.fine-line { display:inline-block; width:30px; height:1px; background:#a3a88c; }
.hero-art { position:relative; min-width:0; overflow:hidden; }
.hero-art .hero-photo { inset:0; width:100%; opacity:1; transform-origin:center; animation-duration:28s; }
.hero-art .hero-shade { background:linear-gradient(0deg,#0a1b14b3,transparent 45%,transparent 75%,#13221544); }
.hero-location { position:absolute; top:30px; left:35px; right:35px; color:#f5f2e7; display:flex; gap:12px; align-items:center; font-size:8px; letter-spacing:.16em; }
.location-dot { width:5px; height:5px; border-radius:50%; background:#d2ddae; }
.hero-image-caption { position:absolute; bottom:38px; left:38px; right:38px; color:var(--ivory); }
.hero-image-caption>span { font-size:8px; letter-spacing:.18em; }
.hero-image-caption p { font:400 40px/.98 var(--display); margin-top:15px; letter-spacing:-1px; }
.hero-image-arrow { position:absolute; right:0; bottom:0; display:grid; place-items:center; width:55px; height:55px; border-radius:50%; border:1px solid #f4f1e970; font-size:25px; transition:background .3s,transform .3s; }
.hero-image-arrow:hover { background:#f4f1e930; transform:rotate(15deg); }
.sanctuary-seal { position:absolute; z-index:2; width:124px; height:124px; left:calc(47% - 62px); top:68%; background:var(--ivory); border-radius:50%; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:8px; outline:1px solid #a6ad9380; outline-offset:-8px; box-shadow:0 0 0 8px #f3efe54d; }
.sanctuary-seal span { font-size:6px; letter-spacing:1.5px; color:#7b8267; }
.sanctuary-seal svg { width:38px; height:38px; fill:none; stroke:#7a8767; stroke-width:1.3; }
.heritage-strip { display:flex; align-items:center; justify-content:space-between; padding:40px var(--gutter); gap:35px; border-bottom:1px solid var(--line); }
.heritage-intro .eyebrow { font-size:7px; margin:0; }
.heritage-intro p { margin-top:7px; font:22px/1.1 var(--display); }
.heritage-strip .stats { margin:0; }
.heritage-strip .stats>div { border-color:var(--line); padding:0 35px; }
.heritage-strip .stats strong { font-size:36px; }
.heritage-strip .stats span { font-size:8px; letter-spacing:.04em; color:#7b826d; }
.scroll-cue { display:flex; align-items:center; gap:18px; font-size:7px; letter-spacing:.15em; }
.scroll-cue span { display:grid; place-items:center; width:33px; height:45px; border:1px solid #b3b8a2; border-radius:20px; font-size:17px; transition:transform .3s; }
.scroll-cue:hover span { transform:translateY(4px); }
/* Brand statement gives the page a slower, more considered rhythm. */
.philosophy-note { padding:110px var(--gutter) 100px; max-width:1600px; margin:auto; }
.philosophy-note>.eyebrow { margin-bottom:35px; }
.philosophy-note h2 { font-size:clamp(45px,5vw,76px); line-height:1.06; letter-spacing:-.035em; }
.philosophy-note h2 em { color:#7c8769; }
.philosophy-bottom { display:grid; grid-template-columns:1fr 1.5fr 1fr; align-items:center; gap:45px; margin-top:42px; }
.philosophy-mark { font-size:52px; color:#a09f7a; }
.philosophy-bottom p { font-size:12px; line-height:1.9; max-width:440px; color:#6e7563; }
.philosophy-bottom>.text-link { justify-self:end; }
/* Treatment collection: four individually numbered editorial plates. */
.specialties { padding:75px var(--gutter) 100px; border-top:1px solid var(--line); }
.specialties .leaf-decoration { display:none; }
.section-intro { padding:0; gap:80px; margin-bottom:52px; }
.section-intro h2 { font-size:clamp(42px,4.3vw,67px); }
.section-intro h2 em { color:#7b8568; }
.intro-copy { border:0; padding:0 0 5px; max-width:370px; justify-self:end; }
.intro-copy p { font-size:12px; color:#6e7563; line-height:1.8; }
.intro-copy br { display:none; }
.intro-copy .text-link { margin-top:23px; }
.treatment-grid { grid-template-columns:1.13fr .95fr .95fr 1.13fr; gap:22px; }
.treatment { height:420px; border-radius:0; background:transparent; overflow:visible; color:var(--ink); }
.treatment:nth-child(even) { margin-top:42px; }
.treatment .photo { bottom:90px; overflow:hidden; transition:clip-path .6s,filter .6s; clip-path:inset(0); }
.treatment:hover .photo { transform:none; clip-path:inset(5px); filter:brightness(1.05); }
.treatment .photo svg { transition:transform .8s; }
.treatment:hover .photo svg { transform:scale(1.045); }
.treatment .card-gradient { display:none; }
.treatment-index { position:absolute; top:16px; left:16px; z-index:2; color:#f3efe5; font-size:9px; letter-spacing:.15em; }
.card-copy { bottom:20px; left:0; right:24px; }
.card-copy h3 { font-size:clamp(25px,2.1vw,34px); white-space:normal; }
.card-copy p { font-size:9px; color:#7a806c; margin-top:8px; }
.treatment>.circle-arrow { bottom:25px; right:0; width:24px; height:24px; border:0; border-radius:0; font-size:22px; }
.treatment:hover .circle-arrow { background:none; color:var(--forest); transform:rotate(-35deg); }
.treatment:hover .card-copy { transform:translateY(-3px); }
/* A framed retreat composition, with a small interactive editorial index. */
.retreat { margin:0 24px; padding:65px; grid-template-columns:1.12fr 1fr; gap:65px; background:#283e2e; }
.retreat-visual { min-height:620px; }
.retreat-content { padding:10px 15px 10px 0; }
.retreat .eyebrow { color:#b6bea5; font-size:8px; }
.retreat h2 { font-size:clamp(45px,4.6vw,72px); }
.retreat h2 em { color:#c8cfb8; }
.retreat-content>p:not(.eyebrow) { font-size:12px; line-height:1.9; margin:25px 0; max-width:370px; color:#c7ceba; }
.retreat-tabs { display:flex; gap:25px; border-bottom:1px solid #e5e9d72e; margin-top:30px; }
.retreat-tabs button { background:none; border:0; border-bottom:1px solid transparent; padding:10px 0; margin-bottom:-1px; color:#aebba0; font-size:10px; transition:color .3s,border .3s; }
.retreat-tabs button[aria-selected=true] { color:var(--ivory); border-bottom-color:#d6d8bc; }
#retreat-panel { min-height:84px; padding:18px 0; }
#retreat-panel p { font-size:11px; line-height:1.8; color:#d7ddca; max-width:360px; }
.retreat-features { display:none; }
.retreat .button { margin-top:12px; }
.image-caption { font-size:9px; left:25px; bottom:25px; }
.why { border:0; padding:75px var(--gutter); }
.why-title { flex-basis:35%; }.why h2 { font-size:42px; }
.benefits button { font-size:18px; }.benefits svg { width:34px; height:34px; }
.doctors { margin:0 var(--gutter); padding:80px 0 100px; border-top:1px solid var(--line); grid-template-columns:35% 34% 31%; }
.doctor-photo { height:435px; }
.doctor-intro { padding:15px 35px; }.doctor-intro h2 { font-size:clamp(36px,3.5vw,53px); }.doctor-intro h2 em { color:#7b8568; }
.doctor-intro>p:not(.eyebrow) { font-size:11px; color:#6e7563; }
.doctor-card { border:0; border-top:1px solid var(--line); border-radius:0; padding:25px 0; }
.doctor-card:last-child { border-bottom:1px solid var(--line); }
.doctor-card:hover { background:transparent; transform:translateX(4px); }
.doctor-card .circle-arrow { border:0; }
.doctor-list { gap:0; }.portrait { width:58px; height:58px; }
/* Alternating light and dark chapters establish the visual rhythm. */
.facilities { background:#e5e7db; padding-top:90px; padding-bottom:65px; }
.facilities h2 em { color:#7a856a; }
.facility-image { height:385px; }.facility-card { flex-basis:42%; }
.facility-caption>span { font-size:8px; color:#7d866c; }.facility-caption h3 { font-size:34px; }.facility-caption p { font-size:11px; }
.experiences { background:#293e30; color:var(--ivory); padding-top:100px; padding-bottom:100px; border:0; gap:100px; }
.experiences .eyebrow { color:#b5bda4; }.experience-intro h2 { font-size:60px; }.experience-intro h2 em { color:#bdc9ad; }.experiences .sample-label,.quote-person div>span { color:#acb99c; }
.experiences .round-button { border-color:#b2bda07a; }.experiences .round-button:hover { background:var(--ivory); color:var(--forest); }
.quote-mark { color:#829375; opacity:.6; font-size:110px; }
blockquote { font-size:39px; line-height:1.25; font-weight:400; }.person-monogram { background:#3c5240; color:#dce3ce; }.testimonial-dots button:after { background:#5d7256; }.testimonial-dots button[aria-pressed=true]:after { background:#d9dec8; }
.journal { padding-top:100px; padding-bottom:110px; }.journal h2 em { color:#7a856a; }.journal-grid { grid-template-columns:1.25fr 1fr 1fr; gap:35px; }.journal-image { height:305px; }.journal-card:nth-child(2) { margin-top:65px; }.journal-card:nth-child(3) { margin-top:125px; }.journal-card h3 { font-size:31px; }.journal-card>p { font-size:11px; }
.bottom-cta { margin:0 24px; padding:80px var(--gutter); background:#e5e5d7; color:var(--forest); grid-template-columns:1.1fr 1fr auto; }
.bottom-cta>.photo { left:auto; right:0; opacity:.06; width:60%; mix-blend-mode:multiply; }.bottom-cta h2 { font-size:76px; }.bottom-cta h2 em { color:#768465; }.bottom-cta>p { border-right:0; padding:0; font-size:12px; max-width:320px; color:#717a63; }.bottom-cta>.button { background:var(--forest); color:var(--ivory); }
.footer { padding-top:65px; }
.footer-wordmark { font:400 clamp(60px,13.5vw,240px)/.9 var(--display); letter-spacing:-.06em; color:#c1c6b0; white-space:nowrap; padding-bottom:55px; margin-bottom:40px; border-bottom:1px solid var(--line); }
.footer-wordmark>span { font:14px var(--sans); display:inline-block; vertical-align:top; margin:15px 0 0 10px; letter-spacing:0; }
.footer-main { gap:40px; }.footer-bottom { margin-top:45px; }
.page-curtain { background:var(--ivory); }.custom-cursor { background:#e9e9d8; font-size:9px; }
@media(max-width:1150px) {
 .header { gap:18px; }.header nav { gap:20px; font-size:10px; }.header .brand>span { font-size:27px; }.header .brand small { font-size:7px; }.header .button { padding:13px 16px; font-size:9px; }
 .hero-content { padding-left:var(--gutter); min-height:640px; }.hero h1 { font-size:86px; }.hero-buttons { flex-wrap:wrap; gap:20px; }.hero-footnote { max-width:230px; line-height:1.6; }.sanctuary-seal { width:104px; height:104px; left:calc(47% - 52px); top:72%; }.sanctuary-seal span { font-size:5px; }.hero-location { font-size:6px; left:25px; right:25px; gap:8px; }.hero-image-caption { left:30px; right:30px; }.hero-image-caption p { font-size:35px; }
 .heritage-strip { gap:20px; padding-top:30px; padding-bottom:30px; }.heritage-strip .stats>div { padding:0 25px; }.scroll-cue { display:none; }.heritage-intro p { font-size:20px; }
 .philosophy-note { padding-top:85px; padding-bottom:85px; }.philosophy-bottom { gap:30px; grid-template-columns:.5fr 1.5fr 1fr; }
 .treatment-grid { gap:18px; }.treatment { height:365px; }.card-copy h3 { font-size:25px; }.card-copy p { font-size:8px; }.card-copy { right:10px; }.retreat { padding:40px; gap:40px; }.retreat-visual { min-height:570px; }.retreat-content { padding:0; }.retreat-tabs { gap:20px; }.retreat h2 { font-size:52px; }
 .doctors { grid-template-columns:34% 36% 30%; }.doctor-intro { padding:20px 24px; }.doctor-photo { height:390px; }.portrait { width:45px; height:45px; }.doctor-card { gap:12px; }.doctor-card strong { font-size:10px; }
 .experiences { gap:60px; }.experience-intro h2 { font-size:50px; }blockquote { font-size:34px; }.journal-grid { gap:25px; }.journal-image { height:250px; }.bottom-cta { padding:65px 6%; gap:30px; }.bottom-cta h2 { font-size:65px; }
}
@media(max-width:800px) {
 .header { height:76px; }.header nav { gap:17px; }.header .brand>span { font-size:26px; }
 .hero { margin:15px 15px 0 0; grid-template-columns:49% 51%; }.hero-content { min-height:620px; padding:45px 8% 40px 30px; }.hero h1 { font-size:76px; }.hero .eyebrow { font-size:7px; gap:8px; margin-bottom:25px; }.hero-description { font-size:11px; }.hero .button { padding:15px 18px; font-size:10px; }.hero-footnote { font-size:8px; margin-top:32px; }.sanctuary-seal { left:calc(49% - 45px); width:90px; height:90px; top:74%; gap:6px; }.sanctuary-seal svg { width:30px; height:30px; }.sanctuary-seal span { letter-spacing:1px; font-size:4.5px; }.hero-location { font-size:6px; flex-wrap:wrap; gap:6px; }.hero-image-caption { left:24px; right:24px; bottom:25px; }.hero-image-caption p { font-size:31px; }.hero-image-arrow { width:40px; height:40px; font-size:20px; }
 .heritage-strip .stats>div { padding:0 20px; }.heritage-strip .stats strong { font-size:30px; min-width:0; }.heritage-intro p { font-size:18px; }.heritage-intro .eyebrow { font-size:6px; }.heritage-strip .stats span { font-size:7px; }
 .philosophy-bottom { grid-template-columns:.4fr 1.6fr; }.philosophy-bottom .text-link { grid-column:2; justify-self:start; }.section-intro { gap:35px; }.section-intro h2 { font-size:43px; }.intro-copy p { font-size:11px; }
 .treatment-grid { grid-template-columns:1fr 1fr; gap:15px 25px; }.treatment { height:390px; }.treatment:nth-child(even) { margin-top:35px; }.card-copy h3 { font-size:31px; }.card-copy p { font-size:10px; }
 .retreat { margin:0 15px; padding:30px; gap:30px; grid-template-columns:1fr 1fr; }.retreat-visual { min-height:540px; }.retreat h2 { font-size:44px; }.retreat-tabs { gap:17px; }.retreat-tabs button { font-size:9px; }.retreat .button { padding:15px 18px; font-size:10px; }.retreat-content>p:not(.eyebrow) { font-size:11px; }
 .why { padding:60px var(--gutter); }.why-title { margin-bottom:35px; }.doctors { grid-template-columns:45% 55%; padding:60px 0; }.doctor-photo { height:360px; }.doctor-intro { padding:25px; }.doctor-intro h2 { font-size:45px; }.doctor-list { padding:30px 0 0; gap:25px; }.doctor-card { border-bottom:1px solid var(--line); }.doctor-card strong { font-size:12px; }.portrait { width:55px; height:55px; }
 .facility-card { flex-basis:65%; }.facility-image { height:330px; }.experiences { gap:40px; }.experience-intro h2 { font-size:46px; }blockquote { font-size:30px; }.journal-grid { grid-template-columns:repeat(3,1fr); gap:20px; }.journal-image { height:210px; }.journal-card h3 { font-size:26px; }.journal-card:nth-child(3) { margin-top:100px; }
 .bottom-cta { grid-template-columns:1fr 1fr; margin:0 15px; }.bottom-cta h2 { font-size:60px; }.bottom-cta>.button { grid-column:2; }.footer-wordmark { padding-bottom:35px; font-size:13vw; }
}
@media(max-width:640px) {
 .header { height:72px; padding:0 22px; }.header .brand>span { font-size:27px; }.header .brand small { font-size:7px; }.header nav { background:var(--ivory); }.header nav a { font-size:13px; }
 .hero { display:flex; flex-direction:column; margin:0; }.hero-content { min-height:0; padding:45px 27px 40px; width:100%; }.hero .eyebrow { font-size:8px; margin-bottom:26px; }.hero h1 { font-size:clamp(73px,18.5vw,105px); line-height:.88; }.hero h1 br:first-of-type { display:none; }.hero h1 em { display:block; }.hero-description { font-size:12px; line-height:1.8; margin-top:25px; }.hero-buttons { gap:22px; margin-top:25px; }.hero .button { padding:15px 20px; font-size:10px; gap:25px; }.hero .journey { font-size:9px; }.hero-footnote { display:none; }
 .hero-art { height:440px; margin:0 16px; }.hero-art .hero-photo { opacity:1; }.hero-location { top:24px; left:25px; right:25px; font-size:6px; flex-wrap:nowrap; gap:7px; }.hero-image-caption { left:26px; bottom:28px; right:26px; }.hero-image-caption p { font-size:38px; }.hero-image-caption>span { font-size:7px; }.sanctuary-seal { top:auto; bottom:385px; left:auto; right:32px; width:90px; height:90px; }.sanctuary-seal span { font-size:4.5px; }
 .heritage-strip { display:block; padding:30px 26px; }.heritage-intro { display:none; }.heritage-strip .stats { justify-content:space-between; width:100%; }.heritage-strip .stats>div { padding:0 20px; }.heritage-strip .stats>div:first-child { padding-left:0; }.heritage-strip .stats>div:last-child { padding-right:0; }.heritage-strip .stats strong { font-size:34px; }.heritage-strip .stats span { font-size:8px; }
 .philosophy-note { padding:65px 26px; }.philosophy-note>.eyebrow { font-size:8px; margin-bottom:28px; }.philosophy-note h2 { font-size:43px; line-height:1.06; }.philosophy-note h2 br { display:none; }.philosophy-bottom { grid-template-columns:30px 1fr; gap:20px; margin-top:30px; }.philosophy-mark { font-size:32px; align-self:start; }.philosophy-bottom p { font-size:11px; }.philosophy-bottom .text-link { margin-top:4px; }
 .specialties { padding:55px 24px 60px; }.section-intro { margin-bottom:35px; }.section-intro h2 { font-size:43px; }.intro-copy { margin-top:25px; max-width:320px; }.intro-copy p { font-size:12px; }.treatment-grid { gap:4px 15px; }.treatment { height:320px; }.treatment .photo { bottom:95px; }.treatment:nth-child(even) { margin-top:35px; }.card-copy { left:0; bottom:25px; right:5px; }.card-copy h3 { font-size:26px; }.card-copy p { font-size:8px; max-width:135px; line-height:1.5; }.treatment>.circle-arrow { bottom:2px; right:0; font-size:18px; }.treatment-index { top:12px; left:12px; font-size:8px; }
 .retreat { display:flex; flex-direction:column; margin:0 14px; padding:20px; gap:0; }.retreat-visual { min-height:350px; }.retreat-content { padding:35px 6px 15px; }.retreat h2 { font-size:49px; }.retreat-content>p:not(.eyebrow) { font-size:12px; margin:22px 0; }.retreat-tabs { margin-top:22px; gap:32px; }.retreat-tabs button { font-size:10px; }#retreat-panel { min-height:90px; }.retreat .button { margin-top:10px; }.image-caption { font-size:8px; left:20px; right:20px; }
 .why { padding:55px 26px; }.why h2 { font-size:39px; }.benefits button { font-size:19px; }.doctors { display:block; margin:0 24px; padding:55px 0; }.doctor-photo { height:350px; margin:0 20px 0 0; }.doctor-intro { padding:30px 0 25px; }.doctor-intro h2 { font-size:45px; }.doctor-intro>p:not(.eyebrow) { font-size:12px; }.doctor-list { padding:0; gap:0; }.doctor-card { padding:22px 0; border-bottom:0; gap:20px; }.doctor-card:last-child { border-bottom:1px solid var(--line); }.doctor-card strong { font-size:13px; }
 .facilities { padding-top:60px; padding-bottom:50px; }.facilities h2 { font-size:44px; }.facility-card { flex-basis:83%; }.facility-image { height:320px; }.facility-caption h3 { font-size:32px; }
 .experiences { padding:65px 26px; }.experience-intro h2 { font-size:49px; }.testimonial-stage { margin-top:55px; }blockquote { font-size:34px; }#testimonial-content { min-height:290px; }.testimonial-controls { margin-top:25px; }.experiences .sample-label { margin-top:18px; }
 .journal { padding:60px 24px 65px; }.journal h2 { font-size:47px; }.journal-grid { display:block; }.journal-card,.journal-card:nth-child(2),.journal-card:nth-child(3) { margin:0 0 42px; }.journal-card:last-child { margin-bottom:0; }.journal-image { height:285px; }.journal-card:nth-child(2) { margin-left:30px; }.journal-card:nth-child(3) { margin-right:30px; }.journal-card h3 { font-size:33px; }.journal-card>p { font-size:12px; }
 .bottom-cta { display:block; margin:0 14px; padding:45px 25px; }.bottom-cta h2 { font-size:70px; }.bottom-cta .eyebrow { font-size:8px; }.bottom-cta>p { font-size:12px; margin:24px 0; max-width:260px; }.bottom-cta>.button { font-size:11px; }
 .footer { padding:45px 24px 25px; }.footer-wordmark { font-size:13vw; padding-bottom:28px; margin-bottom:35px; }.footer-wordmark>span { font-size:7px; margin:4px 0 0 3px; }.footer-main { gap:35px 20px; }.footer-bottom { margin-top:35px; }
}
@media(prefers-reduced-motion:reduce) { .hero-art .hero-photo { animation:none; } }
@media(max-width:640px) {
 .hero h1 br { display:none; }
 .hero-location { font-size:7px; letter-spacing:.1em; }
}
/* Typography revision — confident humanist type, with serif reserved for the identity. */
:root { --brand:'Libre Caslon Text',Georgia,serif; }
h1,h2,h3 { font-family:var(--display); font-weight:500; letter-spacing:-.055em; }
h2 { line-height:1.08; }
h2 em,.hero h1 em { font-style:normal; font-weight:inherit; color:inherit!important; }
.header .brand>span,.footer .brand>span { font-family:var(--brand); font-size:25px; letter-spacing:-1.1px; font-weight:400; }
.header .brand small,.footer .brand small { font-family:var(--sans); font-size:8px; letter-spacing:1.8px; }
.header nav { font-size:12px; }.header .button { font-size:11px; }
.hero-content { padding-top:60px; padding-bottom:60px; }
.hero h1 { font-family:var(--display); font-size:clamp(57px,5.35vw,84px); font-weight:500; letter-spacing:-.07em; line-height:1.03; max-width:540px; }
.hero h1>span { display:block; }
.hero h1>span+span { margin-top:20px; color:#69745e; }
.hero .eyebrow { font-size:11px; letter-spacing:.06em; font-weight:500; }
.hero-description { font-size:14px; line-height:1.75; color:#596451; margin-top:30px; }
.hero .button { font-size:12px; }.hero .journey { font-size:11px; }.hero-footnote { font-size:10px; }
.hero-image-caption p { font-family:var(--display); font-size:30px; font-weight:500; line-height:1.15; letter-spacing:-1px; }
.sanctuary-seal { display:none; }
.eyebrow { font-size:10px; letter-spacing:.09em; font-weight:500; }
.heritage-intro p { font:400 16px/1.4 var(--sans); letter-spacing:-.025em; }
.heritage-intro .eyebrow { font-size:9px; }
.heritage-strip .stats strong { font:500 32px/1 var(--sans); letter-spacing:-.06em; }
.heritage-strip .stats span { font-size:10px; }
.scroll-cue { font-size:9px; }
.philosophy-note h2 { font-size:clamp(37px,4.05vw,62px); line-height:1.13; }
.philosophy-note h2 em { color:inherit; }
.philosophy-mark { font:500 17px var(--sans); letter-spacing:-.04em; }
.philosophy-bottom p { font-size:14px; line-height:1.75; }.text-link { font-size:12px; }
.section-intro h2 { font-size:clamp(36px,3.7vw,56px); }.intro-copy p { font-size:13px; }
.card-copy h3 { font-size:clamp(21px,1.75vw,28px); font-weight:500; letter-spacing:-.045em; line-height:1.12; }
.card-copy p { font-size:11px; letter-spacing:-.01em; }
.retreat h2 { font-size:clamp(37px,3.65vw,56px); line-height:1.13; }
.retreat-content>p:not(.eyebrow) { font-size:13px; }.retreat-tabs button { font-size:12px; }#retreat-panel p { font-size:13px; }
.why h2 { font-size:35px; line-height:1.15; }.benefits button { font:400 15px/1.35 var(--sans); letter-spacing:-.02em; }
.doctor-intro h2 { font-size:clamp(31px,2.8vw,43px); line-height:1.13; }.doctor-intro>p:not(.eyebrow) { font-size:13px; }.doctor-card strong { font-size:13px; }.doctor-card p { font-size:11px; }
.editorial-heading h2 { font-size:clamp(36px,3.7vw,56px); line-height:1.12; }
.facility-caption h3 { font-size:26px; letter-spacing:-.04em; }.facility-caption p { font-size:12px; }
.experience-intro h2 { font-size:48px; line-height:1.13; }
blockquote { font:400 30px/1.45 var(--display); letter-spacing:-.035em; }.quote-mark { font-family:Georgia,serif; }
.journal-card h3 { font-size:26px; line-height:1.2; letter-spacing:-.04em; }.journal-card>p { font-size:12px; }
.bottom-cta h2 { font-size:62px; line-height:1.07; }.bottom-cta>p { font-size:14px; }.bottom-cta>.button { font-size:12px; }
.footer-wordmark { font-family:var(--brand); font-size:clamp(60px,11.4vw,180px); letter-spacing:-.065em; }
dialog h2 { font-size:36px; line-height:1.12; }.lightbox h2 { font-size:29px; }
@media(max-width:1100px) {
 .header .brand>span { font-size:21px; }.header nav { font-size:11px; gap:18px; }.header .button { padding:13px 15px; font-size:10px; }
 .hero h1 { font-size:62px; }.hero-description { font-size:13px; }.hero .button { font-size:11px; }
 .card-copy h3 { font-size:22px; }.card-copy p { font-size:9px; }
 .doctor-intro h2 { font-size:32px; }.doctor-card strong { font-size:11px; }.doctor-card p { font-size:10px; }
 .experience-intro h2 { font-size:40px; }blockquote { font-size:26px; }.journal-card h3 { font-size:23px; }.bottom-cta h2 { font-size:54px; }
}
@media(max-width:800px) {
 .header .brand>span { font-size:21px; }.header nav { font-size:10px; gap:14px; }
 .hero h1 { font-size:53px; }.hero-content { padding-left:30px; }.hero .eyebrow { font-size:9px; }.hero-description { font-size:12px; }.hero-image-caption p { font-size:25px; }
 .section-intro h2 { font-size:36px; }.card-copy h3 { font-size:27px; }.card-copy p { font-size:11px; }.retreat h2 { font-size:36px; }.retreat-tabs { gap:20px; }.retreat-tabs button { font-size:11px; }.doctor-intro h2 { font-size:35px; }
 .experiences { gap:35px; }.experience-intro h2 { font-size:36px; }blockquote { font-size:24px; }.journal-card h3 { font-size:21px; }
}
@media(max-width:640px) {
 .header .brand>span { font-size:23px; }.header .brand small { font-size:7px; }.header nav a { font-size:13px; }
 .hero-content { padding:45px 26px 38px; }.hero h1 { font-size:clamp(47px,12vw,66px); letter-spacing:-.065em; line-height:1.05; }.hero h1>span { max-width:330px; }.hero h1>span+span { margin-top:15px; }
 .hero .eyebrow { font-size:10px; letter-spacing:.04em; margin-bottom:28px; }.hero-description { font-size:13px; line-height:1.65; }.hero .button { font-size:11px; }.hero .journey { font-size:10px; }.hero-buttons { gap:20px; }
 .hero-image-caption p { font-size:28px; }.heritage-strip .stats strong { font-size:29px; }.heritage-strip .stats span { font-size:9px; }
 .philosophy-note h2 { font-size:36px; }.philosophy-bottom p { font-size:13px; }.philosophy-note>.eyebrow { font-size:9px; }
 .section-intro h2 { font-size:35px; }.intro-copy p { font-size:13px; }.card-copy h3 { font-size:23px; line-height:1.1; }.card-copy p { font-size:9px; }.card-copy { bottom:20px; }
 .retreat h2 { font-size:37px; }.retreat-content>p:not(.eyebrow),#retreat-panel p { font-size:12px; }.retreat-tabs button { font-size:12px; }
 .why h2 { font-size:33px; }.benefits button { font-size:15px; }.doctor-intro h2 { font-size:37px; }.doctor-card strong { font-size:13px; }.doctor-card p { font-size:11px; }
 .editorial-heading h2,.facilities h2 { font-size:36px; }.facility-caption h3 { font-size:27px; }.experience-intro h2 { font-size:40px; }blockquote { font-size:27px; line-height:1.35; }.journal h2 { font-size:39px; }.journal-card h3 { font-size:28px; }
 .bottom-cta h2 { font-size:53px; }.bottom-cta>p { font-size:13px; }.footer .brand>span { font-size:23px; }.footer-wordmark { font-size:11.3vw; }dialog h2 { font-size:31px; }
}
/* Native raster images: correct aspect ratio, stable geometry, natural detail. */
.photo > img { position:absolute; inset:0; display:block; width:100%; height:100%; max-width:100%; object-fit:cover; }
.hero-art .hero-photo { animation:none; transform:none; }
.treatment .photo > img,.doctor-photo > img { transition:transform .7s ease; }
.treatment:hover .photo { clip-path:inset(0); filter:none; }
.treatment:hover .photo > img,.doctor-photo:hover > img { transform:scale(1.025); }
.facility-image > img,.journal-image > img { filter:none; }
.journal-image:hover > img { filter:none; }
@media(prefers-reduced-motion:reduce) { .treatment:hover .photo > img,.doctor-photo:hover > img { transform:none; } }
/* Subject-aware crops for the enhanced photography. */
.hero-photo > img { object-position:60% center; }
.treatment[data-detail="panchakarma"] img { object-position:80% center; }
.treatment[data-detail="lifestyle"] img { object-position:63% center; }
.treatment[data-detail="women"] img { object-position:68% center; }
.treatment[data-detail="pain"] img { object-position:72% center; }
.retreat-visual img { object-position:73% center; }
.doctor-photo > img { object-position:43% center; }
.portrait > img { object-position:center 36%; }
#gallery-original { margin-top:13px; font-size:11px; }
