/* Shared controls. Keep geometry here, not in individual section styles. */
:root{--control-height:48px;--control-compact:44px;--control-radius:10px;--control-gap:12px;--control-ink:#183344;--control-border:#cbd6db;--control-hover:#294d60}
:root .ui-icon{display:inline-block;width:18px;height:18px;min-width:18px;flex:0 0 18px;vertical-align:-3px;color:inherit;overflow:visible}
:root :is(.button,.hero-stage-actions .button,.original-paper .button,.contact-write,.catalogue-reset){display:inline-flex;align-items:center;justify-content:center;gap:var(--control-gap);min-height:var(--control-height);max-width:100%;padding:12px 18px;border:1px solid var(--control-ink);border-radius:var(--control-radius);font-family:var(--font);font-size:0.875rem;font-weight:600;line-height:1.5;letter-spacing:0;background:var(--control-ink);color:#fff;text-align:center;transition:background .16s,border-color .16s,color .16s;transform:none}
:root :is(.button,.hero-stage-actions .button,.original-paper .button):hover{background:var(--control-hover);border-color:var(--control-hover);transform:none}
:root .button.button-small{min-height:var(--control-compact);padding:10px 16px;font-size:0.875rem;gap:var(--control-gap)}
:root :is(.button.button-light,.catalogue-reset){background:transparent;color:var(--control-ink);border-color:var(--control-border)}
:root :is(.button.button-light,.catalogue-reset):hover{background:#eef3f4;border-color:#9eb3be}
:root .contact-email-actions .contact-write{background:var(--control-ink);border-color:var(--control-ink);color:#fff}
:root .contact-email-actions .contact-write:hover{background:var(--control-hover);border-color:var(--control-hover)}
:root :is(.button,.text-link,.reading-all,.hero-product-link,.contact-write,.contact-location-link,.contact-company>a,.footer-legal>a,.pick-action)>span[aria-hidden],:root :is(.reading-arrow,.contact-channel-arrow){display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex:0 0 18px;font-size:0;line-height:0;transform:none;transition:none}
:root :is(.text-link,.hero-product-link,.reading-all,.contact-location-link,.contact-company>a,.collection-heading>a,.catalogue-back,.legal-contact,.reader-tools button,.footer-legal>a){display:inline-flex;align-items:center;justify-content:flex-start;gap:var(--control-gap);min-height:44px;padding-block:10px;font-size:0.875rem;font-weight:600;line-height:1.5;letter-spacing:0;transform:none}
:root :is(.text-link,.hero-product-link,.reading-all,.contact-location-link){border-bottom:1px solid currentColor;text-underline-offset:5px}
:root :is(.reading-action,.pick-action){align-items:center;font-size:0.8125rem;font-weight:600;line-height:1.5;gap:var(--control-gap)}
:root .reading-bottom{align-items:center}
:root .reading-link:hover .reading-arrow{transform:none}
:root .contact-company>a{color:var(--control-ink)}
:root .locale-menu>summary{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;min-width:76px;padding:10px 12px;border:1px solid var(--control-border);border-radius:var(--control-radius);font-size:0.875rem;line-height:1.5;font-weight:500}
:root .locale-menu>summary:hover{background:#f3f6f6;border-color:#9eb3be}
:root .locale-menu[open]>summary .ui-icon{transform:rotate(180deg)}
:root :is(.contact-copy-button,.footer-social-buttons>a,.search-clear,.hero-stage .motion-toggle,.menu-toggle){width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border-radius:var(--control-radius);align-items:center;justify-content:center;flex-shrink:0;transition:background .16s,border-color .16s,color .16s;transform:none}
:root .contact-copy-button{width:48px;height:48px;min-width:48px}
:root :is(.contact-copy-button,.footer-social-buttons>a,.hero-stage .motion-toggle) svg{width:18px;height:18px;flex-shrink:0}
:root .footer-social-buttons>a:hover{transform:none;background:var(--control-hover)}
:root .footer-social-buttons>a{background:var(--control-ink)}
:root .search-clear{display:flex;inset-inline-end:0;inset-inline-start:auto;top:0;background:transparent;color:#526d7b}
:root .search-clear:hover{background:#edf2f3}
:root .catalogue-search input{height:46px;padding-inline-end:34px;font-size:1rem}
:root .catalogue-search{min-width:0}
:root .catalogue-filters button{min-height:44px;padding:10px 14px;border-radius:var(--control-radius);font-size:0.875rem;line-height:1.5;font-weight:600}
:root .catalogue-filters button[aria-pressed=true]{font-weight:600}
:root .collection-sort select{min-height:44px;border-radius:var(--control-radius);font-size:0.875rem}
:root :is(a,button,summary):focus-visible{outline:2px solid #327fa2;outline-offset:4px}
:root .contact-hub :is(a,button):focus-visible{outline-color:#327fa2}
:root .contact-location a:focus-visible{outline-color:#426757}
@media(max-width:1100px){:root .button.header-contact{display:none}}
@media(max-width:760px){
 :root .hero-stage-actions{gap:12px 24px;flex-wrap:wrap}
 :root .hero-stage-actions .button{padding-inline:16px}
 :root .navigation{gap:12px}
 :root .footer-social-buttons{gap:8px}
 :root .locale-menu>summary{min-width:72px}
 :root .section-heading{flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce){:root :is(a,button,summary){transition:none}}
@media print{:root .original-paper .button{color:#000;background:none;border:0;padding:0;min-height:0}}
