/* Generated pages: product, category, brand and information pages, guides, finder, compare and 404.
   Shared parts are in site.css. */
.page{max-width:1180px;margin:0 auto;padding:0 32px 40px;}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:0 6px;padding:14px 0 6px;font-family:var(--f-ui);font-size:14.5px;color:var(--muted);}
.crumbs li{display:flex;align-items:center;gap:6px;}
.crumbs li+li::before{content:"›";color:var(--muted);}
.crumbs a{display:inline-flex;align-items:center;min-height:44px;color:var(--emerald-text);text-decoration:underline;text-underline-offset:3px;}
.crumbs [aria-current]{color:var(--text-dim);}
.page-head{padding:10px 0 26px;max-width:820px;}
.page-head .label{display:inline-block;margin-bottom:8px;}
.page-head h1{font-size:clamp(30px,4.2vw,46px);margin-bottom:12px;}
.lead{font-size:18.5px;color:var(--text-dim);max-width:760px;}
.quote-lead{font-family:var(--f-head);font-size:22px;color:var(--text);}
body.lang-bn .quote-lead{font-family:var(--f-ui);}
.page-cta{margin-top:20px;display:flex;flex-wrap:wrap;gap:10px;}
.page-sec{padding:26px 0;border-top:1px solid var(--line);margin-top:10px;}
.page-sec h2{font-size:26px;margin-bottom:16px;}
.page-sec h2 a{color:inherit;}
.page-sec h2 a:hover{color:var(--emerald-text);}
.sec-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px 20px;flex-wrap:wrap;margin-bottom:6px;}
.sec-head h2{margin-bottom:10px;}
.sub-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;margin-bottom:12px;}
.sub-link{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:50px;padding:8px 14px;background:var(--white);border:1px solid var(--line);border-radius:var(--r-sm);font-family:var(--f-ui);font-size:15.5px;}
.sub-link:hover{border-color:var(--emerald);}
.sub-link b{font-weight:600;color:var(--copper-text);font-variant-numeric:tabular-nums;font-size:14.5px;text-align:right;}
.sub-link.req{border-style:dashed;border-color:var(--copper-text);}
.onreq-box{background:var(--paper-2);border:1px dashed var(--copper-text);border-radius:var(--r-md);padding:24px;max-width:820px;display:grid;gap:10px;font-size:17px;}
.onreq-box .btn-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px;}
.guide-link{margin:14px 0 0;}
.btn-row{display:flex;gap:12px;flex-wrap:wrap;}

/* Category index */
.cat-index{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);}
.cat-index-item{background:var(--paper);padding:24px;}
.cat-index-item h2{font-size:24px;}
.cat-index-item h2 a:hover{color:var(--emerald-text);}
.cat-index-item .cnt{font-family:var(--f-ui);font-weight:600;color:var(--copper-text);margin:4px 0 8px;}
.cat-index-item p{color:var(--text-dim);font-size:16px;}
.cat-index-item ul{list-style:none;margin-top:10px;display:grid;grid-template-columns:1fr 1fr;gap:0 16px;font-family:var(--f-ui);font-size:15px;}
.cat-index-item li{display:flex;justify-content:space-between;gap:8px;border-top:1px solid var(--line);}
.cat-index-item li a{display:inline-flex;align-items:center;min-height:40px;color:var(--emerald-text);}
.cat-index-item li span{color:var(--muted);align-self:center;font-variant-numeric:tabular-nums;}

