/*
Theme Name: Groundhogg 2026
Theme URI: https://groundhogg.io/
Author: Groundhogg Inc.
Author URI: https://groundhogg.io/
Description: Lean PHP theme for groundhogg.io. No jQuery, no Tailwind, no build step, no block-theme wrapper markup.
Version: 0.1.1
Requires at least: 6.5
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: groundhogg-2026
*/

/* ==========================================================================
   Fonts (self-hosted variable fonts, see assets/fonts)
   ========================================================================== */
@font-face{font-family:"Bricolage Grotesque";src:url(assets/fonts/bricolage-grotesque.woff2) format("woff2");font-weight:200 800;font-style:normal;font-display:swap}
@font-face{font-family:Figtree;src:url(assets/fonts/figtree.woff2) format("woff2");font-weight:300 900;font-style:normal;font-display:swap}

/* ==========================================================================
   Tokens
   ========================================================================== */
:root{
	--navy:#1b2a4a;
	--navy-2:#3d4a63;
	--orange:#f7941d;
	--cream:#fff6ea;
	--soda:#ffe0b8;
	--sky:#f4f7fc;
	--blue:#e8f1ff;
	--mint:#d9f5e3;
	--mint-ink:#124a2a;
	--line:#c9cfda;
	--white:#fff;

	--font-display:"Bricolage Grotesque",ui-sans-serif,system-ui,sans-serif;
	--font-body:Figtree,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;

	--bw:3px;
	--wrap:1240px;
	--gutter:clamp(16px,4vw,32px);
	--space-section:clamp(64px,9vw,112px);
	--shadow:6px 6px 0 var(--navy);
	--shadow-lg:10px 10px 0 var(--navy);
}

/* WordPress preset variables that page content still references in inline styles */
:root{
	--wp--preset--spacing--20:.5rem;--wp--preset--spacing--30:.75rem;--wp--preset--spacing--40:1rem;--wp--preset--spacing--50:1.5rem;
	--wp--preset--spacing--60:2.25rem;--wp--preset--spacing--70:3.5rem;--wp--preset--spacing--80:5.25rem;
}
.has-small-font-size{font-size:.9375rem}
.has-medium-font-size{font-size:1.25rem}
.has-large-font-size{font-size:1.75rem}
.has-x-large-font-size{font-size:2.5rem}
.wp-block-buttons{display:flex;flex-wrap:wrap;gap:16px}
.wp-block-button__link{display:inline-flex;align-items:center;min-height:48px;padding:14px 24px;border:var(--bw) solid var(--navy);border-radius:14px;background:var(--white);color:var(--navy);font-weight:700;text-decoration:none}
.wp-block-button__link:hover{color:var(--navy)}

/* ==========================================================================
   Base
   ========================================================================== */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;margin:0;background:var(--white);color:var(--navy);font:400 1rem/1.5 var(--font-body)}
main{flex:1 0 auto}
.error404 main{display:flex;flex-direction:column}
.error404 .page-hero{flex:1;display:flex;flex-direction:column;justify-content:center}
img,svg,video{max-width:100%;height:auto}
a{color:inherit}
a:hover{color:#000}
p,figure,blockquote,ul,ol{margin:0}
h1,h2,h3,h4{margin:0;font-family:var(--font-display);font-weight:800;line-height:1.05;letter-spacing:-.02em;text-wrap:balance}
h1{font-size:clamp(2.75rem,7vw,6.25rem);line-height:.95;letter-spacing:-.03em}
h2{font-size:clamp(2.5rem,5vw,4rem);line-height:1}
h3{font-size:clamp(1.5rem,2.5vw,2.125rem);line-height:1.1}
:focus-visible{outline:3px solid var(--navy);outline-offset:3px}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.skip-link:focus{position:fixed;top:8px;left:8px;z-index:100;width:auto;height:auto;clip-path:none;padding:12px 16px;background:var(--white);border:var(--bw) solid var(--navy)}

/* ==========================================================================
   Layout
   ========================================================================== */
.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gutter)}
.section{padding-top:var(--space-section)}
.section--tight{padding-top:clamp(40px,6vw,64px)}
.section--band{margin-top:var(--space-section);padding-top:0;border-block:var(--bw) solid var(--navy)}
.section--band>.wrap{padding-block:clamp(56px,8vw,96px)}
.section--sky{background:var(--blue)}
.section--orange{background:var(--orange);border-bottom:0}
.split{display:flex;flex-wrap:wrap;gap:clamp(32px,5vw,64px);align-items:center}
.split>*{min-width:0}
.stack{display:flex;flex-direction:column;align-items:flex-start;gap:22px}
.lede{font-size:clamp(1.125rem,2vw,1.375rem);line-height:1.5;max-width:30em}
.link-strong{font-weight:700;font-size:1.0625rem}

/* ==========================================================================
   Components
   ========================================================================== */
.btn{display:inline-flex;align-items:center;min-height:48px;padding:18px 28px;border:var(--bw) solid var(--navy);border-radius:14px;background:var(--white);color:var(--navy);font:700 1.125rem/1 var(--font-body);text-decoration:none;cursor:pointer}
.btn:hover{color:var(--navy)}
.btn--primary{background:var(--orange);box-shadow:var(--shadow)}
.btn--dark{background:var(--navy);color:var(--white)}
.btn--dark:hover{color:var(--white)}
.btn--shadow-white{box-shadow:6px 6px 0 var(--white)}
.btn--sm{padding:12px 20px;border-radius:12px;font-size:1.0625rem}
.btn-row{display:flex;flex-wrap:wrap;gap:18px}

.pill{display:inline-block;padding:8px 18px;border:var(--bw) solid var(--navy);border-radius:999px;background:var(--white);font-weight:700;transform:rotate(-2deg)}
.tag{align-self:flex-start;padding:6px 12px;border-radius:999px;background:var(--mint);color:var(--mint-ink);font-size:.9375rem;font-weight:700}

