:root{--ink:#162843;--muted:#55667b;--blue:#416c98;--line:#dce3ea}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);font:16px/1.7 'Helvetica Neue',Arial,sans-serif;background:white}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #739ac4;outline-offset:7px}header{height:110px;padding:0 5.8%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:10;background:white}.brand{font-size:36px;line-height:1;letter-spacing:-1.8px;font-weight:600}.brand span{font-weight:300}.brand small{display:block;font-size:10px;letter-spacing:3px;margin-top:11px;font-weight:500}nav{display:flex;gap:36px;align-items:center;font-size:14px}nav .nav-phone{border:1px solid var(--ink);padding:11px 23px}nav a:hover{color:var(--blue)}.hero{display:grid;grid-template-columns:48% 52%;min-height:660px}.hero-copy{padding:70px 10% 44px 12%}.eyebrow{font-size:12px;letter-spacing:2.2px;font-weight:600;margin:0 0 25px}h1{font-size:clamp(70px,7.4vw,115px);font-weight:400;letter-spacing:-5px;line-height:1.05;margin:0 0 28px}em{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--blue)}p{color:var(--muted)}.intro{font-size:18px;line-height:1.7;margin:0 0 32px}.button{display:inline-flex;gap:32px;align-items:center;background:var(--ink);color:white;padding:15px 24px;font-size:14px;transition:background .2s}.button:hover{background:var(--blue)}.doctor{border-left:2px solid #b9cadb;padding-left:18px;margin-top:45px;font-size:14px}.doctor small{display:block;color:var(--muted);font-size:12px}figure{margin:0;position:relative;min-width:0;overflow:hidden;background:#dce3ea}figure img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:48% center}figure:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#10233d9c);pointer-events:none}figcaption{position:absolute;bottom:18px;right:22px;z-index:2;color:white;font-size:12px}.photo-label{position:absolute;left:42px;bottom:58px;z-index:2;color:white;font-size:35px;font-weight:300;letter-spacing:-1px}.photo-label small{display:block;font-size:10px;letter-spacing:2px;margin-top:4px}.principles{padding:27px 6%;display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line);font-size:14px}.principles i{font-size:12px;color:#93a9be}.section{padding:100px 8%}h2{font-size:clamp(36px,4vw,58px);font-weight:400;line-height:1.15;letter-spacing:-1.7px;margin:0}.about{display:grid;grid-template-columns:1fr 1fr;gap:10%}.about p{margin:0 0 22px}.about .lead{font-size:24px;line-height:1.4;color:var(--ink)}.signature{margin-top:35px}.signature small{display:block;font-size:10px;letter-spacing:2px;margin-top:7px}.care{background:#f1f5f8}.heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:50px}.services{display:grid;grid-template-columns:1fr 1fr;column-gap:55px}.services .service-card{border-top:1px solid #cbd5e0}.services .service-card:nth-last-child(-n+2){border-bottom:1px solid #cbd5e0}summary{display:flex;align-items:center;gap:22px;padding:27px 0;cursor:pointer;list-style:none;font-size:20px;line-height:1.4}summary::-webkit-details-marker{display:none}summary b{font-size:12px;color:var(--blue);font-weight:400;flex-shrink:0}summary span{margin-left:auto;font-size:26px;font-weight:300}details[open] summary span{transform:rotate(45deg)}details>p{padding:0 25px 20px 37px;margin:0;font-size:15px}.visit{text-align:center}.steps{display:grid;grid-template-columns:repeat(3,1fr);text-align:left;margin-top:60px;gap:55px}.steps article{border-top:1px solid var(--line);padding-top:22px}.steps article>span{font-family:Georgia,serif;font-size:38px;color:#869fb9}.steps h3{font-size:21px;font-weight:500;margin:12px 0}.steps p{margin:0}.contact{background:var(--ink);color:white;display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.contact .eyebrow{color:#c3d3e3}.contact em{color:#a9c8e5}.contact p{color:#cad6e3}.contact>div>p:last-child{margin-top:30px}.contact-card{border:1px solid #627186;padding:38px}.contact-card h3{font-size:24px;line-height:1.4;font-weight:400;margin:0 0 22px}hr{border:0;height:1px;background:#53637a;margin:25px 0}.small{font-size:14px}footer{display:flex;align-items:center;justify-content:space-between;padding:45px 6%;font-size:13px}footer .brand{font-size:29px}footer .brand small{font-size:8px;letter-spacing:2.6px}#menu{display:none}.skip{position:fixed;top:-100px;left:20px;z-index:20;background:white;padding:12px}.skip:focus{top:10px}@media(min-width:1700px){body{max-width:1700px;margin:auto}}@media(max-width:1000px){header{padding:0 5%;height:95px}nav{gap:20px}.hero-copy{padding:60px 8% 35px 10%}h1{letter-spacing:-3px}.hero{min-height:620px}.section{padding:75px 6%}.services{column-gap:30px}summary{font-size:18px}.contact{gap:7%}.principles{font-size:12px}}@media(max-width:720px){header{height:88px}.brand{font-size:30px}.brand small{font-size:8px}#menu{display:block;background:none;border:0;color:var(--ink);font:inherit;font-size:14px;padding:12px 0}nav{display:none;position:absolute;top:88px;left:0;right:0;background:white;padding:24px 6%;border-bottom:1px solid var(--line)}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:18px}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:45px 7% 35px}h1{font-size:76px;letter-spacing:-3px}.hero .eyebrow{margin-bottom:20px}.intro{font-size:17px}.doctor{margin-top:30px}figure{height:390px}.photo-label{left:26px;bottom:45px}.principles{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:24px 7%;font-size:12px}.principles i{display:none}.section{padding:65px 7%}.about,.contact{grid-template-columns:1fr;gap:35px}.heading{display:block;margin-bottom:25px}.heading>p{margin-top:24px}.services{grid-template-columns:1fr}.services .service-card:nth-last-child(2){border-bottom:0}summary{padding:22px 0}.steps{grid-template-columns:1fr;gap:30px;margin-top:38px}.steps article{display:grid;grid-template-columns:40px 1fr;gap:0 20px}.steps article>span{grid-row:span 2;font-size:30px}.steps h3{margin:2px 0 10px}.steps p{grid-column:2}.contact-card{padding:25px}footer{gap:30px;flex-wrap:wrap;padding:35px 7%}footer p{margin:0}footer>a:last-child{width:100%}h2{font-size:40px}.eyebrow{font-size:11px}}@media(max-width:360px){h1{font-size:65px}h2{font-size:34px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Vitasmile identity: white, deep blue and brushed gold */
:root{--ink:#062b53;--blue:#a77524;--muted:#526477;--line:#ded8cd;--gold:#b88631}body{background:#fff}.topbar{display:flex;justify-content:space-between;gap:20px;padding:8px 6%;background:#05284b;color:white;font-size:13px}.topbar a{color:#f3d99f}header{height:128px;border-bottom:1px solid #eee7db}.brand{display:block;line-height:0;flex-shrink:0}.brand img{display:block;width:143px;height:103px;object-fit:contain}nav{gap:27px;font-size:14px}nav .nav-phone{background:#062b53;color:white;border:1px solid #b88631;padding:12px 20px}.hero{position:relative;min-height:620px;grid-template-columns:47% 53%}.hero-copy{padding-top:66px;padding-bottom:80px}.hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(72px,7.2vw,110px);letter-spacing:-4px}.hero h1 em{color:#aa7625}.hero .eyebrow{color:#93671e}.hero figure{margin:28px 28px 28px 0;border-radius:120px 0 0 0}.hero figure img{object-position:52% center}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px}.button{background:linear-gradient(110deg,#062b53,#0b416e);border:1px solid #a77524;border-radius:3px;gap:18px;box-shadow:0 6px 18px #062b5310}.button:hover{background:#124c7e}.text-link{font-size:14px;border-bottom:1px solid #b88631}.doctor{border-left-color:#c79845}.brand-wave{display:block;width:100%;height:100px;margin-top:-52px;position:relative;z-index:2;pointer-events:none}.principles{background:#05284b;color:white;border:0;padding-top:14px;padding-bottom:30px}.principles i{color:#d7b369}.section{position:relative}.about{padding-top:110px}.section .eyebrow{color:#91641b}.signature{border-top:1px solid #e5d6ba;padding-top:22px;font-family:Georgia,serif;font-size:20px}.signature small{font-family:Arial,sans-serif;color:#906822}h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(38px,4vw,58px);letter-spacing:-1.5px}h2 em{color:#a77524}.care{background:#f8f9fa;border-top:1px solid #e7dcc7;border-bottom:1px solid #e7dcc7}.services .service-card{border-color:#dbd6ca}.services .service-card:nth-last-child(-n+2){border-color:#dbd6ca}summary b{color:#987027}summary span{color:#a77524}.steps article{border-top-color:#c49a4f}.steps article>span{color:#b88631}.contact{overflow:hidden;background:linear-gradient(125deg,#052d56,#001e3b);padding-bottom:115px}.contact:after{content:'';position:absolute;pointer-events:none;width:850px;height:240px;border:13px solid #b58a3d;border-radius:50%;right:-290px;bottom:-220px;transform:rotate(-18deg);box-shadow:0 0 0 18px #073969,0 0 0 21px #d2b273}.contact .eyebrow{color:#e4c17d}.contact em{color:#e4c17d}.contact p{color:#dae3ec}.contact-card{border:1px solid #a68447;background:#ffffff05;border-radius:4px;padding:36px}.contact-card h3{font-family:Georgia,serif;font-size:30px;margin-bottom:12px}.contact-card>p{margin-top:8px!important}.contact-phone{font:40px/1.4 Georgia,serif;color:#f2d69e}.contact .call-note{font-size:14px;margin-top:8px}.gold-button{background:linear-gradient(110deg,#e9cd90,#c79a48);color:#05284b;font-weight:600;box-shadow:none}.gold-button:hover{background:#f0d9a8}.social-row{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;font-size:14px}.social-row a{color:#f1d293}.hours-note{font-size:13px;margin-bottom:0}footer{padding-top:28px;padding-bottom:28px;border-top:3px solid #b88631}footer .brand img{width:132px;height:96px}footer p{font-size:13px}footer p span{font-size:12px}footer>a:last-child{color:#826021}@media(max-width:1000px){nav{gap:17px}.hero-copy{padding-left:10%;padding-right:7%}.hero figure{margin-right:20px}.hero h1{font-size:80px}.hero-actions{gap:15px}.button{font-size:13px;padding:13px 17px}.contact-card{padding:27px}}@media(max-width:720px){.topbar{padding:8px 6%;font-size:11px;gap:10px}.topbar span{max-width:150px}header{height:105px}.brand img{width:117px;height:85px}nav{top:105px}.hero{grid-template-columns:1fr}.hero-copy{padding:42px 7% 36px}.hero h1{font-size:77px}.hero figure{height:390px;margin:0 0 20px 7%;border-radius:70px 0 0 0}.brand-wave{height:65px;margin-top:-50px}.principles{padding-top:20px;padding-bottom:25px}.about{padding-top:65px}.contact{padding-bottom:90px}.contact-phone{font-size:36px}.contact-card{padding:25px}.contact-card h3{font-size:29px}.gold-button{font-size:14px}.social-row{display:block}.social-row a{display:block;margin-top:8px}.contact:after{right:-430px}footer{padding-top:22px;padding-bottom:25px}.button{font-size:14px}}@media(max-width:360px){.hero h1{font-size:67px}.topbar{font-size:10px}.contact-phone{font-size:32px}}

.opening-hours{width:100%;border-collapse:collapse;font-size:16px;line-height:1.6}.opening-hours caption{text-align:left;color:#e4c17d;font:24px/1.3 Georgia,serif;margin-bottom:16px}.opening-hours th,.opening-hours td{padding:8px 0;border-bottom:1px solid #ffffff20}.opening-hours th{text-align:left;font-weight:400;color:#dae3ec}.opening-hours td{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;color:#fff}.opening-hours tr:last-child>*{border-bottom:0}

/* Cinematic motion: masks, depth and a living gold ribbon. */
.hero{overflow:clip;perspective:1400px}.word-mask{display:inline-block;vertical-align:bottom;padding-bottom:.14em;margin-bottom:-.14em;overflow:clip}.motion-word{display:inline-block;transform-origin:0 100%}.hero h1 .word-mask{padding-right:.09em;margin-right:-.09em}.hero figure{isolation:isolate}.hero figure:before{content:'';position:absolute;inset:-30%;z-index:3;pointer-events:none;background:linear-gradient(115deg,transparent 34%,#fff5 47%,#f3d48e40 50%,transparent 61%);opacity:0;transform:translateX(-100%)}
.scroll-progress{display:none;position:fixed;top:0;left:0;right:0;height:3px;z-index:50;background:linear-gradient(90deg,#987027,#f1d79d,#b88631);transform:scaleX(var(--scroll-progress,0));transform-origin:left;pointer-events:none}
.ribbon-light{display:none;stroke:#fff2ce;stroke-width:2.5;stroke-dasharray:10 90;stroke-linecap:round;fill:none}
.motion-toggle{position:fixed;bottom:16px;left:16px;z-index:30;border:1px solid #c8a76d80;background:#fffef9ed;color:#163753;border-radius:30px;padding:9px 14px;font:14px/1.4 Arial,sans-serif;box-shadow:0 4px 20px #001e3b12;cursor:pointer;backdrop-filter:blur(10px)}.motion-toggle[hidden]{display:none}.motion-toggle:focus-visible{outline:3px solid #b88631;outline-offset:3px}
.services .service-card{position:relative;isolation:isolate}.services .service-card:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(300px circle at var(--light-x,50%) var(--light-y,50%),#dfbd742e,transparent 75%);opacity:0}.contact-card{position:relative;isolation:isolate}.contact-card:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(380px circle at var(--light-x,50%) var(--light-y,30%),#f3d49220,transparent 75%);opacity:0}.steps{position:relative}.steps:before,.steps:after{content:'';position:absolute;top:0;left:0;right:0;height:2px;pointer-events:none}.steps:before{background:#e9dfcc}.steps:after{background:linear-gradient(90deg,#977025,#e8c77e,#b88631);transform:scaleX(var(--steps-progress,1));transform-origin:left}
@media(prefers-reduced-motion:no-preference){
 .motion-enabled .scroll-progress,.motion-enabled .ribbon-light{display:block}
 .motion-enabled .ribbon-light{animation:ribbon-travel 7s linear infinite}
 .motion-enabled .motion-reveal{opacity:0;transform:translate3d(0,42px,0);transition:opacity .85s ease,transform 1.15s cubic-bezier(.16,1,.3,1);transition-delay:var(--reveal-delay,0ms)}
 .motion-enabled .motion-reveal.is-revealed{opacity:1;transform:translate3d(0,0,0)}
 .motion-enabled .motion-heading .motion-word{transform:translate3d(0,115%,0) rotate(5deg);opacity:0;transition:transform 1.15s cubic-bezier(.16,1,.3,1),opacity .8s ease;transition-delay:calc(var(--word-order,0)*65ms)}
 .motion-enabled .motion-heading.is-revealed .motion-word{transform:translate3d(0,0,0) rotate(0);opacity:1}
 .motion-enabled .hero h1 .motion-word{transition-duration:1.4s;transition-delay:calc(.12s + var(--word-order,0)*130ms)}
 .motion-enabled:not(.intro-ready) .hero h1 .motion-word{transform:translate3d(0,115%,0) rotate(5deg);opacity:0}
 .motion-enabled .hero-copy{transform:translate3d(0,var(--copy-drift,0px),0)}
 .motion-enabled .hero figure{box-shadow:0 24px 55px -35px #05284b70}
 .motion-enabled .hero figure img{transform:scale(var(--photo-scale,1));transform-origin:50% 50%;transition:transform .18s ease-out}
 .motion-enabled .hero h1 em{color:#aa7625}
 .motion-enabled .contact:after{transform:translateY(var(--contact-drift,0px)) rotate(-18deg)}
 .motion-enabled .contact-card{transition:border-color .35s ease,box-shadow .35s ease,opacity .85s ease,transform 1.15s cubic-bezier(.16,1,.3,1)}
 .motion-enabled .steps article>span{display:inline-block;transition:transform .5s cubic-bezier(.16,1,.3,1),color .4s ease}
 .motion-enabled .services .service-card:before,.motion-enabled .contact-card:before{transition:opacity .4s ease}
 .button{transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s ease,background .3s ease}
 .services .service-title{transition:color .3s ease}.services .service-title span{transition:transform .4s cubic-bezier(.16,1,.3,1)}
 .motion-enabled .services .service-card[open]>p{animation:service-open .45s ease both}
 @keyframes photo-sheen{0%{opacity:0;transform:translateX(-100%)}20%{opacity:.7}100%{opacity:0;transform:translateX(100%)}}

 @keyframes ribbon-travel{to{stroke-dashoffset:-100}}
 @keyframes service-open{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .motion-enabled .services .service-card:hover:before,.motion-enabled .contact-card:hover:before{opacity:1}
 .motion-enabled .services .service-card:hover summary{color:#986a20}
 .motion-enabled .contact-card:hover{border-color:#e4c17d;box-shadow:0 0 45px #c89c4017}
 .motion-enabled .button:hover{transform:translateY(-4px);box-shadow:0 12px 25px #001e3b24}
 .motion-enabled .button:active{transform:translateY(-1px)}
 .motion-enabled .steps article:hover>span{transform:translateY(-7px);color:#90601e}
}
@media(max-width:720px){
 .motion-toggle{bottom:10px;left:10px;font-size:12px;padding:8px 12px}
 .steps:before,.steps:after{top:0;bottom:0;left:0;right:auto;width:2px;height:auto}
 .steps:after{transform:scaleY(var(--steps-progress,1));transform-origin:top}
 .steps article{padding-left:15px}
}
@media(max-width:720px) and (prefers-reduced-motion:no-preference){
 .motion-enabled .motion-reveal{transform:translate3d(0,24px,0)}
 .motion-enabled .motion-reveal.is-revealed{transform:none}
 .motion-enabled .motion-heading .motion-word{transition-delay:calc(var(--word-order,0)*45ms)}
 .motion-enabled .hero h1 .motion-word{transition-delay:calc(.1s + var(--word-order,0)*100ms)}
}
@media(prefers-reduced-motion:reduce){.motion-word,.motion-reveal,.hero-copy,.hero figure,.hero figure img{transform:none!important;opacity:1!important}.ribbon-light,.scroll-progress,.motion-toggle{display:none!important}.steps:after{transform:none}}
@media print{.motion-word,.motion-reveal{transform:none!important;opacity:1!important}.motion-toggle,.scroll-progress{display:none!important}}

@media(prefers-reduced-motion:no-preference){
 .motion-enabled .signature{border-top-color:transparent;background:linear-gradient(90deg,#b88631,#ead5a7) left top / 0 1px no-repeat;transition:background-size 1.4s ease,opacity .85s ease,transform 1.15s cubic-bezier(.16,1,.3,1)}
 .motion-enabled .signature.is-revealed{background-size:100% 1px}
}
@media(max-width:720px) and (prefers-reduced-motion:no-preference){
}

@media(min-width:721px) and (max-width:1150px){nav{gap:16px;font-size:13px}nav .nav-booking{display:none}}

.contact-email{display:block;width:fit-content;max-width:100%;margin-top:8px;color:#f2d69e;font-size:18px;overflow-wrap:anywhere;text-underline-offset:4px}.contact-email:hover{text-decoration:underline}

/* Email accompanies every booking phone link. */
.topbar-booking,.nav-booking,.hero-booking{display:flex;flex-direction:column;gap:3px}
.topbar{align-items:center}.topbar-booking,.nav-booking{align-items:flex-end}
.topbar-booking{flex-shrink:0}.topbar-booking a{white-space:nowrap}
.booking-email{font-size:14px;line-height:1.5;text-underline-offset:3px;letter-spacing:0}
.booking-email:hover{text-decoration:underline}.nav-booking .booking-email{color:#826021}
.hero-booking{align-items:flex-start;gap:7px}.hero-booking .booking-email{color:#826021}
@media(max-width:720px){.nav-booking{align-items:stretch;gap:8px}.nav-booking .booking-email{padding:0;font-size:14px}.topbar-booking .booking-email{font-size:12px}}

.hero-booking{align-items:stretch;gap:8px;max-width:100%}.hero-booking .button{justify-content:space-between}.hero-booking .email-button{background:linear-gradient(110deg,#e9cd90,#c79a48);color:#05284b}.hero-booking .email-button:hover{background:#f0d9a8}

.hero-booking .other-email{align-self:center;font-size:13px;line-height:1.5;color:#526477;text-decoration:underline;text-underline-offset:3px}

.doctor{display:flex;align-items:center;gap:18px}.doctor-name{min-width:0}.doctor-instagram{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;border:1px solid #c7984566;border-radius:50%;color:#a77524;background:#fffaf0}.doctor-instagram:hover{color:#062b53;background:#f5e8cb;border-color:#b88631}.doctor-instagram svg{display:block}@media(prefers-reduced-motion:no-preference){.doctor-instagram{transition:color .2s ease,background .2s ease,border-color .2s ease}}

.contact-instagram{display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin-top:12px;border:1px solid #c7984580;border-radius:50%;color:#f2d69e;background:#ffffff08}.contact-instagram:hover{color:#05284b;background:#e4c17d;border-color:#e4c17d}.contact-instagram svg{display:block}.price-contact .contact-instagram{margin-top:4px}@media(prefers-reduced-motion:no-preference){.contact-instagram{transition:color .2s ease,background .2s ease,border-color .2s ease}}

@media(min-width:721px) and (max-width:960px){#menu{display:block;background:none;border:0;color:var(--ink);font:14px Arial,sans-serif;padding:12px}header nav{display:none;position:absolute;top:128px;left:0;right:0;background:white;padding:24px 6%;border-bottom:1px solid var(--line)}header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:18px}header nav .nav-booking{display:flex;align-items:stretch}header nav .nav-phone{display:block}}

.topbar{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:20px;align-items:center}.topbar .topbar-doctor{justify-self:center;max-width:none;text-align:center;font-size:14px;font-weight:600;color:#f3d99f}.topbar .topbar-booking{justify-self:end}.topbar .topbar-tagline{justify-self:start}@media(max-width:720px){.topbar{grid-template-columns:minmax(0,1fr) auto;gap:6px 14px}.topbar .topbar-doctor{grid-column:1 / -1;grid-row:1;font-size:13px}.topbar .topbar-tagline{grid-column:1;grid-row:2}.topbar .topbar-booking{grid-column:2;grid-row:2}}

/* Unified white typography in the top contact strip. */
.topbar{font:400 14px/1.5 Arial,sans-serif;color:#fff;border-bottom:6px solid var(--gold)}
.topbar .topbar-tagline,.topbar .topbar-doctor,.topbar .topbar-booking a,.topbar .booking-email{font:inherit;letter-spacing:normal;color:#fff}
@media(max-width:720px){.topbar{font-size:12px}}

/* Patient-friendly illustrations inside the service accordions. */
.services{align-items:start}
.service-visual{margin:0 0 28px 37px;overflow:hidden;border:1px solid #e5dccb;border-radius:16px;background:#fff;box-shadow:0 10px 28px #062b5308}
.service-visual>img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;background:#fff}
.service-visual-copy{padding:17px 20px 19px;border-top:1px solid #f0eadf}
.service-visual-copy p{margin:0;color:#163655;font-size:14px;line-height:1.65}
.service-visual-copy small{display:block;margin-top:8px;color:#697584;font-size:11px;line-height:1.5}
.service-stages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;list-style:none;counter-reset:stage;margin:0;padding:0 15px 18px}
.service-stages li{counter-increment:stage;text-align:center;color:#163655;font-size:12px;line-height:1.5}
.service-stages li:before{content:counter(stage);display:flex;align-items:center;justify-content:center;width:25px;height:25px;margin:0 auto 8px;border-radius:50%;background:#f4ecd9;color:#805c1c;font-size:12px;font-weight:600}
@media(prefers-reduced-motion:no-preference){.services .service-card[open] .service-visual{animation:service-open .45s ease both}}
@media(max-width:720px){.service-visual{margin-left:0}.service-visual-copy{padding:15px 16px}.service-stages{gap:8px;padding:0 10px 16px}.service-stages li{font-size:11px}}

/* Dental portrait, with full head-to-waist framing. */
.doctor-portrait{width:100%;max-width:420px;margin-top:32px;padding:7px;background:#062b53;border:1px solid #b88631;border-radius:80px 12px 12px 12px;box-shadow:0 18px 45px #062b5314;overflow:hidden}
.doctor-portrait-window{position:relative;overflow:hidden;border-radius:72px 6px 0 0;background:#e6e6df}
.doctor-portrait-window img{display:block;width:100%;max-width:100%;height:auto}
.doctor-portrait-caption{padding:18px 18px 16px;border-top:2px solid #c69b50;color:#fff}
.doctor-portrait-caption strong{display:block;font-family:Georgia,'Times New Roman',serif;font-size:21px;font-weight:400;line-height:1.4}
.doctor-portrait-caption span{display:block;margin-top:4px;font-size:14px;color:#e5c890}
@media(max-width:720px){.doctor-portrait{max-width:380px;margin-top:27px;margin-bottom:28px}.doctor-portrait-caption strong{font-size:20px}}

/* Compact social links and inline phone/email in the top utility bar. */
.topbar-booking{flex-direction:row;align-items:center;gap:16px}.topbar-social{display:flex;align-items:center;gap:10px}.topbar-social a{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;color:#f3d99f;border:1px solid #c7984566;border-radius:50%;text-decoration:none}.topbar-social a:hover{color:#fff;background:#ffffff12;border-color:#e4c17d}.topbar-social svg{width:19px;height:19px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.topbar-social a:nth-child(2) svg{fill:currentColor;stroke:none}.topbar-social .social-dot{fill:currentColor;stroke:none}
@media(max-width:720px){.topbar .topbar-social{grid-column:1;grid-row:2}.topbar .topbar-booking{grid-column:2;grid-row:2;gap:9px}.topbar .topbar-booking a{font-size:11px}.topbar-social a{width:32px;height:32px}.topbar-social svg{width:17px;height:17px}}

/* Full-width treatment sequence, preserving all three panels and arrows. */
.service-visual-fillings>img{aspect-ratio:auto;width:100%;height:auto;object-fit:contain}

/* Larger, three-stage photo sequence for aesthetic fillings. */
.service-visual-fillings{overflow:visible}
.filling-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2.2vw,24px);padding:14px;min-height:clamp(320px,52vw,570px);background:linear-gradient(145deg,#f8fbfd,#fff);border-radius:15px}
.filling-step{position:relative;min-width:0;overflow:visible;border:1px solid #e6dfd2;border-radius:13px;background-color:#d9e8ef;background-image:url('/assets/services/vyplne-postup-panel.png');background-repeat:no-repeat;background-size:auto 300%;background-position-x:50%;box-shadow:0 8px 22px #08294b12}
.filling-step-before{background-position-y:0%}.filling-step-prepared{background-position-y:50%}.filling-step-after{background-position-y:100%}
.filling-step span{position:absolute;left:10px;right:10px;bottom:10px;padding:8px 7px;border:1px solid #d8b56f;border-radius:8px;background:#082b50eF;color:#fff;text-align:center;font-size:13px;font-weight:600;line-height:1.25;box-shadow:0 3px 10px #00152a33}
.filling-step:not(:last-child)::after{content:'›';position:absolute;z-index:2;top:50%;right:-28px;display:grid;place-items:center;width:32px;height:32px;transform:translateY(-50%);border-radius:50%;background:#0c3156;color:#e8c67f;font-size:27px;line-height:1;box-shadow:0 3px 10px #08294b25}
@media(max-width:720px){.service-visual-fillings{margin-left:0}.filling-steps{gap:12px;padding:9px;min-height:clamp(280px,74vw,410px)}.filling-step{border-radius:9px}.filling-step span{left:5px;right:5px;bottom:6px;padding:6px 3px;font-size:11px}.filling-step:not(:last-child)::after{right:-19px;width:26px;height:26px;font-size:22px}}

/* Keep the complete three-stage fillings photo visible without cropping. */
.service-visual-fillings>img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain}

.doctor-portrait-link{display:block;color:inherit;text-decoration:none;transition:transform .25s ease,box-shadow .25s ease}.doctor-portrait-link:hover{transform:translateY(-3px);box-shadow:0 22px 48px #062b5326}

/* Original supplied autograph; isolated from the page's other motion. */
.doctor-autograph{width:min(100%,440px);height:auto;margin:30px auto 0;padding:10px 0 0;line-height:0;background:#fff;overflow:visible;box-shadow:none;border:0}
.doctor-autograph::before,.doctor-autograph::after{content:none;display:none}
.doctor-autograph svg{display:block;width:100%;height:auto;overflow:visible}
.autograph-pencil{opacity:0;pointer-events:none}
.doctor-autograph.is-writing .autograph-ink{mask:url(#signature-writing-mask)}
.doctor-autograph.is-writing .autograph-caption{opacity:0}
.doctor-autograph.is-signed .autograph-caption{opacity:1;transition:opacity .5s ease}
@media(prefers-reduced-motion:reduce){.doctor-autograph .autograph-ink{mask:none!important}.doctor-autograph .autograph-caption{opacity:1!important;transition:none!important}.autograph-pencil{display:none}}

.service-radiographs{padding:14px;display:grid;gap:18px}.service-radiographs figure{margin:0;min-width:0}.service-radiographs figure img{display:block;width:100%;height:auto;border-radius:8px}.service-radiographs figcaption{position:static;padding:10px 4px 0;background:none;color:#163655;font-size:14px;line-height:1.5;text-align:left}@media(max-width:720px){.service-radiographs{padding:10px;gap:14px}}

.service-radiographs{gap:8px}.service-radiographs figure{height:auto;min-height:0;background:transparent;overflow:visible}.service-radiographs figure::before,.service-radiographs figure::after{display:none}.service-radiographs figure img{position:static;inset:auto;display:block;width:100%;height:auto;object-fit:contain;aspect-ratio:auto}.service-radiographs figcaption{display:none}

.hygiene-photo-crop{position:relative;aspect-ratio:658/583;overflow:hidden;background:#fff}.hygiene-photo-crop img{position:absolute;top:-81.8182%;left:0;display:block;width:100%;height:auto;max-width:none;object-fit:initial}

.fillings-photo-crop{position:relative;aspect-ratio:1;overflow:hidden;background:#fff}.fillings-photo-crop img{position:absolute;top:-66.7173%;left:0;display:block;width:100%;height:auto;max-width:none;object-fit:initial}

.whitening-photo-crop{position:relative;aspect-ratio:658/526;overflow:hidden;background:#fff}.whitening-photo-crop img{position:absolute;top:-96.0076%;left:0;display:block;width:100%;height:auto;max-width:none;object-fit:initial}

.children-photo-crop{position:relative;aspect-ratio:1;overflow:hidden;background:#fff}.children-photo-crop img{position:absolute;top:-66.7173%;left:0;display:block;width:100%;height:auto;max-width:none;object-fit:initial}

.crowns-photo-crop{position:relative;aspect-ratio:658/660;overflow:hidden;background:#fff}.crowns-photo-crop img{position:absolute;top:-72.4242%;left:0;display:block;width:100%;height:auto;max-width:none;object-fit:initial}

.service-visual img.implant-photo{position:static;display:block;width:100%;height:auto;min-height:0;aspect-ratio:auto;object-fit:contain}

.endo-photo-crop{position:relative;aspect-ratio:658/438;overflow:hidden;background:#fff}.endo-photo-crop img{position:absolute;top:-125.3425%;left:0;display:block;width:100%;height:auto;max-width:none;object-fit:initial}

.services .service-card{border-top:1px solid #dbd6ca}.service-title{display:flex;align-items:center;gap:22px;padding:27px 0;margin:0;font-size:20px;line-height:1.4;font-weight:400}.service-title b{font-size:12px;color:#987027;font-weight:400;flex-shrink:0}.service-card>p{padding:0 25px 20px 37px;margin:0;font-size:15px}

.service-title{gap:12px}.service-title b{font-size:16px;white-space:nowrap}
@media(max-width:720px){header nav#nav{display:flex;visibility:hidden;opacity:0;transform:translateY(-12px);pointer-events:none;transition:opacity .28s ease,transform .35s ease,visibility .35s;transform-origin:top}header nav#nav.open{visibility:visible;opacity:1;transform:translateY(0);pointer-events:auto}header nav#nav a{transition:transform .3s ease}header nav#nav:not(.open) a{transform:translateY(-5px)}}
@media(prefers-reduced-motion:reduce){header nav#nav,header nav#nav a{transition:none}}

/* Desktop dropdown navigation. */
@media(min-width:721px){header #menu{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 20px;border:1px solid #b58a3d;border-radius:6px;background:#fff;color:#052d56;font:inherit;cursor:pointer;transition:background .25s ease,box-shadow .25s ease}header #menu:hover,header #menu[aria-expanded="true"]{background:#faf5e9;box-shadow:0 4px 16px #052d5610}header nav#nav{display:flex;position:absolute;top:calc(100% - 1px);right:5.8%;width:min(390px,88vw);flex-direction:column;align-items:stretch;gap:0;padding:14px 20px;background:#fff;border:1px solid #e5d6ba;border-radius:0 0 14px 14px;box-shadow:0 18px 45px #052d5620;visibility:hidden;opacity:0;transform:translateY(-14px) scale(.98);transform-origin:top right;pointer-events:none;transition:opacity .3s ease,transform .35s ease,visibility .35s}header nav#nav.open{visibility:visible;opacity:1;transform:translateY(0) scale(1);pointer-events:auto}header nav#nav a{padding:12px 10px;border-bottom:1px solid #eee8dc;transition:background .2s ease,color .2s ease}header nav#nav a:last-child{border-bottom:0}header nav#nav a:hover{background:#faf5e9;color:#987027}}
@media(prefers-reduced-motion:reduce){header nav#nav,header #menu{transition:none}}

.endo-gallery{display:grid;gap:8px}.endo-cones-crop,.endo-instrument-crop{position:relative;overflow:hidden;background:transparent}.endo-cones-crop{aspect-ratio:1}.endo-instrument-crop{aspect-ratio:550/417}.endo-cones-crop img,.endo-instrument-crop img{position:absolute;left:0;display:block;height:auto;max-width:none;object-fit:initial}.endo-cones-crop img{width:100%;top:-66.7173%}.endo-instrument-crop img{width:119.6364%;top:-134.2926%}

.document-list{list-style:none;counter-reset:document;max-width:760px;padding:0;margin:36px 0}.document-list li{counter-increment:document;padding:20px 0;border-bottom:1px solid #e5d6ba;font-size:20px}.document-list li::before{content:counter(document) ") ";color:#987027}

.document-title{display:inline;font-size:20px;letter-spacing:normal}.document-pending{font-size:16px;color:#666}.document-actions{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:16px;font-size:16px}.document-actions a{color:#123858;text-decoration:underline;text-underline-offset:4px;padding:6px 0}
.language-switch{display:flex;align-items:center;justify-content:center;gap:12px;margin:10px 0;font-size:14px;line-height:1.5;letter-spacing:normal}.language-switch a{display:inline-flex;align-items:center;justify-content:center;min-width:40px;min-height:40px;padding:4px 8px;border:1px solid transparent;border-radius:6px;text-decoration:none}.language-switch a[aria-current="true"]{border-color:#987027;font-weight:700}.language-switch a:hover,.language-switch a:focus-visible{outline:2px solid #987027;outline-offset:2px}.language-footer{justify-content:center}

/* Display the supplied artwork without its black letterbox margins. */
.doctor-portrait-window img.doctor-microscope-photo{width:100%;height:auto;aspect-ratio:658 / 746;object-fit:cover;object-position:center}

.about-doctor-photo img.doctor-microscope-photo{width:100%;height:auto;aspect-ratio:658 / 746;object-fit:cover;object-position:center}

/* Paired practice visualisations: show only the interiors from the supplied sheets. */
.hero figure.clinic-gallery{height:auto;min-height:0;align-self:center;padding:18px;margin:28px 28px 28px 0;border:1px solid #dcc89f;border-radius:22px;background:linear-gradient(145deg,#f2f6fa,#fff);overflow:hidden}
.hero figure.clinic-gallery::before,.hero figure.clinic-gallery::after{display:none}
.clinic-gallery-images{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}
.clinic-view{position:relative;min-width:0;overflow:hidden;border-radius:12px;background:#dce3ea;border:1px solid #e1e6ec}
.clinic-view-left{aspect-ratio:644 / 521}
.clinic-view-right{aspect-ratio:1140 / 949}
.hero .clinic-view img{position:absolute;display:block;max-width:none;height:auto;object-fit:initial;object-position:initial}
.hero .clinic-view-left img{width:133.229814%;left:-1.708075%;top:-13.051823%}
.hero .clinic-view-right img{width:112.54386%;left:-10%;top:-13.69863%}
.hero .clinic-gallery figcaption{position:static;padding:16px 4px 2px;color:#163655;font-size:14px;line-height:1.5;text-align:center;letter-spacing:normal}
@media(max-width:720px){.hero figure.clinic-gallery{margin:0 7% 24px;padding:14px;border-radius:18px}.clinic-gallery-images{grid-template-columns:minmax(0,1fr);gap:14px}.hero .clinic-gallery figcaption{padding-top:14px}}

.contact-map{width:100%;margin:20px 0;overflow:hidden;border:1px solid #d5b775;border-radius:12px;background:#eef2f5}.contact-map iframe{display:block;width:100%;height:320px;border:0}.contact-map iframe:focus-visible{outline:3px solid #e4c17d;outline-offset:-3px}@media(max-width:720px){.contact-map iframe{height:280px}}

/* Align the contact heading with the heading inside the location card. */
.contact{align-items:start}.contact>div:first-child{padding-top:37px}@media(max-width:1000px){.contact>div:first-child{padding-top:28px}}@media(max-width:720px){.contact>div:first-child{padding-top:0}}

/* Unframed location section, with headings kept aligned. */
.contact .contact-card,.contact .contact-card:hover{border:0;background:transparent;border-radius:0;box-shadow:none}.contact .contact-card:before{display:none}.contact>div:first-child{padding-top:36px}@media(max-width:1000px){.contact>div:first-child{padding-top:27px}}@media(max-width:720px){.contact>div:first-child{padding-top:0}}

.contact .contact-map,.contact .contact-map iframe{border:0;border-radius:0;box-shadow:none;outline:none}

.contact-card .opening-break{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:8px 20px;margin:24px 0 0;padding:20px 0 4px;border-top:2px solid #d5b775;color:#fff;font-size:1rem;line-height:1.5}.opening-break span{font-weight:600}.opening-break strong{color:#f2d69e;font-size:1.125rem;white-space:nowrap}

.periodontal-visual{display:block;padding:16px}.periodontal-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.periodontal-comparison figure{margin:0;min-width:0}.periodontal-photo{position:relative;aspect-ratio:238/158;overflow:hidden;border-radius:8px;background:#fff}.periodontal-photo img{position:absolute;width:315.126%;max-width:none;height:auto;left:-107.563%;top:-100.633%;display:block}.periodontal-comparison figcaption{font-size:14px;line-height:1.5;margin-top:10px;color:#062b53}.periodontal-visual .periodontal-caption{font-size:14px;line-height:1.6;margin:16px 0 8px}.periodontal-visual .periodontal-source{font-size:12px;line-height:1.6;margin:0}.periodontal-source a{color:#526477;text-underline-offset:3px}@media(max-width:500px){.periodontal-comparison{gap:10px}.periodontal-comparison figcaption{font-size:14px}}

.services .periodontal-service{grid-column:1/-1}.periodontal-collage-link{display:block}.periodontal-visual img.periodontal-collage{position:static;display:block;width:100%;max-width:100%;height:auto;aspect-ratio:auto;object-fit:contain}

.services .reconstruction-service{grid-column:1/-1}.reconstruction-visual{display:block;padding:16px}.reconstruction-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.reconstruction-comparison figure{margin:0;min-width:0}.reconstruction-photo{position:relative;aspect-ratio:2/1;overflow:hidden;border-radius:8px;background:#fff}.reconstruction-visual .reconstruction-photo img{position:absolute;display:block;width:300%;max-width:none;height:auto;left:-100%;object-fit:initial}.reconstruction-before img{top:0}.reconstruction-after img{top:-100%}.reconstruction-comparison figcaption{margin-top:10px;font-size:1rem;line-height:1.5;color:#062b53}.reconstruction-visual .reconstruction-source{margin:16px 0 0;font-size:12px;line-height:1.6}.reconstruction-source a{color:#526477;text-underline-offset:3px}@media(max-width:500px){.reconstruction-comparison{gap:10px}.reconstruction-comparison figcaption{font-size:14px}}

.reconstruction-visual .reconstruction-full-photo{display:block;width:100%;max-width:900px;height:auto;margin:0 auto;border-radius:8px;object-fit:contain}

.periodontal-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:center}.periodontal-visual .periodontal-pair img{position:static;display:block;width:100%;max-width:100%;height:auto;object-fit:contain;border-radius:8px}

.periodontal-pair{align-items:stretch}.periodontal-pair-frame{position:relative;aspect-ratio:658/514;overflow:hidden;border-radius:8px}.periodontal-visual .periodontal-pair-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;border-radius:0}.periodontal-visual .periodontal-pair-healed img{inset:auto;left:0;top:-99.416%;width:100%;height:auto;max-width:none;object-fit:initial}

/* Flat gold ribbon with quiet, overlapping currents of light. */
.topbar{position:relative}
.topbar::after,.topbar::before{content:"";position:absolute;pointer-events:none;left:0;right:0;bottom:-6px;height:6px;box-shadow:none;border:0;transform:none}
.topbar::after{background:linear-gradient(100deg,#b88631,#c99b48 32%,#d0a452 58%,#b88631);background-size:180% 100%;animation:vitasmile-gold-tide 23s ease-in-out infinite}
.topbar::before{z-index:1;background:linear-gradient(100deg,transparent 20%,#ffe9ad00 34%,#ffe9adb0 44%,#fff8e6 50%,#ffe9ad95 56%,transparent 70%),linear-gradient(80deg,transparent 25%,#fff0bc75 42%,#fff5d5b0 50%,transparent 68%);background-size:280% 100%,340% 100%;background-position:140% 0,-120% 0;opacity:.55;mix-blend-mode:normal;animation:vitasmile-gold-currents 11s cubic-bezier(.45,0,.55,1) infinite,vitasmile-gold-breath 5.8s ease-in-out infinite}
@keyframes vitasmile-gold-tide{0%,100%{background-position:0% 0}50%{background-position:100% 0}}
@keyframes vitasmile-gold-currents{0%{background-position:140% 0,-120% 0}50%{background-position:10% 0,15% 0}100%{background-position:-120% 0,140% 0}}
@keyframes vitasmile-gold-breath{0%,100%{opacity:.60}32%{opacity:.95}57%{opacity:.70}78%{opacity:.90}}
@media(prefers-reduced-motion:reduce){.topbar::before,.topbar::after{animation:none}.topbar::before{background-position:50% 0,30% 0;opacity:.45}}
