/*
Theme Name: Airsoft DB Theme
Theme URI: https://airsoft-db.co.uk/
Author: Airsoft DB
Author URI: https://airsoft-db.co.uk/
Description: Lightweight purpose-built theme for Airsoft DB. Owns typography, header/navigation, footer, generic page layout and dark-mode controls while Airsoft DB Core owns catalogue/application presentation.
Version: 1.1.0-rc.4
Requires at least: 6.6
Requires PHP: 8.1
Text Domain: airsoft-db-theme
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

:root{
  --adb-theme-accent:var(--adb-color-accent,#ff6b00);
  --adb-theme-ink:var(--adb-color-ink,#242424);
  --adb-theme-muted:var(--adb-color-muted,#666);
  --adb-theme-line:var(--adb-color-line,#e3e3e3);
  --adb-theme-header-height:80px;
  --adb-theme-content:1080px;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;color:#666;font-family:"Open Sans",Arial,sans-serif;font-size:14px;font-weight:400;line-height:1.7}
body,input,textarea,select,button{font-family:"Open Sans",Arial,sans-serif}
img{max-width:100%;height:auto}
a{color:var(--adb-theme-accent);text-decoration:none}
a:hover{text-decoration:none}
button,input,select,textarea{font:inherit}

h1,h2,h3,h4,h5,h6{margin:0 0 10px;color:#333;font-weight:500;line-height:1.1}
p{margin:0 0 1em}
ul,ol{margin:0 0 1em 1.5em;padding:0}

.screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.screen-reader-text:focus{clip:auto!important;width:auto!important;height:auto!important;margin:0!important;padding:12px 16px!important;left:8px!important;top:8px!important;z-index:100000!important;background:#fff!important;color:#111!important;box-shadow:0 0 0 2px var(--adb-theme-accent)!important}

.adb-page{min-height:100vh;display:flex;flex-direction:column;background:#fff}
.adb-site-body{flex:1 0 auto;min-width:0}
.adb-site-main{background:#fff;min-width:0}
.adb-site-main>.adb-site-container{position:relative;width:80%;max-width:var(--adb-theme-content);margin:0 auto;padding:58px 0 70px}
.adb-site-content{width:100%}
.adb-site-primary{width:100%;float:none;padding:0}
article.page,article.post{margin:0;padding:0}
.entry-title{margin-bottom:26px;font-size:38px;letter-spacing:-.025em}
.entry-content{min-width:0}
.entry-content::after{content:"";display:table;clear:both}
.entry-content>:first-child{margin-top:0}

/* Neutral site button. */
.adb-button{position:relative;display:inline-block;padding:.3em 1em;border:2px solid;border-radius:3px;background:transparent;background-position:50%;background-repeat:no-repeat;background-size:cover;font-size:20px;font-weight:500;line-height:1.7!important;cursor:pointer;transition:all .2s}
.adb-button::after{content:"›";position:absolute;margin-left:-1em;opacity:0;font-size:1.55em;line-height:1em;transition:all .2s}
.adb-button:hover{padding:.3em 2em .3em .7em;border-color:transparent}
.adb-button:hover::after{margin-left:.3em;opacity:1}