.panel{background:var(--white);border:var(--bw) solid var(--navy);border-radius:20px;box-shadow:var(--shadow-lg)}
.window{overflow:hidden;background:var(--white);border:var(--bw) solid var(--navy);border-radius:16px;box-shadow:8px 8px 0 var(--navy)}
.window__bar{display:flex;gap:8px;padding:12px 16px;background:#eef1f6;border-bottom:2px solid var(--navy)}
.window__bar i{width:12px;height:12px;border-radius:50%;background:var(--line)}
.window__body{display:flex;align-items:center;justify-content:center;min-height:340px;padding:24px;text-align:center}

/* Placeholder for art that has not been supplied yet */
.ph{display:flex;align-items:center;justify-content:center;padding:16px;border:3px dashed #8a93a6;border-radius:18px;color:var(--navy-2);font-size:.9375rem;text-align:center}

/* ==========================================================================
   Header and mega menus
   ========================================================================== */
.site-header{position:relative;z-index:30;background:var(--white)}
.site-header>.wrap{display:flex;flex-wrap:wrap;gap:0 20px;align-items:center;justify-content:space-between}
.brand{display:block;padding-block:28px}
.nav{display:flex;gap:20px;align-items:center;font-size:1.0625rem;font-weight:500}
.nav a{text-decoration:none}
.nav__list{display:flex;gap:4px;align-items:center;margin:0;padding:0;list-style:none}
.nav__list>li{display:flex;align-items:center}
.nav__list>li>a{display:block;padding:28px 12px}
.nav__list>li>a:hover{text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:8px}
.nav-toggle,.mega-toggle{display:none;min-height:44px;padding:8px 16px;border:var(--bw) solid var(--navy);border-radius:12px;background:var(--white);color:var(--navy);font:700 1rem var(--font-body);cursor:pointer}

.has-mega{position:relative}
.mega{display:none;position:absolute;top:100%;left:-16px;z-index:40;padding-top:10px}
.has-mega:nth-last-child(-n+3) .mega{left:auto;right:-16px}
.has-mega:hover>.mega,.has-mega:focus-within>.mega,.has-mega.is-open>.mega{display:block}
.mega__panel{display:grid;grid-template-columns:minmax(220px,1fr) 250px;gap:24px;width:600px;padding:20px;background:var(--white);border:var(--bw) solid var(--navy);border-radius:16px;box-shadow:var(--shadow)}
.mega__links ul{margin:0;padding:0;list-style:none}
.mega__links li a{display:block;padding:10px 14px;border-radius:8px;font-weight:600}
.mega__links li a:hover{background:var(--cream)}
.mega__all{display:inline-block;margin:10px 14px 0;padding-top:12px;border-top:2px dashed var(--line);font-weight:800}
.mega__promo{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:18px;border:var(--bw) solid var(--navy);border-radius:14px;background:var(--orange)}
.mega__promo p{font-size:.9375rem;line-height:1.35}
.mega__promo-title{font:800 1.25rem/1.1 var(--font-display)}
.mega__promo .btn{margin-top:auto}
/* A menu with several link groups (Features and add-ons) is wider, so it is anchored to the nav's right edge */
.nav{position:relative}
.has-mega--wide{position:static}
.has-mega--wide .mega{left:auto;right:0}
.mega--groups .mega__panel{grid-template-columns:1fr 1fr 240px;width:min(840px,calc(100vw - 48px))}
.mega__title{margin:0 14px 6px;color:var(--navy-2);font:800 .8125rem/1.2 var(--font-body);letter-spacing:.08em;text-transform:uppercase}
.nav-toggle .avatar{margin-right:8px}
.nav__login{font-weight:700}
.nav__login:hover{text-decoration:underline!important;text-decoration-thickness:3px!important;text-underline-offset:6px}
.nav__account{display:flex;align-items:center;gap:8px;position:relative}
.nav__account .btn{gap:8px}
.avatar{display:inline-grid;flex:none;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--navy);color:var(--white);font:800 .875rem/1 var(--font-display)}
.mega--account .mega__panel{grid-template-columns:1fr;width:260px}
.mega__who{margin:0 14px 8px;padding-bottom:10px;border-bottom:2px dashed var(--line);font-size:.9375rem}

@media (max-width:900px){
	.nav-toggle{display:inline-flex;align-items:center}
	.nav{display:none;flex-basis:100%;flex-direction:column;align-items:stretch;gap:16px;padding-bottom:20px}
	.nav.is-open{display:flex}
	.nav__list{flex-direction:column;align-items:stretch;gap:0}
	.nav__list>li{flex-wrap:wrap;justify-content:space-between}
	.nav__list>li>a{flex:1;padding:12px 0}
	.mega-toggle{display:inline-flex;align-items:center;justify-content:center;min-width:44px;padding:8px}
	.mega-toggle::before{content:"";width:10px;height:10px;margin-top:-4px;border:solid var(--navy);border-width:0 3px 3px 0;transform:rotate(45deg)}
	.mega-toggle[aria-expanded=true]::before{margin-top:4px;transform:rotate(225deg)}
	.mega{position:static;flex-basis:100%;padding-top:0}
	.has-mega:nth-last-child(-n+3) .mega{right:auto}
	.has-mega:hover>.mega,.has-mega:focus-within>.mega{display:none}
	.has-mega.is-open>.mega{display:block}
	.mega__panel{grid-template-columns:1fr;gap:12px;width:auto;padding:8px 0 16px;border:0;box-shadow:none;background:none}
	.mega--groups .mega__panel{grid-template-columns:1fr;width:auto}
	.has-mega--wide .mega{right:auto}
	.mega__title{margin-left:0}
	.nav__account{flex-wrap:wrap;justify-content:space-between}
	.mega--account .mega__panel{width:auto}
}

/* ==========================================================================
   Footer
   ========================================================================== */
.site-footer{background:var(--navy);color:#e6eaf2}
.site-footer a{color:var(--white)}
.site-footer .btn{color:var(--navy)}
.site-footer ul{margin:0;padding:0;list-style:none}
.site-footer h2{color:var(--orange);font-size:1.125rem;line-height:1.2;letter-spacing:0}
.site-footer .brand{padding-block:0}
.site-footer__top{display:grid;grid-template-columns:repeat(2,1fr);gap:32px 24px;padding-block:48px 32px}
@media (min-width:640px) and (max-width:999px){.site-footer__top{grid-template-columns:repeat(4,1fr)}}
.site-footer__about{grid-column:1/-1;display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.site-footer__pitch{max-width:26em;font-size:1.125rem;line-height:1.4;color:var(--white)}
.site-footer__soft{max-width:30em;font-size:.9375rem;color:#c9d2e6}
.site-footer .btn--sm{padding:12px 18px;white-space:nowrap}
.site-footer__about .btn-row{gap:14px}
.site-footer .btn--sm:not(.btn--primary){background:transparent;border-color:var(--white);color:var(--white)}
.site-footer .btn--primary{color:var(--navy)}
@media (min-width:1000px){
	.site-footer__top{grid-template-columns:2.1fr repeat(4,1fr);gap:32px}
	.site-footer__about{grid-column:auto}
}
.site-footer__trust{display:flex;flex-wrap:wrap;gap:20px 40px;align-items:center;padding-block:28px;border-top:2px solid var(--navy-2)}
.site-footer__proof{display:flex;gap:14px;align-items:center;font-size:.9375rem;line-height:1.35;color:#c9d2e6}
.site-footer__proof strong{color:var(--white)}
.site-footer__proof img{flex:none;width:auto;height:48px}
.site-footer__bottom{display:flex;flex-wrap:wrap;gap:12px 32px;align-items:center;justify-content:space-between;padding-block:20px 28px;border-top:2px solid var(--navy-2)}
.site-footer__legal{margin:0;color:#aeb8cc;font-size:.875rem}
.site-footer__links{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:.875rem}
.site-footer__col li+li{margin-top:8px}
.site-footer__col h2{margin-bottom:14px}


/* ==========================================================================
   Home
   ========================================================================== */
.vp{margin-top:0;overflow:hidden}
.vp>.wrap{padding-block:clamp(48px,6vw,80px) 0}
.vp__copy{align-items:center;max-width:56rem;margin-inline:auto;text-align:center}
.vp__copy h1{font-size:clamp(2.5rem,6vw,5rem)}
.vp__copy .lede{max-width:40rem}
.vp__copy .btn-row{justify-content:center}
.vp__pills{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:28px 0 0;padding:0;list-style:none}
.vp__pills .pill{transform:rotate(var(--r));font-size:.9375rem;white-space:nowrap}
.pill--orange{background:var(--orange)}
.pill--mint{background:var(--mint)}
.pill--cream{background:var(--cream)}
@media (max-width:720px){.vp__pills li:nth-child(n+5){display:none}}
@media (min-width:1240px){
	.vp>.wrap{position:relative}
	.vp__pills{display:block;position:absolute;inset:0;margin:0;pointer-events:none}
	.vp__pills li{position:absolute;left:var(--x);right:var(--rx,auto);top:var(--y);box-shadow:3px 3px 0 var(--navy);font-size:1.0625rem}
}
/* Hero gallery: overlapping, tilted screenshots. Hover or focus brings one to the front and grows it (see $vp_tiles in front-page.php). */
.vp__gallery{position:relative;max-width:1120px;margin:clamp(32px,5vw,56px) auto clamp(24px,4vw,48px);padding:0;list-style:none;aspect-ratio:1120/600}
.vp__tile{position:absolute;left:var(--x);top:var(--y);width:var(--w);z-index:var(--z);cursor:zoom-in;transform:rotate(var(--r));transform-origin:var(--o,50% 50%);transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s}
.vp__tile img{display:block;width:100%;height:auto}
.vp__tile:is(:hover,:focus-visible){z-index:20;box-shadow:var(--shadow-lg);transform:rotate(0) scale(1.3)}
.vp__tile:focus-visible{outline:var(--bw) solid var(--orange);outline-offset:4px}
.vp__label{position:absolute;left:12px;bottom:12px;font-size:.875rem;opacity:0;transform:translateY(6px);transition:opacity .3s,transform .3s}
.vp__tile:is(:hover,:focus-visible) .vp__label{opacity:1;transform:none}
@media (max-width:720px){
	.vp__gallery{display:flex;gap:20px;margin-inline:calc(var(--gutter) * -1);padding:8px var(--gutter) 28px;overflow-x:auto;aspect-ratio:auto;scroll-snap-type:x mandatory}
	.vp__tile{position:relative;left:auto;top:auto;width:auto;flex:0 0 82%;cursor:auto;transform:none;scroll-snap-align:center}
	.vp__tile:is(:hover,:focus-visible){transform:none;box-shadow:var(--shadow)}
	.vp__label{opacity:1;transform:none}
}
@media (prefers-reduced-motion:reduce){.vp__tile,.vp__label{transition:none}}
.hero{padding-block:72px 96px}
.hero__title{font-size:clamp(2.75rem,7vw,6.25rem);line-height:.95;letter-spacing:-.03em}
.hero__copy{flex:1 1 540px}
.hero__art{flex:1 1 420px;display:flex;flex-direction:column;align-items:center}
.hero__art .ph{width:180px;height:120px;border-bottom:0;border-radius:90px 90px 0 0;background:var(--cream)}
.hero__note{color:var(--navy-2)}

.calc{width:100%;max-width:460px;padding:26px 28px;display:flex;flex-direction:column;gap:18px}
.calc__title{font:800 1.625rem/1.1 var(--font-display)}
.calc__sizes{display:flex;flex-wrap:wrap;gap:8px}
.calc__sizes button{min-height:44px;padding:10px 14px;border:2px solid var(--navy);border-radius:10px;background:var(--white);color:var(--navy);font:700 .9375rem var(--font-body);cursor:pointer}
.calc__sizes button[aria-pressed=true]{background:var(--orange)}
.calc__rows{margin:0;padding:0;list-style:none}
.calc__rows li{display:flex;justify-content:space-between;gap:16px;padding:12px 4px;border-bottom:2px dashed var(--line);font-size:1.125rem}
.calc__rows li:last-child{border-bottom:0}
.calc__rows .is-us{font-size:1.375rem;font-weight:800}
.calc__rows span:last-child{font-variant-numeric:tabular-nums}
.calc__saving{padding:14px 16px;border-radius:12px;background:var(--mint);color:var(--mint-ink);font-size:1.125rem;font-weight:700}

.switched{border-block:var(--bw) solid var(--navy);background:var(--cream)}
.switched p{padding-block:26px;font-size:1.1875rem;text-align:center}

.section-head h2{max-width:14em}
.section-head p{margin-top:14px;font-size:1.25rem;max-width:34em}

.tabs{margin-top:40px}
.tablist{display:none;flex-wrap:wrap;gap:10px;margin-bottom:28px}
.tabs.is-ready .tablist{display:flex}
.tablist button{min-height:48px;padding:12px 20px;border:var(--bw) solid var(--navy);border-radius:999px;background:var(--white);color:var(--navy);font:700 1.0625rem var(--font-body);cursor:pointer}
.tablist button[aria-selected=true]{background:var(--orange);box-shadow:4px 4px 0 var(--navy)}
.tabpanel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.7fr);gap:32px 48px;align-items:start;padding:clamp(24px,4vw,40px);border:var(--bw) solid var(--navy);border-radius:24px;background:var(--sky)}
.tabpanel[hidden]{display:none}
.tabs:not(.is-ready) .tabpanel+.tabpanel{margin-top:24px}
.tabpanel__copy{grid-column:1;grid-row:1;align-self:center;display:flex;flex-direction:column;gap:18px;min-width:0}
.tabpanel__shot~.tabpanel__copy{grid-row:1 / span 2}
.tabpanel__copy p{font-size:1.1875rem;line-height:1.55}
.tabpanel .window{flex:1.4 1 420px;min-width:0}
.tabpanel .tabpanel__shot{grid-column:2;grid-row:1;margin:0}
.tabpanel__shot img{display:block;width:100%;height:auto}
.tabfeatures{grid-column:2;grid-row:1;min-width:0;display:grid;grid-template-columns:1fr;margin:0;padding:0;list-style:none}
.tabpanel__shot~.tabfeatures{grid-row:2}
@media (max-width:900px){.tabpanel{grid-template-columns:minmax(0,1fr)}.tabpanel>*{grid-column:1!important;grid-row:auto!important}}
.tabfeatures a{display:flex;gap:14px;align-items:center;padding:12px 10px;border-bottom:2px dashed var(--navy);text-decoration:none}
.tabfeatures li:first-child a{border-top:2px dashed var(--navy)}
.tabfeatures a:hover{background:var(--white)}
.tabfeatures img{flex:none;width:40px;height:40px;object-fit:contain}
@media (min-width:1100px){.tabfeatures{grid-template-columns:1fr 1fr;column-gap:24px}.tabfeatures li:nth-child(2) a{border-top:2px dashed var(--navy)}.tabfeatures .findex__txt small{display:none}.tabfeatures a{padding-block:16px}.tabfeatures strong{font-size:1.0625rem}}

.ai-list{display:flex;flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;font-size:1.125rem;line-height:1.45}
.ai-list li{display:flex;gap:12px;align-items:flex-start}
.ai-list svg{flex:none;margin-top:2px}
.chat{display:flex;flex-direction:column;gap:16px;padding:28px;border-radius:22px}
.chat p{max-width:85%;padding:14px 18px;font-size:1.0625rem;line-height:1.45}
.chat .me{align-self:flex-end;border-radius:18px 18px 4px 18px;background:var(--navy);color:var(--white)}
.chat .ai{align-self:flex-start;border:2px solid var(--line);border-radius:18px 18px 18px 4px;background:var(--sky)}
.ai-art{position:relative;padding-top:40px}
.ai-art .ph{position:absolute;top:-40px;right:10px;z-index:1;width:170px;height:120px;background:var(--white);border-color:#4a5d85;transform:rotate(4deg)}

.values{display:flex;flex-wrap:wrap;gap:32px}
.values>*{border-radius:28px}
.value-main{flex:1.3 1 480px;display:flex;flex-direction:column;gap:20px;padding:clamp(28px,4vw,48px);background:var(--navy);color:#e6eaf2}
.value-main h2{color:var(--orange);font-size:3rem}
.value-main p{font-size:1.1875rem;line-height:1.55}
.value-main a{color:var(--white)}
.value-main .ph{height:200px;border-color:#8fa0c4;color:#c9d2e6}
.value-side{flex:1 1 360px;display:flex;flex-direction:column;gap:32px}
.value-card{flex:1 1 auto;display:flex;flex-direction:column;gap:14px;padding:clamp(24px,3vw,36px);border:var(--bw) solid var(--navy);border-radius:28px}
.value-card p{font-size:1.125rem;line-height:1.55}
.value-card--orange{background:var(--orange)}

.quotes{display:flex;flex-wrap:wrap;gap:36px;align-items:flex-start;margin-top:48px}
.quote{flex:1 1 320px;min-width:0;display:flex;flex-direction:column;gap:18px;padding:30px;border:var(--bw) solid var(--navy);border-radius:22px;background:var(--white);box-shadow:8px 8px 0 var(--navy)}
.quote blockquote{font-size:1.25rem;line-height:1.45}
.quote:nth-child(1){transform:rotate(-1.5deg)}
.quote:nth-child(2){margin-top:24px;background:var(--cream)}
.quote:nth-child(3){transform:rotate(1.5deg)}

.grant{display:flex;flex-wrap:wrap;gap:32px;align-items:center;justify-content:space-between;padding:clamp(24px,4vw,40px) clamp(24px,4vw,48px);border:var(--bw) dashed var(--navy);border-radius:28px}
.grant__copy{flex:1 1 480px;display:flex;flex-direction:column;gap:10px}
.grant__copy h2{font-size:2.375rem;line-height:1.1}
.grant__copy p{font-size:1.1875rem}

.cta h2{font-size:clamp(2.75rem,6vw,5rem);line-height:.95}
.cta .stack{flex:1 1 520px}
.cta .ph{flex:1 1 360px;height:300px;border-color:var(--navy);border-radius:24px;background:var(--white)}

/* ==========================================================================
   Page hero, content layout, prose
   ========================================================================== */
.page-hero{background:var(--white);border-bottom:var(--bw) solid var(--navy)}
.page-hero .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,400px);column-gap:clamp(32px,5vw,64px);row-gap:20px;align-content:center;justify-items:start;padding-block:clamp(48px,7vw,96px)}
.page-hero .wrap>*{grid-column:1;min-width:0}
.page-hero .wrap>.page-hero__art{grid-column:2;grid-row:1/span 6;justify-self:center}
.page-hero:not(:has(.page-hero__art)) .wrap{grid-template-columns:minmax(0,60rem)}
.page-hero h1{font-size:clamp(2.75rem,6.5vw,5.5rem);line-height:.95;letter-spacing:-.03em}
.page-hero .lede{max-width:32em}
.page-hero__icon{width:80px;height:80px;object-fit:contain}
.page-hero__art{width:100%;max-width:460px;height:auto}
@media (max-width:800px){.page-hero .wrap{grid-template-columns:minmax(0,1fr)!important}.page-hero .wrap>.page-hero__art{grid-column:1;grid-row:auto;max-width:300px}}


.layout{display:grid;grid-template-columns:minmax(0,1fr);gap:48px;padding-block:var(--space-section)}
.layout--toc{align-items:start}
@media (min-width:900px){.layout--toc{grid-template-columns:260px minmax(0,1fr)}}
.toc{position:sticky;top:24px;font-size:1rem;line-height:1.8}
.toc h2{margin-bottom:12px;font-size:1.125rem}
.toc ul{margin:0;padding:0;list-style:none}
.toc .toc__l3{padding-left:16px}

.prose{max-width:46rem;font-size:1.0625rem;line-height:1.65}
.prose>*+*{margin-top:1.25em}
.prose h1{margin-bottom:.5em}
.prose h2,.prose h3{margin-top:1.75em;scroll-margin-top:24px}
.prose h2{font-size:clamp(1.75rem,3vw,2.25rem)}
.prose h3{font-size:clamp(1.375rem,2.2vw,1.625rem)}
.prose ul,.prose ol{padding-left:1.4em}
.prose li+li{margin-top:.4em}
.prose a{text-decoration-thickness:2px;text-underline-offset:3px}
.prose img{border-radius:12px}
.prose blockquote{padding-left:1.25em;border-left:var(--bw) solid var(--orange);font-size:1.25rem}
.prose pre,.prose code{font-size:.9375em}
.prose pre{overflow-x:auto;padding:16px;border-radius:12px;background:var(--sky)}
.prose table{width:100%;border-collapse:collapse}
.prose th,.prose td{padding:10px 12px;border-bottom:2px solid var(--line);text-align:left}
.prose .btn-row{margin-top:2em}

.reveal{margin-top:2em;padding:20px 24px;border:var(--bw) solid var(--navy);border-radius:20px}
.reveal summary{cursor:pointer;font-weight:700}
.reveal__body{margin-top:16px}

.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:32px;margin-top:40px}
.card{display:flex;flex-direction:column;overflow:hidden;border:var(--bw) solid var(--navy);border-radius:20px;background:var(--cream);box-shadow:var(--shadow)}
.card__media img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-bottom:var(--bw) solid var(--navy)}
.card__body{flex:1;display:flex;flex-direction:column;gap:10px;padding:24px 24px 12px}
.card__title{font-size:1.375rem}
.card__title--cap{text-transform:capitalize}
.card__title a{text-decoration:none}
.card__foot{padding:12px 24px 24px}

.meta{font-size:.9375rem;color:var(--navy-2)}
.meta a{color:inherit}
.crumbs{font-size:.9375rem;font-weight:700}
.page-hero--left .wrap{align-items:flex-start;text-align:left}
.toc__related{margin-bottom:32px}
.toc__related ul{margin:0;padding:0;list-style:none}
.toc__related li+li{margin-top:4px}

.nav-links{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:48px}
.nav-links .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 14px;border:var(--bw) solid var(--navy);border-radius:12px;font-weight:700;text-decoration:none}
.nav-links .page-numbers.current{background:var(--orange)}
.nav-links .dots{border-color:transparent}

.search-form{display:flex;flex-wrap:wrap;gap:12px}
.search-form label{flex:1 1 260px}
.search-field{width:100%;min-height:48px;padding:10px 16px;border:var(--bw) solid var(--navy);border-radius:12px;font:inherit}
.search-submit{min-height:48px;padding:10px 20px;border:var(--bw) solid var(--navy);border-radius:12px;background:var(--orange);color:var(--navy);font:700 1rem var(--font-body);cursor:pointer}

.cta__art{flex:0 1 360px;height:auto}

.section-head--center{text-align:center}
.section-head--center h2{margin-inline:auto}
.section-head--center .lede{margin:14px auto 0}
.hl{color:var(--orange);-webkit-text-stroke:.07em var(--navy);paint-order:stroke fill;text-shadow:.055em .055em 0 var(--navy)}
.hl-alt{text-decoration:underline wavy var(--orange) 4px;text-underline-offset:8px}

.split--reverse{flex-direction:row-reverse}
.split__art{flex:1 1 340px;max-width:540px;height:auto}
.split__copy{flex:1 1 420px}
.split__copy h2{font-size:clamp(2rem,4vw,3rem)}

.faq{display:flex;flex-direction:column;gap:20px;max-width:56rem;margin-inline:auto}
.faq__item{padding:20px 24px;border:var(--bw) solid var(--navy);border-radius:16px;background:var(--cream);box-shadow:4px 4px 0 var(--navy)}
.faq__item[open]{background:var(--white)}
.faq__item summary{cursor:pointer;font:800 1.25rem/1.3 var(--font-display)}
.faq__item .prose{margin-top:12px}

.table-wrap{overflow-x:auto;margin-bottom:40px;border:var(--bw) solid var(--navy);border-radius:16px;background:var(--white)}
.data-table{width:100%;border-collapse:collapse;font-size:1.0625rem}
.data-table caption{padding:16px 20px;text-align:left;font:800 1.5rem/1.1 var(--font-display);border-bottom:var(--bw) solid var(--navy)}
.data-table th,.data-table td{padding:12px 20px;border-bottom:2px solid var(--line);text-align:left}
.data-table thead th{background:var(--cream)}
.data-table tbody tr:last-child>*{border-bottom:0}
.data-table td.save{font-weight:700;color:var(--mint-ink)}
.data-table--features{table-layout:fixed}
.data-table--features thead th:first-child,.data-table--features tbody th{width:44%}
.data-table--features thead th:not(:first-child){text-align:center}
.data-table--features td{text-align:center}
.data-table--features .is-yes{background:var(--mint);color:var(--mint-ink);font-weight:700}
.data-table--features .is-no{color:#8a1c1c;font-weight:700}

/* ==========================================================================
   Sections used by converted page content
   ========================================================================== */
.page-content{padding-bottom:var(--space-section)}
.page-content:has(>.section--band:last-child){padding-bottom:0}
.page-content>*:not(section,header,.alignfull,.wp-block-html){max-width:46rem;margin-inline:auto;padding-inline:var(--gutter)}
.page-content>:first-child:not(section,header){margin-top:48px}

/* Core blocks that survive in page content */
.page-content :is(.alignfull,.wp-block-group__inner-container)>*:not(section,header,.alignfull,.wp-block-html,.wp-block-group__inner-container,.wp-block-columns){max-width:46rem;margin-inline:auto;padding-inline:var(--gutter)}
.page-content .alignfull h2{font-size:clamp(1.75rem,3vw,2.5rem)}
.page-content .wp-block-group>*+*,.page-content .wp-block-group__inner-container>*+*{margin-top:1.1em}
.page-content .wp-block-group h2{font-size:clamp(1.75rem,3vw,2.5rem);margin-top:1.75em}
.page-content .has-text-align-center{text-align:center}
.page-content h1.display-heading{font-size:clamp(2.5rem,5vw,3.5rem)}
.page-content :is(.alignfull,.wp-block-group__inner-container,.wp-block-group)>.wp-block-columns{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gutter)}
.page-content>.wp-block-group:has(.wp-block-columns){max-width:none;padding-inline:0}
.page-content .wp-block-group__inner-container:has(>.wp-block-columns)>:not(.wp-block-columns){max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gutter)}
.page-content .wp-block-columns{display:flex;flex-wrap:wrap;gap:32px}
.page-content .wp-block-column{flex:1 1 280px;min-width:0}
.page-content .wp-block-search__inside-wrapper{display:flex;flex-wrap:wrap;gap:12px}
.page-content .wp-block-search__input{flex:1 1 260px;min-height:48px;padding:10px 16px;border:var(--bw) solid var(--navy);border-radius:12px;font:inherit}
.page-content .wp-block-search__button{min-height:48px;padding:10px 20px;border:var(--bw) solid var(--navy);border-radius:12px;background:var(--orange);color:var(--navy);font:700 1rem var(--font-body);cursor:pointer}
.hidethis{display:none}

.plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:24px;align-items:stretch}
.plan{position:relative;display:flex;flex-direction:column;gap:12px;padding:28px 24px;border:var(--bw) solid var(--navy);border-radius:20px;background:var(--white)}
.plan--popular{background:var(--cream);box-shadow:var(--shadow-lg)}
.plan__flag{position:absolute;top:-16px;left:24px;padding:4px 14px;border:var(--bw) solid var(--navy);border-radius:999px;background:var(--orange);font-size:.875rem;font-weight:800}
.plan__title{font-size:1.75rem}
.plan__price strong{font:800 clamp(2.5rem,4vw,3.25rem)/1 var(--font-display)}
.plan__price span{font-weight:700}
.plan__note{color:var(--navy-2);font-size:.9375rem}
.plan .btn{justify-content:center;margin-block:8px}
.plan__list h4{margin-bottom:8px;font-size:1rem;letter-spacing:0}
.plan__list ul{margin:0;padding:0;list-style:none}
.plan__list li{padding:6px 0 6px 28px;border-top:2px dashed var(--line);background:no-repeat left 8px center/16px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231b2a4a' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12l5 5L20 6'/%3E%3C/svg%3E")}
.plan__list+.plan__list{margin-top:8px}

.cards--cta{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}
.card--primary{background:var(--orange)}
.cards--features{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr))}
.card__icon{width:48px;height:48px;object-fit:contain}

