:root{--cream:#f1ece3;--paper:#faf7f1;--wine:#541d2d;--gold:#9d784a;--sand:#d8cec0;--ink:#302c28}
body{font-size:17px;color:var(--ink);background:var(--cream)}a{color:inherit}h1,h2,h3{color:var(--wine)}.skip{position:fixed;top:-100px;z-index:100;background:white;padding:12px}.skip:focus{top:12px}.navigation{height:100px;padding:0 5vw;position:absolute;top:0;left:0;width:100%;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #5a38221a}.brand{display:flex;gap:12px;align-items:center;text-decoration:none}.brand img{width:50px;height:50px;border-radius:50%}.brand span{font-family:var(--serif);font-size:32px;line-height:1}.brand small{display:block;font:9px var(--sans);letter-spacing:.18em;margin-top:7px}.navlinks{display:flex;gap:30px;font-size:14px}.navlinks a{text-decoration:none}.navlinks a:hover{color:var(--wine)}.navcta{padding:11px 20px;border:1px solid #541d2d55;border-radius:3px;font-size:14px;text-decoration:none;background:#fff6}.journey{height:650svh;padding:0}.stage{height:100svh;position:sticky;top:0;overflow:hidden;background:#eee8de;isolation:isolate}.atmosphere{position:absolute;inset:0;background:radial-gradient(ellipse at 75% 20%,#d9be9760,transparent 50%),radial-gradient(ellipse at 10% 75%,#e3c8b977,transparent 55%)}.hero-copy{position:absolute;inset:26% 5vw auto;z-index:4;text-align:center;pointer-events:none}.hero-copy .label{font-size:11px;letter-spacing:.28em}.hero-copy h1{font-size:clamp(48px,7.6vw,116px);line-height:.98;letter-spacing:-.04em;font-weight:400;margin:25px auto}.hero-copy h1 em{font-weight:400}.hero-copy>p:not(.label){margin:22px auto 30px;font-size:17px}.hero-copy a{pointer-events:auto}.pill{border-radius:3px;padding:13px 24px;font-size:14px;transition:transform .25s,background .25s}.pill:hover{transform:translateY(-3px);box-shadow:0 8px 25px #541d2d15}.pill.main{background:var(--wine)}.tunnel{position:absolute;inset:0;perspective:950px;perspective-origin:50% 50%;transform-style:preserve-3d;z-index:2;pointer-events:none}.tunnel img{position:absolute;left:50%;top:50%;width:clamp(170px,24vw,400px);height:clamp(125px,19vw,290px);object-fit:cover;border:6px solid #fff9;box-shadow:0 20px 65px #3c28182a;will-change:transform,opacity;backface-visibility:hidden}.stage canvas{position:absolute;inset:0;z-index:2;pointer-events:none}.scene-caption{position:absolute;bottom:16%;left:8%;right:8%;z-index:5;opacity:0;pointer-events:none;text-shadow:0 1px 20px #f9f5ec}.scene-caption h2{font-size:clamp(40px,5.6vw,86px);margin:10px 0;letter-spacing:-.035em}.scene-caption p{font-size:17px;max-width:40ch}.scene-number{font-size:11px;letter-spacing:.2em}.journey-foot{position:absolute;bottom:32px;left:5vw;right:5vw;display:flex;align-items:center;justify-content:space-between;z-index:6;font-size:11px;letter-spacing:.08em}.journey-foot a{padding:8px 12px;background:#faf7f1b8;backdrop-filter:blur(10px);text-decoration:none}.journey-foot b{margin-left:14px}.progress{position:absolute;bottom:0;left:0;width:100%;height:2px;background:#541d2d15;z-index:7}.progress i{display:block;height:100%;background:var(--wine);width:0}.wrap{max-width:1280px;padding:0 6vw}section:not(.journey){padding:120px 0}.about{max-width:870px;text-align:left}.about p{margin-left:0}.about h2,h2{font-size:clamp(38px,5vw,72px);line-height:1.08;letter-spacing:-.025em}#clinica{position:relative}#clinica .label:before{content:'01 / ';color:var(--wine)}.tri{gap:0;border-top:1px solid var(--sand);border-bottom:1px solid var(--sand)}.tri div{background:none;border:0;border-radius:0;border-right:1px solid var(--sand);padding:45px 25px}.tri div:last-child{border-right:0}.tri h3{font-size:48px}.cards{display:block;counter-reset:service}.card{border-radius:4px;background:#fff5;border:1px solid #cdbda688;backdrop-filter:blur(12px)}.cards .card{display:grid;grid-template-columns:60px 1fr 1fr;align-items:center;gap:25px;padding:30px 0;border:0;border-bottom:1px solid var(--sand);background:transparent;counter-increment:service;transition:padding .25s}.cards .card:before{content:'0' counter(service);font-size:12px;color:var(--gold)}.cards .card h3{font-size:32px;margin:0}.cards .card:hover{padding-left:12px}.cards .card p{font-size:16px}.person{border-radius:4px;border:0;background:transparent}.person .ph{aspect-ratio:4/4.4;overflow:hidden;border-radius:3px}.person .ph img{transition:transform .7s}.person:hover img{transform:scale(1.025)}.person div.t{padding:25px 0}.person h3{font-size:27px}.cmp,.static,.video{border-radius:4px}.ba{gap:50px}.video{max-width:520px;width:100%;margin-left:0}.facade{width:100%;height:650px;object-fit:contain;object-position:center;background:#e6dfd3;border-radius:3px;margin-top:35px}#mapa .about{max-width:1100px}.cta{border-radius:4px;background:radial-gradient(at 80% 0,#81504a,transparent 70%),var(--wine);padding:90px 30px}.cta h2{font-size:clamp(40px,6vw,76px)}.wa{width:54px;height:54px;right:20px;bottom:20px}footer{border-top:1px solid var(--sand)}.rv{animation:none}section{scroll-margin-top:30px}.reveal{opacity:0;transform:translateY(25px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:none}
@media(max-width:760px){.navigation{height:82px;padding:0 6vw}.navlinks{display:none}.brand img{width:38px;height:38px}.brand span{font-size:26px}.brand small{font-size:7px}.navcta{font-size:11px;padding:10px}.hero-copy{top:29%;inset-inline:6vw}.hero-copy h1{font-size:clamp(45px,11vw,80px)}.hero-copy>p:not(.label){font-size:15px;max-width:30ch}.hero-copy .label{font-size:9px}.journey{height:480svh}.journey-foot>span:last-child{display:none}.journey-foot{bottom:28px;font-size:9px}.scene-caption{bottom:19%;left:7%;right:7%}.scene-caption h2{font-size:42px}.scene-caption p{font-size:14px;max-width:29ch}.wrap{padding:0 7vw}section:not(.journey){padding:75px 0}.cards .card{grid-template-columns:25px 1fr;gap:10px}.cards .card p{grid-column:2}.cards .card h3{font-size:28px}.tri div{border-right:0;border-bottom:1px solid var(--sand);padding:25px}.tri div:last-child{border-bottom:0}.facade{height:510px}.cta{padding:65px 23px}.team{grid-template-columns:1fr}.person .ph{aspect-ratio:4/3.5}.navcta,.pill{touch-action:manipulation}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}.reveal{opacity:1;transform:none}.journey{height:auto}.stage{position:relative;min-height:800px;height:100svh}.tunnel,.stage canvas,.scene-caption{display:none!important}.hero-copy{opacity:1!important;transform:none!important}}
/* Photo-first opening and scroll narrative: visible independently of WebGL. */
.founder{position:absolute;inset:0 0 0 42%;z-index:3;transform-origin:65% 45%;will-change:transform,opacity}.founder>img{width:100%;height:100%;object-fit:cover;object-position:50% 25%}.founder:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#eee8de,transparent 40%),linear-gradient(0deg,#eee8de 0%,transparent 25%)}.founder-signature{position:absolute;right:8%;bottom:12%;z-index:1;font-family:var(--serif);font-size:26px;color:#fff;text-shadow:0 2px 14px #0009}.founder-signature small{display:block;font:11px var(--sans);letter-spacing:.14em;margin-top:8px}.hero-copy{inset:27% auto auto 7%;width:49%;text-align:left}.hero-copy h1{font-size:clamp(50px,6.5vw,100px)}.hero-copy>p:not(.label){margin-left:0;max-width:33ch}.hero-copy .label{margin-bottom:20px}.tunnel,.stage canvas{opacity:.35}.photo-story{position:absolute;inset:0;z-index:3;pointer-events:none}.story-frame{position:absolute;inset:0;margin:0;overflow:hidden;will-change:transform,opacity}.story-frame>img{width:100%;height:100%;object-fit:cover;object-position:center;will-change:transform}.story-frame:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#21160fd9,transparent 65%),linear-gradient(90deg,#21160f40,transparent 70%)}.scene-caption{text-shadow:0 2px 20px #0006;color:#fff;bottom:15%}.scene-caption h2{color:#fff}.scene-caption p{color:#f8eee1}.scene-number{color:#e8d6bd}.journey-foot{color:var(--wine)}.journey-foot>span{background:#faf7f1d9;padding:5px 9px;backdrop-filter:blur(10px)}
@media(max-width:760px){.founder{inset:0}.founder>img{object-position:54% 18%}.founder:after{background:linear-gradient(0deg,#21160fed,transparent 75%),linear-gradient(180deg,#eee8deaa,transparent 22%)}.founder-signature{display:none}.hero-copy{top:auto;bottom:16%;left:7%;width:86%;color:#fff}.hero-copy h1{font-size:clamp(46px,10.7vw,76px);color:#fff}.hero-copy .label{color:#f0d8b7}.hero-copy>p:not(.label){margin-top:18px;margin-bottom:20px;max-width:30ch}.hero-copy .pill{background:#f1ece3;color:var(--wine);border-color:#f1ece3}.navigation{background:linear-gradient(#f1ece3ed,#f1ece322)}.scene-caption{bottom:17%}.scene-caption h2{font-size:43px}.story-frame:nth-child(1)>img,.story-frame:nth-child(3)>img{object-position:52% center}.journey{height:500svh}}
@media(prefers-reduced-motion:reduce){.founder{opacity:1!important;transform:none!important}.photo-story{display:none}.stage{height:100svh;min-height:700px}}
/* A single perspective camera for every photo; no image crossfades. */
.photo-story{perspective:1100px;perspective-origin:50% 50%;transform-style:preserve-3d;overflow:hidden}.story-frame{opacity:1;transform-origin:center;backface-visibility:hidden;will-change:transform}.tunnel{perspective:1100px;opacity:.4}.stage canvas{display:none}.journey{height:720svh}.founder{z-index:4}.hero-copy{z-index:5}.scene-caption{z-index:6}.story-frame:after{background:linear-gradient(0deg,#21160fbb,transparent 55%)}
@media(max-width:760px){.journey{height:600svh}.story-frame>img{object-fit:cover}}
@media(prefers-reduced-motion:reduce){.journey{height:auto}}
/* Short film replaces the long pinned photo tunnel. */
.journey{height:100svh;min-height:720px}.stage{position:relative;height:100%;min-height:720px}.progress{display:none}.film-section{background:#29221e;color:#f1ece3;padding:90px 0!important;overflow:hidden}.film-layout{max-width:1250px;margin:auto;padding:0 7vw;display:grid;grid-template-columns:1fr minmax(300px,430px);gap:9vw;align-items:center}.film-copy .label{color:#c9ad89;font-size:10px;letter-spacing:.18em}.film-copy h2{color:#f5eee4;font-size:clamp(48px,6vw,88px);line-height:1.02;margin:25px 0}.film-copy>p:not(.label){color:#d4c7b9;max-width:33ch;font-size:17px}.film-copy .pill{margin-top:32px;background:#eee3d3;color:#541d2d;border-color:#eee3d3}.film-chapters{display:grid;gap:13px;margin-top:30px;font-size:12px;letter-spacing:.05em}.film-chapters span{padding-left:15px;border-left:1px solid #776b60;color:#a5998e;transition:color .25s,border-color .25s}.film-chapters .active{color:#fff;border-color:#dec39f}.film-wrap{position:relative}.clinic-film{display:block;width:100%;aspect-ratio:576/860;object-fit:contain;background:#211b16;border-radius:4px;box-shadow:0 25px 75px #0005}.film-label{display:block;margin-top:15px;color:#c4b5a4;font-size:9px;letter-spacing:.15em;text-align:center}.journey-foot a{background:#faf7f1e6}.founder{opacity:1!important;visibility:visible!important;transform:none!important}.hero-copy{opacity:1!important;visibility:visible!important;transform:none!important}
@media(max-width:760px){.journey,.stage{height:100svh;min-height:700px}.film-section{padding:60px 0!important}.film-layout{grid-template-columns:1fr;gap:35px;padding:0 7vw}.film-copy h2{font-size:53px}.film-copy h2 br{display:none}.film-copy h2 br:after{content:' '}.film-copy>p:not(.label){font-size:16px;max-width:35ch}.film-chapters{display:flex;flex-wrap:wrap;gap:14px;font-size:10px}.film-copy .pill{margin-top:25px}.film-wrap{max-width:440px;width:100%;margin:auto}.clinic-film{max-height:78svh}.film-label{font-size:8px}}
/* Film follows scroll in both directions. The vertical frame is preserved. */
.film-section{height:380svh;padding:0!important;overflow:visible}.film-sticky{position:sticky;top:0;height:100svh;min-height:620px;display:flex;align-items:center;overflow:hidden;background:#29221e}.film-layout{width:100%;grid-template-columns:minmax(0,1fr) minmax(280px,420px);gap:7vw;padding:28px 7vw}.film-copy h2{font-size:clamp(45px,5.4vw,78px)}.film-wrap{width:auto;max-width:100%;justify-self:center}.clinic-film{height:76svh;max-height:760px;width:auto;max-width:100%;aspect-ratio:576/860;object-fit:contain}.film-playback{display:flex;gap:15px;align-items:center;justify-content:space-between;margin:12px 0 10px}.film-status{font-size:9px;letter-spacing:.08em;color:#d8c5af}.film-mode{appearance:none;background:transparent;color:#f1ece3;border:1px solid #bca98a70;border-radius:3px;padding:8px 10px;font:11px var(--sans);cursor:pointer}.film-mode:hover{background:#ffffff12}.film-mode:focus-visible{outline:2px solid #ead7bc;outline-offset:3px}.film-track{height:2px;background:#ffffff26}.film-track i{display:block;height:100%;width:0;background:#e0c39e}.film-skip{display:inline-block;margin-top:30px;font-size:12px;text-underline-offset:5px}.film-chapters{gap:12px}.manual-playback{height:auto}.manual-playback .film-sticky{position:relative}
@media(max-width:760px){.film-section{height:340svh}.film-sticky{height:100svh;min-height:620px;align-items:flex-start}.film-layout{display:flex;flex-direction:column;gap:15px;padding:24px 6vw 16px}.film-copy{width:100%}.film-copy .label{font-size:8px;margin-bottom:8px}.film-copy h2{font-size:34px;margin:8px 0}.film-copy h2 br{display:inline}.film-copy h2 br:after{content:' '}.film-copy>p:not(.label){font-size:12px;line-height:1.45;max-width:43ch}.film-chapters{gap:7px 14px;font-size:8px;margin-top:10px}.film-chapters span{padding-left:7px}.film-skip{margin-top:10px;font-size:10px}.film-wrap{width:auto;margin:0 auto;max-width:100%}.clinic-film{height:55svh;max-height:none;width:auto;max-width:100%}.film-playback{margin:9px 0 8px;gap:10px}.film-status{font-size:7px}.film-mode{font-size:9px;padding:7px}.manual-playback{height:auto}.manual-playback .film-sticky{height:auto;min-height:0;padding-bottom:25px}}
@media(max-height:650px) and (min-width:761px){.film-sticky{min-height:0}.film-copy h2{font-size:44px}.film-copy .label{margin-bottom:5px}.film-chapters{margin-top:10px;gap:7px}.film-skip{margin-top:15px}.clinic-film{height:72svh}}
@media(prefers-reduced-motion:reduce){.film-section{height:auto}.film-sticky{height:auto;min-height:0;position:relative;padding-block:30px}}
/* Mode changes preserve page geometry and the current scroll position. */
.film-section.manual-playback{height:380svh}.film-section.manual-playback .film-sticky{position:sticky;height:100svh;min-height:620px;padding-bottom:0}.film-scroll-frames{display:none;aspect-ratio:432/646;object-fit:contain;max-width:100%;border-radius:4px;box-shadow:0 25px 75px #0005}.frame-scroll:not(.manual-playback) .clinic-film{display:none}.frame-scroll:not(.manual-playback) .film-scroll-frames{display:block;height:76svh;max-height:760px;width:auto}.frame-scroll.manual-playback .film-scroll-frames{display:none}
@media(max-width:760px){.film-section.manual-playback{height:340svh}.frame-scroll:not(.manual-playback) .film-scroll-frames{height:55svh;max-height:none;width:auto}.film-section.manual-playback .film-sticky{padding-bottom:0;min-height:620px}}
@media(prefers-reduced-motion:reduce){.film-section,.film-section.manual-playback{height:auto}.film-section .film-sticky,.film-section.manual-playback .film-sticky{height:auto;min-height:0;position:relative;padding-block:30px}}
