:root { --cream:#FAF4EC; --gold:#E8B84B; --espresso:#2C181D; --terracotta:#C9896A; --white:#FFFFFF; --ink:#1C1C1C; --line:rgba(44,24,29,.16); --shadow:0 16px 45px rgba(44,24,29,.10); --shadow-soft:0 8px 24px rgba(44,24,29,.08); }
* { box-sizing:border-box; }
html { background:var(--cream); scroll-behavior:smooth; scroll-padding-top:92px; }
body { margin:0; color:var(--ink); background:var(--cream); font-family:Inter, sans-serif; font-size:16px; line-height:1.65; }
body:has(.nav--open) { overflow:hidden; }
img { max-width:100%; display:block; }
a { color:inherit; text-decoration:none; }
button, input, select { font:inherit; }
button { cursor:pointer; }
:focus-visible { outline:2px solid var(--terracotta); outline-offset:4px; }
.wrapper { width:min(1180px, calc(100% - 48px)); margin-inline:auto; }
.section { padding:120px 0; }
.section--white { background:var(--white); }
.eyebrow, .program-card__tag, .footer__label { color:var(--terracotta); font-size:11px; font-weight:700; letter-spacing:.16em; line-height:1.3; margin:0 0 16px; text-transform:uppercase; }
h1,h2,h3,p { margin-top:0; }
h1,h2,h3 { color:var(--espresso); font-family:Fraunces, Georgia, serif; font-optical-sizing:auto; font-weight:500; letter-spacing:-.045em; line-height:1.03; }
h1 em,h2 em { font-weight:400; }
h1 { font-size:clamp(46px,6.4vw,86px); }
h2 { font-size:clamp(35px,4.2vw,59px); }
h3 { font-size:clamp(23px,2vw,29px); }
p { color:var(--ink); }
.preloader { align-items:center; background:var(--cream); display:flex; inset:0; justify-content:center; position:fixed; transition:opacity .45s ease,visibility .45s ease; z-index:100; }
.preloader img { animation:loaderPulse 1.2s ease-in-out infinite alternate; max-height:100px; max-width:260px; object-fit:contain; }
.preloader--done { opacity:0; pointer-events:none; visibility:hidden; }
@keyframes loaderPulse { from { opacity:.45; transform:scale(.96); } to { opacity:1; transform:scale(1); } }
.site-header { align-items:center; background:var(--white); box-shadow:0 2px 20px rgba(44,24,29,.07); color:var(--espresso); display:flex; height:82px; justify-content:space-between; left:0; padding:0 max(24px,calc((100vw - 1260px)/2)); position:fixed; right:0; top:0; transition:box-shadow .35s ease, height .35s ease; z-index:50; }
.site-header--overlay { background:var(--white); color:var(--espresso); }
.site-header--scrolled, .site-header:not(.site-header--overlay) { background:var(--white); box-shadow:0 2px 20px rgba(44,24,29,.11); color:var(--espresso); height:76px; }
.brand { align-items:center; display:inline-flex; flex:0 0 auto; width:126px; }
.brand img { max-height:49px; object-fit:contain; object-position:left center; width:100%; }
.nav { align-items:center; display:flex; gap:26px; }
.nav > a:not(.button), .nav-programs__trigger { background:none; border:0; color:inherit; font-size:13px; font-weight:600; padding:8px 0; position:relative; }
.nav > a:not(.button)::after, .nav-programs__trigger::after, .footer__nav a::after { background:var(--terracotta); bottom:2px; content:""; height:1px; left:0; position:absolute; transform:scaleX(0); transform-origin:right; transition:transform .25s ease; width:100%; }
.nav > a:not(.button):hover::after, .nav > a[aria-current="page"]::after, .nav-programs__trigger:hover::after, .footer__nav a:hover::after { transform:scaleX(1); transform-origin:left; }
.nav-programs { position:relative; }
.nav-programs__trigger { align-items:center; display:flex; gap:4px; }
.nav-programs__trigger .icon { height:14px; width:14px; }
.nav-programs__menu { background:var(--white); border:1px solid var(--line); border-radius:12px; box-shadow:var(--shadow-soft); display:grid; left:-20px; opacity:0; padding:8px; pointer-events:none; position:absolute; top:calc(100% + 12px); transform:translateY(-4px); transition:opacity .2s ease, transform .2s ease; visibility:hidden; width:210px; }
.nav-programs:hover .nav-programs__menu, .nav-programs:focus-within .nav-programs__menu, .nav-programs--open .nav-programs__menu { opacity:1; pointer-events:auto; transform:translateY(0); visibility:visible; }
.nav-programs__menu a { border-radius:8px; color:var(--espresso); font-size:13px; font-weight:600; padding:10px 12px; }
.nav-programs__menu a:hover { background:var(--cream); }
.button { align-items:center; border:1px solid transparent; border-radius:999px; display:inline-flex; font-size:13px; font-weight:700; gap:11px; justify-content:center; letter-spacing:.01em; min-height:49px; padding:0 21px; transition:background .3s ease,color .3s ease,transform .3s ease,border .3s ease; }
.button .icon { height:17px; width:17px; }
.button:hover { transform:translateY(-2px) scale(1.015); }
.button--primary { background:var(--gold); color:var(--espresso); }
.button--primary:hover { background:var(--terracotta); }
.button--outline { border-color:currentColor; color:var(--espresso); }
.button--outline:hover { background:var(--espresso); border-color:var(--espresso); color:var(--white); }
.nav-cta { margin-left:4px; min-height:42px; padding:0 18px; }
.menu-toggle { background:none; border:0; color:inherit; display:none; padding:8px; }
.menu-toggle .icon { height:26px; width:26px; }
.hero { min-height:760px; }
.hero--home { background:var(--cream); display:grid; grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr); }
.hero__text { align-items:center; display:flex; padding:146px clamp(24px,6vw,96px) 80px max(24px,calc((100vw - 1280px)/2)); }
.hero__copy { max-width:630px; }
.hero__copy h1 { margin-bottom:27px; }
.hero--home h1 em { display:block; font-size:clamp(31px,5.3vw,75px); white-space:nowrap; }
.hero__copy p { font-size:16px; line-height:1.75; margin-bottom:32px; max-width:555px; }
.hero__image { min-height:690px; overflow:hidden; position:relative; }
.hero__image::after { background:linear-gradient(90deg,var(--cream),rgba(250,244,236,0) 22%); content:""; inset:0; pointer-events:none; position:absolute; }
.hero__image img { height:100%; object-fit:cover; object-position:center 28%; transition:transform 1.1s cubic-bezier(.2,.75,.25,1); width:100%; }
.hero__image img { animation:heroIn .95s .15s cubic-bezier(.2,.75,.25,1) both; }
@keyframes heroIn { from { opacity:0; transform:scale(1.05); } to { opacity:1; transform:scale(1); } }
.hero__actions { display:flex; flex-wrap:wrap; gap:12px; }
.stats { background:var(--white); border-radius:18px; box-shadow:var(--shadow); display:grid; grid-template-columns:repeat(3,1fr); margin-top:-43px; overflow:hidden; position:relative; z-index:2; }
.stats div { align-items:center; display:flex; flex-direction:column; justify-content:center; min-height:135px; padding:23px; position:relative; text-align:center; }
.stats div + div::before { background:var(--line); content:""; height:50%; left:0; position:absolute; top:25%; width:1px; }
.stats strong { color:var(--espresso); font-family:Fraunces, Georgia, serif; font-size:42px; font-weight:500; letter-spacing:-.05em; line-height:1; }
.stats span { color:var(--terracotta); font-size:11px; font-weight:700; letter-spacing:.13em; margin-top:9px; text-transform:uppercase; }
.section-intro { margin-bottom:48px; max-width:680px; }
.section-intro h2 { margin-bottom:17px; }
.section-intro p { font-size:16px; line-height:1.75; margin-bottom:0; }
.section-row { align-items:flex-end; display:flex; justify-content:space-between; }
.carousel-controls { display:flex; gap:9px; margin-bottom:48px; }
.carousel-controls button { align-items:center; background:transparent; border:1px solid var(--espresso); border-radius:50%; color:var(--espresso); display:flex; height:43px; justify-content:center; transition:background .25s ease,color .25s ease; width:43px; }
.carousel-controls button:first-child .icon { transform:rotate(180deg); }
.carousel-controls button:hover { background:var(--espresso); color:var(--white); }
.results { overflow:hidden; padding-bottom:110px; }
.results-viewport { cursor:grab; overflow-x:auto; scrollbar-width:none; width:100%; }
.results-viewport::-webkit-scrollbar { display:none; }
.results-viewport.is-dragging { cursor:grabbing; }
.results-track { align-items:center; display:flex; gap:17px; padding:4px 24px; width:max-content; animation:autoSlide 48s linear infinite; }
.results-viewport:hover .results-track, .results-viewport.is-dragging .results-track { animation-play-state:paused; }
.results-track img { border-radius:14px; box-shadow:0 5px 20px rgba(44,24,29,.08); height:310px; object-fit:cover; pointer-events:none; user-select:none; width:230px; }
@keyframes autoSlide { from { transform:translateX(0); } to { transform:translateX(-50%); } }
@keyframes testimonialLoop { from { transform:translate3d(0,0,0); } to { transform:translate3d(calc(-1 * var(--testimonial-shift, 0px)),0,0); } }
.why { border-top:1px solid var(--line); padding:126px 0; }
.why__grid { align-items:start; display:grid; gap:85px; grid-template-columns:70px minmax(0,1.1fr) minmax(280px,.9fr); }
.why h2 { margin:0; }
.why__grid > div:last-child { padding-top:31px; }
.why__grid > div:last-child p { font-size:17px; line-height:1.9; }
.why__grid span { color:var(--terracotta); display:block; font-size:12px; font-weight:600; line-height:1.6; margin-top:26px; }
.botanical-mark { color:var(--gold); font-family:Fraunces, Georgia, serif; font-size:57px; line-height:1; }
.programs { background:var(--white); }
.program-grid { align-items:stretch; display:grid; gap:18px; grid-template-columns:repeat(3,1fr); }
.program-card { background:var(--cream); border:1px solid transparent; border-radius:18px; display:flex; flex-direction:column; min-width:0; padding:34px 27px 28px; position:relative; transition:box-shadow .35s ease,transform .35s ease,border .35s ease; }
.program-card:hover { border-color:var(--terracotta); box-shadow:var(--shadow-soft); transform:translateY(-6px); }
.program-card--featured { background:var(--espresso); border-color:var(--espresso); color:var(--white); }
.program-card--featured h3,.program-card--featured p,.program-card--featured li,.program-card--featured .program-card__price strong { color:var(--white); }
.program-card--featured .program-card__price span { color:var(--gold); }
.program-card--featured .program-card__tag { color:var(--gold); }
.program-card--featured .text-link { color:var(--white); }
.popular-badge { background:var(--gold); border-radius:999px; color:var(--espresso); font-size:10px; font-weight:700; letter-spacing:.12em; padding:7px 11px; position:absolute; right:23px; text-transform:uppercase; top:22px; }
.program-card h3 { font-size:35px; margin-bottom:14px; }
.program-card__short { font-size:14px; line-height:1.65; min-height:92px; }
.program-card__price { border-bottom:1px solid var(--line); border-top:1px solid var(--line); display:flex; flex-direction:column; margin:24px 0 22px; padding:19px 0; }
.program-card__price strong { color:var(--espresso); font-family:Fraunces, Georgia, serif; font-size:30px; font-weight:500; letter-spacing:-.04em; line-height:1.1; }
.program-card__price span { color:var(--terracotta); font-size:11px; font-weight:600; letter-spacing:.03em; margin-top:5px; }
.program-card ul,.checks { list-style:none; margin:0; padding:0; }
.program-card li,.checks li { align-items:flex-start; display:flex; font-size:13px; gap:9px; line-height:1.55; margin-bottom:14px; }
.program-card li .icon,.checks li .icon { color:var(--terracotta); flex:0 0 auto; height:17px; margin-top:1px; width:17px; }
.program-card--featured li .icon { color:var(--gold); }
.program-card__actions { align-items:center; display:flex; flex-wrap:wrap; gap:16px; margin-top:auto; padding-top:13px; }
.program-card__actions .button { min-height:44px; }
.text-link { align-items:center; color:var(--espresso); display:inline-flex; font-size:13px; font-weight:700; gap:6px; position:relative; }
.text-link::after { background:currentColor; bottom:-4px; content:""; height:1px; left:0; position:absolute; transform:scaleX(0); transform-origin:right; transition:transform .25s ease; width:calc(100% - 21px); }
.text-link:hover::after { transform:scaleX(1); transform-origin:left; }
.text-link .icon { height:15px; width:15px; }
.testimonial-viewport { margin-inline:calc(50% - 50vw); overflow:hidden; width:100vw; }
.testimonial-track { align-items:stretch; display:flex; padding-left:24px; width:max-content; will-change:transform; animation:testimonialLoop var(--testimonial-duration,42s) linear infinite; }
.testimonial-track.is-paused { animation-play-state:paused; }
.testimonial-group { align-items:stretch; display:flex; gap:17px; flex:0 0 auto; padding:4px 0; }
.testimonial { background:var(--cream); border:1px solid transparent; border-radius:14px; display:flex; flex-direction:column; flex:0 0 355px; margin:0; min-height:0; padding:28px; position:relative; transition:border .3s ease,transform .3s ease; }
.testimonial:hover { border-color:var(--terracotta); transform:translateY(-4px); }
.testimonial::before { color:var(--gold); content:"“"; font-family:Fraunces, Georgia, serif; font-size:69px; height:41px; line-height:1; }
.testimonial blockquote { color:var(--espresso); font-family:Fraunces, Georgia, serif; font-size:18px; letter-spacing:-.015em; line-height:1.55; margin:10px 0 22px; }
.testimonial figcaption { border-top:1px solid var(--line); display:flex; flex-direction:column; margin-top:auto; padding-top:13px; }
.testimonial figcaption strong { color:var(--espresso); font-size:13px; }
.testimonial figcaption span { color:var(--terracotta); font-size:11px; font-weight:700; letter-spacing:.07em; text-transform:uppercase; }
.coach { overflow:hidden; }
.coach__grid { align-items:center; display:grid; gap:100px; grid-template-columns:.85fr 1.15fr; }
.coach__copy h2 { margin-bottom:21px; }
.coach__copy > p { font-size:17px; line-height:1.85; margin-bottom:29px; max-width:470px; }
.photo-collage { min-height:625px; position:relative; }
.photo-collage img { box-shadow:var(--shadow); position:absolute; }
.photo-collage__large { border-radius:145px 145px 20px 20px; height:575px; left:18%; object-fit:cover; object-position:center 18%; top:0; width:58%; }
.photo-collage__small { background:var(--cream); border:7px solid var(--cream); border-radius:16px; height:237px; object-fit:contain; width:240px; }
.photo-collage__small--top { right:0; top:38px; }
.photo-collage__small--bottom { bottom:0; left:0; }
.final-cta { background:var(--espresso); color:var(--white); padding:104px 0; text-align:center; }
.final-cta .wrapper { align-items:center; display:flex; flex-direction:column; }
.final-cta .eyebrow { color:var(--gold); }
.final-cta h2,.final-cta p { color:var(--white); }
.final-cta h2 { font-size:clamp(40px,5vw,66px); margin-bottom:17px; max-width:780px; }
.final-cta p { font-size:16px; line-height:1.75; margin-bottom:29px; max-width:650px; }
.footer { background:var(--white); border-top:3px solid var(--gold); }
.footer__main { display:grid; gap:70px; grid-template-columns:1.35fr .8fr .8fr; padding:71px 0 65px; }
.brand--footer { margin-bottom:18px; width:144px; }
.footer p { font-size:13px; line-height:1.75; margin-bottom:0; max-width:370px; }
.footer__label { margin:5px 0 16px; }
.footer__nav { display:grid; gap:8px; }
.footer__nav a { font-size:13px; position:relative; width:max-content; }
.footer h2 { font-size:22px; letter-spacing:-.03em; margin:0 0 17px; }
.footer-contact { align-items:center; display:flex; font-size:13px; gap:9px; margin-bottom:11px; width:max-content; }
.footer-contact .icon { color:var(--terracotta); height:17px; width:17px; }
.footer-contact .icon-whatsapp,.contact-links .icon-whatsapp { color:#25D366; }
.socials { display:flex; gap:9px; margin-top:21px; }
.socials a { align-items:center; border:1px solid var(--espresso); border-radius:50%; display:flex; height:35px; justify-content:center; transition:background .25s ease,color .25s ease; width:35px; }
.socials a:hover { background:var(--espresso); color:var(--white); }
.socials .icon { height:16px; width:16px; }
.footer__bottom { background:var(--espresso); color:var(--white); font-size:11px; letter-spacing:.05em; padding:16px 24px; text-align:center; }
.footer__bottom span { color:var(--gold); margin-left:9px; }
.footer__bottom a { text-decoration:underline; text-underline-offset:3px; }
.whatsapp-float { align-items:center; background:#25D366; border:3px solid var(--white); border-radius:50%; bottom:20px; box-shadow:0 7px 22px rgba(44,24,29,.18); color:var(--white); display:flex; height:56px; justify-content:center; padding:0; position:fixed; right:20px; transition:transform .25s ease,background .25s ease,box-shadow .25s ease; width:56px; z-index:60; }
.whatsapp-float:hover { background:#25D366; box-shadow:0 10px 27px rgba(44,24,29,.22); transform:translateY(-2px) scale(1.05); }
.whatsapp-float .icon { height:29px; width:29px; stroke-width:1.8; }
.page-hero { background:var(--white); min-height:625px; overflow:hidden; padding:135px 0 75px; position:relative; }
.page-hero__grid { align-items:center; display:grid; gap:70px; grid-template-columns:minmax(0,1.08fr) minmax(330px,.92fr); }
.page-hero__copy { max-width:700px; }
.page-hero h1 { margin-bottom:23px; }
.page-hero__copy > p { font-size:17px; line-height:1.8; margin-bottom:30px; max-width:620px; }
.page-hero__art { height:440px; position:relative; }
.page-hero__art img { border-radius:150px 150px 18px 18px; height:100%; object-fit:cover; object-position:center 20%; position:relative; width:76%; z-index:2; }
.page-hero__art--core { height:490px; }
.page-hero__art--core img { object-position:center 8%; }
.orb { border:1px solid var(--terracotta); border-radius:50%; height:260px; position:absolute; width:260px; }
.orb--one { right:0; top:3px; }
.orb--two { border-color:var(--gold); bottom:-20px; height:170px; left:18%; width:170px; }
.hero__image img { object-position:center 28%; }
.page-hero__art--lite img { object-position:center 17%; }
.page-hero__art--core img { object-position:center 8%; }
.page-hero__art--plus img { object-position:center 16%; }

.lifestyle-wall { background:var(--cream); border-top:1px solid var(--line); border-bottom:1px solid var(--line); overflow:hidden; padding:105px 0 115px; position:relative; }
.lifestyle-wall::before, .lifestyle-wall::after { content:""; inset:0 0 auto; pointer-events:none; position:absolute; z-index:3; }
.lifestyle-wall::before { background:linear-gradient(180deg,var(--cream) 0%,rgba(250,244,236,.94) 8%,rgba(250,244,236,0) 25%); height:210px; top:0; }
.lifestyle-wall::after { background:linear-gradient(0deg,var(--cream) 0%,rgba(250,244,236,.94) 8%,rgba(250,244,236,0) 25%); bottom:0; height:210px; top:auto; }
.lifestyle-wall__intro { margin-bottom:42px; position:relative; z-index:4; }
.lifestyle-wall__intro h2 { max-width:720px; margin-bottom:16px; }
.lifestyle-wall__intro p { font-size:15px; line-height:1.8; max-width:610px; margin-bottom:0; }
.lifestyle-wall__viewport { height:540px; margin-inline:calc(50% - 50vw); overflow:hidden; position:relative; }
.lifestyle-wall__grid { display:grid; gap:0; grid-template-columns:repeat(4,minmax(0,1fr)); height:max-content; margin:0 auto; max-width:1320px; padding:0 24px; }
.lifestyle-wall__grid--mobile { display:none; }
.lifestyle-wall__rail { min-width:0; overflow:hidden; position:relative; }
.lifestyle-wall__rail:nth-child(1) { transform:translateY(0); }
.lifestyle-wall__rail:nth-child(2) { transform:translateY(-22px); }
.lifestyle-wall__rail:nth-child(3) { transform:translateY(16px); }
.lifestyle-wall__rail:nth-child(4) { transform:translateY(-10px); }
.lifestyle-wall__stack { display:flex; flex-direction:column; gap:0; will-change:transform; }
.lifestyle-wall__grid--desktop .lifestyle-wall__rail:nth-child(1) .lifestyle-wall__stack { animation:wallUp 14s linear infinite; }
.lifestyle-wall__grid--desktop .lifestyle-wall__rail:nth-child(2) .lifestyle-wall__stack { animation:wallUp 16s linear infinite -1s; }
.lifestyle-wall__grid--desktop .lifestyle-wall__rail:nth-child(3) .lifestyle-wall__stack { animation:wallUp 14.8s linear infinite -1.8s; }
.lifestyle-wall__grid--desktop .lifestyle-wall__rail:nth-child(4) .lifestyle-wall__stack { animation:wallUp 17s linear infinite -.6s; }
.lifestyle-wall__item { border:0; border-radius:0; box-shadow:none; margin:0; padding:0; position:relative; }
.lifestyle-wall__item img { display:block; height:auto; margin:0; object-fit:contain; width:100%; }
.lifestyle-wall:hover .lifestyle-wall__stack { animation-play-state:paused; }
@keyframes wallUp { from { transform:translate3d(0,0,0); } to { transform:translate3d(0,calc(-1 * var(--wall-shift, 50%)),0); } }
.hero-price { color:var(--espresso); font-family:Fraunces, Georgia, serif; font-size:34px; font-weight:500; letter-spacing:-.04em; line-height:1.2; margin:-2px 0 25px; }
.hero-price small { color:var(--terracotta); display:block; font-family:Inter,sans-serif; font-size:11px; font-weight:600; letter-spacing:.04em; margin-top:7px; }
.about-statement { padding:85px 0; }
.split-copy { align-items:center; display:grid; gap:80px; grid-template-columns:1.3fr .7fr; }
.split-copy > p { color:var(--espresso); font-family:Fraunces,Georgia,serif; font-size:31px; letter-spacing:-.035em; line-height:1.35; margin:0; }
.attribution-card { border-left:2px solid var(--gold); padding:9px 0 9px 22px; }
.attribution-card span { color:var(--terracotta); display:block; font-size:10px; font-weight:700; letter-spacing:.12em; line-height:1.6; }
.attribution-card strong { color:var(--espresso); font-family:Fraunces,Georgia,serif; font-size:25px; font-weight:500; }
.team-grid { display:grid; gap:22px; grid-template-columns:repeat(2,1fr); }
.team-card { background:var(--cream); border-radius:16px; display:grid; grid-template-columns:45% 1fr; overflow:hidden; }
.team-card img { height:320px; object-fit:cover; width:100%; }
.team-card div { align-self:end; padding:28px; }
.team-card h3 { font-size:29px; margin-bottom:8px; }
.team-card p { color:var(--terracotta); font-size:12px; font-weight:700; letter-spacing:.09em; line-height:1.5; margin:0; text-transform:uppercase; }
.faq { background:var(--cream); }
.faq-list { border-top:1px solid var(--line); max-width:900px; }
.faq-list details { border-bottom:1px solid var(--line); padding:0 0 21px; }
.faq-list summary { align-items:center; color:var(--espresso); cursor:pointer; display:flex; font-family:Fraunces,Georgia,serif; font-size:24px; gap:25px; justify-content:space-between; letter-spacing:-.025em; line-height:1.3; list-style:none; padding:24px 0 0; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary .icon { color:var(--terracotta); flex:0 0 auto; height:21px; transition:transform .25s ease; width:21px; }
.faq-list details[open] summary .icon { transform:rotate(45deg); }
.faq-list details p { line-height:1.8; margin:15px 54px 0 0; max-width:800px; }
.fit { padding-bottom:100px; }
.fit .section-intro { margin-bottom:38px; }
.fit-grid { display:grid; gap:20px; grid-template-columns:repeat(2,1fr); }
.fit-card { background:var(--cream); border-radius:16px; padding:31px; }
.fit-card--wide { max-width:910px; }
.fit-card h3 { font-size:30px; margin-bottom:21px; }
.checks li { font-size:15px; gap:11px; margin-bottom:17px; }
.checks li .icon { color:var(--terracotta); height:19px; width:19px; }
.important-note { border-top:1px solid var(--line); color:var(--terracotta); font-size:13px; font-weight:600; margin:25px 0 0; padding-top:20px; }
.structure-list { display:grid; gap:16px; grid-template-columns:repeat(2,minmax(0,1fr)); }
.structure-item { background:var(--white); border:1px solid var(--line); border-radius:17px; display:grid; gap:22px; grid-template-columns:48px 1fr; min-height:255px; padding:29px; transition:box-shadow .35s ease,transform .35s ease; }
.structure-item:hover { box-shadow:var(--shadow-soft); transform:translateY(-5px); }
.structure-item:nth-child(even) { background:var(--espresso); border-color:var(--espresso); }
.structure-item > span { align-items:center; background:var(--gold); border-radius:50%; color:var(--espresso); display:flex; font-family:Fraunces,Georgia,serif; font-size:18px; height:42px; justify-content:center; line-height:1; width:42px; }
.structure-item h3 { font-size:25px; margin-bottom:13px; }
.structure-item p { font-size:14px; line-height:1.78; margin:0; max-width:810px; }
.structure-item:nth-child(even) h3,.structure-item:nth-child(even) p { color:var(--white); }
.recap { padding:102px 0; }
.recap__grid { align-items:start; display:grid; gap:90px; grid-template-columns:.9fr 1.1fr; }
.recap__grid h2 { font-size:46px; }
.recap-price { color:var(--espresso); font-family:Fraunces,Georgia,serif; font-size:40px; letter-spacing:-.045em; line-height:1.1; margin-top:34px; }
.recap-price small { color:var(--terracotta); display:block; font-family:Inter,sans-serif; font-size:12px; font-weight:700; letter-spacing:.05em; line-height:1.5; margin-top:8px; }
.contact { background:var(--cream); }
.contact__grid { align-items:start; display:grid; gap:75px; grid-template-columns:1.1fr .9fr; }
.contact-form-wrap { background:var(--white); border-radius:18px; box-shadow:var(--shadow-soft); padding:40px; }
.contact-form-wrap h2 { font-size:37px; margin-bottom:11px; }
.contact-form-wrap > p:not(.eyebrow) { font-size:14px; line-height:1.65; margin-bottom:27px; }
.investment-note { background:var(--cream); border-left:2px solid var(--gold); border-radius:8px; color:var(--espresso); font-size:12px !important; line-height:1.6 !important; margin:0 0 25px !important; padding:12px 14px; }
.investment-note strong { color:var(--espresso); }
.phone-field { display:grid; gap:0; grid-template-columns:minmax(0,1fr); }
.phone-field label:first-child { margin-bottom:0; }
.phone-field select { margin-top:7px; margin-bottom:13px; }
.phone-field input { margin-top:7px; }

form { display:grid; gap:17px; }
.form-row { display:grid; gap:14px; grid-template-columns:1fr 1fr; }
label, fieldset { color:var(--espresso); font-size:12px; font-weight:700; }
input,select { background:var(--cream); border:1px solid transparent; border-radius:7px; color:var(--espresso); display:block; font-size:14px; font-weight:400; margin-top:7px; min-height:46px; padding:9px 12px; width:100%; }
input:focus,select:focus { border-color:var(--terracotta); outline:none; }
fieldset { border:0; margin:0; padding:0; }
legend { margin-bottom:8px; }
.radio-row { display:flex; flex-wrap:wrap; gap:7px; }
.radio-row label { align-items:center; background:var(--cream); border:1px solid transparent; border-radius:999px; cursor:pointer; display:flex; font-size:11px; font-weight:600; gap:5px; padding:7px 10px; }
.radio-row input { accent-color:var(--terracotta); height:13px; margin:0; min-height:0; width:13px; }
form > small { color:var(--terracotta); font-size:11px; line-height:1.5; }
.next-steps { padding-top:23px; }
.next-steps ol { list-style:none; margin:29px 0 37px; padding:0; }
.next-steps li { display:grid; gap:18px; grid-template-columns:38px 1fr; margin-bottom:29px; }
.next-steps li > span { color:var(--gold); font-family:Fraunces,Georgia,serif; font-size:17px; }
.next-steps h3 { font-size:24px; margin:0 0 8px; }
.next-steps p { font-size:14px; line-height:1.75; margin:0; }
.contact-links { border-top:1px solid var(--line); display:grid; gap:12px; padding-top:26px; }
.contact-links a { align-items:center; display:flex; font-size:13px; font-weight:600; gap:10px; }
.contact-links .icon { color:var(--terracotta); height:18px; width:18px; }
.not-found { align-items:center; display:flex; min-height:70vh; text-align:center; }
.not-found .wrapper { align-items:center; display:flex; flex-direction:column; }
.not-found h1 { margin-bottom:18px; }
.not-found p { margin-bottom:25px; }
.reveal { opacity:0; transform:translateY(18px); transition:opacity .65s ease var(--delay,0ms),transform .65s ease var(--delay,0ms); }
.reveal.is-visible { opacity:1; transform:translateY(0); }

@media (max-width: 900px) {
  .site-header { height:73px; padding:0 24px; }
  .brand { width:114px; }
  .menu-toggle { display:block; }
  .nav { background:var(--cream); box-shadow:0 22px 34px rgba(44,24,29,.14); color:var(--espresso); display:flex; flex-direction:column; gap:2px; left:0; opacity:0; padding:20px 24px 28px; pointer-events:none; position:absolute; right:0; top:72px; transform:translateY(-10px); transition:opacity .25s ease,transform .25s ease; visibility:hidden; }
  .nav--open { opacity:1; pointer-events:auto; transform:translateY(0); visibility:visible; }
  .nav > a:not(.button),.nav-programs,.nav-programs__trigger { text-align:left; width:100%; }
  .nav > a:not(.button), .nav-programs__trigger { font-size:15px; padding:11px 0; }
  .nav-programs__menu { background:transparent; border:0; box-shadow:none; display:none; opacity:1; padding:4px 0 4px 13px; pointer-events:auto; position:static; transform:none; visibility:visible; width:auto; }
  .nav-programs:hover .nav-programs__menu, .nav-programs:focus-within .nav-programs__menu, .nav-programs--open .nav-programs__menu { display:grid; }
  .nav-cta { margin:14px 0 0; width:100%; }
  .hero { min-height:auto; }
  .hero--home { grid-template-columns:1fr; }
  .hero__text { padding:135px 38px 67px; }
  .hero__image { min-height:530px; }
  .hero__image::after { background:linear-gradient(180deg,var(--cream),rgba(250,244,236,0) 22%); }
  .stats { width:min(750px,calc(100% - 48px)); }
  .program-grid { grid-template-columns:1fr; margin:auto; max-width:580px; }
  .program-card__short { min-height:0; }
  .why__grid { gap:30px; grid-template-columns:40px 1fr; }
  .why__grid > div:last-child { grid-column:2; padding-top:0; }
  .coach__grid { gap:55px; grid-template-columns:1fr; }
  .coach__copy { max-width:600px; }
  .photo-collage { margin:auto; width:min(620px,100%); }
  .footer__main { gap:45px; grid-template-columns:1fr 1fr; }
  .footer__main > section:first-child { grid-column:1/-1; }
  .page-hero { padding-top:125px; }
  .page-hero__grid { gap:47px; grid-template-columns:1fr 310px; }
  .page-hero__art { height:370px; }
  .page-hero__art--core { height:415px; }
  .page-hero h1 { font-size:clamp(44px,6vw,62px); }
  .team-card div { padding:19px; }
  .team-card h3 { font-size:24px; }
  .contact__grid,.recap__grid { gap:55px; grid-template-columns:1fr; }
}
@media (max-width: 900px) {
  .lifestyle-wall__grid--desktop { display:none; }
  .lifestyle-wall__grid--mobile { display:grid; gap:0; grid-template-columns:repeat(2,minmax(0,1fr)); max-width:100%; padding:0; }
  .lifestyle-wall__grid--mobile .lifestyle-wall__rail:nth-child(n) { transform:none; }
  .lifestyle-wall__grid--mobile .lifestyle-wall__stack { animation:wallUp var(--wall-duration,10s) linear infinite; }
  .lifestyle-wall__grid--mobile .lifestyle-wall__rail:nth-child(2) .lifestyle-wall__stack { animation-duration:var(--wall-duration,11s); animation-delay:-.75s; }
  .lifestyle-wall__item img { height:auto; object-fit:contain; width:100%; }
}
@media (max-width: 620px) {
  .wrapper { width:min(100% - 36px,1180px); }
  .section { padding:78px 0; }
  h1 { font-size:45px; }
  h2 { font-size:36px; }
  .hero__text { padding:113px 18px 47px; }
  .hero__copy p,.page-hero__copy > p { font-size:15px; }
  .hero__image { min-height:405px; }
  .hero__image img { object-position:center 20%; }
  .stats { border-radius:13px; margin-top:-26px; width:calc(100% - 36px); }
  .stats div { min-height:105px; padding:12px 7px; }
  .stats strong { font-size:29px; }
  .stats span { font-size:9px; letter-spacing:.07em; }
  .section-intro { margin-bottom:31px; }
  .section-row { display:block; }
  .carousel-controls { margin:-15px 0 23px; }
  .results { padding-bottom:72px; }
  .results-track { gap:12px; padding:4px 18px; }
  .results-track img { height:250px; width:185px; }
  .why { padding:75px 0; }
  .why__grid { gap:19px; grid-template-columns:26px 1fr; }
  .botanical-mark { font-size:36px; }
  .why__grid > div:last-child p { font-size:15px; }
  .program-card { padding:28px 23px 25px; }
  .testimonial-track { padding-left:18px; }
  .testimonial-group { gap:12px; padding:4px 0; }
  .testimonial { flex-basis:284px; padding:23px; }
  .testimonial blockquote { font-size:16px; }
  .photo-collage { display:grid; gap:12px; grid-template-columns:1fr 1fr; min-height:0; width:100%; }
  .photo-collage img { box-shadow:var(--shadow-soft); position:static; width:100%; }
  .photo-collage__large { border-radius:90px 90px 14px 14px; grid-column:1 / -1; height:380px; object-fit:cover; object-position:center 16%; }
  .photo-collage__small { border:0; border-radius:12px; height:190px; object-fit:contain; width:100%; }
  .lifestyle-wall { padding:78px 0 84px; }
  .lifestyle-wall::before, .lifestyle-wall::after { height:125px; }
  .lifestyle-wall__intro { margin-bottom:27px; }
  .lifestyle-wall__intro h2 { font-size:34px; }
  .lifestyle-wall__intro p { font-size:14px; line-height:1.7; }
  .lifestyle-wall__viewport { height:435px; margin-inline:0; }
  .lifestyle-wall__item, .lifestyle-wall__item img { border-radius:0; }
  .lifestyle-wall__item img { height:auto; object-fit:contain; width:100%; }
  .final-cta { padding:77px 0; }
  .footer__main { gap:35px; grid-template-columns:1fr; padding:53px 0; }
  .footer__main > section:first-child { grid-column:auto; }
  .footer__nav { grid-template-columns:1fr 1fr; }
  .page-hero { min-height:auto; padding:113px 0 58px; }
  .page-hero__grid { gap:37px; grid-template-columns:1fr; }
  .page-hero__art { height:320px; width:100%; }
  .page-hero__art--core { height:355px; }
  .page-hero__art img { width:80%; object-position:center 12%; }
  .page-hero__art--core img { object-position:center 4%; }
  .page-hero__art--plus img { object-position:center 10%; }
  .page-hero h1 { font-size:44px; }
  .page-hero__copy > p { line-height:1.72; }
  .split-copy { gap:35px; grid-template-columns:1fr; }
  .split-copy > p { font-size:26px; }
  .team-grid { grid-template-columns:1fr; }
  .team-card { grid-template-columns:38% 1fr; }
  .team-card img { height:230px; }
  .faq-list summary { font-size:21px; gap:12px; }
  .faq-list details p { font-size:14px; margin-right:0; }
  .fit-grid { grid-template-columns:1fr; }
  .fit-card { padding:25px 20px; }
  .structure-list { gap:14px; grid-template-columns:1fr; }
  .structure-item { gap:14px; grid-template-columns:38px 1fr; min-height:0; padding:27px 21px; }
  .structure-item:nth-child(even) { border-radius:17px; }
  .structure-item h3 { font-size:23px; }
  .structure-item p { font-size:14px; }
  .recap__grid h2 { font-size:37px; }
  .contact-form-wrap { padding:27px 20px; }
  .contact-form-wrap h2 { font-size:31px; }
  .form-row { grid-template-columns:1fr; }
  .radio-row { gap:5px; }
  .next-steps { padding-top:0; }
  .whatsapp-float { bottom:16px; height:52px; right:14px; width:52px; }
  .whatsapp-float .icon { height:27px; width:27px; }
}
@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; scroll-behavior:auto !important; transition-duration:.01ms !important; }
  .reveal { opacity:1; transform:none; }
  .lifestyle-wall__stack { animation:none !important; transform:none !important; }
}

/* About page — Pujah letter */
.pujah-letter { background:var(--cream); overflow:hidden; padding:110px 0 120px; }
.pujah-letter__heading { max-width:780px; margin-bottom:66px; }
.pujah-letter__heading h2 { font-size:clamp(48px,6vw,78px); margin-bottom:15px; }
.pujah-letter__heading p { font-size:17px; line-height:1.8; max-width:610px; }
.pujah-story { display:grid; gap:74px; align-items:center; }
.pujah-story--opening { grid-template-columns:minmax(280px,.78fr) minmax(0,1.22fr); }
.pujah-story--study { grid-template-columns:minmax(0,1.12fr) minmax(300px,.88fr); margin-top:86px; }
.pujah-story__photo { margin:0; position:relative; }
.pujah-story__photo img { display:block; width:100%; height:auto; }
.pujah-story__photo figcaption { color:var(--terracotta); font-size:10px; font-weight:700; letter-spacing:.11em; margin-top:13px; text-transform:uppercase; }
.pujah-story__photo--before { max-width:430px; transform:rotate(-2deg); }
.pujah-story__photo--before img { box-shadow:var(--shadow); }
.pujah-story__photo--general { max-width:470px; justify-self:end; }
.pujah-story__photo--general img { box-shadow:var(--shadow-soft); }
.pujah-story__copy { max-width:760px; }
.pujah-story__copy p { font-size:17px; line-height:1.9; margin-bottom:21px; }
.pujah-story__dropcap { color:var(--espresso); font-family:Fraunces,Georgia,serif; font-size:clamp(30px,4vw,48px)!important; letter-spacing:-.025em; line-height:1.16!important; }
.pujah-story__copy blockquote { border-left:3px solid var(--gold); color:var(--espresso); font-family:Fraunces,Georgia,serif; font-size:clamp(30px,3.7vw,52px); line-height:1.12; margin:36px 0; padding-left:24px; }
.pujah-story__break { align-items:center; border-top:1px solid var(--line); border-bottom:1px solid var(--line); display:grid; gap:28px; grid-template-columns:58px 1fr; margin:88px 0 0; padding:42px 0; }
.pujah-story__break span { align-items:center; background:var(--gold); border-radius:50%; color:var(--espresso); display:flex; font-family:Fraunces,Georgia,serif; font-size:18px; height:58px; justify-content:center; width:58px; }
.pujah-story__break p { color:var(--espresso); font-family:Fraunces,Georgia,serif; font-size:clamp(24px,3vw,38px); line-height:1.25; margin:0; max-width:850px; }
.pujah-story__manifesto { background:var(--espresso); color:var(--white); margin-top:100px; padding:54px 56px 62px; }
.pujah-story__manifesto .eyebrow { color:var(--gold); margin-bottom:20px; }
.pujah-story__manifesto-grid { display:grid; gap:45px; grid-template-columns:1fr 1fr; }
.pujah-story__manifesto-grid p { color:var(--white); font-family:Fraunces,Georgia,serif; font-size:clamp(24px,2.5vw,34px); line-height:1.35; margin:0; }
.pujah-story__credentials { border-bottom:1px solid var(--line); display:grid; grid-template-columns:repeat(4,1fr); margin:0 0 88px; }
.pujah-story__credential { border-right:1px solid var(--line); min-height:180px; padding:31px 25px 25px 0; }
.pujah-story__credential:not(:first-child) { padding-left:25px; }
.pujah-story__credential:last-child { border-right:0; }
.pujah-story__credential span { color:var(--gold); font-family:Fraunces,Georgia,serif; font-size:18px; }
.pujah-story__credential p { color:var(--espresso); font-size:13px; line-height:1.65; margin:15px 0 0; }
.pujah-story__event { margin:0; }
.pujah-story__event img { display:block; height:auto; width:100%; }
.pujah-story__event figcaption { background:var(--white); color:var(--espresso); font-family:Fraunces,Georgia,serif; font-size:clamp(22px,2.5vw,34px); line-height:1.3; margin:0; max-width:860px; padding:28px 32px; }
.pujah-story__closing { margin:96px auto 0; max-width:860px; text-align:center; }
.pujah-story__closing > p:first-child { color:var(--terracotta); font-size:12px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.pujah-story__closing h3 { color:var(--espresso); font-family:Fraunces,Georgia,serif; font-size:clamp(42px,5.5vw,68px); line-height:1.08; margin:19px 0 23px; }
.pujah-story__closing > p:not(:first-child) { font-size:16px; line-height:1.85; margin:0 auto 17px; max-width:720px; }
.pujah-story__signature { color:var(--espresso); font-family:Fraunces,Georgia,serif; font-size:24px!important; margin-top:32px!important; }
.pujah-story__signature span { color:var(--terracotta); font-family:Inter,sans-serif; font-size:10px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.team-card img { background:var(--white); height:350px; object-fit:contain; padding:16px; }
@media (max-width: 820px) {
  .pujah-letter { padding:82px 0 90px; }
  .pujah-story--opening,.pujah-story--study { gap:44px; grid-template-columns:1fr; }
  .pujah-story__photo--before,.pujah-story__photo--general { justify-self:center; max-width:560px; transform:none; width:100%; }
  .pujah-story__break { margin-top:62px; }
  .pujah-story__manifesto { margin-top:72px; padding:38px 28px 42px; }
  .pujah-story__manifesto-grid { gap:24px; grid-template-columns:1fr; }
  .pujah-story__credentials { grid-template-columns:1fr 1fr; margin-bottom:65px; }
  .pujah-story__credential { border-bottom:1px solid var(--line); border-right:1px solid var(--line); min-height:155px; }
  .pujah-story__credential:nth-child(2n) { border-right:0; padding-left:22px; }
}
@media (max-width: 620px) {
  .pujah-letter__heading { margin-bottom:43px; }
  .pujah-letter__heading h2 { font-size:44px; }
  .pujah-letter__heading p { font-size:15px; }
  .pujah-story { gap:32px; }
  .pujah-story__copy p { font-size:15px; line-height:1.8; }
  .pujah-story__dropcap { font-size:31px!important; }
  .pujah-story__copy blockquote { font-size:31px; margin:28px 0; padding-left:17px; }
  .pujah-story__break { gap:16px; grid-template-columns:44px 1fr; margin-top:45px; padding:28px 0; }
  .pujah-story__break span { height:44px; width:44px; }
  .pujah-story__break p { font-size:24px; }
  .pujah-story__manifesto { margin-inline:-18px; }
  .pujah-story__manifesto-grid p { font-size:25px; }
  .pujah-story__credentials { margin-bottom:48px; }
  .pujah-story__credential { min-height:145px; padding-right:16px; }
  .pujah-story__credential:not(:first-child) { padding-left:16px; }
  .pujah-story__event figcaption { font-size:24px; padding:22px; }
  .pujah-story__closing { margin-top:62px; }
  .pujah-story__closing h3 { font-size:42px; }
  .team-card img { height:230px; padding:12px; object-fit:contain; }
}

/* Final stability fixes — text testimonials + Arpita coach profile */
html, body { overflow-x: hidden; }
.stories { overflow: hidden; }
.stories .wrapper { min-width: 0; }
.testimonial-viewport { width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); overflow:hidden; }
.testimonial-track { min-height:0; }
.testimonial-group { min-width:max-content; }

/* Arpita replaces the old Kanika profile. Keep the same editorial card language,
   but preserve the complete portrait instead of cropping it. */
.team-card--arpita {
  align-items: stretch;
  background: var(--cream);
  display: grid;
  grid-template-columns: minmax(320px, 42%) minmax(0, 58%);
  overflow: hidden;
}
.team-card--arpita .team-card__image {
  align-items: flex-start;
  background: var(--white);
  display: flex;
  justify-content: center;
  min-width: 0;
  overflow: hidden;
}
.team-card--arpita .team-card__image img {
  display: block;
  height: auto;
  max-height: none;
  max-width: 100%;
  object-fit: contain;
  object-position: center top;
  padding: 0;
  width: 100%;
}
.team-card--arpita .team-card__content {
  align-self: stretch;
  padding: clamp(30px, 4vw, 52px);
}
.team-card--arpita .team-card__role {
  color: var(--terracotta);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .12em;
  line-height: 1.4;
  margin: 0 0 10px;
  text-transform: uppercase;
}
.team-card--arpita h3 {
  font-size: clamp(28px, 3vw, 42px);
  line-height: 1.08;
  margin-bottom: 20px;
}
.team-card--arpita .team-card__content > p:not(.team-card__role) {
  font-size: 14px;
  line-height: 1.75;
  margin-bottom: 16px;
}
.team-card__philosophy {
  border-top: 1px solid var(--line);
  margin-top: 26px;
  padding-top: 24px;
}
.team-card__philosophy h4 {
  color: var(--espresso);
  font-family: Fraunces, Georgia, serif;
  font-size: 23px;
  font-weight: 500;
  letter-spacing: -.025em;
  margin: 0 0 17px;
}
.team-card__philosophy-grid {
  display: grid;
  gap: 12px 24px;
  grid-template-columns: 1fr 1fr;
}
.team-card__philosophy-grid p {
  font-size: 12px;
  line-height: 1.65;
  margin: 0;
}
.team-card__philosophy-grid p::before {
  color: var(--gold);
  content: '✦';
  margin-right: 7px;
}
.team-card__goal {
  border-top: 1px solid var(--line);
  margin-top: 25px;
  padding-top: 23px;
}
.team-card__goal-label {
  color: var(--terracotta) !important;
  font-size: 10px !important;
  font-weight: 700;
  letter-spacing: .12em;
  line-height: 1.3 !important;
  margin-bottom: 11px !important;
  text-transform: uppercase;
}
.team-card--arpita .team-card__closing {
  color: var(--espresso);
  font-family: Fraunces, Georgia, serif;
  font-size: 20px !important;
  line-height: 1.35 !important;
  margin-top: 9px;
}

@media (max-width: 820px) {
  .team-card--arpita { grid-template-columns: 1fr; }
  .team-card--arpita .team-card__image img {
    max-height: none;
    width: 100%;
  }
  .team-card--arpita .team-card__content { padding: 28px 23px 31px; }
  .team-card--arpita h3 { font-size: 31px; }
  .team-card__philosophy-grid { grid-template-columns: 1fr; }
}

@media (max-width: 520px) {
  .team-card--arpita .team-card__image { min-height: 0; }
  .team-card--arpita .team-card__content { padding: 25px 19px 28px; }
  .team-card--arpita h3 { font-size: 28px; }
  .team-card--arpita .team-card__content > p:not(.team-card__role) { font-size: 13px; line-height: 1.72; }
}

/* Arpita — one cohesive editorial profile, one photo, no empty photo slots */
.team-card--arpita {
  background: var(--cream);
  border-radius: 18px;
  display: block;
  overflow: hidden;
}
.team-card--arpita .team-card__top {
  align-items: stretch;
  display: grid;
  grid-template-columns: minmax(300px, 42%) minmax(0, 58%);
}
.team-card--arpita .team-card__image {
  align-items: flex-start;
  background: var(--cream);
  display: flex;
  justify-content: center;
  margin: 0;
  min-width: 0;
  padding: 0;
  overflow: hidden;
}
.team-card--arpita .team-card__image img {
  display: block;
  height: auto !important;
  max-height: none !important;
  max-width: 100% !important;
  object-fit: contain !important;
  object-position: center top !important;
  padding: 0 !important;
  width: 100% !important;
}
.team-card--arpita .team-card__intro {
  align-self: stretch;
  padding: clamp(34px, 4vw, 58px);
}
.team-card--arpita .team-card__role {
  color: var(--terracotta);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .14em;
  line-height: 1.4;
  margin: 0 0 10px;
  text-transform: uppercase;
}
.team-card--arpita .team-card__intro h3 {
  color: var(--espresso);
  font-family: Fraunces, Georgia, serif;
  font-size: clamp(32px, 3.2vw, 48px);
  font-weight: 500;
  letter-spacing: -.04em;
  line-height: 1.04;
  margin: 0 0 23px;
}
.team-card--arpita .team-card__intro p:not(.team-card__role) {
  color: var(--espresso);
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.78;
  margin: 0 0 16px;
  text-transform: none;
}
.team-card--arpita .team-card__details {
  border-top: 1px solid var(--line);
  padding: 0 clamp(34px, 4vw, 58px) clamp(34px, 4vw, 58px);
}
.team-card--arpita .team-card__philosophy,
.team-card--arpita .team-card__goal {
  border-top: 0;
  margin: 0;
  padding: 28px 0 0;
}
.team-card--arpita .team-card__philosophy h4 {
  font-size: 25px;
  margin-bottom: 20px;
}
.team-card--arpita .team-card__philosophy-grid {
  gap: 14px 34px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.team-card--arpita .team-card__philosophy-grid p {
  color: var(--espresso);
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.7;
  margin: 0;
  text-transform: none;
}
.team-card--arpita .team-card__goal {
  border-top: 1px solid var(--line);
  margin-top: 28px;
  padding-top: 26px;
}
.team-card--arpita .team-card__goal-label {
  color: var(--terracotta) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .14em !important;
  line-height: 1.3 !important;
  margin: 0 0 10px !important;
  text-transform: uppercase !important;
}
.team-card--arpita .team-card__goal > p:not(.team-card__goal-label) {
  color: var(--espresso);
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.78;
  margin: 0 0 12px;
  text-transform: none;
}
.team-card--arpita .team-card__closing {
  color: var(--espresso) !important;
  font-family: Fraunces, Georgia, serif !important;
  font-size: 24px !important;
  font-weight: 500 !important;
  letter-spacing: -.02em !important;
  line-height: 1.3 !important;
  margin: 14px 0 0 !important;
}
@media (max-width: 820px) {
  .team-card--arpita .team-card__top {
    grid-template-columns: 1fr;
  }
  .team-card--arpita .team-card__image {
    width: 100%;
  }
  .team-card--arpita .team-card__image img {
    margin-inline: auto;
    max-width: 520px !important;
    width: 100% !important;
  }
  .team-card--arpita .team-card__intro,
  .team-card--arpita .team-card__details {
    padding-left: 28px;
    padding-right: 28px;
  }
  .team-card--arpita .team-card__philosophy-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 520px) {
  .team-card--arpita { border-radius: 14px; }
  .team-card--arpita .team-card__intro,
  .team-card--arpita .team-card__details {
    padding-left: 20px;
    padding-right: 20px;
  }
  .team-card--arpita .team-card__intro { padding-top: 26px; }
  .team-card--arpita .team-card__intro h3 { font-size: 30px; }
  .team-card--arpita .team-card__intro p:not(.team-card__role),
  .team-card--arpita .team-card__goal > p:not(.team-card__goal-label) {
    font-size: 13px;
    line-height: 1.72;
  }
  .team-card--arpita .team-card__philosophy-grid p { font-size: 12.5px; }
  .team-card--arpita .team-card__closing { font-size: 21px !important; }
}

/* Cross-device animation safeguards */
.testimonial-viewport, .lifestyle-wall__viewport { touch-action: pan-y; }
.testimonial, .lifestyle-wall__item { break-inside: avoid; }
@media (max-width: 900px) {
  .testimonial-track { padding-left:18px; }
  .testimonial { flex-basis: min(82vw, 335px); }
  .lifestyle-wall__viewport { height:clamp(400px, 62vw, 520px); }
}
@media (max-width: 520px) {
  .testimonial { flex-basis:calc(100vw - 54px); }
  .lifestyle-wall__viewport { height:430px; }
}
