/* Shared editorial language for secondary pages only. */
.refined-inner{background:#efeded}.refined-inner main{background:#efeded;overflow:clip}.refined-inner main :is(h1,h2,h3){letter-spacing:-.03em}.refined-inner main :is(h1,h2) em{color:#a73568}.refined-inner :focus-visible{outline:2px solid #a73568;outline-offset:5px}.refined-inner main ::selection{background:#a735682c}
.inner-opening{padding:165px 0 65px}.inner-opening .crumb{margin:0 0 42px;font-size:11px;color:#6b6b6f}.inner-opening h1{font:400 clamp(64px,7.5vw,130px)/1 var(--serif);letter-spacing:-.03em;max-width:1300px;text-wrap:balance}.inner-opening-bottom{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-top:35px}.inner-opening-bottom>p{font-size:14px;line-height:1.7;max-width:480px}.inner-opening-bottom>.textlink{flex-shrink:0;font-size:12px}
.treatment-jump{display:flex;gap:35px;border-block:1px solid #43434625;padding:20px 0}.treatment-jump a{display:flex;gap:25px;font-size:12px;align-items:center}.treatment-jump a:hover{color:#a73568}
.treatment-editorial{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:75px 0;border-bottom:1px solid #43434625;scroll-margin-top:30px;align-items:center}.treatment-editorial:nth-child(2)>figure{order:2}.treatment-editorial>figure{overflow:hidden}.treatment-editorial img{width:100%;aspect-ratio:4/4.4;object-fit:cover;filter:saturate(.12) contrast(.96)}.treatment-editorial:nth-child(3) img{object-position:center 35%}.treatment-editorial-copy h2{font-size:clamp(48px,5vw,88px);line-height:1.02;margin-bottom:22px;text-wrap:balance}.treatment-intention{font:italic 27px/1.25 var(--serif);color:#a73568;margin-bottom:25px}.treatment-editorial-copy>p:not(.treatment-intention){font-size:14px;line-height:1.75;max-width:480px}.treatment-editorial-copy .button{margin-top:30px;font-size:12px}
.inner-care,.inner-team-story{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding:85px 0}.inner-care h2,.inner-team-story h2{font-size:clamp(48px,5.2vw,90px);line-height:1.02}.inner-care article{border-top:1px solid #43434625;padding:25px 0}.inner-care article h3{font-size:32px;margin-bottom:15px}.inner-care article p,.inner-team-story p{font-size:14px;line-height:1.75}.inner-care article .textlink{margin-top:15px;font-size:12px}.inner-longform{padding:25px 0 65px;border-top:1px solid #43434625;font-size:13px}.inner-longform>summary{padding:12px 0;cursor:pointer}.inner-treatment-links{display:flex;flex-direction:column}.inner-treatment-links a{display:flex;justify-content:space-between;align-items:center;gap:20px;font:400 37px/1.1 var(--serif);padding:26px 0;border-top:1px solid #43434625}.inner-treatment-links a>span:last-child{font:18px var(--sans)}.inner-treatment-links a:hover{color:#a73568}
.inner-team-photo img{aspect-ratio:1.9;object-fit:cover;object-position:center 40%;filter:saturate(.12) contrast(.96)}.inner-team-photo figcaption{font-size:11px}.inner-team-story .inner-lead{font:400 30px/1.3 var(--serif);color:#434346;margin-bottom:28px}.inner-team-story .button{margin-top:28px;font-size:12px}
.clinic-editorial-gallery{display:grid;grid-template-columns:1.1fr 1fr;gap:75px 8%;padding:10px 0 75px;align-items:center}.clinic-editorial-gallery figure{margin:0;overflow:hidden}.clinic-editorial-gallery img{width:100%;filter:saturate(.12) contrast(.96);object-fit:cover}.clinic-editorial-gallery figcaption{font-size:11px}.gallery-arrival{grid-column:1/-1}.gallery-arrival img{aspect-ratio:1.85;object-position:50% 50%}.gallery-statement h2{font-size:clamp(55px,6vw,100px)}.gallery-statement p{font-size:13px;margin-top:28px;line-height:1.7}.gallery-statement .textlink{margin-top:25px;font-size:12px}.gallery-room img{aspect-ratio:4/5;object-position:60% 50%}.gallery-diagnostic img{aspect-ratio:4/4.5}.gallery-next{padding-left:5vw}.gallery-next p{font:400 40px/1.1 var(--serif);color:#434346}.gallery-next .textlink{font-size:12px;margin-top:30px}
.refined-inner .faq{padding-block:75px}.refined-inner .contact-band{padding-top:65px}.refined-inner .page-intro{background:#efeded;min-height:0}.refined-inner .page-hero{padding:160px 0 60px}.refined-inner .page-hero h1{font-size:clamp(54px,6vw,96px)}.refined-inner .legal-content{max-width:850px;font-size:14px;line-height:1.85}.refined-inner .legal-content h2{margin-top:35px;line-height:1.25}.refined-inner .legal-content a{overflow-wrap:anywhere}
@media(min-width:761px) and (max-width:1024px){.inner-opening h1{font-size:8vw}.treatment-editorial{gap:5%}.treatment-jump{gap:25px}.treatment-jump a{gap:15px}.inner-care,.inner-team-story{gap:6%}}
@media(max-width:760px){.inner-opening{padding:150px 0 45px}.inner-opening .crumb{margin-bottom:30px}.inner-opening h1{font-size:clamp(48px,12.5vw,88px)}.inner-opening-bottom{display:block;margin-top:28px}.inner-opening-bottom>p{font-size:13px}.inner-opening-bottom>.textlink{margin-top:20px}.treatment-jump{flex-direction:column;gap:0;padding:8px 0}.treatment-jump a{justify-content:space-between;padding:12px 0;min-height:44px}.treatment-editorial{grid-template-columns:1fr;gap:30px;padding:45px 0}.treatment-editorial:nth-child(2)>figure{order:0}.treatment-editorial img{aspect-ratio:4/4.2}.treatment-editorial-copy h2{font-size:12vw}.treatment-intention{font-size:25px}.inner-care,.inner-team-story{grid-template-columns:1fr;gap:35px;padding:55px 0}.inner-care h2,.inner-team-story h2{font-size:12vw}.inner-team-photo img{aspect-ratio:1.15;object-position:center 40%}.inner-team-story .inner-lead{font-size:28px}.inner-treatment-links a{font-size:30px}.clinic-editorial-gallery{grid-template-columns:1fr;gap:40px;padding-bottom:50px}.gallery-arrival{grid-column:auto}.gallery-arrival img{aspect-ratio:4/3}.gallery-statement h2{font-size:13vw}.gallery-room img{aspect-ratio:4/4.5}.gallery-diagnostic img{aspect-ratio:4/3}.gallery-next{padding:0}.gallery-next p{font-size:35px}.refined-inner .faq{padding-block:55px}.refined-inner .page-hero{padding:145px 0 40px}.refined-inner .legal-content{font-size:13px}.refined-inner .page-hero h1{font-size:12vw}}
@media(prefers-reduced-motion:no-preference){.inner-motion .inner-opening h1{animation:inner-arrival 650ms cubic-bezier(.22,1,.36,1) both}.inner-reveal{transition:opacity 600ms cubic-bezier(.22,1,.36,1),transform 600ms cubic-bezier(.22,1,.36,1)}.inner-reveal.is-waiting{opacity:0;transform:translateY(24px)}@keyframes inner-arrival{from{opacity:.3;transform:translateY(18px)}to{opacity:1;transform:none}}}
body.motion-paused .inner-reveal,body.motion-paused .inner-opening h1{animation:none;transition:none;opacity:1;transform:none}

/* Smile page: two editorial lines reveal in sequence, then separate with native scroll. */
.smile-opening{padding-bottom:55px}.smile-opening h1{max-width:none;font-size:clamp(78px,10.5vw,178px);line-height:.97}
.smile-line{display:block;overflow:clip}.smile-line-second{text-align:right;margin-top:8px}.smile-line em{display:inline-block}
#ortodoncia-invisible>figure img{object-position:100% 55%}
#estetica-dental>figure img{object-position:50% 50%}
@media(prefers-reduced-motion:no-preference){.inner-motion .smile-opening h1{animation:none}.inner-motion .smile-line-first{animation:smile-line-arrive 900ms cubic-bezier(.22,1,.36,1) both}.inner-motion .smile-line-second{animation:smile-line-arrive 950ms 130ms cubic-bezier(.22,1,.36,1) both}.inner-motion .smile-opening .inner-opening-bottom{animation:inner-arrival 650ms 280ms cubic-bezier(.22,1,.36,1) both}.smile-scroll-ready .smile-line-first{translate:calc(var(--smile-scroll,0)*-45px) 0}.smile-scroll-ready .smile-line-second{translate:calc(var(--smile-scroll,0)*45px) 0}.inner-reveal .treatment-editorial-copy h2{transition:transform 850ms cubic-bezier(.22,1,.36,1),opacity 700ms ease;transition-delay:100ms}.inner-reveal.is-waiting .treatment-editorial-copy h2{transform:translateY(25px);opacity:0}@keyframes smile-line-arrive{from{opacity:.15;transform:translateY(32px);clip-path:inset(0 0 75% 0)}to{opacity:1;transform:translateY(0);clip-path:inset(0)}}}
@media(max-width:760px){.smile-opening h1{font-size:17vw}.smile-line-second{text-align:left;margin-top:12px}.smile-opening{padding-bottom:40px}#ortodoncia-invisible>figure img{aspect-ratio:4/4;object-position:100% 55%}}
body.motion-paused .smile-line,body.motion-paused .smile-opening .inner-opening-bottom{animation:none;translate:none;transform:none;opacity:1;clip-path:none}

/* Fine framing requested by the user: keep the digital mouth and smile visible. */
#ortodoncia-invisible>figure img{object-position:75% 55%}
#estetica-dental>figure img{object-position:54% 50%}


/* Photographic opening for Tu sonrisa: native scrolling, original logo on pearl. */
.smile-cinema{position:relative;background:#17171f;--smile-progress:0}
.smile-cinema-stage{position:relative;height:100svh;min-height:660px;overflow:hidden;isolation:isolate;color:#efeded}
.smile-cinema-photo{position:absolute;inset:0;z-index:-2;overflow:hidden}
.smile-cinema-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 58%;filter:grayscale(1) contrast(.95);transform:scale(calc(1.08 - var(--smile-progress)*.08))}
.smile-cinema-stage:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#efeded 0px,#efededf0 85px,#efeded00 200px),linear-gradient(180deg,#17171f05 25%,#17171f55 55%,#17171fec 100%)}
.smile-cinema-note{position:absolute;left:4vw;right:4vw;bottom:32%;display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:12px;color:#efeded;opacity:calc(1 - var(--smile-progress)*.8)}
.smile-cinema-note>a{display:flex;align-items:center;gap:20px;padding:10px 0;border-bottom:1px solid #efeded88;min-height:44px}
.refined-inner .smile-cinema h1{position:absolute;bottom:7%;left:4vw;right:4vw;font:400 clamp(75px,11vw,200px)/1 var(--serif);letter-spacing:-.03em;display:flex;justify-content:space-between;gap:25px;color:#efeded;transform:translateY(calc(var(--smile-progress)*-45px));opacity:calc(1 - var(--smile-progress)*.55)}
.refined-inner .smile-cinema h1 em{color:#efeded}.smile-cinema-first{translate:calc(var(--smile-progress)*-8vw) 0}.smile-cinema-second{translate:calc(var(--smile-progress)*8vw) 0}
.smile-cinema-intro{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:40px 0;scroll-margin-top:20px}.smile-cinema-intro p{font-size:14px;line-height:1.7;max-width:520px}.smile-cinema-intro .textlink{font-size:12px;flex-shrink:0}
@media(min-width:761px) and (min-height:600px){.smile-cinema.is-cinema-ready{height:155svh}.smile-cinema.is-cinema-ready .smile-cinema-stage{position:sticky;top:0}}
@media(max-width:760px){.smile-cinema-stage{height:88svh;min-height:620px}.smile-cinema-photo img{object-position:58% 55%}.smile-cinema-stage:before{background:linear-gradient(180deg,#efeded 0,#efededf0 105px,#efeded00 220px),linear-gradient(180deg,transparent 30%,#17171f55 55%,#17171fec 100%)}.refined-inner .smile-cinema h1{display:block;font-size:18vw;left:24px;right:24px;bottom:8%;line-height:1.03}.smile-cinema h1 span{display:block;translate:none}.smile-cinema-second{margin-top:8px}.smile-cinema-note{left:24px;right:24px;bottom:37%;display:block;font-size:11px}.smile-cinema-note>a{width:max-content;margin-top:14px}.smile-cinema-intro{display:block;padding:30px 0}.smile-cinema-intro .textlink{margin-top:20px}}
@media(prefers-reduced-motion:no-preference){.smile-cinema h1{animation:cinema-title-in 900ms cubic-bezier(.22,1,.36,1) both}@keyframes cinema-title-in{from{opacity:0;clip-path:inset(100% 0 0)}to{opacity:1;clip-path:inset(0)}}}
@media(prefers-reduced-motion:reduce){.smile-cinema-photo img{transform:none}}
body.motion-paused .smile-cinema h1{animation:none;transform:none;opacity:1;clip-path:none}

/* The photographic scene dissolves into pearl before the implant section. */
.smile-cinema{background:#efeded}.smile-cinema-stage:after{content:'';position:absolute;inset:0;z-index:0;background:#efeded;opacity:var(--smile-progress);pointer-events:none}
.refined-inner .smile-cinema h1{z-index:1;opacity:calc(1 - var(--smile-progress))}
.smile-cinema-note{z-index:1;opacity:calc(1 - var(--smile-progress))}
.smile-cinema-intro{display:flex;flex-direction:column;text-align:center;align-items:center;gap:25px;padding:55px 0 45px}
.smile-cinema-intro h2{font:400 clamp(40px,4.6vw,80px)/1.04 var(--serif);letter-spacing:-.03em;max-width:950px}
.smile-cinema-intro p{max-width:560px;font-size:13px}.smile-cinema-intro .textlink{margin:0}
@media(max-width:760px){.smile-cinema-intro{padding:40px 0 30px;gap:22px}.smile-cinema-intro h2{font-size:12vw}}
@media(prefers-reduced-motion:no-preference){.smile-cinema-intro.inner-reveal{transition:opacity 750ms cubic-bezier(.22,1,.36,1),transform 750ms cubic-bezier(.22,1,.36,1)}}

/* The welcoming portrait keeps the face and Bru card in the frame. */
.smile-cinema-photo img{object-position:45% 20%}
#ortodoncia-invisible>figure{background:#efeded}
#ortodoncia-invisible>figure img{aspect-ratio:4/4.4;object-fit:cover;object-position:75% 55%;filter:grayscale(1) contrast(.96)}
@media(max-width:760px){.smile-cinema-photo img{object-position:45% 50%}#ortodoncia-invisible>figure img{aspect-ratio:4/4.4;object-position:75% 55%}}

/* Tighter service rhythm; enlarge the product within the shared photo frame. */
.treatment-editorial{padding-block:50px}
#ortodoncia-invisible>figure img{object-fit:cover}
@media(max-width:760px){.treatment-editorial{padding-block:35px;gap:25px}}

/* Each interior starts with its own real photograph, then dissolves into its story. */
.team-cinema .smile-cinema-photo img{object-position:50% 0%;transform:scale(calc(1.025 - var(--smile-progress)*.025))}
.clinic-cinema .smile-cinema-photo img{object-position:50% 55%}
.refined-inner :is(.team-cinema,.clinic-cinema) h1{font-size:clamp(70px,9vw,165px)}
#nuestro-equipo+.inner-team-story{padding-top:35px}
#nuestros-espacios+.clinic-editorial-gallery{padding-top:30px}
.clinic-editorial-gallery figure.inner-reveal{transition:opacity 650ms cubic-bezier(.22,1,.36,1),clip-path 850ms cubic-bezier(.22,1,.36,1);clip-path:inset(0)}
.clinic-editorial-gallery figure.is-waiting{clip-path:inset(12% 0 0);transform:none}
@media(max-width:760px){
 .refined-inner :is(.team-cinema,.clinic-cinema) h1{font-size:15vw}
 .team-cinema .smile-cinema-photo{inset:105px 0 auto}
 .team-cinema .smile-cinema-photo img{height:auto;aspect-ratio:1.25;object-fit:contain;transform:none}
 .team-cinema .smile-cinema-stage{background:#efeded}
 .team-cinema .smile-cinema-note{bottom:30%}
 .clinic-cinema .smile-cinema-photo img{object-position:55% 50%}
 .refined-inner .clinic-editorial-gallery{gap:30px}
}
@media(prefers-reduced-motion:reduce){.clinic-editorial-gallery figure.inner-reveal{transition:none;clip-path:none}.team-cinema .smile-cinema-photo img{transform:none}}
body.motion-paused .clinic-editorial-gallery figure.inner-reveal{clip-path:none}
@media(min-width:761px) and (max-width:1024px){.team-cinema .smile-cinema-photo{inset:105px 0 auto}.team-cinema .smile-cinema-photo img{height:auto;aspect-ratio:1.25;object-fit:contain;transform:none}.team-cinema .smile-cinema-stage{background:#efeded}}

/* Real spaces retain their native proportions and their complete furnishings. */
.clinic-spaces{padding-top:35px;padding-bottom:60px}
.clinic-space{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center;padding-block:35px;border-bottom:1px solid #43434625}
.clinic-space:last-child{border:0}.clinic-space figure{margin:0;overflow:hidden}
.clinic-space img{width:100%;height:auto;display:block;filter:grayscale(1) contrast(.98)}
.clinic-space figcaption{font-size:11px;color:#68686c;margin-top:12px}
.clinic-space h2{font:400 clamp(42px,4.8vw,78px)/1.06 var(--serif);letter-spacing:-.03em}
.clinic-space p{font-size:14px;line-height:1.75;margin-top:24px}.clinic-space .textlink{font-size:12px;margin-top:24px}
.clinic-space-reverse figure{grid-column:2;grid-row:1}.clinic-space-reverse>div{grid-column:1;grid-row:1}
.clinic-space figure.inner-reveal{clip-path:inset(0);transition:opacity 600ms cubic-bezier(.22,1,.36,1),clip-path 850ms cubic-bezier(.22,1,.36,1)}
.clinic-space figure.inner-reveal.is-waiting{clip-path:inset(10% 0 0);transform:none}

@media(max-width:760px){.clinic-spaces{padding-top:10px;padding-bottom:35px}.clinic-space{grid-template-columns:1fr;gap:25px;padding-block:28px}.clinic-space-reverse figure,.clinic-space-reverse>div{grid-column:auto;grid-row:auto}.clinic-space h2{font-size:12vw}}
@media(prefers-reduced-motion:reduce){.clinic-space figure.inner-reveal{clip-path:none;transition:none}}
body.motion-paused .clinic-space figure.inner-reveal{clip-path:none}

/* Mobile photo frames override intrinsic HTML heights, without changing desktop. */
@media(min-width:761px) and (max-width:1024px){
 .treatment-editorial>figure img,#ortodoncia-invisible>figure img{height:auto}
}
@media(max-width:760px){
 .treatment-editorial>figure img,#ortodoncia-invisible>figure img{height:auto;aspect-ratio:4/3;object-fit:cover}
 #implantes>figure img{object-position:40% 50%}
 #ortodoncia-invisible>figure img{object-position:75% 55%}
 #estetica-dental>figure img{object-position:54% 62%}
 .clinic-space img{max-height:350px;object-fit:contain}
 .inner-team-photo img,.clinic-editorial-gallery img{height:auto}
 .smile-cinema:not(.team-cinema) .smile-cinema-stage{height:78svh;min-height:520px;max-height:680px}
}

/* Team-only sequence: ring, filled circle, orbit and the appointment invitation. */
.care-ending-bridge{height:clamp(100px,18svh,200px);background:linear-gradient(180deg,#efeded 0%,#e6e6e9 15%,#a7a8b2 42%,#505260 68%,#171923 100%)}
.care-ending{--care-progress:0;--care-scale:1.08;--care-fill:0;--care-orbit-opacity:0;--care-one:1;--care-two:0;--care-three:0;--care-final:0;--care-light:0;--care-sides:1;background:#171923}
.care-ending-stage{position:relative;isolation:isolate;overflow:hidden}
.care-ending-visual{height:85svh;min-height:520px;position:relative;overflow:hidden}
.care-ending-ring{position:absolute;left:50%;top:50%;width:86vmin;height:86vmin;border:calc(8vmin * (1 - var(--care-fill))) solid #efeded;border-radius:50%;background:rgb(215 215 217 / var(--care-fill));filter:blur(6px);transform:translate(-50%,-50%) scale(var(--care-scale));pointer-events:none}
.care-ending-satellite{position:absolute;left:50%;top:50%;width:24vmin;height:24vmin;border-radius:50%;background:#efeded;filter:blur(2px);opacity:var(--care-orbit-opacity);transform:translate(-50%,-50%) translate(var(--care-orbit-x,48vmin),var(--care-orbit-y,0vmin)) scale(var(--care-orbit-scale,1));pointer-events:none}
.care-ending-side{position:absolute;top:50%;z-index:1;font-size:12px;line-height:1.3;color:#efeded;opacity:var(--care-sides);transform:translateY(-50%)}
.care-ending-left{left:3vw}.care-ending-right{right:3vw;text-align:right}
.care-ending-messages{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}
.refined-inner .care-ending .care-message{grid-area:1/1;text-align:center;font:400 clamp(28px,3vw,48px)/1.02 var(--serif);letter-spacing:-.03em;margin:0;width:36vmin;min-width:250px;max-width:440px}
.care-message-one{color:#efeded!important;opacity:var(--care-one);transform:translateY(var(--care-one-y,0px))}
.care-message-two{color:#25262d;opacity:var(--care-two);transform:translateY(var(--care-two-y,12px))}
.care-message-three{color:#25262d;opacity:var(--care-three);transform:translateY(var(--care-three-y,12px))}
.care-ending-final{position:relative;text-align:center;padding:65px 24px;background:#efeded;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:25px;color:#434346;min-height:430px}
.care-ending-final>p{font-size:12px;line-height:1.6}.refined-inner .care-ending-final h2{font:400 clamp(60px,8.5vw,145px)/.97 var(--serif);letter-spacing:-.03em;margin:0;color:#434346}.refined-inner .care-ending-final h2 em{color:#434346}.care-ending-final h2 span{color:#a73568}
.care-ending-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:16px}.care-ending-actions .button{font-size:12px}
.care-ending.is-care-ready{height:280svh}
.care-ending.is-care-ready .care-ending-stage{position:sticky;top:0;height:100svh}
.care-ending.is-care-ready .care-ending-visual{height:100svh}
.care-ending.is-care-ready .care-ending-stage:after{content:'';position:absolute;inset:0;background:#efeded;opacity:var(--care-light);pointer-events:none;z-index:2}
.care-ending.is-care-ready .care-ending-final{position:absolute;inset:0;min-height:0;z-index:3;background:transparent;opacity:var(--care-final);transform:translateY(var(--care-final-y,25px))}
@media(max-width:1024px){.care-ending-side{top:auto;bottom:15%;transform:none;font-size:11px}.care-ending-left{left:7vw}.care-ending-right{right:7vw}}
@media(max-width:760px){.care-ending-bridge{height:100px}.care-ending-visual{height:65svh;min-height:420px}.care-ending-ring{width:112vw;height:112vw;border-width:11vw;filter:blur(7px)}.refined-inner .care-ending .care-message{font-size:9vw;width:65vw;min-width:0}.care-ending-side{font-size:10px;bottom:13%}.care-ending-final{padding:50px 24px;min-height:380px}.refined-inner .care-ending-final h2{font-size:17vw}.care-ending-actions{flex-direction:column;gap:12px}}
@media(prefers-reduced-motion:reduce){.care-ending-ring,.care-ending-satellite{filter:none}}
