/* CRO: make sizes and the next step clear in the first screen. */
.hero-prices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:min(100%,680px);text-align:left}
.hero-price-option{display:grid;gap:4px;padding:15px 18px;border:1px solid var(--line);border-radius:16px;background:var(--surface);text-decoration:none;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}
.hero-price-option:hover{border-color:var(--spruce);transform:translateY(-2px);box-shadow:0 8px 22px rgba(20,48,42,.08)}
.hero-price-option span{display:flex;justify-content:space-between;gap:8px;align-items:center;color:var(--muted);font-size:.9rem}
.hero-price-option span b{color:var(--spruce);font-size:.72rem;font-weight:600}
.hero-price-option strong{font:600 clamp(1.8rem,3.4vw,2.45rem)/1 var(--display);letter-spacing:-.04em;color:var(--ink)}
.hero-price-option small{font-size:.84rem;color:var(--muted)}
.hero-price-option.popular{border-color:color-mix(in srgb,var(--spruce) 45%,var(--line));background:color-mix(in srgb,var(--spruce) 5%,var(--surface))}
.hero-promise{font-size:.9rem;color:var(--muted);max-width:65ch}
.hero-promise b{color:var(--ink)}
.hero-promise a{color:var(--spruce);text-underline-offset:3px}
@media(max-width:560px){.hero-prices{gap:8px}.hero-price-option{padding:13px 12px}.hero-price-option span{font-size:.82rem;align-items:flex-start;flex-direction:column;gap:2px}.hero-price-option strong{font-size:1.8rem}.hero-promise{font-size:.84rem}}

/* Mobile: compact, stable copy and the same crisp arrow artwork at every width. */
.arrow-icon{width:1em;height:1em;flex:none;display:inline-block;vertical-align:-.12em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.arrow-icon.down{width:.9em;height:.9em}.arrow-icon.down-right{width:.9em;height:.9em}
@media(max-width:720px){
  section.block{padding-block:54px}
  .sec-head{gap:10px;margin-bottom:24px}
  .hero[data-3d]{min-height:auto}
  .hero[data-3d] .wrap{padding:36px 16px 40px}
  .hero-copy{gap:16px}
  .hero-actions{gap:8px}
  .hero .hero-copy h1{font-size:clamp(2.4rem,10vw,3.25rem)}
  .mcta{left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom,0px));gap:8px;padding:8px 9px 8px 13px;min-height:58px}
  .mcta-copy{flex:1 1 auto;min-width:0;max-width:58%;overflow:hidden}
  .mcta-copy b,.mcta-copy small{display:block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mcta-copy b{font-size:.82rem;line-height:1.2}
  .mcta-copy small{font-size:.72rem;line-height:1.2}
  .mcta .btn{min-height:40px;padding:.55em .9em;font-size:.88rem;white-space:nowrap;flex:0 0 auto}
}
@media(max-width:380px){.mcta-copy{max-width:55%}.mcta .btn{padding:.5em .75em;font-size:.84rem}}

/* Black November campaign */
.campaign-ribbon{background:#233c35;color:#fff;font-size:.92rem}.campaign-ribbon .wrap{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:11px 18px}.campaign-ribbon b{color:#f4db9a;margin-right:8px}.campaign-ribbon a{color:#fff;white-space:nowrap;font-weight:600}.campaign-order-fields{padding:18px;border:1px solid color-mix(in srgb,var(--spruce) 30%,var(--line));border-radius:16px;background:color-mix(in srgb,var(--spruce) 4%,var(--surface));display:grid;gap:12px}.campaign-order-fields[hidden]{display:none}.campaign-order-intro{display:grid;gap:4px}.campaign-order-intro span{font-size:.9rem;color:var(--muted)}.campaign-order-fields .small-note{margin:0;color:var(--muted)}@media(max-width:720px){.campaign-ribbon .wrap{align-items:flex-start;padding:10px 16px;font-size:.82rem}.campaign-ribbon .wrap>span{line-height:1.35}.campaign-ribbon a{font-size:.82rem}}
