/* Dragonfly CPD public design system v302
   A deliberately small, page-agnostic layer for premium marketing journeys. */
:root{
  --df-ink:#142f29;--df-forest:#1c4038;--df-forest-2:#28564b;--df-gold:#c9970c;
  --df-gold-dark:#986f00;--df-cream:#f6f0e5;--df-paper:#fffdf8;--df-mist:#e8f0ed;
  --df-line:rgba(20,47,41,.14);--df-muted:#65726e;--df-danger:#b44335;--df-blue:#3b66c4;
  --df-radius:18px;--df-radius-sm:12px;--df-shadow:0 22px 70px rgba(20,47,41,.12);
  --df-width:1180px;--df-reading:720px;--df-space:clamp(4.5rem,8vw,7.5rem)
}
.v302-home{background:var(--df-paper);color:var(--df-ink)}
.v302-home .v302-wrap{width:min(var(--df-width),calc(100% - 3rem));margin-inline:auto}
.v302-home .v302-section{padding:var(--df-space) 0;position:relative}
.v302-home .v302-section--cream{background:var(--df-cream)}
.v302-home .v302-section--dark{background:var(--df-forest);color:#fff}
.v302-home .v302-kicker{font-size:.7rem;text-transform:uppercase;letter-spacing:.16em;font-weight:900;color:var(--df-gold-dark);margin-bottom:.8rem}
.v302-home .v302-section--dark .v302-kicker{color:#e1b838}
.v302-home h1,.v302-home h2,.v302-home h3{color:inherit;letter-spacing:-.025em}
.v302-home h1{font-size:clamp(2.65rem,6vw,5.4rem);line-height:.98;max-width:860px}
.v302-home h2{font-size:clamp(2rem,4vw,3.4rem);line-height:1.05;max-width:820px}
.v302-home h3{font-size:1.15rem}
.v302-home .v302-lead{font-size:clamp(1.05rem,1.6vw,1.25rem);line-height:1.65;max-width:var(--df-reading);color:var(--df-muted)}
.v302-home .v302-section--dark .v302-lead{color:rgba(255,255,255,.76)}
.v302-home .v302-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.8rem}
.v302-home .v302-btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:.8rem 1.35rem;border-radius:999px;font-weight:900;font-size:.88rem;border:1px solid transparent;transition:.18s ease}
.v302-home .v302-btn:hover{transform:translateY(-2px)}
.v302-home .v302-btn--gold{background:var(--df-gold);color:#fff;box-shadow:0 10px 30px rgba(201,151,12,.25)}
.v302-home .v302-btn--light{background:#fff;color:var(--df-forest)}
.v302-home .v302-btn--line{border-color:currentColor;color:inherit;background:transparent}
.v302-home .v302-hero{min-height:760px;padding:10rem 0 6rem;background:radial-gradient(circle at 76% 18%,rgba(201,151,12,.24),transparent 29%),linear-gradient(135deg,#102f29,#1d493f 60%,#173730);color:#fff;display:flex;align-items:center;overflow:hidden}
.v302-home .v302-hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);gap:clamp(2.5rem,6vw,5rem);align-items:center}
.v302-home .v302-hero .v302-lead{margin-top:1.5rem}
.v302-home .v302-hero em{font-style:normal;color:#e8bd3b}
.v302-home .v302-route-links{display:flex;gap:1.5rem;flex-wrap:wrap;margin-top:1.2rem}
.v302-home .v302-route-links a{font-weight:800;font-size:.83rem;color:rgba(255,255,255,.72);border-bottom:1px solid rgba(255,255,255,.28)}
.v302-home .v302-route-links a:hover{color:#fff;border-color:var(--df-gold)}
.v302-home .v302-hero-object{position:relative;min-height:470px}
.v302-home .v302-hero-object:before{content:'';position:absolute;inset:5% 0 0 12%;border:1px solid rgba(255,255,255,.12);border-radius:48% 52% 42% 58%;transform:rotate(-7deg)}
.v302-home .v302-tool-note{position:absolute;width:min(340px,82%);padding:1.15rem 1.25rem;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(14px);border-radius:16px;box-shadow:0 24px 60px rgba(0,0,0,.18)}
.v302-home .v302-tool-note:nth-child(1){top:4%;right:3%}.v302-home .v302-tool-note:nth-child(2){top:35%;left:0}.v302-home .v302-tool-note:nth-child(3){bottom:4%;right:0}
.v302-home .v302-tool-note small{display:block;color:#e8bd3b;text-transform:uppercase;letter-spacing:.1em;font-weight:900;font-size:.62rem}.v302-home .v302-tool-note strong{display:block;margin:.35rem 0;color:#fff}.v302-home .v302-tool-note p{font-size:.8rem;line-height:1.5;color:rgba(255,255,255,.72);margin:0}
.v302-home .v302-proof{padding:1.35rem 0;background:#102c27;color:#fff;border-top:1px solid rgba(255,255,255,.08)}
.v302-home .v302-proof-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.v302-home .v302-proof-grid div{padding:.6rem 1.25rem;border-right:1px solid rgba(255,255,255,.12)}.v302-home .v302-proof-grid div:last-child{border:0}.v302-home .v302-proof-grid strong{display:block;font-size:.9rem;color:#fff}.v302-home .v302-proof-grid span{font-size:.72rem;color:rgba(255,255,255,.58)}
.v302-home .v302-judgement-grid{display:grid;grid-template-columns:minmax(0,.72fr) minmax(480px,1.28fr);gap:clamp(2.5rem,6vw,5rem);align-items:start}
.v302-home .v302-question{background:var(--df-paper);border:1px solid var(--df-line);border-radius:var(--df-radius);padding:clamp(1.5rem,3vw,2.35rem);box-shadow:var(--df-shadow)}
.v302-home .v302-question-top{display:flex;justify-content:space-between;gap:1rem;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:var(--df-gold-dark)}
.v302-home .v302-question h3{font-size:1.12rem;line-height:1.5;margin:1.2rem 0}
.v302-home .v302-answer{display:block;width:100%;text-align:left;padding:.9rem 1rem;margin:.55rem 0;border:1px solid var(--df-line);border-radius:10px;background:#fff;color:var(--df-ink);font:inherit;font-size:.82rem;line-height:1.5;cursor:pointer}.v302-home .v302-answer:hover{border-color:var(--df-gold)}.v302-home .v302-answer.is-best{border-color:var(--df-forest);background:var(--df-mist)}
.v302-home .v302-feedback{display:none;margin-top:1rem;padding:1rem;border-left:3px solid var(--df-gold);background:#f9f1d9;font-size:.84rem;line-height:1.55}.v302-home .v302-feedback.show{display:block}
.v302-home .v302-model-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:3rem;border-top:1px solid var(--df-line);border-bottom:1px solid var(--df-line)}
.v302-home .v302-model{padding:2rem;border-right:1px solid var(--df-line)}.v302-home .v302-model:last-child{border:0}.v302-home .v302-model span{font-size:.68rem;letter-spacing:.1em;font-weight:900;color:var(--df-gold-dark)}.v302-home .v302-model h3{margin:1.3rem 0 .55rem}.v302-home .v302-model p{font-size:.86rem;line-height:1.6;color:var(--df-muted)}
.v302-home .v302-product-head{display:flex;justify-content:space-between;gap:2rem;align-items:end;margin-bottom:3rem}.v302-home .v302-product-head .v302-lead{max-width:520px}
.v302-home .v302-product-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.v302-home .v302-window{background:#fff;border:1px solid var(--df-line);border-radius:20px;overflow:hidden;box-shadow:var(--df-shadow)}
.v302-home .v302-window-bar{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1rem;background:#f1ece2;border-bottom:1px solid var(--df-line);font-size:.72rem;font-weight:900;color:var(--df-forest)}
.v302-home .v302-window-dots{display:flex;gap:.35rem}.v302-home .v302-window-dots i{width:7px;height:7px;border-radius:50%;background:#c8c1b4}.v302-home .v302-window-body{padding:1.2rem;background:#fbfaf7;min-height:390px}
.v302-home .v302-ui-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.v302-home .v302-ui-title strong{font-size:.95rem}.v302-home .v302-ui-pill{font-size:.62rem;font-weight:900;padding:.25rem .55rem;border-radius:999px;background:var(--df-mist);color:var(--df-forest)}
.v302-home .v302-progress{height:7px;border-radius:999px;background:#e6e1d8;overflow:hidden}.v302-home .v302-progress i{display:block;height:100%;background:var(--df-gold);border-radius:inherit}
.v302-home .v302-learning-card{padding:1rem;margin-top:.75rem;background:#fff;border:1px solid var(--df-line);border-radius:12px}.v302-home .v302-learning-card small{font-size:.6rem;font-weight:900;letter-spacing:.09em;color:var(--df-gold-dark)}.v302-home .v302-learning-card strong{display:block;font-size:.83rem;margin:.25rem 0}.v302-home .v302-learning-card p{font-size:.7rem;color:var(--df-muted);line-height:1.4;margin:0}
.v302-home .v302-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.v302-home .v302-metric{background:var(--df-forest);color:#fff;border-radius:10px;padding:.75rem}.v302-home .v302-metric strong{display:block;font-size:1.15rem;color:#e2b936}.v302-home .v302-metric span{font-size:.57rem;text-transform:uppercase;letter-spacing:.06em;color:rgba(255,255,255,.6)}
.v302-home .v302-person-row{display:grid;grid-template-columns:1fr 6rem 4.5rem;gap:.6rem;align-items:center;padding:.65rem .2rem;border-bottom:1px solid var(--df-line);font-size:.68rem}.v302-home .v302-person-row strong{font-size:.72rem}.v302-home .v302-status{font-size:.58rem;text-transform:uppercase;letter-spacing:.05em;font-weight:900}.v302-home .v302-status--good{color:#287a58}.v302-home .v302-status--watch{color:var(--df-gold-dark)}.v302-home .v302-status--urgent{color:var(--df-danger)}
.v302-home .v302-audiences{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.15);margin-top:3rem}.v302-home .v302-audience{padding:2rem;background:rgba(255,255,255,.045);min-height:300px;display:flex;flex-direction:column}.v302-home .v302-audience small{font-size:.64rem;letter-spacing:.12em;color:#e0b638;font-weight:900}.v302-home .v302-audience h3{font-size:1.35rem;margin:1.4rem 0 .65rem}.v302-home .v302-audience p{font-size:.86rem;line-height:1.6;color:rgba(255,255,255,.68)}.v302-home .v302-audience ul{margin:1rem 0 1.4rem;display:grid;gap:.4rem}.v302-home .v302-audience li{font-size:.77rem;color:rgba(255,255,255,.82)}.v302-home .v302-audience a{margin-top:auto;font-size:.78rem;font-weight:900;color:#e8bd3b}
.v302-home .v302-exec-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);gap:clamp(3rem,7vw,6rem);align-items:center}.v302-home .v302-exec-list{border-top:1px solid var(--df-line)}.v302-home .v302-exec-list div{display:grid;grid-template-columns:2.5rem 9rem 1fr;gap:.5rem;padding:1.1rem 0;border-bottom:1px solid var(--df-line)}.v302-home .v302-exec-list span{font-size:.64rem;font-weight:900;color:var(--df-gold-dark)}.v302-home .v302-exec-list strong{font-size:.84rem;color:var(--df-forest)}.v302-home .v302-exec-list p{font-size:.8rem;line-height:1.45;color:var(--df-muted);margin:0}
.v302-home .v302-final{text-align:center}.v302-home .v302-final h2,.v302-home .v302-final .v302-lead{margin-inline:auto}.v302-home .v302-final .v302-actions{justify-content:center}
@media(max-width:900px){.v302-home .v302-hero-grid,.v302-home .v302-judgement-grid,.v302-home .v302-exec-grid{grid-template-columns:1fr}.v302-home .v302-hero-object{min-height:390px}.v302-home .v302-proof-grid{grid-template-columns:1fr 1fr}.v302-home .v302-proof-grid div:nth-child(2){border-right:0}.v302-home .v302-product-grid{grid-template-columns:1fr}.v302-home .v302-product-head{display:block}.v302-home .v302-audiences{grid-template-columns:1fr}.v302-home .v302-audience{min-height:0}.v302-home .v302-model-grid{grid-template-columns:1fr}.v302-home .v302-model{border-right:0;border-bottom:1px solid var(--df-line)}}
@media(max-width:600px){.v302-home .v302-wrap{width:min(100% - 2rem,var(--df-width))}.v302-home .v302-hero{padding-top:8rem;min-height:auto}.v302-home .v302-hero-object{min-height:360px}.v302-home .v302-tool-note{width:88%}.v302-home .v302-proof-grid{grid-template-columns:1fr}.v302-home .v302-proof-grid div{border-right:0;border-bottom:1px solid rgba(255,255,255,.1)}.v302-home .v302-actions{flex-direction:column}.v302-home .v302-btn{width:100%}.v302-home .v302-route-links{flex-direction:column;gap:.65rem}.v302-home .v302-question{padding:1.1rem}.v302-home .v302-window-body{min-height:0}.v302-home .v302-person-row{grid-template-columns:1fr 4.5rem}.v302-home .v302-person-row .v302-status{display:none}.v302-home .v302-exec-list div{grid-template-columns:2rem 1fr}.v302-home .v302-exec-list p{grid-column:2}}
@media(prefers-reduced-motion:reduce){.v302-home *{scroll-behavior:auto!important;transition:none!important}}
