/*
Theme Name: Kiwi Tyres & Autos
Theme URI: https://kiwi.romynz.com
Description: Custom theme for Kiwi Tyres & Autos — implements the NZ Tyre redesign. WooCommerce-ready, no page builder, self-hosted fonts. Replaces druco + Slider Revolution + Redux + Elementor.
Author: Romy
Version: 1.0.8
Requires at least: 6.5
Requires PHP: 8.1
Text Domain: kiwityres
*/

/* ============================ fonts (self-hosted) ======================= */
@font-face{font-family:Archivo;font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/archivo-400.woff2) format('woff2')}
@font-face{font-family:Archivo;font-style:normal;font-weight:500;font-display:swap;src:url(assets/fonts/archivo-500.woff2) format('woff2')}
@font-face{font-family:Archivo;font-style:normal;font-weight:700;font-display:swap;src:url(assets/fonts/archivo-700.woff2) format('woff2')}
@font-face{font-family:Archivo;font-style:normal;font-weight:800;font-display:swap;src:url(assets/fonts/archivo-800.woff2) format('woff2')}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:500;font-display:swap;src:url(assets/fonts/ibmplexmono-500.woff2) format('woff2')}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:600;font-display:swap;src:url(assets/fonts/ibmplexmono-600.woff2) format('woff2')}

/* ============================ design tokens ============================= */
:root{
  --ink:#17181A; --ink-deep:#0F1012; --ink-line:#2A2C30;
  --accent:#ff0000; --accent-dark:#cc0000; --accent-light:#ff6b6b;
  --in-stock:#1F6B4A;
  --paper:#F7F5F1; --paper-2:#F0EDE7; --paper-3:#FBFAF8;
  --line:#E2DED5; --muted:#6F6A61; --muted-dark:#B6B2AB;
  --font:Archivo,"Helvetica Neue",Helvetica,Arial,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  --wrap:1200px;
}

/* ============================ reset / base ============================= */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);
  font-weight:400;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
button{font-family:inherit}
h1,h2,h3,h4{font-family:var(--font);font-weight:800;letter-spacing:-0.03em;line-height:1.03;margin:0 0 .5em}
p{margin:0 0 1em;max-width:68ch}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 22px}
.eyebrow,.mono{font-family:var(--mono);font-weight:600;text-transform:uppercase;letter-spacing:.14em;font-size:11px}
.skip{position:absolute;left:-9999px}
.skip:focus{left:8px;top:8px;z-index:100;background:#fff;color:#000;padding:8px 14px;border-radius:2px}
:focus-visible{outline:2px solid var(--ink);outline-offset:2px}

/* ============================ buttons ================================= */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--font);font-weight:700;font-size:15px;letter-spacing:-0.01em;
  padding:12px 22px;border-radius:2px;border:1.5px solid transparent;cursor:pointer;
  transition:background .15s ease,color .15s ease,border-color .15s ease;line-height:1}
