/* MyTeamACS theme — main stylesheet. Author: Ehtisham. Lean, no frameworks. */

/* Typography: Inter throughout (weights 400/500 via Google Fonts, see
   functions.php) — per the brand PRD's typography spec. */

:root{
	/* ---- PubQ-inspired design tokens ---- */
	--bg:#F5F5F7; --surface:#FFFFFF; --surface-alt:#FAFAFA; --footer:#FBFBFB; --dark:#131117; --badge:#D81C22;
	--text:#2B2D2D; --text-strong:#131117; --muted:#687279; --muted-2:#8C8C8C;
	--accent:#5833A8; --accent-2:#5833A8; --accent-tint:#EEE9FA; --accent-hover:#4C2A91;
	--orange:#FF6B35; --success:#1F7A3A; --danger:#A03333; --chip:#F1F1F4;
	--border:1px solid rgba(0,0,0,.08); --border-color:rgba(0,0,0,.08); --border-color-2:rgba(0,0,0,.14);
	--r-xl:12px; --r-lg:10px; --r-md:8px; --r-sm:6px; --r-xs:4px; --r-pill:999px;
	--shadow-card:0 1px 2px rgba(0,0,0,.04),0 6px 18px rgba(0,0,0,.06);
	--font:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
	--font-ui:"Inter",system-ui,sans-serif;
	--section-y:64px; --container:1200px; --gutter:24px;

	/* ---- legacy --mta-* aliases: keeps every existing selector on-token
	   without touching each one individually. Anything the brief calls out
	   specifically (gradients, exact radii, font-weights) is still fixed
	   explicitly further down. ---- */
	--mta-ink:var(--text); --mta-ink-2:var(--text); --mta-muted:var(--muted);
	--mta-border:var(--border-color); --mta-border-2:var(--border-color-2);
	--mta-surface:var(--surface); --mta-bg:var(--bg); --mta-bg-2:var(--chip);
	--mta-radius:var(--r-md); --mta-radius-sm:var(--r-sm);
	--mta-r:var(--r-md); --mta-r-sm:var(--r-sm); --mta-r-lg:var(--r-xl); --mta-r-pill:var(--r-pill);
	--mta-shadow:var(--shadow-card); --mta-shadow-lg:var(--shadow-card);
	--mta-sh-sm:var(--shadow-card); --mta-sh:var(--shadow-card); --mta-sh-md:var(--shadow-card); --mta-sh-lg:var(--shadow-card);
	--mta-purple-900:var(--text-strong); --mta-purple-700:var(--accent-hover); --mta-purple-600:var(--accent); --mta-purple-50:var(--accent-tint);
	--mta-green-500:var(--success); --mta-green-600:var(--success); --mta-green-300:var(--success); --mta-green-50:#EAF5EE;
	--mta-danger:var(--danger); --mta-danger-50:#FDECEC; --mta-amber:var(--orange); --mta-amber-50:#FFF3EC;
	--mta-ring:0 0 0 3px var(--accent-tint);
	--mta-grad-purple:var(--accent); --mta-grad-purple-hover:var(--accent-hover); --mta-sh-purple:var(--shadow-card);
	--mta-grad-green:var(--text); --mta-grad-green-hover:var(--text-strong); --mta-sh-green:none;
	--mta-container:var(--container);
	--mta-font:var(--font);
}
@media (max-width:767px){ :root{ --section-y:40px; --gutter:16px; } }

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
/* Sticky footer: the page column always fills the viewport, so a short page
   never leaves dead space under the footer. */