.icon-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:24px;margin:0;padding:0;list-style:none;text-align:center}
.icon-row li,.icon-row a{display:flex;flex-direction:column;align-items:center;gap:10px;font-weight:700;text-decoration:none}
.icon-row__img{width:72px;height:72px;object-fit:contain}

.screencaps{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:32px}
.screencaps .window img{display:block;width:100%;height:auto}

.tabpanel__icon{flex:0 0 120px;width:120px;height:auto}

.byline{display:flex;gap:12px;align-items:center;margin-top:4px}
.byline img{width:48px;height:48px;border-radius:50%}
/* Video and text testimonials mixed in one wall */
.quotes--mixed{display:block;column-count:3;column-gap:32px;margin-top:48px}
.quotes--mixed .quote{display:inline-flex;width:100%;margin:0 0 32px;break-inside:avoid;box-shadow:var(--shadow);}
.quotes--mixed>.quote:nth-child(n){margin-top:0}
.quotes--mixed>.quote:nth-child(3n+1){transform:rotate(-1.4deg)}
.quotes--mixed>.quote:nth-child(3n+2){transform:rotate(1.2deg)}
.quotes--mixed>.quote:nth-child(3n){transform:rotate(-.6deg)}
.quotes--mixed .tag{align-self:flex-start}
.quotes--mixed>.quote:nth-child(3n+1){background:var(--white)}
.quotes--mixed>.quote:nth-child(3n+2){background:var(--cream)}
.quotes--mixed>.quote:nth-child(3n){background:var(--blue)}
.quotes--mixed h3{font-size:1.375rem}
@media (max-width:1000px){.quotes--mixed{column-count:2}}
@media (max-width:640px){.quotes--mixed{column-count:1}.quotes--mixed>.quote:nth-child(n){transform:none}}

.video{aspect-ratio:16/9;overflow:hidden;border:var(--bw) solid var(--navy);border-radius:12px;background:var(--navy)}
.video iframe{display:block;width:100%;height:100%;border:0}

.prose--center{margin-inline:auto}
.prose--center .lede{max-width:none}
.callout{padding:20px 24px;border:var(--bw) solid var(--navy);border-radius:16px;background:var(--cream);box-shadow:var(--shadow);font-size:1.25rem;font-style:italic}
.cards--steps{margin-block:40px}
.card__num{margin-bottom:4px;font:800 2.5rem/1 var(--font-display);color:var(--orange);-webkit-text-stroke:.07em var(--navy);paint-order:stroke fill;text-shadow:.055em .055em 0 var(--navy)}
.stack--center{align-items:center;text-align:center}
.split__art--small{flex:0 1 340px}

.cards--help{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
.cards--help .card__icon{width:60px;height:60px}

.calc-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:24px;margin-top:40px}
.question{display:flex;flex-direction:column;gap:12px;margin:0;padding:28px;border:var(--bw) solid var(--navy);border-radius:20px;background:var(--white)}
.question__title{font-size:1.125rem;line-height:1.3}
.question .inputs{display:flex;gap:16px;align-items:center}
.question input[type=range]{flex:1;accent-color:var(--orange)}
.question input[type=number]{width:120px;min-height:44px;padding:8px 12px;border:var(--bw) solid var(--navy);border-radius:10px;font:inherit;text-align:center}
.question label{display:flex;gap:10px;align-items:flex-start}
.question input[type=checkbox]{flex:none;width:20px;height:20px;margin-top:2px;accent-color:var(--navy)}
.total{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:28px;border:var(--bw) solid var(--navy);border-radius:20px;background:var(--orange);box-shadow:var(--shadow);text-align:center}
.total__value{font:800 2rem/1.1 var(--font-display)}
.total__big{font-size:3.5rem}

.page-content table{width:100%;border-collapse:collapse}
.page-content th,.page-content td{padding:10px 12px;border-bottom:2px solid var(--line);text-align:left}
.page-content thead th{background:var(--cream)}
.page-content .wp-block-table{overflow-x:auto}

