/* Readable type scale, 18 October 2026. Loaded after the component styles. */
:root{--text-body:17px;--text-small:14px;--text-caption:13px;--text-ui:15px}
body{font-size:var(--text-body);line-height:1.7}
h1,h2,h3{overflow-wrap:anywhere;hyphens:auto}
.eyebrow,.hero .eyebrow,.appointment .eyebrow{font-size:12px;letter-spacing:.12em;line-height:1.6}
.utility{font-size:13px}.brand .brand-sub{font-size:10px;letter-spacing:.09em}
.nav a{font-size:16px}.nav{gap:20px}.header-main{gap:20px}
.header-phone{font-size:17px}.header-phone small{font-size:12px;line-height:1.5}
.btn,.header-book,.hero-actions>.btn,.promo-actions .btn,.price-sidebar .btn{font-size:var(--text-ui);line-height:1.45;min-height:48px}
.btn{max-width:100%;white-space:normal}.cta-band .btn{gap:16px}
.text-link,.hero-actions>.text-link,.intro-strip .text-link,.doctor-card .text-link,.social-banner .text-link,.price-more .text-link{font-size:var(--text-ui);line-height:1.5}
.hero-desc{font-size:18px;line-height:1.8;max-width:500px}
.hero-trust p{font-size:var(--text-small)}.hero-trust strong{font-size:16px}
.hero-note{max-width:350px}.hero-note strong{font-size:16px}.hero-note p{font-size:var(--text-small)}
.hero-stamp{font-size:11px;width:104px;height:104px;letter-spacing:.05em}
.principles strong{font-size:16px}.principles p{font-size:var(--text-small);margin-top:4px}
.section-heading>p,.intro-strip{font-size:var(--text-body)}
.service-card p,.about-copy p,.step p,.review blockquote,.social-banner p,.prose p,.prose ul,.profile p,.profile .qualifications,.legal-copy,.faq-list details p{font-size:var(--text-body);line-height:1.8}
.service-card h3{font-size:24px}.service-card .card-bottom{align-items:flex-start}.service-card .card-bottom span{font-size:16px;line-height:1.5}.service-card .number{font-size:13px}
.doctor-card h3,.doctor-grid .doctor-card h3,.fullarch-team .doctor-card h3{font-size:21px;line-height:1.35}
.doctor-card p,.doctor-grid .doctor-card p,.fullarch-team .doctor-card p{font-size:16px;line-height:1.7;min-height:0;margin-bottom:14px}
.portrait .doctor-label{font-size:13px!important;padding:6px 12px!important;max-width:calc(100% - 24px)}
.portrait-placeholder small{font-size:13px}.about-values div{font-size:16px}
.review-author strong{font-size:16px}.review-author small,.review-source{font-size:var(--text-small)}.review-author .letter{font-size:16px}
.contact-copy .contact-address{font-size:19px}.contact-rows span{font-size:var(--text-small)}.contact-rows a{font-size:19px}.contact-rows p{font-size:16px}
.map-open,.map-label,.map-pin{font-size:var(--text-small)}
.cta-band p{font-size:17px}.footer-brand p,.footer-links,.footer-contact p{font-size:15px;line-height:1.8}
.footer-main h3{font-size:14px}.footer-contact>a{font-size:21px}.footer-bottom,.medical-note{font-size:13px;line-height:1.8}.medical-warning{font-size:20px;line-height:1.5}
.breadcrumbs{font-size:13px;line-height:1.65}.page-hero p{font-size:18px;line-height:1.8;max-width:780px}
.filter,.search-field input,.document-link,.legal-facts dd{font-size:16px}.filter{min-height:48px}
.legal-facts dt{font-size:13px}.notice{font-size:15px;line-height:1.8}.prose .lead{font-size:20px;line-height:1.7}.faq-list summary{font-size:18px;line-height:1.6}
.detail-art p{font-size:15px}.detail-price{font-size:30px}.price-sidebar p{font-size:15px;line-height:1.75}.price-sidebar .eyebrow{font-size:12px}
.price-list-toolbar p,.price-expand-all{font-size:14px;line-height:1.6}
.price-category h2{font-size:27px;overflow-wrap:anywhere}.price-category-subtitle,.price-category-meta>span{font-size:14px;line-height:1.6}.price-category-meta strong{font-size:21px}.price-category-number{font-size:13px}
.price-category-heading{gap:18px;min-height:182px}.price-category-copy{min-width:0}.price-table-head{font-size:12px;letter-spacing:.08em}
.price-category .price-row,.price-row{font-size:16px;line-height:1.7}.price-category .price-row strong,.price-row strong{font-size:17px}.price-category .price-row small,.price-row small{font-size:13px;line-height:1.6}
.promo-subtitle{font-size:14px;line-height:1.6;min-height:45px}.promo-card h3{font-size:25px;min-height:63px}
.promo-note{font-size:16px;line-height:1.7;min-height:82px}.promo-badge{font-size:12px;letter-spacing:.09em}.promo-saving{font-size:12px;top:76px;left:16px;right:auto}
.promo-prices strong{font-size:36px}.promo-prices del{font-size:18px}.promo-conditions p{font-size:14px;line-height:1.8}
.promo-actions{gap:10px}.promo-actions .btn{padding:13px 14px;gap:10px}.promo-more{flex-basis:48px;height:48px}
.prosthetic-promo p{font-size:17px}.prosthetic-promo .lead{font-size:19px}
.appointment{max-width:600px}.appointment .eyebrow{padding-right:30px}.appointment .dialog-description{font-size:16px!important;line-height:1.75}
.dialog-phone strong{font-size:20px}.dialog-phone small,.mail-hint{font-size:13px;line-height:1.6}
.appointment form>label,.form-row,.form-status{font-size:15px}.appointment input:not([type=checkbox]),.appointment select{font-size:16px;min-height:48px}
.consent{font-size:14px!important;line-height:1.65}
.fullarch-lead{font-size:18px;line-height:1.8;max-width:590px}.fullarch-price span{font-size:16px;line-height:1.7}.fullarch-note{font-size:14px;line-height:1.8;max-width:580px}
.fullarch-portrait figcaption,.fullarch-model figcaption{font-size:13px;line-height:1.7}.fullarch-photo-label{font-size:15px}
.fullarch-facts strong{font-size:20px}.fullarch-facts p,.fullarch-jump a,.fullarch-mini,.fullarch-cost-help{font-size:16px;line-height:1.7}
.fullarch-benefits p,.fullarch-steps p,.fullarch-reviews-note{font-size:17px;line-height:1.8}
.fullarch-cost-row strong{font-size:18px}.fullarch-cost-row span,.fullarch-cost-card>p{font-size:14px;line-height:1.75}.fullarch-cost-total span{font-size:16px}.fullarch-cost-row b{font-size:18px}
.fullarch-cost-row>div{min-width:0}.fullarch-cost-row{align-items:flex-start}.fullarch-cost-row strong{overflow-wrap:anywhere}
@media(max-width:1320px) and (min-width:1101px){.header-phone{display:none}.header-main{gap:24px}.nav{gap:22px}}
@media(max-width:1100px){
 .header-main{min-height:84px}.header-phone{display:none}.menu-toggle{display:grid;place-items:center;margin-left:auto}
 .nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);padding:22px;box-shadow:0 20px 35px #061e6112;border-bottom:1px solid var(--line);flex-direction:column;gap:0;align-items:stretch;max-height:calc(100dvh - 90px);overflow:auto}
 .nav.is-open{display:flex}.nav a{font-size:18px;padding:16px;border-bottom:1px solid var(--line)}
 .price-category-number{display:none}.price-category-heading{gap:14px;padding:24px}.price-category h2{font-size:25px}.price-category-meta strong{font-size:19px}
 .service-card h3{font-size:22px}.hero-note{max-width:320px}
}
@media(max-width:900px){.price-layout{grid-template-columns:minmax(0,1fr)}.price-sidebar{position:static}.price-category-heading{gap:20px}.fullarch-hero-grid{grid-template-columns:1fr}.fullarch-portrait{max-width:650px}.fullarch-explainer,.fullarch-consult{grid-template-columns:1fr}}
@media(max-width:760px){
 :root{--text-body:16px}.utility{font-size:12px}.brand .brand-sub{font-size:9px}.header-main{min-height:76px;gap:12px}
 .header-phone{display:block;font-size:0}.hero-desc{font-size:17px;max-width:100%;line-height:1.8}.hero-actions{flex-wrap:wrap;gap:18px}.hero-actions>.btn{white-space:normal}
 .hero-trust{align-items:flex-start}.hero-trust p{font-size:14px}.hero-trust strong{font-size:16px}.hero-note{max-width:300px;padding:18px}.hero-note strong{font-size:15px}.hero-note p{font-size:14px}
 .hero-stamp{font-size:10px;width:90px;height:90px}.principles strong{font-size:16px}.principles p{font-size:14px}
 .section-heading>p,.intro-strip{font-size:16px}.service-grid{grid-template-columns:1fr}.service-card{min-height:0;padding:26px}
 .service-card h3{font-size:24px}.service-card p{font-size:16px}.service-card .card-bottom span{font-size:16px}.service-card .number{font-size:13px}.service-card .service-art{width:66px;height:66px}
 .doctor-grid{grid-template-columns:1fr}.doctor-grid .portrait{max-width:420px;aspect-ratio:1/1.1}.doctor-grid .doctor-card h3,.doctor-card h3,.fullarch-team .doctor-card h3{font-size:21px}.doctor-grid .doctor-card p,.doctor-card p,.fullarch-team .doctor-card p{font-size:16px}
 .fullarch-team{grid-template-columns:1fr}.fullarch-team .portrait{max-width:420px}.doctor-track .doctor-card{flex-basis:85%;max-width:340px;min-width:240px}
 .about-values div{font-size:16px}.step p,.about-copy p,.review blockquote{font-size:16px}.review{padding:26px}.review-author strong{font-size:16px}.review-author small{font-size:14px}
 .social-banner p,.social-banner .text-link{font-size:16px}.contact-rows{grid-template-columns:1fr}.contact-rows a{font-size:19px}.contact-rows p{font-size:16px}.contact-rows span{font-size:14px}
 .cta-band p{font-size:16px}.footer-main{grid-template-columns:1fr 1fr}.footer-contact{grid-column:1/-1}.footer-contact>a{font-size:21px}.footer-main h3{font-size:14px}.footer-links,.footer-brand p,.footer-contact p{font-size:15px}.footer-bottom,.medical-note{font-size:13px}.medical-warning{font-size:18px}
 .mobile-bar .btn{font-size:15px;min-height:48px;padding:12px 14px}.mobile-bar{gap:10px}
 .breadcrumbs{font-size:13px;overflow-wrap:anywhere}.page-hero p{font-size:17px}.prose p,.prose ul,.profile p,.profile .qualifications,.legal-copy{font-size:16px}.prose .lead{font-size:19px}.document-link,.legal-facts dd{font-size:16px}
 .faq-list summary{font-size:17px}.faq-list details p{font-size:16px}.detail-art p{font-size:15px}.filter{font-size:15px}
 .price-list-toolbar{align-items:center}.price-list-toolbar p{font-size:14px;max-width:none}.price-expand-all{font-size:14px}.price-list-toolbar{gap:20px}
 .price-category-heading{padding:24px 20px;min-height:200px;gap:14px}.price-category h2{font-size:25px;line-height:1.3}.price-category-subtitle{font-size:14px;max-width:250px}.price-category-meta strong{font-size:20px}.price-category-meta>span{font-size:13px}
 .price-category .price-row,.price-row{font-size:16px;line-height:1.7;flex-direction:column;gap:8px}.price-category .price-row strong,.price-row strong{font-size:17px}.price-category .price-row small,.price-row small{font-size:13px}.price-table-head{font-size:12px}
 .price-sidebar .eyebrow{font-size:12px}.price-sidebar p{font-size:15px}.notice{font-size:15px}
 .appointment h2{font-size:30px}.dialog-inner{padding:32px 24px}.dialog-description{font-size:16px!important}.dialog-phone strong{font-size:19px}.appointment form>label,.form-row{font-size:15px}
 .fullarch-lead{font-size:17px}.fullarch-price span,.fullarch-jump a{font-size:16px}.fullarch-note{font-size:14px}.fullarch-photo-label{font-size:14px}.fullarch-facts{grid-template-columns:1fr;gap:22px}.fullarch-facts strong{font-size:20px}.fullarch-facts p{font-size:16px}
 .fullarch-benefits,.fullarch-steps{grid-template-columns:1fr}.fullarch-benefits h3,.fullarch-steps h3{font-size:22px}.fullarch-benefits p,.fullarch-steps p,.fullarch-reviews-note{font-size:16px}.fullarch-cost-row strong{font-size:17px}.fullarch-cost-row b{font-size:16px}.fullarch-cost-row span,.fullarch-cost-card>p{font-size:14px}.fullarch-mini{font-size:16px}
}
@media(max-width:600px){
 .promo-subtitle{font-size:14px;min-height:0}.promo-card h3{font-size:26px;min-height:0}.promo-note{font-size:16px;min-height:0}.promo-prices strong{font-size:36px}.promo-prices del{font-size:18px}.promo-badge{font-size:12px}.promo-saving{font-size:12px;top:76px;left:16px;right:auto}.promo-actions .btn{font-size:15px}.promo-conditions p{font-size:14px}
}
@media(max-width:370px){.hero-actions{flex-direction:column;align-items:stretch}.hero-actions>.text-link{align-self:flex-start}.hero-note{max-width:260px}.service-card{padding:24px}.footer-main{grid-template-columns:1fr}.footer-contact{grid-column:auto}.price-list-toolbar{align-items:flex-start}.price-category-heading{padding:22px 18px}.price-category h2{font-size:23px}.promo-content{padding:22px}.promo-actions .btn{font-size:14px;padding:12px 10px;gap:8px}.promo-more{flex-basis:44px}.dialog-inner{padding:30px 20px}.dialog-phone{padding:12px;gap:10px}.dialog-phone strong{font-size:17px}.fullarch-cost-row{flex-direction:column;gap:8px}.fullarch-price strong del{font-size:18px}}