/* Brand pages */
.brand-head .brand-logo{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--white);margin-bottom:16px;}
.brand-head .brand-logo img{height:44px;width:auto;}
.brand-head .brand-logo.featured{background:#F6DC00;}
.brand-head .brand-logo.brand-deli{background:#f4bf33;}
.brand-head .brand-logo.brand-workpro{background:#e71d0f;}
.brand-head .brand-logo.brand-workpro img{height:22px;}

/* About, contact */
.about-page{display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:start;}
.about-page .about-stats{margin-top:0;}
.contact-page{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start;}
.map-box.light{margin-top:0;background:var(--paper-2);border-color:var(--line);color:var(--text-dim);}
.contact-page .social-links a{color:var(--emerald-text);}

/* Product page */
.pp-product{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:44px;align-items:start;padding:8px 0 30px;}
.pp-product.no-photo{grid-template-columns:minmax(0,1fr);max-width:760px;}
.pp-photo{background:#fff;border:1px solid var(--line);border-radius:var(--r-md);aspect-ratio:1/1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px;position:relative;}
.pp-photo picture{display:flex;align-items:center;justify-content:center;width:100%;flex:1;min-height:0;}
.pp-photo img{width:100%;height:auto;max-height:100%;object-fit:contain;}
.pp-zoom{display:flex;align-items:center;justify-content:center;width:100%;flex:1;min-height:0;padding:0;border:0;background:none;cursor:zoom-in;border-radius:var(--r-sm);}
.pp-zoom:focus-visible{outline:2px solid var(--emerald);outline-offset:4px;}
.pp-zoom picture{display:flex;align-items:center;justify-content:center;width:100%;height:100%;}
.pp-zoom-ico{position:absolute;right:10px;bottom:10px;width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,0.94);border:1px solid var(--line-strong);display:flex;align-items:center;justify-content:center;color:var(--text);pointer-events:none;}
.pp-zoom:hover .pp-zoom-ico{border-color:var(--emerald);color:var(--emerald-text);}
.pp-lightbox{border:0;padding:0;margin:0;width:100vw;height:100vh;height:100dvh;max-width:100vw;max-height:100vh;max-height:100dvh;background:rgba(12,18,14,0.97);color:#fff;}
.pp-lightbox[open]{display:flex;align-items:center;justify-content:center;}
.pp-lightbox::backdrop{background:rgba(12,18,14,0.97);}
.pp-lb-fig{margin:0;display:flex;flex-direction:column;align-items:center;gap:12px;padding:56px 12px 20px;}
.pp-lb-fig img{display:block;width:auto;height:auto;max-width:min(94vw,860px);max-height:calc(100vh - 150px);max-height:calc(100dvh - 150px);background:#fff;border-radius:var(--r-md);}
.pp-lb-cap{font-family:var(--f-ui);font-size:15px;text-align:center;color:#eef2ee;max-width:94vw;}
.pp-lb-close{position:fixed;top:calc(env(safe-area-inset-top, 0px) + 12px);right:12px;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,0.35);background:rgba(255,255,255,0.12);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;}
.pp-lb-close:hover,.pp-lb-close:focus-visible{background:rgba(255,255,255,0.25);outline:2px solid #fff;outline-offset:2px;}
html.lb-open{overflow:hidden;}
.pp-photo figcaption{position:absolute;left:10px;bottom:8px;font-family:var(--f-ui);font-size:13.5px;color:var(--muted);background:rgba(255,255,255,0.9);padding:2px 8px;border-radius:4px;}
.pp-brand{display:inline-flex;align-items:center;min-height:44px;font-family:var(--f-ui);font-size:15px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--copper-text);}
.pp-info h1{font-size:clamp(28px,3.4vw,40px);margin:2px 0 10px;}
.pp-info h1 .pp-brand{display:flex;width:fit-content;margin-bottom:2px;line-height:1.2;}
.h1-code{display:inline-block;font-family:var(--f-ui);font-size:0.5em;font-weight:500;letter-spacing:0.03em;color:var(--muted);vertical-align:middle;margin-left:4px;}
.pp-code{font-family:var(--f-ui);font-size:15.5px;color:var(--text-dim);margin-bottom:14px;}
.pp-code b{color:var(--text);letter-spacing:0.03em;}
.pp-label{display:block;font-family:var(--f-ui);font-size:14px;font-weight:600;color:var(--text);margin-bottom:6px;}
.pp-info select{width:100%;min-height:48px;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--white);padding:8px 12px;font-family:var(--f-ui);font-size:16px;margin-bottom:16px;cursor:pointer;}
/* Sizes as tappable buttons (up to 12 sizes; longer lists keep the dropdown above) */
.pp-sizes{border:0;padding:0;margin:0 0 16px;min-width:0;}
.pp-sizes legend{padding:0;margin-bottom:8px;}
.pp-chips{display:flex;flex-wrap:wrap;gap:8px;}
.pp-chip{position:relative;display:inline-flex;max-width:100%;cursor:pointer;}
.pp-chip input{position:absolute;left:0;top:0;width:1px;height:1px;opacity:0;margin:0;pointer-events:none;}
.pp-chip span{display:inline-flex;align-items:center;min-height:42px;padding:8px 14px;border:1.5px solid var(--line-strong);border-radius:999px;background:var(--white);font-family:var(--f-ui);font-size:15px;line-height:1.25;color:var(--text);transition:background .2s,border-color .2s,color .2s,box-shadow .2s;}
.pp-chip:hover span{border-color:var(--emerald);}
.pp-chip input:checked + span{background:var(--emerald);border-color:var(--emerald);color:#fff;box-shadow:0 3px 10px rgba(46,125,82,0.25);}
.pp-chip input:focus-visible + span{outline:2px solid var(--emerald);outline-offset:2px;}
/* Picking another size: the old photo fades out over the new one (pages.js) */
.pp-fade-old{position:absolute;z-index:1;margin:0;object-fit:contain;pointer-events:none;transition:opacity .32s ease;}
.pp-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:6px;}
.pp-actions .btn.on{border-color:var(--emerald);color:var(--emerald-text);}
.pp-cmp{margin-bottom:10px;}
.pp-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 16px;margin-bottom:10px;}
.pp-row .pp-cmp{margin-bottom:0;}
.pp-share{position:relative;}
.pp-share-btn{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--white);color:var(--text);font-family:var(--f-ui);font-size:15.5px;cursor:pointer;}
.pp-share-btn:hover,.pp-share-btn[aria-expanded="true"]{border-color:var(--emerald);color:var(--emerald-text);}
.pp-share-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:40;min-width:200px;display:grid;padding:6px;background:var(--white);border:1px solid var(--line-strong);border-radius:var(--r-md);box-shadow:0 12px 32px rgba(22,36,28,0.16);}
.pp-share-menu a,.pp-share-menu button{display:flex;align-items:center;width:100%;min-height:44px;padding:0 12px;border:0;border-radius:var(--r-sm);background:none;color:var(--text);font-family:var(--f-ui);font-size:15.5px;text-align:left;text-decoration:none;cursor:pointer;}
.pp-share-menu a:hover,.pp-share-menu button:hover,.pp-share-menu a:focus-visible,.pp-share-menu button:focus-visible{background:var(--cream);color:var(--emerald-text);}
.pp-notes{list-style:none;display:grid;gap:8px;font-family:var(--f-ui);font-size:15px;color:var(--text-dim);border-top:1px solid var(--line);padding-top:14px;}
.pp-notes li{position:relative;padding-left:16px;}
.pp-notes li::before{content:"";position:absolute;left:0;top:.6em;width:6px;height:6px;background:var(--copper);transform:rotate(45deg);}
.pp-notes li:last-child{padding-left:0;}
.pp-notes li:last-child::before{display:none;}
.pp-sec{padding:26px 0;border-top:1px solid var(--line);}
.pp-sec h2{font-size:25px;margin-bottom:14px;}
.pp-specs .table-wrap{max-width:860px;}
.pp-specs .form-note{margin-top:8px;}
.pp-nospec{font-size:17px;color:var(--text-dim);max-width:760px;}
.spec-table.models td a{display:flex;align-items:center;min-height:40px;color:var(--emerald-text);text-decoration:underline;text-underline-offset:3px;}
.spec-table.models td.code{font-family:var(--f-ui);white-space:nowrap;color:var(--text-dim);}
.spec-table.models tr.on td{background:var(--paper-2);}
.spec-table.models{min-width:0;}
.pp-about p{max-width:820px;color:var(--text-dim);}
.pp-acc{margin-bottom:20px;}
.pp-acc h3{font-family:var(--f-ui);font-weight:600;font-size:17px;margin-bottom:10px;}
.pp-acc h3 a{display:inline-flex;align-items:center;min-height:40px;color:var(--emerald-text);text-decoration:underline;text-underline-offset:3px;}
.pp-all{margin-top:12px;}
/* Compact product tiles (related, goes well with) */
.mc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px;}
.mc{display:flex;flex-direction:column;gap:3px;background:var(--white);border:1px solid var(--line);border-radius:var(--r-md);padding:8px 10px 12px;font-family:var(--f-ui);transition:border-color .2s,box-shadow .2s,transform .2s;}
.mc:hover{border-color:var(--emerald);}
.mc-ph{aspect-ratio:1/1;overflow:hidden;display:flex;align-items:center;justify-content:center;margin-bottom:6px;}
.mc-ph picture{display:flex;align-items:center;justify-content:center;width:100%;height:100%;}
.mc-ph img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;transition:transform .3s ease;}
.mc-none{background:var(--paper-2);border-radius:var(--r-sm);}
.mc-b{font-size:12.5px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--copper-text);}
.mc-n{font-family:var(--f-head);font-size:15.5px;line-height:1.3;color:var(--text);}
body.lang-bn .mc-n{font-family:var(--f-ui);font-weight:600;}
.mc-c{font-size:13px;color:var(--muted);}

