[hidden]{display:none!important}
/* ============================================================================
   SUBURBAN THUGS — layout.css
   Storefront chrome + component + template layouts. Loaded after theme.css.
   Every value resolves to a design-token custom property from theme.css.
   ============================================================================ */
.container--flush{padding-inline:0;}
.container.narrow,.narrow{max-width:860px;}
.band{padding-block:var(--space-8);}
.band--subtle{background:var(--bg-subtle);}
.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-6);}
.sec-head h2{margin:0;}
.sec-head .eyebrow{display:block;margin-bottom:6px;}
.sec-link{font-weight:600;font-size:var(--fs-sm);display:inline-flex;align-items:center;gap:4px;}
.eyebrow--accent{color:var(--teal-300);}

/* ---- ANNOUNCEMENT ---- */
.announce{background:var(--slate-900);color:#fff;font-size:var(--fs-sm);}
.announce .container{display:flex;align-items:center;justify-content:space-between;min-height:40px;gap:var(--space-4);}
.announce a{color:#fff;}
.announce .promo{display:flex;align-items:center;gap:8px;font-weight:500;margin:0;}
.announce .promo strong{color:var(--teal-300);}
.announce .meta{display:flex;align-items:center;gap:var(--space-5);color:var(--slate-300);}
.announce .meta a{display:inline-flex;align-items:center;gap:6px;}

/* ---- HEADER ---- */
.site-header{background:var(--surface-default);border-bottom:1px solid var(--border-default);position:sticky;top:0;z-index:40;}
.header-main{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--space-6);padding-block:var(--space-4);}
.brand-logo{width:230px;height:auto;}
.searchbar{display:flex;align-items:stretch;border:2px solid var(--slate-900);border-radius:var(--radius-md);overflow:hidden;max-width:680px;width:100%;background:var(--surface-default);}
.searchbar .scope{display:flex;align-items:center;gap:6px;padding:0 var(--space-4);background:var(--slate-50);border-right:1px solid var(--border-default);font-weight:600;font-size:var(--fs-sm);white-space:nowrap;font-family:var(--font-display);cursor:pointer;}
.searchbar input{flex:1;border:none;padding:0 var(--space-4);font-size:var(--fs-base);min-height:48px;background:transparent;color:var(--text-primary);}
.searchbar input:focus{outline:none;}
.searchbar button{border:none;background:var(--brand-primary);color:#fff;padding:0 var(--space-5);cursor:pointer;display:flex;align-items:center;gap:6px;font-family:var(--font-display);font-weight:600;}
.searchbar button:hover{background:var(--brand-primary-hover);}
.header-actions{display:flex;align-items:center;gap:var(--space-3);}
.hbtn{display:flex;flex-direction:column;align-items:center;gap:2px;background:none;border:none;cursor:pointer;color:var(--text-primary);padding:6px 8px;border-radius:var(--radius-sm);font-size:var(--fs-2xs);font-weight:600;position:relative;min-width:54px;text-decoration:none;font-family:var(--font-body);}
.hbtn:hover{background:var(--slate-50);color:var(--text-primary);}
.hbtn .count{position:absolute;top:-2px;right:6px;background:var(--sale);color:#fff;font-size:10px;font-weight:700;min-width:17px;height:17px;border-radius:999px;display:grid;place-items:center;padding:0 4px;}
.hbtn--menu{display:none;}
.au-badge{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-xs);font-weight:600;color:var(--text-secondary);}
.au-flag{width:22px;height:14px;border-radius:2px;flex:none;}

/* ---- DEPT NAV ---- */
.deptnav{background:var(--slate-900);}
.deptnav .container{display:flex;align-items:stretch;gap:0;}
.dept-all{display:flex;align-items:center;gap:10px;background:var(--brand-primary);color:#fff;padding:0 var(--space-5);font-family:var(--font-display);font-weight:600;font-size:var(--fs-sm);cursor:pointer;border:none;white-space:nowrap;}
.deptnav-links{display:flex;flex-wrap:wrap;}
.deptnav-links a{color:#fff;padding:14px var(--space-4);font-size:var(--fs-sm);font-weight:500;display:inline-flex;align-items:center;gap:6px;opacity:.92;}
.deptnav-links a:hover{opacity:1;background:rgba(255,255,255,.08);color:#fff;}
.deptnav-util{margin-left:auto;display:flex;align-items:center;}
.deptnav-util a{color:var(--teal-300);font-weight:600;display:inline-flex;align-items:center;gap:6px;padding-inline:var(--space-4);white-space:nowrap;}

/* ---- HERO ---- */
.hero{position:relative;min-height:520px;display:flex;align-items:center;overflow:hidden;background:var(--slate-900);}
.hero .hero-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.hero .scrim{position:absolute;inset:0;background:var(--overlay-hero-gradient);}
.hero .container{position:relative;}
.hero-copy{max-width:540px;color:#fff;}
.hero-copy .eyebrow{color:var(--teal-300);}
.hero-copy h1{color:#fff;font-size:var(--fs-5xl);margin-block:12px 16px;}
.hero-copy p{color:rgba(255,255,255,.86);font-size:var(--fs-md);}
.hero-cta{display:flex;gap:var(--space-3);margin-top:var(--space-5);flex-wrap:wrap;}
.btn--on-dark{color:#fff;border-color:rgba(255,255,255,.4);}
.btn--on-dark:hover{background:rgba(255,255,255,.12);color:#fff;}
.hero-trust{display:flex;gap:var(--space-5);margin-top:var(--space-6);color:rgba(255,255,255,.8);font-size:var(--fs-sm);flex-wrap:wrap;list-style:none;padding:0;}
.hero-trust li{display:inline-flex;align-items:center;gap:8px;}
.hero-trust .icon{color:var(--teal-300);}

/* ---- USP ---- */
.usp{background:var(--surface-default);border-bottom:1px solid var(--border-default);}
.usp .container{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-5);padding-block:var(--space-5);}
.usp-item{display:flex;align-items:center;gap:var(--space-3);}
.usp-item .ico{width:46px;height:46px;border-radius:var(--radius-md);background:var(--indigo-50);color:var(--brand-primary);display:grid;place-items:center;flex:none;}
.usp-item h4{margin:0;font-size:var(--fs-base);}
.usp-item p{margin:0;font-size:var(--fs-sm);color:var(--text-secondary);max-width:none;}

/* ---- DEPARTMENT GRID ---- */
.dept-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--space-4);}
.dept-tile{position:relative;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border-default);background:var(--surface-default);display:flex;flex-direction:column;min-height:128px;transition:transform .15s,box-shadow .15s;color:var(--text-primary);text-decoration:none;}
.dept-tile:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);color:var(--text-primary);}
.dept-tile .tile-art{height:74px;display:grid;place-items:center;color:#fff;}
.dept-tile .tile-art .icon{width:34px;height:34px;opacity:.95;}
.dept-tile .tile-label{padding:10px var(--space-3) 12px;font-family:var(--font-display);font-weight:600;font-size:var(--fs-sm);line-height:1.2;}

/* ---- PRODUCT GRID + CARD ---- */
.prod-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--space-4);}
.prod-grid--plp{grid-template-columns:repeat(4,1fr);}
.prod-card{position:relative;background:var(--surface-default);border:1px solid var(--border-default);border-radius:var(--radius-lg);overflow:hidden;display:flex;flex-direction:column;transition:transform .15s,box-shadow .15s,border-color .15s;}
.prod-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:var(--border-strong);}
.prod-media{position:relative;aspect-ratio:1/1;display:grid;place-items:center;background:var(--slate-50);}
.prod-media .prod-ph{width:40%;height:40%;color:var(--slate-300);}
.prod-badges{position:absolute;top:10px;left:10px;display:flex;flex-direction:column;gap:6px;align-items:flex-start;}
.prod-wish{position:absolute;top:10px;right:10px;width:34px;height:34px;border-radius:999px;background:var(--surface-default);border:1px solid var(--border-default);display:grid;place-items:center;color:var(--text-secondary);cursor:pointer;box-shadow:var(--shadow-xs);}
.prod-wish:hover{color:var(--sale);}
.prod-body{padding:var(--space-4);display:flex;flex-direction:column;gap:6px;flex:1;}
.prod-cat{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);font-weight:600;}
.prod-title{font-size:var(--fs-sm);font-weight:600;line-height:1.35;margin:0;font-family:var(--font-body);}
.prod-title a{color:var(--text-primary);}
.prod-rating{display:flex;align-items:center;gap:4px;font-size:var(--fs-xs);color:var(--text-secondary);}
.stars{display:inline-flex;color:var(--amber-500);}
.stars .icon{width:14px;height:14px;fill:currentColor;stroke:none;}
.stars--sm .icon{width:12px;height:12px;}
.prod-price{display:flex;align-items:baseline;gap:8px;margin-top:auto;padding-top:6px;flex-wrap:wrap;}
.prod-price .now{font-family:var(--font-display);font-weight:700;font-size:var(--fs-lg);color:var(--price);}
.prod-price .was{font-size:var(--fs-sm);color:var(--price-was);text-decoration:line-through;}
.prod-price .save{font-size:var(--fs-2xs);font-weight:700;color:var(--sale-text);}
.afterpay-line{font-size:var(--fs-2xs);color:var(--text-secondary);display:flex;align-items:center;gap:4px;flex-wrap:wrap;}
.pay-inline{width:34px;height:21px;border-radius:3px;}
.prod-add{margin:0 var(--space-4) var(--space-4);width:auto;}

