:root{
  --forest:#183B32;--forest-deep:#102D27;--olive:#6D7158;--olive-deep:#555B43;
  --paper:#F8F7F2;--mist:#E8EDE6;--line:#D8DED3;--text:#26382F;--muted:#596C61;
  --serif:Georgia,'Times New Roman',serif;--sans:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--text);font:400 16px/1.65 var(--sans)}
img{display:block;max-width:100%}button{font:inherit}a{color:inherit}
::selection{background:#C8D4C2;color:var(--forest-deep)}
.skip{position:absolute;z-index:100;left:1rem;top:-5rem;background:white;padding:.7rem 1rem}.skip:focus{top:1rem}
.wrap{width:min(100% - 4rem,1240px);margin-inline:auto}
h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:400}
h1,h2{font-family:var(--serif);letter-spacing:-.05em}
h1{font-size:clamp(3.8rem,6.5vw,6.7rem);line-height:1.04;margin:1rem 0 1.35rem}
h2{font-size:clamp(2.8rem,4.8vw,4.8rem);line-height:1.08;margin:.65rem 0 1.2rem}
h3{font-size:1.4rem;line-height:1.25;margin:0 0 .65rem}
.lead{font-size:clamp(1.05rem,1.4vw,1.2rem);line-height:1.72;max-width:40rem}
.eyebrow{display:block;color:var(--olive-deep);text-transform:uppercase;letter-spacing:.18em;font-weight:750;font-size:.73rem;line-height:1.5}
.light .eyebrow{color:#CDD8C7}
.button{display:inline-flex;align-items:center;justify-content:center;gap:1rem;min-height:3.3rem;padding:.78rem 1.45rem;border:1px solid var(--forest);border-radius:2px;background:var(--forest);color:white;text-decoration:none;text-align:center;font-size:.86rem;font-weight:700;letter-spacing:.015em;transition:background .22s,transform .22s,border-color .22s}
.button:hover{background:var(--olive-deep);border-color:var(--olive-deep);transform:translateY(-2px)}
.button.ghost{background:transparent;color:var(--forest)}.button.ghost:hover{background:#F0F2E9}
.button.pale{background:var(--paper);border-color:var(--paper);color:var(--forest)}.button.pale:hover{background:#DFE5DA;border-color:#DFE5DA}
.button:focus-visible,.text-link:focus-visible,.nav a:focus-visible,.menu-toggle:focus-visible,.card:focus-visible,.step:focus-visible,.video-play:focus-visible,.studio-play:focus-visible{outline:3px solid var(--olive);outline-offset:3px}
.text-link{display:inline-flex;align-items:center;min-height:2.75rem;text-decoration:none;border-bottom:1px solid currentColor;font-size:.87rem;font-weight:700;letter-spacing:.02em}
.arrow{font-size:1.1em;line-height:1}
.topline{background:var(--forest-deep);color:#DFE9DE;font-size:.7rem;letter-spacing:.13em;text-transform:uppercase}
.topline .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.48rem 0}.topline a{text-decoration:none;color:#F5F5EA}
.top-contact{display:flex;align-items:center;gap:.5rem}.top-contact .top-icon{display:inline-grid;place-items:center;width:1.75rem;height:1.75rem;border:1px solid rgba(255,255,255,.35);border-radius:50%}.top-icon svg{width:1rem;height:1rem}.top-icon img{width:1rem;height:1.15rem}.top-icon:hover{background:rgba(255,255,255,.14)}.top-contact .whatsapp-icon{background:#fff;border-color:#fff}.top-contact .whatsapp-icon:hover{background:#E8EDE6}.top-icon:focus-visible{outline:2px solid white;outline-offset:2px}
.header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}
.header-inner{min-height:5.7rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}
.brand{display:inline-flex;align-items:center;flex:none;text-decoration:none}.brand img{width:clamp(10rem,14vw,11.5rem);height:auto}
.nav{display:flex;align-items:center;gap:clamp(.8rem,1.9vw,2rem)}.nav a:not(.button){text-decoration:none;font-size:.84rem;font-weight:650;white-space:nowrap}.nav a:not(.button):hover{color:var(--olive-deep)}
.nav .button{min-height:2.9rem;padding:.55rem 1.05rem;white-space:nowrap}.menu-toggle{display:none;border:0;background:none;color:var(--forest);padding:.5rem;cursor:pointer}
.hero{background:var(--forest);color:white}.hero-grid{min-height:clamp(38rem,52vw,47rem);position:relative;display:flex;align-items:center;overflow:hidden}
.hero-image{position:absolute;inset:0;overflow:hidden}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center 52%}
.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,45,39,.94) 0%,rgba(16,45,39,.82) 29%,rgba(16,45,39,.23) 67%,rgba(16,45,39,.06) 100%)}
.hero-copy{position:relative;z-index:2;width:min(100%,51rem);padding:5rem 2rem 5rem max(2rem,calc((100vw - 1240px)/2))}
.hero-copy h1{max-width:11ch}.hero-copy h1 em{font-weight:400;color:#E3E9DB}.hero-copy .lead{max-width:32rem;color:#EEF2E9;margin-bottom:2rem}
.hero-actions{display:flex;align-items:center;gap:1.4rem;flex-wrap:wrap}.hero .text-link{color:white}
.hero-bottom{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-top:3rem;color:#D9E5D8;letter-spacing:.13em;text-transform:uppercase;font-size:.68rem;font-weight:700}
.intro{padding:6.5rem 0}.intro-grid{display:grid;grid-template-columns:.35fr 1fr;gap:7vw;align-items:start}.intro-side{padding-top:.35rem}.small-rule{width:3.4rem;height:1px;background:var(--olive);margin-top:1.4rem}
.intro-text{font-family:var(--serif);font-size:clamp(1.75rem,2.8vw,2.65rem);line-height:1.35;letter-spacing:-.035em;color:var(--forest);max-width:51rem;margin:0}.intro-text em{color:var(--olive);font-weight:400}
.section{padding:6.7rem 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2.6rem}.section-head h2{max-width:13ch;margin-bottom:0}.section-head p{max-width:29rem;margin-bottom:.2rem;color:var(--muted)}
.treatments{background:#fff}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}
.card{display:flex;flex-direction:column;min-width:0;min-height:17.5rem;padding:1.7rem;text-align:left;border:1px solid var(--line);background:var(--paper);color:var(--text);cursor:pointer;transition:border-color .22s,background .22s,transform .22s}
.card:hover{border-color:var(--olive);transform:translateY(-3px)}.card.is-active{border-color:var(--olive);background:var(--mist)}
.card-number{display:block;color:var(--olive-deep);letter-spacing:.13em;font-size:.72rem;font-weight:750}.card-title{display:block;color:var(--forest);font-family:var(--serif);font-size:clamp(1.5rem,2.1vw,2rem);line-height:1.15;letter-spacing:-.035em;margin:2.6rem 0 .75rem}
.card-summary{display:block;font-size:.9rem;line-height:1.6;color:var(--muted)}.card-explore{display:flex;justify-content:space-between;gap:1rem;margin-top:auto;padding-top:1.5rem;color:var(--olive-deep);text-transform:uppercase;letter-spacing:.1em;font-size:.67rem;font-weight:750}.card-explore span{font-size:1.1rem;line-height:.7}
.treatment-focus{display:grid;grid-template-columns:35% 1fr;margin-top:.8rem;background:var(--forest);color:white;min-height:17rem}.focus-sculpture{position:relative;display:grid;place-items:center;overflow:hidden;background:var(--olive)}.focus-sculpture span{font-family:var(--serif);font-size:clamp(7rem,12vw,12rem);line-height:1;color:rgba(255,255,255,.18);letter-spacing:-.12em}.focus-orbit{display:none}
.focus-copy{padding:2.5rem clamp(2rem,5vw,5rem)}.focus-copy .eyebrow{color:#DDE6D5}.focus-copy h3{font-family:var(--serif);font-size:clamp(2rem,3vw,3rem);letter-spacing:-.04em;margin:.45rem 0 .65rem}.focus-copy p{color:#DDE8DE;max-width:39rem}.focus-copy .text-link{color:white}
.about{background:var(--mist)}.about-grid{display:grid;grid-template-columns:45% 55%;min-height:40rem}.about-visual{position:relative;min-height:40rem;background:#BCC6B6;overflow:hidden}.studio-slab-front{position:absolute;inset:0}.studio-portrait{width:100%;height:100%;object-fit:cover;object-position:50% 30%}.studio-slab-front:after{content:"";position:absolute;inset:60% 0 0;background:linear-gradient(transparent,rgba(14,34,29,.38));pointer-events:none}
.studio-play{position:absolute;z-index:2;bottom:2rem;left:2rem;display:flex;align-items:center;gap:.75rem;padding:.48rem 1.1rem .48rem .48rem;min-height:3.3rem;border:1px solid #fff;border-radius:3rem;background:rgba(255,255,255,.94);color:var(--forest);text-align:left;font-size:.78rem;line-height:1.15;font-weight:750;cursor:pointer}
.studio-play-icon{display:grid;place-items:center;flex:none;width:2.3rem;height:2.3rem;border-radius:50%;background:var(--olive);color:white;font-size:.75rem;padding-left:.12rem}.studio-play small{display:block;color:var(--muted);font-size:.65rem;margin-top:.18rem}
.intro-player{display:none;position:absolute;z-index:3;inset:0;width:100%;height:100%;object-fit:contain;background:var(--forest-deep)}.studio-slab-front.is-playing .intro-player{display:block}.studio-slab-front.is-playing .studio-play,.studio-slab-front.is-playing .studio-portrait{display:none}
.about-content{display:flex;flex-direction:column;justify-content:center;padding:clamp(3.2rem,7vw,7rem) clamp(2.4rem,7vw,7rem)}.about-content h2{max-width:12ch}.about-content p{max-width:38rem;color:var(--muted)}.credential{margin-top:1.25rem;padding-top:1.4rem;border-top:1px solid #C8D3C8;color:var(--olive-deep);font-size:.79rem;letter-spacing:.02em}
.journey{background:var(--forest);color:#fff}.journey .section-head p{color:#D7E4D8}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem}
.step{display:flex;flex-direction:column;min-width:0;min-height:15.5rem;padding:1.5rem;text-align:left;border:1px solid rgba(222,237,222,.28);background:rgba(255,255,255,.035);color:white;cursor:pointer;transition:background .2s,border-color .2s,transform .2s}.step:hover{background:rgba(255,255,255,.08);transform:translateY(-3px)}.step.is-active{border-color:#CEDBCB;background:rgba(169,187,158,.17)}
.step-number{font-family:var(--serif);font-size:1.65rem;color:#C8D5BF}.step-title{font-family:var(--serif);font-size:1.7rem;line-height:1.15;letter-spacing:-.03em;margin:2rem 0 .65rem}.step-summary{color:#DAE7D8;font-size:.89rem;line-height:1.6}.step-indicator{width:2.4rem;height:1px;background:#D1DECB;margin-top:auto;transform:translateY(.65rem)}.step.is-active .step-indicator{width:100%}
.journey-focus{display:grid;grid-template-columns:11rem 1fr;align-items:center;min-height:12.5rem;margin-top:.7rem;background:#25483D}.journey-focus-mark{display:grid;place-items:center;height:100%;min-height:12.5rem;border-right:1px solid rgba(255,255,255,.14);overflow:hidden}.journey-focus-mark>span:first-child{font-family:var(--serif);font-size:6rem;color:rgba(255,255,255,.2);letter-spacing:-.12em}.journey-focus-ring{display:none}.journey-focus-copy{padding:2rem clamp(1.5rem,4vw,4rem)}.journey-focus-copy .eyebrow{color:#D2DFC9}.journey-focus-copy h3{font-family:var(--serif);font-size:2.35rem;letter-spacing:-.04em;margin:.4rem 0}.journey-focus-copy p{max-width:45rem;color:#E1EAE0;margin:0}
.voices{background:var(--paper)}.voices .section-head h2{max-width:none}.voices-intro{max-width:27rem}.voices-intro p{margin:0 0 1.2rem}.social-actions{display:flex;gap:.6rem;flex-wrap:wrap}.social-actions a{display:inline-flex;align-items:center;justify-content:space-between;gap:1rem;min-height:2.75rem;padding:.45rem .85rem;border:1px solid var(--line);text-decoration:none;font-size:.78rem;font-weight:750}.social-actions a:hover{background:var(--mist)}
.video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.video-card{min-width:0;border:1px solid var(--line);background:white}.video-viewport{position:relative;aspect-ratio:9/14;overflow:hidden;background:linear-gradient(145deg,var(--olive),var(--forest));isolation:isolate}.video-viewport:before{content:"";position:absolute;inset:17% 22%;background:url('/assets/ismile-mark-light.png') center/contain no-repeat;opacity:.15}.video-placeholder-number{position:absolute;top:.8rem;left:1.2rem;color:rgba(255,255,255,.72);font-family:var(--serif);font-size:1.3rem}
.video-viewport iframe{position:absolute;z-index:2;inset:0;width:100%;height:100%;border:0;opacity:0;transition:opacity .3s}.video-card.is-loaded iframe{opacity:1}.video-play{position:absolute;z-index:3;left:50%;top:50%;transform:translate(-50%,-50%);min-width:8rem;min-height:3rem;border:1px solid white;border-radius:2rem;background:white;color:var(--forest);font-size:.8rem;font-weight:750;cursor:pointer}.video-play span{margin-left:.5rem;color:var(--olive)}.video-card.is-loaded .video-play{display:none}
.video-meta{padding:1.5rem}.video-meta>span{display:block;color:var(--olive-deep);font-size:.7rem;font-weight:800;letter-spacing:.15em}.video-meta h3{font-family:var(--serif);font-size:clamp(1.45rem,2vw,2rem);letter-spacing:-.04em;margin:.65rem 0 1.25rem}.video-meta a{display:inline-flex;align-items:center;min-height:2.75rem;border-bottom:1px solid var(--olive);text-decoration:none;font-size:.84rem;font-weight:700}.video-source{margin:1.5rem 0 0;color:var(--muted);font-size:.78rem}
.locations{background:#fff}.locations-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:7vw}.locations-grid h2{max-width:11ch}.locations-grid .lead{color:var(--muted)}.place-list{border-top:1px solid var(--line)}.place{display:grid;grid-template-columns:10rem 1fr auto;align-items:center;gap:1rem;padding:1.55rem 0;border-bottom:1px solid var(--line)}.place h3{font-family:var(--serif);font-size:1.5rem;color:var(--forest);margin:0}.place p{font-size:.92rem;color:var(--muted);margin:0}.place a{display:inline-flex;align-items:center;min-height:2.75rem;text-decoration:none;border-bottom:1px solid var(--olive);font-size:.84rem;font-weight:750;white-space:nowrap}.place a:hover{color:var(--olive-deep)}
.contact{background:var(--mist);padding:6.4rem 0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}.contact h2{max-width:12ch}.contact p{max-width:37rem;color:var(--muted)}.contact-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin-top:2rem}.contact-actions .button{padding:.75rem .7rem;font-size:.78rem;line-height:1.3}.whatsapp-button img{width:1.15rem;height:1.3rem;flex:none}
.contact-stage{min-width:0}.contact-details{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:26rem;padding:3.2rem;overflow:hidden;background:var(--forest);color:#fff}.contact-details:before{content:"";position:absolute;right:1.6rem;top:1.5rem;width:8rem;height:9.2rem;background:url('/assets/ismile-mark-light.png') center/contain no-repeat;opacity:.16}.contact-card-kicker{font-size:.73rem;font-weight:750;letter-spacing:.16em;text-transform:uppercase;color:#D9E5D6;margin-bottom:3.5rem}.contact-card-glyph,.contact-card-bottom{display:none}.contact-details>div{position:relative;z-index:1;margin-bottom:1rem}.contact-details>div span{display:block;font-size:.68rem;font-weight:750;letter-spacing:.15em;text-transform:uppercase;color:#C2D4C3}.contact-details a{display:inline-block;padding:.2rem 0;color:white;text-decoration:none;font-family:var(--serif);font-size:clamp(1.2rem,2vw,1.65rem);overflow-wrap:anywhere}.contact-details a:hover{text-decoration:underline}
.contact-details .contact-row{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem .7rem}.contact-details .contact-icons{display:flex;align-items:center;gap:.45rem}.contact-details .contact-icon{display:grid;place-items:center;flex:none;width:2.5rem;height:2.5rem;padding:0;border:1px solid rgba(255,255,255,.5);border-radius:50%;font-family:var(--sans)}.contact-details .contact-icon:hover{background:rgba(255,255,255,.15);text-decoration:none}.contact-details .contact-icon svg{width:1.25rem;height:1.25rem}.contact-details .whatsapp-icon{background:#fff;border-color:#fff}.contact-details .whatsapp-icon:hover{background:#E8EDE6}.contact-details .whatsapp-icon img{width:1.25rem;height:1.43rem}.contact-details .contact-email{display:inline-flex;align-items:center;gap:.7rem;max-width:100%}.contact-email svg{width:1.3rem;height:1.3rem;flex:none}.contact-icon:focus-visible,.contact-email:focus-visible{outline:2px solid white;outline-offset:3px}
footer{background:var(--forest-deep);color:#D3E0D4;padding:3.8rem 0 2rem}.footer-top{display:flex;justify-content:space-between;gap:3rem;padding-bottom:3rem}.footer-top p{max-width:25rem;margin:1.3rem 0 0;font-size:.87rem}.footer-links{display:grid;grid-template-columns:repeat(2,auto);gap:.45rem 2.5rem;align-content:start;font-size:.84rem}footer a:hover{color:#fff}.footer-links a{min-height:2rem;text-decoration:none}.footer-bottom{display:flex;justify-content:space-between;gap:1rem;padding-top:1.4rem;border-top:1px solid rgba(232,242,232,.22);font-size:.74rem}
section[id]{scroll-margin-top:6rem}
@media(max-width:1050px){.nav{gap:.9rem}.nav a:not(.button){font-size:.78rem}.cards,.steps{grid-template-columns:repeat(2,minmax(0,1fr))}.card{min-height:15rem}.step{min-height:14rem}.hero-grid{min-height:38rem}}
@media(max-width:900px){
  .wrap{width:min(100% - 2.5rem,1240px)}.topline .wrap{justify-content:center}.topline .wrap span:last-child{display:none}
  .header-inner{min-height:4.9rem}.brand img{width:9.5rem}.menu-toggle{display:grid;place-items:center;width:3rem;height:3rem;flex:none}
  .nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:.2rem;background:white;padding:1.2rem 1.25rem 1.5rem;border-top:1px solid var(--line);box-shadow:0 1rem 2rem rgba(16,45,39,.12)}.nav.open{display:flex}.nav a:not(.button){display:flex;align-items:center;min-height:2.9rem;font-size:1rem}.nav .button{margin-top:.3rem}
  .hero-grid{display:flex;flex-direction:column;align-items:stretch;min-height:0}.hero-image{position:relative;order:0;height:clamp(18rem,63vw,32rem)}.hero-image:after{background:linear-gradient(0deg,rgba(16,45,39,.4),transparent 38%)}.hero-image img{object-position:center 51%}.hero-copy{order:1;width:100%;padding:3.5rem max(1.25rem,calc((100vw - 1240px)/2)) 3.8rem;background:var(--forest)}.hero-copy h1{max-width:12ch}.hero-bottom{margin-top:2.2rem}
  .intro{padding:5rem 0}.intro-grid,.locations-grid,.contact-grid{grid-template-columns:1fr;gap:2rem}.section{padding:5.2rem 0}.section-head{display:block}.section-head p{margin-top:1rem}.about-grid{grid-template-columns:1fr}.about-visual{min-height:31rem}.about-content{padding:4.5rem 1.25rem}.contact{padding:5rem 0}.contact-details{max-width:36rem}
}
@media(max-width:600px){
  h1{font-size:clamp(2.7rem,11vw,4.2rem)}h2{font-size:clamp(2.4rem,9vw,3.5rem)}.topline{font-size:.6rem;letter-spacing:.09em}.hero-image{height:clamp(16rem,76vw,24rem)}.hero-copy{padding:3rem 1.25rem 3.2rem}.hero-copy .lead{font-size:1rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:.9rem}.hero-bottom{gap:.3rem .7rem;margin-top:2rem}.hero-bottom span[aria-hidden]{display:none}
  .intro{padding:4.1rem 0}.intro-grid{gap:1.7rem}.intro-text{font-size:clamp(1.65rem,7vw,2.1rem)}.section{padding:4.3rem 0}.cards,.steps,.video-grid{grid-template-columns:1fr}.card{min-height:0;padding:1.35rem}.card-title{margin:1.4rem 0 .5rem}.card-explore{padding-top:1.2rem}.treatment-focus{grid-template-columns:1fr}.focus-sculpture{height:8rem}.focus-sculpture span{font-size:8rem}.focus-copy{padding:2rem 1.4rem 2.3rem}.about-visual{min-height:25rem}.about-content{padding:4rem 1.25rem}.studio-play{left:1.2rem;bottom:1.2rem}
  .step{min-height:0;padding:1.35rem}.step-title{margin:.65rem 0 .5rem}.step-indicator{margin-top:1.3rem}.journey-focus{grid-template-columns:1fr}.journey-focus-mark{min-height:7rem}.journey-focus-mark>span:first-child{font-size:5rem}.journey-focus-copy{padding:1.4rem}.video-grid{max-width:26rem;margin-inline:auto}.video-viewport{aspect-ratio:9/12}.video-meta{padding:1.3rem}
  .place{grid-template-columns:1fr auto;gap:.2rem 1rem}.place p{grid-column:1/-1;grid-row:2}.place a{grid-column:2;grid-row:1}.contact-actions{grid-template-columns:1fr}.contact-actions .button{font-size:.88rem}.contact-details{min-height:22rem;padding:2rem}.footer-top,.footer-bottom{flex-direction:column}.footer-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem .8rem}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.card,.step,.video-viewport iframe{transition:none}.button:hover,.card:hover,.step:hover{transform:none}}
