/* Santuario Renacer. Palette, typography and motion inherited from Abundancia 888. */
:root{--paper:#f9f5ec;--ivory:#fffcf6;--champagne:#eee2ca;--ink:#33291e;--muted:#75644f;--gold:#94641e;--gold-bright:#d5ad60;--line:#ded0b6;--shadow:0 20px 70px #74532412;--serif:Georgia,'Times New Roman',serif;--sans:'Avenir Next',Avenir,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.8;-webkit-font-smoothing:antialiased}::selection{background:#dfc593;color:var(--ink)}a{color:inherit;text-decoration:none}button,a,summary{-webkit-tap-highlight-color:transparent}img{display:block;width:100%;max-width:100%;height:auto}p{margin:0 0 1.25em}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.12;margin:0 0 .6em;letter-spacing:-.04em}h1{font-size:clamp(48px,5.25vw,80px)}h2{font-size:clamp(38px,4.2vw,62px)}h3{font-size:clamp(28px,2.8vw,37px);letter-spacing:-.035em}em{font-weight:400;color:var(--gold)}strong{font-weight:600}a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:6px}p:last-child{margin-bottom:0}.skip{position:fixed;left:20px;top:-100px;padding:12px 24px;background:var(--ink);color:#fff;z-index:99}.skip:focus{top:10px}.section{width:min(1280px,calc(100% - 112px));margin:auto;padding:108px 0}.section-title{margin-bottom:52px;max-width:880px}.section-title.centered{margin-inline:auto;text-align:center}.subtitle{font-family:var(--serif);font-style:italic;color:var(--gold);font-size:clamp(24px,2.4vw,33px);line-height:1.45;margin-top:16px}.lead{font-size:20px;line-height:1.8}.prose{color:var(--muted);min-width:0}.prose h2,.prose h3{color:var(--ink)}.prose h3{margin-top:1.4em}.prose h3:first-child{margin-top:0}.prose .gold{color:var(--gold)}.prose strong{color:#665037}.eyebrow{font-size:14px;font-weight:650;line-height:1.5;letter-spacing:.19em;color:var(--gold);margin-bottom:20px}.icon{display:block;width:23px;height:23px;flex:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:58px;max-width:100%;padding:17px 28px;border:1px solid #b49762;border-radius:5px;font-family:var(--sans);font-size:16px;line-height:1.5;font-weight:600;text-align:center;transition:transform .25s,box-shadow .25s,background-position .5s}.button.primary{color:#fffaf0;border-color:#b08039;background:linear-gradient(110deg,#775018 0%,#916022 36%,#976626 52%,#96671f 77%,#785019 100%);background-size:170% 100%;box-shadow:inset 0 1px #f6de9c90,0 6px 18px #79541822}.button:hover{transform:translateY(-2px);background-position:100% 50%;box-shadow:inset 0 1px #f6de9c90,0 10px 25px #79541835}.button .icon{transition:transform .25s}.button:hover .icon{transform:translateX(4px)}.photo{display:block;min-width:0;overflow:hidden;isolation:isolate}.photo img{height:100%;object-fit:cover;object-position:center;transition:transform 1s ease}.photo:hover img{transform:scale(1.025)}.portrait{aspect-ratio:4/5;border-radius:3px;box-shadow:var(--shadow)}.portrait img{object-position:center 20%}.landscape{aspect-ratio:16/10;border-radius:3px}.callout{border-left:1px solid #b5904e;padding-left:24px;color:#705020;font-family:var(--serif);font-size:24px;line-height:1.55;margin-top:28px}.header{display:flex;align-items:center;justify-content:center;padding:18px 30px;background:#fbf7ee;border-bottom:1px solid #c7ad7744}.header-brand{display:block;width:min(550px,100%);line-height:0}.header-brand img{width:100%;height:auto}
/* Opening: real faces stay clear of the copy, with full headroom on every screen. */
.hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);background:linear-gradient(120deg,#f6ecd9,#eee0c5);border-bottom:1px solid var(--line);position:relative;isolation:isolate}.hero-copy{padding:65px 50px 68px max(56px,calc((100vw - 1280px)/2));animation:content-arrive 1s .1s both}.hero h1{line-height:1.06;letter-spacing:-.055em;margin-bottom:26px;color:#493521}.hero h1 em{display:block;font-size:.91em}.hero-lead{font-size:21px;color:#5d4833;line-height:1.7}.hero-copy>p:not(.eyebrow):not(.hero-lead){font-size:17px;color:#6a553d}.hero-resources{padding-top:18px;border-top:1px solid #cdb88f80}.hero-invitation{font-weight:550}.hero-visual{overflow:clip;padding:65px max(38px,calc((100vw - 1280px)/2)) 65px 0;min-width:0}.hero-photo{position:sticky;top:30px;aspect-ratio:4/5;border-radius:3px;box-shadow:var(--shadow);animation:scene-arrive 1.8s cubic-bezier(.2,.65,.3,1) both}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 25%}
/* Longer reading retains an airy editorial rhythm. */
.philosophy-opening{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:80px;align-items:center}.arch{aspect-ratio:3/4;border-radius:230px 230px 3px 3px;outline:1px solid #b99b6260;outline-offset:12px;margin:16px 12px;box-shadow:var(--shadow)}.reading-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:80px;margin-top:88px;padding-top:68px;border-top:1px solid var(--line)}.reading-grid .prose{padding-right:16px}.reading-grid h3{font-size:36px;max-width:440px}.questions{font-family:var(--serif);color:var(--gold);font-size:23px;line-height:1.8;padding-block:12px}.philosophy-continuation{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:76px;align-items:center;margin-top:72px;padding-top:64px;border-top:1px solid var(--line)}.philosophy-continuation .landscape{aspect-ratio:16/9}.philosophy-continuation .photo img{object-position:40% center}.essence{max-width:820px;margin:75px auto 0}.essence h3{text-align:center;font-size:42px}.closing-thought{margin:75px auto 0;padding:52px 34px;border-block:1px solid var(--line);text-align:center;background:linear-gradient(100deg,transparent,#ede0c747,transparent)}.large-thought{font-family:var(--serif);font-size:clamp(25px,2.8vw,37px);line-height:1.5;color:#7c5828;max-width:900px;margin:auto}
.story-band{background:#f0e6d3;border-block:1px solid var(--line)}.story{display:grid;grid-template-columns:minmax(0,.87fr) minmax(0,1fr);gap:85px;align-items:start}.story-visual{position:sticky;top:30px}.story-copy h2{font-size:clamp(38px,4.1vw,57px)}.story-copy .subtitle{font-size:26px}.story-copy .intro-name{font-family:var(--serif);font-size:31px;color:var(--ink);margin-top:34px}.story-copy .lead{color:#5b4430}.story-copy h3{font-size:31px;line-height:1.3}.signature{font-family:var(--serif);color:var(--gold);font-size:25px;line-height:1.55;margin-top:30px}
.audience .section-title>p{max-width:760px;color:var(--muted)}.care-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 42px}.care-item{padding:28px 0 12px;border-top:1px solid #bea578}.care-item h3{font-size:28px;line-height:1.25}.care-item p{color:var(--muted);font-size:16px}.care-item:last-child{grid-column:2/4;max-width:650px}.care-footer{display:flex;align-items:center;justify-content:space-between;gap:50px;border-top:1px solid var(--line);padding-top:38px;margin-top:35px}.invitation{font-family:var(--serif);font-size:26px;color:#755631;max-width:680px;line-height:1.5;margin:0}.care-footer .button{flex-shrink:0}
.ancestral-band{background:#eee3ce;border-block:1px solid var(--line)}.panorama{aspect-ratio:21/8;max-height:580px;width:100%}.panorama img{object-position:center 43%}.ancestral{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:90px}.ancestral .subtitle{max-width:450px}.ancestral h2{font-size:clamp(40px,4.8vw,63px)}
.session-layout{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1fr);gap:85px;align-items:start}.session-art{position:sticky;top:30px}.session-art .photo{aspect-ratio:4/5}.session-art .photo img{object-position:47% 15%}.therapy{padding-top:30px;margin-top:32px;border-top:1px solid var(--line)}.therapy h3{font-size:30px;margin-top:0}.therapy p{font-size:16px}.session-booking{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:70px;margin-top:70px;padding:44px 48px;background:linear-gradient(125deg,#f3e7cc,#fffcf4);border:1px solid #d1b98e;border-radius:5px}.session-booking p{font-size:16px;color:var(--muted)}.session-booking h3{font-size:34px}.checks{list-style:none;padding:0;margin:22px 0 26px;display:grid;gap:12px;font-size:16px;color:#695334}.checks li{display:flex;align-items:flex-start;gap:12px}.checks .icon{width:18px;height:18px;margin-top:5px;color:var(--gold)}.booking-price{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.price{padding-block:22px;margin-bottom:24px;width:100%;border-block:1px solid #cbb18166}.price>p{font-size:18px;color:#865d25}.price p:last-child{font-size:15px;line-height:1.7}.price strong{display:block;font-family:var(--serif);font-weight:400;font-size:clamp(48px,4.5vw,68px);line-height:1.4;white-space:nowrap;letter-spacing:-.045em}.price small{font-size:.45em;letter-spacing:-.03em}
.liberation-band{background:#efe3ce;border-block:1px solid var(--line)}.liberation{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.liberation .landscape{aspect-ratio:16/9}.liberation .landscape img{object-position:52% center}.trust .section-title{max-width:780px}.trust .section-title p{color:var(--muted)}.trust-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 45px}.trust-item{border-top:1px solid var(--line);padding-top:25px}.trust-item h3{font-size:28px;line-height:1.3}.trust-item p{font-size:16px;color:var(--muted)}
.steps-band{background:linear-gradient(130deg,#f0e3ca,#faf4e7);border-block:1px solid var(--line)}.steps{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1fr);gap:95px}.steps>div:first-child{position:sticky;top:32px;align-self:start}.step{padding:0 0 30px 0;margin:0 0 30px;border-bottom:1px solid #d4bd958c}.step h3{font-size:29px;line-height:1.35;display:flex;align-items:baseline;gap:20px;letter-spacing:-.02em}.step-number{font-size:37px;color:var(--gold);min-width:32px}.step p{color:var(--muted);margin-left:52px;font-size:17px}.steps-list>.button{margin-top:4px}
.faq{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1fr);gap:95px;align-items:start}.faq h2{max-width:410px}.faq details{border-bottom:1px solid var(--line)}.faq details:first-child{border-top:1px solid var(--line)}.faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:24px;cursor:pointer;padding:25px 0;font-size:18px;line-height:1.55}.faq summary::-webkit-details-marker{display:none}.faq summary .icon{color:var(--gold);transition:transform .3s}.faq details[open] summary .icon{transform:rotate(45deg)}.faq-answer{font-size:17px;color:var(--muted);padding:0 30px 26px 0;line-height:1.85}.faq details[open] .faq-answer{animation:content-arrive .35s both}
.contact-band{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:linear-gradient(120deg,#eadbbc,#f8f0df);border-block:1px solid var(--line)}.contact-image{padding:75px 0 80px max(56px,calc((100vw - 1280px)/2));min-width:0}.contact-image .photo{position:sticky;top:30px;aspect-ratio:4/5;border-radius:3px}.contact-image img{object-fit:cover;object-position:50% 25%}.contact-copy{padding:75px max(56px,calc((100vw - 1280px)/2)) 80px 58px}.contact-copy h2{font-size:clamp(37px,3.7vw,55px)}.contact-copy .subtitle{font-size:28px}.contact-copy>.button{margin-top:30px}.contact-copy .callout{font-size:26px;line-height:1.55}
footer{padding:65px max(56px,calc((100vw - 1280px)/2)) 34px;background:#eee2ca}.footer-main{display:grid;grid-template-columns:165px minmax(0,1fr) minmax(0,1fr);align-items:center;gap:35px}.footer-seal{border-radius:50%;mix-blend-mode:multiply}.footer-name{font-family:var(--serif);font-size:25px;line-height:1.3;letter-spacing:.025em;margin-bottom:14px}.footer-slogan{font-family:var(--serif);font-size:24px;font-style:italic;line-height:1.4;color:var(--gold);max-width:350px}.footer-triad{font-size:15px;color:var(--muted)}.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:13px;font-size:16px}.footer-links a{display:flex;gap:14px;align-items:center;line-height:1.5;min-height:32px;overflow-wrap:anywhere}.footer-links a:hover{color:var(--gold)}.footer-links .icon{width:18px;height:18px}.footer-bottom{border-top:1px solid #d8c6a6;display:flex;justify-content:space-between;gap:24px;margin-top:48px;padding-top:24px;padding-right:35px;color:var(--muted);font-size:14px;line-height:1.8}.footer-bottom strong{font-weight:700;color:#6f522d}.footer-bottom a:hover{text-decoration:underline;text-underline-offset:4px}.whatsapp-float{position:fixed;right:24px;bottom:24px;z-index:50;width:58px;height:58px;display:grid;place-items:center;background:linear-gradient(135deg,#b2883e,#805517);color:#fff9e9;border:1px solid #edce88;border-radius:50%;box-shadow:0 6px 20px #7450203d;transition:transform .25s,box-shadow .25s}.whatsapp-float .icon{width:31px;height:31px;stroke-width:1.5}.whatsapp-float:hover{transform:translateY(-3px);box-shadow:0 9px 22px #74502050}
/* Match Abundancia 888 entrance timing and transitions. Content works without JS. */
.js-reveal .reveal{opacity:0;transform:translateY(22px);transition:opacity .9s ease,transform .9s ease}.js-reveal .reveal.visible{opacity:1;transform:none}@keyframes scene-arrive{from{transform:scale(1.035);opacity:.7}to{transform:scale(1);opacity:1}}@keyframes content-arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media(min-width:1600px){.hero{grid-template-columns:1fr 1fr}.hero-copy{padding-right:80px}.hero h1{max-width:680px}.hero-copy>p{max-width:630px}}
@media(max-width:1100px){.section{width:calc(100% - 72px);padding-block:82px}.header-brand{width:490px}.hero-copy{padding:46px 32px 52px 36px}.hero-visual{padding:46px 36px 52px 0}.hero h1{font-size:60px}.hero-copy>p:not(.eyebrow):not(.hero-lead){font-size:16px}.hero-lead{font-size:19px}.philosophy-opening,.reading-grid,.philosophy-continuation,.story,.ancestral,.session-layout,.liberation{gap:48px}.story-copy h2{font-size:43px}.care-grid{gap:24px}.care-footer{display:block}.care-footer .button{margin-top:25px}.session-booking{gap:40px;padding:34px}.steps,.faq{gap:55px}.contact-copy{padding:52px 36px}.contact-image{padding:52px 0 52px 36px}.contact-copy h2{font-size:42px}.footer-main{grid-template-columns:135px 1fr;gap:30px}.footer-links{grid-column:2}footer{padding-inline:36px}}
@media(max-width:760px){body{font-size:17px;line-height:1.85}.section{width:calc(100% - 44px);padding-block:66px}.header{padding:16px 18px}.header-brand{width:min(480px,100%)}.hero{display:flex;flex-direction:column}.hero-copy{padding:38px 24px 40px}.hero h1{font-size:clamp(46px,9.6vw,66px);max-width:600px;line-height:1.08}.hero h1 em{display:inline}.hero-copy .eyebrow{font-size:13px;letter-spacing:.16em}.hero-lead{font-size:20px}.hero-copy>p:not(.eyebrow):not(.hero-lead){font-size:17px}.hero-visual{padding:0}.hero-photo{position:relative;top:auto;min-height:0;width:100%;aspect-ratio:4/5;border-radius:0}.hero-photo img{position:static;width:100%;height:100%;object-position:50% 25%}.hero-resources{font-size:16px!important}.hero .button{width:auto;min-height:60px}.section-title{margin-bottom:34px}.section-title.centered{text-align:left}h2{font-size:40px;line-height:1.15}h3{font-size:30px;line-height:1.25}.subtitle{font-size:25px;line-height:1.5}.lead{font-size:18px}.philosophy-opening,.reading-grid,.philosophy-continuation,.story,.ancestral,.session-layout,.liberation{grid-template-columns:1fr;gap:36px}.philosophy-opening .arch{width:calc(100% - 20px);max-height:560px;margin:12px 10px 8px;outline-offset:8px;border-radius:180px 180px 3px 3px;aspect-ratio:4/5}.reading-grid{margin-top:45px;padding-top:38px;gap:34px}.reading-grid .prose{padding-right:0}.reading-grid .prose+.prose{border-top:1px solid var(--line);padding-top:36px}.reading-grid h3{font-size:32px}.questions{font-size:23px;line-height:1.7}.philosophy-continuation{margin-top:34px;padding-top:36px}.philosophy-continuation .landscape{aspect-ratio:16/9}.essence{margin-top:38px}.essence h3{text-align:left;font-size:32px}.closing-thought{margin-top:40px;padding:32px 7px}.large-thought{font-size:26px;line-height:1.6}.callout{padding-left:18px;font-size:23px;line-height:1.65}.story-visual,.session-art{position:static}.story-copy h2{font-size:39px}.story-copy .intro-name{font-size:28px;margin-top:25px}.story-copy h3{font-size:29px}.care-grid{grid-template-columns:1fr;gap:10px}.care-item{padding:25px 0 20px}.care-item:last-child{grid-column:auto;max-width:none}.care-item h3{font-size:29px}.care-item p{font-size:17px}.care-footer{padding-top:27px;margin-top:15px}.invitation{font-size:25px}.panorama{aspect-ratio:4/3;max-height:none}.panorama img{object-position:46% center}.ancestral h2{font-size:40px}.session-layout{gap:30px}.session-art .photo{aspect-ratio:4/5}.session-copy>p{font-size:17px}.therapy p{font-size:17px}.therapy h3{font-size:29px}.session-booking{grid-template-columns:1fr;gap:30px;padding:30px 24px;margin-top:40px}.session-booking p,.checks{font-size:16px}.price strong{font-size:59px}.booking-price .button{width:100%}.liberation .landscape{aspect-ratio:16/9}.trust-grid{grid-template-columns:1fr;gap:25px}.trust-item h3{font-size:28px}.trust-item p{font-size:17px}.steps,.faq{grid-template-columns:1fr;gap:24px}.steps>div:first-child{position:static}.step h3{font-size:27px;gap:15px}.step-number{font-size:34px;min-width:29px}.step p{margin-left:44px}.faq h2{max-width:none}.faq summary{font-size:17px;gap:20px;padding-block:24px}.faq-answer{font-size:17px;padding-right:8px}.contact-band{display:flex;flex-direction:column}.contact-image{aspect-ratio:4/5;width:100%;padding:0}.contact-image .photo{position:relative;top:auto;border-radius:0}.contact-copy{padding:48px 24px 56px}.contact-copy h2{font-size:40px}.contact-copy .subtitle{font-size:26px}.contact-copy .callout{font-size:24px}.contact-copy .button{margin-top:24px}footer{padding:48px 24px 24px}.footer-main{grid-template-columns:110px minmax(0,1fr);gap:24px 18px}.footer-name{font-size:22px;line-height:1.35}.footer-slogan{font-size:23px}.footer-triad{font-size:14px}.footer-links{grid-column:1/-1;font-size:16px;gap:14px;margin-top:12px}.footer-bottom{flex-direction:column;gap:12px;padding-right:64px;margin-top:32px;font-size:14px}.whatsapp-float{right:17px;bottom:max(17px,env(safe-area-inset-bottom));width:54px;height:54px}.whatsapp-float .icon{width:29px;height:29px}}
@media(max-width:370px){.section{width:calc(100% - 36px)}.hero-copy,.contact-copy{padding-inline:18px}.hero h1{font-size:44px}.button{font-size:15px;padding:16px 20px;gap:14px}h2,.story-copy h2,.ancestral h2,.contact-copy h2{font-size:36px}.session-booking{padding:25px 18px}.price strong{font-size:51px}.footer-main{grid-template-columns:88px minmax(0,1fr)}.footer-name{font-size:19px}.footer-slogan{font-size:21px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-reveal .reveal{opacity:1;transform:none}.photo:hover img{transform:none}}
/* Approved September update: full frames, quiet gold rules and editorial imagery. */
/* Updated header artwork: blend the supplied white backing into the ivory header. */
.header-brand img{mix-blend-mode:multiply}
.location-label{display:flex;align-items:center;gap:18px;letter-spacing:.17em;font-weight:500;font-size:13px;margin-bottom:27px}
.location-label:before{content:"";display:block;flex:0 0 36px;width:36px;height:1px;background:var(--gold)}
.hero-copy>p.hero-place-intro{font-size:20px;line-height:1.8;color:#69513a;margin-bottom:28px}
.hero-copy .hero-lead{font-family:var(--serif);font-size:24px;line-height:1.55;color:#795429}
.photo.keep-frame{aspect-ratio:auto;max-height:none}
.photo.keep-frame img{height:auto;object-fit:contain}
.photo.keep-frame:hover img{transform:none}
.framed{margin:10px;outline:1px solid #b99b6260;outline-offset:9px;border-radius:3px;box-shadow:var(--shadow);width:calc(100% - 20px)}
.essence-spread{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:80px;align-items:center;margin-top:82px}
.essence-spread .essence{margin:0;max-width:none}
.essence-spread .essence h3{text-align:left;font-size:38px}
.ancillary-photo{margin-top:34px;border-radius:3px;box-shadow:var(--shadow)}
.therapy-photo{margin-top:28px;border-radius:3px;box-shadow:0 12px 35px #7453240f}
.therapy-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:60px;margin-top:52px}.therapy-panels .therapy{display:flex;flex-direction:column;margin-top:0;min-width:0}.therapy-panels .therapy-photo{margin-top:auto;padding-top:18px}.session-art{position:relative;top:auto}
.session-art .ancillary-photo{margin-top:42px}
.panorama.keep-frame{max-width:1440px;margin-inline:auto}
.contact-image{aspect-ratio:auto}
.whatsapp-icon{fill:currentColor;stroke:none}
@media(max-width:1100px){.essence-spread{gap:48px}.hero-copy>p.hero-place-intro{font-size:18px}.hero-copy .hero-lead{font-size:23px}}
@media(max-width:760px){.location-label{gap:13px;margin-bottom:24px;font-size:12px!important;letter-spacing:.16em!important}.location-label:before{flex-basis:26px;width:26px}.hero-copy>p.hero-place-intro{font-size:18px;line-height:1.85}.hero-copy .hero-lead{font-size:24px}.essence-spread{grid-template-columns:1fr;gap:36px;margin-top:46px}.essence-spread .essence h3{font-size:32px}.framed{margin:8px;width:calc(100% - 16px);outline-offset:7px}.session-art{display:contents}.session-layout{gap:32px}.session-layout>.session-art>.ancillary-photo{grid-row:3;margin-top:0}.session-copy{grid-row:2}.therapy-panels{grid-template-columns:1fr;gap:34px;margin-top:38px}.therapy-panels .therapy-photo{margin-top:0}.session-booking{margin-top:38px}.ancestral .ancillary-photo{margin-top:30px}.therapy-photo{margin-top:25px}.contact-image .photo{aspect-ratio:auto}.contact-image{aspect-ratio:auto}}
@media(max-width:370px){.location-label{letter-spacing:.13em!important;font-size:11px!important}.hero-copy>p.hero-place-intro{font-size:17px}}
/* Final requested refinements: consistent photo framing and an aligned footer. */
:root{--photo-border:#c5ae85;--photo-mat:8px}
.photo.photo-frame{width:100%;padding:var(--photo-mat);border:1px solid var(--photo-border);border-radius:4px;outline:0;background:var(--ivory);box-shadow:0 12px 34px #71522512;aspect-ratio:auto;max-height:none}
.photo.photo-frame img{height:auto;object-fit:contain;border-radius:2px}
.photo.photo-frame:hover img{transform:none}
.ancestral-band>.photo.photo-frame{width:min(1280px,calc(100% - 112px));margin:56px auto 0}
.formation{padding-top:70px;border-top:1px solid #c7ad7780}
.formation-intro{max-width:850px;margin-bottom:46px}
.formation-intro .subtitle{max-width:780px}
.formation-lead{color:var(--muted);max-width:780px}
.formation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px}
.formation-group{min-width:0;padding-top:28px;border-top:1px solid #b59761}
.formation-group h3{font-size:29px;line-height:1.3;max-width:340px;margin-bottom:24px}
.formation-list{list-style:none;margin:0;padding:0;display:grid;gap:18px}
.formation-list li{position:relative;padding-left:17px;font-size:16px;line-height:1.75;color:var(--muted)}
.formation-list li:before{content:"";position:absolute;left:0;top:.78em;width:4px;height:4px;background:var(--gold);border-radius:50%}
.formation-list strong{font-weight:600;color:#665037}
.footer-main{row-gap:0}
.footer-brand{display:contents}
.footer-heading{grid-column:2;grid-row:1;min-width:0}
.footer-seal-wrap{grid-column:1;grid-row:1;position:relative;align-self:stretch;min-width:0}
.footer-seal{position:absolute;top:50%;left:0;transform:translateY(-50%);width:100%;height:auto}
.footer-triad{grid-column:2;grid-row:2;margin-top:30px}
.footer-links{grid-column:3;grid-row:1/span 2}
@media(max-width:1100px){.ancestral-band>.photo.photo-frame{width:calc(100% - 72px);margin-top:44px}.formation-grid{gap:28px}.formation-group h3{font-size:27px}.footer-links{grid-column:2;grid-row:3;margin-top:30px}}
@media(max-width:760px){.hero-visual{padding:0 22px 38px}.contact-image{padding:0 22px}.ancestral-band>.photo.photo-frame{width:calc(100% - 44px);margin-top:34px}.formation{padding-top:46px}.formation-intro{margin-bottom:32px}.formation-grid{grid-template-columns:1fr;gap:32px}.formation-group{padding-top:24px}.formation-group h3{font-size:29px;max-width:none;margin-bottom:22px}.formation-list{gap:17px}.formation-list li{font-size:17px}.footer-triad{margin-top:28.75px}.footer-links{grid-column:1/-1;grid-row:3;margin-top:36px}}
@media(max-width:370px){.hero-visual,.contact-image{padding-inline:18px}.ancestral-band>.photo.photo-frame{width:calc(100% - 36px)}.hero-copy>p.hero-invitation{font-size:15px}.footer-triad{margin-top:26.25px}}
@media print{.header,.whatsapp-float,.button,.skip{display:none}.section{width:100%;padding:20px 0}.photo{max-height:300px}.js-reveal .reveal{opacity:1;transform:none}.story-visual,.session-art,.steps>div:first-child{position:static}body{font-size:11pt;background:#fff;color:#000}.faq details:not([open]) .faq-answer{display:block}.hero,.contact-band,.story,.session-layout{display:block}.hero-photo{display:none}footer{padding:20px 0}}
