
*{box-sizing:border-box}body{margin:0;font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:#1d1d1f;background:#faf8f5}
a{color:#8a3b12}header.top{display:flex;justify-content:space-between;align-items:center;padding:14px 28px;background:#2b1a10;color:#fff}
header .logo{color:#fff;font-weight:800;font-size:22px;text-decoration:none}header .logo span{color:#e7a35b}
header nav a{color:#f3e3d3;margin-left:18px;text-decoration:none}main{max-width:1060px;margin:0 auto;padding:24px}
.hero{text-align:center;padding:28px 0 8px}.hero h1{font-size:40px;margin:0 0 8px}.hero p{color:#555;margin:0 0 18px}
#q{width:100%;max-width:640px;font-size:20px;padding:14px 18px;border:2px solid #c9b8a6;border-radius:12px}
.filters{margin:12px 0}.filters select{padding:8px;margin:0 4px;border-radius:8px;border:1px solid #c9b8a6;background:#fff}
.count{color:#777;font-size:14px}table{width:100%;border-collapse:collapse;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.08)}
th,td{padding:9px 12px;border-bottom:1px solid #eee;text-align:left;vertical-align:top}thead th{background:#f1e9df;font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:#6b4f3a}
.specs th{width:42%;color:#6b4f3a;font-weight:600}.grid{display:grid;grid-template-columns:2fr 1fr;gap:24px}
aside{background:#fff;border-radius:10px;padding:4px 18px 14px;box-shadow:0 1px 3px rgba(0,0,0,.08)}.buy li{margin:6px 0}
.note,.src,.crumb{color:#777;font-size:13px}.lede{font-size:18px}.lbl{font-size:13px;color:#555}h1 small{font-size:16px;color:#8a3b12;background:#f6e3d1;padding:2px 10px;border-radius:20px;vertical-align:middle}
.newsletter{max-width:1060px;margin:30px auto;padding:22px 28px;background:#2b1a10;color:#fff;border-radius:14px}
.newsletter input{padding:10px 14px;border-radius:8px;border:0;width:280px;font-size:16px}.newsletter button{padding:10px 16px;margin-left:8px;border:0;border-radius:8px;background:#e7a35b;font-weight:700;cursor:pointer}
.nl-msg{margin-top:8px;color:#f3e3d3;font-size:14px}footer{max-width:1060px;margin:0 auto 40px;padding:0 24px;color:#777;font-size:13px}
@media(max-width:760px){.grid{grid-template-columns:1fr}.hero h1{font-size:30px}}
/* ---- mobile layer (groundup/mobile.py) ---- */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
.tscroll{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 0 4px}
.tscroll>table{margin:0}
img,video,iframe{max-width:100%;height:auto}
input,select,textarea,button{max-width:100%}
@media (max-width:700px){
 body{overflow-wrap:break-word}
 .gu-strip{font-size:14px!important;line-height:1.4!important;padding:6px 10px!important}
 .gu-strip a{display:inline-block;padding:6px 3px}
 header .w,header.top{flex-wrap:wrap;gap:4px 12px;padding-top:10px!important;padding-bottom:6px!important}
 header.top{padding-left:16px!important;padding-right:16px!important}
 header .w{padding-left:16px!important;padding-right:16px!important}
 header.top:has(>.w){padding:0!important;display:block}
 header nav{width:100%;display:flex;flex-wrap:wrap;gap:0 18px}
 header nav a{margin:0!important;padding:8px 0;font-size:15px;display:inline-block}
 .w{padding-left:14px;padding-right:14px}
 main{padding:16px 14px}
 .card{padding:16px 14px;margin:14px 0}
 .hero h1{font-size:28px!important;line-height:1.2}
 table{font-size:13.5px}
 th,td{padding:7px 6px}
 th[style*="width"]{width:40%!important}
 thead th{letter-spacing:0!important;font-size:12px!important}
 table.list th,table.list td{padding:7px 5px}
 .tscroll{border-radius:8px}
 .tscroll>table{min-width:100%}
 input,select,textarea{font-size:16px!important}
 select,input:not([type=checkbox]):not([type=radio]){min-height:42px}
 button{min-height:44px;font-size:16px}
 .filters{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
 .filters select{margin:0!important;flex:1 1 140px}
 .filters input{min-width:0!important;flex:1 1 100%}
 #q{font-size:17px!important}
 .calc{grid-template-columns:1fr 1fr!important}
 .calc>*:last-child{grid-column:1/-1}
 .calc button,#go{width:100%}
 .news input,.newsletter input{width:100%!important;margin:0 0 8px}
 .news button,.newsletter button{width:100%;margin:0!important}
 .grid a{padding:11px 12px}
}