/* Header and primary navigation. */
.adb-header{position:sticky;top:0;z-index:9990;width:100%;background:#fff;box-shadow:0 1px 0 rgba(0,0,0,.08);transition:box-shadow .18s ease}
.adb-header__inner{position:relative;width:80%;max-width:var(--adb-theme-content);height:var(--adb-theme-header-height);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:28px}
.adb-header__logo{min-width:0;display:flex;align-items:center;flex:0 1 240px;height:100%}
.adb-header__logo>a{display:inline-flex;align-items:center;max-width:100%;height:100%}
.adb-site-logo{display:block;width:auto;height:auto;max-width:220px;max-height:54px}

.adb-header__actions{height:100%;display:flex;align-items:center;justify-content:flex-end;gap:14px;margin-left:auto}
.adb-primary-nav{height:100%;display:flex;align-items:center}
#adb-primary-menu{height:100%;display:flex;align-items:center;gap:28px;margin:0!important;padding:0!important;list-style:none!important}
#adb-primary-menu>li{height:100%;display:flex;align-items:center;margin:0!important;padding:0!important;position:relative}
#adb-primary-menu>li>a{display:inline-flex;align-items:center;height:100%;padding:2px 0 0;color:#262626;font-size:14px;font-weight:650;line-height:1;white-space:nowrap;transition:color .16s ease}
#adb-primary-menu>li>a:hover,#adb-primary-menu>li.current-menu-item>a,#adb-primary-menu>li.current_page_item>a,#adb-primary-menu>li.current-menu-ancestor>a{color:var(--adb-theme-accent)}
#adb-primary-menu .sub-menu{position:absolute;left:-18px;top:calc(100% - 1px);z-index:100;min-width:210px;margin:0!important;padding:12px 0!important;list-style:none!important;background:#fff;border-top:3px solid var(--adb-theme-accent);box-shadow:0 14px 34px rgba(0,0,0,.12)}
#adb-primary-menu .sub-menu[hidden]{display:none}
#adb-primary-menu .sub-menu li{margin:0!important;padding:0!important}
#adb-primary-menu .sub-menu a{display:block;padding:9px 18px;color:#333;font-size:13px;font-weight:600}
#adb-primary-menu .menu-item-has-children:hover>.sub-menu,#adb-primary-menu .menu-item-has-children:focus-within>.sub-menu{display:block}

.adb-header__search-action{width:36px;height:36px;display:flex;align-items:center;justify-content:center;margin:0}
#adb-search-toggle{position:relative;width:36px;height:36px;margin:0;padding:0;border:0;background:transparent;color:#262626;cursor:pointer;border-radius:999px}
#adb-search-toggle::before{content:"";position:absolute;left:10px;top:9px;width:10px;height:10px;border:2px solid currentColor;border-radius:50%}
#adb-search-toggle::after{content:"";position:absolute;left:21px;top:21px;width:7px;height:2px;background:currentColor;transform:rotate(45deg);transform-origin:left center;border-radius:999px}
#adb-search-toggle:hover,#adb-search-toggle:focus-visible{color:var(--adb-theme-accent)}
#adb-search-toggle:focus-visible,.adb-mobile-nav__toggle:focus-visible{outline:3px solid rgba(255,107,0,.25);outline-offset:2px}

.adb-header-search{position:absolute;left:0;right:0;top:100%;z-index:120;background:#fff;border-top:1px solid #eee;border-bottom:1px solid #e6e6e6;box-shadow:0 12px 28px rgba(0,0,0,.08)}
.adb-header-search[hidden]{display:none}
.adb-header-search__inner{width:80%;max-width:var(--adb-theme-content);margin:0 auto;padding:18px 0;display:flex;gap:10px}
.adb-header-search input[type=search]{width:100%;min-width:0;height:44px;padding:0 13px;border:1px solid #d7d7d7;border-radius:8px;background:#fff;color:#222;outline:0}
.adb-header-search input[type=search]:focus{border-color:var(--adb-theme-accent);box-shadow:0 0 0 3px rgba(255,107,0,.10)}
.adb-header-search button{height:44px;padding:0 18px;border:1px solid var(--adb-theme-accent);border-radius:8px;background:var(--adb-theme-accent);color:#fff;font-weight:750;cursor:pointer}

.adb-mobile-nav{display:none}
.adb-mobile-nav__host{display:flex;align-items:center}
.adb-mobile-nav__toggle{position:relative;width:36px;height:36px;padding:0;border:0;background:transparent;color:#262626;cursor:pointer;border-radius:999px}
.adb-mobile-nav__toggle .adb-menu-line{position:absolute;left:8px;width:20px;height:2px;background:currentColor;border-radius:999px;transition:transform .18s ease,top .18s ease,opacity .18s ease}
.adb-mobile-nav__toggle .adb-menu-line--1{top:10px}
.adb-mobile-nav__toggle .adb-menu-line--2{top:17px}
.adb-mobile-nav__toggle .adb-menu-line--3{top:24px}
.adb-mobile-nav__host.is-open .adb-menu-line--1{top:17px;transform:rotate(45deg)}
.adb-mobile-nav__host.is-open .adb-menu-line--2{opacity:0}
.adb-mobile-nav__host.is-open .adb-menu-line--3{top:17px;transform:rotate(-45deg)}

.adb-header .adb-mobile-menu{position:absolute;left:0;right:0;top:100%;z-index:110;margin:0!important;padding:6px 0 10px!important;list-style:none!important;background:#fff;border-top:3px solid var(--adb-theme-accent);box-shadow:0 14px 34px rgba(0,0,0,.13)}
.adb-header .adb-mobile-menu[hidden]{display:none!important}
.adb-header .adb-mobile-menu li{margin:0!important;padding:0!important;list-style:none!important}
.adb-header .adb-mobile-menu li a{display:block;padding:13px max(20px,calc((100vw - min(1080px,80vw))/2));border-bottom:1px solid #eee;color:#262626;font-size:14px;font-weight:650}
.adb-header .adb-mobile-menu li:last-child>a{border-bottom:0}
.adb-header .adb-mobile-menu li.current-menu-item>a,.adb-header .adb-mobile-menu li.current_page_item>a{color:var(--adb-theme-accent)}
.adb-header .adb-mobile-menu .sub-menu{margin:0!important;padding:0 0 0 18px!important;list-style:none!important}

/* Generic WordPress fallback surfaces. Core-owned Airsoft DB routes override these. */
.adb-theme-archive-header{margin-bottom:28px;padding-bottom:22px;border-bottom:1px solid var(--adb-theme-line)}
.adb-theme-archive-title{margin:0;font-size:clamp(28px,4vw,42px);line-height:1.2;overflow-wrap:anywhere}
.adb-theme-archive-description{margin-top:14px}
.adb-theme-archive-description>:last-child{margin-bottom:0}
html[data-adb-theme="dark"] .adb-theme-archive-header{border-color:#363636}
.adb-theme-loop{display:grid;gap:18px}
.adb-theme-loop article{padding:24px;border:1px solid var(--adb-theme-line);border-radius:14px;background:#fff}
.adb-theme-loop h2{margin-bottom:8px;font-size:26px}
.adb-theme-loop h2 a{color:#252525}
.adb-theme-loop h2 a:hover{color:var(--adb-theme-accent)}
.adb-theme-meta{margin-bottom:10px;color:#888;font-size:12px}
.adb-theme-empty{padding:42px 0}
.adb-theme-pagination{margin-top:28px}
.adb-theme-pagination .nav-links{display:flex;gap:8px;flex-wrap:wrap}
.adb-theme-pagination .page-numbers{display:inline-grid;place-items:center;min-width:38px;height:38px;padding:0 10px;border:1px solid var(--adb-theme-line);border-radius:8px;color:#333}
.adb-theme-pagination .current{border-color:var(--adb-theme-accent);background:var(--adb-theme-accent);color:#fff}

/* Search surfaces follow the selected theme. */
html[data-adb-theme="dark"] .adb-page{background:var(--adb-dark-page,#111)}
html[data-adb-theme="dark"] .adb-header-search{background:#202020;border-color:#363636}
html[data-adb-theme="dark"] .adb-header-search input[type=search]{background:#191919;border-color:#414141;color:#f2f2f2}
html[data-adb-theme="dark"] .adb-theme-loop article{background:#202020;border-color:#363636}
html[data-adb-theme="dark"] .adb-theme-loop h2 a{color:#f2f2f2}

@media(max-width:980px){
  :root{--adb-theme-header-height:76px}
  .adb-primary-nav{display:none}
  .adb-mobile-nav{display:flex;align-items:center}
  .adb-header__inner{height:76px}
  .adb-header__actions{height:76px}
  .adb-site-logo{max-width:min(58vw,270px);max-height:48px}
  .adb-header-search__inner{width:calc(100% - 32px)}
}

@media(max-width:782px){body.admin-bar .adb-header{top:46px}}
@media(min-width:783px){body.admin-bar .adb-header{top:32px}}

@media(max-width:560px){
  .adb-site-main>.adb-site-container{width:calc(100% - 28px);padding:42px 0 56px}
  .entry-title{font-size:32px}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}


/* Full-width Airsoft DB application/page shells. */
body.adb-home-page .adb-site-main>.adb-site-container,
body.adb-calculator-page .adb-site-main>.adb-site-container,
body.adb-compare-page .adb-site-main>.adb-site-container,
body.post-type-archive-airsoft_replica .adb-site-main>.adb-site-container,
body.single-airsoft_replica .adb-site-main>.adb-site-container,
body.post-type-archive-airsoft_bfg .adb-site-main>.adb-site-container,
body.single-airsoft_bfg .adb-site-main>.adb-site-container,
body.tax-manufacturer .adb-site-main>.adb-site-container{
  width:100%;
  max-width:none;
  padding-top:0;
  padding-bottom:0;
}
body.adb-home-page .adb-site-primary,
body.adb-calculator-page .adb-site-primary,
body.adb-compare-page .adb-site-primary{float:none;width:100%;padding:0}
body.adb-home-page article.page,
body.adb-calculator-page article.page,
body.adb-compare-page article.page{margin:0;padding:0}
body.adb-home-page .entry-title,
body.adb-calculator-page .entry-title,
body.adb-compare-page .entry-title{display:none}
body.adb-home-page .entry-content,
body.adb-calculator-page .entry-content,
body.adb-compare-page .entry-content{padding-top:0}


/* Theme-owned dark mode shell. Component-specific dark rules remain in Core. */
html[data-adb-theme="dark"]{
  color-scheme:dark;
  --adb-color-ink:#f3f4f5;
  --adb-color-muted:#b2b8c1;
  --adb-color-line:#303740;
  --adb-color-soft:#161b21;
  --adb-color-surface:#1c2229;
  --adb-color-accent-soft:rgba(255,107,0,.14);
  --adb-color-accent-line:rgba(255,107,0,.48);
  --adb-shadow-card:0 10px 34px rgba(0,0,0,.24);
  --adb-shadow-panel:0 16px 48px rgba(0,0,0,.28);
  --adb-dark-page:#111519;
  --adb-dark-section:#151a20;
  --adb-dark-surface:#1c2229;
  --adb-dark-media:#171d23;
  --adb-dark-input:#171d23;
  --adb-dark-text:#f3f4f5;
  --adb-dark-muted:#b2b8c1;
}
html[data-adb-theme="dark"] body,
html[data-adb-theme="dark"] .adb-page,
html[data-adb-theme="dark"] .adb-site-main{background:var(--adb-dark-page)!important;color:var(--adb-dark-text)}
html[data-adb-theme="dark"] h1,
html[data-adb-theme="dark"] h2,
html[data-adb-theme="dark"] h3,
html[data-adb-theme="dark"] h4,
html[data-adb-theme="dark"] h5,
html[data-adb-theme="dark"] h6{color:var(--adb-dark-text)}

/* Theme-owned dark header, navigation and bundled wordmark contrast. */
html[data-adb-theme="dark"] .adb-header{background:var(--adb-dark-section);box-shadow:0 1px 0 var(--adb-color-line)}
html[data-adb-theme="dark"] .adb-site-logo-picture{display:block;background:url("assets/images/airsoft-db-logo-dark.svg") center/contain no-repeat}
html[data-adb-theme="dark"] .adb-site-logo-picture .adb-site-logo{filter:none;opacity:0}
html[data-adb-theme="dark"] #adb-primary-menu .sub-menu{background:var(--adb-dark-surface)}
html[data-adb-theme="dark"] #adb-primary-menu a,
html[data-adb-theme="dark"] #adb-search-toggle,
html[data-adb-theme="dark"] .adb-mobile-nav__toggle{color:var(--adb-dark-text)!important}
html[data-adb-theme="dark"] #adb-primary-menu a:hover,
html[data-adb-theme="dark"] #adb-search-toggle:hover,
html[data-adb-theme="dark"] #adb-search-toggle:focus-visible,
html[data-adb-theme="dark"] .adb-mobile-nav__toggle:hover,
html[data-adb-theme="dark"] #adb-primary-menu li.current-menu-ancestor>a,
html[data-adb-theme="dark"] #adb-primary-menu li.current-menu-item>a,
html[data-adb-theme="dark"] #adb-primary-menu li.current_page_item>a{color:var(--adb-theme-accent)!important}
html[data-adb-theme="dark"] .adb-header .adb-mobile-menu{background:var(--adb-dark-surface)!important;border-top-color:var(--adb-theme-accent)!important}
html[data-adb-theme="dark"] .adb-header .adb-mobile-menu li a{color:var(--adb-dark-text)!important;border-bottom-color:var(--adb-color-line)!important}

/* Dark-mode toggle UI now belongs to the theme. */
.adb-theme-menu-item{padding-right:22px!important;margin-left:0!important;display:flex;align-items:center}
.adb-theme-menu-item:after{display:none!important}
.adb-theme-toggle{
  appearance:none;min-width:0;height:34px;display:inline-flex;align-items:center;
  justify-content:center;gap:8px;padding:0 15px;border:1px solid rgba(255,107,0,.34);
  border-radius:8px;background:linear-gradient(180deg,#fff9f4 0%,#fff1e4 100%);
  box-shadow:none;color:#af4b08;cursor:pointer;line-height:1;font-size:13px;
  font-weight:700;letter-spacing:.01em;
  transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.adb-theme-toggle:hover{background:var(--adb-theme-accent);border-color:var(--adb-theme-accent);color:#fff;box-shadow:none;transform:none}
.adb-theme-toggle:focus-visible{outline:3px solid rgba(255,107,0,.28);outline-offset:3px}
.adb-theme-toggle__icon{width:17px;height:17px;display:grid;place-items:center;flex:0 0 auto}
.adb-theme-toggle__icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.adb-theme-toggle__icon--moon svg path{fill:currentColor;stroke:none}
.adb-theme-toggle__icon--sun{display:none}
.adb-theme-toggle__text{display:inline-block;white-space:nowrap}
html[data-adb-theme="dark"] .adb-theme-toggle{background:#1b1b1b;border-color:#343434;box-shadow:none;color:#fff}
html[data-adb-theme="dark"] .adb-theme-toggle:hover{background:var(--adb-theme-accent);border-color:var(--adb-theme-accent);color:#fff}
html[data-adb-theme="dark"] .adb-theme-toggle__icon--moon{display:none}
html[data-adb-theme="dark"] .adb-theme-toggle__icon--sun{display:grid}
.adb-theme-mobile-toggle{display:none;float:left;margin:0 10px 0 0}
.adb-theme-toggle-fallback{position:fixed;right:18px;top:92px;z-index:99999}
.adb-theme-toggle--mobile,.adb-theme-toggle--fallback{width:40px;height:40px;padding:0;gap:0;border-radius:999px}
.adb-theme-toggle--mobile .adb-theme-toggle__text,.adb-theme-toggle--fallback .adb-theme-toggle__text{display:none}
@media(max-width:980px){
  .adb-theme-menu-item{display:none!important}
  .adb-theme-mobile-toggle{display:inline-flex}
  .adb-theme-toggle--mobile{width:36px;height:36px;margin-top:1px}
}
@media(min-width:981px){.adb-theme-toggle-fallback{display:none}}
@media(prefers-reduced-motion:reduce){.adb-theme-toggle{transition:none!important}}

/* Theme-owned footer, moved from Core unchanged. */
.adb-site-footer{--adb-footer-accent:var(--adb-color-accent,#ff6b00);--adb-footer-ink:#f5f5f5;--adb-footer-muted:#aaa;--adb-footer-line:rgba(255,255,255,.12);background:#151515;color:var(--adb-footer-ink);font-family:inherit;position:relative;z-index:2}
.adb-site-footer *{box-sizing:border-box}
.adb-site-footer a{text-decoration:none}
.adb-site-footer__inner{width:min(var(--adb-width-content,1180px),calc(100% - 40px));margin:0 auto;padding:52px 0 38px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:56px;align-items:start}
.adb-site-footer__brand{max-width:590px}
.adb-site-footer__logo{display:inline-block;color:#fff!important;font-size:26px;font-weight:900;line-height:1;letter-spacing:-.035em}
.adb-site-footer__logo span{color:var(--adb-footer-accent)}
.adb-site-footer__brand p{max-width:560px;margin:16px 0 0;color:var(--adb-footer-muted);font-size:14px;line-height:1.7}
.adb-site-footer__nav{align-self:center}
.adb-site-footer__menu{display:flex!important;gap:24px!important;align-items:center;flex-wrap:wrap;margin:0!important;padding:0!important;list-style:none!important}
.adb-site-footer__menu li{margin:0!important;padding:0!important}
.adb-site-footer__menu a{color:#eee!important;font-size:14px;font-weight:750;transition:color .16s ease}
.adb-site-footer__menu a:hover,.adb-site-footer__menu a:focus-visible{color:var(--adb-footer-accent)!important}
.adb-site-footer__bottom{border-top:1px solid var(--adb-footer-line)}
.adb-site-footer__bottom>div{width:min(var(--adb-width-content,1180px),calc(100% - 40px));margin:0 auto;padding:18px 0 22px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;color:#858585;font-size:11px;line-height:1.5}
.adb-site-footer__bottom span+span{margin-left:auto}
.adb-site-footer a:focus-visible{outline:2px solid var(--adb-footer-accent);outline-offset:4px;border-radius:2px}
@media(max-width:760px){
  .adb-site-footer__inner{grid-template-columns:1fr;gap:28px;padding:42px 0 30px}
  .adb-site-footer__menu{gap:12px 20px!important}
  .adb-site-footer__bottom>div{display:block}
  .adb-site-footer__bottom span{display:block}
  .adb-site-footer__bottom span+span{margin:6px 0 0}
}


/* Mobile-header geometry. */
@media (max-width:980px){
  .adb-header__inner{
    width:calc(100% - 32px)!important;
    min-height:76px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
  }
  .adb-header__logo{
    position:relative!important;
    width:auto!important;
    height:76px!important;
    flex:1 1 auto!important;
    min-width:0!important;
    display:flex!important;
    align-items:center!important;
  }
  .adb-site-logo{
    position:relative!important;
    max-width:min(58vw,270px)!important;
    max-height:48px!important;
    width:auto!important;
    height:auto!important;
  }
  .adb-header__actions{
    float:none!important;
    flex:0 0 auto!important;
    height:76px!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
  }
  .adb-header__search-action{
    float:none!important;
    width:36px!important;
    height:36px!important;
    margin:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  #adb-search-toggle{
    position:relative!important;
    top:auto!important;
    left:auto!important;
    margin:0!important;
    width:36px!important;
    height:36px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  #adb-search-toggle:before{position:static!important;margin:0!important}
  .adb-mobile-nav{
    float:none!important;
    margin:0!important;
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
  }
  .adb-mobile-nav .adb-mobile-nav__host{display:flex!important;align-items:center!important;margin:0!important}
  .adb-mobile-nav .adb-mobile-nav__toggle{
    position:relative!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:36px!important;
    height:36px!important;
    padding:0!important;
    margin:0!important;
  }
  .adb-theme-mobile-toggle{
    float:none!important;
    margin:0!important;
    height:36px!important;
    display:inline-flex!important;
    align-items:center!important;
  }
  .adb-theme-toggle--mobile{width:36px!important;height:36px!important;margin:0!important}
  .adb-header .adb-mobile-menu{top:76px!important}
}
@media (max-width:480px){
  .adb-header__inner{width:calc(100% - 24px)!important}
  .adb-site-logo{max-width:min(55vw,230px)!important;max-height:44px!important}
  .adb-header__actions,.adb-mobile-nav{gap:6px!important}
}

/* Privacy, legal links and browser-storage consent controls. */
.adb-site-footer__bottom>div{align-items:center}
.adb-site-footer__legal{display:flex;align-items:center;justify-content:center;gap:12px 16px;flex-wrap:wrap;margin-left:auto}
.adb-site-footer__legal a,.adb-site-footer__legal button{appearance:none;margin:0;padding:0;border:0;background:none;color:#b9b9b9!important;font:inherit;font-size:11px;font-weight:650;line-height:1.5;cursor:pointer;text-decoration:none}
.adb-site-footer__legal a:hover,.adb-site-footer__legal a:focus-visible,.adb-site-footer__legal button:hover,.adb-site-footer__legal button:focus-visible{color:var(--adb-footer-accent)!important}

.adb-consent-banner{position:fixed;left:18px;right:18px;bottom:18px;z-index:100020;margin:0 auto;max-width:1160px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:#171717;color:#f4f4f4;box-shadow:0 20px 54px rgba(0,0,0,.3)}
.adb-consent-banner[hidden],.adb-consent-dialog-shell[hidden]{display:none!important}
.adb-consent-banner__inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:26px;align-items:center;padding:18px 20px}
.adb-consent-banner__copy strong{display:block;margin-bottom:4px;color:#fff;font-size:15px;font-weight:800}
.adb-consent-banner__copy p{margin:0;color:#c9c9c9;font-size:13px;line-height:1.55}
.adb-consent-banner__copy a{color:#fff;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}
.adb-consent-banner__actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}
.adb-consent-button,.adb-consent-save{min-height:40px;padding:8px 14px;border:1px solid #555;border-radius:9px;background:#252525;color:#fff;font-size:12px;font-weight:800;line-height:1.2;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}
.adb-consent-button:hover,.adb-consent-button:focus-visible,.adb-consent-save:hover,.adb-consent-save:focus-visible{border-color:var(--adb-theme-accent);background:var(--adb-theme-accent);color:#fff}
.adb-consent-link{appearance:none;margin:0;padding:8px 4px;border:0;background:none;color:#d7d7d7;font-size:12px;font-weight:700;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.adb-consent-link:hover,.adb-consent-link:focus-visible{color:#fff}
.adb-consent-button:focus-visible,.adb-consent-link:focus-visible,.adb-consent-save:focus-visible,.adb-consent-dialog__close:focus-visible,.adb-consent-switch input:focus-visible+span{outline:3px solid rgba(255,107,0,.4);outline-offset:2px}

.adb-consent-dialog-open{overflow:hidden}
.adb-consent-dialog-shell{position:fixed;inset:0;z-index:100030;display:grid;place-items:center;padding:20px;background:rgba(0,0,0,.62)}
.adb-consent-dialog{width:min(620px,100%);max-height:min(760px,calc(100vh - 40px));overflow:auto;border:1px solid #dedede;border-radius:18px;background:#fff;color:#444;box-shadow:0 30px 90px rgba(0,0,0,.32);padding:24px}
.adb-consent-dialog__header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:8px}
.adb-consent-dialog__eyebrow{display:block;margin-bottom:4px;color:var(--adb-theme-accent);font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.adb-consent-dialog h2{margin:0;color:#222;font-size:26px;font-weight:800;line-height:1.2}
.adb-consent-dialog>p{margin:0 0 20px;color:#666;font-size:13px;line-height:1.65}
.adb-consent-dialog__close{appearance:none;display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;margin:-4px -4px 0 0;padding:0;border:1px solid #ddd;border-radius:999px;background:#fff;color:#333;font-size:24px;line-height:1;cursor:pointer}
.adb-consent-option{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:17px 0;border-top:1px solid #ececec}
.adb-consent-option>div{min-width:0}
.adb-consent-option strong{display:block;margin-bottom:3px;color:#222;font-size:14px;font-weight:800}
.adb-consent-option span{display:block;color:#707070;font-size:12px;line-height:1.5}
.adb-consent-switch{position:relative;display:inline-flex;align-items:center;flex:0 0 auto;cursor:pointer}
.adb-consent-switch input{position:absolute;opacity:0;pointer-events:none}
.adb-consent-switch>span[aria-hidden="true"]{position:relative;display:block;width:46px;height:26px;border-radius:999px;background:#b8b8b8;transition:background .16s ease}
.adb-consent-switch>span[aria-hidden="true"]::after{content:"";position:absolute;left:3px;top:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .16s ease}
.adb-consent-switch input:checked+span[aria-hidden="true"]{background:var(--adb-theme-accent)}
.adb-consent-switch input:checked+span[aria-hidden="true"]::after{transform:translateX(20px)}
.adb-consent-switch--locked{cursor:not-allowed;opacity:.72}
.adb-consent-dialog__footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:18px;border-top:1px solid #ececec}
.adb-consent-dialog__footer a{font-size:12px;font-weight:700}
.adb-consent-save{border-color:var(--adb-theme-accent);background:var(--adb-theme-accent)}

html[data-adb-theme="dark"] .adb-consent-dialog{border-color:#363636;background:#202020;color:#ddd}
html[data-adb-theme="dark"] .adb-consent-dialog h2,html[data-adb-theme="dark"] .adb-consent-option strong{color:#f4f4f4}
html[data-adb-theme="dark"] .adb-consent-dialog>p,html[data-adb-theme="dark"] .adb-consent-option span{color:#bcbcbc}
html[data-adb-theme="dark"] .adb-consent-option,html[data-adb-theme="dark"] .adb-consent-dialog__footer{border-color:#363636}
html[data-adb-theme="dark"] .adb-consent-dialog__close{border-color:#444;background:#272727;color:#eee}

@media(max-width:780px){
  .adb-consent-banner{left:10px;right:10px;bottom:10px;border-radius:14px}
  .adb-consent-banner__inner{grid-template-columns:1fr;gap:14px;padding:16px}
  .adb-consent-banner__actions{display:grid;grid-template-columns:1fr 1fr;justify-content:stretch}
  .adb-consent-button{width:100%}
  .adb-consent-link{grid-column:1/-1;justify-self:start;padding-left:0}
  .adb-consent-dialog-shell{padding:10px}
  .adb-consent-dialog{max-height:calc(100vh - 20px);padding:20px 18px;border-radius:14px}
  .adb-consent-dialog h2{font-size:22px}
  .adb-consent-dialog__footer{align-items:stretch;flex-direction:column-reverse}
  .adb-consent-save{width:100%}
  .adb-site-footer__legal{justify-content:flex-start;margin:10px 0 0}
}

@media(prefers-reduced-motion:reduce){
  .adb-consent-button,.adb-consent-save,.adb-consent-switch>span[aria-hidden="true"],.adb-consent-switch>span[aria-hidden="true"]::after{transition:none!important}
}

/* The shared Core suggestion component fills the theme's existing search row. */
.adb-header-search__inner > .adb-live-search{flex:1 1 auto;min-width:0}
.adb-header-search__inner > button[type=submit]{flex:0 0 auto}


/* Shared header geometry and wordmark on every public page. */
.adb-header__inner {width:min(1240px,calc(100% - 80px));max-width:none}
.adb-site-logo-picture--compact {display:block;width:220px;max-width:100%}
.adb-site-logo-picture--compact .adb-site-logo {display:block;width:100%!important;max-width:100%!important;height:auto!important;max-height:none!important}
html[data-adb-theme="dark"] .adb-site-logo-picture--compact {background-image:url("assets/images/airsoft-db-logo-compact-dark.svg")}
#adb-primary-menu {gap:24px}
.adb-theme-toggle--desktop {width:36px;padding:0;background:transparent;border-color:transparent}
.adb-theme-toggle--desktop .adb-theme-toggle__text {display:none}
@media(min-width:981px) and (max-width:1120px) {
  #adb-primary-menu {gap:16px}
  .adb-header__inner {gap:18px}
  .adb-header__logo {flex-basis:195px}
  .adb-site-logo-picture--compact {width:195px}
}