/* ---- DEALS ---- */
.deals{background:linear-gradient(120deg,var(--indigo-800),var(--indigo-600));color:#fff;border-radius:var(--radius-xl);overflow:hidden;}
.deals-inner{display:grid;grid-template-columns:1fr 1.4fr;gap:var(--space-7);align-items:center;padding-block:var(--space-7);}
.deals h2{color:#fff;font-size:var(--fs-3xl);}
.deals p{color:rgba(255,255,255,.85);}
.deal-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4);}
.deal-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:var(--radius-md);padding:var(--space-4);color:#fff;text-decoration:none;display:block;}
.deal-card .icon{color:var(--teal-300);margin-bottom:8px;}
.deal-card strong{display:block;font-family:var(--font-display);font-size:var(--fs-md);}
.deal-card span{font-size:var(--fs-sm);color:rgba(255,255,255,.78);}
.countdown{display:flex;gap:8px;margin-top:var(--space-4);}
.countdown div{background:rgba(0,0,0,.25);border-radius:var(--radius-sm);padding:8px 10px;text-align:center;min-width:54px;}
.countdown div b{display:block;font-family:var(--font-display);font-size:var(--fs-lg);}
.countdown div span{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:rgba(255,255,255,.7);}

/* ---- TRUST ---- */
.trust .container{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-8);align-items:center;}
.trust-badges{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0;}
.review-cards{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);}
.review-card{background:var(--surface-default);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-xs);margin:0;}
.review-card .stars{margin-bottom:8px;}
.review-card .stars .icon{width:15px;height:15px;}
.review-card blockquote{margin:0 0 10px;}
.review-card p{font-size:var(--fs-sm);margin:0;}
.review-card .who{font-size:var(--fs-xs);color:var(--text-secondary);font-weight:600;display:flex;align-items:center;gap:6px;}
.verified{color:var(--green-600);display:inline-flex;align-items:center;gap:3px;}
.pay-strip{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:var(--space-5);}
.pay-strip svg{width:42px;height:26px;border-radius:4px;}
.pay-strip--sm svg{width:34px;height:21px;}

