@layer opg-reset, opg-foundation, opg-components, opg-utilities;

@layer opg-reset {
  .opg-growth-page {
    margin: 0;
    min-width: 0;
  }

  .opg-growth-page,
  .opg-growth-page *,
  .opg-growth-page *::before,
  .opg-growth-page *::after {
    box-sizing: border-box;
  }

  .opg-growth-page :where(main, section, nav, div, article, figure, blockquote, details) {
    min-width: 0;
  }
}

/* Owner-authorized Gold Standard correction: eight focused conversion funnels. */
@layer opg-components {
  .opg-gold {
    --opg-gold-accent: #d23549;
    --opg-gold-accent-text: #a51e31;
    --opg-gold-accent-on-dark: #ff9aaa;
    --opg-gold-action: #9f1d2d;
    --opg-gold-glow: rgba(210,53,73,.28);
    background: #f6f8fb;
    overflow: clip;
  }
  .opg-gold--visibility { --opg-gold-accent: #ee8f52; --opg-gold-accent-text: #9a4b16; --opg-gold-action: #88400f; --opg-gold-glow: rgba(238,143,82,.24); }
  .opg-gold--identity { --opg-gold-accent: #65a9e6; --opg-gold-accent-text: #1d5f99; --opg-gold-action: #185282; --opg-gold-glow: rgba(54,124,190,.28); }
  .opg-gold--retention { --opg-gold-accent: #61c795; --opg-gold-accent-text: #1f704b; --opg-gold-action: #185d3e; --opg-gold-glow: rgba(55,157,110,.25); }
  .opg-gold--systems { --opg-gold-accent: #e3b45e; --opg-gold-accent-text: #7a4f00; --opg-gold-action: #674200; --opg-gold-glow: rgba(212,153,44,.23); }
  .opg-gold--insights { --opg-gold-accent: #a79bf5; --opg-gold-accent-text: #5746ad; --opg-gold-action: #49389a; --opg-gold-glow: rgba(121,104,222,.28); }
  .opg-gold--funding { --opg-gold-accent: #ff8b5d; --opg-gold-accent-text: #a33d18; --opg-gold-action: #8e3212; --opg-gold-glow: rgba(218,99,52,.27); }
  .opg-gold--formation { --opg-gold-accent: #8bb8ce; --opg-gold-accent-text: #34657d; --opg-gold-action: #28566c; --opg-gold-glow: rgba(74,133,161,.26); }

  .opg-gold-hero {
    background: linear-gradient(135deg,#050d19 0%,#08182d 52%,#102a48 100%);
    color: #e8eef6;
    min-height: min(52rem, 92svh);
    overflow: hidden;
    padding-block: clamp(4rem,9vw,7.5rem);
    position: relative;
  }
  .opg-gold-hero::before { background: linear-gradient(90deg,#071426 0%,rgba(7,20,38,.88) 42%,rgba(7,20,38,.18) 72%,transparent); content:""; inset:0; position:absolute; z-index:1; }
  .opg-gold-hero__glow { background: radial-gradient(circle,var(--opg-gold-glow),transparent 68%); filter:blur(2rem); height:34rem; left:20%; opacity:.9; position:absolute; top:-12rem; width:34rem; }
  .opg-gold-hero__grid { align-items:center; display:grid; min-height:36rem; position:relative; }
  .opg-gold-hero__copy { max-width:43rem; position:relative; z-index:3; }
  .opg-gold-hero__copy h1 { color:#fff; font-size:clamp(2.7rem,6.5vw,5.65rem); letter-spacing:-.055em; line-height:.98; margin-bottom:1.5rem; text-wrap:balance; }
  .opg-gold-hero__copy .opg-lede { color:#c9d6e5; max-width:38rem; }
  .opg-gold-hero__copy .opg-eyebrow { color:var(--opg-gold-accent-on-dark); }
  .opg-gold-hero__media { inset:0; margin:0; position:absolute; z-index:0; }
  .opg-gold-hero__media img { height:100%; object-fit:cover; object-position:center; width:100%; }
  .opg-gold-hero__micro { color:#8fa1b6; font-size:.75rem; margin:1.3rem 0 0; }
  .opg-gold-hero .opg-action-group { max-width:38rem; }
  .opg-gold-hero .opg-action--primary { background:linear-gradient(135deg,var(--opg-gold-action),#751323); box-shadow:0 1rem 3rem var(--opg-gold-glow); }

  .opg-gold-heading { max-width:52rem; }
  .opg-gold-heading > span,
  .opg-gold-value__story > span,
  .opg-gold-proof__panel > div > span,
  .opg-gold-convert__grid > div > span,
  .opg-gold-final .opg-container > span { color:var(--opg-gold-accent-text); display:block; font-size:.75rem; font-weight:850; letter-spacing:.14em; margin-bottom:1rem; text-transform:uppercase; }
  .opg-gold-value__story > span,
  .opg-gold-final .opg-container > span { color:var(--opg-gold-accent-on-dark); }
  .opg-gold-heading h2 { font-size:clamp(2.15rem,5vw,4rem); margin-bottom:1rem; max-width:16ch; }
  .opg-gold-heading p { color:var(--opg-color-muted); font-size:1.08rem; max-width:44rem; }

  .opg-gold-tool { background:linear-gradient(180deg,#fff,#f4f7fb); }
  .opg-tool-card { background:#fff; border:1px solid rgba(18,51,91,.13); border-radius:clamp(1.25rem,3vw,2rem); box-shadow:0 2rem 5rem rgba(7,20,38,.12); margin-top:clamp(2rem,5vw,4rem); overflow:hidden; padding:clamp(1.25rem,4vw,3rem); position:relative; }
  .opg-tool-card::before { background:linear-gradient(90deg,var(--opg-gold-accent),transparent); content:""; height:3px; inset:0 0 auto; position:absolute; }

  .opg-calc { display:grid; gap:2rem; }
  .opg-calc__inputs { display:grid; gap:1rem; }
  .opg-calc__inputs label { color:var(--opg-color-navy-950); font-size:.8rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
  .opg-calc__inputs label > span { align-items:center; background:#f5f7fa; border:1px solid #cad4df; border-radius:.8rem; display:flex; font-size:1.25rem; margin-top:.4rem; overflow:hidden; padding-left:.8rem; }
  .opg-calc__inputs input { appearance:textfield; background:transparent; border:0; color:var(--opg-color-navy-950); font:750 1.25rem/1 var(--opg-font-sans); min-height:3.5rem; outline:0; padding:.6rem; width:100%; }
  .opg-calc__inputs label > span:focus-within { box-shadow:0 0 0 3px var(--opg-color-focus); }
  .opg-calc__result { background:linear-gradient(145deg,#071426,#12335b); border-radius:1.25rem; color:#dbe5ef; display:flex; flex-direction:column; justify-content:center; min-height:16rem; padding:clamp(1.5rem,4vw,3rem); }
  .opg-calc__result span { color:var(--opg-gold-accent-on-dark); font-size:.75rem; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
  .opg-calc__result strong { color:#fff; font-size:clamp(2.5rem,6vw,5rem); letter-spacing:-.06em; line-height:1; margin:.75rem 0; }
  .opg-calc__result b { color:#fff; font-size:1.2rem; }
  .opg-calc__result small { color:#9fb0c3; margin-top:1.3rem; max-width:36rem; }

  .opg-score { display:grid; gap:1.5rem; }
  .opg-score__questions { display:grid; gap:.75rem; }
  .opg-score__questions label { align-items:center; background:#f4f7fa; border:1px solid #d8e0e9; border-radius:1rem; cursor:pointer; display:flex; gap:1rem; min-height:4rem; padding:1rem; }
  .opg-score__questions input { accent-color:var(--opg-gold-accent); height:1.4rem; width:1.4rem; }
  .opg-score__result { background:#071426; border-radius:1.25rem; color:#cdd8e5; padding:2rem; }
  .opg-score__result span { color:var(--opg-gold-accent-on-dark); font-size:.75rem; font-weight:850; text-transform:uppercase; }
  .opg-score__result strong { color:#fff; display:block; font-size:clamp(3rem,8vw,6rem); letter-spacing:-.06em; line-height:1; margin:1rem 0; }

  .opg-impression { display:grid; gap:clamp(1.25rem,3vw,2rem); margin-top:clamp(1.25rem,3vw,2rem); }
  .opg-impression__instruction { align-items:flex-start; color:#52677d; display:flex; flex-direction:column; gap:.25rem; margin:0; }
  .opg-impression__instruction strong { color:#071426; font-size:clamp(1.05rem,2vw,1.3rem); }
  .opg-impression__instruction span { font-size:.9rem; }
  .opg-impression__compare { background:#dfe7ef; border:1px solid #cad5e1; border-radius:1.4rem; box-shadow:inset 0 1px rgba(255,255,255,.8); cursor:ew-resize; height:clamp(22rem,54vw,34rem); overflow:hidden; position:relative; touch-action:none; user-select:none; }
  .opg-impression__compare:has(.opg-impression__control:focus-visible) { box-shadow:0 0 0 4px var(--opg-color-focus),inset 0 1px rgba(255,255,255,.8); }
  .opg-impression__site { inset:0; overflow:hidden; position:absolute; }
  .opg-impression__site--before { background:#e9edf1; color:#3c4c5d; filter:saturate(.55); }
  .opg-impression__site--after { background:linear-gradient(135deg,#071426 0%,#102b4b 72%,#1a456f 100%); clip-path:inset(0 calc(100% - var(--opg-reveal)) 0 0); color:#fff; }
  .opg-impression__browser { align-items:center; background:rgba(255,255,255,.94); border-bottom:1px solid rgba(14,39,68,.14); display:flex; gap:.42rem; height:3rem; padding:0 1rem; }
  .opg-impression__browser i { background:#bcc7d2; border-radius:50%; height:.5rem; width:.5rem; }
  .opg-impression__site--after .opg-impression__browser i:first-child { background:#ef5264; }
  .opg-impression__browser small { color:#17314d; font-size:.68rem; font-weight:900; letter-spacing:.11em; margin-left:.5rem; }
  .opg-impression__site-body { align-items:flex-start; display:flex; flex-direction:column; height:calc(100% - 3rem); justify-content:center; padding:clamp(1.5rem,6vw,5rem); width:min(100%,58rem); }
  .opg-impression__site-body > span { color:#65788b; font-size:.72rem; font-weight:850; letter-spacing:.13em; text-transform:uppercase; }
  .opg-impression__site--after .opg-impression__site-body > span { color:#ff7a88; }
  .opg-impression__site-body strong { display:block; font-size:clamp(2rem,6vw,4.9rem); letter-spacing:-.06em; line-height:.96; margin:.8rem 0 1rem; max-width:13ch; }
  .opg-impression__site--before .opg-impression__site-body strong { color:#596878; font-family:Georgia,serif; font-weight:500; }
  .opg-impression__site-body p { color:#6f8091; font-size:clamp(.9rem,2vw,1.15rem); max-width:35rem; }
  .opg-impression__site--after .opg-impression__site-body p { color:#c7d5e3; }
  .opg-impression__site-body > b { background:#aeb9c3; border-radius:.25rem; color:#fff; margin-top:1rem; padding:.75rem 1rem; }
  .opg-impression__site--after .opg-impression__site-body > b { background:linear-gradient(135deg,#cf2639,#e03a4d); border-radius:.8rem; box-shadow:0 .7rem 1.5rem rgba(207,38,57,.25); }
  .opg-impression__proof { display:flex; flex-wrap:wrap; gap:.55rem; margin-top:1.35rem; }
  .opg-impression__proof i { border:1px solid rgba(255,255,255,.2); border-radius:999px; color:#dce8f3; font-size:.75rem; font-style:normal; padding:.45rem .7rem; }
  .opg-impression__divider { background:#fff; box-shadow:0 0 0 1px rgba(7,20,38,.2),0 0 2rem rgba(7,20,38,.25); height:100%; left:var(--opg-reveal); pointer-events:none; position:absolute; top:0; transform:translateX(-50%); width:3px; z-index:3; }
  .opg-impression__divider span { align-items:center; background:#fff; border:1px solid #c7d3df; border-radius:50%; box-shadow:0 .4rem 1rem rgba(7,20,38,.22); color:#071426; display:flex; font-size:1rem; font-weight:900; height:3.25rem; justify-content:center; left:50%; position:absolute; top:50%; transform:translate(-50%,-50%); width:3.25rem; }
  .opg-impression__label { background:rgba(7,20,38,.82); border-radius:999px; color:#fff; font-size:.7rem; font-weight:850; letter-spacing:.1em; padding:.45rem .65rem; position:absolute; text-transform:uppercase; top:4rem; }
  .opg-impression__label--before { right:1rem; }
  .opg-impression__label--after { left:1rem; }
  .opg-impression__control { cursor:ew-resize; height:100%; inset:0; margin:0; opacity:.001; position:absolute; width:100%; z-index:4; }
  .opg-impression__reaction { align-items:center; background:#eef4fb; border-left:4px solid var(--opg-gold-accent); border-radius:0 1rem 1rem 0; display:flex; flex-wrap:wrap; gap:.7rem 1rem; margin:0; padding:1rem 1.2rem; }
  .opg-impression__reaction span { color:#62758a; font-size:.7rem; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
  .opg-impression__reaction strong { color:#071426; font-size:clamp(1rem,2vw,1.3rem); }
  .opg-impression__outcomes { display:grid; gap:.65rem; list-style:none; margin:0; padding:0; }
  .opg-impression__outcomes li { align-items:center; color:#17314d; display:flex; font-weight:800; gap:.6rem; }
  .opg-impression__outcomes li::before { align-items:center; background:#e8f6ef; border-radius:50%; color:#14794d; content:'✓'; display:flex; flex:0 0 1.5rem; height:1.5rem; justify-content:center; }
  .opg-impression__cta { justify-self:start; }

  .opg-workflow { --opg-workflow-state:#e22d41; display:grid; gap:1.1rem; }
  .opg-workflow__head { align-items:center; display:flex; gap:1rem; justify-content:space-between; }
  .opg-workflow__head > div:first-child > span { color:var(--opg-gold-accent-text); display:block; font-size:.68rem; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
  .opg-workflow__head h3 { color:#071426; font-size:clamp(1.4rem,3vw,2rem); margin:.35rem 0 0; }
  .opg-workflow__play-wrap { position:relative; }
  .opg-workflow__play-wrap > i { background:rgba(226,45,65,.22); border-radius:999px; inset:-.4rem; opacity:0; pointer-events:none; position:absolute; }
  .opg-workflow__play-wrap.needs-attention > i { animation:opg-workflow-play-cue 1.15s ease-out 3; }
  @keyframes opg-workflow-play-cue { 0% { opacity:.85; transform:scale(.94); } 70%,100% { opacity:0; transform:scale(1.16); } }
  .opg-workflow__play { align-items:center; background:transparent; border:1px solid #b9c7d5; border-radius:.7rem; color:#071426; cursor:pointer; display:inline-flex; font:800 .82rem/1 var(--opg-font-sans); gap:.45rem; min-height:2.8rem; padding:.7rem .9rem; position:relative; }
  .opg-workflow__play:hover { background:#eef3f8; }
  .opg-workflow__play:focus-visible { outline:3px solid var(--opg-color-focus); outline-offset:2px; }
  .opg-workflow__play:disabled { cursor:wait; opacity:.65; }
  .opg-workflow__play svg { fill:currentColor; height:1rem; stroke:none; width:1rem; }
  .opg-workflow__stage { min-height:18rem; padding:1rem 0; position:relative; }
  .opg-workflow__line { border-top:2px solid #cbd6e1; left:10%; position:absolute; right:10%; top:4.35rem; }
  .opg-workflow__stage ol { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); list-style:none; margin:0; padding:0; position:relative; }
  .opg-workflow__stage li { align-items:center; display:flex; flex-direction:column; gap:.35rem; text-align:center; }
  .opg-workflow__stage li > span { align-items:center; background:#f5f7fa; border:2px solid #cbd6e1; border-radius:50%; color:#071426; display:flex; height:3.4rem; justify-content:center; transition:background .3s ease,border-color .3s ease,transform .3s ease; width:3.4rem; }
  .opg-workflow__stage li.is-active > span { background:#fff0f2; border-color:var(--opg-workflow-state); transform:scale(1.08); }
  .opg-workflow__stage li svg,.opg-workflow__order svg { fill:none; height:1.25rem; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.7; width:1.25rem; }
  .opg-workflow__stage li b,.opg-workflow__stage li small { display:block; }
  .opg-workflow__stage li b { color:#071426; font-size:.92rem; }
  .opg-workflow__stage li small { color:#68798c; font-size:.75rem; }
  .opg-workflow__order { align-items:center; background:#e22d41; border-radius:50%; color:#fff; display:flex; height:2rem; justify-content:center; left:0; pointer-events:none; position:absolute; top:0; transform:translate(0,0); transition:background .3s ease,transform .55s cubic-bezier(.2,.8,.2,1); width:2rem; z-index:3; }
  .opg-workflow__owner { align-items:center; display:flex; gap:.8rem; left:50%; position:absolute; top:10.5rem; transform:translateX(-50%); width:min(29rem,94%); }
  .opg-workflow__owner > span { align-items:center; background:#fff1f3; border:2px solid var(--opg-workflow-state); border-radius:50%; color:#071426; display:flex; flex:0 0 3.6rem; font-size:.72rem; font-weight:900; height:3.6rem; justify-content:center; transition:background .3s ease,border-color .3s ease; }
  .opg-workflow__owner b,.opg-workflow__owner small { display:block; }
  .opg-workflow__owner b { color:#071426; }
  .opg-workflow__owner small { color:#68798c; margin-top:.3rem; }
  .opg-workflow__message { align-items:center; border-top:1px solid #d6e0e9; display:flex; flex-wrap:wrap; gap:.5rem 1rem; margin:0; padding-top:.85rem; }
  .opg-workflow__message span { color:#68798c; font-size:.7rem; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
  .opg-workflow__message strong { color:#071426; }
  .opg-workflow__reaction { color:#071426; font-size:clamp(1.05rem,2vw,1.35rem); font-weight:850; margin:0; }
  .opg-workflow__cta { justify-self:start; }
  .opg-workflow.is-connected { --opg-workflow-state:#16835b; }
  .opg-workflow.is-connected .opg-workflow__stage li.is-active > span,.opg-workflow.is-connected .opg-workflow__owner > span { background:#eaf8f1; }
  .opg-workflow.is-connected .opg-workflow__order { background:#16835b; }

  .opg-blindspot { display:grid; gap:2rem; }
  .opg-blindspot [role="tablist"] { display:grid; gap:.6rem; }
  .opg-blindspot [role="tab"] { background:#eef2f6; border:1px solid #d7e0e9; border-radius:.8rem; color:#33475c; cursor:pointer; font:800 1rem/1 var(--opg-font-sans); min-height:3.6rem; padding:.8rem; text-align:left; }
  .opg-blindspot [role="tab"][aria-selected="true"] { background:#071426; color:#fff; }
  .opg-blindspot article { background:linear-gradient(145deg,#071426,#183b63); border-radius:1.25rem; color:#c8d5e2; padding:clamp(1.5rem,4vw,3rem); }
  .opg-blindspot article > span { color:var(--opg-gold-accent-on-dark); font-size:.75rem; font-weight:850; text-transform:uppercase; }
  .opg-blindspot h3 { color:#fff; font-size:clamp(1.8rem,4vw,3.2rem); margin:1rem 0 2rem; }

  .opg-funding-tool { padding:0; }
  .opg-funding-tool__visual { aspect-ratio:2 / 1; background:#071426; margin:0; overflow:hidden; position:relative; }
  .opg-funding-tool__visual::after { background:linear-gradient(90deg,rgba(7,20,38,.32),transparent 48%); content:""; inset:0; pointer-events:none; position:absolute; }
  .opg-funding-tool__visual img { height:100%; object-fit:cover; transition:opacity .24s ease,transform .5s ease; width:100%; }
  .opg-funding-tool__visual img.is-changing { opacity:.35; transform:scale(1.015); }
  .opg-funding-tool__visual figcaption { align-items:center; background:#071426; border:1px solid rgba(255,255,255,.24); border-radius:999px; color:#fff; display:flex; font-size:.72rem; font-weight:850; gap:.5rem; left:clamp(1rem,3vw,2rem); letter-spacing:.08em; padding:.55rem .8rem; position:absolute; text-transform:uppercase; top:clamp(1rem,3vw,2rem); z-index:2; }
  .opg-funding-tool__visual figcaption i { background:#cf2639; border-radius:50%; height:.5rem; width:.5rem; }
  .opg-funding-tool__body { display:grid; gap:clamp(1.5rem,4vw,3.5rem); padding:clamp(1.5rem,4vw,3rem); }
  .opg-funding-tool__emotion > span,.opg-funding-tool__cards legend { color:#9f1d2d; font-size:.72rem; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
  .opg-funding-tool__emotion h3 { color:#071426; font-size:clamp(2rem,4vw,3.4rem); letter-spacing:-.045em; line-height:1.04; margin:.65rem 0 1rem; max-width:17ch; }
  .opg-funding-tool__emotion > p { color:#52677d; font-size:1rem; line-height:1.65; max-width:40rem; }
  .opg-funding-tool__emotion .opg-funding-tool__question { border-left:4px solid #cf2639; color:#071426; font-weight:800; margin:1.5rem 0 0; padding-left:1rem; }
  .opg-funding-tool__cards { border:0; margin:0; padding:0; }
  .opg-funding-tool__cards legend { margin-bottom:.75rem; }
  .opg-funding-tool__cue { align-items:center; background:#fff2f4; border:1px solid #f2c3ca; border-radius:.75rem; color:#52677d; display:grid; gap:.05rem .65rem; grid-template-columns:2.15rem 1fr; margin:0 0 .8rem; padding:.65rem .75rem; }
  .opg-funding-tool__cue[hidden] { display:none; }
  .opg-funding-tool__cue > span { align-items:center; background:#cf2639; border-radius:50%; color:#fff; display:flex; grid-row:1 / span 2; height:2.15rem; justify-content:center; width:2.15rem; }
  .opg-funding-tool__cue svg,.opg-funding-tool__icon svg { fill:none; height:1.2rem; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.8; width:1.2rem; }
  .opg-funding-tool__cue strong { color:#071426; font-size:.82rem; }
  .opg-funding-tool__cue small { font-size:.72rem; }
  .opg-funding-tool__cue.is-attention > span { animation:opg-funding-cue 1.2s ease-out 2; }
  @keyframes opg-funding-cue { 0%,100% { box-shadow:0 0 0 0 rgba(207,38,57,0); transform:scale(1); } 45% { box-shadow:0 0 0 .5rem rgba(207,38,57,.16); transform:scale(1.08); } }
  .opg-funding-tool__choices { display:grid; gap:.65rem; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .opg-gold .opg-funding-tool__choices button { align-items:center!important; appearance:none; background:#fff!important; border:1px solid #b8c5d3!important; border-radius:.8rem!important; box-shadow:none!important; color:#071426!important; cursor:pointer; display:grid!important; font:800 .88rem/1.18 var(--opg-font-sans)!important; gap:.65rem; grid-template-columns:2.15rem minmax(0,1fr); min-height:5rem; padding:.75rem!important; position:relative; text-align:left!important; text-transform:none!important; }
  .opg-gold .opg-funding-tool__choices button:hover { border-color:#cf2639!important; }
  .opg-gold .opg-funding-tool__choices button:focus-visible { outline:3px solid var(--opg-color-focus)!important; outline-offset:2px; }
  .opg-gold .opg-funding-tool__choices button[aria-pressed="true"] { background:#071426!important; border-color:#071426!important; color:#fff!important; box-shadow:inset 0 3px 0 #cf2639!important; }
  .opg-gold .opg-funding-tool__choices button[aria-pressed="true"]::after { align-items:center; background:#cf2639; border-radius:50%; color:#fff; content:'✓'; display:flex; font-size:.65rem; height:1.2rem; justify-content:center; position:absolute; right:.4rem; top:.4rem; width:1.2rem; }
  .opg-funding-tool__icon { align-items:center; background:#eaf0f6; border-radius:.65rem; color:#173a61; display:flex; height:2.15rem; justify-content:center; width:2.15rem; }
  .opg-funding-tool__choices button[aria-pressed="true"] .opg-funding-tool__icon { background:rgba(255,255,255,.13); color:#fff; }
  .opg-funding-tool__choices strong { color:inherit!important; display:block; overflow-wrap:normal; }
  .opg-funding-tool__range { color:#071426; display:grid; gap:.65rem; grid-template-columns:1fr auto; margin-top:1.5rem; }
  .opg-funding-tool__range > span { align-self:end; font-size:.8rem; font-weight:850; text-transform:uppercase; }
  .opg-funding-tool__range output { color:#9f1d2d; font-size:clamp(1.7rem,4vw,2.5rem); font-weight:850; letter-spacing:-.04em; }
  .opg-funding-tool__range input { accent-color:#cf2639; grid-column:1 / -1; width:100%; }
  .opg-funding-tool__summary { color:#65778a; font-size:.78rem; margin:.65rem 0 0; }
  .opg-funding-tool__action { align-items:center; border-top:1px solid #dbe2ea; display:flex; gap:1.25rem; justify-content:space-between; padding:0 clamp(1.5rem,4vw,3rem) clamp(1.5rem,4vw,3rem); }
  .opg-funding-tool__action small { color:#65778a; line-height:1.5; max-width:36rem; }
  .opg-funding-tool__action .opg-action--primary { background:#cf2639; flex:0 0 auto; }

  .opg-roadmap { display:grid; gap:1.5rem; }
  .opg-roadmap ol { display:grid; gap:.65rem; list-style:none; margin:0; padding:0; }
  .opg-roadmap label { align-items:center; background:#f2f5f8; border:1px solid #d6dfe8; border-radius:1rem; cursor:pointer; display:grid; gap:.8rem; grid-template-columns:auto auto 1fr; min-height:4.5rem; padding:1rem; }
  .opg-roadmap input { accent-color:var(--opg-gold-accent); height:1.35rem; width:1.35rem; }
  .opg-roadmap label span { color:var(--opg-gold-accent-text); font-size:.72rem; font-weight:850; }
  .opg-roadmap__result { background:#071426; border-radius:1.25rem; color:#cbd7e4; padding:2rem; }
  .opg-roadmap__result span { color:var(--opg-gold-accent-on-dark); font-size:.75rem; font-weight:850; text-transform:uppercase; }
  .opg-roadmap__result strong { color:#fff; display:block; font-size:clamp(2rem,5vw,3.5rem); margin:.6rem 0; }

  .opg-gold-value { background:#071426; color:#d3deea; position:relative; }
  .opg-gold-value::after { background:radial-gradient(circle,var(--opg-gold-glow),transparent 70%); content:""; height:30rem; position:absolute; right:-12rem; top:-10rem; width:30rem; }
  .opg-gold-value__grid { display:grid; gap:3rem; position:relative; z-index:1; }
  .opg-gold .opg-gold-value__story h2 { color:#fff !important; font-size:clamp(2rem,4.5vw,3.75rem); letter-spacing:-.045em; max-width:20ch; }
  .opg-gold-fact { background:rgba(255,255,255,.065); border-left:3px solid var(--opg-gold-accent-on-dark); border-radius:0 .9rem .9rem 0; margin-top:2rem; padding:1.25rem 1.4rem; }
  .opg-gold-fact > span { color:var(--opg-gold-accent-on-dark); display:block; font-size:.7rem; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
  .opg-gold-fact p { color:#fff !important; font-size:1.05rem; font-weight:750; line-height:1.55; margin:.55rem 0 .75rem; }
  .opg-gold-fact cite { color:#aebdcd; display:block; font-size:.75rem; font-style:normal; line-height:1.5; }
  .opg-gold-value__cards { display:grid; gap:1rem; }
  .opg-gold-value__cards article { align-items:start; background:rgba(255,255,255,.055); border:1px solid rgba(255,255,255,.13); border-radius:.85rem; display:grid; gap:.3rem 1rem; grid-template-columns:2.2rem minmax(0,1fr); opacity:.25; padding:1.35rem 1.5rem; transform:translateY(1.2rem); transition:opacity .45s ease,transform .45s ease; }
  .opg-gold-value__cards article.is-visible { opacity:1; transform:none; }
  .opg-gold-value__cards b { color:var(--opg-gold-accent-on-dark); font-size:.72rem; grid-row:1 / span 2; letter-spacing:.12em; padding-top:.28rem; }
  .opg-gold .opg-gold-value__cards h3 { color:#fff !important; font-size:1.25rem; margin:0; }
  .opg-gold-value__cards p { color:#aebdcd; margin:.25rem 0 0; }

  .opg-gold-proof { background:linear-gradient(160deg,#eef2f7,#fff); }
  .opg-gold-proof__panel { background:#fff; border:1px solid #dbe2ea; border-radius:2rem; box-shadow:0 2rem 5rem rgba(7,20,38,.09); display:grid; gap:2rem; opacity:.3; padding:clamp(1.5rem,5vw,4rem); transform:translateY(1.3rem); transition:opacity .5s ease,transform .5s ease; }
  .opg-gold-proof__panel.is-visible { opacity:1; transform:none; }
  .opg-gold-proof__panel h2 { font-size:clamp(2rem,4vw,3.4rem); max-width:18ch; }
  .opg-gold-proof__panel > div > p { color:#526477; font-size:1.05rem; max-width:48rem; }
  .opg-gold-bridge { align-content:center; background:linear-gradient(145deg,#071426,#102d50); border-radius:1.2rem; color:#fff; display:grid; overflow:hidden; padding:clamp(1.25rem,3vw,2rem); position:relative; }
  .opg-gold-bridge::after { background:radial-gradient(circle,rgba(42,121,219,.22),transparent 68%); content:""; height:18rem; left:50%; pointer-events:none; position:absolute; top:42%; transform:translate(-50%,-50%); width:26rem; }
  .opg-gold-bridge__visual { display:block; height:auto; margin:0 auto .75rem; max-width:30rem; overflow:visible; position:relative; width:100%; z-index:1; }
  .opg-gold-bridge__track { fill:none; stroke:url(#opg-bridge-gradient); stroke-dasharray:450; stroke-dashoffset:450; stroke-linecap:round; stroke-width:2; transition:stroke-dashoffset 1.35s cubic-bezier(.2,.8,.2,1) .15s; }
  .opg-gold-bridge__node { color:#f5f9ff; fill:none; opacity:.35; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:2.2; transform-box:fill-box; transform-origin:center; transition:opacity .45s ease,filter .45s ease; }
  .opg-gold-bridge__node > .opg-gold-bridge__ring { fill:rgba(15,52,93,.72); stroke:#77b4ff; stroke-width:1.5; }
  .opg-gold-bridge__node--1 { transition-delay:.25s; }
  .opg-gold-bridge__node--2 { transition-delay:.65s; }
  .opg-gold-bridge__node--3 { transition-delay:1.05s; }
  .opg-gold-proof__panel.is-visible .opg-gold-bridge__track { stroke-dashoffset:0; }
  .opg-gold-proof__panel.is-visible .opg-gold-bridge__node { filter:drop-shadow(0 0 8px rgba(63,153,255,.72)); opacity:1; }
  .opg-gold-proof__panel.is-visible .opg-gold-bridge__node--2 { filter:drop-shadow(0 0 9px rgba(233,63,82,.65)); }
  .opg-gold-bridge__process { align-items:center; display:grid; gap:.25rem; grid-template-columns:repeat(3,minmax(0,1fr)); list-style:none; margin:0 0 1.35rem; padding:0; position:relative; z-index:1; }
  .opg-gold-bridge__process li { align-items:center; color:#fff; display:grid; font-size:clamp(.68rem,1.5vw,.8rem); font-weight:850; gap:.2rem; grid-template-columns:1fr auto; letter-spacing:.075em; min-width:0; text-align:center; text-transform:uppercase; }
  .opg-gold-bridge__process li:last-child { grid-template-columns:1fr; }
  .opg-gold-bridge__process b { color:var(--opg-gold-accent-on-dark); font-size:1rem; }
  .opg-gold-bridge__cta { background:var(--opg-gold-accent-text); border-radius:.75rem; color:#fff !important; display:block; font-weight:850; padding:.85rem 1rem; position:relative; text-align:center; text-decoration:none !important; transition:filter .2s ease,transform .2s ease; z-index:1; }
  .opg-gold-bridge__cta:is(:hover,:focus-visible) { filter:brightness(1.12); transform:translateY(-1px); }
  .opg-gold-bridge__cta:focus-visible { outline:3px solid #fff; outline-offset:3px; }

  .opg-gold-convert { background:#fff; }
  .opg-gold-convert__grid { display:grid; gap:clamp(2.5rem,7vw,6rem); }
  .opg-gold-convert__grid h2 { font-size:clamp(2.2rem,5vw,4rem); max-width:15ch; }
  .opg-gold-objections { border-top:1px solid #d8e0e9; margin-top:2rem; }
  .opg-gold-objections details { border-bottom:1px solid #d8e0e9; padding:1rem 0; }
  .opg-gold-objections summary { color:#071426; cursor:pointer; font-weight:800; }
  .opg-gold-objections p { color:#536579; font-size:.9rem; margin:.7rem 0 0; }

  .opg-gold-form { background:#f3f6f9; border:1px solid #d7e0e9; border-radius:1.5rem; box-shadow:0 2rem 5rem rgba(7,20,38,.1); display:grid; gap:1rem; padding:clamp(1.25rem,4vw,2.5rem); position:relative; }
  .opg-gold-form__head { border-bottom:1px solid #d7e0e9; padding-bottom:1rem; }
  .opg-gold-form__head span { color:var(--opg-gold-accent-text); display:block; font-size:.72rem; font-weight:850; text-transform:uppercase; }
  .opg-gold-form__head strong { color:#071426; display:block; font-size:1.35rem; }
  .opg-gold-form__row { display:grid; gap:1rem; }
  .opg-gold-form label { color:#071426; font-size:.85rem; font-weight:750; }
  .opg-gold-form input:not([type="checkbox"]),.opg-gold-form textarea { background:#fff; border:1px solid #b8c5d3; border-radius:.7rem; display:block; font:inherit; margin-top:.35rem; min-height:3rem; padding:.7rem .8rem; width:100%; }
  .opg-gold-form :where(input,textarea)[aria-invalid="true"] { border-color:#9f1d2d; box-shadow:0 0 0 2px rgba(159,29,45,.14); }
  .opg-gold-form textarea { resize:vertical; }
  .opg-gold-form__consent { align-items:start; display:grid; gap:.7rem; grid-template-columns:auto 1fr; line-height:1.4; }
  .opg-gold-form__consent input { accent-color:var(--opg-gold-accent); height:1.2rem; margin-top:.15rem; width:1.2rem; }
  .opg-gold-form__honeypot { left:-10000px; position:absolute; }
  .opg-gold-form button { border:0; cursor:pointer; }
  .opg-gold-form button:disabled { cursor:wait; opacity:.65; }
  .opg-gold-form__status { font-weight:800; margin:0; min-height:1.5rem; }
  .opg-gold-form__status[data-state="success"] { color:#1d6b50; }
  .opg-gold-form__status[data-state="error"] { color:#9f1d2d; }
  .opg-gold-form__download { background:#e4f5ed; border:1px solid #add5c0; border-radius:.7rem; color:#15583f; font-weight:850; padding:.8rem; text-align:center; text-decoration:none; }
  .opg-gold-form__fallback { color:#65778a; font-size:.78rem; margin:0; }

  .opg-gold-final { background:linear-gradient(135deg,#071426,#102d50); color:#cbd7e4; padding-block:clamp(4rem,9vw,7rem); text-align:center; }
  .opg-gold-final h2 { color:#fff; font-size:clamp(2.2rem,5vw,4.4rem); margin-inline:auto; max-width:18ch; }
  .opg-gold-final__actions { align-items:center; display:flex; flex-direction:column; gap:1rem; justify-content:center; margin-top:2rem; }
  .opg-gold-final__actions > a:not(.opg-action) { color:#dce6f0; font-weight:750; }
}

@layer opg-utilities {
  @media (min-width:36rem) {
    .opg-gold-form__row { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .opg-blindspot [role="tablist"] { grid-template-columns:repeat(4,minmax(0,1fr)); }
    .opg-gold-final__actions { flex-direction:row; flex-wrap:wrap; }
  }
  @media (min-width:48rem) {
    .opg-calc,.opg-score,.opg-blindspot,.opg-roadmap { grid-template-columns:minmax(0,1fr) minmax(20rem,.85fr); }
    .opg-impression__outcomes { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .opg-gold-proof__panel { grid-template-columns:minmax(0,1.25fr) minmax(18rem,.75fr); }
    .opg-gold-convert__grid { grid-template-columns:minmax(0,.85fr) minmax(28rem,1fr); }
  }
  @media (min-width:64rem) {
    .opg-gold-value__grid { grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); }
    .opg-funding-tool__body { grid-template-columns:minmax(0,1.1fr) minmax(20rem,.9fr); }
    .opg-gold-hero__grid { grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); }
    .opg-gold-hero__media { left:40%; }
    .opg-gold-hero::before { right:35%; }
    .opg-gold-hero .opg-action-group { align-items:center; flex-direction:row; flex-wrap:wrap; }
    .opg-gold-hero .opg-action--rescue { flex-basis:100%; justify-content:flex-start; }
  }
  @media (max-width:63.999rem) {
    .opg-gold-hero { min-height:auto; padding-top:26rem; }
    .opg-gold-hero::before { background:linear-gradient(0deg,#071426 0%,rgba(7,20,38,.98) 45%,rgba(7,20,38,.12) 78%); }
    .opg-gold-hero__media { height:30rem; }
    .opg-gold-hero__media img { object-position:68% center; }
  }
  @media (max-width:47.999rem) {
    .opg-funding-tool__visual { aspect-ratio:16 / 9; }
    .opg-funding-tool__action { align-items:stretch; flex-direction:column; }
    .opg-funding-tool__action .opg-action { justify-content:center; width:100%; }
    .opg-workflow__head { align-items:flex-start; }
    .opg-workflow__stage { min-height:30rem; }
    .opg-workflow__line { border-left:2px solid #cbd6e1; border-top:0; bottom:8.75rem; left:1.7rem; right:auto; top:2.7rem; }
    .opg-workflow__stage ol { gap:.8rem; grid-template-columns:1fr; }
    .opg-workflow__stage li { align-items:center; display:grid; gap:.15rem .8rem; grid-template-columns:3.4rem 1fr; text-align:left; }
    .opg-workflow__stage li > span { grid-row:1 / span 2; }
    .opg-workflow__owner { bottom:1rem; left:0; top:auto; transform:none; width:100%; }
  }
  @media (max-width:35.999rem) {
    .opg-gold-hero { padding-top:22rem; }
    .opg-gold-hero__media { height:25rem; }
    .opg-tool-card { padding:1rem; }
    .opg-tool-card.opg-funding-tool { padding:0; }
    .opg-workflow__cta { justify-self:stretch; }
    .opg-impression__compare { height:24rem; }
    .opg-impression__site-body { padding:1.35rem; }
    .opg-impression__site-body strong { font-size:clamp(1.65rem,9vw,2.75rem); max-width:11ch; }
    .opg-impression__site-body p { font-size:.83rem; max-width:24rem; }
    .opg-impression__proof { display:none; }
    .opg-impression__outcomes { grid-template-columns:1fr; }
    .opg-impression__cta { justify-self:stretch; }
    .opg-blindspot [role="tablist"] { grid-template-columns:1fr; }
    .opg-calc__result strong { overflow-wrap:anywhere; }
  }
  @media (prefers-reduced-motion:reduce) {
    .opg-gold-value__cards article,.opg-gold-proof__panel { opacity:1; transform:none; transition:none; }
    .opg-gold-bridge__track { stroke-dashoffset:0; transition:none; }
    .opg-gold-bridge__node { filter:none; opacity:1; transition:none; }
    .opg-gold-bridge__cta { transition:none; }
    .opg-workflow__play-wrap > i { animation:none!important; display:none; }
    .opg-workflow__order,.opg-workflow__stage li > span,.opg-workflow__owner > span { transition:none; }
    .opg-funding-tool__visual img { transition:none; }
    .opg-funding-tool__cue.is-attention > span { animation:none; }
  }
  @media (scripting:none) {
    .opg-gold-value__cards article,.opg-gold-proof__panel { opacity:1; transform:none; }
    .opg-gold-bridge__track { stroke-dashoffset:0; }
    .opg-gold-bridge__node { opacity:1; }
    .opg-workflow__play-wrap,.opg-workflow__message { display:none; }
  }
}

/* Phase 6 live correction: unified eight-page hero. */
@layer opg-components {
  .opg-gold .opg-gold-hero {
    min-height: 0;
  }

  .opg-gold .opg-gold-hero::before {
    display: none;
  }

  .opg-gold .opg-gold-hero__copy h1,
  .opg-gold .opg-gold-hero .opg-action--primary,
  .opg-gold .opg-gold-hero .opg-action--primary:visited,
  .opg-gold .opg-gold-hero .opg-action--primary:hover {
    color: #fff !important;
  }

  .opg-gold .opg-gold-hero .opg-action--primary {
    text-decoration: none !important;
  }
}

@layer opg-utilities {
  @media (min-width: 64rem) {
    .opg-gold .opg-gold-hero {
      padding-block: clamp(3.5rem, 6vw, 5.5rem);
    }

    .opg-gold .opg-gold-hero__grid {
      gap: clamp(2.5rem, 5vw, 5rem);
      grid-template-columns: minmax(0, .88fr) minmax(30rem, 1.12fr);
      min-height: 0;
    }

    .opg-gold .opg-gold-hero__media {
      aspect-ratio: 3 / 2;
      border-radius: 1.5rem;
      box-shadow: 0 2rem 5rem rgba(0, 0, 0, .28);
      height: auto;
      inset: auto;
      left: auto;
      overflow: hidden;
      position: relative;
      width: 100%;
      z-index: 2;
    }
  }

  @media (max-width: 63.999rem) {
    .opg-gold .opg-gold-hero {
      padding: 0 0 3rem;
    }

    .opg-gold .opg-gold-hero__grid {
      display: flex;
      flex-direction: column;
      min-height: 0;
      padding-inline: 0;
    }

    .opg-gold .opg-gold-hero__media {
      aspect-ratio: 16 / 9;
      height: auto;
      inset: auto;
      order: -1;
      overflow: hidden;
      position: relative;
      width: 100%;
    }

    .opg-gold .opg-gold-hero__media img {
      object-position: 68% center;
    }

    .opg-gold .opg-gold-hero__copy {
      max-width: 44rem;
      padding: 2.25rem clamp(1rem, 4vw, 2.5rem) 0;
      width: 100%;
    }
  }

  @media (max-width: 35.999rem) {
    .opg-gold .opg-gold-hero__media {
      aspect-ratio: 4 / 3;
    }

    .opg-gold .opg-gold-hero__copy {
      padding-top: 1.75rem;
    }
  }
}

/* Phase 4 page compositions. Shared tokens remain the Phase 1 source of truth. */
@layer opg-components {
  .opg-p4 { --opg-p4-accent: var(--opg-color-red-700); background: var(--opg-color-canvas); }
  .opg-p4--identity { --opg-p4-accent: #275b85; }
  .opg-p4--lifecycle { --opg-p4-accent: #287055; }
  .opg-p4--workflow { --opg-p4-accent: #76511b; }
  .opg-p4--insight { --opg-p4-accent: #4d4f93; }
  .opg-p4--funding { --opg-p4-accent: #8c4d22; }
  .opg-p4--foundation { --opg-p4-accent: #476174; }

  .opg-p4-hero { overflow: hidden; padding-block: clamp(3.5rem, 8vw, 6.5rem); }
  .opg-p4-hero__grid { align-items: center; display: grid; gap: clamp(2rem, 6vw, 5rem); }
  .opg-p4-hero__copy { position: relative; z-index: 1; }
  .opg-p4-hero__copy h1 { font-size: clamp(2.5rem, 6vw, 5rem); max-width: 13ch; }
  .opg-p4-hero__media {
    aspect-ratio: 3 / 2;
    border: 1px solid rgba(255,255,255,.2);
    border-radius: clamp(1rem, 3vw, 2rem);
    box-shadow: 0 2rem 5rem rgba(0,0,0,.35);
    margin: 0;
    overflow: hidden;
  }
  .opg-p4-hero__media img { display: block; height: 100%; object-fit: cover; width: 100%; }

  .opg-p4-mechanism { background: white; }
  .opg-p4-steps { counter-reset: opg-p4-step; display: grid; gap: 1rem; list-style: none; margin: 2.5rem 0 0; padding: 0; }
  .opg-p4-steps li {
    background: var(--opg-color-canvas);
    border: 1px solid var(--opg-color-border);
    border-radius: 1rem;
    overflow: hidden;
  }
  .opg-p4-step {
    align-items: center;
    background: transparent;
    border: 0;
    color: var(--opg-color-navy-950);
    cursor: pointer;
    display: flex;
    font: inherit;
    gap: 1rem;
    min-height: 4.5rem;
    padding: 1rem 1.15rem;
    text-align: left;
    width: 100%;
  }
  .opg-p4-step span { color: var(--opg-p4-accent); font-size: .77rem; font-weight: 850; letter-spacing: .12em; }
  .opg-p4-step strong { font-size: 1.08rem; }
  .opg-p4-step[aria-expanded="true"] { background: var(--opg-color-navy-950); color: white; }
  .opg-p4-step[aria-expanded="true"] span { color: #ffb0b9; }
  .opg-p4-steps li > p { color: var(--opg-color-muted); margin: 0; padding: 1rem 1.2rem 1.3rem; }
  .opg-p4-steps:not(.is-enhanced) li > p[hidden] { display: block; }

  .opg-p4--lifecycle .opg-p4-steps { position: relative; }
  .opg-p4--lifecycle .opg-p4-steps li { border-radius: 999px; }
  .opg-p4--lifecycle .opg-p4-steps li > p { padding-inline: 1.5rem; }
  .opg-p4--workflow .opg-p4-steps li { border-left: .35rem solid var(--opg-p4-accent); }
  .opg-p4--insight .opg-p4-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .opg-p4--funding .opg-p4-steps li { box-shadow: inset 0 3px 0 var(--opg-p4-accent); }
  .opg-p4--foundation .opg-p4-steps { counter-reset: foundation; }

  .opg-p4-signals__grid { align-items: start; display: grid; gap: clamp(2rem, 7vw, 6rem); }
  .opg-p4-signals h2 { max-width: 16ch; }
  .opg-p4-signals ul { display: grid; gap: .25rem; list-style: none; margin: 0; padding: 0; }
  .opg-p4-signals li { border-block-start: 1px solid rgba(255,255,255,.22); padding: 1rem 0 1rem 2rem; position: relative; }
  .opg-p4-signals li::before { color: #ffb0b9; content: '✓'; font-weight: 900; left: .15rem; position: absolute; }

  .opg-p4-scope__grid { display: grid; gap: clamp(2rem, 6vw, 5rem); }
  .opg-p4-scope__cards { display: grid; gap: 1rem; }
  .opg-p4-scope__cards article { background: white; border: 1px solid var(--opg-color-border); border-radius: 1rem; padding: 1.4rem; }
  .opg-p4-scope__cards span { color: var(--opg-p4-accent); font-size: .75rem; font-weight: 850; letter-spacing: .14em; }
  .opg-p4-scope__cards h3 { font-size: 1.25rem; margin-block: .45rem; }
  .opg-p4-scope__cards p { color: var(--opg-color-muted); margin: 0; }

  .opg-p4-form-section { background: white; scroll-margin-top: 2rem; }
  .opg-p4-form-layout { display: grid; gap: clamp(2.5rem, 7vw, 6rem); }
  .opg-p4-form-note { border-inline-start: 3px solid var(--opg-p4-accent); color: var(--opg-color-muted); font-size: .85rem; padding-inline-start: 1rem; }
  .opg-p4-faq__list { margin-block-start: 2.5rem; max-width: 55rem; }
  .opg-p4-faq .opg-disclosure p { color: var(--opg-color-muted); }
  .opg-p4-final h2 { max-width: 18ch; }
}

@layer opg-utilities {
  @media (min-width: 48rem) {
    .opg-p4-steps { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .opg-p4-steps li { display: flex; flex-direction: column; }
    .opg-p4-steps li > p { flex: 1; }
    .opg-p4--identity .opg-p4-steps { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .opg-p4--foundation .opg-p4-steps { grid-template-columns: repeat(5, minmax(0, 1fr)); }
    .opg-p4-signals__grid,
    .opg-p4-scope__grid { grid-template-columns: minmax(0, .75fr) minmax(0, 1.25fr); }
    .opg-p4-scope__cards { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .opg-p4-form-layout { grid-template-columns: minmax(0, .8fr) minmax(28rem, 1fr); }
  }

  @media (min-width: 64rem) {
    .opg-p4-hero__grid { grid-template-columns: minmax(0, .9fr) minmax(30rem, 1.1fr); }
    .opg-p4-hero__media { margin-right: -4vw; }
  }

  @media (max-width: 47.999rem) {
    .opg-p4--insight .opg-p4-steps { grid-template-columns: 1fr; }
  }

  @media (max-width: 35.999rem) {
    .opg-p4-hero__media { aspect-ratio: 4 / 3; }
    .opg-p4-hero__media img { object-position: 68% center; }
    .opg-p4-steps { grid-template-columns: 1fr; }
  }
}

@layer opg-foundation {
  :root {
    --opg-color-navy-950: #071426;
    --opg-color-navy-900: #0b1f3a;
    --opg-color-navy-800: #12335b;
    --opg-color-red-700: #9f1d2d;
    --opg-color-red-600: #b42335;
    --opg-color-ink: #102033;
    --opg-color-muted: #526477;
    --opg-color-canvas: #f6f8fb;
    --opg-color-surface: #ffffff;
    --opg-color-border: #d8e0e9;
    --opg-color-focus: #2b7fff;
    --opg-color-success: #1d6b50;

    --opg-font-sans: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --opg-text-display: clamp(2.75rem, 7vw, 5.5rem);
    --opg-text-h1: clamp(2.25rem, 5.5vw, 4.5rem);
    --opg-text-h2: clamp(1.85rem, 4vw, 3rem);
    --opg-text-h3: clamp(1.25rem, 2vw, 1.6rem);
    --opg-text-body-lg: clamp(1.063rem, 1.5vw, 1.25rem);
    --opg-text-body: 1rem;
    --opg-text-small: 0.875rem;

    --opg-space-1: 0.25rem;
    --opg-space-2: 0.5rem;
    --opg-space-3: 0.75rem;
    --opg-space-4: 1rem;
    --opg-space-5: 1.5rem;
    --opg-space-6: 2rem;
    --opg-space-7: 3rem;
    --opg-space-8: 4rem;
    --opg-space-9: 6rem;

    --opg-radius-button: 0.875rem;
    --opg-radius-card: 1.25rem;
    --opg-radius-pill: 999px;
    --opg-shadow-card: 0 1.25rem 3.5rem rgba(7, 20, 38, 0.1);
    --opg-shadow-action: 0 0.75rem 1.75rem rgba(159, 29, 45, 0.22);
    --opg-container: 75rem;
    --opg-content: 48rem;
    --opg-transition: 180ms ease;
    --opg-mobile-actions-height: 0px;
  }

  .opg-growth-page {
    background: var(--opg-color-canvas);
    color: var(--opg-color-ink);
    font-family: var(--opg-font-sans);
    font-size: var(--opg-text-body);
    line-height: 1.65;
    max-width: 100%;
    overflow-x: clip;
    overflow-wrap: anywhere;
  }

  .opg-growth-page :where(h1, h2, h3, p, blockquote, figure) {
    margin-block-start: 0;
  }

  .opg-growth-page :where(h1, h2, h3) {
    color: var(--opg-color-navy-950);
    line-height: 1.08;
    letter-spacing: -0.035em;
    text-wrap: balance;
  }

  .opg-growth-page h1 { font-size: var(--opg-text-h1); }
  .opg-growth-page h2 { font-size: var(--opg-text-h2); }
  .opg-growth-page h3 { font-size: var(--opg-text-h3); }

  .opg-growth-page :focus-visible {
    outline: 3px solid var(--opg-color-focus);
    outline-offset: 4px;
  }

  .opg-container {
    margin-inline: auto;
    max-width: var(--opg-container);
    min-width: 0;
    padding-inline: clamp(1rem, 4vw, 2.5rem);
    width: 100%;
  }

  .opg-content { max-width: var(--opg-content); }
  .opg-section { padding-block: clamp(4rem, 9vw, 7rem); }
  .opg-section--tight { padding-block: clamp(2.5rem, 6vw, 4rem); }

  .opg-section--dark {
    background:
      radial-gradient(circle at 88% 8%, rgba(180, 35, 53, 0.28), transparent 28rem),
      linear-gradient(145deg, var(--opg-color-navy-950), var(--opg-color-navy-900));
    color: #eaf0f7;
  }

  .opg-section--dark :where(h1, h2, h3) { color: white; }
}

@layer opg-components {
  .opg-eyebrow {
    color: var(--opg-color-red-700);
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    margin-block-end: var(--opg-space-4);
    text-transform: uppercase;
  }

  .opg-section--dark .opg-eyebrow { color: #ffabb6; }

  .opg-lede {
    color: var(--opg-color-muted);
    font-size: var(--opg-text-body-lg);
    line-height: 1.6;
    max-width: 42rem;
  }

  .opg-section--dark .opg-lede { color: #c9d4df; }

  .opg-action-group {
    align-items: stretch;
    display: flex;
    flex-direction: column;
    gap: var(--opg-space-3);
    margin-block-start: var(--opg-space-6);
  }

  .opg-action {
    align-items: center;
    border: 2px solid transparent;
    border-radius: var(--opg-radius-button);
    display: inline-flex;
    font-weight: 760;
    gap: var(--opg-space-3);
    justify-content: center;
    max-width: 100%;
    min-height: 3rem;
    min-width: 0;
    padding: 0.75rem 1.15rem;
    text-align: center;
    text-decoration: none;
    transition: background-color var(--opg-transition), border-color var(--opg-transition), transform var(--opg-transition);
  }

  .opg-action--primary {
    background: var(--opg-color-red-700);
    box-shadow: var(--opg-shadow-action);
    color: #fff;
  }

  .opg-action--primary:hover { background: var(--opg-color-red-600); }

  .opg-action--secondary {
    background: transparent;
    border-color: var(--opg-color-navy-800);
    color: var(--opg-color-navy-900);
  }

  .opg-section--dark .opg-action--secondary {
    border-color: #9fb0c3;
    color: #fff;
  }

  .opg-action--rescue {
    color: var(--opg-color-navy-800);
    justify-content: flex-start;
    padding-inline: 0.25rem;
    text-decoration: underline;
    text-decoration-color: rgba(18, 51, 91, 0.35);
    text-underline-offset: 0.25em;
  }

  .opg-section--dark .opg-action--rescue { color: #fff; }

  .opg-trust-row {
    display: grid;
    gap: var(--opg-space-3);
    list-style: none;
    margin: var(--opg-space-7) 0 0;
    padding: 0;
  }

  .opg-trust-row li {
    align-items: center;
    display: flex;
    font-size: var(--opg-text-small);
    font-weight: 700;
    gap: var(--opg-space-3);
  }

  .opg-trust-row__mark {
    align-items: center;
    background: rgba(29, 107, 80, 0.12);
    border-radius: 50%;
    color: var(--opg-color-success);
    display: inline-flex;
    flex: 0 0 1.75rem;
    height: 1.75rem;
    justify-content: center;
  }

  .opg-card-grid {
    display: grid;
    gap: var(--opg-space-5);
    margin-block-start: var(--opg-space-7);
  }

  .opg-card,
  .opg-proof-card {
    background: var(--opg-color-surface);
    border: 1px solid var(--opg-color-border);
    border-radius: var(--opg-radius-card);
    box-shadow: var(--opg-shadow-card);
    margin: 0;
    padding: clamp(1.5rem, 4vw, 2.5rem);
  }

  .opg-card__number {
    color: var(--opg-color-red-700);
    display: block;
    font-size: var(--opg-text-small);
    font-weight: 850;
    letter-spacing: 0.12em;
    margin-block-end: var(--opg-space-5);
  }

  .opg-proof-card blockquote { margin: 0; }
  .opg-proof-card blockquote p {
    color: var(--opg-color-navy-950);
    font-size: var(--opg-text-body-lg);
    font-weight: 690;
    line-height: 1.55;
  }

  .opg-proof-card figcaption {
    color: var(--opg-color-navy-900);
    font-size: var(--opg-text-small);
    font-weight: 800;
  }

  .opg-proof-card figcaption span {
    color: var(--opg-color-muted);
    display: block;
    font-weight: 500;
    margin-block-start: var(--opg-space-1);
  }

  .opg-story-panel {
    align-items: center;
    display: grid;
    gap: var(--opg-space-7);
  }

  .opg-visual-placeholder {
    align-items: flex-end;
    aspect-ratio: 4 / 3;
    background:
      radial-gradient(circle at 70% 20%, rgba(180, 35, 53, 0.25), transparent 30%),
      linear-gradient(145deg, #dce5ef, #f7f9fc);
    border: 1px solid var(--opg-color-border);
    border-radius: var(--opg-radius-card);
    color: var(--opg-color-muted);
    display: flex;
    font-size: var(--opg-text-small);
    justify-content: center;
    padding: var(--opg-space-5);
    text-align: center;
  }

  .opg-disclosure {
    border-block-start: 1px solid var(--opg-color-border);
    padding-block: var(--opg-space-4);
  }

  .opg-disclosure:last-child { border-block-end: 1px solid var(--opg-color-border); }
  .opg-disclosure summary {
    cursor: pointer;
    font-weight: 800;
    min-height: 2.75rem;
    padding-block: var(--opg-space-3);
  }

  .opg-mobile-actions {
    display: none;
  }
}

@layer opg-utilities {
  .opg-visually-hidden {
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
  }

  @media (min-width: 36rem) {
    .opg-action-group {
      align-items: center;
      flex-direction: row;
      flex-wrap: wrap;
    }

    .opg-action--rescue { justify-content: center; }
    .opg-trust-row { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  }

  @media (min-width: 48rem) {
    .opg-card-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .opg-story-panel { grid-template-columns: minmax(0, 1fr) minmax(18rem, 0.9fr); }
  }

  @media (max-width: 47.999rem) {
    .opg-growth-page { padding-block-end: calc(var(--opg-mobile-actions-height) + var(--opg-space-5)); }

    .opg-action-group .opg-action {
      width: 100%;
    }

    .opg-mobile-actions {
      align-items: stretch;
      background: rgba(255, 255, 255, 0.96);
      border-block-start: 1px solid var(--opg-color-border);
      bottom: 0;
      box-shadow: 0 -0.75rem 2rem rgba(7, 20, 38, 0.12);
      display: grid;
      gap: var(--opg-space-2);
      grid-template-columns: repeat(3, minmax(0, 1fr));
      left: 0;
      padding: var(--opg-space-2) var(--opg-space-3) calc(var(--opg-space-2) + env(safe-area-inset-bottom));
      position: fixed;
      right: 0;
      z-index: 100;
    }

    .opg-mobile-actions .opg-action {
      font-size: 0.78rem;
      gap: var(--opg-space-1);
      min-width: 0;
      padding: 0.65rem 0.35rem;
    }

    .opg-mobile-actions .opg-action--rescue {
      border-color: var(--opg-color-border);
      justify-content: center;
      text-decoration: none;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .opg-growth-page *,
    .opg-growth-page *::before,
    .opg-growth-page *::after {
      scroll-behavior: auto !important;
      transition-duration: 0.01ms !important;
    }
  }
}

/* Phase 3 — Start Getting Paid reference-page composition. */
@layer opg-components {
  .opg-sgp { background: var(--opg-color-canvas); }

  .opg-sgp-hero {
    min-height: min(54rem, 92vh);
    overflow: hidden;
    padding-block: clamp(4.5rem, 9vw, 8rem);
    position: relative;
  }

  .opg-sgp-hero::before {
    background: linear-gradient(90deg, rgba(255,255,255,.07), transparent 45%);
    content: "";
    inset: 0;
    pointer-events: none;
    position: absolute;
  }

  .opg-sgp-hero__grid {
    align-items: center;
    display: grid;
    gap: clamp(2.5rem, 6vw, 5.5rem);
    position: relative;
  }

  .opg-sgp-hero__copy h1 {
    font-size: clamp(2.6rem, 6vw, 5.35rem);
    max-width: 12ch;
  }

  .opg-sgp-hero__media {
    border: 1px solid rgba(255,255,255,.16);
    border-radius: clamp(1.25rem, 3vw, 2rem);
    box-shadow: 0 2.25rem 6rem rgba(0,0,0,.28);
    margin: 0;
    overflow: hidden;
    position: relative;
  }

  .opg-sgp-hero__media::after {
    background: linear-gradient(180deg, transparent 55%, rgba(7,20,38,.9));
    content: "";
    inset: 0;
    pointer-events: none;
    position: absolute;
  }

  .opg-sgp-hero__media img,
  .opg-sgp-support__media img {
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%;
  }

  .opg-sgp-hero__media figcaption {
    bottom: 0;
    color: #dbe4ee;
    font-size: var(--opg-text-small);
    left: 0;
    padding: clamp(1rem, 3vw, 1.75rem);
    position: absolute;
    right: 0;
    z-index: 1;
  }

  .opg-sgp-hero__media figcaption strong { color: white; display: block; }

  .opg-payment-path {
    background: white;
    border: 1px solid var(--opg-color-border);
    border-radius: 1.5rem;
    box-shadow: var(--opg-shadow-card);
    margin-block-start: var(--opg-space-7);
    overflow: hidden;
  }

  .opg-payment-path__tabs {
    background: #edf2f7;
    display: grid;
    gap: 1px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: .5rem;
  }

  .opg-payment-path__tabs button {
    appearance: none;
    background: transparent;
    border: 0;
    border-radius: .8rem;
    color: var(--opg-color-navy-800);
    cursor: pointer;
    font: 750 .9rem/1.25 var(--opg-font-sans);
    min-height: 3rem;
    padding: .75rem;
  }

  .opg-payment-path__tabs button[aria-selected="true"] {
    background: white;
    box-shadow: 0 .35rem 1rem rgba(7,20,38,.09);
    color: var(--opg-color-red-700);
  }

  .opg-payment-path__panels article {
    align-items: start;
    display: grid;
    gap: var(--opg-space-5);
    grid-template-columns: auto 1fr;
    padding: clamp(1.5rem, 5vw, 4rem);
  }

  .opg-payment-path.is-enhanced [role="tabpanel"][hidden] { display: none; }

  .opg-payment-path__step {
    align-items: center;
    background: var(--opg-color-navy-950);
    border-radius: 50%;
    color: white;
    display: inline-flex;
    font-size: .75rem;
    font-weight: 850;
    height: 2.75rem;
    justify-content: center;
    width: 2.75rem;
  }

  .opg-payment-path h3 { margin-block-end: .6rem; }
  .opg-payment-path p { margin-block-end: .75rem; max-width: 51rem; }
  .opg-payment-path__fit { color: var(--opg-color-muted); font-size: .9rem; font-weight: 700; }

  .opg-sgp-inline-route {
    color: var(--opg-color-muted);
    margin: var(--opg-space-5) 0 0;
    text-align: center;
  }
  .opg-sgp-inline-route a { color: var(--opg-color-navy-800); font-weight: 800; }

  .opg-sgp-decision-grid {
    counter-reset: decisions;
    display: grid;
    gap: 1px;
    list-style: none;
    margin: var(--opg-space-7) 0 0;
    padding: 0;
  }

  .opg-sgp-decision-grid li {
    background: rgba(255,255,255,.07);
    border: 1px solid rgba(255,255,255,.1);
    padding: clamp(1.4rem, 3vw, 2.25rem);
  }

  .opg-sgp-decision-grid span { color: #ffabb6; font-size: .75rem; font-weight: 850; letter-spacing: .12em; }
  .opg-sgp-decision-grid h3 { font-size: 1.2rem; margin: .8rem 0 .55rem; }
  .opg-sgp-decision-grid p { color: #c9d4df; font-size: .92rem; margin: 0; }

  .opg-sgp-support {
    align-items: center;
    display: grid;
    gap: clamp(2.5rem, 7vw, 6rem);
  }

  .opg-sgp-support__media {
    aspect-ratio: 4 / 3;
    border-radius: 1.5rem;
    box-shadow: var(--opg-shadow-card);
    margin: 0;
    overflow: hidden;
  }

  .opg-sgp-checklist { display: grid; gap: 0; list-style: none; margin: 2rem 0 0; padding: 0; }
  .opg-sgp-checklist li {
    border-block-start: 1px solid var(--opg-color-border);
    display: grid;
    gap: .35rem;
    padding-block: 1rem;
  }
  .opg-sgp-checklist li:last-child { border-block-end: 1px solid var(--opg-color-border); }
  .opg-sgp-checklist strong { color: var(--opg-color-navy-950); }
  .opg-sgp-checklist span { color: var(--opg-color-muted); }

  .opg-sgp-proof { background: #eef3f8; }
  .opg-sgp-proof__note {
    border-inline-start: 3px solid var(--opg-color-red-700);
    color: var(--opg-color-muted);
    font-size: .86rem;
    margin: var(--opg-space-6) 0 0;
    max-width: 57rem;
    padding-inline-start: 1rem;
  }

  .opg-sgp-form-section { background: white; scroll-margin-top: 2rem; }
  .opg-sgp-form-layout { display: grid; gap: clamp(2.5rem, 7vw, 6rem); }
  .opg-sgp-direct-actions { display: grid; gap: .65rem; margin-block-start: 2rem; }
  .opg-sgp-direct-actions a {
    align-items: center;
    border-block-end: 1px solid var(--opg-color-border);
    color: var(--opg-color-navy-900);
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    min-height: 3rem;
    text-decoration: none;
  }
  .opg-sgp-direct-actions span { color: var(--opg-color-muted); font-size: .85rem; font-weight: 700; text-transform: uppercase; }

  .opg-sgp-form {
    background: var(--opg-color-canvas);
    border: 1px solid var(--opg-color-border);
    border-radius: 1.5rem;
    box-shadow: var(--opg-shadow-card);
    display: grid;
    gap: 1.15rem;
    padding: clamp(1.25rem, 4vw, 2.5rem);
    position: relative;
  }

  .opg-sgp-form__row { display: grid; gap: 1rem; }
  .opg-sgp-form label,
  .opg-sgp-form legend { color: var(--opg-color-navy-950); font-size: .9rem; font-weight: 750; }
  .opg-sgp-form fieldset { border: 0; margin: 0; padding: 0; }
  .opg-sgp-form input:not([type="checkbox"]):not([type="radio"]),
  .opg-sgp-form textarea {
    background: white;
    border: 1px solid #b9c6d4;
    border-radius: .65rem;
    color: var(--opg-color-ink);
    display: block;
    font: inherit;
    margin-block-start: .4rem;
    min-height: 3rem;
    padding: .7rem .8rem;
    width: 100%;
  }
  .opg-sgp-form textarea { resize: vertical; }
  .opg-sgp-form :where(input, textarea)[aria-invalid="true"] { border-color: var(--opg-color-red-700); box-shadow: 0 0 0 2px rgba(159,29,45,.12); }
  .opg-sgp-form__choices { display: flex; flex-wrap: wrap; gap: .6rem; margin-block-start: .55rem; }
  .opg-sgp-form__choices label {
    align-items: center;
    background: white;
    border: 1px solid var(--opg-color-border);
    border-radius: 999px;
    display: inline-flex;
    gap: .45rem;
    min-height: 2.75rem;
    padding: .55rem .9rem;
  }
  .opg-sgp-form__consent { align-items: start; display: grid; gap: .7rem; grid-template-columns: auto 1fr; line-height: 1.45; }
  .opg-sgp-form__consent input { height: 1.2rem; margin-block-start: .15rem; width: 1.2rem; }
  .opg-sgp-form__honeypot { left: -10000px; position: absolute; }
  .opg-sgp-form button { border: 0; cursor: pointer; width: 100%; }
  .opg-sgp-form button[disabled] { cursor: wait; opacity: .65; }
  .opg-sgp-form__status { font-weight: 750; margin: 0; min-height: 1.6rem; }
  .opg-sgp-form__status[data-state="success"] { color: var(--opg-color-success); }
  .opg-sgp-form__status[data-state="error"] { color: var(--opg-color-red-700); }
  .opg-sgp-form__fallback { color: var(--opg-color-muted); font-size: .8rem; margin: 0; }

  .opg-sgp-faq__list { margin-block-start: var(--opg-space-7); max-width: 55rem; }
  .opg-sgp-faq .opg-disclosure p { color: var(--opg-color-muted); margin-block-end: .75rem; max-width: 48rem; }

  .opg-sgp-final__layout { align-items: end; display: grid; gap: 2rem; }
  .opg-sgp-final h2 { margin: 0; max-width: 17ch; }
}

@layer opg-utilities {
  @media (min-width: 36rem) {
    .opg-payment-path__tabs { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .opg-sgp-form__row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  }

  @media (min-width: 48rem) {
    .opg-sgp-decision-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
    .opg-sgp-support { grid-template-columns: minmax(0, .95fr) minmax(0, 1fr); }
    .opg-sgp-support__media { order: -1; }
    .opg-sgp-form-layout { grid-template-columns: minmax(0, .8fr) minmax(28rem, 1fr); }
  }

  @media (min-width: 64rem) {
    .opg-sgp-hero__grid { grid-template-columns: minmax(0, .88fr) minmax(30rem, 1.12fr); }
    .opg-sgp-hero__media { margin-right: -5vw; }
    .opg-sgp-final__layout { grid-template-columns: minmax(0, 1fr) auto; }
  }

  @media (max-width: 35.999rem) {
    .opg-sgp-hero { min-height: auto; }
    .opg-sgp-hero__media { aspect-ratio: 4 / 3; }
    .opg-sgp-hero__media img { object-position: 66% center; }
    .opg-payment-path__panels article { grid-template-columns: 1fr; }
    .opg-sgp-direct-actions a { align-items: flex-start; flex-direction: column; gap: .15rem; padding-block: .7rem; }
    .opg-sgp-direct-actions strong { overflow-wrap: anywhere; }
  }
}