/* Finder */
.finder-box{background:var(--paper-2);border:1px solid var(--line);border-radius:var(--r-md);padding:24px;max-width:900px;}
.finder-box .field{margin-bottom:12px;}
.finder-form{margin-top:22px;border-top:1px solid var(--line);padding-top:18px;}
.f-or{font-family:var(--f-ui);font-size:16px;font-weight:600;margin-bottom:12px;}
.finder-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;}
.finder-box .form-note{margin-top:14px;}
.finder-results{margin-top:26px;}
.finder-sum{font-family:var(--f-ui);font-size:16.5px;margin-bottom:4px;}
.finder-count{font-family:var(--f-ui);color:var(--muted);margin:8px 0 14px;}
.finder-h{font-family:var(--f-ui);font-size:17px;font-weight:600;margin:24px 0 12px;}
.finder-ask{margin-top:22px;}
.lead-note{font-size:17px;color:var(--text-dim);margin:10px 0 16px;}

/* Compare */
.cmp-wrap{max-width:100%;}
.cmp-table{border-collapse:collapse;width:100%;min-width:560px;font-size:15.5px;}
.cmp-table th,.cmp-table td{border-bottom:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top;}
.cmp-table thead th{background:var(--white);font-weight:400;min-width:180px;}
.cmp-table thead th a{display:grid;gap:4px;}
.cmp-table thead img{width:120px;height:120px;object-fit:contain;background:#fff;}
.cmp-table tbody th{font-family:var(--f-ui);font-weight:600;font-size:14.5px;background:var(--paper-2);width:170px;position:sticky;left:0;}
.cmp-b{font-family:var(--f-ui);font-size:13px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--copper-text);}
.cmp-n{font-family:var(--f-head);font-size:17px;color:var(--text);}
.cmp-c{display:block;font-family:var(--f-ui);font-size:13.5px;color:var(--muted);margin:4px 0;}
.cmp-table .na{color:var(--muted);}