/* ==========================================================================
   Account area
   ========================================================================== */
.account-hero{background:var(--cream);border-bottom:var(--bw) solid var(--navy)}
.account-hero .wrap{display:flex;gap:24px;align-items:center;padding-block:32px}
.account-hero__art{flex:none;width:clamp(96px,14vw,160px);height:auto}
.account-hero h1{font-size:clamp(2rem,4vw,3rem)}
.account-nav ul{display:flex;flex-wrap:wrap;gap:10px;margin:0;padding:24px 0 0;list-style:none}
.account-nav a{display:inline-flex;align-items:center;min-height:44px;padding:8px 18px;border:var(--bw) solid var(--navy);border-radius:999px;font-weight:700;text-decoration:none}
.account-nav a[aria-current=page]{background:var(--orange);box-shadow:4px 4px 0 var(--navy)}
.account-main{padding-block:40px var(--space-section);overflow-x:auto}
.account-main>*+*{margin-top:1.25em}
.account-main h1{margin-bottom:.5em}
.account-main h2,.account-main h3{font-size:clamp(1.5rem,2.5vw,2rem)}
.account-main p{margin:0 0 1em}
.account-main table{width:100%;border-collapse:collapse;border:var(--bw) solid var(--navy);border-radius:12px;background:var(--white)}
.account-main th,.account-main td{padding:10px 14px;border-bottom:2px solid var(--line);text-align:left}
.account-main thead th,.account-main tr:first-child th{background:var(--cream)}
.account-main fieldset{margin:0 0 1.5em;padding:20px 24px;border:var(--bw) solid var(--navy);border-radius:16px}
.account-main legend{padding:0 8px;font-weight:800}
.account-main label{display:block;margin-bottom:6px;font-weight:700}
.account-main :is(input[type=text],input[type=email],input[type=password],input[type=number],input[type=url],input[type=tel],select,textarea){width:100%;max-width:32rem;min-height:44px;margin-bottom:12px;padding:10px 14px;border:var(--bw) solid var(--navy);border-radius:10px;background:var(--white);font:inherit}
.account-main :is(input[type=submit],button[type=submit],.edd-submit,.button){display:inline-flex;align-items:center;min-height:48px;padding:12px 24px;border:var(--bw) solid var(--navy);border-radius:14px;background:var(--orange);box-shadow:var(--shadow);color:var(--navy);font:700 1.0625rem var(--font-body);text-decoration:none;cursor:pointer}
.account-main .edd-alert,.account-main .edd_errors,.account-main .edd_success{padding:14px 18px;border:var(--bw) solid var(--navy);border-radius:12px;background:var(--cream)}

.account-main .edd-blocks__orders-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:20px}
.account-main .edd-blocks-orders__order{display:flex;flex-direction:column;gap:12px;padding:20px;border:var(--bw) solid var(--navy);border-radius:16px;background:var(--cream)}
.account-main .edd-blocks-orders__order-header{display:flex;justify-content:space-between;gap:12px;font-weight:800}
.account-main .edd-blocks-orders__order-status{padding:2px 10px;border-radius:999px;background:var(--mint);color:var(--mint-ink);font-size:.875rem}
.account-main .edd-blocks-orders__order-data{display:flex;justify-content:space-between;gap:12px}
.account-main .edd-blocks-orders__order-details{display:flex;flex-wrap:wrap;gap:6px 16px}

.login{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:48px;align-items:center;padding-block:clamp(40px,6vw,80px) var(--space-section)}
.login__panel{display:flex;flex-direction:column;gap:16px;padding:clamp(24px,4vw,40px)}
.login__panel h1{font-size:clamp(2.25rem,5vw,3.25rem)}
.login-form{display:flex;flex-direction:column;gap:18px}
.login-form p{margin:0}
.login-form label{display:block;margin-bottom:6px;font-weight:700}
.login-form input:is([type=text],[type=password]){box-sizing:border-box;width:100%;min-height:52px;padding:10px 16px;border:var(--bw) solid var(--navy);border-radius:14px;background:var(--white);color:var(--navy);font:inherit;font-size:1.0625rem}
.login-form input:is([type=text],[type=password]):focus{outline:3px solid var(--orange);outline-offset:2px}
.login-form__row{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;justify-content:space-between}
.login-form__code{display:flex;flex-direction:column;gap:18px}
.login-form.is-enhanced:not(.needs-code) .login-form__code{display:none}
.login-form__error[hidden]{display:none}
.login-form__hint{font-weight:500;color:var(--navy-2)}
.login-form__remember{display:inline-flex;align-items:center;gap:8px;margin:0;font-weight:600}
.login-form__remember input{width:20px;height:20px;accent-color:var(--orange)}
.login-form .btn{justify-content:center;width:100%;min-height:56px}
.login-form__error{padding:12px 16px;border:2px solid var(--navy);border-radius:12px;background:#ffe3df;color:#8a1c0f;font-weight:700}
.login__news{display:flex;flex-direction:column;gap:12px}
.login__news h2{font-size:clamp(1.5rem,3vw,2.25rem)}
.login__news h2 a{text-decoration:none}

/* Account dashboard */
.dash-grid{margin-top:8px}
.dash-grid>.wp-block-group__inner-container,.dash-grid.is-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:28px}
.dash-grid>.wp-block-group__inner-container>*{margin:0}
.dash-card>.wp-block-group__inner-container{display:flex;flex-direction:column;gap:6px}
.dash-card{padding:28px;border:var(--bw) solid var(--navy);border-radius:20px;background:var(--cream);box-shadow:var(--shadow)}
.dash-card p{margin:0}
.dash-card .dash-label{display:flex;justify-content:space-between;gap:12px;margin-top:18px;color:var(--navy-2);font-size:.8125rem;letter-spacing:.08em;text-transform:uppercase}
.dash-card .dash-label:first-child{margin-top:0}
.dash-card .dash-label a{font-weight:700;letter-spacing:0;text-transform:none}
.dash-card .has-large-font-size{font:800 clamp(1.5rem,3vw,2rem)/1.15 var(--font-display)}
.dash-card code,.dash-card .license-key{word-break:break-all}
.dash-wide{grid-column:1/-1}
.dash-wide h2{margin-block:16px 24px;font-size:clamp(1.75rem,3vw,2.5rem)}
.cards--posts{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}
.dash-wide .cards--posts{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}

.section--cream{background:var(--cream)}
.section--navy{background:var(--navy);color:#e6eaf2}
.section--navy h2,.section--navy h3{color:var(--white)}
.cards--tilt>.card:nth-child(3n+1){transform:rotate(-1deg)}
.cards--tilt>.card:nth-child(3n+2){transform:rotate(.8deg)}
.cards--tilt>.card:nth-child(3n){transform:rotate(-.6deg)}

/* Post cards (typographic) */
.cat{display:inline-block;align-self:flex-start;padding:3px 12px;border:2px solid var(--navy);border-radius:999px;background:var(--white);font-size:.8125rem;font-weight:800;line-height:1.5}
.card--post .card__body{gap:14px;padding:28px 28px 8px}
.card--post .card__title{font-size:clamp(1.5rem,2.2vw,1.75rem);line-height:1.08}
.card--post .more{font-weight:800;text-decoration:none}
.card--post .more:hover{text-decoration:underline}
.card--post .card__foot{padding:8px 28px 28px}
.cards--posts .card--post:nth-child(4n+1){background:var(--cream)}
.cards--posts .card--post:nth-child(4n+2){background:var(--blue)}
.cards--posts .card--post:nth-child(4n+3){background:var(--mint)}
.cards--posts .card--post:nth-child(4n){background:var(--white)}
.cards--posts .card--post.card--feature{background:var(--orange)}
.card--feature .card__title{font-size:clamp(2rem,4vw,2.75rem);line-height:1}
.card--feature .cat{background:var(--white)}
@media (min-width:720px){.cards--posts .card--feature{grid-column:span 2}}

/* Compare landing */
.bars{display:flex;flex-direction:column;gap:14px;margin:0;padding:0;list-style:none}
.bar{display:grid;grid-template-columns:minmax(120px,170px) 1fr auto;gap:16px;align-items:center}
.bar__who{display:flex;gap:10px;align-items:center;font-weight:700;text-decoration:none}
.bar__who img{flex:none;width:28px;height:28px;object-fit:contain}
.bar__track{display:block;height:28px;border:var(--bw) solid var(--navy);border-radius:999px;background:var(--white);overflow:hidden}
.bar__fill{display:block;height:100%;width:var(--w);background:var(--navy)}
.bar--us .bar__fill{background:var(--orange)}
.bar__price{min-width:5.5rem;font:800 1.125rem/1 var(--font-display);text-align:right}
.bar--us .bar__price{font-size:1.5rem}
.split>.bars{flex:1.3 1 460px}
.section--band+.section--band{margin-top:0}
.type-block{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:clamp(24px,4vw,56px);margin-top:56px;padding-top:32px;border-top:var(--bw) solid var(--navy)}
.type-block__intro{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.type-block__intro h3{font-size:clamp(1.75rem,3vw,2.25rem)}
.logo-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));column-gap:32px;margin:0;padding:0;list-style:none}
.logo-list a{display:flex;gap:14px;align-items:center;padding:14px 4px;border-bottom:2px dashed var(--line);text-decoration:none}
.logo-list a:hover{background:var(--cream)}
.logo-list img{flex:none;width:40px;height:40px;object-fit:contain}
.logo-list a>span:nth-of-type(2){flex:1}
.logo-list__go{font-weight:800}
.split>.split__list{flex:1.2 1 420px}
.split__list .logo-list{grid-template-columns:1fr}
.split__list .logo-list li:first-child a{border-top:2px dashed var(--line)}
.reasons{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:32px;margin:32px 0 40px}
.reasons h3{margin-bottom:8px;font-size:1.5rem}
@media (max-width:860px){.type-block{grid-template-columns:1fr}.bar{grid-template-columns:1fr auto}.bar__track{grid-column:1/-1;grid-row:2}}

/* Brand logo and icon */
.brand img{display:block;width:auto;height:40px}
.site-footer .brand img{height:36px}
.th-logo{display:block;width:auto;max-width:150px;height:28px;object-fit:contain}
.data-table th:has(.th-logo){vertical-align:middle}
.logo-list__pair{display:flex;flex:none;align-items:center}
.logo-list__pair img{width:32px;height:32px;padding:3px;border:2px solid var(--navy);border-radius:50%;background:var(--white)}
.logo-list__pair img+img{margin-left:-8px}
.logo-list .logo-list__pair img{width:32px;height:32px}
.versus{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px}
.versus__ours{width:min(100%,320px);height:auto}
.versus__theirs{width:auto;max-width:min(100%,320px);height:auto;max-height:140px;object-fit:contain}
.versus__vs{display:grid;place-items:center;width:64px;height:64px;border:var(--bw) solid var(--navy);border-radius:50%;background:var(--orange);box-shadow:4px 4px 0 var(--navy);font:800 1.5rem/1 var(--font-display);text-transform:uppercase}
@media (max-width:900px){.brand img{height:32px}}

/* Pricing page */
:root{--accent-sky:#8fd3ff;--accent-mint:#7bd9a3}
.plan{border-top-width:16px}
.plan--agency{border-top-color:var(--navy)}
.plan--pro{border-top-color:var(--orange)}
.plan--plus{border-top-color:var(--accent-sky)}
.plan--basic{border-top-color:var(--accent-mint)}
.plan__price strong{font-size:clamp(3rem,5vw,4rem)}
.section>.meta{margin-top:20px}
/* Money back promise */
.promise__grid{display:flex;flex-wrap:wrap;gap:clamp(24px,5vw,64px);align-items:center;padding-block:0 clamp(8px,2vw,24px)}
.promise__badge{flex:0 1 220px;width:220px;height:auto;transform:rotate(-6deg)}
.promise__copy{flex:1 1 420px;display:flex;flex-direction:column;gap:16px;min-width:0}
.promise__copy h2{font-size:clamp(2.25rem,4.5vw,3.5rem)}
.promise__copy .lede{max-width:40em}
.promise__by{display:flex;gap:14px;align-items:center;font-size:1rem}
.promise__by img{flex:none;width:56px;height:56px;border:var(--bw) solid var(--navy);border-radius:50%;background:var(--orange);object-fit:cover}

/* "Every plan includes" band */
.perks__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,80px);align-items:center}
.perks__art{width:100%;max-width:420px;height:auto;justify-self:center}
.perks__copy{display:flex;flex-direction:column;align-items:flex-start;gap:28px}
.perks__copy h2{max-width:12em;font-size:clamp(2.25rem,4.5vw,3.75rem)}
.perks__list{width:100%;margin:0;padding:0;list-style:none}
.perks__list li{display:flex;gap:20px;align-items:center;padding-block:20px;border-top:2px dashed var(--navy)}
.perks__list li:last-child{border-bottom:2px dashed var(--navy)}
.perks__icon{display:grid;flex:none;place-items:center;width:84px;height:84px;border:var(--bw) solid var(--navy);border-radius:50%;background:var(--white)}
.perks__icon img{width:54px;height:54px;object-fit:contain}
.perks__list h3{margin-bottom:2px;font-size:clamp(1.375rem,2.4vw,1.75rem)}
.perks__list p{color:var(--navy-2);font-size:1.0625rem}
@media (max-width:860px){.perks__grid{grid-template-columns:1fr}.perks__art{max-width:240px}}

