/* V18 – incremental production-safe design enhancements */
:root{--v18-ink:#14263B;--v18-ivory:#F7F5F0;--v18-gold:#B89A68}
*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:94px}
body{overflow-wrap:break-word}
[hidden]{display:none!important}
a,button,select,input,textarea{touch-action:manipulation}
.menu{min-width:44px;min-height:44px}
header nav .btn{white-space:nowrap}
.v18-microcopy{margin-top:17px;font-size:13px!important;font-weight:650;letter-spacing:.01em;color:#44566c!important}
.v18-microcopy span{color:#B89A68;margin:0 5px}
.catalog-service{display:flex;flex-direction:column;min-width:0;height:100%}
.catalog-service-actions{margin-top:auto}
.catalog-service-scope,.catalog-service-duration{font-size:13px;line-height:1.55;margin-bottom:9px}
#catalogType{min-height:46px;border:1px solid #cbd8d5;border-radius:12px;padding:11px 12px;color:#14263B;background:white}
.v18-error{background:#fff4f2;color:#a23434;padding:14px 16px;border-left:3px solid #c44444;border-radius:9px}
.v18-wizard{border:1px solid #e2e6e8;border-radius:14px;padding:clamp(17px,3vw,28px);background:#fff}
.v18-wizard h4{margin:0 0 9px;font-size:20px}
.v18-wizard p{margin-bottom:16px}
.v18-wizard-stepnote{font-size:12px;font-weight:700;letter-spacing:.075em;color:#765d32;text-transform:uppercase;margin-bottom:8px}
.v18-wizard .field{display:block;max-width:620px}
.v18-wizard .field select{width:100%}
.v18-wizard-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:20px}
.v18-wizard-actions .btn{min-width:155px}
.v18-back{margin-bottom:16px}
.v18-form-progress{font-size:13px;color:#526177;padding:10px 0}
.v18-floating-wa{position:fixed;z-index:11;right:18px;bottom:20px;min-height:46px;display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;color:white!important;background:#176c55;border-radius:99px;font-size:14px;font-weight:750;box-shadow:0 8px 20px #14263b33;max-width:calc(100vw - 36px);text-decoration:none}
.v18-floating-wa:focus-visible{outline:3px solid #B89A68;outline-offset:4px}
.social-connect-card:focus-visible,.v18-wizard button:focus-visible{outline:3px solid #B89A68;outline-offset:3px}
@media(min-width:951px){.social-connect-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:950px){.social-connect-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.social-connect-grid{grid-template-columns:1fr}.v18-wizard-actions{flex-direction:column;align-items:stretch}.v18-wizard-actions .btn{width:100%}.v18-floating-wa{bottom:88px;right:12px;padding:10px 14px;min-height:44px}.v18-microcopy{font-size:12px!important}.hero h1{font-size:clamp(30px,9vw,43px)!important}}
@media(max-width:350px){.v18-microcopy{letter-spacing:0}.v18-microcopy span{margin:0 2px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* True fixes for 320–390px catalog labels and 1024px header, verified by Chromium. */
.catalog-controls .sr-only{position:absolute!important;width:1px!important;max-width:1px!important;min-width:0!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;white-space:nowrap!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important}
@media(min-width:801px) and (max-width:1150px){
 header .nav{position:relative}
 header .menu{display:inline-flex;align-items:center;justify-content:center;flex:none}
 header #nav{display:none;position:absolute;top:100%;left:0;right:0;width:100%;max-width:100%;background:#fff;padding:17px;flex-direction:column;align-items:stretch;gap:10px;border:1px solid #e4e8ea;border-radius:0 0 14px 14px;box-shadow:0 15px 25px #14263b1c}
 header #nav.open{display:flex}
 header #nav a{min-height:44px;display:flex;align-items:center;padding:7px 10px}
}
