/* Affiliate Choice global header + footer v0.27
   This is the authoritative shell stylesheet for static and WordPress pages. */
:root{
  --acg-ink:#0F2A33;
  --acg-petrol:#0A7A8E;
  --acg-teal:#10c0df;
  --acg-teal-dark:#0DAAC6;
  --acg-mist:#EEF5F4;
  --acg-line:#D7E3E2;
  --acg-muted:#52696F;
  --acg-white:#fff;
  --acg-header-dark:#080a0e;
  --acg-header-light:#20252e;
  --acg-twv-red:#D11A2A;
  --acg-header-h:62px;
  --acg-header-sub-h:38px;
  --acg-header-total-h:100px;
  --acg-serif:"Source Serif 4",Georgia,"Times New Roman",serif;
  --acg-sans:"Schibsted Grotesk",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
}

#ac-global-header *,#ac-global-header *::before,#ac-global-header *::after,
#ac-global-footer *,#ac-global-footer *::before,#ac-global-footer *::after{box-sizing:border-box}
#ac-global-header,#ac-global-footer{font-family:var(--acg-sans);line-height:1.6}
/* The injected header wrapper must not become the containing block for the
   sticky header. display:contents lets .site-header stick to the viewport
   on static guides, static pages and WordPress alike. */
#ac-global-header{display:contents}
#ac-global-header img,#ac-global-header svg,#ac-global-footer img,#ac-global-footer svg{display:block;max-width:100%}
#ac-global-header a,#ac-global-footer a{color:inherit}
#ac-global-header ul,#ac-global-footer ul{margin:0;padding:0;list-style:none}
#ac-global-header p,#ac-global-footer p{margin:0}
#ac-global-header button,#ac-global-header input{font:inherit;color:inherit}
#ac-global-header .sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
#ac-global-header .skip-link{position:fixed;left:16px;top:-60px;z-index:10000;background:var(--acg-header-dark);color:#fff;padding:10px 16px;border-radius:6px;text-decoration:none}
#ac-global-header .skip-link:focus{top:12px}
#ac-global-header :focus-visible,#ac-global-footer :focus-visible{outline:2px solid var(--acg-teal);outline-offset:3px;border-radius:4px}

/* Shared wordmark */
#ac-global-header .ac,#ac-global-footer .ac{display:inline-flex;flex-direction:column;gap:.3em;color:#14202B;--ac:#10c0df;text-decoration:none;font-size:44px;flex-shrink:0}
#ac-global-header .ac .line,#ac-global-footer .ac .line{position:relative;display:inline-block}
#ac-global-header .ac .name,#ac-global-footer .ac .name{line-height:1.16;white-space:nowrap;display:block;font-family:Arial,"Helvetica Neue",Helvetica,sans-serif}
#ac-global-header .ac .a,#ac-global-footer .ac .a{margin-right:.22em}
#ac-global-header .ac .edge,#ac-global-footer .ac .edge{position:absolute;top:.04em;bottom:.02em;left:0;width:3px;background:var(--ac,#10c0df);opacity:0}
#ac-global-header .ac .sub,#ac-global-footer .ac .sub{display:flex;align-items:baseline;gap:.5em;font:500 12.5px/1.15 "Archivo",Helvetica,Arial,sans-serif;letter-spacing:.17em;text-transform:uppercase}
#ac-global-header .ac .lab,#ac-global-footer .ac .lab{color:#fff}
#ac-global-header .ac .roll,#ac-global-footer .ac .roll{display:inline-block;height:1.15em;overflow:hidden;vertical-align:bottom}
#ac-global-header .ac .stack,#ac-global-footer .ac .stack{display:block}
#ac-global-header .ac .stack span,#ac-global-footer .ac .stack span{display:block;height:1.15em;line-height:1.15em;color:var(--ac,#10c0df);white-space:nowrap}
#ac-global-header .ac.a9 .name,#ac-global-footer .ac.a9 .name{font-size:.95em;letter-spacing:-.016em}
#ac-global-header .ac.a9 .a,#ac-global-footer .ac.a9 .a{font-weight:400}
#ac-global-header .ac.a9 .b,#ac-global-footer .ac.a9 .b{font-weight:700;color:var(--ac,#10c0df)}
#ac-global-header .ac-header{font-size:25px;min-width:142px;gap:.22em;color:#fff}
#ac-global-header .ac-header .sub{font-size:8.8px}
#ac-global-footer .ac-footer{font-size:34px;color:#fff}
#ac-global-footer .ac-footer .sub{font-size:11px}
@media (prefers-reduced-motion:no-preference){
  #ac-global-header .ac:not(.ac-wait) .name,#ac-global-footer .ac:not(.ac-wait) .name{clip-path:inset(0 100% 0 0);animation:acg-wipe .95s cubic-bezier(.5,0,.15,1) .15s forwards}
  #ac-global-header .ac:not(.ac-wait) .edge,#ac-global-footer .ac:not(.ac-wait) .edge{animation:acg-edge 1.25s cubic-bezier(.5,0,.15,1) .15s forwards}
  #ac-global-header .ac:not(.ac-wait) .sub,#ac-global-footer .ac:not(.ac-wait) .sub{opacity:0;animation:acg-fade .6s ease .85s forwards}
  #ac-global-header .ac:not(.ac-wait) .stack,#ac-global-footer .ac:not(.ac-wait) .stack{animation:acg-roll 3.1s cubic-bezier(.65,0,.2,1) 1.1s both}
  #ac-global-footer .ac.ac-wait .name,#ac-global-footer .ac.ac-wait .sub{opacity:0}
}
@keyframes acg-wipe{to{clip-path:inset(0 0 0 0)}}
@keyframes acg-edge{0%{left:0;opacity:0}8%{opacity:1}76%{left:100%;opacity:1}100%{left:100%;opacity:0}}
@keyframes acg-fade{to{opacity:1}}
@keyframes acg-roll{0%,8%{transform:translateY(0)}16%,24%{transform:translateY(-1.15em)}32%,40%{transform:translateY(-2.3em)}48%,56%{transform:translateY(-3.45em)}64%,72%{transform:translateY(-4.6em)}82%,100%{transform:translateY(-5.75em)}}