/* ---- BLOG ---- */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5);}
.blog-card{background:var(--surface-default);border:1px solid var(--border-default);border-radius:var(--radius-lg);overflow:hidden;display:flex;flex-direction:column;}
.blog-card .b-art{height:170px;display:block;}
.blog-card .b-body{padding:var(--space-5);display:flex;flex-direction:column;gap:8px;flex:1;}
.blog-card .b-meta{font-size:var(--fs-xs);color:var(--text-secondary);display:flex;gap:10px;}
.blog-card h2,.blog-card h3{font-size:var(--fs-lg);margin:0;}
.blog-card p{font-size:var(--fs-sm);color:var(--text-secondary);margin:0;}
.blog-card .more{font-weight:600;font-size:var(--fs-sm);margin-top:auto;}

/* ---- NEWSLETTER ---- */
.newsletter{background:var(--slate-900);color:#fff;border-radius:var(--radius-xl);overflow:hidden;}
.newsletter-inner{display:grid;grid-template-columns:1fr auto;gap:var(--space-6);align-items:center;padding-block:var(--space-7);}
.newsletter h2{color:#fff;}
.newsletter p{color:rgba(255,255,255,.8);margin:0;}
.nl-form{display:flex;gap:8px;min-width:420px;}
.nl-form input{flex:1;min-height:50px;border-radius:var(--radius-md);border:none;padding:0 var(--space-4);font-size:var(--fs-base);}
.nl-form--stack{flex-direction:column;min-width:0;width:100%;}
.nl-consent{font-size:var(--fs-2xs);margin-top:10px;grid-column:1/-1;}
.nl-consent a{color:var(--teal-300);}

/* ---- FOOTER ---- */
.site-footer{background:var(--slate-900);color:var(--slate-300);margin-top:var(--space-9);}
.footer-top{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:var(--space-7);padding-block:var(--space-8);}
.footer-top h5{color:#fff;font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:.08em;margin-bottom:var(--space-4);}
.footer-top ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px;}
.footer-top a{color:var(--slate-300);font-size:var(--fs-sm);}
.footer-top a:hover{color:#fff;}
.foot-logo{width:210px;margin-bottom:var(--space-4);}
.foot-brand p{font-size:var(--fs-sm);max-width:34ch;}
.foot-contact{display:flex;flex-direction:column;gap:10px;font-size:var(--fs-sm);}
.foot-contact a,.foot-contact span{display:flex;align-items:center;gap:8px;color:var(--slate-300);}
.foot-social{display:flex;gap:10px;margin-top:var(--space-4);}
.foot-social a{width:38px;height:38px;border-radius:var(--radius-sm);background:rgba(255,255,255,.08);display:grid;place-items:center;color:#fff;}
.foot-social a:hover{background:var(--brand-primary);}
.site-footer .pay-strip{padding-block:var(--space-5);border-top:1px solid rgba(255,255,255,.1);}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-block:var(--space-4);display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;font-size:var(--fs-xs);}
.footer-bottom .links{display:flex;gap:var(--space-4);flex-wrap:wrap;}
.footer-bottom a{color:var(--slate-300);}

/* ---- BREADCRUMBS ---- */
.breadcrumbs{display:flex;align-items:center;gap:8px;font-size:var(--fs-sm);color:var(--text-secondary);padding-block:var(--space-5);flex-wrap:wrap;}
.breadcrumbs a{color:var(--text-secondary);}
.breadcrumbs a:hover{color:var(--brand-primary);}
.breadcrumbs--inverse,.breadcrumbs--inverse a{color:rgba(255,255,255,.8);}

/* ---- DRAWERS + MODALS ---- */
.drawer{position:fixed;top:0;bottom:0;width:min(420px,92vw);background:var(--surface-default);z-index:60;display:flex;flex-direction:column;box-shadow:var(--shadow-xl);}
.drawer--right{right:0;}
.drawer--left{left:0;}
.drawer-head{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5);border-bottom:1px solid var(--border-default);}
.drawer-head h2{margin:0;font-size:var(--fs-xl);}
.iconbtn{width:40px;height:40px;border-radius:var(--radius-md);border:1px solid transparent;background:none;display:grid;place-items:center;cursor:pointer;color:var(--text-primary);}
.iconbtn:hover{background:var(--slate-50);}
.freeship-bar{padding:var(--space-4) var(--space-5);background:var(--indigo-50);font-size:var(--fs-sm);}
.freeship-bar p{margin:0 0 8px;display:flex;align-items:center;gap:8px;}
.freeship-bar--wide{border-radius:var(--radius-md);margin-block:var(--space-5);}
.progress{height:8px;background:var(--slate-200);border-radius:999px;overflow:hidden;}
.progress span{display:block;height:100%;background:linear-gradient(90deg,var(--brand-primary),var(--brand-accent));border-radius:999px;}
.mini-items{list-style:none;margin:0;padding:var(--space-3) var(--space-5);overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:var(--space-4);}
.mini-item{display:grid;grid-template-columns:auto 1fr auto;gap:var(--space-3);align-items:center;}
.mini-thumb{width:60px;height:60px;border-radius:var(--radius-md);background:var(--slate-50);display:grid;place-items:center;color:var(--slate-400);}
.mini-name{font-size:var(--fs-sm);font-weight:600;margin:0 0 6px;}
.mini-price{font-family:var(--font-display);font-weight:700;}
.qty{display:inline-flex;align-items:center;border:1.5px solid var(--border-strong);border-radius:var(--radius-md);overflow:hidden;}
.qty-btn{width:34px;height:34px;border:none;background:none;cursor:pointer;display:grid;place-items:center;color:var(--text-primary);}
.qty-btn:hover{background:var(--slate-50);}
.qty span,.qty-input{min-width:34px;text-align:center;font-weight:600;border:none;}
.qty-input{width:44px;height:34px;}
.drawer-foot{padding:var(--space-5);border-top:1px solid var(--border-default);display:flex;flex-direction:column;gap:10px;}
.mini-subtotal{display:flex;justify-content:space-between;font-size:var(--fs-md);}
.mini-subtotal strong{font-family:var(--font-display);}
.drawer-empty{padding:var(--space-8) var(--space-5);text-align:center;color:var(--text-secondary);display:flex;flex-direction:column;align-items:center;gap:12px;}

.modal{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:var(--space-5);}
.modal-backdrop{position:absolute;inset:0;background:var(--overlay-scrim);}
.modal-panel{position:relative;background:var(--surface-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-width:920px;width:100%;max-height:90vh;overflow:auto;}
.modal-close{position:absolute;top:12px;right:12px;z-index:2;background:var(--surface-default);}
.qv-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6);padding:var(--space-6);}
.qv-gallery{background:var(--slate-50);border-radius:var(--radius-lg);display:grid;place-items:center;aspect-ratio:1/1;}
.qv-gallery .gallery-ph{width:40%;height:40%;color:var(--slate-300);}
.qv-summary{display:flex;flex-direction:column;gap:10px;}

/* search overlay */
.search-overlay{position:fixed;inset:0;z-index:60;}
.search-overlay-panel{position:relative;background:var(--surface-default);box-shadow:var(--shadow-lg);padding:var(--space-6);max-width:840px;margin:8vh auto 0;border-radius:var(--radius-xl);}
.searchbar--overlay{border-width:2px;align-items:center;padding-inline:var(--space-4);}
.searchbar--overlay input{min-height:56px;}
.so-icon{color:var(--text-secondary);margin-right:8px;}
.typeahead{margin-top:var(--space-4);}
.ta-label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);font-weight:600;}
.ta-list{list-style:none;padding:0;margin:8px 0 0;}
.ta-list a{display:flex;align-items:center;gap:10px;padding:10px 8px;border-radius:var(--radius-sm);color:var(--text-primary);}
.ta-list a:hover{background:var(--slate-50);}
.ta-dept{margin-left:auto;font-size:var(--fs-xs);color:var(--text-secondary);}

