:root{
  --bg:#faf7f8; --surface:#ffffff; --surface2:#f2ecef;
  --fg:#231c26; --muted:#6f6672; --accent:#8a4f78;
  --accent-soft:#f0e2ec; --border:#e6dee3;
  --radius:4px; --pill:999px;
  --sp:8px; --maxw:1200px;
  --bw:1px; --shadow:0 1px 2px rgba(0,0,0,.06), 0 4px 12px rgba(0,0,0,.05);
  --font-h:"Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;
  --font-b:Charter, Georgia, Cambria, "Times New Roman", serif;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);
font-family:var(--font-b);font-size:17px;line-height:1.65;
-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3{font-family:var(--font-h);line-height:1.15;margin:0 0 calc(var(--sp)*2);
font-weight:600;letter-spacing:-.01em}
h1{font-size:clamp(30px,5.2vw,52px)}
h2{font-size:clamp(23px,3.2vw,34px)}
h3{font-size:19px;margin-bottom:calc(var(--sp)*1)}
p{margin:0 0 calc(var(--sp)*2)}
.x3a2c-wrap{max-width:var(--maxw);margin:0 auto;padding:0 calc(var(--sp)*2.5)}
.x3a2c-notice{background:var(--accent-soft);color:var(--fg);
font-size:13px;line-height:1.5;padding:calc(var(--sp)*1.2) 0;
border-bottom:var(--bw) solid var(--border)}
.x3a2c-notice span{display:inline-block;margin-right:calc(var(--sp)*2)}
.x3a2c-hdr{position:sticky;top:0;z-index:20;background:var(--bg);
border-bottom:var(--bw) solid var(--border)}
.x3a2c-hdr-in{display:flex;align-items:center;justify-content:space-between;
gap:calc(var(--sp)*2);padding:calc(var(--sp)*2) 0}
.x3a2c-brand{font-family:var(--font-h);font-weight:600;font-size:19px;
text-decoration:none;letter-spacing:-.01em}
.x3a2c-nav{display:flex;flex-wrap:wrap;gap:calc(var(--sp)*2.5);
list-style:none;margin:0;padding:0}
.x3a2c-nav a{text-decoration:none;font-size:14px;color:var(--muted);
text-transform:uppercase;letter-spacing:.08em}
.x3a2c-nav a:hover,.x3a2c-nav a[aria-current]{color:var(--accent)}
.x3a2c-hero{padding:calc(var(--sp)*8) 0 calc(var(--sp)*6)}
.x3a2c-hero-grid{display:grid;gap:calc(var(--sp)*4);align-items:center}
.x3a2c-eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;
color:var(--accent);margin:0 0 calc(var(--sp)*2)}
.x3a2c-lede{font-size:19px;color:var(--muted);max-width:62ch}
.x3a2c-cta{display:flex;flex-wrap:wrap;gap:calc(var(--sp)*1.5);
margin-top:calc(var(--sp)*3)}
.x3a2c-btn{display:inline-block;padding:calc(var(--sp)*1.6) calc(var(--sp)*3);
border-radius:var(--pill);text-decoration:none;font-size:15px;
background:var(--accent);color:var(--bg);border:var(--bw) solid var(--accent)}
.x3a2c-btn-2{background:transparent;color:var(--fg);border-color:var(--border)}
.x3a2c-sec{padding:calc(var(--sp)*6) 0;border-top:var(--bw) solid var(--border)}
.x3a2c-sec-title{margin-bottom:calc(var(--sp)*3)}
.x3a2c-sec-title::before{content:'';display:block;width:44px;height:2px;background:var(--accent);margin:0 0 calc(var(--sp)*1.5);}
.x3a2c-stats{display:grid;grid-template-columns:repeat(2,1fr);
gap:calc(var(--sp)*3)}
.x3a2c-stat b{display:block;font-family:var(--font-h);
font-size:clamp(26px,3.4vw,38px);color:var(--accent);font-weight:600}
.x3a2c-stat span{font-size:13px;color:var(--muted)}
.x3a2c-grid{display:grid;gap:calc(var(--sp)*3);
grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.x3a2c-card{background:var(--surface);border:var(--bw) solid var(--border);
border-radius:var(--radius);padding:calc(var(--sp)*3);box-shadow:var(--shadow)}
.x3a2c-card img{border-radius:calc(var(--radius)*.7);
margin-bottom:calc(var(--sp)*2);aspect-ratio:4/3;object-fit:cover;width:100%}
.x3a2c-split{display:grid;gap:calc(var(--sp)*4)}
.x3a2c-panel{background:var(--surface2);border-radius:var(--radius);
padding:calc(var(--sp)*3.5)}
.x3a2c-list{list-style:none;margin:0;padding:0}
.x3a2c-list li{display:flex;justify-content:space-between;gap:calc(var(--sp)*2);
padding:calc(var(--sp)*1.8) 0;border-bottom:var(--bw) solid var(--border)}
.x3a2c-list li:last-child{border-bottom:0}
.x3a2c-price{color:var(--accent);white-space:nowrap;font-variant-numeric:tabular-nums}
.x3a2c-tl{list-style:none;margin:0;padding:0;display:grid;gap:calc(var(--sp)*2.5)}
.x3a2c-tl li{display:grid;grid-template-columns:88px 1fr;gap:calc(var(--sp)*2);
align-items:baseline}
.x3a2c-tl b{color:var(--accent);font-variant-numeric:tabular-nums}
.x3a2c-faq dt{font-weight:600;margin-top:calc(var(--sp)*2.5)}
.x3a2c-faq dd{margin:calc(var(--sp)*.8) 0 0;color:var(--muted)}
.x3a2c-qa{margin:0 0 calc(var(--sp)*4)}
.x3a2c-qa h3{color:var(--accent);font-size:17px}
.x3a2c-prose{max-width:70ch}
.x3a2c-ftr{border-top:var(--bw) solid var(--border);
padding:calc(var(--sp)*5) 0;color:var(--muted);font-size:14px}
.x3a2c-ftr-grid{display:grid;gap:calc(var(--sp)*3);
grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
margin-bottom:calc(var(--sp)*4)}
.x3a2c-ftr a{color:var(--muted);text-decoration:none;display:block;
padding:calc(var(--sp)*.5) 0}
.x3a2c-ftr a:hover{color:var(--accent)}
.x3a2c-fine{font-size:12px;line-height:1.6;padding-top:calc(var(--sp)*2.5);
border-top:var(--bw) solid var(--border)}
@media(min-width:600px){
 .x3a2c-stats{grid-template-columns:repeat(4,1fr)}
}
@media(min-width:768px){
 body{font-size:17px}
 .x3a2c-split{grid-template-columns:1fr 1fr}
}
@media(min-width:900px){
 .x3a2c-hero-grid{grid-template-columns:1.15fr .85fr}
}
@media(max-width:599px){
 .x3a2c-hdr{position:static}
 .x3a2c-nav{gap:calc(var(--sp)*1.6)}
 .x3a2c-tl li{grid-template-columns:64px 1fr}
}
@media(prefers-reduced-motion:no-preference){
 a,.x3a2c-btn{transition:color .15s ease,background .15s ease}
}
/* design-system:v1 */
:root{--radius:4px;--radius-lg:8px;--radius-sm:2px;--shadow-sm:0 1px 2px rgba(17,17,17,.05);--shadow-md:0 2px 6px rgba(17,17,17,.07);--shadow-lg:0 6px 16px rgba(17,17,17,.08);--container:1280px;--fs-xs:0.563rem;--fs-sm:0.75rem;--fs-base:1.0rem;--fs-md:1.333rem;--fs-lg:1.777rem;--fs-xl:2.369rem;--fs-2xl:3.157rem;--fs-3xl:4.209rem;--fs-4xl:5.61rem;}
h1,h2,h3,h4,h5,h6{letter-spacing:-0.006em;line-height:1.14}

/* motion:m4a7 v1 — seeded scroll-reveal + hover (generator-agnostic) */
@media (prefers-reduced-motion: no-preference){
.m4a7{opacity:0;transform:translateY(21px) scale(0.96);transition:opacity 770ms cubic-bezier(0.215,0.61,0.355,1),transform 770ms cubic-bezier(0.215,0.61,0.355,1)}
.m4a7.m4a7-in{opacity:1;transform:none}
.m4a7-h{transition:transform 240ms cubic-bezier(0.215,0.61,0.355,1),box-shadow 240ms cubic-bezier(0.215,0.61,0.355,1)}
.m4a7-h:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(0,0,0,.16)}
}
