/* Flyer-inspired visual system: open white space, circular credentials and flowing bands. */
:root{--deep-purple:#5230a3;--soft-purple:#f6f2fc}
.reading-progress{position:fixed;left:0;top:0;width:100%;height:3px;background:var(--brand);transform:scaleX(0);transform-origin:left;z-index:9999;pointer-events:none}
.hero-home:before{transform:translateY(var(--hero-drift,0px)) scale(1.015);transform-origin:center}
.hero-home:after{animation:tooth-float 7s ease-in-out infinite}
.proof .icon{box-sizing:content-box;padding:14px;border-radius:50%;background:#e5f8fd;box-shadow:0 0 0 6px #ffffff85;transition:transform .35s ease,background .35s ease}
.proof:nth-child(even) .icon{color:#7444ca;background:#f0eafa}.proof:hover .icon{transform:translateY(-5px) rotate(-5deg)}
.proof+.proof{border-left:0}.proof-row{gap:10px}
.button .icon:last-child,.wp-block-button__link .icon:last-child{transition:transform .25s ease}.button:hover .icon:last-child,.wp-block-button__link:hover .icon:last-child{transform:translateX(4px)}
.nav-list a:after{content:'';position:absolute;bottom:2px;left:0;width:100%;height:2px;background:var(--brand);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}.nav-list a:hover:after,.nav-list .current-menu-item>a:after{transform:scaleX(1)}
.reveal-pending{opacity:0;transform:translateY(26px)}.revealed{animation:rise-in .75s cubic-bezier(.2,.65,.3,1) both;animation-delay:var(--reveal-delay,0ms)}
.hero-copy h1{animation:rise-in .8s ease both}.hero-lead{animation:rise-in .8s .12s ease both}.hero-copy .wp-block-buttons{animation:rise-in .8s .23s ease both}
@keyframes rise-in{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}
@keyframes tooth-float{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-14px) rotate(2deg)}}
@keyframes wave-flow{0%,100%{transform:translateX(-1%) scaleX(1.03)}50%{transform:translateX(1%) scaleX(1.03)}}
.confidence-section{position:relative;overflow:hidden;padding-bottom:130px}.confidence-layout{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:clamp(40px,6vw,100px)}
.confidence-media{position:relative;margin:0 30px 0 0}.confidence-media img{width:100%;height:540px;object-fit:cover;border-radius:100px 22px 100px 22px;display:block}.experience-seal{position:absolute;right:-35px;bottom:30px;background:white;border:9px solid #e9f9fd;border-radius:50%;width:178px;height:178px;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 15px 40px #131a4e13;text-align:center;line-height:1.35}.experience-seal strong{font-size:62px;font-weight:600;letter-spacing:-.06em;color:#00a9d4}.experience-seal span{font-size:13px;max-width:110px}
.confidence-copy>p,.confidence-copy>.wp-block-group__inner-container>p{color:var(--muted);font-size:18px;max-width:600px}.credentials{display:grid;grid-template-columns:1fr 1fr;gap:28px 24px;margin-top:35px}.credential{display:grid;grid-template-columns:48px 1fr;gap:8px 15px;align-items:start}.credential>.icon{width:48px;height:48px;padding:11px;background:#e4f8fc;border-radius:50%;color:#00a5d0;grid-row:span 2}.credential:nth-child(even)>.icon{background:#f0eafa;color:#7444ca}.credential h3{font-size:17px;margin:0;letter-spacing:-.025em}.credential p{font-size:14px;color:var(--muted);line-height:1.6;margin:0}.brand-wave{position:absolute;bottom:0;left:-2%;width:104%;height:95px;pointer-events:none;animation:wave-flow 12s ease-in-out infinite}
.cover-section{background:linear-gradient(180deg,#f2fbfe,#fff);padding-top:70px}.cover-heading{max-width:830px;margin-bottom:45px}.cover-heading p{font-size:18px;color:var(--muted)}.cover-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.cover-card{position:relative;padding:30px 25px 25px;background:#fff;border:1px solid #e5ecf7;border-radius:26px 8px 26px 8px;box-shadow:0 14px 30px #16385d05;transition:border-color .25s,box-shadow .25s}.cover-card:hover{border-color:#b7d9ed;box-shadow:0 16px 34px #27458510}.cover-card .icon{width:55px;height:55px;padding:13px;border-radius:50%;background:#e9f9fd;color:#00a8d5;margin-bottom:24px}.cover-card:nth-child(even) .icon{background:#f1ebfb;color:#774ac7}.cover-card h3{font-size:22px}.cover-card p{font-size:15px;color:var(--muted);line-height:1.7}.cover-card .cover-note{font-size:12px;padding-top:15px;border-top:1px solid var(--line);margin:22px 0 0;color:#695191}
.area-section{position:relative;background:#f5f2fc;overflow:hidden}.area-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:85px;align-items:center}.area-copy p{color:var(--muted);font-size:18px;max-width:610px}.area-copy .small-note{font-size:13px}.area-visual{min-height:355px;display:flex;align-items:center;justify-content:center;position:relative}.area-orbit{width:310px;height:310px;position:relative;border:1px solid #d9cbef;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle,#fff 0 40%,#ffffff50 41% 62%,transparent 63%);box-shadow:0 0 0 28px #ffffff40,0 0 0 57px #ffffff28;text-align:center}.area-orbit>.icon{width:52px;height:52px;color:#09a7d0;margin-bottom:15px}.area-orbit strong{font-size:30px;font-weight:600;letter-spacing:-.035em}.area-orbit span{font-size:13px;color:var(--muted)}.area-orbit:before,.area-orbit:after{content:'';position:absolute;width:12px;height:12px;border-radius:50%;background:#04b6d5;left:13px;top:70px;box-shadow:0 0 0 7px #d8f2f8}.area-orbit:after{background:#8756cc;left:auto;top:auto;right:10px;bottom:75px;box-shadow:0 0 0 7px #e9def9}.early-note{display:flex;align-items:center;gap:13px;margin-top:24px;font-size:14px;color:var(--deep-purple)}.early-note .icon{width:27px;height:27px}
.preparation{border-top:1px solid var(--line);padding-top:32px;margin-top:25px}.preparation h3{font-size:23px}.preparation ul{padding-left:20px;color:var(--muted);font-size:16px}.preparation li{margin:10px 0}.contact-copy .contact-visual{margin-top:30px;max-width:480px;height:190px;border-radius:40px 8px 40px 8px;object-fit:cover;width:100%}
.inner-hero{position:relative;overflow:hidden;background:linear-gradient(110deg,#fff 40%,#f2fbff 100%)}.inner-hero:after{content:'';position:absolute;right:4%;top:10%;height:85%;width:240px;background:url(tooth.png) center/contain no-repeat;opacity:.07;pointer-events:none}.inner-hero h1,.inner-hero p{position:relative;z-index:1}
.callout{position:relative;overflow:hidden;border-radius:50px 12px 50px 12px;padding:60px}.callout:before,.callout:after{content:'';position:absolute;width:400px;height:160px;right:-70px;bottom:-120px;border:2px solid #ffffff45;border-radius:50%;transform:rotate(-12deg);pointer-events:none}.callout:after{bottom:-102px;right:-90px}.callout-copy,.callout .wp-block-buttons{position:relative;z-index:1}.footer-wave{animation:wave-flow 12s ease-in-out infinite}.site-footer{overflow:hidden;padding-top:85px}.footer-wave{top:0}.steps-section{position:relative}.step .number{background:var(--brand);background-clip:text;color:transparent}.step:hover .number{filter:brightness(1.12)}
@media(min-width:961px){.hero-copy{padding-bottom:30px}.hero-home{min-height:850px}.confidence-section .confidence-copy h2{font-size:clamp(36px,3.3vw,56px)}}
@media(max-width:1100px){.cover-grid{grid-template-columns:repeat(2,1fr)}.confidence-layout{gap:30px}.confidence-media img{height:480px}.credentials{gap:22px 15px}.credential{grid-template-columns:40px 1fr;gap:8px 10px}.credential>.icon{width:40px;height:40px;padding:9px}.area-layout{gap:45px}}
@media(max-width:800px){.confidence-layout,.area-layout{grid-template-columns:1fr;gap:45px}.confidence-media{max-width:550px;margin:0 30px 0 0}.confidence-media img{height:400px}.confidence-copy{max-width:680px}.area-visual{min-height:325px}.confidence-section{padding-bottom:95px}.brand-wave{height:60px}.area-copy{order:0}.area-visual{order:1}}
@media(max-width:600px){.proof .icon{padding:11px}.proof-row{gap:27px 0}.confidence-media img{height:330px;border-radius:65px 12px 65px 12px}.experience-seal{width:140px;height:140px;right:-24px;bottom:20px;border-width:7px}.experience-seal strong{font-size:46px}.experience-seal span{font-size:11px}.confidence-copy>p,.confidence-copy>.wp-block-group__inner-container>p{font-size:16px}.credentials{grid-template-columns:1fr;gap:23px}.credential{grid-template-columns:46px 1fr;gap:5px 15px}.credential>.icon{width:46px;height:46px;padding:11px}.credential h3{font-size:18px}.credential p{font-size:14px}.cover-heading{margin-bottom:30px}.cover-heading p,.area-copy p{font-size:16px}.cover-grid{grid-template-columns:1fr;gap:18px}.cover-card{padding:26px}.cover-card .icon{margin-bottom:18px}.cover-card h3{margin-bottom:15px}.area-orbit{width:235px;height:235px;box-shadow:0 0 0 20px #ffffff40,0 0 0 39px #ffffff28}.area-visual{min-height:315px}.area-orbit:before{top:43px}.area-orbit:after{bottom:45px}.callout{padding:35px 25px;border-radius:35px 10px 35px 10px}.inner-hero:after{right:-40px;width:180px}.contact-copy .contact-visual{height:170px}.hero-home:before{transform:none}.reading-progress{height:2px}}
@media(prefers-reduced-motion:reduce){.reveal-pending{opacity:1;transform:none}.hero-home:before{transform:none}html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Keep the concept's white line icons legible on the flyer colours. */
.credential .icon{width:52px;height:52px;padding:12px;border-radius:50%;color:white;background:linear-gradient(130deg,#30d2e5,#00a7d8);grid-row:span 2}.credential:nth-child(even) .icon{color:white;background:linear-gradient(130deg,#a365e8,#5333b3)}.experience-seal{top:25px;bottom:auto}.credential{grid-template-columns:52px 1fr}
@media(max-width:600px){.credential{grid-template-columns:46px 1fr}.credential .icon{width:46px;height:46px;padding:11px}.experience-seal{top:auto;bottom:20px}}

/* Persistent navigation with blue glass once the page is scrolled. */
html{scroll-padding-top:170px}
.site-header,.home .site-header{position:sticky;top:var(--jp-admin-offset,0px);z-index:1000;transition:background-color .25s ease,box-shadow .25s ease;isolation:isolate}
.home .site-header{position:fixed;left:0;right:0}
.admin-bar.home .site-header{top:var(--jp-admin-offset,32px)}
.site-header.is-scrolled,.home .site-header.is-scrolled{background:rgba(202,230,252,.94);box-shadow:0 1px 0 #ffffffa0,0 8px 30px #16376e16}
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.site-header.is-scrolled,.home .site-header.is-scrolled{background:rgba(202,230,252,.8);-webkit-backdrop-filter:blur(20px) saturate(145%);backdrop-filter:blur(20px) saturate(145%)}}
.site-header.is-scrolled .brand-crop img{mix-blend-mode:multiply}
.site-header.is-scrolled .nav-list a{color:#10164e}.site-header.is-scrolled .nav-list .current-menu-item>a,.site-header.is-scrolled .nav-list a:hover{color:#006e9f}
@media(max-width:960px){html{scroll-padding-top:125px}.primary-navigation{max-height:calc(100dvh - 150px);overflow-y:auto}.site-header.is-scrolled .menu-toggle{background:#ffffffb8;border-color:#b6d4ec}}
@media(prefers-reduced-motion:reduce){.site-header{transition:none}}
/* Compact, smoothly animated navigation on desktop and mobile. */
.site-header .header-inner{transition:padding .38s cubic-bezier(.22,.61,.36,1)}
.site-header .brand-crop{transition:width .38s cubic-bezier(.22,.61,.36,1)}
.site-header .header-book{transition:padding .38s ease,min-height .38s ease,transform .18s ease,box-shadow .18s ease}
@media(min-width:961px){.site-header.is-scrolled .brand-crop{width:155px}.site-header.is-scrolled .header-inner{padding-top:9px;padding-bottom:9px}.site-header.is-scrolled .header-book{min-height:46px;padding:9px 22px}}
@media(min-width:601px) and (max-width:960px){.site-header.is-scrolled .brand-crop{width:140px}.site-header.is-scrolled .header-inner{padding-top:8px;padding-bottom:8px}}
@media(max-width:600px){.site-header.is-scrolled .brand-crop{width:118px}.site-header.is-scrolled .header-inner{padding-top:7px;padding-bottom:7px}}
@media(prefers-reduced-motion:reduce){.site-header .header-inner,.site-header .brand-crop,.site-header .header-book{transition:none}}
.site-header .brand-crop img,.site-header.is-scrolled .brand-crop img{content:url(logo-transparent.png);mix-blend-mode:normal}
.jp-curtain{position:fixed;inset:0;z-index:100000;pointer-events:none;visibility:hidden;display:grid;place-items:center}
.jp-curtain:before,.jp-curtain:after{content:'';position:absolute;left:0;right:0;height:51%;background:#e6f5ff;transition:transform .48s cubic-bezier(.76,0,.24,1)}
.jp-curtain:before{top:0;transform:translateY(-101%);background:linear-gradient(120deg,#e4faff,#dceafc)}.jp-curtain:after{bottom:0;transform:translateY(101%);background:linear-gradient(120deg,#dceafc,#eee5fc)}
.jp-curtain .brand-crop{width:220px;z-index:1;opacity:0;transition:opacity .2s ease}.jp-curtain img{content:url(logo-transparent.png)}
.jp-covering .jp-curtain,.jp-arriving .jp-curtain,.jp-revealing .jp-curtain{visibility:visible}
.jp-covering .jp-curtain,.jp-arriving .jp-curtain{pointer-events:auto}
.jp-covering .jp-curtain:before,.jp-covering .jp-curtain:after,.jp-arriving .jp-curtain:before,.jp-arriving .jp-curtain:after{transform:translateY(0)}
.jp-covering .jp-curtain .brand-crop,.jp-arriving .jp-curtain .brand-crop{opacity:1;transition-delay:.18s}
@media(prefers-reduced-motion:reduce){.jp-curtain{display:none}}
.mobile-menu-extra{display:none}
@media(max-width:960px){
 body.menu-open{overflow:hidden}
 .primary-navigation{display:flex;flex-direction:column;position:fixed;inset:0;width:100%;height:100dvh;max-height:none;margin:0;padding:120px 32px 35px;border:0;border-radius:0;box-shadow:none;background:linear-gradient(145deg,#e7f9ff 0%,#f4f8ff 55%,#e8ddfa 100%);overflow-y:auto;visibility:hidden;opacity:0;transform:translateY(-12px);transition:opacity .3s ease,transform .4s cubic-bezier(.22,.61,.36,1),visibility .4s;pointer-events:none;z-index:1}
 .primary-navigation.is-open{display:flex;visibility:visible;opacity:1;transform:translateY(0);pointer-events:auto}
 .primary-navigation:after{content:'';position:fixed;right:-80px;bottom:5%;width:270px;height:330px;background:url(tooth.png) center/contain no-repeat;opacity:.06;pointer-events:none;z-index:-1}
 .menu-open .site-header,.menu-open.home .site-header{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}
 .menu-open .site-header .brand,.menu-open .menu-toggle{position:relative;z-index:2}
 .menu-toggle[aria-expanded=true]{background:#fff;border-color:#becfe5;gap:12px}
 .menu-toggle[aria-expanded=true] svg{display:none}
 .menu-toggle[aria-expanded=true]:after{content:'';width:20px;height:20px;background:linear-gradient(45deg,transparent 46%,#10164e 47% 53%,transparent 54%),linear-gradient(-45deg,transparent 46%,#10164e 47% 53%,transparent 54%)}
 .primary-navigation .nav-list{counter-reset:menu;gap:0}.primary-navigation .nav-list a{font-size:clamp(24px,5vw,36px);font-weight:500;letter-spacing:-.035em;padding:11px 0;line-height:1.35;display:flex;align-items:center;gap:18px}
 .primary-navigation .nav-list a:before{counter-increment:menu;content:'0' counter(menu);font-size:11px;font-weight:400;letter-spacing:.08em;color:#7795b0}
 .primary-navigation .nav-list a:after{display:none}.primary-navigation .nav-list .current-menu-item>a{color:#008cb6}
 .mobile-menu-extra{display:flex;flex-direction:column;align-items:flex-start;gap:19px;margin-top:30px;padding-top:28px;border-top:1px solid #bacde34d}.mobile-menu-extra>a:not(.button){font-size:15px;text-decoration:none}.mobile-menu-extra p{font-size:12px;color:#637c9c;margin:0}.mobile-menu-extra .button{min-height:52px;font-size:17px;padding:12px 28px}
}
@media(max-width:600px){.primary-navigation{padding:100px 28px 30px}.primary-navigation .nav-list a{font-size:27px;padding:10px 0}.mobile-menu-extra{margin-top:22px;padding-top:22px}}
@media(prefers-reduced-motion:reduce){.primary-navigation{transition:none}}
@media(max-width:600px){.experience-seal span{width:75px;max-width:75px;text-align:center;line-height:1.4}}
/* Give the surgery photograph its own clear space on small screens. */
@media(max-width:600px){
 .hero-home:before{inset:90px 0 auto;height:470px;background-image:linear-gradient(90deg,rgba(255,255,255,.98),rgba(255,255,255,.88) 65%,rgba(255,255,255,.7)),url(hero.jpg);background-size:cover;background-position:75% center;opacity:1;mask-image:linear-gradient(transparent,#000 15%,#000 75%,transparent);-webkit-mask-image:linear-gradient(transparent,#000 15%,#000 75%,transparent)}
 .hero-copy{display:flex;flex-direction:column}
 .hero-copy:after{content:'';display:block;order:1;flex:none;height:265px;margin:20px -24px 0;background:url(hero.jpg) 86% center/auto 100% no-repeat;mask-image:linear-gradient(transparent,#000 18%,#000 84%,transparent);-webkit-mask-image:linear-gradient(transparent,#000 18%,#000 84%,transparent)}
 .hero-copy .proof-row{order:2;width:100%;margin-top:8px}
 .hero-copy .hero-lead{margin-top:0}
 .hero-copy .wp-block-buttons{margin-top:10px}
 .hero-home{padding-bottom:35px}
}
@media(max-width:600px){.hero-home:before{background-image:linear-gradient(135deg,#fff 40%,#eff8ff);opacity:.7}.hero-copy:after{margin-top:0;height:285px;background-position:90% center}}
/* Mobile hero: tighter introduction and stacked actions beside the photograph. */
@media(max-width:600px){
 .hero-copy .eyebrow{margin-bottom:7px}
 .hero-copy h1{margin-top:0}
 .hero-copy .wp-block-buttons{flex-direction:column;align-items:flex-start;gap:10px;position:relative;z-index:2;margin-top:8px;width:100%}
 .hero-copy .wp-block-button{width:158px;max-width:48%}
 .hero-copy .wp-block-button__link{width:100%;min-height:50px;padding:12px 13px;white-space:nowrap}
 .hero-copy:after{position:relative;z-index:0;height:315px;margin-top:-120px;background-image:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.97) 32%,rgba(255,255,255,.55) 48%,transparent 67%),url(hero.jpg);background-position:center,90% center;background-size:100% 100%,auto 100%;mask-image:linear-gradient(transparent,#000 12%,#000 84%,transparent);-webkit-mask-image:linear-gradient(transparent,#000 12%,#000 84%,transparent)}
 .hero-copy .proof-row{position:relative;z-index:1}
}