/* mobile nav */
.mobile-nav{padding-bottom:var(--space-5);overflow-y:auto;}
.searchbar--mini{margin:var(--space-4) var(--space-5);}
.searchbar--mini input{min-height:42px;}
.mnav-quick{display:flex;flex-direction:column;padding:0 var(--space-5);gap:2px;}
.mnav-quick a{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid var(--border-default);color:var(--text-primary);font-weight:600;}
.mnav-heading{padding:var(--space-4) var(--space-5) 0;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);font-weight:700;}
.mnav-accordion{padding:0 var(--space-5);}
.mnav-item summary{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--border-default);cursor:pointer;font-weight:600;list-style:none;}
.mnav-item summary::-webkit-details-marker{display:none;}
.mnav-sub{display:flex;flex-direction:column;gap:8px;padding:8px 0 14px var(--space-4);}
.mnav-sub a{color:var(--text-secondary);font-size:var(--fs-sm);}

/* newsletter popup */
.nl-popup-panel{max-width:560px;display:grid;grid-template-columns:200px 1fr;overflow:hidden;}
.nl-popup-art{display:grid;place-items:center;color:#fff;}
.nl-popup-body{padding:var(--space-6);}
.nl-decline{background:none;border:none;color:var(--text-secondary);cursor:pointer;margin-top:10px;font-size:var(--fs-sm);text-decoration:underline;}
.login-popup-panel{max-width:440px;padding:var(--space-6);}

/* cookie */
.cookie-banner{position:fixed;left:0;right:0;bottom:0;z-index:55;background:var(--slate-900);color:#fff;box-shadow:var(--shadow-lg);}
.cookie-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding-block:var(--space-4);flex-wrap:wrap;}
.cookie-inner p{margin:0;font-size:var(--fs-sm);display:flex;align-items:center;gap:8px;color:rgba(255,255,255,.85);}
.cookie-inner a{color:var(--teal-300);}
.cookie-actions{display:flex;gap:10px;}

/* toasts */
.toast-host{position:fixed;bottom:var(--space-5);right:var(--space-5);z-index:70;display:flex;flex-direction:column;gap:10px;}
.toast{display:flex;align-items:center;gap:10px;background:var(--surface-default);border:1px solid var(--border-default);border-left:4px solid var(--success);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:12px 14px;min-width:260px;font-size:var(--fs-sm);font-weight:600;}
.toast--success{border-left-color:var(--success);}
.toast-icon{color:var(--success);}
.toast-close{width:28px;height:28px;margin-left:auto;}
.inline-alert{display:flex;align-items:center;gap:8px;font-size:var(--fs-sm);font-weight:600;padding:10px 12px;border-radius:var(--radius-md);}
.inline-alert--error{background:var(--error-bg);color:var(--error);}
.inline-alert--warning{background:var(--warning-bg);color:var(--warning);}

/* ---- PLP ---- */
.dept-banner{padding-block:var(--space-6);color:#fff;}
.dept-banner .breadcrumbs{padding-top:0;}
.dept-title{color:#fff;margin:0;}
.dept-sub{color:rgba(255,255,255,.85);margin:6px 0 0;}
.plp-layout{display:grid;grid-template-columns:268px 1fr;gap:var(--space-6);padding-block:var(--space-6);align-items:start;}
.plp-sidebar .filter-toggle{display:none;margin-bottom:var(--space-4);}
.filter-group{padding-block:var(--space-5);border-bottom:1px solid var(--border-default);}
.filter-group h3{font-size:var(--fs-base);margin:0 0 var(--space-3);}
.facet-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.facet-list a{display:flex;justify-content:space-between;color:var(--text-primary);font-size:var(--fs-sm);}
.facet-list a:hover{color:var(--brand-primary);}
.facet-count{color:var(--text-secondary);font-size:var(--fs-xs);}
.check{display:flex;align-items:center;gap:8px;font-size:var(--fs-sm);cursor:pointer;}
.check input{width:18px;height:18px;accent-color:var(--brand-primary);}
.price-track{height:6px;background:var(--slate-200);border-radius:999px;position:relative;margin:12px 0;}
.price-fill{position:absolute;left:20%;right:30%;top:0;bottom:0;background:var(--brand-primary);border-radius:999px;}
.price-inputs{display:flex;align-items:center;gap:8px;}
.input--sm{min-height:38px;font-size:var(--fs-sm);}
.sort-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) 0 var(--space-4);border-bottom:1px solid var(--border-default);margin-bottom:var(--space-5);flex-wrap:wrap;}
.result-count{margin:0;color:var(--text-secondary);font-size:var(--fs-sm);}
.toolbar-right{display:flex;align-items:center;gap:var(--space-4);}
.view-toggle{display:inline-flex;border:1px solid var(--border-strong);border-radius:var(--radius-md);overflow:hidden;}
.vt-btn{width:40px;height:40px;border:none;background:var(--surface-default);cursor:pointer;display:grid;place-items:center;color:var(--text-secondary);}
.vt-btn.is-active{background:var(--brand-primary);color:#fff;}
.sort-select .select{min-width:200px;}
.pagination{display:flex;align-items:center;gap:6px;justify-content:center;padding-block:var(--space-7);}
.page-btn{min-width:42px;height:42px;border-radius:var(--radius-md);border:1px solid var(--border-default);display:grid;place-items:center;color:var(--text-primary);font-weight:600;font-family:var(--font-display);}
.page-btn:hover{border-color:var(--brand-primary);color:var(--brand-primary);}
.page-btn.is-active{background:var(--brand-primary);color:#fff;border-color:var(--brand-primary);}
.page-ellipsis{padding:0 6px;color:var(--text-secondary);}
.empty-state{text-align:center;padding:var(--space-9) var(--space-5);display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--text-secondary);}
.empty-state .icon{color:var(--slate-300);}
.empty-state h2{color:var(--text-primary);margin:0;}

/* ---- PDP ---- */
.pdp-top{display:grid;grid-template-columns:1.1fr 1fr;gap:var(--space-7);padding-block:var(--space-5) var(--space-8);}
.pdp-gallery{display:flex;flex-direction:column;gap:var(--space-3);}
.gallery-main{position:relative;aspect-ratio:1/1;background:var(--slate-50);border-radius:var(--radius-lg);display:grid;place-items:center;}
.gallery-main .gallery-ph{width:38%;height:38%;color:var(--slate-300);}
.gallery-zoom{position:absolute;bottom:12px;right:12px;background:var(--surface-default);box-shadow:var(--shadow-sm);}
.gallery-badge{position:absolute;top:12px;left:12px;}
.gallery-thumbs{display:flex;gap:10px;}
.thumb{width:72px;height:72px;border-radius:var(--radius-md);border:1.5px solid var(--border-default);background:var(--slate-50);display:grid;place-items:center;cursor:pointer;color:var(--slate-300);}
.thumb.is-active{border-color:var(--brand-primary);}
.pdp-summary{display:flex;flex-direction:column;gap:var(--space-3);}
.pdp-summary h1{font-size:var(--fs-3xl);margin:4px 0;}
.pdp-rating{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:var(--fs-sm);}
.rating-link{color:var(--brand-primary);}
.pdp-price{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;}
.pdp-price .now{font-family:var(--font-display);font-weight:700;font-size:var(--fs-2xl);color:var(--price);}
.pdp-price .was{font-size:var(--fs-lg);color:var(--price-was);text-decoration:line-through;}
.gst-label{font-size:var(--fs-xs);color:var(--text-secondary);font-weight:600;background:var(--slate-100);padding:3px 8px;border-radius:var(--radius-pill);}
.stock-line{display:flex;align-items:center;gap:8px;font-size:var(--fs-sm);font-weight:600;margin:0;}
.stock-in{color:var(--success);}
.pdp-form{display:flex;flex-direction:column;gap:var(--space-4);margin-top:var(--space-2);}
.variations{display:flex;flex-direction:column;gap:var(--space-4);}
.variation label{font-weight:600;font-size:var(--fs-sm);display:block;margin-bottom:8px;}
.swatch-options{display:flex;gap:10px;}
.swatch-opt{width:40px;height:40px;border-radius:50%;border:2px solid var(--border-default);background:var(--sw);cursor:pointer;}
.swatch-opt.is-active{box-shadow:0 0 0 2px var(--surface-default),0 0 0 4px var(--brand-primary);}
.pdp-actions{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap;}
.pdp-add{flex:1;min-width:200px;}
.iconbtn--wish{border:1.5px solid var(--border-strong);width:52px;height:52px;}
.ships-from{display:flex;align-items:center;gap:8px;font-size:var(--fs-sm);color:var(--text-secondary);margin:0;}
.trust-strip{list-style:none;display:flex;gap:var(--space-5);padding:var(--space-4);margin:var(--space-2) 0;background:var(--bg-subtle);border-radius:var(--radius-md);flex-wrap:wrap;}
.trust-strip li{display:flex;align-items:center;gap:8px;font-size:var(--fs-sm);font-weight:600;}
.trust-strip .icon{color:var(--brand-accent);}
.trust-strip--stack{flex-direction:column;gap:12px;}
.spec-block{display:grid;gap:8px;margin:var(--space-2) 0 0;}
.spec-block div{display:grid;grid-template-columns:120px 1fr;gap:12px;font-size:var(--fs-sm);padding:8px 0;border-bottom:1px solid var(--border-default);}
.spec-block dt{color:var(--text-secondary);margin:0;}
.spec-block dd{margin:0;font-weight:600;}
.pdp-tabs{padding-block:var(--space-6);border-top:1px solid var(--border-default);}
.tablist{display:flex;gap:4px;border-bottom:1px solid var(--border-default);flex-wrap:wrap;}
.tab{padding:12px var(--space-5);background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-family:var(--font-display);font-weight:600;color:var(--text-secondary);font-size:var(--fs-base);}
.tab.is-active{color:var(--brand-primary);border-bottom-color:var(--brand-primary);}
.tabpanel{padding-block:var(--space-5);}

/* ---- CART ---- */
.cart-layout{display:grid;grid-template-columns:1fr 360px;gap:var(--space-6);align-items:start;}
.cart-table{width:100%;border-collapse:collapse;}
.cart-table thead th{text-align:left;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);padding:0 var(--space-3) var(--space-3);border-bottom:1px solid var(--border-default);}
.cart-row td{padding:var(--space-4) var(--space-3);border-bottom:1px solid var(--border-default);vertical-align:middle;}
.cart-prod{display:flex;gap:var(--space-3);align-items:center;}
.cart-thumb{width:64px;height:64px;border-radius:var(--radius-md);background:var(--slate-50);display:grid;place-items:center;color:var(--slate-400);flex:none;}
.cart-name{font-weight:600;margin:0 0 4px;}
.cart-actions{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);margin-top:var(--space-5);flex-wrap:wrap;}
.coupon{display:flex;gap:8px;}
.totals-card{background:var(--surface-default);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-sm);position:sticky;top:140px;display:flex;flex-direction:column;gap:12px;}
.totals-card h2{font-size:var(--fs-lg);margin:0;}
.totals-row{display:flex;justify-content:space-between;font-size:var(--fs-sm);}
.totals-row--total{border-top:1px solid var(--border-default);padding-top:12px;font-size:var(--fs-md);font-weight:700;}
.totals-row--total strong{font-family:var(--font-display);}
.cart-aside{display:flex;flex-direction:column;gap:var(--space-4);}
.review-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;border-bottom:1px solid var(--border-default);padding-bottom:12px;}
.review-items li{display:flex;justify-content:space-between;font-size:var(--fs-sm);}
.ri-name{color:var(--text-secondary);}