.btn-accent{background:var(--accent);color:#fff}
.btn-accent:hover{background:var(--accent-dark)}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.btn-ghost:hover{border-color:var(--ink)}
.btn-ghost-light{background:transparent;color:#fff;border-color:var(--ink-line)}
.btn-ghost-light:hover{border-color:#fff}
.btn-white{background:#fff;color:var(--ink)}
.btn-white:hover{background:var(--paper-2)}
.btn-block{width:100%}

/* ============================ info bar ================================= */
.infobar{background:var(--ink-deep);color:var(--muted-dark);font-family:var(--mono);
  font-weight:500;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase}
.infobar .wrap{display:flex;gap:22px;align-items:center;padding-top:7px;padding-bottom:7px;flex-wrap:wrap}
.infobar a{color:var(--muted-dark)}
.infobar a:hover{color:#fff}
.infobar .sep{margin-left:auto}
.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--in-stock);margin-right:6px;vertical-align:middle}
.dot.closed{background:var(--muted)}

/* ============================ header =================================== */
.site-header{background:var(--ink);color:#fff;position:sticky;top:0;z-index:30;border-bottom:1px solid var(--ink-line)}
.header-inner{display:flex;align-items:center;gap:26px;padding-top:14px;padding-bottom:14px}
.logo{display:flex;align-items:center;gap:12px}
.logo-plate{width:56px;height:56px;border-radius:4px;background:#fff;flex:0 0 auto;
  display:flex;align-items:center;justify-content:center;overflow:hidden}
.logo-plate img{width:100%;height:100%;object-fit:contain}
.logo-lockup{display:flex;flex-direction:column;line-height:1}
.logo-name{font-family:var(--font);font-weight:800;font-size:20px;letter-spacing:-0.03em;color:#fff}
.logo-sub{font-family:var(--mono);font-weight:600;font-size:10px;letter-spacing:.20em;color:var(--accent-light);text-transform:uppercase;margin-top:3px}
.mainnav{display:flex;gap:26px;align-items:center;margin-left:auto}
.mainnav a{font-size:14px;font-weight:600;color:var(--paper);position:relative;padding:6px 0}
.mainnav a:hover{color:var(--accent-light)}
.mainnav .current-menu-item>a,.mainnav a[aria-current="page"]{color:#fff}
.mainnav .current-menu-item>a::after,.mainnav a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--accent)}
.header-actions{display:flex;align-items:center;gap:16px}
.cart-chip{display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-weight:600;font-size:12px;letter-spacing:.1em;color:#fff}
.cart-chip .count{background:var(--accent);color:#fff;border-radius:2px;padding:1px 6px;font-size:11px}
.hamburger{display:none;width:48px;height:48px;background:transparent;border:1px solid var(--ink-line);border-radius:2px;color:#fff;cursor:pointer;align-items:center;justify-content:center}
.hamburger svg{width:22px;height:22px}

/* mobile drawer */
.mobile-drawer{background:var(--ink);border-top:1px solid var(--ink-line)}
.mobile-drawer[hidden]{display:none}
@media(min-width:901px){.mobile-drawer{display:none!important}}
.mobile-drawer a{display:block;padding:16px 22px;font-size:17px;font-weight:700;color:#fff;border-bottom:1px solid var(--ink-line)}
.mobile-drawer .btn{margin:16px 22px;width:calc(100% - 44px)}

/* ============================ hero ==================================== */
.hero{background:var(--ink);color:#fff;position:relative;overflow:hidden}
.hero__bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.34}
.hero .wrap{position:relative;padding-top:56px;padding-bottom:64px;
  display:grid;grid-template-columns:1.15fr .85fr;gap:44px;align-items:center}
.hero__eyebrow{color:var(--accent-light);margin-bottom:18px}
.hero h1{font-size:clamp(38px,5vw,60px);font-weight:800;margin:0 0 18px;max-width:14ch}
.hero p{color:var(--muted-dark);font-size:17px;max-width:52ch}
.hero__buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
/* size search card */
.sizecard{background:var(--paper-3);color:var(--ink);border-radius:3px;padding:26px;border:1px solid var(--line)}
.sizecard h3{font-size:13px;font-family:var(--mono);font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);margin:0 0 18px}
.sizecard .fields{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}
.sizecard label{display:block;font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.sizecard select,.sizecard input{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:2px;background:#fff;font-family:var(--font);font-size:15px;color:var(--ink)}
.sizecard .btn{margin-top:14px;width:100%}
.sizecard .hint{font-family:var(--mono);font-size:10px;letter-spacing:.08em;color:var(--muted);margin:12px 0 0;text-transform:uppercase}

/* ============================ eyebrow strip =========================== */
.tag-strip{background:var(--ink-deep);color:var(--accent-light)}
.tag-strip .wrap{display:flex;gap:26px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px;
  font-family:var(--mono);font-weight:600;font-size:11px;letter-spacing:.18em;text-transform:uppercase}
.tag-strip .sep{color:var(--ink-line)}

/* ============================ sections ================================ */
.section{padding:56px 0}
.section--paper2{background:var(--paper-2)}
.section__head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:26px}
.section__head h2{font-size:clamp(26px,3.2vw,34px)}
.section__more{font-family:var(--mono);font-weight:600;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-dark)}
.section__more:hover{color:var(--accent)}

/* promo trio */
.promo-trio{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:0;border-top:1px solid var(--line)}
.promo{padding:32px 26px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.promo .eyebrow{color:var(--accent-dark);display:block;margin-bottom:10px}
.promo h3{font-size:22px;margin-bottom:8px}
.promo p{color:var(--muted);font-size:15px}
.promo a{font-family:var(--mono);font-weight:600;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink)}
.promo a:hover{color:var(--accent-dark)}

/* product grid + cards */
.product-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.card{background:#fff;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px;display:flex;flex-direction:column}
.card__img{aspect-ratio:1;background:var(--paper-3);border:1px solid var(--line);border-radius:3px;display:flex;align-items:center;justify-content:center;overflow:hidden;margin-bottom:14px}
.card__img img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.card__brand{font-family:var(--mono);font-weight:600;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.card__title{font-family:var(--mono);font-weight:600;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);margin:4px 0}
.card__size{font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--muted)}
.card__foot{margin-top:auto;padding-top:12px;display:flex;align-items:baseline;justify-content:space-between}
.card__price{font-family:var(--font);font-weight:800;font-size:20px;letter-spacing:-0.02em}
.card__price .unit{font-family:var(--mono);font-size:9px;font-weight:600;letter-spacing:.1em;color:var(--muted);text-transform:uppercase;margin-left:4px}
.card__stock{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--in-stock)}
.card__stock.out{color:var(--muted)}
.card a.card__link{position:relative}

/* brand cards */
.brand-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.brand-card{background:#fff;border:1px solid var(--line);border-radius:3px;padding:26px;display:flex;flex-direction:column;gap:8px}
.brand-card .eyebrow{color:var(--accent-dark)}
.brand-card h3{font-size:24px}
.brand-card p{color:var(--muted);font-size:14px;margin:0}

/* split feature */
.split{display:grid;grid-template-columns:1fr 1fr;gap:0;align-items:stretch;border:1px solid var(--line)}
.split__photo{background:var(--paper-2) center/cover}
.split__body{padding:44px}
.split__body h2{font-size:30px;margin-bottom:16px}
.reasons{list-style:none;margin:18px 0 0;padding:0}
.reasons li{padding:14px 0;border-top:1px solid var(--line);display:flex;gap:12px}
.reasons b{font-weight:700}

/* ============================ CTA band ================================ */
.cta-band{background:var(--accent);color:#fff}
.cta-band .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:40px;padding-bottom:40px;flex-wrap:wrap}
.cta-band h2{font-size:30px;color:#fff;margin:0}
.cta-band p{color:#fff;opacity:.92;margin:6px 0 0}
.cta-band .btns{display:flex;gap:12px;flex-wrap:wrap}

/* ============================ footer ================================== */
.site-footer{background:var(--ink);color:var(--muted-dark)}
.site-footer .wrap{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.4fr;gap:32px;padding-top:52px;padding-bottom:52px}
.site-footer h4{font-family:var(--mono);font-weight:600;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#fff;margin:0 0 16px}
.site-footer a{color:var(--muted-dark);display:block;padding:5px 0;font-size:14px}
.site-footer a:hover{color:#fff}
.foot-contact .logo-plate{width:52px;height:52px;margin-bottom:14px}
.foot-contact p{color:var(--muted-dark);font-size:14px;max-width:32ch}
.foot-news input{width:100%;padding:11px 12px;border:1px solid var(--ink-line);background:var(--ink-deep);color:#fff;border-radius:2px;margin-bottom:10px;font-family:var(--font)}
.copystrip{background:var(--ink-deep);color:var(--muted)}
.copystrip .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:16px;padding-bottom:16px;font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase}

/* ============================ mobile action bar ======================= */
.mobile-actionbar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:40;
  grid-template-columns:1fr 1fr}
.mobile-actionbar a{padding:17px;text-align:center;font-weight:700;font-size:15px}
.mobile-actionbar .call{background:var(--accent);color:#fff}
.mobile-actionbar .book{background:#fff;color:var(--ink);border-top:1px solid var(--line)}

/* ============================ generic page ============================ */
.page-hero{background:var(--ink);color:#fff;padding:44px 0}
.page-hero .eyebrow{color:var(--accent-light)}
.page-hero h1{font-size:clamp(30px,4vw,44px);margin:10px 0 0}
.page-body{padding:48px 0}
.page-body .wrap{max-width:800px}

/* services rows */
.service-row{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;padding:26px 0;border-top:1px solid var(--line)}
.service-row h3{font-size:22px;margin:0 0 4px}
.service-row .dur{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.service-row p{color:var(--muted);margin:8px 0 0}
.service-row .price{font-family:var(--font);font-weight:800;font-size:22px;text-align:right;white-space:nowrap}

/* contact */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}
.contact-facts dt{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:16px}
.contact-facts dd{margin:2px 0 0;font-size:16px}
.contact-map iframe{width:100%;height:320px;border:1px solid var(--line);border-radius:3px}
.form-card{background:var(--paper);border:1px solid var(--line);border-radius:3px;padding:26px}
.form-card label{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:14px 0 6px}
.form-card input,.form-card textarea,.form-card select{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:2px;font-family:var(--font);font-size:15px;background:#fff}

/* ============================ responsive ============================== */
@media(max-width:900px){
  .infobar .hours{display:none}
  .mainnav,.cart-chip .label{display:none}
  .header-actions .btn-accent{display:none}
  .header-actions{margin-left:auto}
  .hamburger{display:inline-flex}
  .hero .wrap{grid-template-columns:1fr;gap:28px}
  .split{grid-template-columns:1fr}
  .split__photo{min-height:220px}
  .site-footer .wrap{grid-template-columns:1fr 1fr}
  .contact-grid{grid-template-columns:1fr}
  .mobile-actionbar{display:grid}
  body{padding-bottom:76px}
  .cta-band .wrap{flex-direction:column;align-items:flex-start}
}
@media(max-width:560px){
  .site-footer .wrap{grid-template-columns:1fr}
  .sizecard .fields{grid-template-columns:1fr}
  .service-row{grid-template-columns:1fr}
  .service-row .price{text-align:left}
}

/* ============================ WooCommerce ============================== */
.woo-page .woo-wrap{max-width:var(--wrap);margin:0 auto;padding:0 22px}
.woo-page{padding:40px 0}
ul.products{list-style:none;margin:26px 0 0;padding:0;display:grid;
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
  border-top:1px solid var(--line);border-left:1px solid var(--line)}
ul.products li.product{margin:0!important;width:auto!important;float:none!important}
ul.products li.product .card{height:100%}
.woocommerce-result-count{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.woocommerce-ordering select{font-family:var(--font);padding:8px 10px;border:1px solid var(--line);border-radius:2px}
.woocommerce-ordering{margin:16px 0}
/* pagination */
.woocommerce-pagination ul{display:flex;gap:6px;list-style:none;padding:0;margin:30px 0 0;flex-wrap:wrap}
.woocommerce-pagination a,.woocommerce-pagination span{display:inline-flex;min-width:40px;height:40px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:2px;font-family:var(--mono);font-size:13px}
.woocommerce-pagination .current{background:var(--ink);color:#fff;border-color:var(--ink)}

/* single product */
.single-product .woo-page .product{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start}
.single-product .woocommerce-product-gallery{background:var(--paper-3);border:1px solid var(--line);border-radius:3px;padding:20px}
.single-product .product_title{font-size:clamp(26px,3.4vw,38px);margin:0 0 10px}
.single-product .price{font-family:var(--font);font-weight:800;font-size:30px;color:var(--ink);margin:12px 0}
.single-product .price del{color:var(--muted);font-weight:500;font-size:20px;margin-right:8px}
.single-product .woocommerce-product-details__short-description{color:var(--muted);max-width:52ch}
.single-product .cart{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:20px 0}
.single-product .quantity input{width:70px;padding:11px;border:1px solid var(--line);border-radius:2px;text-align:center;font-family:var(--mono)}
.single-product form.cart .button,.woocommerce .button.alt,.woocommerce button.button{background:var(--accent);color:#fff;border:0;border-radius:2px;padding:13px 24px;font-family:var(--font);font-weight:700;font-size:15px;cursor:pointer}
.single-product form.cart .button:hover,.woocommerce .button.alt:hover{background:var(--accent-dark)}
.woocommerce .button{background:#fff;color:var(--ink);border:1.5px solid var(--line);border-radius:2px;padding:11px 20px;font-weight:700}
.woocommerce .button:hover{border-color:var(--ink)}
.single-product .product_meta{font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--muted);text-transform:uppercase;margin-top:16px}
.woocommerce-tabs{grid-column:1/-1;margin-top:40px}
.woocommerce-tabs ul.tabs{list-style:none;display:flex;gap:6px;padding:0;border-bottom:1px solid var(--line);margin:0 0 20px}
.woocommerce-tabs ul.tabs li{padding:0}.woocommerce-tabs ul.tabs a{display:block;padding:12px 18px;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.woocommerce-tabs ul.tabs li.active a{border-bottom:2px solid var(--accent)}
.shop_table{width:100%;border-collapse:collapse}
.shop_table th,.shop_table td{padding:12px;border-bottom:1px solid var(--line);text-align:left}
.woocommerce-message,.woocommerce-info,.woocommerce-error{background:var(--paper-2);border-left:3px solid var(--accent);padding:14px 18px;border-radius:2px;list-style:none;margin:0 0 20px}
/* related products */
.related.products,.up-sells{grid-column:1/-1;margin-top:40px}
.related.products>h2,.up-sells>h2{font-size:24px;margin-bottom:16px}

/* woo sidebar/filter rail when present */
.woocommerce-breadcrumb{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-dark);margin:0}
@media(max-width:820px){.single-product .woo-page .product{grid-template-columns:1fr}}

/* --- fixes: WooCommerce default clearfix pseudo-els become empty grid cells */
ul.products::before,ul.products::after{content:none!important;display:none!important}
.woocommerce-Price-amount,.single-product .price bdi{color:inherit}
.single-product .price{color:var(--accent-dark)}
/* woo default may float; keep our grid */
.woocommerce ul.products li.product{float:none!important;width:auto!important;margin:0!important;padding:0!important}

/* --- fixes round 2 (mobile/production) --- */
.about-hero{display:grid;grid-template-columns:1.3fr .7fr;gap:40px;align-items:center}
@media(max-width:820px){ .about-hero{grid-template-columns:1fr;gap:24px} }
/* single-product price should be brand accent, not the woo default olive */
.single-product .price,.single-product .price .amount,.single-product .price bdi,.single-product p.price{color:var(--accent-dark)!important}
/* guard against tiny horizontal overflow on product (gallery/tables) */
.single-product .woo-page,.single-product .product{max-width:100%;overflow-x:hidden}
.single-product .woocommerce-product-gallery,.single-product .woocommerce-product-gallery img{max-width:100%}
.shop_table{display:block;overflow-x:auto}

/* --- real brand logo (custom_logo) sits on the dark header, no plate --- */
.logo-real{display:flex;align-items:center}
.logo-real img{height:50px;width:auto;display:block}
.foot-contact .logo-real{margin-bottom:14px}
.foot-contact .logo-real img{height:56px}
@media(max-width:900px){ .logo-real img{height:42px} }

/* --- three.js tyre in the hero background --- */
.hero{position:relative}
.hero__3d{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none;opacity:.6}
.hero .wrap{position:relative;z-index:2}
.hero__bg{z-index:0}
@media(max-width:900px){ .hero__3d{opacity:.4} }
.card__price .from{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}

/* --- fixes round 4: single-product grid columns fill (Woo default 48% float) --- */
.single-product div.product .woocommerce-product-gallery,
.single-product div.product .summary,
.single-product div.product .entry-summary{width:100%!important;float:none!important;margin:0!important}
.single-product .woocommerce-product-gallery__wrapper{margin:0}
.single-product .woocommerce-product-gallery__image,
.single-product .woocommerce-product-gallery__image a,
.single-product .woocommerce-product-gallery__image img{display:block;width:100%}
.single-product .woocommerce-product-gallery__image img{aspect-ratio:1/1;object-fit:contain}

/* --- account / login chip (round 6) --- */
.account-chip{display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-weight:600;font-size:12px;letter-spacing:.1em;color:#fff;text-decoration:none}
.account-chip:hover{color:var(--accent-light)}
.account-chip svg{flex:0 0 auto}
.kt-drawer-acct{display:block;padding:12px 0 4px;color:#fff;font-weight:700;text-decoration:none;border-top:1px solid var(--ink-line);margin-top:8px}
.kt-drawer-acct:hover{color:var(--accent-light)}
@media(max-width:900px){ .account-chip{display:none} }

/* --- staff-login link on the My Account login form (round 7) --- */
.kt-staff-login{margin-top:20px;padding-top:16px;border-top:1px solid var(--line);display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.kt-staff-login span{font-family:var(--mono);font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.kt-staff-login a{display:inline-flex;align-items:center;background:#fff;color:var(--ink);border:1.5px solid var(--line);border-radius:2px;padding:9px 15px;font-weight:700;font-size:13px;text-decoration:none;cursor:pointer}
.kt-staff-login a:hover{border-color:var(--ink);background:#fff}

/* --- tyre size-search result notice (round 10) --- */
.kt-size-note{display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:var(--paper-2,#efece5);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:3px;padding:11px 16px;margin:0 0 20px;font-size:14px}
.kt-size-note b{font-family:var(--mono);letter-spacing:.03em}
.kt-size-note a{margin-left:auto;font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-dark);text-decoration:none;font-weight:700}
.kt-size-note a:hover{text-decoration:underline}

/* --- footer legal links (round 11) --- */
.copystrip .wrap{flex-wrap:wrap;gap:8px 20px}
.legal-links{display:flex;gap:16px;flex-wrap:wrap;width:100%;margin-top:6px;border-top:1px solid var(--ink-line);padding-top:12px}
.legal-links a{color:var(--muted-dark,#9a9ea6);font-size:12px;text-decoration:none}
.legal-links a:hover{color:#fff}

/* --- tyre specs display (round 13) --- */
.kt-tyre-type{font-family:var(--mono);font-size:12px;letter-spacing:.04em;color:var(--muted);margin:6px 0 0}
.kt-tyre-type span{display:inline-block;background:var(--paper-2,#efece5);border:1px solid var(--line);border-radius:2px;padding:2px 7px;text-transform:uppercase;font-size:10px;color:var(--ink);margin-right:6px}
.woocommerce-variation-description{margin:10px 0;font-family:var(--mono);font-size:13px;color:var(--accent-dark);font-weight:600}
.kt-spec-table{width:100%;border-collapse:collapse;margin:6px 0}
.kt-spec-table th,.kt-spec-table td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);font-size:14px}
.kt-spec-table thead th{font-family:var(--mono);font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);background:var(--paper-2,#efece5)}

/* --- exact-size card add-to-cart (round 15) --- */
.card__cart{display:block;text-align:center;margin-top:10px;background:var(--accent);color:#fff;font-weight:700;font-size:13px;letter-spacing:.01em;padding:11px 10px;border-radius:2px;text-decoration:none;font-family:var(--mono);text-transform:uppercase}
.card__cart:hover{background:var(--accent-dark);color:#fff}

/* tread direction + terrain (1.5.0) */
.kt-tread span{background:var(--ink);color:#fff;border-color:var(--ink)}
.kt-terrain span{background:#fff}
.kt-dirnote{margin:12px 0 0;padding:10px 12px;border-left:3px solid var(--accent);background:var(--paper-2,#efece5);font-size:13px;color:var(--ink)}
.card__tread{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:2px}

.kt-genimg{font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--muted);margin:0 0 8px}