.disclosure{margin-top:32px;border:var(--bw) solid var(--navy);border-radius:16px;background:var(--white)}
.disclosure>summary{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;font:800 1.25rem/1.2 var(--font-display);cursor:pointer;list-style:none}
.disclosure>summary::-webkit-details-marker{display:none}
.disclosure>summary::after{content:"+";font-size:2rem;line-height:1}
.disclosure[open]>summary{border-bottom:var(--bw) solid var(--navy)}
.disclosure[open]>summary::after{content:"\2212"}
.disclosure>:not(summary){margin:24px}
.disclosure .table-wrap:last-child{margin-bottom:0}

/* Feature index */
.chip{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:8px 16px;border:var(--bw) solid var(--navy);border-radius:999px;background:var(--white);color:var(--navy);font:700 1rem var(--font-body);cursor:pointer}
.chip small{font-weight:600;opacity:.7}
.chip[aria-pressed=true]{background:var(--orange);box-shadow:3px 3px 0 var(--navy)}
/* Feature page aside */
.plan-note{padding:20px 22px;border:var(--bw) solid var(--navy);border-radius:16px;background:var(--cream)}
.plan-note p{margin:0 0 6px}
.plan-note__label{margin-top:14px!important;color:var(--navy-2);font-size:.8125rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.plan-note__label:first-child{margin-top:0!important}
.plan-note__plan{font:800 1.25rem/1.2 var(--font-display)}

/* Try page */
.page-hero.page-hero--form:not(:has(.page-hero__art)) .wrap{grid-template-columns:minmax(0,1fr) minmax(0,560px);align-items:center}
.page-hero--form .wrap>*{grid-column:auto}
.page-hero--form .hero-copy{display:flex;flex-direction:column;align-items:flex-start;gap:20px}
.page-hero--form .hero-form{width:100%;justify-self:stretch;scroll-margin-top:24px}
.page-hero--form{background:var(--soda)}
.page-hero--form h1{font-size:clamp(2.5rem,5vw,4.5rem)}
.checks{display:flex;flex-direction:column;gap:12px;margin:8px 0 0;padding:0;list-style:none;font-size:1.125rem;font-weight:600}
.checks li,.ticks li,.crosses li{position:relative;padding-left:34px}
.checks li::before,.ticks li::before{content:"";position:absolute;left:0;top:.2em;width:22px;height:22px;background:no-repeat center/18px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231b2a4a' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12l5 5L20 6'/%3E%3C/svg%3E"),var(--orange);border:2px solid var(--navy);border-radius:50%}
.crosses li::before{content:"";position:absolute;left:0;top:.2em;width:22px;height:22px;background:no-repeat center/14px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231b2a4a' stroke-width='3.5' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E"),var(--white);border:2px solid var(--navy);border-radius:50%}
@media (max-width:900px){.page-hero.page-hero--form:not(:has(.page-hero__art)) .wrap{grid-template-columns:minmax(0,1fr)}}
.steps{display:flex;flex-direction:column;gap:0;margin:0;padding:0;list-style:none;counter-reset:step}
.steps li{display:flex;gap:18px;align-items:baseline;padding:14px 0;border-bottom:2px dashed var(--line);font-size:1.125rem;counter-increment:step}
.steps li::before{content:counter(step);flex:none;width:2.25rem;font:800 2rem/1 var(--font-display);color:var(--orange);-webkit-text-stroke:.07em var(--navy);paint-order:stroke fill;text-shadow:.055em .055em 0 var(--navy)}
.video--lg{flex:1.1 1 440px;border-radius:20px;box-shadow:var(--shadow-lg)}
.triplet{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:40px}
.triplet h3{margin-bottom:16px;font-size:clamp(1.75rem,3vw,2.25rem)}
.ticks,.crosses{display:flex;flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;font-size:1.0625rem}
.triplet__note{max-width:46rem;margin-top:36px;font-size:1.125rem;font-weight:600}
/* The demo form plugin, in the theme's look */
.gh-demo-form{--gh-demo-accent:var(--orange)!important;--gh-demo-accent-dark:var(--navy)!important;--gh-demo-accent-soft:var(--cream)!important;--gh-demo-ink:var(--navy)!important;--gh-demo-line:var(--navy)!important;--gh-demo-muted:var(--navy-2)!important;max-width:none;font-family:var(--font-body)}
.gh-demo-form .gh-demo-form__card{padding:clamp(24px,4vw,36px);border:var(--bw) solid var(--navy);border-radius:24px;background:var(--white);box-shadow:var(--shadow-lg)}
.gh-demo-form .gh-demo-form__heading{margin-top:8px;font-family:var(--font-display);font-weight:800;letter-spacing:-.02em;font-size:clamp(1.75rem,3vw,2.25rem)}
.gh-demo-form .gh-demo-form__option,.gh-demo-form .gh-demo-form__field{border:2px solid var(--navy);border-radius:12px}
.gh-demo-form .gh-demo-form__option.is-selected{border-color:var(--navy);background:var(--orange);box-shadow:3px 3px 0 var(--navy)}
.gh-demo-form .gh-demo-form__cta{border:var(--bw) solid var(--navy);border-radius:14px;background:var(--orange);box-shadow:var(--shadow);color:var(--navy);font-weight:800}
.gh-demo-form .gh-demo-form__cta:hover:not([disabled]){background:var(--orange);filter:brightness(.96)}
.gh-demo-form .gh-demo-form__cta[disabled]{box-shadow:none;opacity:.6}
.gh-demo-form .gh-demo-form__back,.gh-demo-form .gh-demo-form__skip{color:var(--navy)}

/* Blog hero and listing */
.blog-search,.hero-search{display:flex;flex-wrap:wrap;gap:12px;width:100%;max-width:560px}
.blog-search input[type=search],.hero-search input[type=search]{flex:1 1 240px;min-height:52px;padding:10px 16px;border:var(--bw) solid var(--navy);border-radius:14px;background:var(--white);font:inherit;font-size:1.0625rem}
.blog-search .btn,.hero-search .btn{min-height:52px;padding:10px 24px}
.hero-links{margin:0}
.blog-chips{display:flex;flex-wrap:wrap;gap:10px;margin:0}
a.chip{text-decoration:none}
.loop{padding-bottom:var(--space-section)}
.nav-links{margin-top:56px}

.findex:not(.is-ready) .findex__tools{display:none}
.findex__tools{display:flex;flex-direction:column;gap:20px;margin-bottom:28px}
.findex__search{width:100%;max-width:640px;min-height:56px;padding:12px 18px;border:var(--bw) solid var(--navy);border-radius:14px;background:var(--white);font:inherit;font-size:1.125rem}
.findex__chips{display:flex;flex-wrap:wrap;gap:10px}
.findex__status{margin:0}
.findex__list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));column-gap:32px;margin:0;padding:0;list-style:none}
.findex__list li[hidden]{display:none}
.findex__list a{display:flex;gap:14px;align-items:center;height:100%;padding:14px 8px;border-bottom:2px dashed var(--line);text-decoration:none}
.findex__list a:hover{background:var(--cream)}
.findex__list img{flex:none;width:40px;height:40px;object-fit:contain}
.findex__txt{flex:1;min-width:0}
.findex__txt small{display:block;margin-top:2px;color:var(--navy-2);font-size:.875rem;line-height:1.3}
.findex__none{margin-top:24px;font-size:1.125rem}
.toc .plan-note{margin-bottom:28px}
.section-head+.findex__list{margin-top:28px}
.findex__list+p{margin-top:28px}
.findex__list .tag{align-self:center}
#related-title{font-size:clamp(1.75rem,3.5vw,2.5rem)}

.doc-groups{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:32px}
.doc-group{padding:24px;border:var(--bw) solid var(--navy);border-radius:20px;background:var(--cream)}
.doc-group h3{margin-bottom:12px;font-size:1.375rem}
.doc-group ul{margin:0;padding:0;list-style:none}
.doc-group li+li{margin-top:6px}

.entry{padding-block:48px var(--space-section)}
.entry h1{margin-bottom:.5em}