/* Attributed excerpts on individual doctor pages. */
.pd-reviews{background:#eef6fc;border-top:1px solid #dce5ef}
.pd-reviews-intro{max-width:720px;margin:24px 0 36px;font-size:17px;line-height:1.8}
.pd-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.pd-review{min-width:0;display:flex;flex-direction:column;background:white;border:1px solid #dce5ef;border-radius:20px;padding:32px}
.pd-review-top{display:flex;justify-content:space-between;gap:16px;align-items:center;font-size:14px;margin-bottom:28px;color:#415477}
.pd-review-score{font-size:17px;font-weight:600;color:#061e61;white-space:nowrap}
.pd-review-score>span[aria-hidden]{color:#0780b3;margin-right:5px}
.pd-review blockquote{margin:0 0 28px;font-size:23px;line-height:1.6;letter-spacing:-.02em;color:#061e61}
.pd-review-author{font-size:15px;font-weight:600;color:#061e61;margin-top:auto;margin-bottom:14px}
.pd-review-clinic{font-size:15px;line-height:1.7;margin-bottom:24px}
.pd-review-clinic span{display:block;font-size:14px;margin-bottom:4px}
.pd-review .text-link{align-self:flex-start;gap:12px;font-size:15px}
.pd-reviews-bottom{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-top:32px}
.pd-reviews-bottom p{font-size:14px;line-height:1.7;max-width:550px}
.pd-reviews-bottom .text-link{flex-shrink:0;font-size:15px}
@media(max-width:760px){.pd-review-grid{grid-template-columns:1fr}.pd-review{padding:24px}.pd-review blockquote{font-size:21px}.pd-reviews-intro{font-size:16px}.pd-reviews-bottom{align-items:flex-start;flex-direction:column;gap:20px}.pd-review-top{flex-wrap:wrap;gap:10px}}

/* Doctor names are two intact lines; never hyphenate names. */
.doctor-name,.doctor-name *{hyphens:none!important;overflow-wrap:normal!important;word-break:normal!important}
.doctor-name{display:block;max-width:100%;line-height:1.35}
.doctor-name-surname,.doctor-name-given{display:block;white-space:nowrap}
.doctor-name-hero{line-height:1.12}
.doctor-name-hero .doctor-name-surname,.doctor-name-hero .doctor-name-given{line-height:1.14}
.doctor-card h3{max-width:none}
.doctor-name-crumb{display:inline;line-height:1.5}
.doctor-name-crumb .doctor-name-surname,.doctor-name-crumb .doctor-name-given{display:inline}
@media(max-width:760px){
 .doctor-name-hero .doctor-name-surname{font-size:clamp(32px,9vw,52px)}
 .doctor-name-hero .doctor-name-given{font-size:clamp(23px,6.7vw,42px);margin-top:5px;letter-spacing:-.045em}
 .doctor-card h3 .doctor-name{font-size:20px;line-height:1.4}
 .doctor-name-crumb{display:block}
 .doctor-name-crumb .doctor-name-surname,.doctor-name-crumb .doctor-name-given{display:block}
 .legal-section h3 .doctor-name{font-size:18px}
}

/* Price categories: deliberate whole-word lines, including narrow phones. */
.price-category h2,.price-title-line{hyphens:none!important;overflow-wrap:normal!important;word-break:normal!important}
.price-title-line{display:block;white-space:nowrap}
@media(max-width:760px){
 .price-category-heading{display:grid;grid-template-columns:minmax(0,1fr) 34px;gap:14px;align-content:center}
 .price-category-copy{grid-column:1/-1;grid-row:1}
 .price-category h2{max-width:none;font-size:25px;line-height:1.3}
 .price-category-meta{grid-column:1;grid-row:2;order:initial;min-width:0;margin:0}
 .price-category-toggle{grid-column:2;grid-row:2;order:initial;width:34px;height:34px;margin:0}
}
@media(max-width:370px){.price-category h2{font-size:23px}}
