/* LYRA incremental accessibility polish. Existing compositions and bilingual pages retained. */
@font-face{font-family:Libre Bodoni;src:url('../fonts/libre-bodoni-latin-400-normal.woff2') format('woff2');font-display:swap;font-weight:400}
@font-face{font-family:Manrope;src:url('../fonts/manrope-latin-400-normal.woff2') format('woff2');font-display:swap;font-weight:400}
:root{--ivory:#fefbf6;--paper:#f1eee7;--navy:#1f354f;--ink:#1f354f;--muted:#615f58;--gold:#786346;--line:#dcd8cd;--hairline:#dcd8cd;--control-edge:#8a8173;--serif:'Libre Bodoni','Songti SC','SimSun',serif;--sans:'Manrope','Microsoft YaHei','PingFang SC',sans-serif;--rail:max(var(--gutter,64px),calc((100% - 1560px)/2))}
html,body{overflow-x:clip}body,button,input,select,textarea{font-family:var(--sans)}h1,h2,h3,.brand h1,.home-logo{font-family:var(--serif)}h1,h2,h3{min-width:0;overflow-wrap:break-word}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--navy);outline-offset:4px;transition:none}
.home-nav,.nav-side,.menu-button,.language-switch,.line-link,.text-link,.home-footer,.contact-footer,.flow-header>p,.flow-footer,.flow-kicker,.flow-progress,.flow-note,.source-caption,.image-credit,.eyebrow,.kicker,.process-number,.piece-number,.card-number,.grid-footer>p,.archive-note{font-size:12px!important}
.line-link,.text-link,.colour-tabs button,.case-tabs button,.collection-filters button,.stone-filter select,.nav-side a,.contact-footer a,.language-switch a,.stone-reference summary{min-height:44px;display:inline-flex;align-items:center}
.line-link,.text-link{font-size:13px!important}.colour-tabs button,.collection-filters button,.stone-filter,.stone-filter select,.card-meta p,.product-caption p,.case-copy dl>div,.stone-description dl>div,.stone-reference,.stone-panel figcaption{font-size:13px}
.home-section-heading>p,.design-text p,.case-copy>p,.process-grid p,.process-heading p,.section-aside,.flow-intro,.flow-empty p,.flow-note,.lead-form>p,.inherited-preferences p,.how-lyra-steps p{font-size:15px;line-height:1.85}
.stone-filter select,.region-field select{border-bottom-color:var(--control-edge)}.option,.contact-tabs button,.avoid-options button{border-color:var(--control-edge)}.field input,.field select,.field textarea{border-bottom-color:var(--control-edge)}
.case-copy dt,.case-palette-label,.case-palette span{color:var(--gold)}.home-header{padding-inline:var(--rail)}.home-hero-copy{left:var(--rail)}.hero-bottom{padding-inline:var(--rail)}.design-intro h2{text-wrap:balance}.direct-entry{display:block;width:fit-content;padding:12px 0;min-height:44px;font-size:13px;text-decoration:underline;text-underline-offset:5px}.lyra-faq{max-width:1120px}.lyra-faq h2{margin-bottom:30px}.lyra-faq details{border-top:1px solid var(--line);padding:12px 0}.lyra-faq summary{font-size:16px;min-height:44px;padding:10px 0;cursor:pointer}.lyra-faq details p{font-size:15px;color:var(--muted);max-width:72ch;padding:8px 0 20px;line-height:1.8}.contact-footer{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px}.contact-footer [data-contact-channels]{display:contents}.home-footer{flex-wrap:wrap}.home-footer .contact-footer{flex-basis:100%;border-top:1px solid var(--line);padding-top:20px}.flow-footer{padding-bottom:max(28px,env(safe-area-inset-bottom))}.flow-progress,.option span,.field,.check-field,.contact-tabs button,.result-meta,.avoid-options button{font-size:14px}.flow-empty .button-pair{justify-content:center}.flow-heading{font-size:clamp(32px,3.5vw,54px)}.flow-note{max-width:75ch}.flow-actions{gap:14px}.flow-button{font-size:14px}.flow-text-button{font-size:14px}.flow-body .contact-footer{display:flex}.image-credit{font-family:var(--sans)}.section-heading h2 span,.card-meta h3 span,.product-no{font-family:var(--sans)}
@media(max-width:1100px){.home-nav{gap:18px;margin-right:0}.home-header{gap:20px}.colour-tabs{gap:12px 20px}.home-filter-bar{flex-wrap:wrap}.home-hero-copy .direct-entry{font-size:12px}}
@media(max-width:640px){.home-header{padding-inline:24px}.home-hero-copy{left:24px}.hero-bottom{padding-inline:24px}.flow-footer{font-size:12px}.flow-actions{padding-bottom:max(15px,env(safe-area-inset-bottom))}.field input,.field select,.field textarea{font-size:16px}.contact-tabs{flex-wrap:wrap}.contact-tabs button{flex:1 1 40%}.flow-footer span:last-child{font-size:12px}.source-caption{font-size:12px!important}.home-footer nav{flex-wrap:wrap}.home-hero-copy p{margin-top:24px;margin-bottom:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important}}
/* Keep collection typography in the shared system despite legacy component selectors. */
h1,h2,h3{font-family:var(--serif)!important}.hero-copy h2{font-size:clamp(42px,4.4vw,68px)}.brand p,.material-card p,.story-grid figcaption,.detail-label,.composition-workspace .primary-button{font-size:12px}.brand p,footer{color:var(--muted)}.contact-footer{font-family:var(--sans);text-transform:none;letter-spacing:normal}.composition-workspace .primary-button{min-height:48px}
.studio-label,.hero-bottom a,.case-tabs button,.how-lyra-note,.collection-filters button span,.crystal-card p,.craft-section figcaption span,.craft-section figcaption p,.craft-section .source-note{font-size:12px!important}

.public-wechat{border:0;background:transparent;color:inherit;font:inherit;padding:0;min-height:44px;cursor:pointer}
