/* Local V2. Layout only; the existing 11.2 s demo animation is untouched. */
.v2-home { --v2-navy:#0b1d3a; --v2-gold:#be9345; --v2-paper:#f8f6f0; color:var(--v2-navy); background:var(--v2-paper); }
.v2-home *, .v2-priority * { box-sizing:border-box; }
.v2-home h1,.v2-home h2,.v2-home h3,.v2-priority h1 { letter-spacing:-.045em; }
.v2-home h2 { font-size:clamp(27px,3vw,42px); line-height:1.12; margin:0 0 14px; }
.v2-home p { line-height:1.55; }
.v2-eyebrow { margin:0 0 14px; font-size:10px; font-weight:850; letter-spacing:.16em; text-transform:uppercase; color:#8a652b; }
.v2-text-link { display:inline-flex; align-items:center; gap:9px; font-size:13px; font-weight:800; text-decoration:underline; text-underline-offset:5px; }
.v2-home .primary,.v2-priority .primary { min-height:47px; padding:14px 22px; font-size:13px; border-radius:9px; text-align:center; background:#d8b969; color:#10213d; border:1px solid #d8b969; }
.v2-hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.94fr); align-items:center; gap:clamp(24px,5vw,76px); padding:45px max(5vw,22px); color:white; background:radial-gradient(ellipse at 0 0,#233345 0,transparent 65%),#0b1930; }
.v2-hero>div { max-width:660px; }
.v2-hero .v2-eyebrow { color:#d6b76f; }
.v2-hero h1 { color:#fff; font-size:clamp(38px,4.35vw,68px); line-height:1.025; margin:0 0 22px; font-weight:800; }
.v2-hero h1 em { color:#d9b663; font-style:normal; }
.v2-hero-copy { max-width:530px; margin:0 0 22px; color:#d0d7e3; font-size:clamp(15px,1.3vw,18px); }
.v2-actions { display:flex; align-items:center; flex-wrap:wrap; gap:16px; }
.v2-hero .v2-text-link { color:#fff; }
.v2-preview { font-size:11px; color:#b7c4d7; margin:12px 0 20px; }
.v2-pills { display:flex; flex-wrap:wrap; gap:18px; list-style:none; padding:0; margin:0; color:#e7e9ee; font-size:11px; }
.v2-pills li::before { content:'✓'; color:#d9b663; padding-right:7px; }
.v2-hero figure { margin:0; border-radius:22px; overflow:hidden; position:relative; background:#e9e5dc; }
.v2-hero figure img { display:block; width:100%; height:100%; max-height:410px; object-fit:cover; }
.v2-hero figcaption { position:absolute; bottom:16px; left:18px; right:18px; display:flex; justify-content:space-between; color:#162640; font-weight:800; font-size:13px; }
.v2-hero figcaption span { letter-spacing:.15em; font-size:10px; }
.v2-formats { padding:28px max(5vw,22px); display:grid; grid-template-columns:1fr 1fr 1fr; gap:25px; align-items:center; border-bottom:1px solid #e1ded6; }
.v2-formats h2 { font-size:27px; max-width:290px; }
.v2-formats .v2-eyebrow { margin-bottom:8px; }
.v2-formats article { display:grid; grid-template-columns:105px 1fr; gap:15px; align-items:center; }
.v2-formats article img { width:105px; height:115px; object-fit:contain; background:#f0ece3; border-radius:12px; }
.v2-formats h3 { font-size:17px; margin:0 0 5px; }
.v2-formats h3 a { color:inherit; text-decoration:none; }
.v2-formats article p { font-size:12px; margin:0 0 8px; color:#5e6773; }
.v2-formats article strong { font-size:18px; margin-right:8px; }
.v2-formats article small { font-size:10px; display:block; margin-top:3px; color:#69717b; }
.v2-plans { padding:44px max(5vw,22px) 26px; }
.v2-section-head { max-width:740px; margin-bottom:25px; }
.v2-section-head>p:last-child { font-size:14px; color:#5a6574; margin:0; }
.v2-offer-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; align-items:stretch; padding-top:12px; }
.v2-offer { position:relative; min-width:0; display:flex; flex-direction:column; border:1px solid #ddd9d0; padding:23px; border-radius:14px; background:#fff; }
.v2-plan-number { margin:0 0 10px; font-size:10px; letter-spacing:.15em; color:#9a8257; font-weight:800; }
.v2-offer h3 { font-size:21px; line-height:1.2; margin:0 0 12px; min-height:50px; }
.v2-offer-description { color:#5a6574; font-size:13px; min-height:65px; margin:0 0 19px; }
.v2-price { display:flex; flex-wrap:wrap; align-items:baseline; gap:5px; }
.v2-price strong { font-size:clamp(27px,2.6vw,38px); letter-spacing:-.055em; line-height:1.1; }
.v2-price span { font-size:12px; color:#626a76; }
.v2-intro-period { font-size:11px; margin:7px 0; color:#5a6574; }
.v2-regular { font-size:12px; margin:0 0 13px; }
.v2-discount { margin:0 0 12px; font-size:10px; color:#80612c; }
.v2-offer ul { padding:12px 0 0; margin:0 0 22px; list-style:none; border-top:1px solid #e7e4dd; font-size:12px; }
.v2-offer li { margin:8px 0; line-height:1.35; padding-left:16px; position:relative; }
.v2-offer li::before { position:absolute; left:0; content:'✓'; color:#9a7432; }
.v2-offer-link { display:block; text-align:center; margin-top:auto; padding:12px 10px; border:1px solid #d1c5ab; border-radius:7px; color:#122541; text-decoration:none; font-size:12px; font-weight:800; }
.v2-offer-featured { background:#101f39; color:#fff; border-color:#aa813b; box-shadow:0 9px 22px #0b1d3a16; }
.v2-offer-featured h3,.v2-offer-featured .v2-regular,.v2-offer-featured li { color:#f4f6fa; }
.v2-offer-featured .v2-offer-description,.v2-offer-featured .v2-intro-period,.v2-offer-featured .v2-price span { color:#c4cddd; }
.v2-offer-featured .v2-price strong { color:#eed493; }
.v2-offer-featured .v2-offer-link { color:#15243c; background:#dec17b; border-color:#dec17b; }
.v2-offer-featured ul { border-color:#35435a; }
.v2-recommended { position:absolute; left:16px; top:-13px; background:#dec17b; color:#17253c; border-radius:20px; padding:5px 13px; font-size:10px; font-weight:850; }
.v2-offer-soon { background:#efede7; border-style:dashed; }
.v2-soon { font-size:19px; color:#665b43; margin-top:6px; }
.v2-offer-soon>p:last-child { font-size:11px; color:#67707b; }
.v2-offers-note { margin:17px 0 0; font-size:11px; max-width:930px; color:#596372; }
.v2-tiers { padding:24px max(5vw,22px) 30px; display:grid; grid-template-columns:1.1fr 1.1fr auto; align-items:center; gap:25px; border-bottom:1px solid #e1ded6; }
.v2-tiers h2 { font-size:21px; margin-bottom:6px; }
.v2-tiers p { margin:0; font-size:12px; color:#5e6775; }
.v2-tier-examples { display:flex; justify-content:space-between; gap:14px; }
.v2-tier-examples>div { display:flex; flex-direction:column; gap:5px; }
.v2-tier-examples span { font-size:11px; }
.v2-tier-examples strong { font-size:19px; }
.v2-tier-examples small { font-size:9px; color:#68717d; }
.v2-demo { padding:44px max(5vw,22px); background:#fff; }
.v2-demo .v2-section-head { text-align:center; margin:0 auto 24px; }
.v2-demo .tap-scene { width:min(100%,920px); margin:0 auto; }
.v2-benefits { padding:35px max(5vw,22px); border-top:1px solid #e3dfd5; }
.v2-benefits>div { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.v2-benefits article { border-top:1px solid #c9b88e; padding-top:13px; }
.v2-benefits article>span { font-size:11px; color:#8a652b; }
.v2-benefits h3 { font-size:19px; margin:10px 0 8px; }
.v2-benefits article p { margin:0; color:#5a6574; font-size:13px; }
.v2-benefits>.v2-text-link { margin-top:21px; }
.v2-audience { padding:35px max(5vw,22px); background:#eeece5; }
.v2-audience .audience-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.v2-audience .audience-card-media { aspect-ratio:2.3/1; }
.v2-audience .audience-card-copy { padding:15px; }
.v2-audience .audience-card h3 { font-size:18px; }
.v2-audience .audience-card p { font-size:12px; }
.v2-audience>.v2-text-link { margin-top:20px; }
.v2-home .v2-faq { padding:36px max(5vw,22px); display:grid; grid-template-columns:.65fr 1.35fr; gap:45px; background:var(--v2-paper); }
.v2-faq h2 { font-size:32px; }
.v2-faq details { padding:13px 0; margin:0; border-bottom:1px solid #d8d5cc; }
.v2-faq summary { font-size:14px; }
.v2-faq details p { font-size:13px; max-width:650px; }
.v2-final { display:flex; justify-content:space-between; align-items:center; gap:35px; padding:36px max(5vw,22px); background:#101f39; color:#fff; }
.v2-final h2 { font-size:32px; max-width:600px; color:#fff; }
.v2-final p:last-child { margin:0; color:#c9d2e2; font-size:13px; }
.v2-final .v2-eyebrow { color:#dec17b; }
.v2-final .primary { flex-shrink:0; }
.v2-priority { padding:65px max(6vw,24px); max-width:1050px; margin:0 auto; min-height:65vh; }
.v2-priority h1 { font-size:clamp(32px,4vw,55px); line-height:1.08; max-width:720px; margin:12px 0 20px; }
.v2-priority-lede { max-width:650px; color:#5c6776; line-height:1.65; }
.v2-access-panel { padding:28px; background:#f1eee5; border:1px solid #ddd4be; border-radius:16px; margin:28px 0 22px; }
.v2-access-panel>p { font-size:14px; line-height:1.6; max-width:650px; }
.v2-status-dot { display:inline-block; width:7px; height:7px; border-radius:50%; background:#a88b49; margin-right:10px; }
.v2-access-panel button { padding:13px 22px; margin-top:12px; border:1px solid #c4c6c9; color:#606b79; background:#e1e2e3; border-radius:8px; cursor:not-allowed; }
.v2-selected-offer { border-top:1px solid #d9d0bb; margin-top:22px; padding-top:20px; }
.v2-selected-offer small { color:#666c73; }
.v2-selected-offer h2 { margin:10px 0; }
.v2-product-notice { margin:0; padding:13px max(5vw,22px); background:#ede9dc; font-size:12px; text-align:center; color:#4b5665; }
@media (min-width:1450px) { .v2-hero { padding-top:40px; padding-bottom:40px; } }
@media (max-width:1100px) {
 .v2-formats { gap:18px; }.v2-formats article { grid-template-columns:80px 1fr; }.v2-formats article img { width:80px; height:95px; }
 .v2-offer { padding:19px; }.v2-offer h3 { font-size:19px; }.v2-tiers { grid-template-columns:1fr 1fr; }.v2-tiers>.v2-text-link { grid-column:1/-1; }
}
@media (max-width:800px) {
 .v2-hero { grid-template-columns:1fr; gap:24px; padding:32px 22px; }.v2-hero>div { max-width:none; }.v2-hero h1 { font-size:44px; }.v2-hero figure { max-width:650px; }.v2-hero figure img { height:auto; max-height:310px; }
 .v2-formats { grid-template-columns:1fr 1fr; padding:26px 22px; }.v2-formats>div { grid-column:1/-1; }.v2-formats h2 { max-width:none; }.v2-formats article { grid-template-columns:75px 1fr; gap:10px; }.v2-formats article img { width:75px; height:95px; }
 .v2-offer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }.v2-offer-featured { order:-1; }.v2-offer h3 { min-height:0; }.v2-offer-description { min-height:65px; }
 .v2-home .v2-faq { grid-template-columns:1fr; gap:8px; }.v2-final { align-items:flex-start; flex-direction:column; gap:20px; }.v2-final .primary { width:100%; }
}
@media (max-width:540px) {
 .v2-hero h1 { font-size:38px; }.v2-hero-copy { font-size:15px; }.v2-actions { gap:18px; }.v2-actions .primary { width:100%; }.v2-hero figure img { max-height:235px; object-fit:cover; }.v2-hero figcaption { bottom:10px; }
 .v2-pills { gap:12px; font-size:10px; }.v2-preview { font-size:10px; }.v2-eyebrow { font-size:9px; }
 .v2-formats { grid-template-columns:1fr; gap:18px; }.v2-formats>div { grid-column:auto; }.v2-formats article { grid-template-columns:82px 1fr; }.v2-formats article img { width:82px; height:92px; }.v2-formats article p { margin-bottom:5px; }.v2-formats article small { display:inline; margin-left:8px; }.v2-formats h2 { font-size:26px; }
 .v2-plans,.v2-demo { padding:32px 20px; }.v2-offer-grid { gap:14px; }.v2-offer { padding:17px 13px; border-radius:12px; }.v2-offer h3 { font-size:18px; min-height:44px; }.v2-offer-description { font-size:12px; min-height:95px; margin-bottom:16px; }.v2-price strong { font-size:27px; }.v2-price span { font-size:10px; }.v2-intro-period { font-size:10px; min-height:29px; }.v2-regular { font-size:11px; }.v2-offer ul { font-size:11px; }.v2-offer-link { font-size:11px; padding:11px 6px; }.v2-recommended { left:10px; padding:5px 9px; font-size:9px; }
 .v2-tiers { grid-template-columns:1fr; gap:20px; padding:25px 22px; }.v2-tier-examples { justify-content:flex-start; gap:25px; }.v2-tier-examples strong { font-size:18px; }
 .v2-benefits { padding:30px 22px; }.v2-benefits>div { grid-template-columns:1fr; gap:18px; }.v2-benefits article { display:grid; grid-template-columns:27px 1fr; column-gap:12px; }.v2-benefits article>span { grid-row:1/3; padding-top:4px; }.v2-benefits h3 { margin:0 0 5px; }.v2-benefits article p { grid-column:2; }
 .v2-audience { padding:30px 22px; }.v2-audience .audience-grid { grid-template-columns:1fr; gap:12px; }.v2-audience .audience-card { display:grid; grid-template-columns:105px 1fr; }.v2-audience .audience-card-media { aspect-ratio:auto; height:100%; min-height:120px; margin:0; }.v2-audience .audience-card-media img { height:100%; }.v2-audience .audience-card-index { display:none; }.v2-audience .audience-card h3 { font-size:16px; }.v2-audience .audience-card-copy { padding:15px 12px; }
 .v2-home .v2-faq { padding:30px 22px; }.v2-faq h2,.v2-final h2 { font-size:28px; }.v2-final { padding:30px 22px; }.v2-priority { padding:35px 22px; }.v2-access-panel { padding:22px 18px; }
}
