/* Responsive layout shared by every language; no device sniffing. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
img{max-width:100%;height:auto}
button,input,select,textarea{max-width:100%}
button,select,summary,.primary,.outline,nav a{min-height:44px}
nav a{display:flex;align-items:center}
input:focus-visible,select:focus-visible{outline:2px solid var(--orange);outline-offset:3px}
.product-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}
.product,.product-body,.hero-copy,#modalContent{min-width:0}
.filters{flex-wrap:wrap}
.table-scroll{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
.table-scroll table:not(.comparison){table-layout:fixed;width:100%}
.table-scroll table:not(.comparison) th,.table-scroll table:not(.comparison) td{overflow-wrap:anywhere}
body.modal-open{overflow:hidden}
dialog{overflow:hidden;padding:56px 28px 24px;max-height:90vh;max-height:90dvh;margin:auto}
#modalContent{overflow-y:auto;overscroll-behavior:contain;max-height:calc(90vh - 82px);max-height:calc(90dvh - 82px);padding:0 4px 4px;-webkit-overflow-scrolling:touch}
#closeModal{top:6px;right:10px;width:44px;height:44px;background:#30382c;border-radius:50%;line-height:1;z-index:2}
.cart-row>span:last-child{display:flex;gap:6px;align-items:center;flex-wrap:wrap;white-space:normal}
.cart-row button{min-width:44px;min-height:44px;margin:0;padding:5px}
#toast{max-width:calc(100vw - 32px);right:max(16px,env(safe-area-inset-right));bottom:calc(90px + env(safe-area-inset-bottom));overflow-wrap:anywhere}
@media(max-width:1100px){
 header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:20px 5%}
 header>.brand{max-width:none;min-width:0;overflow-wrap:anywhere}
 header nav{grid-column:1/-1;grid-row:2;width:100%;order:initial;justify-content:flex-start;gap:8px 24px}
 .head-actions{min-width:0;margin:0}
 .hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .hero-copy h1{font-size:clamp(38px,5.3vw,60px)}
 .section-head{align-items:flex-start;flex-wrap:wrap}
}
@media(max-width:850px){
 .hero{grid-template-columns:minmax(0,1fr);padding-inline:6%;min-height:0}
 .hero-copy{padding:36px 0 0}
 .hero-art{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;padding:24px 0 28px;min-height:0}
 .hero-art img{width:100%;margin:0;max-height:440px;object-fit:contain;display:block}
 .hero-art .image-note{position:static;font-size:11px;text-align:left;line-height:1.6}
 .hero-art .hero-caption{position:static;padding-top:14px;display:flex;flex-wrap:wrap;gap:10px 20px;font-size:10px;letter-spacing:1px}
 .hero-caption span{max-width:100%}
 .hero-art .vertical-label{display:none}
 .section{padding:44px 6%}
 .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
 .product-body{padding:0 17px 20px}
 .product-top{padding:16px 17px 0;gap:12px;flex-wrap:wrap}
 .product img{height:200px}
 .spec-row{flex-wrap:wrap;gap:8px}
 .product-actions{flex-direction:column}
 .product-actions button{flex:auto;font-size:14px;line-height:1.5;padding:12px}
 .equipment-grid,.finder,.faq{grid-template-columns:minmax(0,1fr)}
 .finder form{grid-template-columns:repeat(2,minmax(0,1fr))}
 .finder label:first-child{grid-column:1/-1}
 .contact-banner{margin-inline:6%;padding:24px}
 footer{padding-inline:6%;padding-bottom:calc(32px + env(safe-area-inset-bottom))}
 footer>*{min-width:0;max-width:100%}
}
@media(max-width:600px){
 .notice{padding:10px max(16px,env(safe-area-inset-left));line-height:1.6;letter-spacing:.3px}
 header{grid-template-columns:minmax(0,1fr);gap:14px;padding:18px max(16px,env(safe-area-inset-right)) 12px max(16px,env(safe-area-inset-left))}
 header>.brand{max-width:none;font-size:19px;line-height:1.4;letter-spacing:.7px}
 header .brand small{margin-left:22px;font-size:9px;letter-spacing:1.5px}
 .head-actions{grid-row:2;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:10px;width:100%;margin:0}
 .language-control{min-width:0;width:100%;display:block}
 .language-control>span{display:none}
 .language-control select{width:100%;min-height:48px;font-size:16px;padding:10px 24px 10px 10px}
 .head-actions button{width:100%;max-width:none;min-height:48px;font-size:14px;padding:9px 10px;line-height:1.45;white-space:normal}
 header nav{grid-row:3;grid-column:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;font-size:12px}
 header nav a{justify-content:center;text-align:center;padding:8px 4px;line-height:1.45;overflow-wrap:anywhere;border-radius:3px;background:#1d221c}
 .hero{padding-inline:max(16px,env(safe-area-inset-left)) max(16px,env(safe-area-inset-right))}
 .hero-copy h1{font-size:clamp(32px,8.8vw,48px);line-height:1.2;letter-spacing:-1px;margin:20px 0}
 .hero-copy>p{font-size:15px;line-height:1.8}
 .actions{gap:12px;margin:24px 0 28px}
 .hero .actions{display:grid;grid-template-columns:minmax(0,1fr)}
 .actions .primary,.actions .outline{min-height:48px;text-align:center;line-height:1.6;padding:12px 16px}
 .text-button{min-height:48px;justify-self:start;font-size:14px}
 .hero-facts{gap:8px 16px;font-size:11px;margin-bottom:8px}
 .material-strip{padding:20px 16px;gap:10px 16px}
 .material-strip>span:first-child{width:100%;text-align:center}
 .section{padding:36px max(16px,env(safe-area-inset-right)) 36px max(16px,env(safe-area-inset-left))}
 .section-head h2,h2{font-size:clamp(24px,6.3vw,30px);line-height:1.4;letter-spacing:-.5px}
 .section-head p{max-width:none;line-height:1.7}
 .filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:24px 0}
 .chip{padding:8px 5px;min-height:46px;white-space:normal;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
 .compare-link{grid-column:1/-1;margin:0;min-height:46px;text-align:left;padding:8px 0;font-size:14px}
 .product-grid{grid-template-columns:minmax(0,1fr);gap:20px}
 .product img{height:auto;max-height:270px;aspect-ratio:1.6;object-fit:contain}
 .product-actions{flex-direction:row;flex-wrap:wrap;gap:10px}
 .product-actions button{flex:1 1 125px;min-height:48px}
 .pricing small,.muted{font-size:12px;line-height:1.75}
 .source-links{display:grid;gap:12px;font-size:14px}
 .source-links a{min-height:44px;display:flex;align-items:center;overflow-wrap:anywhere}
 .finder form{grid-template-columns:minmax(0,1fr)}
 .finder label:first-child{grid-column:auto}
 input,select,textarea{min-height:48px;font-size:16px;line-height:1.5}
 .finder .primary{min-height:48px;white-space:normal}
 .equipment-grid{gap:24px}
 .equipment-grid img{width:100%;max-height:230px;object-fit:contain}
 .equipment-grid p,.term p,details p{font-size:14px;line-height:1.8}
 .table-scroll th{min-width:0}
 .table-scroll table:not(.comparison){font-size:13px}
 .table-scroll table:not(.comparison) th{width:46%}
 .articles{gap:12px}
 summary{min-height:48px;padding:8px 0;line-height:1.6}
 .term{gap:12px}
 .contact-banner{margin:12px 16px 32px;padding:22px 18px}
 .contact-banner h2{font-size:26px}
 .contact-banner .primary{display:block;width:100%;min-height:48px;text-align:center;white-space:normal}
 footer{padding:28px max(16px,env(safe-area-inset-right)) calc(28px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));display:grid;gap:16px}
 footer p,footer>span{max-width:100%;font-size:12px;margin:0;overflow-wrap:anywhere}
 /* Inline contact actions remain available; prevent fixed chat from covering mobile text. */
 .floating{display:none}
 dialog,dialog:has(.comparison){width:calc(100vw - 20px);max-width:none;padding:58px 12px 16px;max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}
 #modalContent{max-height:calc(100vh - 100px);max-height:calc(100dvh - 100px - env(safe-area-inset-top) - env(safe-area-inset-bottom));padding:0 3px 4px}
 dialog h2{font-size:24px;line-height:1.4;margin-top:0}
 dialog .actions{display:grid;grid-template-columns:minmax(0,1fr)}
 .cart-row{gap:14px;padding:16px 0;align-items:flex-start}
 .cart-row>span{width:100%}
 .cart-row>span:last-child{justify-content:flex-start}
 .comparison{min-width:710px}
 .comparison th:first-child{position:sticky;left:0;background:#20261e;min-width:105px;max-width:140px;z-index:1;box-shadow:2px 0 0 #4a5541}
 #toast{bottom:calc(16px + env(safe-area-inset-bottom));left:16px;right:16px;max-width:none;padding:14px;font-size:14px}
}
@media(max-height:500px) and (orientation:landscape){
 dialog,dialog:has(.comparison){max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px);padding-top:54px}
 #modalContent{max-height:calc(100vh - 94px);max-height:calc(100dvh - 94px)}
 .floating{display:none}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Independent catalog, finder and knowledge pages. */