/* Global buttons used in header */
#ac-global-header .button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border-radius:8px;border:1.5px solid transparent;font-weight:600;font-size:15px;text-decoration:none;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s;white-space:nowrap}
#ac-global-header .button-primary{background:var(--acg-teal);color:#fff}
#ac-global-header .button-primary:hover,#ac-global-header .button-primary:focus-visible{background:var(--acg-teal-dark);color:#fff}
#ac-global-header .button-quiet{border-color:var(--acg-line);background:#fff;color:var(--acg-ink)}
#ac-global-header .button-small{min-height:38px;padding:0 16px;font-size:14px}

/* Header */
#ac-global-header .site-header{position:sticky;top:0;z-index:9998;background:var(--acg-header-dark);border-bottom:0;color:#fff;padding-top:env(safe-area-inset-top,0px)}
#ac-global-header .site-header.is-scrolled{box-shadow:0 10px 28px rgba(0,0,0,.24)}
#ac-global-header .header-primary{background:var(--acg-header-dark);position:relative;z-index:3}
#ac-global-header .header-wide{width:100%;margin:0;padding-inline:16px}
#ac-global-header .header-row{height:var(--acg-header-h);display:flex;align-items:center;gap:12px;position:relative;width:100%;min-width:0}
#ac-global-header .primary-nav{flex:0 0 auto;min-width:0}
#ac-global-header .nav-list{display:flex;align-items:center;gap:0}
#ac-global-header .nav-list>li{position:relative}
#ac-global-header .nav-list>li.has-mega{position:static}
#ac-global-header .nav-link,#ac-global-header .nav-trigger{display:inline-flex;align-items:center;gap:6px;height:var(--acg-header-h);padding:0 9px;background:none;border:0;font-size:14px;font-weight:600;text-decoration:none;cursor:pointer;color:#fff;white-space:nowrap}
#ac-global-header .nav-trigger::after{content:"";width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .15s}
#ac-global-header .nav-link:hover,#ac-global-header .nav-trigger:hover,#ac-global-header .has-menu.is-open>.nav-trigger{color:var(--acg-teal)}
#ac-global-header .has-menu.is-open>.nav-trigger::after{transform:translateY(1px) rotate(-135deg)}
#ac-global-header .menu{color:var(--acg-ink);position:absolute;top:calc(100% - 4px);left:0;min-width:340px;background:#fff;border:1px solid var(--acg-line);border-radius:10px;box-shadow:0 18px 40px rgba(15,42,51,.12);padding:10px;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .15s,transform .15s,visibility .15s}
#ac-global-header .menu-right{left:auto;right:0}
#ac-global-header .has-menu.is-open>.menu{opacity:1;visibility:visible;transform:none}
#ac-global-header .menu-list a{display:block;padding:10px 14px;border-radius:8px;text-decoration:none}
#ac-global-header .menu-list a:hover{background:var(--acg-mist)}
#ac-global-header .menu-list strong{display:block;font-size:15px;font-weight:600}
#ac-global-header .menu-list span{display:block;font-size:13.5px;color:var(--acg-muted);line-height:1.4}
#ac-global-header .mega{top:100%;left:16px;transform:translateY(6px);width:min(1120px,calc(100vw - 32px));display:grid;grid-template-columns:250px 1fr;gap:8px;padding:0;overflow:hidden}
#ac-global-header .has-mega.is-open>.mega{transform:none}
#ac-global-header .mega-intro{background:var(--acg-mist);padding:28px 24px;display:flex;flex-direction:column;align-items:flex-start;gap:12px}
#ac-global-header .mega-intro p{font-size:14.5px;color:var(--acg-muted);line-height:1.5}
#ac-global-header .mega-intro .mega-title{font-family:var(--acg-serif);font-size:22px;font-weight:600;color:var(--acg-ink);line-height:1.2}
#ac-global-header .mega-aside{font-size:14px;font-weight:600;color:var(--acg-petrol)}
#ac-global-header .mega-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px 24px;padding:24px 24px 24px 16px}
#ac-global-header .mega-head{font-size:13px;font-weight:700;color:var(--acg-petrol);margin-bottom:6px}
#ac-global-header .mega-col a{display:block;padding:3px 0;font-size:14.5px;text-decoration:none}
#ac-global-header .mega-col a:hover{color:var(--acg-petrol);text-decoration:underline;text-underline-offset:3px}
#ac-global-header .nav-mobile-account{display:none}
#ac-global-header .nav-mobile-account-guest{display:grid;gap:10px}
#ac-global-header .nav-mobile-member{border:1px solid var(--acg-line);border-radius:12px;background:#f8fbfb;overflow:hidden}
#ac-global-header .nav-mobile-member-id{display:flex;align-items:center;gap:11px;padding:14px;border-bottom:1px solid var(--acg-line)}
#ac-global-header .nav-mobile-member-id>span:last-child{display:flex;flex-direction:column;line-height:1.25;min-width:0}
#ac-global-header .nav-mobile-member-id small{font-size:11px;color:var(--acg-muted)}
#ac-global-header .nav-mobile-member-id strong{font-size:15px;color:var(--acg-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#ac-global-header .nav-mobile-member-links{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--acg-line)}
#ac-global-header .nav-mobile-member-links a{display:flex;align-items:center;min-height:48px;padding:10px 13px;background:#fff;color:var(--acg-ink);font-size:13px;font-weight:700;text-decoration:none}
#ac-global-header .nav-mobile-member-links a:hover{background:var(--acg-mist)}
#ac-global-header .nav-mobile-member-links .nav-mobile-logout{color:#8b3333}
#ac-global-header .niche-nudge{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:0 0 154px;color:#fff;margin-left:14px;margin-right:18px;transform:rotate(-2deg);pointer-events:none}
#ac-global-header .niche-nudge span{font-family:"Caveat","Segoe Script",cursive;font-size:20px;font-weight:600;line-height:.9;white-space:nowrap}
#ac-global-header .niche-nudge svg{width:58px;height:29px;overflow:visible;margin-left:2px;margin-right:0;margin-top:9px;flex:none}
#ac-global-header .niche-nudge path{fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
#ac-global-header .header-search-wrap{position:relative;display:flex;flex:1 1 0%;width:auto;min-width:220px;max-width:none}
#ac-global-header .header-search{display:flex;align-items:stretch;flex:1 1 auto;width:100%;min-width:0;height:40px;background:#fff;border-radius:5px;overflow:hidden;border:2px solid transparent;transition:border-color .15s,box-shadow .15s;margin:0}
#ac-global-header .header-search:focus-within{border-color:var(--acg-teal);box-shadow:0 0 0 2px rgba(16,192,223,.18)}
#ac-global-header .header-search input{min-width:0;flex:1;border:0;outline:0;padding:0 12px;color:var(--acg-ink);font-size:14.5px;background:#fff}
#ac-global-header .header-search button{width:44px;border:0;background:var(--acg-teal);color:#fff;display:grid;place-items:center;cursor:pointer}
#ac-global-header .header-search button:hover{background:var(--acg-teal-dark)}
#ac-global-header .header-search svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
#ac-global-header .header-actions{display:flex;align-items:center;gap:7px;flex:none}
#ac-global-header [data-account-member][hidden],#ac-global-header [data-account-guest][hidden],#ac-global-header [data-account-menu][hidden]{display:none!important}
#ac-global-header .header-account-guest{display:flex;align-items:center;gap:7px}
#ac-global-header .header-member{position:relative;flex:none}
#ac-global-header .member-trigger{height:40px;display:flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.26);border-radius:5px;background:rgba(255,255,255,.04);color:#fff;padding:0 9px;cursor:pointer;white-space:nowrap}
#ac-global-header .member-trigger:hover,#ac-global-header .member-trigger[aria-expanded="true"]{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.42)}
#ac-global-header .member-avatar{width:27px;height:27px;border-radius:999px;display:grid;place-items:center;background:var(--acg-teal);color:#fff;font:800 12px/1 var(--acg-sans);text-transform:uppercase;flex:none}
#ac-global-header .member-copy{display:flex;flex-direction:column;align-items:flex-start;line-height:1.05;max-width:92px}
#ac-global-header .member-copy small{font-size:9.5px;color:#aebac0;font-weight:500}
#ac-global-header .member-copy strong{font-size:12.5px;color:#fff;font-weight:700;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#ac-global-header .member-chevron{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .16s}
#ac-global-header .member-trigger[aria-expanded="true"] .member-chevron{transform:rotate(180deg)}
#ac-global-header .member-menu{position:absolute;right:0;top:calc(100% + 10px);width:300px;background:#fff;color:var(--acg-ink);border:1px solid var(--acg-line);border-radius:12px;box-shadow:0 22px 52px rgba(8,10,14,.24);overflow:hidden;z-index:10030;text-align:left}
#ac-global-header .member-menu::before{content:"";position:absolute;right:25px;top:-6px;width:12px;height:12px;background:#fff;border-left:1px solid var(--acg-line);border-top:1px solid var(--acg-line);transform:rotate(45deg)}
#ac-global-header .member-menu-head{display:flex;align-items:center;gap:11px;padding:16px;border-bottom:1px solid var(--acg-line);background:#f8fbfb}
#ac-global-header .member-avatar-large{width:38px;height:38px;font-size:15px}
#ac-global-header .member-menu-head>span:last-child{display:flex;flex-direction:column;min-width:0;line-height:1.25}
#ac-global-header .member-menu-head small{font-size:10.5px;color:var(--acg-muted)}
#ac-global-header .member-menu-head strong{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#ac-global-header .member-menu nav{padding:7px}
#ac-global-header .member-menu nav a{display:flex;flex-direction:column;gap:2px;padding:9px 10px;border-radius:8px;text-decoration:none;color:var(--acg-ink)}
#ac-global-header .member-menu nav a:hover{background:var(--acg-mist)}
#ac-global-header .member-menu nav span{font-size:13.5px;font-weight:700}
#ac-global-header .member-menu nav small{font-size:11px;color:var(--acg-muted)}
#ac-global-header .member-logout{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-top:1px solid var(--acg-line);background:#fbfcfc;color:#7d3333!important;text-decoration:none;font-size:12.5px;font-weight:700}
#ac-global-header .member-logout:hover{background:#fff4f4}
#ac-global-header .header-join{min-height:40px;height:40px;border-radius:5px;padding:0 17px;font-size:13.5px;letter-spacing:.035em}
#ac-global-header .header-login{min-height:40px;height:40px;padding:0 12px;border:1px solid rgba(255,255,255,.38);border-radius:5px;background:transparent;color:#fff;font-weight:600;font-size:13.5px;text-decoration:none;display:inline-flex;align-items:center;gap:7px}
#ac-global-header .header-login:hover{background:#fff;color:var(--acg-header-dark);border-color:#fff}
#ac-global-header .header-login svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#ac-global-header .basket-shell{position:relative;flex:none}
#ac-global-header .basket-link{height:40px;display:flex;align-items:center;gap:7px;padding:0 8px;border-radius:5px;color:#fff;text-decoration:none;font-size:12px;line-height:1.05;position:relative}
#ac-global-header .basket-link:hover,#ac-global-header .basket-link[aria-expanded="true"]{background:rgba(255,255,255,.08)}
#ac-global-header .basket-icon-wrap{position:relative;display:grid;place-items:center;flex:none}
#ac-global-header .basket-link svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#ac-global-header .basket-count{position:absolute;top:-8px;right:-9px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--acg-teal);color:#fff;border:2px solid var(--acg-header-dark);font-size:10.5px;line-height:14px;text-align:center;font-weight:800;font-family:var(--acg-sans);box-sizing:border-box}
#ac-global-header .basket-count[hidden]{display:none!important}
#ac-global-header .basket-copy{display:flex;flex-direction:column;gap:2px;color:#c5cbd2}
#ac-global-header .basket-copy strong{font-size:13px;color:#fff;font-weight:700}
#ac-global-header .basket-flyout{position:absolute;top:calc(100% + 12px);right:0;width:min(410px,calc(100vw - 32px));background:#fff;color:var(--acg-ink);border:1px solid var(--acg-line);border-radius:14px;box-shadow:0 24px 60px rgba(2,16,24,.24);overflow:hidden;z-index:10020;text-align:left}
#ac-global-header .basket-flyout[hidden]{display:none!important}
#ac-global-header .basket-flyout::before{content:"";position:absolute;right:28px;top:-7px;width:14px;height:14px;background:#fff;border-left:1px solid var(--acg-line);border-top:1px solid var(--acg-line);transform:rotate(45deg)}
#ac-global-header .basket-flyout-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px 20px 15px;border-bottom:1px solid var(--acg-line);position:relative}
#ac-global-header .basket-flyout-head>div{display:flex;flex-direction:column;gap:3px;min-width:0}
#ac-global-header .basket-eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--acg-petrol);font-weight:800}
#ac-global-header .basket-flyout-head strong{font-family:var(--acg-serif);font-size:20px;line-height:1.15;font-weight:600;color:var(--acg-ink)}
#ac-global-header .basket-flyout-close{border:0;background:var(--acg-mist);color:var(--acg-muted);width:32px;height:32px;border-radius:999px;font-size:22px;line-height:1;cursor:pointer;display:grid;place-items:center;padding:0;flex:none}
#ac-global-header .basket-flyout-close:hover{background:#e5eef0;color:var(--acg-ink)}
#ac-global-header .basket-flyout-body{padding:0 20px;max-height:min(58vh,520px);overflow:auto;overscroll-behavior:contain}
#ac-global-header .basket-loading{display:flex;align-items:center;gap:10px;padding:24px 0;color:var(--acg-muted);font-size:13px}
/* v0.16: author-level layout declarations above the browser UA [hidden] rule, so
   explicitly honour hidden state for every basket region. This prevents the
   loading and empty states appearing at the same time as real basket items. */
