/* Responsive refinement: preserve artwork, improve hierarchy and touch access. */
html{scroll-padding-top:96px}
html body :is(h1,h2,h3){font-weight:800;letter-spacing:-.035em;line-height:1.12;text-wrap:balance}
html .quick-start h1{font-size:clamp(1.9rem,3.5vw,2.9rem);max-width:20ch}
html .mission h2{font-size:clamp(1.8rem,3.4vw,2.8rem);max-width:22ch}
html .mission p{max-width:58ch;line-height:1.7}
html .mission .text-link{display:inline-flex;align-items:center;min-height:48px;margin:4px 8px 4px 0;padding:10px 16px;border:1px solid var(--line);border-radius:10px;text-decoration:none;background:var(--panel);font-size:1rem}
html .collection-preview.category-tiles a h3{font-weight:700;letter-spacing:-.025em;line-height:1.25}
html .kit-card h3{font-size:1.4rem;line-height:1.25;letter-spacing:-.025em}
html .kit-card{display:flex;flex-direction:column;border-radius:18px;padding:24px}
html .kit-card .kit-foot{margin-top:auto;padding-top:20px}
html .kit-card .kit-foot .text-link{display:flex;align-items:center;justify-content:center;min-height:46px;padding:8px 14px;border:1px solid var(--line);border-radius:9px;text-decoration:none}
html .guide-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
html .guide-actions .button{min-height:48px;line-height:1.35;flex:1}
html .guide-jumps a{min-height:44px;display:inline-flex;align-items:center}
html .purchase-panel{border-left:3px solid var(--purple)}
html :is(button,.button,select,summary){touch-action:manipulation}
html :is(button,.button,a,select,textarea):focus-visible{outline:3px solid var(--purple);outline-offset:4px}
html .catalog-magic figcaption{display:none}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.category-tiles>a,.kit-card{transition:transform .2s,box-shadow .2s}.category-tiles>a:hover,.kit-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px -20px var(--purple)}}
@media(max-width:600px){
 html .quick-start{padding:24px 0}html .quick-start h1{font-size:1.95rem;line-height:1.16;margin:14px 0}
 html .mission{padding-top:30px;padding-bottom:30px}html .mission h2{font-size:1.85rem;line-height:1.18}
 html .mission .text-link{display:flex;width:100%;justify-content:center;margin:10px 0}
 html .mission-grid{gap:24px}html .mission-photo{margin:0}
 html .collection-preview.category-tiles a:nth-child(n){padding:18px 18px 22px;border-radius:18px}
 html .category-tiles .category-art{height:175px;margin-bottom:10px}
 html .guide-actions{flex-direction:column}html .guide-actions .button{flex-basis:auto;width:100%}
 html .guide-jumps{gap:8px}html .guide-jumps a{padding:9px 12px;font-size:14px}
 html .kit-card{padding:20px}html .kit-card h3{font-size:1.35rem}
 html .contact-card{padding:20px}html .faq-list summary{padding-top:16px;padding-bottom:16px;line-height:1.4}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation:none!important;transition:none!important}}
html[data-theme] body :is(.quick-start h1,.mission h2,.hero h1,.guide-top h1){font-weight:700;letter-spacing:-.035em;text-shadow:none}
/* Consistent select chevrons with a protected touch-safe inset. */
html[data-theme] body select:not([multiple]):not([size]){
 -webkit-appearance:none!important;appearance:none!important;
 padding-left:14px!important;padding-right:40px!important;
 background-image:linear-gradient(45deg,transparent 47%,currentColor 48%,currentColor 62%,transparent 63%),linear-gradient(-45deg,transparent 47%,currentColor 48%,currentColor 62%,transparent 63%)!important;
 background-position:calc(100% - 22px) 50%,calc(100% - 16px) 50%!important;
 background-size:7px 7px!important;background-repeat:no-repeat!important;
 text-overflow:ellipsis;box-sizing:border-box;line-height:1.4;
}
html[data-theme] header .site-language{width:104px;max-width:104px;flex:0 0 104px}
html[data-theme] header .site-language select{width:104px;max-width:104px}
html[data-theme] header .theme-picker #theme-select{width:128px;max-width:128px}
@media(max-width:600px){html[data-theme] header .site-language,html[data-theme] header .site-language select{width:100px;max-width:100px;flex-basis:100px}}
@media(forced-colors:active){html[data-theme] body select:not([multiple]):not([size]){appearance:auto!important;background-image:none!important}}
html[data-theme] header .site-language,html[data-theme] header .site-language select{width:116px;max-width:116px;flex-basis:116px}
.product-photo{margin:0 0 18px;background:#ededed;border-radius:12px;overflow:hidden}.product-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}.product-intro{display:flex;align-items:center;gap:28px;margin:24px 0}.product-photo-detail{width:360px;max-width:100%;flex-shrink:0;margin:0}.product-intro>p{max-width:52ch;line-height:1.7;font-size:1.05rem}.product-intro:empty{display:none}@media(max-width:600px){.product-intro{display:block}.product-photo-detail{width:100%;max-width:420px;margin:0 auto 18px}.product-intro>p{font-size:1rem}}
.pdf-link{display:inline-flex;align-items:center;min-height:48px;margin-top:10px;line-height:1.4}.kit-card .pdf-link{justify-content:center}