/* ---- CHECKOUT ---- */
.checkout-layout{display:grid;grid-template-columns:1fr 380px;gap:var(--space-6);align-items:start;padding-block:var(--space-5) var(--space-9);}
.guest-prompt{background:var(--indigo-50);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-sm);}
.co-section{margin-bottom:var(--space-6);}
.co-section h2{font-size:var(--fs-lg);}
.co-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);}
.field--full{grid-column:1/-1;}
.pay-methods{display:flex;flex-direction:column;gap:10px;}
.pay-radio{display:flex;align-items:center;gap:12px;border:1.5px solid var(--border-strong);border-radius:var(--radius-md);padding:14px var(--space-4);cursor:pointer;}
.pay-radio.is-active{border-color:var(--brand-primary);background:var(--indigo-50);}
.pay-radio input{accent-color:var(--brand-primary);width:18px;height:18px;}
.pay-radio .pay-strip{margin:0 0 0 auto;}
.secure-note{display:flex;align-items:center;gap:6px;font-size:var(--fs-xs);justify-content:center;}
.abn-note{font-size:var(--fs-xs);text-align:center;margin-top:10px;}

/* ---- ACCOUNT ---- */
.account-layout{display:grid;grid-template-columns:240px 1fr;gap:var(--space-6);padding-block:var(--space-5) var(--space-9);align-items:start;}
.account-nav{display:flex;flex-direction:column;gap:2px;}
.acct-link{display:flex;align-items:center;gap:10px;padding:12px var(--space-4);border-radius:var(--radius-md);color:var(--text-primary);font-weight:600;font-size:var(--fs-sm);}
.acct-link:hover{background:var(--slate-50);color:var(--text-primary);}
.acct-link.is-active{background:var(--indigo-50);color:var(--brand-primary);}
.acct-link--logout{color:var(--error);}
.account-welcome{padding:var(--space-5);margin-bottom:var(--space-4);}
.account-welcome h2{margin:0;}
.account-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4);}
.account-tile{padding:var(--space-5);display:flex;flex-direction:column;gap:8px;color:var(--text-primary);}
.account-tile .icon{color:var(--brand-primary);}
.account-tile h3{margin:0;font-size:var(--fs-base);}

