/*
Theme Name: AZATOM
Template: astra
Description: AZATOM child theme - Best of British Audio Electronics
Version: 1.2.0
*/
:root{
  --azatom-navy:#11151F;      /* primary text / links / headings */
  --azatom-blue:#2973C3;      /* header / footer background */
  --azatom-blue-dark:#153B64; /* submenu / hover depth */
  --azatom-cream:#E1DDC3;     /* primary button bg, accent icons */
  --azatom-cream-text:#61605A;/* text on cream buttons */
  --azatom-grey:#CCCCCC;      /* footer text */
  --azatom-red:#C2112F;       /* sale / discount accent */
  --azatom-green:#20B92A;     /* stock / success accent */
  --azatom-body:#0B150A;      /* body copy */
}
body, h1,h2,h3,h4,h5,h6,.site-title{ font-family:"Open Sans",sans-serif; color:var(--azatom-body); }
.site-tagline,.azatom-accent{ font-family:"Shadows Into Light",cursive; font-size:1.25em; }
.main-header-menu .menu-link,.woocommerce-loop-product__title,.uppercase-label{ font-family:"Oswald",sans-serif; letter-spacing:.04em; }

/* header / footer - real brand blue, not black */
.main-header-bar,.ast-primary-header-bar,.ast-above-header,.ast-below-header{ background:var(--azatom-blue)!important; }
.site-footer{ background:var(--azatom-blue)!important; }
.main-header-bar a,.site-footer,.site-footer a{ color:#fff!important; }
.main-header-menu .menu-link{ font-weight:600; font-size:.88rem; text-transform:uppercase; }
.main-header-menu .menu-item > a:hover{ color:var(--azatom-cream)!important; }
.site-footer .widget-title,.site-footer strong{ color:#fff!important; }
.site-footer,.site-footer p,.site-footer a{ color:var(--azatom-grey)!important; }
.site-footer a:hover{ color:#fff!important; }

/* links + headings */
a{ color:var(--azatom-navy); }
a:hover{ color:var(--azatom-blue); }

/* buttons - real brand cream, not dark */
.ast-button,button,.wp-block-button__link,.woocommerce a.button,.woocommerce button.button,.woocommerce #respond input#submit{
  background:var(--azatom-cream)!important;border-color:var(--azatom-cream)!important;color:var(--azatom-cream-text)!important;
  border-radius:2px!important; letter-spacing:.02em; font-weight:700; text-transform:uppercase; font-size:.85rem;
  transition:filter .18s ease, transform .12s ease;
}
.ast-button:hover,button:hover,.wp-block-button__link:hover,.woocommerce a.button:hover,.woocommerce button.button:hover{
  filter:brightness(.94); transform:translateY(-1px);
}

/* product grid */
.woocommerce ul.products{ gap:28px 24px; }
.woocommerce ul.products li.product{
  background:#fff; border:1px solid #eee; border-radius:6px;
  padding:0!important; overflow:hidden; transition:box-shadow .2s ease, transform .2s ease;
}
.woocommerce ul.products li.product:hover{ box-shadow:0 8px 24px rgba(17,21,31,.1); transform:translateY(-3px); }
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap{ background:#f7f7f7; padding:18px; }
.woocommerce ul.products li.product img{ mix-blend-mode:multiply; }
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-size:.95rem; font-weight:600; padding:14px 16px 2px; color:var(--azatom-navy); line-height:1.35; text-transform:none;
}
.woocommerce ul.products li.product .price{ padding:0 16px 16px; font-weight:700; color:var(--azatom-navy); }
.woocommerce ul.products li.product .price ins{ color:var(--azatom-red); text-decoration:none; }
.woocommerce ul.products li.product .price del{ opacity:.5; font-weight:400; }
.woocommerce ul.products li.product a.add_to_cart_button.button{
  margin:0 16px 16px; display:block; text-align:center; padding:11px 10px!important;
}
.woocommerce span.onsale{
  background:var(--azatom-red)!important; font-weight:700; text-transform:uppercase; font-size:.7rem;
  letter-spacing:.05em; border-radius:2px; min-height:auto; min-width:auto; padding:5px 10px; line-height:1;
  top:12px; left:12px; right:auto;
}
.woocommerce span.stock.in-stock{ color:var(--azatom-green); font-weight:600; }

/* single product */
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{ border-bottom:2px solid var(--azatom-blue); }
.woocommerce div.product p.price, .woocommerce div.product span.price{ color:var(--azatom-navy); font-weight:700; font-size:1.4rem; }

/* homepage category tiles */
.wp-block-column img{ transition:transform .25s ease; border:1px solid #eee; border-radius:4px; }
.wp-block-column a:hover img{ transform:scale(1.03); }

/* hero */
.wp-block-cover{ background:var(--azatom-navy); }

/* pagination */
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li a:hover{ background:var(--azatom-blue)!important; border-color:var(--azatom-blue)!important; }

/* footer columns - mirror live site structure */
.azatom-footer-cols{ display:flex; flex-wrap:wrap; gap:30px; justify-content:space-between; max-width:1240px; margin:0 auto; padding:10px 20px; }
.azatom-footer-cols .azf-col{ flex:1 1 180px; min-width:160px; }
.azatom-footer-cols h4{ color:#fff!important; font-family:"Oswald",sans-serif; text-transform:uppercase; font-size:1rem; letter-spacing:.04em; margin:0 0 14px; }
.azatom-footer-cols ul{ list-style:none; margin:0; padding:0; }
.azatom-footer-cols li{ margin:0 0 9px; line-height:1.4; }
.azatom-footer-cols a{ color:var(--azatom-grey)!important; font-size:.9rem; }
.azatom-footer-cols a:hover{ color:#fff!important; }
.azf-contact .azf-ic{ color:var(--azatom-cream); margin-right:6px; }
.azf-register-btn{ display:inline-block; margin-top:12px; background:var(--azatom-cream)!important; color:var(--azatom-cream-text)!important;
  padding:10px 18px; border-radius:2px; font-family:"Oswald",sans-serif; text-transform:uppercase; font-size:.82rem; letter-spacing:.03em; font-weight:600; }
.azf-register-btn:hover{ filter:brightness(.94); color:var(--azatom-cream-text)!important; }
.azatom-footer-legal{ text-align:center; color:var(--azatom-grey); font-size:.8rem; padding:22px 20px 6px; margin-top:16px; border-top:1px solid rgba(255,255,255,.12); max-width:1240px; margin-left:auto; margin-right:auto; }

/* warranty registration form */
.azatom-warranty-form{ max-width:560px; margin:0 auto; }
.azatom-warranty-form .awf-row{ display:flex; flex-direction:column; margin:0 0 16px; }
.azatom-warranty-form label{ font-family:"Oswald",sans-serif; text-transform:uppercase; font-size:.82rem; letter-spacing:.03em; margin-bottom:6px; color:var(--azatom-navy); }
.azatom-warranty-form input,.azatom-warranty-form select{ padding:11px 12px; border:1px solid #ccc; border-radius:3px; font-size:1rem; }
.azatom-warranty-form input:focus,.azatom-warranty-form select:focus{ border-color:var(--azatom-blue); outline:none; }
.azatom-warranty-form .awf-msg{ font-size:.85rem; margin-top:5px; }
.azatom-warranty-form .awf-ok{ color:var(--azatom-green); font-weight:600; }
.azatom-warranty-form .awf-err{ color:var(--azatom-red); }
.azatom-warranty-form .awf-submit{ margin-top:8px; }
.azatom-warranty-success{ max-width:560px; margin:0 auto; padding:24px; background:#f3f8f3; border:1px solid var(--azatom-green); border-radius:6px; text-align:center; }
.azatom-warranty-success h3{ color:var(--azatom-navy); margin-top:0; }

/* ===== brand header (mirror live page-header type15) ===== */
.azatom-header{ width:100%; }
.azatom-header .azh-wrap{ max-width:1240px; margin:0 auto; padding:0 20px; display:flex; align-items:center; }
/* top strip */
.azh-top{ background:var(--azatom-blue-dark); color:#fff; font-family:"Oswald",sans-serif; font-size:.78rem; letter-spacing:.03em; }
.azh-top .azh-wrap{ justify-content:space-between; min-height:34px; }
.azh-ship{ text-transform:lowercase; letter-spacing:.04em; }
.azh-links{ list-style:none; display:flex; gap:20px; margin:0; padding:0; }
.azh-links a{ color:#fff!important; text-transform:uppercase; font-size:.72rem; }
.azh-links a:hover{ color:var(--azatom-cream)!important; }
/* main bar */
.azh-main{ background:var(--azatom-blue); background-image:linear-gradient(rgba(0,0,0,.04),rgba(0,0,0,.04)); }
.azh-main .azh-wrap{ justify-content:space-between; min-height:96px; }
.azh-logo img{ height:62px; width:auto; display:block; filter:brightness(0) invert(1); }
.azh-right{ display:flex; align-items:center; gap:24px; }
.azh-register{ background:var(--azatom-cream)!important; color:var(--azatom-cream-text)!important; font-family:"Oswald",sans-serif;
  text-transform:uppercase; font-size:.82rem; letter-spacing:.03em; font-weight:600; padding:11px 20px; border-radius:2px; }
.azh-register:hover{ filter:brightness(.94); color:var(--azatom-cream-text)!important; }
.azh-cart{ position:relative; color:#fff!important; font-size:1.5rem; display:flex; align-items:center; }
.azh-cart-count{ position:absolute; top:-6px; right:-10px; background:var(--azatom-cream); color:var(--azatom-cream-text);
  font-family:"Open Sans",sans-serif; font-size:.7rem; font-weight:700; min-width:18px; height:18px; line-height:18px; text-align:center; border-radius:9px; padding:0 4px; }
/* nav bar below (Astra primary menu restyled) */
.site-header .main-header-bar{ background:#fff!important; border-bottom:1px solid #eee; box-shadow:0 1px 4px rgba(0,0,0,.05); }
.main-header-bar .main-header-menu .menu-link{ color:var(--azatom-navy)!important; font-family:"Oswald",sans-serif; text-transform:uppercase; font-weight:600; font-size:.9rem; letter-spacing:.04em; }
.main-header-bar .main-header-menu .menu-item:hover > .menu-link{ color:var(--azatom-blue)!important; }
@media (max-width:768px){
  .azh-top{ display:none; }
  .azh-main .azh-wrap{ min-height:70px; }
  .azh-logo img{ height:44px; }
  .azh-register{ padding:8px 12px; font-size:.72rem; }
}

/* ===== mega-menu nav ===== */
.azatom-nav{ background:#fff; border-bottom:1px solid #eee; box-shadow:0 1px 4px rgba(0,0,0,.05); position:relative; z-index:50; }
.azn-wrap{ max-width:1240px; margin:0 auto; padding:0 20px; }
.azn-menu{ list-style:none; margin:0; padding:0; display:flex; gap:0; }
.azn-item{ position:static; }
.azn-item > a{ display:block; padding:15px 22px; font-family:"Oswald",sans-serif; text-transform:uppercase; font-weight:600; font-size:.9rem; letter-spacing:.04em; color:var(--azatom-navy)!important; }
.azn-item > a:hover{ color:var(--azatom-blue)!important; }
.azn-has-mega > a:after{ content:"\25BE"; font-size:.6rem; margin-left:6px; opacity:.6; }
/* dropdown panel */
.azn-mega{ position:absolute; left:0; right:0; top:100%; background:#fff; border-top:2px solid var(--azatom-blue);
  box-shadow:0 12px 28px rgba(17,21,31,.14); padding:26px 30px; opacity:0; visibility:hidden; transform:translateY(6px);
  transition:opacity .18s ease, transform .18s ease, visibility .18s; }
.azn-item.azn-has-mega:hover .azn-mega{ opacity:1; visibility:visible; transform:translateY(0); }
.azn-mega-list{ list-style:none; margin:0 auto; padding:0; max-width:1180px; display:grid; grid-template-columns:repeat(4,1fr); gap:12px 30px; }
.azn-mega-list a{ color:var(--azatom-navy)!important; font-size:.95rem; padding:6px 0; display:block; border-bottom:1px solid #f2f2f2; }
.azn-mega-list a:hover{ color:var(--azatom-blue)!important; padding-left:5px; transition:padding .15s ease; }
.azn-count{ color:#aaa; font-size:.8rem; }
@media (max-width:900px){
  .azn-menu{ flex-wrap:wrap; }
  .azn-item > a{ padding:12px 14px; font-size:.8rem; }
  .azn-mega{ position:static; opacity:1; visibility:visible; transform:none; box-shadow:none; padding:10px 14px; display:none; }
  .azn-item.azn-has-mega:hover .azn-mega{ display:block; }
  .azn-mega-list{ grid-template-columns:1fr 1fr; }
}

/* ===== header/nav positioning + mobile ===== */
.azh-toggle{ display:none; flex-direction:column; justify-content:center; gap:5px; width:40px; height:40px; background:none; border:none; cursor:pointer; padding:0; }
.azh-toggle span{ display:block; height:2px; width:24px; background:#fff; border-radius:2px; transition:transform .2s, opacity .2s; }
.azh-toggle-open span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.azh-toggle-open span:nth-child(2){ opacity:0; }
.azh-toggle-open span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }
.azn-expand{ display:none; background:none; border:none; color:var(--azatom-navy); font-size:1rem; cursor:pointer; padding:0 8px; }

@media (max-width:900px){
  .azh-main .azh-wrap{ min-height:64px; position:relative; }
  .azh-toggle{ display:flex; }
  .azh-logo{ position:absolute; left:50%; transform:translateX(-50%); }
  .azh-logo img{ height:40px; }
  .azh-right{ gap:12px; }
  .azh-register{ display:none; }        /* declutter mobile bar; register still in menu/footer */
  /* mobile nav: hidden until toggled */
  .azatom-nav{ display:none; }
  .azatom-nav.azn-open{ display:block; }
  .azn-menu{ flex-direction:column; }
  .azn-item{ border-bottom:1px solid #f0f0f0; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; }
  .azn-item > a{ flex:1; padding:14px 16px; }
  .azn-expand{ display:block; padding:14px 16px; }
  .azn-mega{ display:none; position:static; box-shadow:none; border-top:none; padding:0 16px 12px; width:100%; opacity:1; visibility:visible; transform:none; }
  .azn-item-open .azn-mega{ display:block; }
  .azn-mega-list{ grid-template-columns:1fr; gap:2px; }
}

/* ===== homepage hero carousel ===== */
.azatom-hero{ position:relative; width:100%; max-width:1600px; margin:0 auto; overflow:hidden; background:#f4f4f4; }
.azh-slides{ position:relative; width:100%; aspect-ratio:1600/560; }
.azh-slide{ position:absolute; inset:0; background-size:cover; background-position:center; opacity:0; transition:opacity .6s ease; display:block; }
.azh-slide-active{ opacity:1; }
.azh-dots{ position:absolute; bottom:16px; left:0; right:0; display:flex; justify-content:center; gap:9px; z-index:3; }
.azh-dot{ width:11px; height:11px; border-radius:50%; border:2px solid #fff; background:rgba(255,255,255,.35); cursor:pointer; padding:0; transition:background .2s; }
.azh-dot-active{ background:#fff; }
.azh-arrow{ position:absolute; top:50%; transform:translateY(-50%); z-index:3; background:rgba(17,21,31,.35); color:#fff; border:none; width:44px; height:64px; cursor:pointer; font-size:1.3rem; transition:background .2s; }
.azh-arrow:hover{ background:rgba(17,21,31,.6); }
.azh-prev{ left:0; } .azh-next{ right:0; }
@media (max-width:768px){
  .azh-slides{ aspect-ratio:16/10; }
  .azh-arrow{ width:34px; height:50px; font-size:1rem; }
}

/* ===== v1.0 fixes: button bleed, captioned hero, black strip, page title ===== */
/* stop global cream button rule hitting UI controls */
.azh-toggle,.azh-toggle:hover{ background:none!important; border:none!important; }
.azn-expand,.azn-expand:hover{ background:none!important; border:none!important; color:var(--azatom-navy)!important; }
.azh-arrow,.azh-arrow:hover{ background:rgba(17,21,31,.35)!important; border:none!important; color:#fff!important; border-radius:0!important; padding:0!important; }
.azh-arrow:hover{ background:rgba(17,21,31,.6)!important; }
.azh-dot,.azh-dot:hover{ background:#d9d9d9!important; border:none!important; border-radius:50%!important; padding:0!important; width:11px!important; height:11px!important; min-width:0!important; }
.azh-dot-active{ background:var(--azatom-blue)!important; }

/* top strip: black, uppercase (match live) */
.azh-top{ background:#11151F!important; }
.azh-ship{ text-transform:uppercase!important; font-weight:600; letter-spacing:.06em; }

/* hide page title on front page */
.home .entry-header,.home h1.entry-title{ display:none!important; }
.home .site-content .ast-container{ padding-top:0; }

/* hero: natural image + caption below (match live mobile) */
.azatom-hero{ background:#fff; }
.azh-slides{ position:relative; aspect-ratio:auto; }
.azh-slide{ display:none; position:static; opacity:1; transition:none; }
.azh-slide-active{ display:block; }
.azh-slide img{ width:100%; height:auto; display:block; }
.azh-cap{ text-align:center; padding:20px 18px 26px; max-width:760px; margin:0 auto; }
.azh-cap h3{ font-family:"Open Sans",sans-serif; font-weight:700; font-size:1.6rem; margin:0 0 10px; color:var(--azatom-navy); }
.azh-cap p{ color:#9a9a9a; font-size:1.15rem; line-height:1.5; margin:0; }
.azh-dots{ position:static; padding:4px 0 18px; }
.azh-arrow{ top:24%; }
@media (max-width:768px){ .azh-arrow{ top:18%; } .azh-cap h3{ font-size:1.35rem; } .azh-cap p{ font-size:1rem; } }

/* basket + shield icons (match live) */
.azh-cart-svg{ width:28px; height:28px; color:#fff; }
.azh-cart-count{ background:#e02b2b!important; color:#fff!important; }
.azh-shield{ display:flex; align-items:center; justify-content:center; width:40px; height:40px; background:#f66b1b; border-radius:4px; }
.azh-shield svg{ width:24px; height:24px; color:#fff; }
.azh-shield:hover{ filter:brightness(1.08); }
@media (min-width:769px){ .azh-shield{ display:none; } } /* desktop keeps Register button */

/* ===== v1.1 mobile menu: blue overlay matching live ===== */
.azn-search{ display:none; }
@media (max-width:900px){
  /* blue overlay panel */
  .azatom-nav{ background:var(--azatom-blue); border-bottom:none; box-shadow:none; }
  .azn-wrap{ padding:14px 20px 30px; }
  /* search box */
  .azn-search{ display:block; margin:10px 0 18px; }
  .azn-search input[type="search"]{ width:100%; background:transparent; border:1px solid rgba(255,255,255,.85); color:#fff;
    padding:15px 16px; font-family:"Oswald",sans-serif; font-size:.95rem; letter-spacing:.05em; text-transform:uppercase; border-radius:0; }
  .azn-search input[type="search"]::placeholder{ color:rgba(255,255,255,.9); text-transform:uppercase; }
  .azn-search input[type="search"]:focus{ outline:none; border-color:#fff; }
  /* items: white uppercase, thin white separators, single right chevron */
  .azn-item{ border-bottom:1px solid rgba(255,255,255,.35); }
  .azn-item:first-of-type{ border-top:1px solid rgba(255,255,255,.35); }
  .azn-item > a{ color:#fff!important; font-size:1.02rem; padding:18px 4px; }
  .azn-has-mega > a:after{ content:none; }   /* kill duplicate inline chevron */
  .azn-expand{ color:#fff!important; font-size:1.05rem; padding:18px 8px; box-shadow:none!important; line-height:1; }
  .azn-item-open .azn-expand{ transform:rotate(180deg); }
  /* submenu on blue */
  .azn-mega{ background:transparent; padding:0 4px 14px; }
  .azn-mega-list a{ color:rgba(255,255,255,.92)!important; border-bottom:none; padding:9px 0 9px 12px; }
  .azn-mega-list a:hover{ color:#fff!important; }
  .azn-count{ color:rgba(255,255,255,.55); }
}

/* ===== v1.2 homepage product sections (mirror live: per-product carousels, dots in image, no arrows) ===== */
.azatom-hero,.azh-slides,.azh-cap,.azh-dots,.azh-arrow{ display:none!important; } /* retire old hero */
.azp{ margin:0 0 8px; }
.azp-car{ position:relative; }
.azp-slide{ display:none; }
.azp-slide.azp-on{ display:block; }
.azp-slide img{ width:100%; height:auto; display:block; }
.azp-dots{ position:absolute; bottom:14px; left:0; right:0; display:flex; justify-content:center; gap:10px; z-index:2; }
.azp-dot{ width:13px; height:13px; border-radius:50%!important; border:2px solid #fff!important; background:transparent!important;
  padding:0!important; min-width:0!important; cursor:pointer; box-shadow:0 0 3px rgba(0,0,0,.35)!important; }
.azp-dot-on{ background:#fff!important; }
.azp-cap{ text-align:center; padding:26px 18px 34px; max-width:820px; margin:0 auto; }
.azp-cap h3, .azp-cap h3 a{ font-family:"Open Sans",sans-serif; font-weight:700; font-size:1.55rem; margin:0 0 12px; color:var(--azatom-navy)!important; line-height:1.3; }
.azp-cap p{ color:#9a9a9a; font-size:1.15rem; line-height:1.55; margin:0; }
@media (max-width:768px){ .azp-cap h3, .azp-cap h3 a{ font-size:1.3rem; } .azp-cap p{ font-size:1.02rem; } }

/* ===== cookie consent banner (match live: dark bar, bottom) ===== */
.azatom-cookie{ position:fixed; left:0; right:0; bottom:0; z-index:9999; background:rgba(17,21,31,.97); color:#e7e7e7;
  padding:18px 20px; box-shadow:0 -2px 14px rgba(0,0,0,.25); }
.azatom-cookie .azc-inner{ max-width:1100px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:22px; flex-wrap:wrap; }
.azatom-cookie .azc-text{ margin:0; font-size:.95rem; line-height:1.5; flex:1 1 460px; }
.azatom-cookie .azc-text a{ color:#f66b1b; text-decoration:underline; }
.azatom-cookie .azc-actions{ display:flex; gap:10px; flex:0 0 auto; }
.azatom-cookie .azc-btn{ font-family:"Oswald",sans-serif; text-transform:uppercase; letter-spacing:.03em; font-size:.82rem; font-weight:600;
  padding:11px 20px; border-radius:2px; border:none; cursor:pointer; }
.azatom-cookie .azc-accept{ background:var(--azatom-cream); color:var(--azatom-cream-text); }
.azatom-cookie .azc-accept:hover{ filter:brightness(.94); }
.azatom-cookie .azc-decline{ background:transparent; color:#e7e7e7; border:1px solid rgba(255,255,255,.4); }
.azatom-cookie .azc-decline:hover{ border-color:#fff; }
.azatom-cookie .azc-close{ position:absolute; top:10px; right:14px; background:none; border:none; color:#bbb; font-size:1.4rem; line-height:1; cursor:pointer; }
.azatom-cookie .azc-close:hover{ color:#fff; }
@media (max-width:600px){
  .azatom-cookie{ padding:16px 16px 18px; }
  .azatom-cookie .azc-inner{ flex-direction:column; align-items:stretch; gap:14px; }
  .azatom-cookie .azc-actions{ justify-content:center; }
  .azatom-cookie .azc-btn{ flex:1; }
}

/* ===== contact page ===== */
.azcontact-grid{ display:grid; grid-template-columns:1fr 1.2fr; gap:44px; max-width:1000px; margin:0 auto 36px; }
@media (max-width:760px){ .azcontact-grid{ grid-template-columns:1fr; gap:26px; } }
.azatom-contact-form .acf-row{ display:flex; flex-direction:column; margin:0 0 15px; }
.azatom-contact-form label{ font-family:"Oswald",sans-serif; text-transform:uppercase; font-size:.8rem; letter-spacing:.03em; margin-bottom:6px; color:var(--azatom-navy); }
.azatom-contact-form input,.azatom-contact-form textarea{ padding:11px 12px; border:1px solid #ccc; border-radius:3px; font-size:1rem; font-family:"Open Sans",sans-serif; }
.azatom-contact-form input:focus,.azatom-contact-form textarea:focus{ border-color:var(--azatom-blue); outline:none; }
.acf-hp{ position:absolute; left:-9999px; height:0; overflow:hidden; }
.azc-form-success{ padding:22px; background:#f3f8f3; border:1px solid var(--azatom-green); border-radius:6px; text-align:center; }
.azcontact-map{ max-width:1000px; margin:0 auto 30px; }
.azcontact-map iframe{ display:block; border-radius:6px; }

/* ===== v1.4.0 desktop parity: nav in header, orange register, full-bleed heroes ===== */
/* top strip: centred message + X */
.azh-top{ position:relative; text-align:center; padding:8px 44px; }
.azh-top .azh-ship{ float:none; display:inline-block; }
.azh-top .azh-links{ display:none; }
.azh-top-close{ position:absolute; right:14px; top:50%; transform:translateY(-50%); background:none; border:none; color:#bbb; font-size:1.15rem; line-height:1; cursor:pointer; padding:2px 6px; min-width:0; }
.azh-top-close:hover{ color:#fff; background:none; }

/* header row hosts the nav */
.azh-main{ position:relative; }
.azh-main .azh-wrap{ display:flex; align-items:center; gap:26px; }
.azh-logo{ flex:0 0 auto; }

/* nav inline on desktop */
.azatom-nav{ background:transparent; border:none; flex:1 1 auto; display:flex; justify-content:flex-end; position:static; }
.azatom-nav .azn-search{ display:none; }
.azn-menu{ display:flex; gap:4px; margin:0; padding:0; list-style:none; }
.azn-item{ position:static; }
.azn-item > a{ display:block; padding:14px 13px; color:#fff!important; font-family:"Oswald",sans-serif; font-size:.82rem; font-weight:500; letter-spacing:.06em; text-transform:uppercase; text-decoration:none; }
.azn-item > a:hover{ color:var(--azatom-cream)!important; }
.azn-expand{ display:none; }
/* mega panel anchored to header */
.azn-mega{ display:none; position:absolute; left:0; right:0; top:100%; background:#fff; border-bottom:3px solid var(--azatom-blue);
  box-shadow:0 10px 24px rgba(0,0,0,.14); z-index:1000; padding:26px 8vw; }
.azn-has-mega:hover .azn-mega{ display:block; }
.azn-mega-list{ display:grid; grid-template-columns:repeat(auto-fill,minmax(210px,1fr)); gap:8px 30px; list-style:none; margin:0; padding:0; }
.azn-mega-list a{ color:var(--azatom-navy)!important; font-size:.92rem; text-decoration:none; display:block; padding:6px 0; }
.azn-mega-list a:hover{ color:var(--azatom-blue)!important; }
.azn-count{ color:#9aa3ad; font-size:.8em; }

/* right cluster */
.azh-right{ display:flex; align-items:center; gap:16px; flex:0 0 auto; }
.azh-gbp{ color:#fff; border:1px solid rgba(255,255,255,.65); border-radius:2px; font-size:.72rem; font-weight:600; padding:3px 7px; letter-spacing:.04em; }
.azh-search-btn{ background:none!important; border:none!important; padding:4px!important; min-width:0!important; cursor:pointer; color:#fff; }
.azh-search-btn svg{ width:21px; height:21px; display:block; }
.azh-register{ background:#f66b1b!important; color:#fff!important; font-family:"Open Sans",sans-serif; font-size:.85rem; font-weight:600;
  padding:9px 16px; border-radius:3px; text-decoration:none; white-space:nowrap; }
.azh-register:hover{ background:#2973c3!important; }
/* search dropdown */
.azh-searchform{ position:absolute; right:6vw; top:100%; z-index:1001; background:#fff; padding:10px; box-shadow:0 8px 20px rgba(0,0,0,.18); border-radius:0 0 4px 4px; }
.azh-searchform input[type=search]{ width:320px; max-width:70vw; padding:10px 12px; border:1px solid #ccc; font-size:.9rem; }

/* full-bleed product heroes */
.entry-content .azp, .azp{ width:100vw!important; max-width:100vw!important; margin-left:calc(50% - 50vw)!important; margin-right:calc(50% - 50vw)!important; }
.azp-cap h3, .azp-cap h3 a{ text-decoration:none!important; border-bottom:none!important; font-size:1.25rem; font-weight:600; }
.azp-cap p{ font-size:1.1rem; }

/* mobile: nav becomes overlay again */
@media (max-width:920px){
  .azatom-nav{ display:none; position:absolute; top:100%; left:0; right:0; background:var(--azatom-blue); z-index:1002; padding:6px 0 16px; }
  .azatom-nav.azn-open{ display:block; }
  .azatom-nav .azn-search{ display:block; padding:12px 18px 4px; }
  .azn-menu{ display:block; }
  .azn-item{ position:relative; }
  .azn-item > a{ padding:13px 18px; font-size:.95rem; }
  .azn-expand{ display:block; position:absolute; right:8px; top:4px; background:none!important; border:none!important; color:#fff; font-size:1.05rem; padding:10px 14px!important; min-width:0!important; }
  .azn-mega{ display:none; position:static; box-shadow:none; border:none; padding:0 18px 8px 30px; background:transparent; }
  .azn-item-open .azn-mega{ display:block; }
  .azn-has-mega:hover .azn-mega{ display:none; }
  .azn-item-open.azn-has-mega:hover .azn-mega{ display:block; }
  .azn-mega-list{ display:block; }
  .azn-mega-list a{ color:#fff!important; padding:8px 0; }
  .azn-count{ color:rgba(255,255,255,.6); }
  .azh-gbp,.azh-register{ display:none; }
  .azh-searchform{ right:0; left:0; }
}
/* v1.4.1: kill content gap under header on front page */
.home .content-area{ margin-top:0!important; }
.home .entry-content > .azp:first-child{ margin-top:0!important; }

/* ===== v1.4.3 punch list ===== */
/* cookie bar buttons -> orange */
.azc-btn, .azc-accept, .azc-decline{ background:#f66b1b!important; color:#fff!important; border:1px solid #f66b1b!important; }
.azc-btn:hover{ background:#2973c3!important; border-color:#2973c3!important; }
.azc-decline{ background:transparent!important; color:#f66b1b!important; }
.azc-decline:hover{ background:#f66b1b!important; color:#fff!important; }

/* mega panel -> blue like live */
.azn-mega{ background:var(--azatom-blue)!important; border-bottom:3px solid var(--azatom-blue-dark); }
.azn-mega-list a{ color:#fff!important; font-weight:500; }
.azn-mega-list a:hover{ color:var(--azatom-cream)!important; }
.azn-count{ color:rgba(255,255,255,.65); }

/* hover gap fix: stretch nav items to full header height */
.azh-main .azh-wrap{ align-items:stretch; }
.azh-logo, .azh-right, .azh-toggle{ align-self:center; }
.azatom-nav{ align-items:stretch; }
.azn-menu{ align-items:stretch; height:100%; }
.azn-item{ display:flex; }
.azn-item > a{ display:flex; align-items:center; height:100%; padding-top:0; padding-bottom:0; }

/* icons: white, bigger, no grey */
.azh-search-btn{ background:transparent!important; border:none!important; box-shadow:none!important; color:#fff!important; }
.azh-search-btn svg{ width:26px; height:26px; stroke:#fff; }
.azh-cart{ color:#fff!important; }
.azh-cart-svg{ width:30px!important; height:30px!important; stroke:#fff; }

/* bolder nav */
.azn-item > a{ font-weight:600; font-size:.9rem; letter-spacing:.07em; }

/* ===== v1.5.0: cat banner, trustpilot band, tab tables ===== */
.az-cat-banner{ width:100vw; max-width:100vw; margin:0 calc(50% - 50vw) 22px; }
.az-cat-banner img{ width:100%; height:auto; display:block; }
.azatom-trust{ background:var(--azatom-navy); padding:16px 6vw; }
.az-tab-specs table, .az-tab-box table{ width:100%; border-collapse:collapse; }
.az-tab-specs td, .az-tab-box td{ padding:8px 12px; border-bottom:1px solid #e5e5e5; }
.hadng-disp{ font-family:"Oswald",sans-serif; font-size:1.15rem; text-transform:uppercase; margin:14px 0 8px; }

/* ===== v1.6.0 live-parity colours + nav ===== */
/* nav: Roboto bold 14px, wide spacing, hover underline like live */
.azn-item > a{ font-family:"Roboto","Open Sans",sans-serif!important; font-weight:700; font-size:14px; letter-spacing:0; }
.azn-menu{ gap:30px; }
.azn-item > a span, .azn-item > a{ position:relative; }
.azn-item > a::after{ content:""; position:absolute; left:0; right:0; bottom:26px; height:2px; background:transparent; }
.azn-item:hover > a::after{ background:#5791d0; }
/* mega submenu links: Roboto 300 spaced like live */
.azn-mega-list a{ font-family:"Roboto",sans-serif; font-weight:300; letter-spacing:.1em; font-size:14px; }
/* cart badge -> live red-pink */
.azh-cart-count{ background:#ff4052!important; font-size:11px; }
/* cookie bar like live: dark, orange link, side margins on desktop */
.azatom-cookie .azc-text a{ color:#F6782F!important; }
@media (min-width:920px){ .azatom-cookie{ left:80px; right:80px; } }
/* footer + product register buttons */
.azf-register-btn, .az-register-product{ background:#f66b1b!important; border:1px solid #f66b1b!important; color:#fff!important; }
.azf-register-btn:hover, .az-register-product:hover{ background:#2973c3!important; border-color:#2973c3!important; }
.az-register-product{ display:inline-block; margin-left:10px; padding:10px 22px; font-size:.95rem; text-decoration:none; border-radius:3px; vertical-align:middle; }

/* ===== v1.6.1 mobile parity (from live efcustom mobile rules) ===== */
@media (max-width:920px){
  /* header: 68px, logo 144px */
  .azh-main .azh-wrap{ min-height:68px; }
  .azh-logo img{ width:144px; height:auto; }
  /* nav overlay: full height, item separators, roboto bold */
  .azatom-nav.azn-open{ min-height:calc(100vh - 68px); }
  .azn-item{ border-top:1px solid #5791d0; display:block; }
  .azn-item:first-child{ border-top:none; }
  .azn-item > a{ font-family:"Roboto",sans-serif!important; font-weight:700; font-size:14px; height:auto; padding:13px 18px!important; }
  /* expanded submenu: white panel, blue uppercase links (live) */
  .azn-item-open .azn-mega{ background:#fff!important; padding:10px 18px!important; margin:0 0 6px; }
  .azn-item-open .azn-mega-list a{ color:#2973c3!important; text-transform:uppercase; font-size:12px; font-weight:400; letter-spacing:.05em; }
  .azn-item-open .azn-mega-list a:hover{ color:#153b64!important; }
  .azn-item-open .azn-count{ color:#8aa9c9; }
  /* search: transparent on blue, white border + text + placeholder */
  .azatom-nav .azn-search input[type=search]{ background:#2973c3; border:1px solid #fff; color:#fff; width:98%; padding:10px 12px; font-size:.95rem; }
  .azatom-nav .azn-search input::placeholder{ color:#fff; opacity:.95; }
  /* cart badge nudge like live */
  .azh-cart{ position:relative; }
  .azh-cart-count{ top:-6px; }
  /* hero captions smaller (live 640 rules) */
  .azp-cap h3, .azp-cap h3 a{ font-size:24px!important; line-height:1.15; margin-bottom:10px; }
  .azp-cap p{ font-size:15px; padding:0 15px; }
  /* product page: buttons stack */
  .az-register-product{ margin-left:0; margin-top:10px; display:block; text-align:center; }
  /* footer stacks with breathing room */
  .azatom-footer-cols{ grid-template-columns:1fr; gap:18px; }
  .azf-register-btn{ float:left; margin-bottom:20px; }
}
@media (max-width:640px){
  .azp-cap h3, .azp-cap h3 a{ font-size:24px!important; }
}

/* ===== v1.6.2 desktop parity: blue footer, pill tocart, price, breadcrumbs ===== */
/* footer: live blue */
.azatom-trust{ background:#2973C3; }
.site-footer, .ast-footer-overlay, footer .ast-builder-footer-wrapper{ background:#2973C3!important; }
.azatom-footer-cols{ background:#2973C3; padding:64px 6vw 20px; color:#ccc; }
.azf-col h4{ color:#fff; text-transform:uppercase; font-weight:600; font-size:13px; letter-spacing:.2em; font-family:"Open Sans",sans-serif; }
.azf-col a, .azatom-footer-legal{ color:#ccc!important; font-size:13px; letter-spacing:1.3px; }
.azf-col a:hover{ color:#fff!important; }
.azf-col li{ padding:0 16px 13px 0; line-height:15px; }
.azatom-footer-legal{ background:#2973C3; padding:20px 6vw 32px; }
/* add-to-basket: blue pill, hover inverts */
.single_add_to_cart_button, .woocommerce button.button.alt{ border-radius:20px!important; background:#2973c3!important; border:1px solid #2973c3!important; color:#fff!important; transition:all .2s; }
.single_add_to_cart_button:hover, .woocommerce button.button.alt:hover{ background:#fff!important; color:#2973c3!important; }
/* register-product square like live btn-custom */
.az-register-product{ border-radius:0; }
/* product price */
.product .price, .summary .price{ font-size:32px!important; letter-spacing:2px; color:#242424!important; font-family:"Roboto",sans-serif; }
.summary .price del{ font-size:22px!important; }
/* breadcrumbs */
.woocommerce-breadcrumb{ background:#fff; color:#3C4250!important; }
.woocommerce-breadcrumb a{ color:#3C4250!important; }
/* v1.6.3: footer brand badge + kill Astra footer rows */
.azf-brand img{ max-width:150px; height:auto; }
.azatom-footer-cols{ grid-template-columns:170px repeat(3,1fr) 1.3fr; }
.site-footer .ast-builder-grid-row-container, .site-footer .site-below-footer-wrap, .site-footer .ast-builder-footer-wrapper{ display:none!important; }
@media (max-width:920px){ .azatom-footer-cols{ grid-template-columns:1fr; } .azf-brand img{ max-width:130px; } }

/* ===== v1.6.4 global type + product spacing (live body spec) ===== */
body, .entry-content p, .entry-content li, .woocommerce-page p, .summary p, .woocommerce-Tabs-panel{ font-family:"Roboto",sans-serif; color:#7A7D82; }
h1,h2,h3,h4,h5,h6{ color:#242424; font-family:"Roboto",sans-serif; }
/* product page */
.summary h1.product_title{ font-weight:400!important; font-size:30px; color:#242424!important; margin-bottom:26px!important; padding-bottom:15px; border-bottom:1px solid #e5e5e5; }
.summary .woocommerce-product-details__short-description{ margin-bottom:18px; }
.summary form.cart{ padding-top:0; margin-top:8px; }
.summary .stock.in-stock{ color:#20b92a; font-weight:400; text-transform:uppercase; }
/* tabs */
.woocommerce-tabs ul.tabs li a{ font-size:17px!important; font-family:"Roboto",sans-serif; color:#242424; }
.woocommerce-Tabs-panel{ background:#fff; }
/* round swatch-ish variation select focus */
.summary select:focus{ outline:1px solid #2973c3; }
/* keep header/footer/nav colors intact */
.azatom-header *, .azatom-footer-cols *, .azatom-nav *, .azatom-cookie *, .azh-register, .azf-register-btn{ font-family:inherit; }

/* ===== v1.6.5 product layout parity ===== */
.single-product .ast-container{ max-width:1140px; }
.single-product div.product div.images{ width:48%; }
.single-product div.product div.summary{ width:48%; }
.summary h1.product_title{ margin-bottom:40px!important; }
/* magento content helpers used in imported HTML */
.summary .woocommerce-product-details__short-description ul{ columns:2; column-gap:34px; margin:0 0 14px; padding-left:18px; }
.summary .woocommerce-product-details__short-description li{ break-inside:avoid; font-size:14px; line-height:1.9; }
.hadng-disp{ text-align:center; }
.az-tab-specs table td, .az-tab-box table td{ font-size:14px; }
.woocommerce-Tabs-panel img{ max-width:100%; height:auto; }
@media (max-width:920px){ .summary .woocommerce-product-details__short-description ul{ columns:1; } }

/* ===== v1.6.6 footer spacing + top bar ===== */
.azatom-foot-top{ background:#2973C3; display:flex; justify-content:space-between; align-items:center; gap:24px; padding:26px 6vw; border-bottom:1px solid #5791d0; flex-wrap:wrap; }
.aft-news{ display:flex; align-items:center; gap:16px; color:#fff; flex:1 1 auto; }
.aft-news span{ font-family:"Roboto",sans-serif; font-weight:600; text-transform:uppercase; letter-spacing:.12em; font-size:14px; white-space:nowrap; }
.aft-form{ display:flex; flex:1 1 auto; max-width:420px; }
.aft-form input{ flex:1; border:none; padding:11px 14px; font-size:14px; }
.aft-form button{ background:#f66b1b; color:#fff; border:none; padding:11px 22px; font-family:"Roboto",sans-serif; font-weight:600; text-transform:uppercase; letter-spacing:.05em; cursor:pointer; }
.aft-form button:hover{ background:#153b64; }
.aft-social{ display:flex; gap:10px; }
.aft-social a{ width:36px; height:36px; border:1px solid rgba(255,255,255,.6); border-radius:50%; display:flex; align-items:center; justify-content:center; color:#fff; font-family:"Roboto",sans-serif; text-decoration:none; text-transform:lowercase; transition:all .2s; }
.aft-social a:hover{ background:#fff; color:#2973c3; }
/* footer columns: tighter, aligned */
.azatom-footer-cols{ grid-template-columns:160px 1fr 1fr 1fr 1.2fr; gap:40px; align-items:start; padding:48px 6vw 28px; }
.azf-brand img{ max-width:150px; }
.azf-col h4{ margin:0 0 16px; }
.azf-col ul{ margin:0; padding:0; list-style:none; }
.azf-col li{ padding:0 0 11px; line-height:1.4; }
.azf-contact li{ display:flex; gap:8px; align-items:baseline; }
.azf-register-btn{ display:inline-block; margin-top:8px; padding:10px 20px; }
.azatom-footer-legal{ padding:18px 6vw 30px; font-size:12px; border-top:1px solid #5791d0; }
@media (max-width:920px){
  .azatom-foot-top{ flex-direction:column; align-items:stretch; }
  .aft-news{ flex-direction:column; align-items:flex-start; gap:10px; }
  .aft-form{ max-width:100%; }
  .aft-social{ justify-content:center; }
  .azatom-footer-cols{ grid-template-columns:1fr; gap:24px; text-align:left; }
}

/* ===== v1.6.7 footer: full-bleed bands, 1170 centred content (live) ===== */
.azatom-foot-top, .azatom-trust, .azatom-footer-cols, .azatom-footer-legal{ padding-left:calc(50% - 585px); padding-right:calc(50% - 585px); }
.azatom-footer-cols{ max-width:none; }
@media (max-width:1200px){
  .azatom-foot-top, .azatom-trust, .azatom-footer-cols, .azatom-footer-legal{ padding-left:24px; padding-right:24px; }
}

/* ===== v1.6.8 product parity: Paralucent title, blue subtitle, price weight ===== */
@font-face{ font-family:"Paralucent"; src:url(/wp-content/uploads/azatom-fonts/Paralucent-Light.otf) format("opentype"); font-weight:300; font-display:swap; }
@font-face{ font-family:"Paralucent"; src:url(/wp-content/uploads/azatom-fonts/Paralucent-Medium.otf) format("opentype"); font-weight:500; font-display:swap; }
@font-face{ font-family:"Paralucent"; src:url(/wp-content/uploads/azatom-fonts/Paralucent-Bold.otf) format("opentype"); font-weight:700; font-display:swap; }
.summary h1.product_title{ font-family:"Paralucent",sans-serif!important; font-weight:500!important; color:#868686!important; font-size:28px; border-bottom:none!important; padding-bottom:0!important; margin-bottom:6px!important; }
.az-subtitle{ color:#0975E7; font-family:"Roboto",sans-serif; font-size:14px; margin:0 0 22px; }
.summary .price{ font-weight:400!important; color:#444!important; order:5; }
.summary .woocommerce-product-details__short-description{ order:4; }
.az-subtitle{ order:2; }
.summary .stock.in-stock{ color:#777!important; }
/* v1.6.9 subtitle fix: blue, sits under title (remove flex order hacks) */
.az-subtitle{ color:#0975E7!important; order:0!important; margin:-2px 0 20px!important; }
.summary .price, .summary .woocommerce-product-details__short-description, .summary .az-subtitle{ order:initial!important; }
.single-product-category{ display:none; }
