/* Shared finish: readable labels, keyboard focus and resilient small screens. */
.contact-channels { margin-top:28px; }
.contact-channels h3 { font-size:18px; margin-bottom:16px; }
.channel-links { display:flex; flex-wrap:wrap; gap:10px; }
.channel-link { display:inline-flex; align-items:center; min-height:46px; padding:10px 16px; border:1px solid #43869e; border-radius:4px; font-size:14px; }
.channel-link:hover { background:#116b83; color:white; }
.hero-sales { display:flex; flex-wrap:wrap; gap:6px 18px; margin:24px 0 0; font-size:1rem; line-height:1.6; color:#c3d6e1; }
.hero-sales a,.direct-sales-link { color:#85e0f1; text-decoration:underline; text-underline-offset:5px; overflow-wrap:anywhere; }
.footer-contacts { grid-column:1/-1; margin-top:4px; padding-top:26px; border-top:1px solid #284453; }
.contact-channels h3 { color:inherit; font-size:1.125rem; line-height:1.5; }
.email-channels { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.home-contact-card,.email-channel { --channel-surface:#103b5d; --channel-accent:#9be3ff; }
.home-contact-card[data-contact-email="info_email"],.email-channel[data-contact-email="info_email"] { --channel-surface:#145d63; --channel-accent:#b8f3e3; }
.home-contact-card[data-contact-email="support_email"],.email-channel[data-contact-email="support_email"] { --channel-surface:#444778; --channel-accent:#dedcff; }
.email-channel { display:grid; gap:7px; min-width:0; padding:18px; border:1px solid rgba(255,255,255,.24); border-top:3px solid var(--channel-accent); border-radius:4px; background:var(--channel-surface); color:#e1edf3; line-height:1.5; }
.email-channel:hover,.email-channel:focus-visible { border-color:var(--channel-accent); }
footer .email-channel span,.email-channel span { font-size:.875rem; color:var(--channel-accent); }
footer .email-channel b,.email-channel b { color:white; font-size:1rem; letter-spacing:0; margin:0; overflow-wrap:anywhere; }
.contact-aside .email-channels { grid-template-columns:minmax(0,1fr); }
.direct-support { border-top:1px solid rgba(255,255,255,.18); padding-top:24px; }
.direct-support .email-channel { border-color:var(--channel-accent); }
.direct-support .support-description { margin:16px 0 0; color:#c2d9e4; font-size:1rem; line-height:1.7; }
.home-contact-section { padding:80px 0 88px; background:#f1f6f9; border-top:1px solid #dce8ef; }
.home-contact-heading { margin-bottom:32px; max-width:720px; }
.home-contact-heading h2 { margin:0 0 14px; color:#071c2b; font-size:clamp(1.75rem,3vw,2.625rem); line-height:1.2; }
.home-contact-heading > p:last-child { margin:0; color:#496273; font-size:1rem; line-height:1.7; }
.home-contact-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.home-contact-card { display:flex; flex-direction:column; min-width:0; padding:30px 26px; border:1px solid rgba(255,255,255,.24); border-top:3px solid var(--channel-accent); border-radius:6px; background:var(--channel-surface); color:white; transition:box-shadow .2s,border-color .2s; }
.home-contact-card:hover,.home-contact-card:focus-visible { border-color:var(--channel-accent); box-shadow:0 12px 28px rgba(10,35,60,.18); }
.home-contact-card .contact-team-label { font-size:.875rem; font-weight:750; letter-spacing:.12em; color:var(--channel-accent); }
.home-contact-card h3 { margin:18px 0 14px; color:inherit; font-size:1.375rem; line-height:1.35; }
.home-contact-card p { margin:0 0 28px; color:#e1edf3; font-size:1rem; line-height:1.7; }
.home-contact-card .contact-card-address { display:block; margin-top:auto; padding-top:20px; border-top:1px solid rgba(255,255,255,.25); font-size:clamp(1rem,1.45vw,1.2rem); line-height:1.5; color:white; overflow-wrap:anywhere; }
.home-contact-card .contact-card-action { margin-top:12px; font-size:.875rem; font-weight:700; color:var(--channel-accent); text-decoration:underline; text-underline-offset:4px; }
@media(max-width:900px) { .home-contact-grid { grid-template-columns:1fr; gap:18px; } .home-contact-section { padding:56px 0; } .home-contact-card { padding:26px; } }
.contact-channels .channel-links:not(:empty) { margin-top:18px; }
#quote-form { scroll-margin-top:100px; }
.quote-intro { grid-column:1/-1; color:#34566b; font-size:1rem; line-height:1.7; }
.quote-intro a,.form-fallback a { color:#076b85; text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
.quote-form .form-field label { font-size:.875rem; }
.quote-form .form-submit { flex-wrap:wrap; }
.quote-form [type="submit"]:disabled { cursor:wait; opacity:.65; }
.form-fallback { grid-column:1/-1; margin:0; font-size:.875rem; line-height:1.7; color:#476374; }
#form-status { font-size:1rem; line-height:1.6; flex-basis:100%; overflow-wrap:anywhere; }
#form-status[data-state="error"] { color:#9a2d28; }
.form-trap { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
@media(max-width:760px) { .email-channels { grid-template-columns:1fr; } .hero-sales { flex-direction:column; } }
h1,h2,h3,p,button,.eyebrow,.gateway,.product-card-body { overflow-wrap:anywhere; hyphens:auto; }
.hero-copy,.hero-content > *, .page-hero .shell > *, .intro-grid > *, .footer-main > * { min-width:0; }
.eyebrow > span:first-child { flex-shrink:0; }
.eyebrow > span:last-child { min-width:0; }
:focus-visible { outline: 3px solid #12b8d6; outline-offset: 4px; }
.data-card strong { font-size: 14px; line-height: 1.5; }
.gateway small, .category-item small, .stage-foot { font-size: 13px; line-height: 1.6; }
.category-panel-head small, .stage-label small { font-size: 12px; }
.product-image img, .detail-visual img { object-fit: contain; }
.studio-image img, .detail-visual.studio-image img { object-fit: contain; }
.detail-visual.studio-image img { max-height: 460px; }
.preview-note { color: #547184; line-height: 1.7; font-size: 14px; border-left: 3px solid #159aba; padding: 12px 16px; background: #edf5f8; }
.nav-dropdown.is-open .dropdown-panel { opacity:1; visibility:visible; transform:none; display:block; }
@media(max-width:860px) {
  .main-nav { max-height: calc(100dvh - 80px); overflow-y:auto; }
  .main-nav.open .dropdown-panel { position:static; opacity:1; visibility:visible; transform:none; display:block; box-shadow:none; }
  .hero-visual { min-width:0; }
  .data-card { min-width:0; max-width:80%; padding:14px 18px; }
  .catalog-toolbar, .detail-actions, .group-switch { flex-wrap:wrap; }
  .search-field, .filter-select { max-width:100%; }
  .contact-grid > *, .detail-copy, .page-hero .shell > * { min-width:0; }
}
@media(prefers-reduced-motion:reduce) {
  *, *::before, *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
  .reveal { opacity:1!important; transform:none!important; }
}

/* White studio treatment preserves the supplied KINYOMACH photograph. */
.product-stage.own-finishing { background:#fff; }
.product-stage.own-finishing::before { display:none; }
.own-finishing .stage-grid,.own-finishing .scan-line { display:none; }
.own-finishing .stage-label small { color:#087b97; }
.own-finishing .stage-label strong { color:#092b3e; }
.product-stage.own-finishing img { width:100%;height:72%;left:0;top:14%;filter:none;mask-image:none;object-fit:contain; }
.own-finishing .stage-foot { color:#173f57;border-color:#d8e5ed; }
.own-finishing .stage-foot a { color:#087b97; }
@media(max-width:560px) { .own-finishing .stage-foot { left:20px;right:20px;gap:12px;font-size:12px; } }
