/* Functional feedback; automatic brand/artwork motion is owned by public-motion.css. */
.v-body :is(a,button,input,textarea,select,summary):focus-visible{outline:2px solid var(--red);outline-offset:4px}
.v-body :is(input,textarea,select){scroll-margin-top:150px}
.v-body :is(#overview,#process,#preparation,#service-faq,[id^=question-],.v-faq__list details,.v-notes__item){scroll-margin-top:160px}
.v-body .v-btn:disabled{cursor:wait;opacity:.7;transform:none}
.v-body .v-btn:focus-visible{box-shadow:0 0 0 5px #b43e3126,inset 0 1px 0 #ffffff30}
.v-body :is(.v-index__item>a,.a-capability>a){transition:translate .2s ease,box-shadow .2s ease;border-radius:12px}
.v-body .a-capability a:is(:hover,:focus-visible) .a-object{transform:none} /* Ambient image motion stays independent. */
@media(hover:hover){.v-body :is(.v-index__item>a,.a-capability>a):hover{translate:0 -3px}.v-body .a-capability__link>span{display:inline-block;transition:translate .2s}.v-body .a-capability>a:hover .a-capability__link>span{translate:3px -3px}}
.v-body :is(.v-index__item>a,.a-capability>a,.x-industry-plates>a):active{translate:0 1px}
.ux-eyebrow{font-size:.72rem;font-weight:650;letter-spacing:.06em;color:var(--red)}
.ux-tools-head{max-width:740px;margin-bottom:26px}.ux-tools-head .a-label{margin-bottom:13px}
.ux-disclosure{border:1px solid var(--hair);border-radius:12px;background:linear-gradient(145deg,#fcfcf9,#f0f0e9);margin:12px 0;box-shadow:3px 4px 12px #10172008}
.ux-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 24px;min-height:60px;cursor:pointer;font-weight:620;list-style:none}
.ux-disclosure>summary::-webkit-details-marker,.ux-term>summary::-webkit-details-marker{display:none}
.ux-disclosure>summary::after{content:'+';font-size:1.4rem;font-weight:400;transition:rotate .22s;flex:none}
.ux-disclosure[open]>summary::after{rotate:45deg}.ux-disclosure[data-ux-closing=true]>summary::after{rotate:0deg}
.ux-disclosure__body{padding:0 24px 24px}.ux-disclosure__body>p:first-child{margin-bottom:20px}
.ux-choice{margin:28px 0;border:0;padding:0}.ux-choice legend{font-weight:620;margin-bottom:12px}.ux-choice>div{display:flex;flex-wrap:wrap;gap:10px}
.ux-choice label{display:flex;align-items:center;gap:10px;min-height:48px;padding:12px 16px;border:1px solid #c7cdc7;border-radius:9px;background:#fcfcf9;cursor:pointer;max-width:100%;font-size:.94rem}
.ux-choice label:has(input:checked){background:#f7ebe6;border-color:var(--red);box-shadow:inset 0 0 0 1px var(--red)}
.ux-choice input{accent-color:var(--red);width:18px;height:18px;flex:0 0 18px;margin:0}
.ux-recommendation{padding:22px;border-left:3px solid var(--red);background:#e9ece5;border-radius:0 8px 8px 0}.ux-recommendation h3{font-size:1.15rem;margin:0 0 12px}.ux-recommendation ul{padding-left:20px;display:grid;gap:12px;margin:0 0 16px}.ux-recommendation p{font-size:.92rem;max-width:70ch}
.ux-compare-selects{display:grid;grid-template-columns:1fr 1fr;gap:20px}.ux-compare-selects label,.ux-search-form label,.ux-search-dialog label{display:block;margin-bottom:8px;font-weight:600;font-size:.9rem}
.ux-compare-selects select,.ux-search-row input{font:inherit;border:1px solid #bfc6be;background:#fffefa;border-radius:8px;min-height:48px;padding:10px 12px;width:100%;min-width:0;color:var(--ink)}
.ux-comparison{margin:26px 0;overflow-wrap:anywhere}.ux-comparison__titles,.ux-comparison dl>div{display:grid;grid-template-columns:minmax(120px,.65fr) 1fr 1fr;gap:24px;padding:18px 0;border-bottom:1px solid var(--hair)}.ux-comparison__titles h3{font-size:1.1rem;margin:0}.ux-comparison__titles a{text-decoration:underline;text-underline-offset:4px}.ux-comparison dt{font-size:.85rem;font-weight:650}.ux-comparison dd{margin:0;font-size:.92rem;line-height:1.65}
.ux-glossary{margin:24px 0 32px}.ux-glossary>p{margin:0 0 10px}.ux-glossary>div{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px}.ux-term{border:1px solid var(--hair);border-radius:8px;background:#f4f5ee;max-width:100%}.ux-term>summary{list-style:none;cursor:pointer;padding:10px 13px;min-height:44px;font-size:.85rem;font-weight:600}.ux-term>summary::after{content:' +';color:var(--red);margin-left:6px}.ux-term[open]>summary::after{content:' −'}.ux-term p{max-width:55ch;font-size:.9rem;line-height:1.65;padding:0 14px 15px;margin:0}
.ux-form-assist{margin:20px 0 28px}.ux-form-assist .ux-disclosure>summary{font-size:.94rem;padding:16px 18px}.ux-form-assist .ux-disclosure__body{padding:0 18px 18px;font-size:.9rem}.ux-brief>div{display:grid;grid-template-columns:minmax(100px,.7fr) 1fr;gap:20px;padding:12px 0;border-top:1px solid var(--hair)}.ux-brief dt{font-weight:600}.ux-brief dt a{text-decoration:underline;text-underline-offset:3px}.ux-brief dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;max-height:220px;overflow:auto}.ux-missing{padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}.ux-missing a{display:inline-block;padding:8px 12px;border-radius:6px;background:#e4e8df;text-decoration:underline;text-underline-offset:3px;min-height:40px}
.ux-draft-note{margin-top:18px}.ux-draft-note>p{margin-bottom:10px}.ux-small-button{font:inherit;font-size:.8rem;min-height:36px;padding:6px 11px;background:#fafbf5;color:var(--ink);border:1px solid #aeb8ad;border-radius:6px;cursor:pointer}.ux-small-button:active{background:#e1e6da}.ux-small-button:disabled{opacity:.6;cursor:wait}
.ux-copy{display:flex;align-items:center;gap:10px;font-style:normal;margin:6px 0 10px;flex-wrap:wrap}.ux-copy .v-hint{margin:0}
.v-address .ux-contact-detail{display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:start;gap:16px;margin:0 0 22px}
.v-address .ux-contact-detail:last-child{margin-bottom:0}
.v-address .ux-contact-detail__copy{min-width:0;overflow-wrap:anywhere}
.a-inquiry .v-address .ux-contact-detail strong{margin:0 0 4px}
.ux-contact-control{position:relative;display:inline-flex;align-self:start;font-style:normal}
.ux-contact-action{display:inline-flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;margin:0;padding:0;border:1px solid #aeb8ad;border-radius:10px;background:#fafbf5;color:var(--ink);text-decoration:none}
.ux-contact-action svg{display:block;width:22px;height:22px}
.ux-contact-action:is(:hover,:focus-visible){background:#e6ebe0;color:var(--ink)}
.a-inquiry--contact .ux-contact-action{border-color:#8a979e;background:#26323d;color:#fff}
.a-inquiry--contact .ux-contact-action:is(:hover,:focus-visible){background:#384957;color:#fff}
.ux-contact-tooltip{position:absolute;z-index:20;inset:auto 0 100% auto;padding:8px 11px 14px;max-width:220px;width:max-content;background:#101720;color:#fff;border-radius:7px;font-size:.8rem;font-weight:500;line-height:1.4;visibility:hidden;opacity:0;box-shadow:0 5px 16px #10172024}
.ux-contact-control:is(:hover,:focus-within):not([data-tooltip-dismissed=true]) .ux-contact-tooltip{visibility:visible;opacity:1}
/* Align controls at the start of each row; helper copy never stretches an adjacent input. */
.a-inquiry .v-formcard .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 20px;align-items:start}
.a-inquiry .v-formcard .field:not(.v-consent){display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:8px;min-width:0}
.a-inquiry .v-formcard .field>label{line-height:1.5;min-height:1.5em;margin:0}
.a-inquiry .v-formcard .field>input:not([type=checkbox]),.a-inquiry .v-formcard .field>select{flex:none;box-sizing:border-box;height:50px;min-height:50px;margin:0}
.a-inquiry .v-formcard .field>textarea{margin:0;box-sizing:border-box}
.a-inquiry .v-formcard .field>.v-hint{margin:0;line-height:1.5}
.a-inquiry .v-formcard .field>.ux-field-why{margin:0}
@media(max-width:600px){.a-inquiry .v-formcard .form-grid{grid-template-columns:minmax(0,1fr);gap:22px}.a-inquiry .v-formcard .field.wide{grid-column:1/-1}}
.v-formcard .field input:focus,.v-formcard .field textarea:focus,.v-formcard .field select:focus{border-color:var(--red);box-shadow:0 0 0 3px #b43e3115}
.v-formcard [aria-invalid=true]{border-color:#a32920;background:#fff7f4}.ux-field-error{font-size:.84rem!important;color:#9e2c23!important;line-height:1.5;margin:7px 0 0!important}.ux-field-error[hidden]{display:none!important}
.ux-field-why{font-size:.8rem;color:var(--steel);margin:8px 0}.ux-field-why>summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px;min-height:30px;line-height:1.6}.ux-field-why p{font-size:.85rem;line-height:1.6;margin:6px 0 0}
.v-formcard .v-consent:has(input:checked){background:#e7ede0;border-radius:8px;box-shadow:0 0 0 8px #e7ede0}.v-formcard .v-consent input[type=checkbox]{cursor:pointer}.v-formcard .v-consent label{cursor:pointer;min-height:44px}
.ux-section-nav{position:sticky;top:96px;z-index:30;background:#f4f5eeeF;border-block:1px solid var(--hair);backdrop-filter:blur(12px)}.ux-section-nav>.v-wrap{display:flex;align-items:center;gap:8px;padding-block:7px;overflow:auto;scrollbar-width:thin}.ux-section-nav span{font-size:.75rem;color:var(--steel);margin-right:auto;white-space:nowrap}.ux-section-nav a{padding:10px 14px;white-space:nowrap;font-size:.85rem;border-radius:7px;min-height:42px}.ux-section-nav a[aria-current]{color:var(--red);background:#e9e9df;box-shadow:inset 0 -2px var(--red)}
.ux-search-trigger{color:var(--ink);background:transparent;cursor:pointer;display:grid;place-items:center;width:42px;height:44px;flex:0 0 42px;border:1px solid var(--hair);border-radius:8px}.ux-search-trigger:hover{background:var(--bone)}.ux-search-open{overflow:hidden}
.ux-search-dialog{position:fixed;inset:0;margin:7vh auto auto;border:1px solid #fff;border-radius:18px;box-shadow:0 28px 90px #10172045;padding:28px;background:var(--paper);width:min(680px,calc(100vw - 32px));max-height:85dvh;overflow:auto;color:var(--ink)}.ux-search-dialog:not([open]){display:none}.ux-search-dialog::backdrop{background:#10172094;backdrop-filter:blur(6px)}.ux-search-dialog__head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.ux-search-dialog h2{font-size:clamp(1.4rem,3vw,2rem);line-height:1.15;letter-spacing:-.03em}.ux-icon-button{font:inherit;font-size:1.5rem;line-height:1;flex:0 0 44px;width:44px;height:44px;border:1px solid var(--hair);border-radius:50%;color:var(--ink);background:none;cursor:pointer}
.ux-search-row{display:flex;gap:10px}.ux-search-row>.v-btn{min-height:48px;padding-inline:20px}.ux-search-dialog>p{margin-top:20px;font-size:.92rem}.ux-search-suggestions{padding:0;list-style:none;margin:16px 0 0}.ux-search-suggestions a{display:flex;align-items:center;gap:16px;padding:15px 0;border-bottom:1px solid var(--hair);font-weight:600;font-size:.94rem}.ux-search-suggestions a>span:first-child{font-size:.68rem;color:var(--steel);min-width:55px;font-weight:400}.ux-search-suggestions a>span:last-child{margin-left:auto}
.ux-search-page .a-intro,.ux-document-page .a-intro{max-width:760px}.ux-search-form{max-width:760px;margin:32px 0}.ux-search-count{margin:20px 0;font-weight:600}.ux-search-results{list-style:none;margin:0;padding:0;max-width:860px}.ux-search-results li{padding:24px 0;border-top:1px solid var(--hair)}.ux-search-results h2{font-size:1.5rem;margin:7px 0 12px;line-height:1.2}.ux-search-results h2 a:hover{text-decoration:underline;text-underline-offset:5px}.ux-search-results p{color:var(--steel);font-size:.96rem;line-height:1.7}.ux-search-next{display:flex;gap:24px;flex-wrap:wrap;margin-top:30px}
.ux-sample-notice{border-left:3px solid var(--red);background:#eceee5;padding:18px 22px;margin:30px 0;font-size:.9rem}.ux-document-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:36px 0}.ux-sample{border:1px solid var(--hair);border-radius:14px;padding:26px;background:linear-gradient(135deg,#fffefa,#eceee5);display:flex;flex-direction:column}.ux-sample h2{font-size:1.55rem;line-height:1.2;margin:12px 0 16px}.ux-sample p{font-size:.9rem;line-height:1.7;color:var(--steel)}.ux-sample dl{margin:22px 0 28px}.ux-sample dl>div{padding:14px 0;border-top:1px solid var(--hair)}.ux-sample dt{font-weight:620;font-size:.87rem}.ux-sample dd{font-size:.84rem;color:var(--steel);margin:8px 0 0;line-height:1.7}.ux-sample>.v-link{align-self:flex-start;margin-top:auto}
@media(max-width:1250px) and (min-width:1021px){.v-header__in{gap:12px;padding-inline:16px}.v-nav>a,.v-nav>details>summary{padding-inline:9px;font-size:.9rem}.v-header__end{gap:5px}.v-header .v-btn{padding-inline:14px}}
@media(max-width:1020px){.ux-search-trigger{order:1}.v-burger{order:2;margin-left:0}.v-brand{margin-right:auto}.v-header__in{gap:10px}.ux-document-grid{grid-template-columns:1fr}.ux-sample{padding:24px}.ux-section-nav span{display:none}.ux-section-nav>.v-wrap{justify-content:center}}
@media(max-width:600px){.ux-disclosure>summary{padding:17px 18px}.ux-disclosure__body{padding:0 18px 20px}.ux-choice>div{display:grid;grid-template-columns:1fr}.ux-compare-selects{gap:12px;grid-template-columns:1fr}.ux-comparison__titles,.ux-comparison dl>div{grid-template-columns:1fr 1fr;gap:14px}.ux-comparison__titles>span{display:none}.ux-comparison dl dt{grid-column:1/-1}.ux-comparison dd{font-size:.84rem}.ux-section-nav a{padding-inline:11px;font-size:.8rem}.ux-section-nav>.v-wrap{justify-content:flex-start}.ux-search-dialog{padding:20px;margin-top:18px;max-height:calc(100dvh - 36px)}.ux-search-row>.v-btn{padding-inline:16px}.ux-search-suggestions a{gap:10px}.ux-search-suggestions a>span:first-child{min-width:44px}.ux-brief>div{grid-template-columns:1fr;gap:5px}.ux-term[open]{width:100%}.ux-search-results h2{font-size:1.3rem}}
@media(prefers-reduced-motion:reduce){.v-body :is(.v-btn,.v-index__item>a,.a-capability>a,.x-industry-plates>a),.ux-disclosure>summary::after,.v-faq__list summary::after{transition:none!important}.v-body :is(.v-btn,.v-index__item>a,.a-capability>a,.x-industry-plates>a):is(:hover,:active){translate:none;transform:none}}