.newsletter .stack{max-width:44rem}
/* Groundhogg forms (gh_form shortcode) in the theme's look */
.form-panel{padding:clamp(24px,4vw,36px);border:var(--bw) solid var(--navy);border-radius:24px;background:var(--white);box-shadow:var(--shadow-lg)}
.form-panel h2{margin-bottom:8px;font-size:clamp(1.75rem,3vw,2.25rem)}
.form-panel>p{margin:0 0 20px}
.gh-form-wrapper .gh-form-row{display:flex;flex-direction:row;flex-wrap:wrap;gap:0 16px}
.gh-form-wrapper .gh-form-column{flex:1 1 100%;min-width:0}
.gh-form-wrapper .gh-form-column.col-1-of-2{flex:1 1 calc(50% - 8px)}
.gh-form-wrapper .form-field-with-label{margin-bottom:16px}
.gh-form-wrapper .gh-input-label{display:block;margin-bottom:6px;font-weight:700}
.gh-form-wrapper .gh-input{box-sizing:border-box;width:100%;min-height:48px;padding:10px 14px;border:2px solid var(--navy);border-radius:12px;background:var(--white);color:var(--navy);font:inherit}
.gh-form-wrapper textarea.gh-input{min-height:110px;resize:vertical}
.gh-form-wrapper .gh-input:focus{outline:3px solid var(--orange);outline-offset:2px}
.gh-form-wrapper .gh-submit-button{min-height:52px;padding:14px 28px;border:var(--bw) solid var(--navy);border-radius:14px;background:var(--orange);box-shadow:var(--shadow);color:var(--navy);font:800 1.125rem/1 var(--font-body);cursor:pointer}
.gh-form-wrapper .gh-submit-button:hover{filter:brightness(.96)}
.gh-form-wrapper .gh-message-wrapper{margin-bottom:16px;padding:14px 16px;border:2px solid var(--navy);border-radius:12px;background:var(--mint);color:var(--mint-ink);font-weight:700}
.gh-form-wrapper .gh-message-wrapper.gh-form-errors{background:#ffe3df;color:#8a1c0f}
.section-head+.triplet{margin-top:36px}
.section-head+.faq{margin-top:36px}
@media (max-width:480px){.gh-form-wrapper .gh-form-column.col-1-of-2{flex-basis:100%}}
.callout--plain{font-size:1.0625rem;font-style:normal}
.callout--plain>*+*{margin-top:1em}
.keyfacts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));gap:20px;margin-bottom:2rem}
.keyfacts strong{display:block;font:800 clamp(2rem,4vw,2.75rem)/1 var(--font-display);color:var(--navy)}
.keyfacts span{display:block;margin-top:6px;font-size:.9375rem;line-height:1.35;color:var(--navy-2)}
.prose .crosses{margin-top:1.25em;padding-left:0}
.prose .crosses li+li{margin-top:0}
.policy-help{margin-top:3rem}
/* Grant application: copy beside a long form */
.apply{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(32px,5vw,64px);align-items:start}
@media (min-width:960px){.apply{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}.apply__intro{position:sticky;top:24px}}
.apply__form{margin:0;padding:clamp(24px,4vw,40px)}
/* Groundhogg v2 forms (web form steps) */
.gh-form-wrapper .gh-form-v2 .gh-form-fields{display:flex;flex-wrap:wrap;gap:0 16px}
.gh-form-wrapper .gh-form-v2 .gh-form-column{float:none;flex:1 1 100%;width:auto;min-width:0;margin:0 0 20px;padding:0}
.gh-form-wrapper .gh-form-v2 .gh-form-column.col-1-of-2{flex:1 1 calc(50% - 8px)}
.gh-form-wrapper .gh-form-v2 label{display:block;margin-bottom:6px;font-weight:700}
.gh-form-wrapper .gh-form-v2 .required{color:#b3261e}
.gh-form-wrapper .gh-form-v2 .gh-checkboxes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:8px}
.gh-form-wrapper .gh-form-v2 label.gh-checkbox-label{display:flex;gap:10px;align-items:flex-start;margin:0;padding:10px 12px;border:2px solid var(--navy);border-radius:12px;background:var(--white);font-weight:600;line-height:1.3;cursor:pointer}
.gh-form-wrapper .gh-form-v2 .gh-checkbox-label input{flex:none;width:20px;height:20px;margin:1px 0 0;accent-color:var(--orange)}
.gh-form-wrapper .gh-form-v2 .gh-checkbox-label:has(input:checked){background:var(--cream);box-shadow:3px 3px 0 var(--navy)}
.gh-form-wrapper .gh-form-v2 .gh-gdpr{display:grid;gap:10px}
.gh-form-wrapper .gh-form-v2 .gh-file-uploader{box-sizing:border-box;width:100%;padding:16px;border:2px dashed var(--navy);border-radius:12px;background:var(--cream);font:inherit}
.gh-form-wrapper .gh-form-v2 .gh-submit{min-height:52px;padding:14px 28px;border:var(--bw) solid var(--navy);border-radius:14px;background:var(--orange);box-shadow:var(--shadow);color:var(--navy);font:800 1.125rem/1 var(--font-body);cursor:pointer}
.gh-form-wrapper .gh-form-v2 .gh-submit:hover{filter:brightness(.96)}
.gh-form-wrapper .gh-form-v2 .gh-form-column:has(.gh-submit){flex-basis:100%;margin-bottom:0}
@media (max-width:480px){.gh-form-wrapper .gh-form-v2 .gh-form-column.col-1-of-2{flex-basis:100%}}
/* Documentation index */
.dindex .findex__tools{margin-bottom:8px}
.dsection{margin-top:clamp(40px,6vw,64px)}
.dsection>h2{margin-bottom:12px;font-size:clamp(1.75rem,3vw,2.5rem)}
.dgroup{border-top:2px solid var(--line)}
.dgroup:last-child{border-bottom:2px solid var(--line)}
.dgroup[hidden],.dsection[hidden]{display:none}
.dgroup{scroll-margin-top:24px}
.dgroup summary{display:flex;gap:14px;align-items:center;padding:16px 4px;list-style:none;cursor:pointer}
.dgroup summary::-webkit-details-marker{display:none}
.dgroup summary::before{content:"";flex:none;width:10px;height:10px;margin:0 4px 3px 2px;border:solid var(--navy);border-width:0 3px 3px 0;transform:rotate(-45deg);transition:transform .15s}
.dgroup[open]>summary::before{margin-top:-2px;transform:rotate(45deg)}
.dgroup summary h3{margin:0;font-size:1.375rem}
.dgroup summary:hover h3{text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:5px}
.dgroup__count{padding:2px 10px;border-radius:999px;background:var(--cream);border:2px solid var(--navy);font-size:.8125rem;font-weight:800}
.dgroup__list{padding:0 0 24px;column-gap:12px}
.dgroup__list a{align-items:flex-start;padding:12px 14px;border-bottom:0;border-radius:12px}
.dindex:not(.is-ready) .findex__chips{display:none}
/* Homepage illustrations (bare, never in a frame) */
.hero__phil{display:block;width:min(100%,250px);height:auto;margin-bottom:-6px}
.ai-art{padding-top:0}
.ai-art__phil{display:block;width:min(100%,230px);height:auto;margin:0 auto 20px}
.value-main{position:relative}
.value-main__phil{position:absolute;top:-64px;right:clamp(16px,3vw,40px);width:clamp(150px,18vw,210px);height:auto}
@media (max-width:720px){.value-main__phil{position:static;width:150px;margin:-64px 0 -8px auto}}
.value-main .checks{margin:4px 0 8px;color:#e6eaf2}
.findex__txt strong{overflow-wrap:anywhere}
.dgroup__list a:hover{background:var(--cream)}
.dgroup__emoji{flex:none;margin-top:1px;font-size:1.375rem;line-height:1.2}
/* Recommendations */
.recs-jump{margin:0}
.rsection{margin-top:clamp(40px,6vw,64px)}
.rsection>h2{font-size:clamp(1.75rem,3vw,2.5rem)}
.rsection__intro{margin:8px 0 20px;font-size:1.125rem;color:var(--navy-2)}
.recs{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,460px),1fr));gap:4px 32px;margin:0;padding:0;list-style:none}
.recs__item{display:grid;grid-template-columns:104px minmax(0,1fr);gap:20px;align-items:start;height:100%;padding:18px 16px;border-radius:14px;text-decoration:none}
a.recs__item:hover{background:var(--cream)}
.recs__logo{display:flex;align-items:center;height:56px}
.recs__logo img{max-width:100%;max-height:100%;object-fit:contain}
.recs__logo--fallback{justify-content:center;width:56px;border-radius:50%;background:var(--navy);color:var(--white);font:800 1.5rem/1 var(--font-display)}
.recs__txt strong{display:block;font:800 1.25rem/1.2 var(--font-display)}
.recs__txt small{display:block;margin-top:6px;color:var(--navy-2);font-size:.9375rem;line-height:1.45}
.recs__go{display:inline-block;margin-top:10px;font-weight:800;font-size:.9375rem}
a.recs__item:hover .recs__go{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}
@media (max-width:520px){.recs__item{grid-template-columns:76px minmax(0,1fr);gap:14px}}
/* Add-on directory and All Access downloads */
.findex__plan{display:flex;flex-direction:column;gap:10px}
.findex__plan-label{margin:0}
.findex__plan-label .meta{margin-left:8px}
.findex__noicon{flex:none;width:40px;height:40px;border:2px dashed var(--line);border-radius:10px}
.aa-section{margin-top:clamp(32px,5vw,56px)}
.aa-section:first-child{margin-top:0}
.aa-section>h2{margin-bottom:6px;font-size:clamp(1.75rem,3vw,2.5rem)}
.aa-section>.lede{margin:0 0 16px}
.aa-start{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:8px 40px;margin:0;padding:0;list-style:none}
.aa-start li{display:grid;grid-template-columns:72px minmax(0,1fr);gap:18px;align-items:start;padding:16px 4px}
.aa-start__logo{display:flex;align-items:center;height:48px}
.aa-start__logo img{max-width:100%;max-height:100%;object-fit:contain}
.aa-start__txt{display:flex;flex-direction:column;gap:4px;line-height:1.4}
.aa-start__txt strong{font:800 1.25rem/1.2 var(--font-display)}
.aa-links{display:flex;flex-wrap:wrap;gap:6px 20px;margin-top:6px;font-weight:600}
.aa-links a{white-space:nowrap}
.aa-list{grid-template-columns:1fr}
.aa-row{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:18px;align-items:center;padding:14px 8px;border-bottom:2px solid var(--line)}
.aa-row img,.aa-row__noicon{width:44px;height:44px;object-fit:contain}
.aa-row__noicon{border:2px dashed var(--line);border-radius:10px}
.aa-row strong a{text-decoration:none}
.aa-row strong a:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}
.aa-row__ver{margin-top:2px}
.aa-row .aa-links{margin:0;justify-content:flex-end}
@media (max-width:720px){.aa-row{grid-template-columns:44px minmax(0,1fr)}.aa-row .aa-links{grid-column:2;justify-content:flex-start}}
.findex__list.aa-list a{display:inline;height:auto;padding:0;border-bottom:0;background:none}
.findex__list.aa-list li{margin:0}
.findex__list.aa-list .aa-links a{display:inline}
.aa-row .findex__txt{display:flex;flex-direction:column;gap:2px}
/* The demo link in the header is the secondary call to action beside Sign up */
.nav__list>li>a.nav__cta{padding:10px 18px;margin-inline:6px;border:var(--bw) solid var(--navy);border-radius:12px;background:var(--white);font-weight:700}
.nav__list>li>a.nav__cta:hover{background:var(--cream);text-decoration:none}
@media (max-width:900px){.nav__list>li>a.nav__cta{flex:0 1 auto;margin:8px 0;padding:12px 18px}}
/* Comparison pages: hero price card, what's different, provenance */
.pricecard{display:flex;flex-direction:column;gap:14px;width:100%;max-width:480px;margin:0}
.pricecard__label{display:flex;flex-direction:column;align-items:center;gap:10px;color:var(--navy-2);font:700 .875rem/1.2 var(--font-body);letter-spacing:.06em;text-align:center;text-transform:uppercase}
.pricecard__grid{position:relative;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border:var(--bw) solid var(--navy);border-radius:22px;box-shadow:var(--shadow-lg)}
.pricecard__ours,.pricecard__theirs{display:flex;flex-direction:column;gap:10px;min-width:0;padding:24px 22px}
.pricecard__ours{background:var(--navy);color:var(--white)}
.pricecard__theirs{background:var(--white);color:var(--navy)}
.pricecard__logo{align-self:flex-start;width:auto;max-width:100%;height:32px;object-fit:contain;object-position:left}
.pricecard__name{font:800 1.25rem/1.2 var(--font-display)}
.pricecard__price{margin:6px 0 0;font:800 clamp(2.5rem,5vw,3.75rem)/1 var(--font-display)}
.pricecard__price span{font-size:1rem;font-weight:600;opacity:.7}
.pricecard__note{margin:0;font-size:.9375rem;line-height:1.35;opacity:.85}
.pricecard__vs{position:absolute;top:50%;left:50%;display:grid;place-items:center;width:48px;height:48px;transform:translate(-50%,-50%);border:var(--bw) solid var(--navy);border-radius:50%;background:var(--orange);color:var(--navy);font:800 1.125rem/1 var(--font-display);text-transform:uppercase}
.pricecard__save{margin:0;padding:12px 16px;border:var(--bw) solid var(--navy);border-radius:14px;background:var(--mint);color:var(--mint-ink);font:800 1.375rem/1.2 var(--font-display);text-align:center}
.matrix-intro{max-width:46rem;margin:0 auto 32px;font-size:1.25rem;line-height:1.5;text-align:center}
.matrix-more{margin-top:32px}
.matrix-more>summary{display:inline-flex;padding:14px 22px;border:var(--bw) solid var(--navy);border-radius:14px;background:var(--white);font:800 1.0625rem/1.2 var(--font-body);list-style:none;cursor:pointer}
.matrix-more>summary::-webkit-details-marker{display:none}
.matrix-more>summary::after{content:"+";margin-left:12px;font-size:1.25rem}
.matrix-more[open]>summary{background:var(--cream)}
.matrix-more[open]>summary::after{content:"2"}
.matrix-more .table-wrap:first-of-type{margin-top:24px}
.price-source{max-width:46rem;margin:16px auto 0;text-align:center}
.comparison-note{max-width:56rem;margin:0 auto;padding-block:8px 48px;font-size:.8125rem;line-height:1.5;text-align:center}
.pricecard__ours{padding-right:36px}
.pricecard__theirs{padding-left:36px}
.pricecard{container-type:inline-size}
.pricecard__price{font-size:clamp(1.5rem,8cqi,3rem);white-space:nowrap}
@media (max-width:520px){.pricecard__ours,.pricecard__theirs{padding:18px 14px}.pricecard__ours{padding-right:28px}.pricecard__theirs{padding-left:28px}.pricecard__price span{font-size:.8125rem}}
/* Comparison hero: a slightly smaller title and a full-width column for the price card */
.page-hero--compare h1{font-size:clamp(2.5rem,5.2vw,4.5rem)}
.page-hero--compare .wrap{grid-template-columns:minmax(0,1fr) minmax(0,480px)}
@media (max-width:1100px){.page-hero--compare .wrap{grid-template-columns:minmax(0,1fr) minmax(0,360px)}}
.data-table--features .th-logo{margin-inline:auto;object-position:center}

/* ==========================================================================
   Comparison page bands: background rhythm, like the homepage
   ========================================================================== */
.band{margin-top:var(--space-section);padding-bottom:clamp(56px,8vw,96px);border-block:var(--bw) solid var(--navy)}
.band>.section:first-child{padding-top:clamp(56px,8vw,96px)}
.band+.band{margin-top:0;border-top:0}
.band--plain{margin-top:0;padding-bottom:0;border:0}
.band--plain>.section:first-child{padding-top:var(--space-section)}
.band--plain+.band:not(.band--plain){margin-top:var(--space-section)}
.band--plain:has(>.page-hero:only-child)+.band{margin-top:0}
.band--sky{background:var(--blue)}
.band--cream{background:var(--cream)}
.band--mint{background:var(--mint)}
.band--navy{background:var(--navy);color:var(--white)}
.band--navy .quote{color:var(--navy);box-shadow:8px 8px 0 var(--orange)}
.band--navy .lede{color:var(--white)}
.band--cream .data-table thead th{background:var(--white)}
.comparison-note{padding-top:32px}
.pricecard__sizes{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;letter-spacing:0;text-transform:none}
.pricecard__sizes button{min-height:36px;padding:6px 12px;border:2px solid var(--navy);border-radius:10px;background:var(--white);color:var(--navy);font:700 .875rem var(--font-body);cursor:pointer}
.pricecard__sizes button[aria-pressed=true]{background:var(--orange)}
.pricecard__price b{font:inherit}