/* ---- AUTH ---- */
.auth-split{display:grid;grid-template-columns:1fr 1fr;min-height:70vh;}
.auth-rail{display:grid;place-items:center;color:#fff;padding:var(--space-8);}
.auth-rail-inner{max-width:380px;}
.auth-logo{width:200px;margin-bottom:var(--space-5);}
.auth-rail h2{color:#fff;}
.auth-props{list-style:none;padding:0;margin:var(--space-5) 0 0;display:flex;flex-direction:column;gap:14px;}
.auth-props li{display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.9);}
.auth-props .icon{color:var(--teal-300);}
.auth-forms{display:grid;place-items:center;padding:var(--space-8);}
.auth-card{max-width:400px;width:100%;}
.auth-form{display:flex;flex-direction:column;gap:var(--space-4);margin-top:var(--space-5);}
.auth-row{display:flex;align-items:center;justify-content:space-between;font-size:var(--fs-sm);}
.auth-switch{margin-top:var(--space-4);font-size:var(--fs-sm);text-align:center;color:var(--text-secondary);}

/* ---- DOC / POLICY / FAQ / ABOUT / CONTACT / BLOG ---- */
.doc-head{padding-block:var(--space-5) var(--space-6);}
.doc-head--center{text-align:center;}
.doc-layout{display:grid;grid-template-columns:240px 1fr;gap:var(--space-7);padding-bottom:var(--space-9);align-items:start;}
.doc-toc{position:sticky;top:140px;}
.doc-toc h2{font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);}
.toc-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px;}
.toc-list a{font-size:var(--fs-sm);color:var(--text-secondary);}
.toc-list a:hover{color:var(--brand-primary);}
.doc-body section{margin-bottom:var(--space-6);}
.accordion{display:flex;flex-direction:column;gap:10px;}
.acc-item{border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-default);overflow:hidden;}
.acc-item summary{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);cursor:pointer;font-family:var(--font-display);font-weight:600;list-style:none;}
.acc-item summary::-webkit-details-marker{display:none;}
.acc-chev{transition:transform .2s;color:var(--text-secondary);}
.acc-item[open] .acc-chev{transform:rotate(180deg);}
.acc-body{padding:0 var(--space-5) var(--space-5);}
.faq-cta{padding:var(--space-6);text-align:center;margin-top:var(--space-6);}
.value-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-5);}
.value-card{background:var(--surface-default);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:var(--space-5);}
.value-card .ico{width:56px;height:56px;border-radius:var(--radius-md);background:var(--indigo-50);color:var(--brand-primary);display:grid;place-items:center;margin-bottom:var(--space-3);}
.value-card h3{margin:0 0 6px;font-size:var(--fs-lg);}
.about-hero{padding-block:var(--space-9);color:#fff;}
.about-hero h1{color:#fff;font-size:var(--fs-4xl);}
.about-hero p{color:rgba(255,255,255,.86);max-width:60ch;}
.au-band-inner{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-7);align-items:center;}
.au-img{border-radius:var(--radius-xl);width:100%;height:auto;box-shadow:var(--shadow-md);}
.contact-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:var(--space-7);padding-bottom:var(--space-9);align-items:start;}
.contact-form{margin-top:var(--space-4);}
.contact-form .btn{margin-top:var(--space-4);}
.sla{display:flex;align-items:center;gap:6px;}
.contact-details{padding:var(--space-5);}
.map-placeholder{margin-top:var(--space-4);height:200px;border-radius:var(--radius-md);background:var(--slate-100);display:grid;place-items:center;color:var(--slate-400);}
.dept-banner+.container .breadcrumbs{display:none;}
.blog-banner{padding-block:var(--space-8);color:#fff;}
.blog-banner h1{color:#fff;}
.blog-banner p{color:rgba(255,255,255,.85);}
.blog-layout{display:grid;grid-template-columns:1fr 300px;gap:var(--space-7);padding-block:var(--space-7);align-items:start;}
.blog-grid--index{grid-template-columns:1fr 1fr;}
.blog-sidebar{display:flex;flex-direction:column;gap:var(--space-4);position:sticky;top:140px;}
.sb-block{padding:var(--space-5);}
.sb-block h3{font-size:var(--fs-base);margin:0 0 var(--space-3);}
.sb-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px;}
.sb-list a{color:var(--text-primary);font-size:var(--fs-sm);}
.sb-promo{background:var(--indigo-50);border-color:transparent;}
.post-hero{padding-block:var(--space-8);color:#fff;}
.post-hero h1{color:#fff;font-size:var(--fs-4xl);}
.post-cat{display:inline-block;background:var(--teal-700);color:#fff;font-size:var(--fs-xs);font-weight:600;padding:4px 10px;border-radius:var(--radius-pill);text-transform:uppercase;letter-spacing:.04em;}
.post-meta{display:flex;gap:10px;color:rgba(255,255,255,.8);font-size:var(--fs-sm);margin-top:12px;flex-wrap:wrap;}
.post-body{padding-block:var(--space-6) var(--space-8);}
.post-body .lede{font-size:var(--fs-md);color:var(--text-primary);}
.post-body h2{margin-top:var(--space-6);}
.post-body blockquote{border-left:4px solid var(--brand-primary);margin:var(--space-5) 0;padding:8px 0 8px var(--space-5);font-size:var(--fs-lg);font-family:var(--font-display);color:var(--text-primary);}
.post-foot{display:flex;align-items:center;gap:var(--space-4);border-top:1px solid var(--border-default);margin-top:var(--space-6);padding-top:var(--space-5);}
.share-links{display:flex;gap:10px;}
.share-links a{width:40px;height:40px;border-radius:var(--radius-md);border:1px solid var(--border-default);display:grid;place-items:center;color:var(--text-secondary);}
.share-links a:hover{border-color:var(--brand-primary);color:var(--brand-primary);}
.confirm-hero{background:var(--bg-subtle);padding-block:var(--space-8);text-align:center;}
.confirm-tick{width:72px;height:72px;border-radius:50%;background:var(--green-50);color:var(--success);display:grid;place-items:center;margin:0 auto var(--space-4);}
.confirm-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:var(--space-6);padding-block:var(--space-7) var(--space-9);align-items:start;}
.confirm-summary,.confirm-next{padding:var(--space-5);}
.next-steps{list-style:none;padding:0;margin:0 0 var(--space-4);display:flex;flex-direction:column;gap:14px;}
.next-steps li{display:flex;align-items:center;gap:12px;font-size:var(--fs-sm);}
.step-n{width:28px;height:28px;border-radius:50%;background:var(--brand-primary);color:#fff;display:grid;place-items:center;font-weight:700;flex:none;font-family:var(--font-display);}
.wishlist-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding-block:var(--space-6) var(--space-5);flex-wrap:wrap;}
.chip{display:inline-block;padding:8px 16px;border-radius:var(--radius-pill);border:1.5px solid var(--border-strong);font-weight:600;font-size:var(--fs-sm);color:var(--text-primary);}
.chip:hover{border-color:var(--brand-primary);color:var(--brand-primary);}
.nf-chips{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin:var(--space-4) 0;}
.notfound .nf-inner{text-align:center;padding-block:var(--space-8) var(--space-9);max-width:640px;margin-inline:auto;display:flex;flex-direction:column;align-items:center;gap:var(--space-4);}
.nf-illus{width:320px;max-width:100%;}
.searchbar--centered{max-width:460px;}
.dept-banner .breadcrumbs{padding-bottom:8px;}

/* ---- RESPONSIVE ---- */
@media(max-width:1080px){
  .dept-grid,.prod-grid{grid-template-columns:repeat(3,1fr);}
  .prod-grid--plp{grid-template-columns:repeat(2,1fr);}
  .usp .container{grid-template-columns:repeat(2,1fr);}
  .deals-inner,.trust .container,.newsletter-inner,.au-band-inner,.pdp-top,.cart-layout,.checkout-layout,.confirm-grid,.contact-layout,.blog-layout,.doc-layout,.account-layout{grid-template-columns:1fr;}
  .nl-form{min-width:0;}
  .footer-top{grid-template-columns:1fr 1fr;}
  .blog-grid,.blog-grid--index{grid-template-columns:1fr;}
  .plp-layout{grid-template-columns:1fr;}
  .plp-sidebar .filter-toggle{display:flex;}
  .plp-sidebar .filter-panel{display:none;}
  .doc-toc,.blog-sidebar{position:static;}
}
@media(max-width:760px){
  :root{--header-h:auto;}
  .prod-add{padding-inline:var(--space-3);font-size:var(--fs-xs);}
  .header-main{grid-template-columns:auto auto;row-gap:var(--space-3);}
  .searchbar{grid-column:1/-1;order:3;}
  .hbtn--menu{display:flex;}
  .deptnav-links,.account-cards,.value-grid{display:none;}
  .dept-grid,.prod-grid,.prod-grid--plp{grid-template-columns:repeat(2,1fr);}
  .footer-top{grid-template-columns:1fr;}
  .announce .meta{display:none;}
  .value-grid{display:grid;grid-template-columns:1fr 1fr;}
  .nl-popup-panel{grid-template-columns:1fr;}
  .nl-popup-art{display:none;}
  h1{font-size:var(--fs-3xl);}
  .hero-copy h1{font-size:var(--fs-4xl);}
}