#ac-global-header [data-basket-loading][hidden],
#ac-global-header [data-basket-empty][hidden],
#ac-global-header [data-basket-items][hidden],
#ac-global-header [data-basket-tools][hidden],
#ac-global-header [data-basket-coupons][hidden],
#ac-global-header [data-basket-totals][hidden],
#ac-global-header [data-basket-coupon-form][hidden],
#ac-global-header [data-basket-actions][hidden]{display:none!important}
#ac-global-header .basket-spinner{width:18px;height:18px;border:2px solid #d8e4e7;border-top-color:var(--acg-teal);border-radius:50%;animation:acg-basket-spin .7s linear infinite;flex:none}
@keyframes acg-basket-spin{to{transform:rotate(360deg)}}
#ac-global-header .basket-empty{display:flex;flex-direction:column;gap:6px;padding:24px 0}
#ac-global-header .basket-empty strong{font-size:15px}
#ac-global-header .basket-empty span{font-size:13px;color:var(--acg-muted);line-height:1.45}
#ac-global-header .basket-empty a{font-size:13px;font-weight:700;color:var(--acg-petrol);text-decoration:none;margin-top:4px}
#ac-global-header .basket-items{display:flex;flex-direction:column}
#ac-global-header .basket-item{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:11px;align-items:center;padding:14px 0;border-bottom:1px solid var(--acg-line)}
#ac-global-header .basket-item-media{width:54px;height:54px;border-radius:8px;overflow:hidden;background:var(--acg-mist);display:grid;place-items:center;text-decoration:none;color:var(--acg-petrol);font-weight:800;font-size:13px}
#ac-global-header .basket-item-media img{width:100%;height:100%;object-fit:cover;display:block}
#ac-global-header .basket-item-copy{display:flex;flex-direction:column;gap:4px;min-width:0}
#ac-global-header .basket-item-title{font-size:13px;line-height:1.35;font-weight:700;text-decoration:none;color:var(--acg-ink);white-space:normal}
#ac-global-header .basket-item-title:hover{color:var(--acg-petrol)}
#ac-global-header .basket-item-meta{font-size:11.5px;color:var(--acg-muted)}
#ac-global-header .basket-item-price{font-size:12.5px;font-weight:700;color:var(--acg-ink);white-space:nowrap}
#ac-global-header .basket-item-side{display:flex;align-items:center;gap:7px;justify-self:end}
#ac-global-header .basket-item-remove{width:26px;height:26px;border:1px solid #dde7e8;border-radius:999px;background:#fff;color:#77888d;display:grid;place-items:center;padding:0;font-size:18px;line-height:1;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}
#ac-global-header .basket-item-remove:hover,#ac-global-header .basket-item-remove:focus-visible{background:#fff1f1;border-color:#f1c7c7;color:#a22626}
#ac-global-header .basket-item-remove[disabled]{opacity:.45;cursor:wait}
#ac-global-header .basket-tools{display:flex;justify-content:flex-end;padding:10px 0 0}
#ac-global-header .basket-tools button{border:0;background:none;color:var(--acg-muted);padding:3px 0;font-size:11.5px;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
#ac-global-header .basket-tools button:hover,#ac-global-header .basket-tools button:focus-visible,#ac-global-header .basket-tools button.is-confirming{color:#9b2c2c}
#ac-global-header .basket-tools button[disabled]{opacity:.45;cursor:wait}
#ac-global-header .basket-applied-coupons{display:flex;flex-wrap:wrap;gap:6px;padding:12px 0 2px}
#ac-global-header .basket-coupon-chip{display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:#eef8f5;color:#14624e;padding:6px 8px 6px 10px;font-size:11px;font-weight:700}
#ac-global-header .basket-coupon-chip button{border:0;background:none;color:inherit;font-size:15px;line-height:1;cursor:pointer;padding:0 2px}
#ac-global-header .basket-totals{display:grid;grid-template-columns:1fr auto;gap:7px 16px;padding:14px 0;border-bottom:1px solid var(--acg-line);font-size:12.5px;color:var(--acg-muted)}
#ac-global-header .basket-totals strong{color:var(--acg-ink);font-size:13px;text-align:right}
#ac-global-header .basket-totals span:nth-of-type(2),#ac-global-header .basket-totals strong:last-child{font-weight:700;color:var(--acg-ink)}
#ac-global-header .basket-coupon{padding:14px 0 18px;margin:0}
#ac-global-header .basket-coupon label{display:block;font-size:12px;font-weight:700;margin-bottom:7px;color:var(--acg-ink)}
#ac-global-header .basket-coupon-row{display:flex;gap:7px}
#ac-global-header .basket-coupon input{min-width:0;flex:1;height:38px;border:1px solid var(--acg-line);border-radius:7px;padding:0 10px;font:inherit;font-size:13px;background:#fff;color:var(--acg-ink)}
#ac-global-header .basket-coupon input:focus{outline:0;border-color:var(--acg-teal);box-shadow:0 0 0 2px rgba(16,192,223,.12)}
#ac-global-header .basket-coupon button[type="submit"]{height:38px;border:0;border-radius:7px;background:var(--acg-header-light);color:#fff;padding:0 14px;font-weight:700;font-size:12.5px;cursor:pointer}
#ac-global-header .basket-coupon button[type="submit"]:hover{background:var(--acg-petrol)}
#ac-global-header .basket-coupon button[disabled]{opacity:.55;cursor:wait}
#ac-global-header .basket-coupon-message{min-height:0;margin:7px 0 0;font-size:11.5px;line-height:1.35;color:var(--acg-muted)}
#ac-global-header .basket-coupon-message.is-success{color:#14624e}
#ac-global-header .basket-coupon-message.is-error{color:#9b2c2c}
#ac-global-header .basket-flyout-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:14px 20px 18px;background:#f7fafb;border-top:1px solid var(--acg-line)}
#ac-global-header .basket-flyout-actions a{min-height:40px;border-radius:7px;display:flex;align-items:center;justify-content:center;text-decoration:none;font-size:12.5px;font-weight:800}
#ac-global-header .basket-view{border:1px solid var(--acg-line);background:#fff;color:var(--acg-ink)}
#ac-global-header .basket-checkout{background:var(--acg-teal);color:#fff}
#ac-global-header .basket-checkout:hover{background:var(--acg-teal-dark);color:#fff}
#ac-global-header .icon-button{display:grid;place-items:center;width:42px;height:42px;border-radius:8px;border:0;background:none;cursor:pointer;color:#fff}
#ac-global-header .icon-button:hover{background:rgba(255,255,255,.08)}
#ac-global-header .icon-button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#ac-global-header .mobile-search-open{display:none}
#ac-global-header .nav-toggle{display:none;width:44px;height:44px;border:0;background:none;cursor:pointer;padding:0 11px}
#ac-global-header .nav-toggle .bar{display:block;height:2px;background:#fff;margin:6px 0;transition:transform .2s,opacity .15s}
#ac-global-header .nav-toggle[aria-expanded="true"] .bar:nth-of-type(2){transform:translateY(8px) rotate(45deg)}
#ac-global-header .nav-toggle[aria-expanded="true"] .bar:nth-of-type(3){opacity:0;transform:none}
#ac-global-header .nav-toggle[aria-expanded="true"] .bar:nth-of-type(4){transform:translateY(-8px) rotate(-45deg)}
#ac-global-header .secondary-nav{height:var(--acg-header-sub-h);background:var(--acg-header-light);border-top:1px solid rgba(255,255,255,.07);border-bottom:1px solid rgba(255,255,255,.07);position:relative;z-index:2}
#ac-global-header .secondary-nav-inner{height:100%;display:flex;align-items:center;gap:4px;overflow-x:auto;scrollbar-width:none}
#ac-global-header .secondary-nav-inner::-webkit-scrollbar{display:none}
#ac-global-header .secondary-nav a{height:100%;display:inline-flex;align-items:center;padding:0 14px;color:#d9dde3;text-decoration:none;font-size:13px;font-weight:600;white-space:nowrap;border-bottom:2px solid transparent}
#ac-global-header .secondary-nav a:first-child{padding-left:2px;margin-left:0}
#ac-global-header .secondary-nav a:hover,#ac-global-header .secondary-nav a:focus-visible{color:#fff;border-bottom-color:var(--acg-teal)}
#ac-global-header .search-panel{background:#fff;border-top:0;padding:12px 0;box-shadow:0 16px 30px rgba(0,0,0,.14);color:var(--acg-ink)}
#ac-global-header .search-form{display:flex;gap:10px;align-items:center;padding-inline:16px}
#ac-global-header .search-form input{flex:1;min-height:48px;border:1.5px solid var(--acg-line);border-radius:8px;padding:0 16px;font-size:16px}
#ac-global-header .search-form input:focus{outline:none;border-color:var(--acg-teal)}
#ac-global-header .search-close{background:none;border:0;font-weight:600;color:var(--acg-muted);cursor:pointer;padding:8px}