/* Full-bleed bands use 100vw; clip (not hidden) so position:sticky still works and no sub-pixel sideways scroll appears on phones. */
html{overflow-x:clip}
body{margin:0;font-family:var(--mta-font);color:var(--mta-ink);background:var(--mta-bg);line-height:1.6;-webkit-font-smoothing:antialiased;
	min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
body.admin-bar{min-height:calc(100vh - 32px);min-height:calc(100dvh - 32px)}
@media(max-width:782px){body.admin-bar{min-height:calc(100vh - 46px);min-height:calc(100dvh - 46px)}}
img{max-width:100%;height:auto}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3,h4{font-weight:500;line-height:1.15;letter-spacing:-.02em;margin:0 0 .5em;color:var(--text-strong)}
h1{font-size:40px}
h2{font-size:32px}
h3{font-size:24px}
p{color:var(--text);line-height:1.45}
@media(max-width:640px){h1{font-size:32px}h2{font-size:26px}}

.myteamacs-container{max-width:var(--mta-container);margin:0 auto;padding:0 clamp(16px,4vw,32px)}
.myteamacs-skip{position:absolute;left:-9999px}
.myteamacs-skip:focus{left:16px;top:16px;z-index:100;background:#fff;padding:10px 16px;border-radius:8px;box-shadow:var(--mta-shadow)}

/* ---------- Buttons ---------- */
.myteamacs-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;
	font-weight:500;font-size:15px;line-height:1;height:48px;padding:0 22px;border-radius:var(--r-sm);
	border:1.5px solid transparent;cursor:pointer;transition:background .2s ease,border-color .2s,color .2s;text-decoration:none}
.myteamacs-btn:hover{text-decoration:none}
.myteamacs-btn--primary{background:var(--text);color:#fff;box-shadow:none}
.myteamacs-btn--primary:hover{background:var(--text-strong);color:#fff}
.myteamacs-btn--secondary{background:var(--surface);color:var(--text);border-color:var(--border-color);box-shadow:none}
.myteamacs-btn--secondary:hover{background:var(--chip);color:var(--text)}
.myteamacs-btn--accent{background:var(--accent);color:#fff;box-shadow:none}
.myteamacs-btn--accent:hover{background:var(--accent-hover);color:#fff}
.myteamacs-btn--ghost{background:transparent;color:var(--text);border-color:var(--border-color)}
.myteamacs-btn--ghost:hover{border-color:var(--accent);color:var(--accent)}

/* ---------- Header ---------- */
.myteamacs-header{position:sticky;top:0;z-index:50;background:var(--surface);border-bottom:var(--border);transition:box-shadow .2s ease,border-color .2s ease}
.myteamacs-header__inner{display:flex;align-items:center;gap:24px;min-height:72px}
@media(max-width:600px){.myteamacs-header__inner{min-height:64px}}
.myteamacs-header__brand{flex:0 0 auto}
.myteamacs-header__nav{flex:1 1 auto}
.myteamacs-header__actions{flex:0 0 auto;display:flex;align-items:center;gap:12px;margin-left:auto}
.myteamacs-wordmark{font-weight:500;font-size:1.35rem;letter-spacing:.01em;text-decoration:none;display:inline-flex;gap:.35em}
.myteamacs-wordmark:hover{text-decoration:none}
.myteamacs-wordmark__vip{color:var(--accent)}
.myteamacs-wordmark__vault{color:var(--text-strong)}
.myteamacs-menu{list-style:none;display:flex;justify-content:center;gap:6px;margin:0;padding:0}
.myteamacs-menu a{display:inline-block;padding:10px 18px;border-radius:8px;color:var(--text);font-weight:500;font-size:16px;letter-spacing:0;white-space:nowrap}
/* Menu is kept short (5 top-level items) on purpose — plenty of room even on
   tighter desktop widths, so links don't need to shrink before the hamburger
   breakpoint takes over. */
.myteamacs-menu a:hover{background:var(--chip);color:var(--accent);text-decoration:none}
.myteamacs-menu li{position:relative}
.myteamacs-menu .sub-menu{position:absolute;left:0;top:100%;min-width:260px;list-style:none;margin:0;padding:8px;
	background:var(--surface);border:var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-card);
	opacity:0;visibility:hidden;transform:translateY(-4px);z-index:60;
	transition:opacity .14s ease,transform .14s ease,visibility .14s}
.myteamacs-menu li:hover>.sub-menu,.myteamacs-menu li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:translateY(0)}
.myteamacs-menu .sub-menu a{display:block;padding:11px 14px;font-size:1rem;font-weight:500}
.myteamacs-menu .menu-item-has-children>a::after{content:"";display:inline-block;margin-left:.42em;
	border:4px solid transparent;border-top-color:currentColor;transform:translateY(2px)}

/* Pinned (scrolled) header: same size/shape as the normal header — just picks
   up a shadow so it reads as "stuck", no shrinking pill effect (JS toggles
   .is-pinned on .myteamacs-header — see main.js). Only applies when the header is
   visible (not the transparent-over-hero variant, which stays display:none). */
.myteamacs-header.is-pinned{box-shadow:var(--shadow-card)}
.myteamacs-cart{position:relative;display:inline-flex;align-items:center;color:var(--text);padding:8px;border-radius:8px}
.myteamacs-cart:hover{background:var(--chip);color:var(--accent)}
.myteamacs-cart__count{position:absolute;top:0;right:0;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--accent);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1}
.myteamacs-cart__count.is-empty{display:none}

/* ---------- Footer ---------- */
.myteamacs-footer{margin:40px 0 0;flex:0 0 auto;background:var(--footer);border-radius:0}
/* Home ends with the full-bleed trust band, so the footer sits flush against it. */
.home .myteamacs-footer{margin-top:0 !important}
.myteamacs-footer__inner{display:flex;align-items:center;justify-content:space-between;gap:16px 28px;padding:20px 32px;flex-wrap:wrap}
.myteamacs-footer__mark{font-weight:500;color:var(--text);letter-spacing:0}
.myteamacs-footer__copy{color:var(--muted-2);font-size:14px}

/* ---------- Main / content ---------- */
.myteamacs-main{min-height:0;flex:1 0 auto}
.myteamacs-content{padding-top:40px}
.myteamacs-article__title{font-size:clamp(1.75rem,3vw,2.5rem)}

/* ---------- Landing (hero with background image + overlay) ---------- */
:root{
	/* Swap this URL to use a custom photo later (drop the file in assets/img/). */
	--mta-landing-image:none;
}
.myteamacs-landing{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;
	padding:40px 20px;overflow:hidden;isolation:isolate}
/* Layer 1 — the background image */
.myteamacs-landing__bg{position:absolute;inset:0;z-index:-2;
	background-image:var(--mta-landing-image);background-size:cover;background-position:center;background-repeat:no-repeat}
/* Layer 2 — readability + mood overlay on top of the image */
.myteamacs-landing__overlay{position:absolute;inset:0;z-index:-1;
	background:
		radial-gradient(ellipse 90% 70% at 50% 42%,rgba(11,6,22,0) 0%,rgba(11,6,22,.35) 70%,rgba(11,6,22,.7) 100%),
		linear-gradient(180deg,rgba(26,5,51,.55) 0%,rgba(11,6,22,.35) 45%,rgba(11,6,22,.72) 100%)}
.myteamacs-landing__card{position:relative;max-width:480px;width:100%;text-align:center;
	background:rgba(255,255,255,.98);border:1px solid rgba(255,255,255,.6);border-radius:22px;
	box-shadow:0 30px 80px rgba(0,0,0,.45),0 2px 8px rgba(0,0,0,.2);
	padding:clamp(32px,5vw,56px);backdrop-filter:blur(2px)}
.myteamacs-landing__brand{margin-bottom:24px}
.myteamacs-landing__brand .myteamacs-wordmark{font-size:1.9rem}
.myteamacs-landing__eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:.72rem;font-weight:700;color:var(--mta-purple-600);margin:0 0 12px}
.myteamacs-landing__title{font-size:clamp(1.9rem,4vw,2.5rem);margin:0 0 14px;letter-spacing:-.02em;color:var(--mta-ink)}
.myteamacs-landing__lead{color:var(--mta-muted);font-size:1.05rem;line-height:1.6;margin:0 0 28px}
.myteamacs-landing__actions{margin-bottom:20px}
.myteamacs-landing__actions .myteamacs-btn{width:100%;padding:1.05em 1.5em;font-size:1.05rem;box-shadow:0 8px 24px rgba(16,185,129,.35)}
.myteamacs-landing__note{color:var(--mta-muted);font-size:.85rem;margin:0}

/* Wide split login card (welcome | form) */
.myteamacs-landing__card--split{max-width:1060px;width:100%;padding:0;overflow:hidden;text-align:left;
	display:grid;grid-template-columns:1.1fr 1fr}
.myteamacs-landing__card--split .myteamacs-landing__intro{padding:clamp(32px,4vw,52px);
	background:linear-gradient(160deg,#2B0A4E 0%,#3B0764 55%,#1A0533 100%);color:#fff;display:flex;flex-direction:column;justify-content:center}
.myteamacs-landing__card--split .myteamacs-landing__brand{margin-bottom:22px}
.myteamacs-landing__card--split .myteamacs-landing__brand .myteamacs-wordmark__vip{color:#fff}
.myteamacs-landing__card--split .myteamacs-landing__brand .myteamacs-wordmark__vault{color:var(--mta-green-300)}
.myteamacs-landing__card--split .myteamacs-landing__eyebrow{color:var(--mta-green-300);margin-bottom:14px}
.myteamacs-landing__card--split .myteamacs-landing__title{color:#fff;font-size:clamp(1.5rem,2.4vw,2rem);margin-bottom:16px;white-space:nowrap}
.myteamacs-landing__card--split .myteamacs-landing__lead{color:rgba(255,255,255,.78);font-size:1rem;margin-bottom:22px}
.myteamacs-landing__card--split .myteamacs-landing__note{color:rgba(255,255,255,.55);font-size:.85rem;margin:0;text-align:left}
.myteamacs-landing__formcol{padding:clamp(32px,4vw,52px);display:flex;flex-direction:column;justify-content:center;background:#fff}
.myteamacs-landing__formtitle{font-size:1.3rem;font-weight:700;color:var(--mta-ink);margin:0 0 22px}

/* Inline login form on the landing card */
.myteamacs-landing__card--login{max-width:440px;text-align:left}
.myteamacs-landing__card--login .myteamacs-landing__brand,.myteamacs-landing__card--login .myteamacs-landing__eyebrow,.myteamacs-landing__card--login .myteamacs-landing__title,.myteamacs-landing__card--login .myteamacs-landing__lead{text-align:center}
.myteamacs-landing__card--login .myteamacs-landing__title{margin-bottom:8px}
.myteamacs-landing__card--login .myteamacs-landing__lead{margin-bottom:24px;font-size:.98rem}
.myteamacs-login-form form.login p{margin:0 0 16px}
.myteamacs-login-form label{display:block;font-size:.85rem;font-weight:600;color:var(--mta-ink-2,#3F3F46);margin:0 0 7px}
.myteamacs-login-form input.input,.myteamacs-login-form input[type=text],.myteamacs-login-form input[type=password]{
	width:100%;background:#fff;border:1.5px solid var(--mta-border,#E7E5E4);border-radius:10px;padding:12px 14px;
	font-family:var(--mta-font);font-size:.98rem;color:var(--mta-ink);transition:border-color .15s,box-shadow .15s;min-height:48px}
.myteamacs-login-form input.input:focus,.myteamacs-login-form input[type=text]:focus,.myteamacs-login-form input[type=password]:focus{
	outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint)}
.myteamacs-login-form .login-remember{display:flex;align-items:center;margin-bottom:20px !important}
.myteamacs-login-form .login-remember label{display:flex;align-items:center;gap:8px;font-weight:500;color:var(--mta-muted);margin:0;cursor:pointer}
.myteamacs-login-form .login-remember input{width:18px;height:18px;accent-color:var(--mta-purple-600);margin:0}
.myteamacs-login-form .login-submit{margin:0 !important}
.myteamacs-login-form input[type=submit],.myteamacs-login-form .button-primary{
	width:100%;background:var(--mta-grad-green);color:#fff;border:0;border-radius:10px;padding:14px 20px;
	font-family:var(--mta-font);font-size:1.02rem;font-weight:600;cursor:pointer;min-height:52px;
	box-shadow:0 8px 24px rgba(16,185,129,.32);transition:background .2s,transform .12s}
.myteamacs-login-form input[type=submit]:hover,.myteamacs-login-form .button-primary:hover{background:var(--mta-grad-green-hover);transform:translateY(-1px)}
.myteamacs-login-error{background:#FEF2F2;border:1px solid #FECACA;color:#991B1B;border-radius:10px;padding:12px 14px;font-size:.9rem;margin:0 0 18px;text-align:center}
.myteamacs-landing__links{text-align:center;margin:16px 0 4px}
.myteamacs-landing__links a{font-size:.88rem;color:var(--mta-purple-600);font-weight:500;text-decoration:none}
.myteamacs-landing__links a:hover{text-decoration:underline}
.myteamacs-landing__card--login .myteamacs-landing__note{text-align:center;margin-top:12px}
@media(max-width:760px){
	.myteamacs-landing__card--split{grid-template-columns:1fr;max-width:460px}
	.myteamacs-landing__card--split .myteamacs-landing__title{white-space:normal}
	.myteamacs-landing__card--split .myteamacs-landing__intro{text-align:center;padding:32px 28px 26px}
	.myteamacs-landing__card--split .myteamacs-landing__note{text-align:center}
	.myteamacs-landing__formcol{padding:28px}
}


/* Transparent, glassy header only over the hero */
body.myteamacs-has-hero .myteamacs-header{display:none}
body.myteamacs-has-hero .myteamacs-header .myteamacs-wordmark__vip{color:#fff}
body.myteamacs-has-hero .myteamacs-header .myteamacs-wordmark__vault{color:var(--mta-green-300)}
body.myteamacs-has-hero .myteamacs-header .myteamacs-btn--ghost{color:#fff;border-color:rgba(255,255,255,.5)}
body.myteamacs-has-hero .myteamacs-header .myteamacs-btn--ghost:hover{background:rgba(255,255,255,.12);border-color:#fff;color:#fff}
body.myteamacs-has-hero .myteamacs-footer{background:transparent;border-top-color:rgba(255,255,255,.12)}
body.myteamacs-has-hero .myteamacs-footer__mark{color:#fff}
body.myteamacs-has-hero .myteamacs-footer__copy{color:rgba(255,255,255,.55)}
body.myteamacs-has-hero{background:#0B0616}

/* ---------- Status (404 / errors) ---------- */
.myteamacs-status{min-height:60vh;display:flex;align-items:center;justify-content:center;padding:48px 20px;text-align:center}
.myteamacs-status__card{max-width:480px}
.myteamacs-status__code{font-size:4rem;font-weight:700;margin:0;background:linear-gradient(135deg,var(--mta-purple-600),var(--mta-green-500));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.myteamacs-status__lead{color:var(--mta-muted);margin:0 0 24px}

/* ---------- WooCommerce theming ---------- */
.woocommerce-page .myteamacs-content,.woocommerce .myteamacs-content{padding-top:32px}
.woocommerce ul.products{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:24px;margin:0!important;padding:0;list-style:none}
.woocommerce ul.products li.product{margin:0!important;width:auto!important;float:none!important;background:var(--mta-surface);border:1px solid var(--mta-border);border-radius:var(--mta-radius);padding:16px;text-align:left;transition:box-shadow .2s,transform .12s;display:flex;flex-direction:column}
.woocommerce ul.products li.product:hover{box-shadow:var(--mta-shadow);transform:translateY(-2px)}
.woocommerce ul.products li.product img{border-radius:var(--mta-radius-sm);margin-bottom:12px}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:1rem;font-weight:600;padding:0;margin:0 0 6px}
.woocommerce ul.products li.product .price{color:var(--mta-ink);font-weight:700;margin-bottom:12px}
.woocommerce ul.products li.product .price del{color:var(--mta-muted);font-weight:400}
.woocommerce ul.products li.product .price ins{color:var(--mta-green-500);text-decoration:none}
.woocommerce ul.products li.product .button,
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{
	background:var(--mta-grad-green);color:#fff;border-radius:var(--mta-radius-sm);font-weight:600;padding:.7em 1.2em;border:0;margin-top:auto;transition:background .2s}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce ul.products li.product .button:hover,.woocommerce #respond input#submit:hover{background:var(--mta-grad-green-hover)}
.woocommerce .button.alt,.woocommerce button.button.alt,.woocommerce #place_order{background:var(--mta-grad-green)}
.woocommerce .button.alt:hover,.woocommerce #place_order:hover{background:var(--mta-grad-green-hover)}
.woocommerce div.product .product_title{font-size:clamp(1.5rem,3vw,2rem)}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--mta-purple-700);font-size:1.6rem;font-weight:700}
.woocommerce span.onsale{background:var(--mta-purple-600);border-radius:999px}
.woocommerce .woocommerce-message,.woocommerce .woocommerce-info{border-top-color:var(--mta-green-500)}
.woocommerce .woocommerce-error{border-top-color:var(--danger)}
.woocommerce-message::before,.woocommerce-info::before{color:var(--mta-green-500)}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span.current{border-radius:8px}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--mta-grad-purple);color:#fff;border-color:var(--mta-purple-600)}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce .select2-container .select2-selection{border:1px solid var(--mta-border);border-radius:var(--mta-radius-sm);padding:.7em .9em}
.woocommerce form .form-row input.input-text:focus,.woocommerce form .form-row textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint)}
.woocommerce table.shop_table{border-radius:var(--mta-radius);overflow:hidden}
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;padding:0;margin:0}
.woocommerce-account .woocommerce-MyAccount-navigation li{border-radius:8px;margin-bottom:4px}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active{background:var(--text)}
.woocommerce-account .woocommerce-MyAccount-navigation li a{display:block;padding:10px 14px;color:var(--mta-ink);font-weight:500}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{color:var(--mta-purple-700)}

/* Sticky add-to-cart on mobile single product */
@media(max-width:600px){
	.single-product .myteamacs-content div.product form.cart{position:sticky;bottom:0;background:#fff;padding:12px;margin:0 -16px -16px;border-top:1px solid var(--mta-border);z-index:10}
}

/* Focus visibility for accessibility */
a:focus-visible,button:focus-visible,input:focus-visible,.myteamacs-btn:focus-visible{outline:2px solid var(--mta-purple-600);outline-offset:2px}

/* Skeleton loader utility */
.myteamacs-skeleton{background:linear-gradient(90deg,#eee 25%,#f5f5f5 37%,#eee 63%);background-size:400% 100%;animation:vv-shimmer 1.4s ease infinite;border-radius:8px}
@keyframes vv-shimmer{0%{background-position:100% 50%}100%{background-position:0 50%}}

/* WooCommerce content wrapper (replaces the default sidebar layout) */
.myteamacs-woo{padding-top:32px;padding-bottom:16px}
.woocommerce-products-header,.woocommerce .myteamacs-woo>h1,.woocommerce-page .myteamacs-woo>h1{margin-bottom:20px}
.woocommerce-products-header__title,.woocommerce-products-header{margin:0 0 20px}
.woocommerce .woocommerce-result-count{color:var(--mta-muted);font-size:.9rem}
.woocommerce .woocommerce-ordering{margin-bottom:16px}
/* Single product two-column with breathing room */
.single-product .myteamacs-woo div.product{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:start}
.single-product .myteamacs-woo div.product .woocommerce-product-gallery{margin:0}
.single-product .myteamacs-woo div.product .summary{margin:0}
.single-product .myteamacs-woo div.product .woocommerce-tabs{grid-column:1 / -1}
.single-product .myteamacs-woo div.product .related.products{grid-column:1 / -1}
@media(max-width:781px){.single-product .myteamacs-woo div.product{grid-template-columns:1fr;gap:24px}}
/* Cart + checkout spacing */
.woocommerce-cart .myteamacs-woo,.woocommerce-checkout .myteamacs-woo{padding-top:24px}
.woocommerce .cart-collaterals,.woocommerce-checkout #order_review{border:1px solid var(--mta-border);border-radius:var(--mta-radius);padding:20px;background:var(--mta-surface)}

/* ---------- Logo (context-aware: colour on light, dark-optimised on dark) ---------- */
/* Brand logo. The markup keeps the site name in a screen-reader span, so the
   image is a background and the text stays available to assistive tech. */
/* Horizontal lockup: mascot on the left, wordmark on the right. */
.myteamacs-logo{display:block;width:214px;height:56px;text-decoration:none;
	background:url("../img/logo-mark.png?v=7") left center/contain no-repeat}
.myteamacs-logo .screen-reader-text,.myteamacs-footer__logo .screen-reader-text{
	position:absolute !important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.myteamacs-header__brand{display:flex;align-items:center}
.myteamacs-header .myteamacs-logo{width:229px;height:60px}
@media(max-width:600px){.myteamacs-header .myteamacs-logo{width:168px;height:44px}}
/* Footer keeps its text mark */

/* Lost-password success message on the landing */
.myteamacs-login-success{background:#ECFDF5;border:1px solid #A7F3D0;color:#065F46;border-radius:10px;padding:14px 16px;font-size:.92rem;line-height:1.5;margin:0 0 18px}

/* ---------- Content pages (About, Contact, policies) ---------- */
.myteamacs-content .myteamacs-article{max-width:840px}
/* The storefront home page carries product grids, so it uses the full container
   rather than the reading width the policy pages want. */
.home .myteamacs-content .myteamacs-article,
.page-template-default.home .myteamacs-article{max-width:none}
.myteamacs-article__body .myteamacs-lead,.myteamacs-lead{font-size:1.15rem;line-height:1.7;color:var(--mta-ink-2,#3F3F46);margin:0 0 26px}
.myteamacs-article__body h2{font-size:1.4rem;font-weight:700;letter-spacing:-.01em;margin:34px 0 12px;color:var(--mta-ink)}
.myteamacs-article__body p{line-height:1.75;color:var(--mta-ink-2,#3F3F46);margin:0 0 16px}
.myteamacs-article__body ul,.myteamacs-article__body ol{padding-left:22px;margin:0 0 18px}
.myteamacs-article__body li{line-height:1.7;color:var(--mta-ink-2,#3F3F46);margin:7px 0}
.myteamacs-article__body a{color:var(--accent)}
.myteamacs-article__body a:hover{color:var(--accent-hover)}
.myteamacs-page-figure{margin:0 0 28px;border-radius:var(--r-xl);overflow:hidden;border:var(--border)}
.myteamacs-page-figure img{width:100%;height:auto;display:block;max-height:360px;object-fit:cover}
.myteamacs-article__body .myteamacs-btn{margin-top:8px}
/* Footer links */
.myteamacs-footer__links{display:flex;flex-wrap:wrap;gap:6px 20px;justify-content:center;flex:1}
.myteamacs-footer__links a{color:var(--muted);font-size:15px;font-weight:500;text-decoration:none}
.myteamacs-footer__links a:hover{color:var(--text)}
.myteamacs-footer__logo{display:block;width:214px;height:56px;text-decoration:none;flex:0 0 auto;
	background:url("../img/logo-mark.png?v=7") left center/contain no-repeat}

/* Mobile footer: clean centered stack — logo, links, copyright. */
@media(max-width:640px){
	.myteamacs-footer{margin:24px 0 0}
	.myteamacs-footer__inner{flex-direction:column;align-items:center;text-align:center;gap:14px;padding:20px 20px}
	.myteamacs-footer__logo{background-position:center;margin:0 auto}
	.myteamacs-footer__links{flex:0 0 auto;width:100%;gap:12px 18px;justify-content:center}
	.myteamacs-footer__links a{font-size:.92rem}
	.myteamacs-footer__copy{width:100%}
}

/* Product-style figure on content pages: show the whole image, centered */
.myteamacs-page-figure--product{max-width:560px;margin:0 auto 28px;background:var(--mta-bg-2,#F4F4F5)}
.myteamacs-page-figure--product img{max-height:none;object-fit:contain}

/* Button links inside content keep white text (not the purple link colour).
   Ghost/secondary buttons are excluded — they sit on a light background and
   would otherwise render white-on-white (e.g. "View my orders" on the
   order-received page, which is a shortcode page inside .myteamacs-article__body). */
.myteamacs-article__body a.myteamacs-btn:not(.myteamacs-btn--ghost):not(.myteamacs-btn--secondary):not(.wc-backward),
.myteamacs-article__body a.button:not(.wc-backward):not(.myteamacs-ghost):not(.added_to_cart),
.myteamacs-article__body a.myteamacs-btn--primary{color:#fff !important}
.myteamacs-article__body a.myteamacs-btn:not(.myteamacs-btn--ghost):not(.myteamacs-btn--secondary):not(.wc-backward):hover,
.myteamacs-article__body a.button:not(.wc-backward):not(.myteamacs-ghost):not(.added_to_cart):hover{color:#fff !important}
.myteamacs-article__body a.myteamacs-btn--secondary{color:var(--text);border-color:var(--mta-border)}
.myteamacs-article__body a.myteamacs-btn--secondary:hover{color:var(--text-strong);border-color:var(--accent)}

/* ---- Mobile / tablet navigation (hamburger) ------------------------------ */
.myteamacs-navtoggle{display:none;align-items:center;justify-content:center;width:42px;height:42px;padding:0;
	border:0;background:none;color:var(--mta-ink);border-radius:8px;cursor:pointer;-webkit-tap-highlight-color:transparent}
.myteamacs-navtoggle:hover{background:var(--chip);color:var(--accent)}
.myteamacs-navtoggle__bars{position:relative;display:block;width:22px;height:16px}
.myteamacs-navtoggle__bars span{position:absolute;left:0;width:100%;height:2px;border-radius:2px;background:currentColor;
	transition:transform .22s ease,opacity .16s ease}
.myteamacs-navtoggle__bars span:nth-child(1){top:0}
.myteamacs-navtoggle__bars span:nth-child(2){top:7px}
.myteamacs-navtoggle__bars span:nth-child(3){top:14px}
.myteamacs-navtoggle[aria-expanded="true"] .myteamacs-navtoggle__bars span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.myteamacs-navtoggle[aria-expanded="true"] .myteamacs-navtoggle__bars span:nth-child(2){opacity:0}
.myteamacs-navtoggle[aria-expanded="true"] .myteamacs-navtoggle__bars span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

@media(max-width:820px){
	.myteamacs-navtoggle{display:inline-flex}
	.myteamacs-header__inner{gap:10px}
	.myteamacs-header__nav{position:absolute;left:0;right:0;top:100%;display:none;background:#fff;
		border-bottom:1px solid var(--mta-border);box-shadow:0 14px 30px rgba(0,0,0,.10);padding:6px 0 10px}
	.myteamacs-header__nav.is-open{display:block}
	.myteamacs-menu{flex-direction:column;justify-content:flex-start;gap:0;padding:0 16px}
	.myteamacs-menu li + li{border-top:1px solid var(--mta-border)}
	.myteamacs-menu a{display:block;padding:14px 10px;border-radius:8px;font-size:1.05rem}
	.myteamacs-menu .sub-menu{position:static;opacity:1;visibility:visible;transform:none;
		background:none;border:0;box-shadow:none;list-style:none;margin:0;padding:0 0 0 14px}
	.myteamacs-menu .sub-menu a{padding:12px 10px;font-size:1rem}
}

/* ---------- Home hero (public storefront) ---------- */
.vd-hero{background:var(--mta-grad-purple);color:#fff;border-radius:var(--mta-radius);
	padding:clamp(28px,5vw,64px) clamp(20px,4vw,56px);margin:0 0 36px;position:relative;overflow:hidden}
.vd-hero__eyebrow{font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
	color:var(--mta-green-300);margin:0 0 14px}
.myteamacs-article__body .vd-hero h1,.vd-hero h1{font-size:clamp(2rem,5vw,3.2rem);line-height:1.05;
	font-weight:700;letter-spacing:-.02em;margin:0 0 16px;color:#fff}
.myteamacs-article__body .vd-hero p,.vd-hero p{font-size:clamp(1rem,1.6vw,1.2rem);line-height:1.6;
	color:rgba(255,255,255,.88);margin:0 0 26px;max-width:46ch}
.vd-hero__actions{display:flex;flex-wrap:wrap;gap:12px}
.myteamacs-article__body .vd-hero a.myteamacs-btn{margin-top:0;color:#fff}
.vd-hero .myteamacs-btn--ghost{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.5);color:#fff}
.vd-hero .myteamacs-btn--ghost:hover{background:rgba(255,255,255,.2);border-color:#fff;color:#fff}
/* Hero with product art: the safes are a transparent PNG pinned to the right,
   layered over the gradient, so the headline always sits on clean colour and
   the type stays real text (never baked into the image). Under 900px the art
   drops to a faint watermark so the copy keeps full width. */
.vd-hero--art{padding-right:clamp(20px,4vw,56px)}
.vd-hero--art::after{content:"";position:absolute;right:0;bottom:0;top:12%;width:52%;
	background:url("../img/hero-art.png") right bottom/contain no-repeat;pointer-events:none}
.vd-hero--art .vd-hero__inner{position:relative;z-index:1;max-width:52%}
@media(max-width:900px){
	.vd-hero--art::after{top:auto;height:62%;width:100%;opacity:.18}
	.vd-hero--art .vd-hero__inner{max-width:none}
}

/* Section headings on the home page get a little more air than article H2s. */
.myteamacs-article__body .vd-section{margin-top:48px}

/* Closing CTA on the home page: a centred h2.vd-section + the paragraph right
   after it (the page content itself isn't wrapped in a div we can edit), styled
   together as one rounded accent-tint card by matching their backgrounds,
   padding and radii so the seam between the two elements disappears. */
/* Full-bleed band (same negative-margin trick as the hero), sitting right above the footer. */
.myteamacs-article__body h2.vd-section{
	background:var(--accent-tint);text-align:center;width:100vw;max-width:none;
	margin:var(--section-y) calc(50% - 50vw) 0;box-sizing:border-box;
	padding:48px clamp(20px,10vw,160px) 14px;border-radius:0;color:var(--text-strong)}
.myteamacs-article__body h2.vd-section + p{
	background:var(--accent-tint);text-align:center;width:100vw;max-width:none;
	margin:0 calc(50% - 50vw) 0;box-sizing:border-box;
	padding:0 clamp(20px,14vw,240px) 48px;border-radius:0;color:var(--muted);line-height:1.7}
.myteamacs-article__body h2.vd-section + p a{color:var(--accent);font-weight:500}

/* ---------- Home: image + text split sections ---------- */
.vd-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;
	align-items:center;margin:var(--section-y) 0;background:var(--surface);border-radius:var(--r-xl);padding:24px}
.vd-split__media{margin:0;border-radius:var(--r-xl);overflow:hidden;border:var(--border);
	background:var(--chip);aspect-ratio:4/3}
.vd-split__media img{width:100%;height:100%;object-fit:cover;display:block}
.myteamacs-article__body .vd-split__body h2{margin-top:0}
.myteamacs-article__body .vd-split__body p{color:var(--muted)}
.vd-split--reverse .vd-split__media{order:2}
/* Alternate section backgrounds so consecutive cards read as distinct blocks. */
.vd-split:nth-of-type(even){background:var(--bg)}
@media(max-width:820px){
	.vd-split{grid-template-columns:1fr;gap:24px;margin:36px 0;padding:20px}
	.vd-split--reverse .vd-split__media{order:0}
}

/* ---------- Home hero banner + category banners ---------- */
.vd-hero-banner{margin:0 0 24px;border-radius:var(--r-xl);overflow:hidden;border:var(--border);background:var(--text-strong)}
.vd-hero-banner img{display:block;width:100%;height:auto}
.vd-hero-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:20px 32px;flex-wrap:wrap;margin:0 0 44px}
.vd-hero-intro__text{flex:1 1 420px;min-width:0}
.myteamacs-article__body .vd-hero-intro h1{font-size:clamp(1.5rem,2.6vw,2.1rem);line-height:1.15;letter-spacing:-.02em;margin:0 0 10px;color:var(--mta-ink)}
.myteamacs-article__body .vd-hero-intro p{margin:0;color:var(--mta-ink-2);font-size:1.02rem;line-height:1.6;max-width:62ch}
.vd-hero-intro__actions{display:flex;gap:12px;flex-wrap:wrap;flex:0 0 auto}
.myteamacs-article__body .vd-hero-intro__actions a.myteamacs-btn{margin-top:0}
@media(max-width:640px){.vd-hero-intro{margin-bottom:32px}}

.vd-cat-banner{margin:0 0 28px;border-radius:var(--mta-radius);overflow:hidden;border:1px solid var(--mta-border)}
.vd-cat-banner img{display:block;width:100%;height:auto}

/* ---------- Home section headers with a link on the right ---------- */
.vd-sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;margin:52px 0 0}
.myteamacs-article__body .vd-sec-head h2{margin:0}
/* Outline rather than filled: a solid purple button here would compete with the
   Select options buttons sitting a few pixels below it. */
.myteamacs-article__body a.vd-seclink{display:inline-flex;align-items:center;gap:.4em;
	padding:.5em 1em;border:1.5px solid var(--mta-border-2,#D6D3D1);border-radius:var(--mta-radius-sm);
	color:var(--mta-purple-700);font-weight:600;font-size:.92rem;text-decoration:none;white-space:nowrap;
	transition:border-color .15s,background .15s,color .15s}
.myteamacs-article__body a.vd-seclink:hover{border-color:var(--accent);background:var(--chip);color:var(--accent)}
@media(max-width:520px){.vd-sec-head{gap:8px}.myteamacs-article__body a.vd-seclink{font-size:.86rem;padding:.45em .8em}}

/* Category banners embedded on the home page. */
.vd-home-banner{display:block;margin:18px 0 22px;border-radius:var(--mta-radius);overflow:hidden;
	border:1px solid var(--mta-border);line-height:0;transition:transform .18s ease,box-shadow .2s ease}
.vd-home-banner:hover{transform:translateY(-2px);box-shadow:var(--mta-shadow)}
.vd-home-banner img{width:100%;height:auto;display:block}

/* ---------- Home: category tiles + USP strip (storefront-only components) ---------- */
.vd-cats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:18px 0 8px}
.vd-cats br{display:none}
@media(min-width:1100px){.vd-cats{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}}
@media(max-width:900px){.vd-cats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.vd-cats{grid-template-columns:1fr}}
/* Product rows as a one-line carousel (JS adds the .vd-slider wrapper + arrow buttons). */
.vd-slider{position:relative}
.vd-cats--slider{display:flex;flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x mandatory;gap:18px;
	scrollbar-width:none;-ms-overflow-style:none;padding:4px 2px 8px;margin:14px -2px 4px}
.vd-cats--slider::-webkit-scrollbar{display:none}
.vd-cats--slider > .vd-cat{flex:0 0 calc((100% - 3*18px)/4);scroll-snap-align:start}
@media(max-width:1099px){.vd-cats--slider > .vd-cat{flex-basis:calc((100% - 2*18px)/3)}}
@media(max-width:900px){.vd-cats--slider > .vd-cat{flex-basis:calc((100% - 18px)/2)}}
@media(max-width:560px){.vd-cats--slider > .vd-cat{flex-basis:84%}}
.vd-slider__btn{position:absolute;top:calc(50% - 22px);width:44px;height:44px;border-radius:50%;border:1px solid var(--mta-border);
	background:var(--surface);box-shadow:var(--shadow-card);display:flex;align-items:center;justify-content:center;
	cursor:pointer;z-index:2;padding:0;transition:border-color .18s ease}
.vd-slider__btn svg{width:20px;height:20px;fill:none;stroke:var(--text-strong);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.vd-slider__btn:hover{border-color:var(--accent)}
.vd-slider__btn:hover svg{stroke:var(--accent)}
.vd-slider__btn--prev{left:-22px}
.vd-slider__btn--next{right:-22px}
.vd-slider__btn[disabled]{opacity:.3;cursor:default;pointer-events:none}
.vd-slider:not(.is-scrollable) .vd-slider__btn{display:none}
/* Brand tiles: no button — a round arrow beside the title is the "go" cue. */
.vd-cats--brands .vd-cat__body{position:relative;grid-template-rows:auto 1fr;grid-template-areas:"t t" "d d"}
.vd-cats--brands .vd-cat__t{padding-right:44px}
.vd-cats--brands .vd-cat__body::before{content:"";position:absolute;right:16px;top:10px;width:30px;height:30px;border-radius:50%;
	background:var(--accent-tint);transition:background-color .18s ease}
.vd-cats--brands .vd-cat__body::after{content:"";position:absolute;right:24px;top:18px;width:14px;height:14px;background-color:var(--accent);
	-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12h14M13 6l6 6-6 6'/></svg>") center/contain no-repeat;
	mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12h14M13 6l6 6-6 6'/></svg>") center/contain no-repeat;
	transition:transform .18s ease,background-color .18s ease}
.vd-cats--brands .vd-cat:hover .vd-cat__body::before{background:var(--accent)}
.vd-cats--brands .vd-cat:hover .vd-cat__body::after{transform:translateX(3px);background-color:#fff}

/* ---------- Blog index / archives: card grid ---------- */
.vd-posts__head{max-width:720px;margin-bottom:28px}
.vd-posts__intro{color:var(--muted);font-size:1.05rem;line-height:1.6;margin:8px 0 0}
.vd-posts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0 0 32px}
@media(max-width:900px){.vd-posts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.vd-posts{grid-template-columns:1fr}}
.vd-post{margin:0}
.vd-post__link{display:flex;flex-direction:column;height:100%;border:1px solid var(--mta-border);border-radius:var(--mta-radius);overflow:hidden;
	background:var(--surface);text-decoration:none;color:inherit;transition:transform .16s ease,box-shadow .2s ease,border-color .2s ease}
.vd-post__link:hover{transform:translateY(-2px);box-shadow:var(--mta-shadow);border-color:var(--mta-purple-600);text-decoration:none}
.vd-post__media{display:block;aspect-ratio:3/2;position:relative;overflow:hidden;background:var(--bg);line-height:0;container-type:inline-size}
.vd-post__media img{width:100%;height:100%;object-fit:cover;display:block}
.vd-post__body{display:flex;flex-direction:column;flex:1;padding:16px 18px 18px;gap:6px}
.vd-post__meta{font-size:.78rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--accent)}
.vd-post__t{font-size:1.08rem;line-height:1.35;margin:0;color:var(--text-strong);overflow-wrap:anywhere}
.vd-post__x{font-size:.92rem;line-height:1.6;color:var(--muted);overflow-wrap:anywhere}
.vd-post__more{margin-top:auto;padding-top:8px;font-weight:600;color:var(--accent);font-size:.92rem}
.vd-pagination{margin:8px 0 24px}
.vd-pagination .nav-links{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.vd-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 12px;border-radius:8px;
	border:1px solid var(--mta-border);background:var(--surface);color:var(--text);font-weight:600;text-decoration:none}
.vd-pagination .page-numbers.current{background:var(--accent);border-color:var(--accent);color:#fff}
.vd-pagination a.page-numbers:hover{border-color:var(--accent);color:var(--accent)}
/* Long URLs / unbroken strings in imported content must never force horizontal scroll on phones. */
.myteamacs-article__body,.myteamacs-article__body p,.myteamacs-article__body li,.myteamacs-article__body a{overflow-wrap:anywhere}
.myteamacs-article__body img,.myteamacs-article__body table{max-width:100%}

/* ---------- Content pages: title band + white reading card ---------- */
.vd-page__head{width:100vw;margin:-40px calc(50% - 50vw) 36px;padding:44px 20px 42px;box-sizing:border-box;
	background:var(--accent-tint);text-align:center}
.vd-page__crumbs{font-size:.85rem;color:var(--muted);display:flex;justify-content:center;gap:8px;margin-bottom:10px}
.vd-page__crumbs a{color:var(--accent);text-decoration:none;font-weight:500}
.vd-page__crumbs a:hover{text-decoration:underline}
.vd-page__head .myteamacs-article__title{margin:0 auto;max-width:800px;font-size:clamp(1.9rem,4vw,2.6rem);line-height:1.15;color:var(--text-strong)}
.vd-page__lead{max-width:640px;margin:14px auto 0;color:var(--muted);font-size:1.05rem;line-height:1.6}
.myteamacs-content .vd-page{max-width:none}
/* Woo block pages (cart/checkout/account): full width, band aligned to the 32px content padding those pages use. */
.myteamacs-content .vd-page--woo{max-width:none}
.woocommerce-page .vd-page__head{margin-top:-32px}
.myteamacs-article__body.vd-page__body{background:var(--surface);border:1px solid var(--mta-border);border-radius:16px;
	padding:clamp(22px,4vw,44px);margin:0 auto 48px}
.vd-page__body > :first-child{margin-top:0}
.vd-page__body > :last-child{margin-bottom:0}
.myteamacs-article__body.vd-page__body h2{position:relative;padding-left:16px;font-size:1.45rem;line-height:1.3;margin:36px 0 12px;color:var(--text-strong)}
.myteamacs-article__body.vd-page__body h2::before{content:"";position:absolute;left:0;top:.18em;width:4px;height:1em;border-radius:2px;background:var(--accent)}
.myteamacs-article__body.vd-page__body h3{font-size:1.15rem;font-weight:700;margin:26px 0 8px;color:var(--text-strong)}
.myteamacs-article__body.vd-page__body p{font-size:1.04rem;line-height:1.75;color:var(--mta-ink-2,#3F3F46)}
.myteamacs-article__body.vd-page__body ul{list-style:none;padding-left:0;margin:0 0 20px}
.myteamacs-article__body.vd-page__body ul > li{position:relative;padding-left:32px;margin:9px 0;line-height:1.65}
.myteamacs-article__body.vd-page__body ul > li::before{content:"";position:absolute;left:0;top:.2em;width:20px;height:20px;border-radius:50%;background:var(--accent-tint)}
.myteamacs-article__body.vd-page__body ul > li::after{content:"";position:absolute;left:5px;top:calc(.2em + 5px);width:10px;height:10px;background-color:var(--accent);
	-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'><path d='M4 12.5l5 5L20 6.5'/></svg>") center/contain no-repeat;
	mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'><path d='M4 12.5l5 5L20 6.5'/></svg>") center/contain no-repeat}
.myteamacs-article__body.vd-page__body ol{padding-left:22px}
.myteamacs-article__body.vd-page__body ol > li{margin:9px 0;line-height:1.65;padding-left:6px}
.myteamacs-article__body.vd-page__body ol > li::marker{color:var(--accent);font-weight:700}
.myteamacs-article__body.vd-page__body strong{color:var(--text-strong)}
.myteamacs-article__body.vd-page__body table{width:100%;border-collapse:collapse;margin:0 0 20px;font-size:.98rem}
.myteamacs-article__body.vd-page__body th,.myteamacs-article__body.vd-page__body td{border:1px solid var(--mta-border);padding:10px 12px;text-align:left}
.myteamacs-article__body.vd-page__body th{background:var(--bg)}
.myteamacs-article__body.vd-page__body .vd-faq{margin-bottom:10px}
@media(max-width:700px){
	.vd-page__head{padding:30px 16px 28px;margin-bottom:22px}
	.myteamacs-article__body.vd-page__body{border-radius:12px}
}

/* ---------- FAQ accordion (built by main.js from numbered H2s) ---------- */
.vd-faq{border:1px solid var(--mta-border);border-radius:12px;background:var(--surface);margin:0 0 10px;overflow:hidden}
.myteamacs-article__body .vd-faq__h{margin:0;font-size:1rem}
.vd-faq__q{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:16px 18px;border:0;background:transparent;
	text-align:left;font:inherit;font-size:1.05rem;font-weight:600;line-height:1.4;color:var(--text-strong);cursor:pointer}
.vd-faq__q:hover{color:var(--accent)}
.vd-faq__icon{flex:0 0 auto;width:28px;height:28px;border-radius:50%;background:var(--accent-tint);position:relative;transition:transform .2s ease,background-color .2s ease}
.vd-faq__icon::before,.vd-faq__icon::after{content:"";position:absolute;left:50%;top:50%;background:var(--accent);transform:translate(-50%,-50%)}
.vd-faq__icon::before{width:12px;height:2px}
.vd-faq__icon::after{width:2px;height:12px;transition:opacity .2s ease}
.vd-faq.is-open .vd-faq__icon{background:var(--accent)}
.vd-faq.is-open .vd-faq__icon::before,.vd-faq.is-open .vd-faq__icon::after{background:#fff}
.vd-faq.is-open .vd-faq__icon::after{opacity:0}
.vd-faq__a{padding:0 18px 16px;border-top:1px solid var(--mta-border);padding-top:14px}
.myteamacs-article__body .vd-faq__a p:last-child{margin-bottom:0}

/* ---------- Store chrome: top bar, search, login ---------- */
.vd-topbar{height:40px;display:flex;align-items:center;justify-content:center;padding:0 16px;background:var(--dark);color:rgba(255,255,255,.72);font-size:14px;text-align:center;white-space:nowrap;overflow:hidden}
.vd-topbar strong{color:#fff;font-weight:600;margin-left:8px}
@media(max-width:420px){.vd-topbar{font-size:12px}.vd-topbar strong{margin-left:5px}}
.myteamacs-login{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 12px;border-radius:var(--r-sm);color:var(--text-strong);font-weight:600;font-size:15px;text-decoration:none}
.myteamacs-login:hover{background:var(--chip);color:var(--accent);text-decoration:none}
.myteamacs-login svg{width:22px;height:22px}
.myteamacs-search-toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;background:transparent;border-radius:var(--r-sm);color:var(--text-strong);cursor:pointer}
.myteamacs-search-toggle:hover,.myteamacs-search-toggle[aria-expanded="true"]{background:var(--chip);color:var(--accent)}
.myteamacs-search-toggle svg{width:22px;height:22px}
.vd-searchbar{border-top:1px solid var(--border-color);background:var(--surface)}
.vd-searchbar[hidden]{display:none}
.vd-searchbar form{display:flex;gap:10px;max-width:720px;margin:0 auto;padding:14px 20px}
.vd-searchbar input[type=search]{flex:1;min-width:0;height:48px;border:1px solid var(--border-color-2);border-radius:var(--r-sm);padding:0 14px;font:inherit;font-size:16px}
.vd-searchbar button{height:48px;padding:0 18px;border:0;border-radius:var(--r-sm);background:var(--accent);color:#fff;font:inherit;font-weight:600;cursor:pointer}
.vd-searchbar button:hover{background:var(--accent-hover)}
.vd-nav-extra{display:none}
@media(max-width:820px){
	.myteamacs-login span{display:none}
	.myteamacs-login{width:44px;padding:0;justify-content:center}
	.myteamacs-header__nav{max-height:calc(100vh - 110px);overflow:auto}
	.vd-nav-extra{display:block;border-top:1px solid var(--border-color);margin-top:8px;padding-top:8px}
	.vd-nav-extra form{display:flex;gap:8px;padding:8px 12px 10px}
	.vd-nav-extra input[type=search]{flex:1;min-width:0;height:44px;border:1px solid var(--border-color-2);border-radius:var(--r-sm);padding:0 12px;font:inherit;font-size:16px}
	.vd-nav-extra button{height:44px;padding:0 14px;border:0;border-radius:var(--r-sm);background:var(--accent);color:#fff;font:inherit;font-weight:600}
}

/* Header row is wider than the 1200px content container (up to 1640px) so seven nav items + search/login/cart sit comfortably. */
.myteamacs-header .myteamacs-logo{width:200px;height:52px}
.myteamacs-header__nav{min-width:0}
.myteamacs-header__inner{gap:16px}
.myteamacs-header__actions{gap:6px}
@media(min-width:821px){
	.myteamacs-header__inner{max-width:1640px;padding-left:32px;padding-right:32px}
	.myteamacs-menu{gap:0}
	.myteamacs-menu a{padding:10px 10px;font-size:15px}
	.myteamacs-header__actions{margin-left:20px;padding-left:12px;border-left:1px solid var(--border-color)}
}
@media(min-width:821px){
	/* The lockup's wordmark sits in the lower half of the artwork (smoke above it), so lift the logo a little to line up with the menu text. */
	.myteamacs-header .myteamacs-logo{margin-top:-10px}
	/* ...and nudge the menu + icons down so they sit on the wordmark's line. */
	.myteamacs-header__nav,.myteamacs-header__actions{margin-top:8px}
}
@media(min-width:1281px){
	.myteamacs-header .myteamacs-logo{width:224px;height:58px}
	.myteamacs-header__inner{gap:28px}
	.myteamacs-menu a{padding:10px 15px;font-size:16px}
	.myteamacs-header__actions{gap:10px;margin-left:28px;padding-left:18px}
}
@media(max-width:1280px) and (min-width:821px){
	.myteamacs-header .myteamacs-logo{width:180px;height:47px}
	.myteamacs-login span{display:none}
	.myteamacs-login{width:44px;padding:0;justify-content:center}
	.myteamacs-menu a{padding:10px 8px;font-size:14px}
}
@media(max-width:820px){
	.myteamacs-search-toggle{display:none}
	.myteamacs-header__actions{gap:2px}
	.myteamacs-header .myteamacs-logo{width:150px;height:39px}
}

/* ---------- Footer: Contact / Account / Shop + legal row ---------- */
.myteamacs-footer{background:var(--footer);border-top:1px solid var(--border-color)}
.myteamacs-footer__grid{display:grid;grid-template-columns:1.25fr .9fr 1fr 1.5fr;gap:32px;padding:44px 32px 28px}
@media(max-width:1024px) and (min-width:701px){.myteamacs-footer__grid{grid-template-columns:1fr 1fr}}
.myteamacs-footer__col h3{font-size:1rem;font-weight:700;margin:0 0 12px;color:var(--text-strong)}
.myteamacs-footer__col p,.myteamacs-footer__col li{font-size:15px;color:var(--muted);line-height:1.6;margin:0 0 8px}
.myteamacs-footer__col ul{list-style:none;margin:0;padding:0}
.myteamacs-footer__col a{color:var(--text);text-decoration:none}
.myteamacs-footer__col a:hover{color:var(--accent)}
.myteamacs-footer__brands{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.myteamacs-footer__brands li{white-space:nowrap}
.myteamacs-footer__bottom{display:flex;align-items:center;justify-content:space-between;gap:16px 24px;flex-wrap:wrap;padding:18px 32px;border-top:1px solid var(--border-color)}
.myteamacs-footer__bottom .myteamacs-footer__logo{width:190px;height:40px;margin:0}
@media(min-width:701px){.myteamacs-footer__legal,.myteamacs-footer__copy{margin-top:6px}} /* line the links up with the footer wordmark (smoke sits above it) */
.myteamacs-footer__legal{display:flex;flex-wrap:wrap;gap:6px 18px}
.myteamacs-footer__legal a{color:var(--muted);font-size:14px;text-decoration:none}
.myteamacs-footer__legal a:hover{color:var(--text)}
@media(max-width:700px){
	.myteamacs-footer__grid{grid-template-columns:1fr;gap:24px;padding:32px 20px 20px}
	.myteamacs-footer__bottom{flex-direction:column;align-items:center;text-align:center;padding:18px 20px}
	.myteamacs-footer__legal{justify-content:center}
}

/* ---------- Home: myteamacs layout (icon rows, product grids, reviews, newsletter) ---------- */
.myteamacs-article__body .vd-h2{font-size:clamp(1.5rem,2.6vw,2rem);font-weight:700;letter-spacing:-.01em;line-height:1.2;margin:var(--section-y) 0 22px;color:var(--text-strong)}
.myteamacs-article__body .vd-sec-head{margin:var(--section-y) 0 22px}
.myteamacs-article__body .vd-sec-head .vd-h2{margin:0}
.vd-h2--center{text-align:center}
.vd-hero-full.vd-hero-full--home{min-height:clamp(420px,38vw,560px)}
/* Shorter home hero: anchor the photo to its bottom edge so the extra crop comes off the top (smoke), not the tobacco pile. */
@media(min-width:701px){.vd-hero-full.vd-hero-full--home .vd-hero-full__bg{object-position:center 100%}}
@media(max-width:700px){.vd-hero-full.vd-hero-full--home{min-height:440px} .vd-hero-full.vd-hero-full--home .vd-hero-full__bg{object-position:70% 70%} .vd-hero-full__more{display:none}}
.vd-hero-full__content .vd-hero-full__eyebrow{font-size:clamp(1rem,1.6vw,1.35rem);font-weight:500;font-style:italic;color:var(--muted);margin:0 0 6px}
.vd-hero-full.vd-hero-full--home .vd-hero-full__content h1{font-size:clamp(2.6rem,6vw,4.6rem);font-weight:800;font-style:italic;letter-spacing:-.02em;max-width:none;margin-left:-.14em}
/* -.14em pulls the italic T back so its stem lines up with the eyebrow/paragraph edge. */
.vd-hero-full.vd-hero-full--home .vd-hero-full__content p{max-width:52ch}
.vd-icons br,.vd-types br,.vd-reviews br{display:none}
.vd-icons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.vd-icon{display:flex;flex-direction:column;align-items:center;gap:14px;padding:28px 16px 22px;background:var(--surface);border:1px solid var(--border-color);border-radius:var(--r-lg);text-decoration:none;color:var(--text-strong);box-shadow:var(--shadow-card);transition:transform .16s ease,box-shadow .2s ease,border-color .2s ease}
.vd-icon:hover{transform:translateY(-3px);border-color:var(--accent);color:var(--accent);text-decoration:none}
.vd-icon img{width:96px;height:96px;display:block}
.vd-icon span{font-size:1.05rem;font-weight:700;text-decoration:underline;text-underline-offset:4px;text-align:center}
.vd-types{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.vd-type{display:flex;align-items:center;gap:20px;padding:22px 24px;background:var(--surface);border:1px solid var(--border-color);border-radius:var(--r-lg);box-shadow:var(--shadow-card);text-decoration:none;color:var(--text-strong);transition:transform .16s ease,border-color .2s ease}
.vd-type:hover{transform:translateY(-3px);border-color:var(--accent);text-decoration:none}
.vd-type img{width:84px;height:84px;flex:0 0 auto}
.vd-type__t{display:block;font-size:1.25rem;font-weight:700;margin-bottom:4px}
.vd-type__d{display:block;font-size:.98rem;color:var(--muted);text-decoration:underline;text-underline-offset:3px}
.vd-products ul.products{margin-top:4px !important}
.vd-stars{text-align:center;color:#F5A623;font-size:1.6rem;letter-spacing:4px;margin:-8px 0 18px}
.vd-cats--slider.vd-reviews > .vd-review{flex:0 0 calc((100% - 2*18px)/3);scroll-snap-align:start;display:flex;flex-direction:column;justify-content:space-between;gap:14px;padding:24px;background:var(--surface);border:1px solid var(--border-color);border-radius:var(--r-lg);box-shadow:var(--shadow-card)}
.vd-review p{margin:0;font-size:1rem;line-height:1.7;color:var(--text)}
.vd-review strong{font-size:.95rem;color:var(--text-strong)}
.vd-review strong::before{content:"★★★★★";display:block;color:#F5A623;letter-spacing:2px;font-size:.85rem;margin-bottom:4px}
.vd-newsletter{width:100vw;margin:var(--section-y) calc(50% - 50vw) 0;padding:56px 20px;background:var(--accent-tint);text-align:center}
.vd-newsletter__inner{max-width:640px;margin:0 auto}
.myteamacs-article__body .vd-newsletter .vd-h2{margin:0 0 8px}
.vd-newsletter__sub{color:var(--text);font-size:1.05rem;margin:0 0 18px}
.vd-newsletter__note{font-size:.85rem;color:var(--muted);margin:14px 0 0}
.vd-newsletter .mailpoet_form{text-align:left}
.vd-newsletter .mailpoet_paragraph{margin:0 0 10px}
.vd-newsletter input.mailpoet_text{width:100%;height:52px;border:1px solid var(--border-color-2) !important;border-radius:var(--r-sm) !important;padding:0 16px !important;font:inherit !important;font-size:16px !important;background:#fff}
.vd-newsletter input.mailpoet_submit{width:100%;height:52px;border:0 !important;border-radius:var(--r-sm) !important;background:var(--accent) !important;color:#fff !important;font:inherit !important;font-weight:600 !important;font-size:16px !important;cursor:pointer}
.vd-newsletter input.mailpoet_submit:hover{background:var(--accent-hover) !important}
@media(max-width:900px){.vd-cats--slider.vd-reviews > .vd-review{flex-basis:calc((100% - 18px)/2)}}
@media(max-width:700px){
	.vd-icons{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
	.vd-icon{padding:20px 12px 16px}
	.vd-icon img{width:72px;height:72px}
	.vd-icon span{font-size:.95rem}
	.vd-types{grid-template-columns:1fr;gap:14px}
	.vd-type{padding:18px}
	.vd-type img{width:64px;height:64px}
	.vd-newsletter{padding:40px 16px}
}
@media(max-width:560px){.vd-cats--slider.vd-reviews > .vd-review{flex-basis:88%}}

/* ---------- Site notice modal ---------- */
.vd-notice{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:20px}
.vd-notice[hidden]{display:none}
.vd-notice__backdrop{position:absolute;inset:0;background:rgba(26,26,26,.55);backdrop-filter:blur(2px)}
.vd-notice__card{position:relative;width:min(560px,100%);max-height:calc(100vh - 40px);overflow:auto;background:var(--surface);
	border-radius:16px;border:1px solid var(--mta-border);box-shadow:0 24px 60px rgba(0,0,0,.25);padding:32px 32px 28px;
	animation:vd-notice-in .2s ease-out}
.vd-notice__card::before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:var(--accent);border-radius:16px 16px 0 0}
.vd-notice__x{position:absolute;top:12px;right:12px;width:36px;height:36px;border-radius:50%;border:1px solid var(--mta-border);
	background:var(--surface);color:var(--text);font-size:22px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
.vd-notice__x:hover{border-color:var(--accent);color:var(--accent)}
.vd-notice__tag{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);
	background:var(--accent-tint);padding:4px 10px;border-radius:999px;margin:4px 0 12px}
.vd-notice__title{font-size:1.4rem;line-height:1.25;margin:0 0 12px;color:var(--text-strong)}
.vd-notice__body p{margin:0 0 12px;font-size:1rem;line-height:1.65;color:var(--text)}
.vd-notice__body strong{color:var(--text-strong)}
.vd-notice__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
html.vd-notice-open{overflow:hidden}
@keyframes vd-notice-in{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.vd-notice__card{animation:none}}
@media(max-width:600px){
	.vd-notice__card{padding:26px 20px 22px}
	.vd-notice__title{font-size:1.2rem}
	.vd-notice__actions .myteamacs-btn{flex:1 1 auto}
}
@media(max-width:600px){
	.vd-slider__btn{width:38px;height:38px;top:calc(50% - 19px)}
	.vd-slider__btn--prev{left:-6px}
	.vd-slider__btn--next{right:-6px}
}
.vd-cat{display:flex;flex-direction:column;border:1px solid var(--mta-border);border-radius:var(--mta-radius);
	overflow:hidden;background:var(--mta-surface);text-decoration:none;
	transition:transform .16s ease,box-shadow .2s ease,border-color .2s ease}
.vd-cat:hover{transform:translateY(-2px);box-shadow:var(--mta-shadow);border-color:var(--mta-purple-600);text-decoration:none}
.vd-cat__media{aspect-ratio:3/2;background:var(--bg);line-height:0;position:relative;overflow:hidden;container-type:inline-size}
.vd-cat__media img{width:100%;height:100%;object-fit:cover;display:block}
/* One line always: the font scales with the tile width (cqi), .6rem fallback where container units are unsupported. */
.vd-cat__warn{position:absolute;left:0;right:0;top:0;display:block;padding:6px 8px;white-space:nowrap;
	background:rgba(26,26,26,.82);color:#fff;font-size:.6rem;font-size:clamp(.56rem,3.6cqi,.72rem);font-weight:700;line-height:1.3;
	letter-spacing:.04em;text-transform:uppercase;text-align:center}
/* Narrow tiles: two readable lines instead of a tiny one-liner. */
@container (max-width:250px){.vd-cat__warn{white-space:normal;font-size:.62rem;line-height:1.25;padding:5px 8px;letter-spacing:.03em}}
/* Body is a 3-row grid: title / description / (price | button). The last row is 1fr so price and
   button sit on one line pinned to the card bottom, lining up across a row of cards. */
.vd-cat__body{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto 1fr;
	grid-template-areas:"t t" "d d" "price btn";column-gap:12px;flex:1;padding:14px 16px 16px}
.vd-cat__t{grid-area:t;margin:0 0 4px;font-size:1rem;font-weight:700;line-height:1.3;color:var(--mta-ink)}
.vd-cat__d{grid-area:d;margin:0;font-size:.88rem;line-height:1.5;color:var(--mta-muted)}
.vd-cat__price{grid-area:price;align-self:end;margin:12px 0 0;font-size:.92rem;font-weight:600;
	line-height:34px;color:var(--mta-ink);white-space:nowrap}
.vd-cat__price--was{font-weight:500;color:var(--mta-muted);text-decoration:line-through;margin-right:6px}
.vd-cat__price--now{color:var(--accent)}
.vd-cat__btn{grid-area:btn;align-self:end;justify-self:end;display:inline-flex;align-items:center;justify-content:center;
	margin-top:12px;height:34px;padding:0 1.1em;border-radius:8px;background:var(--accent);color:#fff;
	font-size:.88rem;font-weight:600;line-height:1;white-space:nowrap;transition:background-color .18s ease}
.vd-cat:hover .vd-cat__btn{background:var(--accent-hover)}

.vd-usps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:26px 0 6px;padding:0;list-style:none}
/* Only the reset needs to out-rank the article's generic ul padding; keep column counts at low specificity so the breakpoints below win. */
.myteamacs-article__body .vd-usps{padding:0;margin-left:0;margin-right:0;list-style:none}
@media(max-width:820px){.vd-usps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:460px){.vd-usps{grid-template-columns:1fr}}
.myteamacs-article__body .vd-usps li,.vd-usps li{margin:0;display:flex;gap:12px;align-items:center;border:1px solid var(--mta-border);
	border-radius:var(--mta-radius-sm);padding:14px 16px;background:var(--mta-surface)}
.vd-usps__icon{flex:0 0 auto;width:38px;height:38px;border-radius:10px;background:var(--accent-tint);
	display:flex;align-items:center;justify-content:center;position:relative}
.vd-usps__icon::before{content:"";display:block;width:20px;height:20px;
	background-color:var(--accent);
	-webkit-mask:var(--vd-usp-icon) center/contain no-repeat;
	mask:var(--vd-usp-icon) center/contain no-repeat}
.vd-usps li:nth-child(1) .vd-usps__icon{--vd-usp-icon:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M3 7h11v9H3z'/><path d='M14 10h4l3 3v3h-7z'/><circle cx='7' cy='18' r='1.6'/><circle cx='17.5' cy='18' r='1.6'/></svg>")}
.vd-usps li:nth-child(2) .vd-usps__icon{--vd-usp-icon:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M13 2 4 14h6l-1 8 9-12h-6l1-8z'/></svg>")}
.vd-usps li:nth-child(3) .vd-usps__icon{--vd-usp-icon:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><rect x='5' y='11' width='14' height='9' rx='2'/><path d='M8 11V7a4 4 0 0 1 8 0v4'/></svg>")}
.vd-usps li:nth-child(4) .vd-usps__icon{--vd-usp-icon:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M4 5h16v11H9l-5 4V5z'/></svg>")}
.vd-usps__body{min-width:0}
.vd-usps strong{display:block;font-size:.95rem;color:var(--mta-ink);margin-bottom:3px}
.vd-usps__body > span{display:block;color:var(--mta-muted);font-size:.86rem;line-height:1.5}

/* Definition-style rows used by the ratings + buying guides. */
.vd-deflist{display:grid;gap:14px;margin:18px 0 22px;padding:0;list-style:none}
.myteamacs-article__body .vd-deflist li,.vd-deflist li{margin:0;border:1px solid var(--mta-border);
	border-left:3px solid var(--mta-purple-600);border-radius:var(--mta-radius-sm);padding:14px 18px;background:var(--mta-surface)}
.vd-deflist strong{display:block;color:var(--mta-ink);margin-bottom:4px}

/* ---------- Full-bleed hero (homepage) ----------
   Breaks out of the 1200px content container to run edge-to-edge, with the
   background photo covered by a left-to-right gradient so the headline/CTAs
   (anchored top-left) stay readable over busy image content. */
.vd-hero-full{position:relative;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);
	margin-top:-40px;min-height:clamp(320px,34vw,460px);overflow:hidden;margin-bottom:40px;background:var(--bg)}
.vd-hero-full__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 18%}
/* Light photo: a soft off-white fade on the left keeps the charcoal headline readable. */
.vd-hero-full__overlay{position:absolute;inset:0;
	background:linear-gradient(100deg,rgba(243,242,241,.94) 0%,rgba(243,242,241,.82) 28%,rgba(243,242,241,.35) 50%,rgba(243,242,241,0) 64%)}
.vd-hero-full__content{position:relative;z-index:2;max-width:1200px;height:100%;margin:0 auto;
	padding:clamp(48px,9vw,96px) clamp(20px,4vw,32px) clamp(32px,6vw,56px);
	display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;
	min-height:inherit;color:var(--text-strong);text-align:left}
.vd-hero-full__content h1{font-size:clamp(2rem,4.6vw,3.25rem);line-height:1.08;letter-spacing:-.02em;
	color:var(--text-strong);margin:0 0 16px;max-width:13ch}
.vd-hero-full__content p{font-size:clamp(1rem,1.6vw,1.15rem);line-height:1.6;color:var(--mta-ink-2,#3F3F46);
	margin:0 0 12px;max-width:42ch}
.vd-hero-full__content p.vd-hero-full__note{font-size:clamp(.92rem,1.3vw,1rem);color:var(--muted);margin-bottom:26px}
.vd-hero-full__actions{display:flex;flex-wrap:wrap;gap:14px}
.vd-hero-full__actions .myteamacs-btn--ghost{background:rgba(255,255,255,.7);border-color:var(--text-strong);color:var(--text-strong)}
.vd-hero-full__actions .myteamacs-btn--ghost:hover{background:#fff;border-color:var(--accent);color:var(--accent)}
@media(max-width:700px){
	.vd-hero-full{min-height:380px}
	.vd-hero-full__bg{object-position:70% 18%}
	.vd-hero-full__overlay{background:
		linear-gradient(180deg,rgba(243,242,241,.1) 0%,rgba(243,242,241,.42) 45%,rgba(243,242,241,.8) 100%)}
	.vd-hero-full__content{justify-content:flex-end;padding-top:28px;padding-bottom:64px}
	.vd-hero-full__content h1{max-width:none}
}
