/* Desktop component system. Mobile continues to use the approved responsive layout. */
:root{--desktop-width:1440px;--desktop-gutter:clamp(32px,4.5vw,72px);--desktop-text:#d2cbc0;--desktop-gold:#dcc398;--desktop-line:#dcc39826}
.bio-chapter{border-top:1px solid var(--desktop-line)}
.bio-chapter:last-child{border-bottom:1px solid var(--desktop-line)}
.bio-chapter summary{display:flex;align-items:center;gap:16px;min-height:76px;padding:18px 0;list-style:none;cursor:pointer;color:#eee5d6;font-size:18px;font-weight:500}
.bio-chapter summary::-webkit-details-marker{display:none}
.bio-chapter-index{font-size:12px;color:var(--desktop-gold);font-weight:400}
.bio-chapter-toggle{margin-left:auto;width:20px;height:20px;position:relative;flex:none}
.bio-chapter-toggle::before,.bio-chapter-toggle::after{content:'';position:absolute;top:9px;left:3px;width:14px;height:1px;background:var(--desktop-gold)}
.bio-chapter-toggle::after{transform:rotate(90deg)}
.bio-chapter[open] .bio-chapter-toggle::after{display:none}
.bio-chapter-body{padding:0 0 24px 32px}
.form-contact-route{display:flex;justify-content:space-between;min-height:44px;margin-top:14px;font-size:14px}
@media(min-width:851px){
 .shell{width:100%;max-width:var(--desktop-width);padding-left:var(--desktop-gutter);padding-right:var(--desktop-gutter)}
 .section-pad{padding-top:80px;padding-bottom:80px}
 .header{min-height:100px;padding-left:var(--desktop-gutter);padding-right:var(--desktop-gutter);gap:24px;flex-wrap:nowrap}
 .header .brand{flex:none}.header .nav{margin-left:auto;gap:4px;white-space:nowrap;font-size:14px}.header .nav a{padding:12px 16px;min-height:44px;display:flex;align-items:center}
 .header-actions{gap:12px;margin-left:24px;flex:none}
 main h1{font-size:clamp(44px,4.3vw,64px);line-height:1.1;letter-spacing:-.035em}
 main h2{font-size:clamp(34px,3.1vw,46px);line-height:1.17;letter-spacing:-.03em}
 main p,.page-lead,.doctor-description,.academic-bio-copy p,.intro-copy>p:not(.large-copy){font-size:17px;line-height:1.8;color:var(--desktop-text)}
 main .eyebrow{font-size:11px;line-height:1.6;letter-spacing:.1em;color:#d1bb94}
 main em,.treatment-panel h2 em{color:var(--desktop-gold)}
 .lead-hero{padding:40px 0 48px;border-bottom:1px solid var(--desktop-line)}
 .lead-hero-grid{width:100%;max-width:var(--desktop-width);padding:0 var(--desktop-gutter);margin:auto;grid-template-columns:minmax(0,1.55fr) minmax(340px,1fr);gap:40px;align-items:center}
 .lead-hero-story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:28px;min-height:540px;overflow:visible;background:transparent;align-items:center}
 .lead-hero-story::after{display:none}
 .lead-hero-intro{grid-column:1;grid-row:1;padding:0;pointer-events:auto;min-width:0}
 .lead-hero-intro>.eyebrow{position:static;width:auto;margin:0 0 20px;font-size:10px}
 .lead-hero-intro>.hero-brand-title{position:relative;top:auto;left:auto;width:auto;margin:0 0 34px;font-size:clamp(30px,2.7vw,40px);line-height:1.15;letter-spacing:-.035em}
 .lead-hero-intro>.hero-description{font-size:16px;line-height:1.8;margin:0;max-width:32ch;color:var(--desktop-text);text-shadow:none}
 .hero-video-preview{position:relative;inset:auto;grid-column:2;grid-row:1;z-index:auto;width:100%;max-width:304px;justify-self:center;aspect-ratio:9/16;max-height:540px;border-radius:18px;overflow:hidden;box-shadow:0 16px 48px #0005;border:1px solid var(--desktop-line)}
 .hero-video-preview>video{width:100%;height:100%;object-fit:contain;object-position:center;background:#000}
 .hero-scroll{display:none}
 .lead-hero-grid>.consultation-form{margin:0;padding:28px;border-radius:18px;background:#171614;border-color:var(--desktop-line);box-shadow:0 16px 48px #0003}
 .consultation-form h2{font-size:28px;line-height:1.2;margin-bottom:12px}
 .consultation-form .form-kicker{font-size:11px;margin-bottom:20px}
 .consultation-form .form-step-description{font-size:15px;line-height:1.65;margin-bottom:22px}
 .dental-question>span,.form-fields label>span{font-size:15px;color:#e0d8ca;line-height:1.5}
 .dental-question select,.form-fields input,.form-fields select{height:52px;font-size:16px;padding:10px 14px;border-radius:9px;background:#1e1c18;border-color:#dcc39845}
 .dental-question{margin-bottom:20px}.form-next{min-height:52px;font-size:15px}
 .consultation-form .form-pending-note{font-size:13px;line-height:1.65}
 .form-contact-route{font-size:14px;margin-top:12px;padding:6px 0;border-bottom:0;color:var(--desktop-gold)}
 .landing-case-strip{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:64px;padding-top:64px;padding-bottom:64px;align-items:center}
 .landing-case-heading h2,.landing-doctor-copy h2{font-size:clamp(34px,3.1vw,46px)}
 .landing-case-heading .section-note{font-size:16px;max-width:34ch;line-height:1.8;margin-top:20px}
 .landing-case-strip .case-hero-stage{padding:18px;border-radius:18px}
 .landing-case-strip .case-image-pair img{height:clamp(235px,21vw,290px);object-fit:contain}
 .case-hero-copy{padding:20px 0 16px;min-height:0;align-items:center}.case-hero-copy h2{font-size:26px;line-height:1.25}
 .case-hero-copy .text-link{font-size:14px;min-height:44px}.case-hero-copy .eyebrow{font-size:10px}
 .case-hero-controls{padding-top:12px;gap:8px}.case-hero-controls [data-case-count]{font-size:12px}.case-hero-progress{height:1px}
 .introduction{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:80px;align-items:center;padding-top:64px;padding-bottom:64px}
 .introduction .intro-copy{padding-top:24px}.landing-doctor-portrait{width:100%;max-width:410px;justify-self:end}
 .doctor-intro-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px}.doctor-intro-actions .text-link{margin:0}.doctor-bio-intro>p{max-width:52ch}
 .focus-band{padding-top:20px;padding-bottom:20px}.focus-band .text-link{font-size:16px}
 .doctor-page{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:80px;padding-top:64px;padding-bottom:64px;align-items:center}
 .doctor-copy .doctor-page-title{font-size:clamp(40px,4.3vw,62px);line-height:1.13}.doctor-description{max-width:52ch}
 .doctor-page>.doctor-portrait{max-width:430px;width:100%;justify-self:end}
 .academic-bio{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:64px;padding-top:64px;padding-bottom:64px}
 .academic-bio h2{font-size:34px;line-height:1.23;overflow-wrap:normal}
 .academic-bio-heading{position:sticky;top:132px;align-self:start}.academic-bio-copy p{font-size:16px;line-height:1.85;max-width:65ch;margin-bottom:20px}
 .academic-bio-copy p:last-child{margin-bottom:0}.bio-chapter summary:focus-visible{outline:2px solid var(--desktop-gold);outline-offset:4px}
 .credentials .section-heading{gap:64px;align-items:end}.credentials .section-heading h2{font-size:44px}.credentials .section-note{font-size:15px;max-width:40ch}
 .brand-section{padding-top:64px;padding-bottom:64px;gap:64px}.brand-section>img{max-width:360px;justify-self:center}
 .page-intro{padding-top:64px;padding-bottom:64px}.page-intro h1,.all-on-x-intro h1{font-size:clamp(44px,4.3vw,64px)}
 .page-intro .page-lead{font-size:17px;max-width:62ch;line-height:1.8}.treatment-shell{max-width:var(--desktop-width);padding-top:48px}
 .treatment-panel{padding-top:40px;padding-bottom:40px}.treatment-panel h2{font-size:42px;line-height:1.18}.treatment-panel .panel-lead{font-size:22px}.treatment-panel p:not(.panel-lead){font-size:17px}
 .planning{gap:64px}.planning h2{font-size:44px}.planning-steps p{font-size:16px}
 body[data-page=casos] .cases>h1{font-size:clamp(42px,4.1vw,60px);margin-bottom:32px}
 .case-grid{gap:32px;margin-top:32px}.case-grid>article{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);padding:24px;gap:32px;border:1px solid var(--desktop-line);border-radius:18px;background:#171614;align-items:start}
 .case-grid>article>.case-image-pair{grid-row:1/3;align-self:start;background:transparent;gap:8px}
 .case-grid .case-image-pair img{height:clamp(285px,25vw,370px);object-fit:contain;background:#111110}
 .case-grid>article>h3{font-size:28px;line-height:1.25;margin:0}.case-grid>article>.case-context{padding-top:16px;border-top:1px solid var(--desktop-line)}
 .case-context dt{color:var(--desktop-gold);font-size:11px;margin-top:14px}.case-context dd{font-size:16px;line-height:1.7;color:var(--desktop-text)}
 .consultation{padding-top:64px;padding-bottom:64px;gap:64px}.consultation h2{font-size:46px}.consultation-aside>p{font-size:17px;max-width:42ch}
 .contact-page{gap:64px;padding-top:64px;padding-bottom:64px}.contact-copy h1{font-size:clamp(44px,4.3vw,64px)}.contact-copy .page-lead{font-size:17px;max-width:45ch}.contact-note{font-size:14px!important;max-width:48ch}
 .contact-card{padding:32px}.contact-cities{font-size:44px;line-height:1.15}.contact-role{font-size:12px}.person-contact a{font-size:16px}
 .consultation-steps{gap:24px}.consultation-steps h2{font-size:25px}.consultation-steps p{font-size:16px}.contact-faq h2{font-size:44px}.faq-list summary{font-size:17px}.faq-list p{font-size:16px}
 .footer{padding-top:32px;padding-bottom:24px}.footer-main{gap:64px;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.footer .footer-email{grid-column:2;grid-row:2;font-size:14px}.footer .footer-contacts{column-gap:36px;row-gap:0}.footer .footer-bottom{margin-top:24px}
 .floating-contact{display:none}
}
@media(min-width:851px) and (max-width:1199px){
 .header .nav{display:none}.header .menu-toggle{display:flex}.header-actions{margin-left:auto}
 .header .brand .brand-lettering{width:252px;height:73px}.header .brand .brand-lettering img{width:284px;height:284px;left:-16px;top:-191px}
 .lead-hero-grid{grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);gap:28px}
 .lead-hero-story{grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:20px;min-height:480px}.lead-hero-intro{grid-row:1}.lead-hero-intro>.hero-brand-title{font-size:30px;margin-bottom:24px}
 .lead-hero-intro>.hero-description{max-width:45ch;font-size:16px}
 .hero-video-preview{grid-column:2;grid-row:1;width:100%;max-height:none;justify-self:center;aspect-ratio:9/16}
 .lead-hero-intro>.eyebrow{margin-bottom:12px}.lead-hero-grid>.consultation-form{padding:24px}
 .introduction,.doctor-page{gap:40px}.academic-bio{gap:40px;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)}.academic-bio h2{font-size:28px}
 .doctor-copy .doctor-page-title{font-size:clamp(36px,4.2vw,48px)}.landing-case-strip{gap:40px}.case-grid>article{gap:24px;padding:20px}.case-grid .case-image-pair img{height:285px}
 .contact-page{gap:40px}.contact-card{padding:24px}
}
@media(max-width:850px){.bio-chapter summary{font-size:16px;min-height:64px}.bio-chapter-body{padding-left:0}.academic-bio-copy .bio-chapter-body p{font-size:15px}.form-contact-route{font-size:13px}}

@media(prefers-reduced-motion:reduce){.hero-video-preview{background:#000 url("assets/video-2026-10/guillermo-case-poster.jpg") center/contain no-repeat}.hero-video-preview>video{opacity:0}}

/* Each complete case preview is a native link; carousel controls remain separate. */
.case-card-link{display:block;color:inherit;text-decoration:none;border-radius:10px;cursor:pointer}
.case-card-link:focus-visible{outline:2px solid #dcc398;outline-offset:5px}
.case-card-link:hover .case-card-action{color:#f0ddba;border-bottom-color:#dcc398}
.case-card-action{display:inline-flex;align-items:center;flex:none}
.case-hero-copy .case-card-action{font-size:14px;margin:0;min-height:44px}
@media(max-width:1000px){.case-hero-copy .case-card-action{margin-top:8px}}
@media(max-width:600px){.case-hero-copy .case-card-action{font-size:12px;margin-top:10px}}

/* Desktop scroll titles materialize word by word, without changing their text. */
@media(min-width:851px){
 .desktop-reveal-word{display:inline-block;transform-origin:50% 100%}
 main h2:has(.desktop-reveal-word),main h3:has(.desktop-reveal-word){perspective:800px}
}
@media(prefers-reduced-motion:reduce){.desktop-reveal-word{opacity:1!important;transform:none!important;filter:none!important;clip-path:none!important}}
@media print{.desktop-reveal-word{opacity:1!important;transform:none!important;filter:none!important;clip-path:none!important}}

/* The full academic name has one consistent color on every screen. */
#academic-bio-title{color:#eee5d6}