nav a[aria-current="page"]{color:var(--orange,#c84b22);text-decoration:underline;text-underline-offset:7px}.page-heading{font-size:clamp(2rem,4.5vw,3.6rem);line-height:1.12;letter-spacing:-.035em;margin:18px 0;overflow-wrap:anywhere}.home-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.home-link{display:block;color:inherit;text-decoration:none;border-top:1px solid #c9c9c1;padding:24px 0;min-width:0}.home-link h2{font-size:clamp(1.4rem,2.3vw,2rem)}.home-link p{line-height:1.7;color:#62665f}.home-link:hover h2{color:#c84b22}.home-link:focus-visible{outline:2px solid #c84b22;outline-offset:8px}@media(max-width:850px){.home-links{grid-template-columns:1fr}.page-heading{font-size:clamp(1.8rem,7vw,2.8rem)}}
.match-result{padding:24px;border:1px solid #77815c;background:#20271d;margin:24px 0 36px}.match-result h2{font-size:clamp(1.25rem,3vw,1.9rem)}.match-result .actions{flex-wrap:wrap}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:40px}.detail-layout>div{min-width:0}.detail-image{width:100%;height:auto;position:sticky;top:24px}.whatsapp-qr{display:block;width:min(100%,340px);height:auto;margin:24px auto}#advice h3{margin:12px 0}#advice button{margin-top:12px}@media(max-width:850px){.detail-layout{grid-template-columns:1fr}.detail-image{position:static;max-height:320px;object-fit:contain}.match-result{padding:18px}}

.qr-frame{position:relative;width:min(100%,340px);aspect-ratio:1;overflow:hidden;margin:24px auto;border-radius:12px}.qr-frame .whatsapp-qr{position:absolute;top:-52%;left:0;width:100%;max-width:none;margin:0}