/* Footer */
#ac-global-footer .site-footer{background:#080a0e;color:#C9DADD;padding:72px 0 calc(28px + env(safe-area-inset-bottom,0px))}
#ac-global-footer .shell{width:min(1200px,calc(100% - 48px));margin-inline:auto}
#ac-global-footer .footer-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:64px;padding-bottom:48px;border-bottom:1px solid rgba(255,255,255,.12)}
#ac-global-footer .footer-brand>p{margin-top:18px;font-size:15px;max-width:36ch}
#ac-global-footer .socials{display:flex!important;flex-wrap:nowrap!important;gap:4px!important;margin:22px 0 0!important;padding:0!important;padding-inline-start:0!important;width:max-content;max-width:100%;list-style:none!important}
#ac-global-footer .socials li{display:block!important;flex:0 0 auto!important;margin:0!important;padding:0!important;text-indent:0!important;list-style:none!important}
#ac-global-footer .socials li::before,#ac-global-footer .socials li::marker{content:none!important;display:none!important}
#ac-global-footer .socials a{display:grid;place-items:center;width:38px;height:38px;margin:0!important;padding:0!important;border-radius:8px;border:1px solid rgba(255,255,255,.16);color:#fff}
#ac-global-footer .socials a:hover{background:rgba(255,255,255,.08)}
#ac-global-footer .socials svg{width:18px;height:18px;fill:currentColor}
#ac-global-footer .footer-links{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}
#ac-global-footer .footer-head{font-weight:700;color:#fff;font-size:15px;margin-bottom:12px}
#ac-global-footer .footer-links ul{margin:0!important;padding:0!important;padding-inline-start:0!important;list-style:none!important}
#ac-global-footer .footer-links li{margin:0!important;padding:4px 0!important;list-style:none!important}
#ac-global-footer .footer-links li::before{content:none!important;display:none!important}
#ac-global-footer .footer-links a{text-decoration:none;font-size:15px}
#ac-global-footer .footer-links a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
#ac-global-footer .footer-disclaimer{display:flex;justify-content:center;align-items:center;padding:30px 0;border-bottom:1px solid rgba(255,255,255,.12)}
#ac-global-footer .footer-disclaimer p{width:100%;max-width:none;text-align:center;text-wrap:pretty;font-size:13.5px;line-height:1.7;color:#94AFB4;margin-inline:auto}
#ac-global-footer .footer-disclaimer strong{color:#C9DADD}
#ac-global-footer .footer-bottom{display:grid;grid-template-columns:minmax(260px,1fr) auto minmax(260px,1fr);align-items:center;gap:24px;padding-top:24px;font-size:13.5px;color:#94AFB4}
#ac-global-footer .payment-methods{display:flex;flex-direction:column;align-items:center;gap:7px}
#ac-global-footer .payment-label{font-size:11.5px;text-transform:uppercase;letter-spacing:.09em;color:#7f969c}
#ac-global-footer .payment-logos{display:flex;align-items:center;justify-content:center;gap:5px;flex-wrap:wrap}
#ac-global-footer .payment-logos img{width:auto;height:25px;max-width:44px;object-fit:contain;background:#fff;border-radius:3px;padding:2px}
#ac-global-footer .twv-credit{display:inline-flex;align-items:center;gap:13px;text-decoration:none;color:#94AFB4;justify-self:end}
#ac-global-footer .twv-line{font-size:13px;text-align:right}
#ac-global-footer .twv-logo{display:inline-flex;align-items:center;gap:8px;font-family:Archivo,var(--acg-sans);color:#fff;line-height:1;overflow:visible}
#ac-global-footer .twv-box{overflow:hidden;display:block}
#ac-global-footer .twv-a{display:block;font-size:17px;font-weight:700;letter-spacing:-.035em;transform:translateX(102%);animation:acg-twv-left .48s cubic-bezier(.22,1,.36,1) .15s forwards}
#ac-global-footer .twv-b{display:block;font-size:12px;font-weight:500;letter-spacing:.05em;transform:translateX(-102%);animation:acg-twv-right .48s cubic-bezier(.22,1,.36,1) .15s forwards}
#ac-global-footer .twv-rule{display:block;width:2px;height:20px;background:var(--acg-twv-red);transform-origin:center;transform:scaleY(0);animation:acg-twv-rule .26s ease-out forwards}
#ac-global-footer .twv-logo.twv-wait .twv-a{animation:none;transform:translateX(102%)}
#ac-global-footer .twv-logo.twv-wait .twv-b{animation:none;transform:translateX(-102%)}
#ac-global-footer .twv-logo.twv-wait .twv-rule{animation:none;transform:scaleY(0)}
#ac-global-footer .twv-credit:hover .twv-line{color:#fff}
@keyframes acg-twv-rule{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes acg-twv-left{from{transform:translateX(102%);letter-spacing:-.06em}to{transform:translateX(0);letter-spacing:-.035em}}
@keyframes acg-twv-right{from{transform:translateX(-102%);letter-spacing:.02em}to{transform:translateX(0);letter-spacing:.22em}}

@media (max-width:1450px){
  #ac-global-header .header-row{gap:9px}
  #ac-global-header .nav-link,#ac-global-header .nav-trigger{padding-inline:7px;font-size:13.5px}
  #ac-global-header .niche-nudge{flex-basis:140px;margin-left:10px;margin-right:14px}
  #ac-global-header .niche-nudge span{font-size:18px}
  #ac-global-header .niche-nudge svg{width:50px}
  #ac-global-header .basket-copy>span{display:none}
}
@media (min-width:1281px){
  #ac-global-header .header-search-wrap{flex:1 1 0%;width:auto;max-width:none;min-width:220px}
  #ac-global-header .niche-nudge{margin-left:14px;margin-right:18px}
}
@media (max-width:1280px){
  :root{--acg-header-h:64px;--acg-header-total-h:102px}
  #ac-global-header .site-header{position:sticky;top:0}
  #ac-global-header .header-row{gap:8px}
  #ac-global-header .ac-header{font-size:23px;min-width:auto;margin-right:auto}
  #ac-global-header .ac-header .sub{font-size:8.2px}
  #ac-global-header .primary-nav{position:fixed;inset:calc(var(--acg-header-total-h) + env(safe-area-inset-top,0px)) 0 0 0;background:#fff;overflow-y:auto;padding:12px 24px calc(32px + env(safe-area-inset-bottom,0px));display:none;flex-direction:column;border-top:1px solid var(--acg-line);z-index:9999;color:var(--acg-ink)}
  #ac-global-header .primary-nav.is-open{display:flex}
  #ac-global-header .nav-list{flex-direction:column;align-items:stretch;gap:0}
  #ac-global-header .nav-list>li{border-bottom:1px solid var(--acg-line)}
  #ac-global-header .nav-link,#ac-global-header .nav-trigger{width:100%;height:auto;padding:17px 0;justify-content:space-between;font-size:18px;color:var(--acg-ink)}
  #ac-global-header .nav-link:hover,#ac-global-header .nav-trigger:hover,#ac-global-header .has-menu.is-open>.nav-trigger{color:var(--acg-petrol)}
  #ac-global-header .menu,#ac-global-header .mega{position:static;opacity:1;visibility:visible;transform:none!important;box-shadow:none;border:0;min-width:0;width:auto;padding:0 0 12px;display:none}
  #ac-global-header .has-menu.is-open>.menu,#ac-global-header .has-mega.is-open>.mega{display:block}
  #ac-global-header .menu-list a{padding:10px 0}
  #ac-global-header .menu-list a:hover{background:none}
  #ac-global-header .mega-intro{background:none;padding:0 0 12px}
  #ac-global-header .mega-intro .mega-title{display:none}
  #ac-global-header .mega-grid{grid-template-columns:1fr 1fr;padding:8px 0 4px;gap:16px}
  #ac-global-header .nav-mobile-account{display:grid;gap:10px;margin-top:24px}
  #ac-global-header .header-search-wrap,#ac-global-header .header-join,#ac-global-header .header-login,#ac-global-header .header-account-guest,#ac-global-header .header-member,#ac-global-header .basket-copy,#ac-global-header .niche-nudge{display:none}
  #ac-global-header .basket-link{width:42px;padding:0;justify-content:center}
  #ac-global-header .mobile-search-open{display:grid}
  #ac-global-header .nav-toggle{display:block}
  #ac-global-header .secondary-nav{height:var(--acg-header-sub-h);max-height:var(--acg-header-sub-h);overflow:hidden}
#ac-global-header .site-header.is-scrolled .secondary-nav{height:var(--acg-header-sub-h)!important;max-height:var(--acg-header-sub-h)!important;opacity:1!important;border-color:rgba(255,255,255,.07)!important}
  #ac-global-header .secondary-nav-inner{padding-inline:16px}
  body.ac-nav-open{overflow:hidden}
}
@media (max-width:960px){
  #ac-global-footer .footer-top{grid-template-columns:1fr;gap:36px}
  #ac-global-footer .footer-bottom{grid-template-columns:1fr;justify-items:center;text-align:center}
  #ac-global-footer .twv-credit{justify-self:center}
}
@media (max-width:760px){
  #ac-global-header .secondary-nav a{font-size:12.5px;padding-inline:11px}
  #ac-global-footer .twv-credit{width:100%;justify-content:center;flex-direction:column;gap:9px}
  #ac-global-footer .twv-line{text-align:center}
  #ac-global-footer .footer-bottom{text-align:center;align-items:center}
  #ac-global-footer .footer-bottom>p{width:100%}
}
@media (max-width:640px){
  #ac-global-header .basket-flyout{position:fixed;top:calc(var(--acg-header-total-h) + env(safe-area-inset-top,0px) + 8px);left:12px;right:12px;width:auto;max-height:calc(100vh - var(--acg-header-total-h) - 24px)}
  #ac-global-header .basket-flyout::before{display:none}
  #ac-global-header .basket-flyout-body{max-height:calc(100vh - var(--acg-header-total-h) - 190px)}
  #ac-global-header .header-wide{padding-inline:12px}
  #ac-global-header .ac-header{font-size:21px}
  #ac-global-header .ac-header .sub{display:none}
  #ac-global-header .basket-link{width:38px}
  #ac-global-header .icon-button{width:38px;height:38px}
  #ac-global-header .nav-toggle{width:40px;padding-inline:9px}
  #ac-global-header .secondary-nav-inner{padding-inline:12px}
  #ac-global-header .search-form{padding-inline:12px}
  #ac-global-header .search-form input{min-width:0}
  #ac-global-header .search-close{display:none}
  #ac-global-header .nav-mobile-member-links{grid-template-columns:1fr}
  #ac-global-footer .shell{width:calc(100% - 36px)}
  #ac-global-footer .footer-links{grid-template-columns:1fr 1fr}
  #ac-global-footer .payment-logos{max-width:270px}
  #ac-global-footer .payment-logos img{height:23px}
}
@media (prefers-reduced-motion:reduce){
  #ac-global-header *,#ac-global-header *::before,#ac-global-header *::after,
  #ac-global-footer *,#ac-global-footer *::before,#ac-global-footer *::after{transition:none!important;animation:none!important}
  #ac-global-footer .twv-rule{transform:scaleY(1)}
  #ac-global-footer .twv-a,#ac-global-footer .twv-b{transform:none}
}

/* v0.10 WordPress admin-bar compatibility. Harmless on static pages. */
body.admin-bar #ac-global-header .site-header{top:32px}
@media (max-width:1280px){body.admin-bar #ac-global-header .primary-nav{inset:calc(32px + var(--acg-header-total-h) + env(safe-area-inset-top,0px)) 0 0 0}}
@media (max-width:782px){
  body.admin-bar #ac-global-header .site-header{top:46px}
  body.admin-bar #ac-global-header .primary-nav{inset:calc(46px + var(--acg-header-total-h) + env(safe-area-inset-top,0px)) 0 0 0}
}
@media (max-width:640px){
  body.admin-bar #ac-global-header .basket-flyout{top:calc(46px + var(--acg-header-total-h) + env(safe-area-inset-top,0px) + 8px);max-height:calc(100vh - 46px - var(--acg-header-total-h) - 24px)}
  body.admin-bar #ac-global-header .basket-flyout-body{max-height:calc(100vh - 46px - var(--acg-header-total-h) - 190px)}
}


/* v0.16 unified live search + stricter static/WordPress parity */
#ac-global-header .search-suggestions{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:10020;background:#fff;color:var(--acg-ink);border:1px solid #d7e3e2;border-radius:12px;box-shadow:0 22px 52px rgba(8,10,14,.22);overflow:hidden;max-height:min(66vh,560px);overflow-y:auto;text-align:left}
#ac-global-header .search-suggestions[hidden]{display:none!important}
#ac-global-header .search-suggestions-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px 9px;border-bottom:1px solid #edf2f2;background:#f8fbfb}
#ac-global-header .search-suggestions-head strong{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#52696f}
#ac-global-header .search-suggestions-head span{font-size:12px;color:#71868b}
#ac-global-header .search-result{display:grid;grid-template-columns:58px minmax(0,1fr);gap:12px;align-items:center;padding:11px 14px;text-decoration:none;border-bottom:1px solid #edf2f2;background:#fff;transition:background-color .12s}
#ac-global-header .search-result:last-of-type{border-bottom:0}
#ac-global-header .search-result:hover,#ac-global-header .search-result.is-active{background:#eef8f8;color:var(--acg-ink)}
#ac-global-header .search-result-media{width:58px;height:48px;border-radius:7px;background:linear-gradient(135deg,#e4efef,#f7fbfb);overflow:hidden;display:grid;place-items:center;color:#0a7a8e;font:700 12px/1 var(--acg-sans)}
#ac-global-header .search-result-media img{width:100%;height:100%;object-fit:cover}
#ac-global-header .search-result-copy{min-width:0}
#ac-global-header .search-result-meta{display:flex;align-items:center;gap:7px;margin-bottom:2px;font-size:10.5px;text-transform:uppercase;letter-spacing:.065em;color:#72868b}
#ac-global-header .search-result-source{color:#0a7a8e;font-weight:700}
#ac-global-header .search-result-title{display:block;font-size:14.5px;line-height:1.28;font-weight:700;color:#0f2a33;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#ac-global-header .search-result-excerpt{display:block;margin-top:3px;font-size:12.5px;line-height:1.35;color:#52696f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#ac-global-header .search-status{padding:20px 16px;text-align:center;color:#52696f;font-size:13.5px}
#ac-global-header .search-status strong{display:block;color:#0f2a33;font-size:14.5px;margin-bottom:3px}
#ac-global-header .search-more{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 14px;background:#f8fbfb;text-decoration:none;font-size:13px;font-weight:700;color:#0a7a8e;border-top:1px solid #edf2f2}
#ac-global-header .search-more:hover{background:#eef8f8;color:#075f70}
#ac-global-header .search-spinner{width:16px;height:16px;border:2px solid #d8e7e8;border-top-color:#10c0df;border-radius:50%;animation:acg-search-spin .7s linear infinite;margin:0 auto 8px}
@keyframes acg-search-spin{to{transform:rotate(360deg)}}
#ac-global-header .mobile-search-shell{position:relative}
#ac-global-header .search-suggestions-mobile{position:relative;top:auto;left:auto;right:auto;margin-top:10px;max-height:calc(100vh - 160px);box-shadow:0 14px 30px rgba(8,10,14,.13)}
#ac-global-footer .footer-links>div,#ac-global-footer .footer-links ul,#ac-global-footer .footer-links li,#ac-global-footer .footer-links a{margin-left:0!important;text-indent:0!important}
#ac-global-footer .socials,#ac-global-footer .socials>li{margin-left:0!important;padding-left:0!important;text-indent:0!important}
#ac-global-footer .footer-links a{padding-left:0!important}

@media (max-width:640px){
  #ac-global-footer .socials{gap:4px!important}
  #ac-global-footer .socials a{width:34px;height:34px}
  #ac-global-footer .socials svg{width:16px;height:16px}
  #ac-global-header .search-result{grid-template-columns:50px minmax(0,1fr);padding:10px 11px;gap:10px}
  #ac-global-header .search-result-media{width:50px;height:44px}
  #ac-global-header .search-result-excerpt{display:none}
}
#ac-global-header .mobile-search-shell .search-form{padding-inline:0}


/* v0.16 static-page hardening
   Some legacy static styles constrain .header-wide after the global shell has loaded.
   These declarations make the approved Amazon-style desktop row authoritative. */
@media (min-width:1281px){
  #ac-global-header .header-primary > .header-wide.header-row{
    width:100% !important;
    max-width:none !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:16px !important;
    padding-right:16px !important;
  }
  #ac-global-header .header-search-wrap{
    display:flex !important;
    flex:1 1 auto !important;
    width:0 !important;
    min-width:260px !important;
    max-width:none !important;
    margin-left:0 !important;
    margin-right:0 !important;
  }
  #ac-global-header .header-search{
    display:flex !important;
    flex:1 1 auto !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
  }
  #ac-global-header .header-search input{
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    flex:1 1 auto !important;
  }
}
