/* 2026-10-15 feedback; approved buttons and established page structure remain. */
#productApp.is-complete { padding-bottom:100px; }
.single-blueprint-download { justify-content:center; }
.gallery-motion-toggle { display:block; margin:16px auto 0; min-height:44px; padding:8px 16px; border:1px solid #777; background:#fff; color:#333; cursor:pointer; font:inherit; }
.gallery-motion-toggle[hidden],.laimu-motion-toggle[hidden] { display:none; }
.gallery-motion-toggle:focus-visible { outline:2px solid #0072ce; outline-offset:3px; }
.single-blueprint-swiper .swiper-slide { display:flex; align-items:center; justify-content:center; }
.single-blueprint-swiper img { display:block; max-width:100%; object-fit:contain; }
.inquiry-tabs { gap:32px; border-bottom:1px solid #e7e7e7; }
.inquiry-tab { min-height:44px; padding:10px 0; border:0; border-bottom:2px solid transparent; background:transparent; }
.inquiry-tab.active { border-bottom-color:var(--color-primary); }
.inquiry-tab:focus-visible { outline:2px solid #0072ce; outline-offset:3px; }
.footer-legal { display:flex; gap:24px; flex-wrap:wrap; padding:0 0 30px; font-size:14px; color:#666; }
.footer-legal button { font:inherit; color:inherit; padding:0; border:0; background:none; cursor:pointer; }
.footer-legal :is(a,button):hover { color:#0072ce; text-decoration:underline; }
.footer-legal :is(a,button):focus-visible { outline:2px solid #0072ce; outline-offset:4px; }
.legal-page { max-width:920px; margin:auto; padding:80px 24px 100px; font-size:16px; line-height:1.85; overflow-wrap:anywhere; }
.legal-page h1 { font-size:clamp(30px,4vw,44px); line-height:1.2; margin:0 0 20px; }
.legal-page h2 { font-size:22px; line-height:1.4; margin:40px 0 14px; }
.legal-page p,.legal-page li { margin:0 0 14px; }
.legal-page ol { padding-left:24px; }
.legal-page a { color:#0072ce; text-decoration:underline; }
.legal-company { color:#666; }
.cookie-dialog { box-sizing:border-box; width:min(600px,calc(100% - 32px)); max-height:calc(100vh - 48px); overflow:auto; border:1px solid #ddd; padding:32px; margin:auto; color:#333; background:#fff; box-shadow:0 20px 80px #0003; }
.cookie-dialog:not([open]) { display:none; }
.cookie-dialog::backdrop { background:#0005; }
.cookie-dialog h2 { font-size:24px; line-height:1.3; margin:0 0 16px; }
.cookie-dialog p { font-size:16px; line-height:1.7; margin:0 0 12px; }
.cookie-policy-link { color:#0072ce; text-decoration:underline; }
.cookie-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
.cookie-actions button { flex:1; }
@media(max-width:600px) { .cookie-dialog { padding:24px; } .legal-page { padding-top:48px; } .footer-legal { gap:16px; } }