/* ==========================================================================
   Checkout (EDD checkout block): order form on the left, order summary on the right
   ========================================================================== */
.checkout-head{background:var(--cream);border-bottom:var(--bw) solid var(--navy)}
.checkout-head .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px;padding-block:28px}
.checkout-head h1{font-size:clamp(2rem,4vw,3rem)}
.checkout-head__trust{display:flex;flex-wrap:wrap;gap:6px 22px;margin:0 0 0 auto;padding:0;list-style:none;font-size:.9375rem;font-weight:700}
.checkout-head__trust li::before{content:"\2713";margin-right:8px;color:var(--mint-ink)}
.checkout-head__trust a{text-decoration:underline}
.checkout-main{padding-block:clamp(32px,5vw,56px) clamp(56px,8vw,96px)}
.checkout-main #edd_checkout_form_wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,400px);gap:32px clamp(24px,4vw,48px);align-items:start}
.checkout-main .edd-blocks__purchase-form{grid-column:1;grid-row:1}
.checkout-main .edd-blocks__cart{grid-column:2;grid-row:1;position:sticky;top:24px}
.checkout-main #edd_purchase_form{display:flex;flex-direction:column;gap:24px;counter-reset:step}
.checkout-main :is(.edd-blocks__user-details,.edd-blocks__checkout-user,.edd-checkout-block__personal-info,.edd-blocks__payment-details,#edd_payment_mode_select_wrap,#edd_purchase_form_wrap){display:contents}
.checkout-main #edd_payment_mode_submit{display:none}

/* Each step is a bordered panel with a numbered heading */
.checkout-main #edd_purchase_form :is(#edd_checkout_user_info,#edd_register_fields,#edd_cc_address,#edd_payment_mode_select,#edd_cc_fields,#edd_purchase_submit){min-width:0;margin:0;padding:clamp(20px,3vw,32px);border:var(--bw) solid var(--navy);border-radius:20px;background:var(--white)}
.checkout-main #edd_purchase_form :is(#edd_checkout_user_info,#edd_register_fields,#edd_cc_address){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px}
.checkout-main #edd_purchase_form :is(#edd_checkout_user_info,#edd_register_fields,#edd_cc_address)>*{grid-column:1/-1}
.checkout-main :is(.edd-blocks-form__group-edd_first,.edd-blocks-form__group-edd_last,.user-pass1-wrap,.user-pass2-wrap,.edd-blocks-form__group-city,.edd-blocks-form__group-state,.edd-blocks-form__group-zip,.edd-blocks-form__group-phone){grid-column:auto!important}
.checkout-main #edd_purchase_form :is(#edd_checkout_user_info,#edd_register_fields,#edd_cc_address,#edd_payment_mode_select,#edd_cc_fields)>legend{float:left;display:flex;align-items:center;gap:12px;width:100%;margin:0 0 20px;padding:0;font:800 1.5rem/1.1 var(--font-display);letter-spacing:-.01em}
.checkout-main #edd_purchase_form :is(#edd_checkout_user_info,#edd_register_fields,#edd_cc_address,#edd_payment_mode_select,#edd_cc_fields)>legend::before{counter-increment:step;content:counter(step);display:inline-grid;vertical-align:middle;margin-right:12px;place-items:center;width:2.25rem;height:2.25rem;border:var(--bw) solid var(--navy);border-radius:50%;background:var(--orange);font-size:1.125rem}
.checkout-main #edd_purchase_form :is(#edd_checkout_user_info,#edd_register_fields,#edd_cc_address)>legend{margin-bottom:2px}
.checkout-main #edd_purchase_form #edd_purchase_submit{display:flex;flex-direction:column;gap:16px;background:var(--cream)}
.checkout-main #edd_purchase_form #edd_purchase_submit fieldset{margin:0;padding:0;border:0}

/* Fields */
.checkout-main .edd-label{display:block;margin-bottom:6px;font-weight:700}
.checkout-main .edd-required-indicator{margin-left:2px;color:#b3410c}
.checkout-main .edd-description{margin:6px 0 0;color:var(--navy-2);font-size:.875rem;line-height:1.4}
.checkout-main :is(input[type=text],input[type=email],input[type=password],input[type=tel],input[type=search],select,.edd-input,.edd-select){width:100%;min-height:48px;padding-block:10px;padding-right:14px;border:2px solid var(--navy);border-radius:10px;background-color:var(--white);color:var(--navy);font:inherit;box-shadow:none}
.checkout-main :is(input[type=text],input[type=email],input[type=password],input[type=search],select,.edd-input,.edd-select):not(.edd-input__phone){padding-left:14px}
.checkout-main :is(input,select):focus{border-color:var(--orange);outline:3px solid rgba(247,148,29,.35);outline-offset:0}
.checkout-main .iti{display:block;width:100%}
.checkout-main input[type=checkbox],.checkout-main input[type=radio]{flex:none;width:22px;height:22px;margin:0;accent-color:var(--orange)}

/* Payment method and secure note */
.checkout-main #edd-payment-mode-wrap{display:grid;gap:12px}
.checkout-main #edd-payment-mode-wrap .edd-gateway-option{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;text-align:left;gap:12px;padding:14px 16px;border:2px solid var(--navy);border-radius:12px;background:var(--white);font-weight:700;cursor:pointer}
.checkout-main #edd-payment-mode-wrap .edd-gateway-option-selected{background:var(--cream);box-shadow:0 0 0 3px var(--orange)}
.checkout-main .edd-payment-icons{display:flex;flex-wrap:wrap;gap:6px;margin-left:auto}
.checkout-main .payment-icon{width:auto;height:26px}
.checkout-main #edd_secure_site_wrapper{display:flex;align-items:center;gap:10px;margin-bottom:16px;padding:10px 14px;border-radius:10px;background:var(--mint);color:var(--mint-ink);font-size:.9375rem;font-weight:700}
.checkout-main #edd_secure_site_wrapper .padlock{display:grid;place-items:center}
.checkout-main #edd_secure_site_wrapper svg{width:16px;height:22px;fill:currentColor}

/* Agreements and the pay button */
.checkout-main :is(.edd-terms-agreement,.edd-privacy-policy-agreement,.edd-gh-consent-to-marketing){display:flex;align-items:flex-start;gap:12px}
.checkout-main :is(.edd-terms-agreement,.edd-privacy-policy-agreement,.edd-gh-consent-to-marketing) label{font-weight:400;line-height:1.4}
.checkout-main .edd-show-terms{margin:0 0 10px;font-size:.9375rem}
.checkout-main .edd-show-terms a{text-decoration:underline}
.checkout-main .edd-terms{padding:12px 14px;border-radius:10px;background:var(--white);font-size:.9375rem}
.checkout-main #edd-purchase-button{width:100%;min-height:60px;padding:14px 24px;border:var(--bw) solid var(--navy);border-radius:14px;background:var(--orange);box-shadow:var(--shadow);color:var(--navy);font:800 1.25rem var(--font-display);cursor:pointer}
.checkout-main #edd-purchase-button:hover:not(:disabled){transform:translate(-2px,-2px)}
.checkout-main #edd-purchase-button:disabled{opacity:.55;box-shadow:none;cursor:not-allowed}

/* Order summary */
.checkout-main .edd-blocks-form__cart #edd_checkout_cart{display:block;overflow:hidden;border:var(--bw) solid var(--navy);border-radius:20px;background:var(--cream);box-shadow:var(--shadow)}
.checkout-main .edd-blocks-form__cart .edd-blocks-cart__row-header{display:none}
.checkout-main .edd-blocks-form__cart .edd-blocks-cart__items{border-bottom:var(--bw) solid var(--navy)}
.checkout-main .edd-blocks-form__cart :is(.edd-blocks-cart__row,.edd_cart_footer_row){gap:8px 16px;padding:18px 22px}
.checkout-main .edd-blocks-form__cart .edd_cart_footer_row{padding-block:8px}
.checkout-main .edd-blocks-cart__row-item{align-items:flex-start;justify-content:space-between}
.checkout-main .edd-blocks-form__cart .edd_cart_item_name{flex:1 1 160px;gap:6px}
.checkout-main .edd_checkout_cart_item_title{font:800 1.25rem/1.2 var(--font-display)}
.checkout-main .edd_cart_item_name .eddr-notice{margin:0;font-size:.875rem;font-style:normal;color:var(--navy-2)}
.checkout-main .edd-blocks-form__cart .edd_cart_item_price{flex:none;font-weight:800;font-size:1.0625rem}
.checkout-main :is(.edd_cart_subtotal,.edd_cart_tax,.edd_cart_total,.edd_cart_discount){display:flex;justify-content:space-between;gap:16px;width:100%}
.checkout-main .edd-blocks-cart__discount{width:100%}
.checkout-main .edd-blocks-form__cart .edd_cart_total{padding-top:14px;border-top:2px dashed var(--line);font:800 1.5rem/1.2 var(--font-display)}
.checkout-main .edd-blocks-form__cart .edd_cart_footer_row:last-of-type{padding-bottom:22px}
.checkout-main .edd_discount_link,.checkout-main .edd-sl-show-renewal-form{padding:0;border:0;background:none;box-shadow:none;color:var(--navy);font:700 .9375rem var(--font-body);text-decoration:underline;cursor:pointer}
.checkout-main .edd-discount-code-field-wrap{display:flex;gap:8px;margin-top:8px}
.checkout-main .edd-discount-code-field-wrap .edd-input{flex:1 1 auto;min-width:0}
.checkout-main .edd-renewal-form--legacy{margin-top:14px;text-align:center}
.checkout-main .edd-sl-renewal-form-fields{margin-top:12px;text-align:left}
.checkout-main :is(.edd-submit,.edd-apply-discount,.edd-sl-renewal-actions .button):not(#edd-purchase-button,.edd-sl-show-renewal-form){display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 18px;border:var(--bw) solid var(--navy);border-radius:12px;background:var(--white);color:var(--navy);font:700 1rem var(--font-body);cursor:pointer}
.checkout-main :is(.edd_errors,.edd-alert,.edd_success){padding:14px 18px;border:var(--bw) solid var(--navy);border-radius:12px;background:var(--cream)}
.checkout-main .edd_empty_cart{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:16px;padding:48px 24px;border:var(--bw) solid var(--navy);border-radius:20px;background:var(--cream);font-size:1.25rem;text-align:center}
@media (max-width:960px){
	.checkout-head__trust{margin-left:0}
	.checkout-main #edd_checkout_form_wrap{grid-template-columns:minmax(0,1fr)}
	.checkout-main .edd-blocks__cart{grid-column:1;position:static}
	.checkout-main .edd-blocks__purchase-form{grid-row:2}
}
@media (max-width:560px){
	.checkout-main :is(#edd_checkout_user_info,#edd_register_fields,#edd_cc_address){grid-template-columns:minmax(0,1fr)}
	.checkout-main :is(.edd-blocks-form__group-edd_first,.edd-blocks-form__group-edd_last,.user-pass1-wrap,.user-pass2-wrap,.edd-blocks-form__group-city,.edd-blocks-form__group-state,.edd-blocks-form__group-zip,.edd-blocks-form__group-phone){grid-column:1/-1!important}
	.checkout-main .edd-payment-icons{margin-left:0}
}
.checkout-main #edd_purchase_form :is(#edd_checkout_user_info,#edd_register_fields,#edd_cc_address,#edd_payment_mode_select,#edd_cc_fields)>legend+*{clear:both}
.checkout-main #edd_purchase_form #edd_cc_fields>legend{font-size:1.25rem}
.checkout-main #edd_purchase_form #edd_cc_fields>legend::before{display:none}

/* ==========================================================================
   Affiliate area (AffiliateWP dashboard inside the account template)
   ========================================================================== */
.account-main #affwp-affiliate-dashboard-tabs{display:flex;flex-wrap:wrap;gap:4px 6px;margin:0 0 32px;padding:0;list-style:none;border-bottom:var(--bw) solid var(--navy)}
.account-main #affwp-affiliate-dashboard-tabs li{margin:0}
.account-main #affwp-affiliate-dashboard-tabs a{display:block;padding:12px 18px;border:var(--bw) solid transparent;border-bottom:0;border-radius:14px 14px 0 0;color:var(--navy);font-weight:700;text-decoration:none}
.account-main #affwp-affiliate-dashboard-tabs a:hover{background:var(--cream)}
.account-main #affwp-affiliate-dashboard-tabs .active a{margin-bottom:calc(var(--bw) * -1);padding-bottom:calc(12px + var(--bw));border-color:var(--navy);background:var(--orange)}
.account-main #affwp-affiliate-dashboard-tabs li:last-child{margin-left:auto}
.account-main #affwp-affiliate-dashboard-tabs li:last-child a{font-weight:400;text-decoration:underline}
.account-main #affwp-affiliate-dashboard .affwp-tab-content>h4:first-child{margin:0 0 20px;font:800 clamp(1.5rem,2.5vw,2rem)/1.1 var(--font-display);letter-spacing:-.01em}

/* Cards: same look as the rest of the theme */
.account-main #affwp-affiliate-dashboard .affwp-card{margin:0 0 24px;border:var(--bw) solid var(--navy);border-radius:20px;background:var(--white);box-shadow:var(--shadow);overflow:hidden}
.account-main #affwp-affiliate-dashboard .affwp-affiliate-link__display{display:flex;flex-wrap:wrap;gap:12px}
.account-main #affwp-affiliate-dashboard .affwp-card :is(h2,h3,h4){font-family:var(--font-display);font-weight:800;letter-spacing:-.01em}
.account-main #affwp-affiliate-dashboard .affwp-affiliate-link__input{flex:1 1 260px;min-width:0;max-width:none;margin:0}
.account-main #affwp-affiliate-dashboard .affwp-affiliate-link-copy-link{flex:none}

/* Totals as big tiles */
.account-main #affwp-affiliate-dashboard .affwp-payout-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:16px;margin:0 0 28px}
.account-main #affwp-affiliate-dashboard .affwp-payout-summary__stat{display:flex;flex-direction:column;gap:6px;padding:20px 22px;border:var(--bw) solid var(--navy);border-radius:18px;background:var(--cream);box-shadow:var(--shadow)}
.account-main #affwp-affiliate-dashboard .affwp-payout-summary__label{color:var(--navy-2);font-weight:700}
.account-main #affwp-affiliate-dashboard .affwp-payout-summary__value{font:800 clamp(2rem,4vw,2.75rem)/1 var(--font-display)}
.account-main :is(#affwp-affiliate-dashboard-referral-counts,#affwp-affiliate-dashboard-earnings-stats) table{display:block;border:0;background:none}
.account-main :is(#affwp-affiliate-dashboard-referral-counts,#affwp-affiliate-dashboard-earnings-stats) :is(thead,tbody){display:contents}
.account-main :is(#affwp-affiliate-dashboard-referral-counts,#affwp-affiliate-dashboard-earnings-stats) thead{display:none}
.account-main :is(#affwp-affiliate-dashboard-referral-counts,#affwp-affiliate-dashboard-earnings-stats) tbody tr{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:16px}
.account-main :is(#affwp-affiliate-dashboard-referral-counts,#affwp-affiliate-dashboard-earnings-stats) td{display:flex;flex-direction:column;gap:6px;padding:20px 22px;border:var(--bw) solid var(--navy);border-radius:18px;background:var(--cream);box-shadow:var(--shadow);font:800 clamp(2rem,4vw,2.75rem)/1 var(--font-display)}
.account-main :is(#affwp-affiliate-dashboard-referral-counts,#affwp-affiliate-dashboard-earnings-stats) td::before{content:attr(data-th);color:var(--navy-2);font:700 1rem/1.2 var(--font-body)}

/* Tables and empty states */
.account-main #affwp-affiliate-dashboard table{overflow:hidden;border-radius:16px}
.account-main #affwp-affiliate-dashboard td.affwp-table-no-data{border:2px dashed var(--navy);border-radius:16px;background:var(--cream);padding:28px 14px;color:var(--navy-2);text-align:center}
.account-main #affwp-affiliate-dashboard .affwp-pagination{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.account-main #affwp-affiliate-dashboard .affwp-pagination :is(a,span){display:inline-flex;align-items:center;min-width:44px;min-height:44px;justify-content:center;padding:6px 12px;border:2px solid var(--navy);border-radius:10px;font-weight:700;text-decoration:none}
.account-main #affwp-affiliate-dashboard .affwp-pagination .current{background:var(--orange)}

/* Promo block under the dashboard */
.aff-promo{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px 32px;margin-top:40px;padding:clamp(24px,4vw,40px);border:var(--bw) solid var(--navy);border-radius:20px;background:var(--cream);box-shadow:var(--shadow-lg)}
.aff-promo .stack{flex:1 1 360px;gap:10px}
.aff-promo h2{font-size:clamp(1.5rem,3vw,2.25rem)}
.aff-promo p{margin:0}
@media (max-width:640px){
	.account-main #affwp-affiliate-dashboard-tabs a{padding:10px 12px}
	.account-main #affwp-affiliate-dashboard-tabs li:last-child{margin-left:0}
}
.account-main :is(#affwp-affiliate-dashboard-referral-counts,#affwp-affiliate-dashboard-earnings-stats) td{color:var(--navy)}
.account-main #affwp-affiliate-dashboard table{border:var(--bw) solid var(--navy);background:var(--white)}
.account-main #affwp-affiliate-dashboard :is(th,td){padding:12px 16px;border-color:var(--line);color:var(--navy)}
.account-main #affwp-affiliate-dashboard thead th{background:var(--cream);font-weight:800}
.account-main :is(#affwp-affiliate-dashboard-referral-counts,#affwp-affiliate-dashboard-earnings-stats) table{border:0;background:none}
.account-main #affwp-affiliate-dashboard-earnings-stats{margin-top:24px}
.account-main #affwp-affiliate-dashboard-campaign-stats{margin-top:24px}
.aff-promo .btn{line-height:1.25}
.account-main #affwp-affiliate-dashboard :is(#affwp-affiliate-dashboard-referral-counts,#affwp-affiliate-dashboard-earnings-stats) td{padding:20px 22px;border:var(--bw) solid var(--navy)}

/* Creatives list */
.account-main #affwp-affiliate-dashboard .affwp-creatives-filters{display:flex;justify-content:flex-end;margin-bottom:16px}
.account-main #affwp-affiliate-dashboard .affwp-view-switcher{display:flex;gap:6px}
.account-main #affwp-affiliate-dashboard .affwp-view-switcher__button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:2px solid var(--navy);border-radius:10px;background:var(--white);color:var(--navy);cursor:pointer}
.account-main #affwp-affiliate-dashboard .affwp-view-switcher__button.active{background:var(--orange)}
.account-main #affwp-affiliate-dashboard .affwp-creatives-table-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(70px,.6fr) minmax(120px,1fr) auto;gap:12px 24px;align-items:center}
.account-main #affwp-affiliate-dashboard .affwp-creatives-list-header{padding:0 22px 10px;font-weight:800}
.account-main #affwp-affiliate-dashboard .affwp-creatives-list-header a{color:var(--navy-2)}
.account-main #affwp-affiliate-dashboard .affwp-creatives-list-body{margin-bottom:14px;padding:16px 22px;border:var(--bw) solid var(--navy);border-radius:16px;background:var(--white)}
.account-main #affwp-affiliate-dashboard .affwp-creative-name-wrap{display:flex;align-items:center;gap:16px}
.account-main #affwp-affiliate-dashboard .affwp-creative-preview img{display:block;width:84px;height:84px;object-fit:contain;border:2px solid var(--line);border-radius:10px;background:var(--cream)}
.account-main #affwp-affiliate-dashboard .affwp-creative-name{font:800 1.125rem/1.2 var(--font-display)}
.account-main #affwp-affiliate-dashboard .affwp-creative-id{color:var(--navy-2);font-size:.875rem}
.account-main #affwp-affiliate-dashboard .affwp-creatives-list-column-label{display:none}
.account-main #affwp-affiliate-dashboard .affwp-creatives-table-cell{min-width:0}
@media (max-width:760px){
	.account-main #affwp-affiliate-dashboard .affwp-creatives-list-header{display:none}
	.account-main #affwp-affiliate-dashboard .affwp-creatives-table-row{grid-template-columns:minmax(0,1fr)}
	.account-main #affwp-affiliate-dashboard .affwp-creatives-list-column-label{display:inline;margin-right:6px;color:var(--navy-2);font-weight:700}
	.account-main #affwp-affiliate-dashboard .affwp-creative-name-details .affwp-creatives-list-column-label{display:none}
}
.account-main #affwp-affiliate-dashboard .affwp-button{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border:2px solid var(--navy);border-radius:10px;background:var(--white);color:var(--navy);font:700 1rem var(--font-body);cursor:pointer}
.account-main #affwp-affiliate-dashboard .affwp-button:hover{background:var(--cream)}
.account-main #affwp-affiliate-dashboard .affwp-creative-name-wrap{text-align:left}

/* Affiliate area, signed out: registration beside the login form */
.account-main:has(>.affwp-register-form){display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:24px 32px;align-items:start}
.account-main:has(>.affwp-register-form)>*{margin:0}
.account-main:has(>.affwp-register-form)>:is(h1,.aff-promo){grid-column:1/-1}
.account-main:has(>.affwp-register-form) .affwp-form fieldset{margin:0}
.account-main .affwp-form :is(input[type=text],input[type=email],input[type=password],input[type=url],textarea){max-width:none}
.account-main .affwp-form input[type=checkbox]{width:20px;height:20px;margin-right:8px;accent-color:var(--orange);vertical-align:middle}
@media (max-width:900px){.account-main:has(>.affwp-register-form){grid-template-columns:minmax(0,1fr)}}
/* Most popular plan: same height as the others, the label sits in the top right corner */
.plan--popular .plan__flag{top:12px;right:14px;left:auto;padding:4px 12px;border-color:var(--navy);background:var(--navy);color:var(--white);font-size:.8125rem;letter-spacing:.04em;text-transform:uppercase}
.plan--popular>.btn--primary{background:var(--navy);box-shadow:6px 6px 0 var(--orange);color:var(--white)}
.plan--popular>.btn--primary:hover{color:var(--white)}

/* Affiliate registration page */
.page-hero--affiliate{background:var(--blue)}
.perks{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:40px 32px;margin:36px 0 0;padding:0;list-style:none}
.perks li{display:flex;flex-direction:column;gap:10px}
.perks img{width:56px;height:56px;object-fit:contain}
.perks h3{font-size:1.375rem}
.perks p{margin:0;color:var(--navy-2)}
.split--top{align-items:flex-start}
.aff-earn{flex:1 1 380px;min-width:0}
.aff-earn .data-table{overflow:hidden;border:var(--bw) solid var(--navy);border-radius:20px;background:var(--white);box-shadow:var(--shadow-lg)}
.aff-earn .data-table th:not(:first-child),.aff-earn .data-table td{text-align:center}
.aff-earn .data-table td.save{color:var(--mint-ink);font-size:1.125rem}
.aff-earn .meta{margin-top:16px}
.wrap.section h2+.faq{margin-top:28px}
.aff-apply{align-items:center;padding-block:clamp(8px,2vw,24px);text-align:center}
.aff-apply h2{font-size:clamp(2.25rem,5vw,3.75rem)}
.aff-apply .lede{max-width:34em;margin-inline:auto;color:#e6eaf2}
.aff-status-wrap{padding-top:24px}
.aff-status{margin:0;padding:14px 20px;border:var(--bw) solid var(--navy);border-radius:14px;font-size:1.125rem;text-align:center}
.aff-status--ok{background:var(--mint);color:var(--mint-ink)}
.aff-status--no{background:#ffe3df;color:#8a1c0f}
.aff-status--wait{background:var(--cream)}
.aff-earn__title{margin-bottom:16px;font-size:1.5rem}
.aff-faq-group .is-layout-constrained>*{max-width:none!important;margin-inline:0!important}
.aff-faq-group .faq{max-width:56rem;margin-inline:0}
.page-content>:is(.aff-faq-group,.aff-status-wrap).wrap{max-width:var(--wrap)}

/* Single review */
.rev{max-width:52rem;margin:0;display:flex;flex-direction:column;gap:24px}
.rev__stars{color:var(--orange);font-size:2rem;letter-spacing:.12em;line-height:1;text-shadow:.04em .04em 0 var(--navy)}
.rev__quote{margin:0;font:700 clamp(1.5rem,3.2vw,2.25rem)/1.3 var(--font-display);letter-spacing:-.01em}
.rev__quote::before{content:"\201C";display:block;margin-bottom:-.15em;color:var(--orange);font-size:5rem;line-height:.8;text-shadow:.04em .04em 0 var(--navy)}
.rev__quote p{margin:0 0 .6em}
.rev__by{display:flex;align-items:center;gap:16px;font-size:1.125rem}
.rev__photo{flex:none;width:72px;height:72px;border:var(--bw) solid var(--navy);border-radius:50%;object-fit:cover}
.rev__switch{max-width:52rem;margin-top:40px}
