
:root { font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, sans-serif; color:#191919; background:#f7f7f4; }
body { margin:0; }
.shell { max-width:900px; margin:auto; padding:32px 18px 80px; }
.card { background:white; border:1px solid #ddd; border-radius:16px; padding:22px; margin:18px 0; box-shadow:0 8px 24px rgba(0,0,0,.04); }
.hidden { display:none; }
label { display:block; font-weight:700; margin:12px 0 6px; }
input, select { width:min(320px,100%); max-width:100%; box-sizing:border-box; padding:12px; font-size:1rem; }
button { padding:11px 16px; border-radius:10px; border:1px solid #333; background:#fff; cursor:pointer; margin:8px 8px 8px 0; }
button:focus-visible, input:focus-visible, select:focus-visible, a:focus-visible, [contenteditable="true"]:focus-visible { outline:3px solid currentColor; outline-offset:2px; }
.notice-title { margin-top:0; }
.grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:12px; }
.field { border:1px solid #ddd; border-radius:10px; padding:12px; min-height:52px; }
.small { font-size:.92rem; }
.warning { border-left:4px solid #444; padding-left:12px; }
.action-guide { border:2px solid #222; border-radius:12px; padding:18px; margin:18px 0; background:#fffdf5; }
.action-guide li { margin:10px 0; line-height:1.45; }
.copy-result { white-space:pre-wrap; overflow-wrap:anywhere; border:1px solid #999; border-radius:10px; padding:14px; background:#f7f7f4; font:inherit; line-height:1.45; }
.pack-section { border:1px solid #d9d9d4; border-radius:14px; padding:20px; margin:18px 0; background:#fff; box-shadow:0 4px 14px rgba(0,0,0,.035); }
.pack-section h3 { margin:4px 0 10px; font-size:1.25rem; }
.section-kicker { margin:0 0 4px; font-size:.76rem; font-weight:800; letter-spacing:.09em; color:#6b4f00; }
.section-intro { margin-top:0; color:#444; }
.plan-section { border-left:6px solid #d39b00; background:#fffdf7; }
.steps-section { border-left:6px solid #315b7d; background:#f7fbff; }
.worksheet-section { border-left:6px solid #75579a; background:#fbf9ff; }
.evidence-section { border-left:6px solid #34705a; background:#f7fcfa; }
.privacy-section { border-left:6px solid #8a5a44; background:#fff9f6; }
.decision-section { border-left:6px solid #8b6e15; background:#fffdf5; }
.call-section { border-left:6px solid #315b7d; background:#f7fbff; }
.proof-section { border-left:6px solid #555; }
.followup-section { border-left:6px solid #8b3d55; background:#fff8fa; }
.receipt-section { border:2px solid #2f654f; background:#f6fcf8; }
.field { display:flex; flex-direction:column; gap:8px; background:#fff; }
.field-value { font-size:1.05rem; }
.fill-line { display:block; min-width:0; min-height:24px; margin-top:7px; padding:8px 10px; border:1px dashed #777; border-radius:7px; background:#fff; font-weight:400; overflow-wrap:anywhere; }
.fill-line:empty::before { content:attr(data-placeholder); color:#777; }
.fill-line:focus { outline:3px solid #222; outline-offset:2px; }
.field-stack { display:grid; gap:12px; }
.field-stack label { margin:0; }
.numbered-steps { padding-left:24px; }
.numbered-steps li { padding:7px 0 7px 5px; }
.checklist { list-style:none; padding:0; margin:10px 0; display:grid; gap:9px; }
.checklist li { padding:10px 12px; border:1px solid #d7ddd9; border-radius:8px; background:#fff; }
.completion-list { grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); }
.decision-options,.status-strip { padding:12px; border-radius:9px; background:#fff; border:1px solid #d8d1b7; font-weight:700; margin:10px 0 14px; }
.question-box { padding:12px 16px; border-radius:10px; background:#fff; border:1px solid #cbd8e2; }
.worksheet-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; }
.worksheet-grid label { margin:0; padding:10px; border:1px solid #ddd5e8; border-radius:9px; background:#fff; }
.completion-gate { margin-top:12px; padding:12px; border-left:4px solid #75579a; background:#fff; }
.checkpoint-calculator { margin:12px 0 16px; padding:14px; border:1px solid #315b7d; border-radius:10px; background:#f7fbff; }
.checkpoint-calculator label { margin-top:0; }
.checkpoint-calculator [role="status"] { min-height:1.5em; font-weight:700; }
@media (max-width:620px) { .worksheet-grid { grid-template-columns:1fr; } }
@media screen and (max-width:620px) {
  .shell { padding:20px 12px 56px; }
  .card { padding:17px 14px; }
  table { display:block; overflow-x:auto; overscroll-behavior-inline:contain; }
  th, td { min-width:150px; }
}
table { width:100%; border-collapse:collapse; margin-top:12px; }
th,td { border:1px solid #ccc; padding:8px; vertical-align:top; overflow-wrap:anywhere; }
.pack-hero { border-radius:16px; padding:24px; margin:0 0 18px; background:linear-gradient(135deg,#222 0%,#3f3420 100%); color:#fff; }
.pack-hero .section-kicker { color:#f1c95b; }
.pack-hero .notice-title { font-size:1.75rem; margin:5px 0 12px; }
.pack-hero .hero-meaning { font-size:1.05rem; line-height:1.5; }
.pack-hero .warning { border-left-color:#f1c95b; background:rgba(255,255,255,.08); padding:10px 12px; }
.source-section { border-left:6px solid #2f654f; background:#f6fcf8; }
@page {
  size: letter;
  margin: .55in;
}

@media print {
  body { background:#fff; font-size:10pt; }
  .shell { max-width:none; padding:0; }
  body > main > header,
  #notice-gate,
  #checkout-panel,
  #fulfillment,
  #human-help,
  button { display:none !important; }

  #pack { display:block !important; padding:0; margin:0; border:0; box-shadow:none; }
  .pack-hero { background:#f3eee2 !important; color:#111; border:2px solid #332d22; box-shadow:none; break-inside:avoid; }
  .pack-hero .section-kicker { color:#6b4f00; }
  .pack-hero .warning { background:#fff; }

  .action-guide { break-inside:auto; box-shadow:none; margin:8px 0; padding:11px 13px; font-size:8.35pt; line-height:1.22; }
  .action-guide h3 { font-size:12pt; margin:2px 0 5px; }
  .action-guide p { margin:4px 0; }
  .action-guide ul { margin:4px 0; padding-left:18px; }
  .action-guide li { break-inside:avoid; margin:3px 0; }
  .pack-section { break-inside:avoid; box-shadow:none; margin:10px 0; padding:14px; }
  .plan-section { break-before:page; }
  .call-section { break-before:page; }
  .followup-section { break-before:page; }
  .source-section { break-inside:auto; padding:8px 11px; margin:6px 0 0; font-size:8.5pt; line-height:1.25; }
  .source-section h3 { font-size:11pt; margin:2px 0 4px; }
  .source-section p { margin:3px 0; }

  .fill-line { min-height:18px; background:#fff; }
  .fill-line:empty::before { content:""; }
  .field { min-height:44px; padding:9px; }
  .grid { gap:8px; }
  .checklist { gap:5px; }
  .checklist li { padding:7px 9px; }
  .numbered-steps li { padding:4px 0 4px 4px; }
  .worksheet-grid { gap:6px; }
  .worksheet-grid label { padding:6px; font-size:8.5pt; }
  .worksheet-grid .fill-line { min-height:14px; padding:5px 7px; }
  .completion-gate { margin-top:7px; padding:7px 9px; font-size:8.5pt; }

  table { font-size:9pt; }
  th,td { padding:6px; }
  tr, .field, .question-box { break-inside:avoid; }
}
/* storefront-polish-2026-10-01 */
:root {
  --lp-navy:#082a5e;
  --lp-blue:#0c7ff2;
  --lp-orange:#ff9900;
  --lp-ink:#0b2345;
  --lp-muted:#52657d;
  --lp-line:#d8e4f1;
}
body { background:linear-gradient(180deg,#f8fbff 0,#eef6ff 48%,#f7f7f4 100%); color:var(--lp-ink); }
.shell { max-width:1120px; padding:20px 22px 80px; }
.site-header { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:4px 0 20px; }
.brand { display:flex; align-items:center; gap:12px; text-decoration:none; color:var(--lp-ink); }
.brand-logo { width:64px; height:64px; border-radius:16px; box-shadow:0 8px 24px rgba(13,74,139,.12); }
.brand-copy { display:grid; gap:1px; }
.brand-copy b { font-size:1.25rem; letter-spacing:-.02em; }
.brand-copy small { color:var(--lp-muted); font-weight:650; }
.header-pill { padding:8px 12px; border-radius:999px; background:#fff; border:1px solid var(--lp-line); color:#34506e; font-size:.88rem; font-weight:750; }
.hero { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(330px,.95fr); gap:44px; align-items:center; padding:42px; background:linear-gradient(135deg,#fff 0%,#f3f9ff 62%,#e9f4ff 100%); border:1px solid #dbe9f6; border-radius:30px; box-shadow:0 24px 70px rgba(24,73,123,.10); overflow:hidden; position:relative; }
.hero::before { content:""; position:absolute; width:340px; height:340px; border-radius:50%; background:rgba(12,127,242,.07); top:-170px; right:-80px; }
.hero-copy,.hero-visual { position:relative; z-index:1; }
.eyebrow { margin:0 0 8px; font-size:.78rem; font-weight:900; letter-spacing:.13em; color:#1c65b3; }
.hero h1 { margin:0; font-size:clamp(3rem,7vw,5.4rem); line-height:.92; letter-spacing:-.055em; color:var(--lp-navy); }
.hero h1 span { color:var(--lp-blue); position:relative; display:inline-block; }
.hero h1 span::after { content:""; position:absolute; height:8px; border-radius:999px; background:var(--lp-orange); left:4%; right:8%; bottom:-8px; transform:rotate(-2deg); }
.hero-lede { margin:30px 0 0; max-width:650px; font-size:1.13rem; line-height:1.62; color:#314b68; }
.hero-actions { display:flex; flex-wrap:wrap; gap:10px; margin:25px 0 18px; }
.button { display:inline-flex; align-items:center; justify-content:center; padding:12px 18px; border-radius:12px; border:1px solid #b9c8d8; background:#fff; color:var(--lp-ink); text-decoration:none; font-weight:800; }
.button.primary { background:linear-gradient(180deg,#1288fb,#0872db); color:#fff; border-color:#0872db; box-shadow:0 10px 24px rgba(12,127,242,.20); }
.trust-row { display:flex; flex-wrap:wrap; gap:8px; }
.trust-row span { padding:8px 11px; border:1px solid #d4e2ef; border-radius:999px; background:#fff; color:#425d78; font-size:.88rem; }
.storefront-disclaimer { margin:15px 0 0; font-size:.79rem; line-height:1.45; color:#607489; }
.hero-visual { border-radius:24px; overflow:hidden; box-shadow:0 20px 48px rgba(18,76,140,.14); background:#fff; transform:rotate(1.5deg); }
.hero-visual svg,.value-visual svg { display:block; width:100%; height:auto; }
.how-it-works { padding:66px 0 20px; }
.section-heading h2,.value-copy h2 { margin:0; font-size:clamp(2rem,4vw,3.1rem); letter-spacing:-.04em; line-height:1.03; color:var(--lp-navy); }
.step-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:24px; }
.step-card { background:#fff; border:1px solid var(--lp-line); border-radius:18px; padding:20px; box-shadow:0 8px 22px rgba(24,72,122,.055); }
.step-number { display:grid; place-items:center; width:36px; height:36px; border-radius:11px; background:#e6f2ff; color:#096dcf; font-weight:900; }
.step-card h3 { margin:16px 0 7px; }
.step-card p { margin:0; color:var(--lp-muted); line-height:1.5; }
.gate-card { margin-top:32px; border-color:#c8ddf1; box-shadow:0 20px 50px rgba(17,77,138,.09); }
.value-section { display:grid; grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr); gap:40px; align-items:center; padding:70px 0 36px; }
.value-visual { border-radius:26px; overflow:hidden; box-shadow:0 20px 50px rgba(16,68,122,.13); background:#fff; }
.feature-list { list-style:none; padding:0; margin:24px 0 0; display:grid; gap:10px; }
.feature-list li { display:grid; grid-template-columns:minmax(180px,.65fr) minmax(0,1fr); gap:16px; padding:15px 16px; border-radius:14px; background:#fff; border:1px solid var(--lp-line); }
.feature-list b { color:var(--lp-navy); }
.feature-list span { color:var(--lp-muted); line-height:1.45; }
.checkout-card { border:2px solid var(--lp-blue); background:linear-gradient(135deg,#fff 0,#f2f8ff 100%); }
.fulfillment-card { border:2px solid #2f8b62; background:#f7fffb; }
.site-footer { display:flex; flex-wrap:wrap; gap:8px 18px; justify-content:center; border-top:1px solid var(--lp-line); margin-top:50px; padding-top:24px; color:#65788b; font-size:.85rem; text-align:center; }
.site-footer b { color:var(--lp-navy); }
@media (max-width:820px) {
  .hero { grid-template-columns:1fr; padding:28px; gap:28px; }
  .hero-visual { max-width:520px; margin:auto; transform:none; }
  .value-section { grid-template-columns:1fr; gap:26px; padding-top:54px; }
  .value-visual { max-width:560px; margin:auto; }
  .feature-list li { grid-template-columns:1fr; gap:4px; }
}
@media (max-width:680px) {
  .shell { padding:12px 12px 52px; }
  .brand-logo { width:52px; height:52px; border-radius:13px; }
  .brand-copy small,.header-pill { display:none; }
  .hero { padding:22px 18px; border-radius:22px; }
  .hero h1 { font-size:clamp(2.8rem,15vw,4.2rem); }
  .hero-lede { font-size:1rem; margin-top:25px; }
  .hero-actions { display:grid; }
  .hero-actions .button { width:100%; }
  .step-grid { grid-template-columns:1fr; }
  .value-section { padding-top:44px; }
}
@media print {
  .site-header,.hero,.how-it-works,.value-section,.site-footer { display:none !important; }
}