/* Guides */
.guide{max-width:820px;}
.guide h2{font-size:26px;margin:28px 0 10px;}
.guide p{margin-bottom:12px;color:var(--text-dim);}
.guide .lead{color:var(--text);}
.g-dl{display:grid;grid-template-columns:200px 1fr;gap:10px 18px;margin:10px 0;}
.g-dl dt{font-family:var(--f-ui);font-weight:600;}
.g-dl dd{color:var(--text-dim);}
.g-list{padding-left:22px;display:grid;gap:6px;color:var(--text-dim);margin-bottom:10px;}
.guide .table-wrap{max-width:520px;margin:10px 0 14px;}
.g-note{margin-top:22px;}

/* 404 */
.nf{padding:40px 0 20px;max-width:780px;}
.nf h1{font-size:clamp(30px,4vw,44px);margin-bottom:14px;}
.nf .lead{margin-bottom:8px;}
.nf-search{display:flex;align-items:center;gap:10px;background:var(--white);border:2px solid var(--emerald);border-radius:var(--r-md);padding:6px 6px 6px 16px;margin:22px 0;}
.nf-search input{flex:1;min-width:0;border:none;outline:none;background:none;min-height:46px;font-family:var(--f-ui);font-size:16px;}

.page-quote{max-width:820px;margin:0;}

@media (max-width:900px){
  .pp-product{grid-template-columns:minmax(0,1fr);gap:18px;}
  .pp-photo{max-width:460px;width:100%;margin:0 auto;}
  .about-page,.contact-page{grid-template-columns:1fr;}
  .cat-index{grid-template-columns:1fr;}
}
@media (max-width:640px){
  .page{padding:0 16px 30px;}
  .crumbs ol{font-size:14px;}
  .page-head h1{font-size:28px;}
  .lead{font-size:17px;}
  .page-cta .btn,.onreq-box .btn{flex:1 1 100%;}
  .pp-actions{grid-template-columns:1fr;}
  .sub-links{grid-template-columns:1fr 1fr;}
  .sub-link{font-size:14.5px;padding:8px 10px;}
  .cat-index-item{padding:18px 16px;}
  .cat-index-item ul{grid-template-columns:1fr;}
  .finder-grid{grid-template-columns:1fr;}
  .finder-box{padding:18px 14px;}
  .g-dl{grid-template-columns:1fr;gap:2px;}
  .g-dl dd{margin-bottom:10px;}
  .mc-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  .spec-table th{width:42%;}
}
@media (max-width:360px){ .sub-links{grid-template-columns:1fr;} }
