
  :root{
    --ink:#1E1A16; --cream:#FFFCF6; --sand:#F4ECDF; --line:#E0D5C3;
    --rust:#C8471F; --muted:#5C534A; --forest:#1F3D33;
  }
  *{box-sizing:border-box}
  .ticker-wrap{background:var(--forest);color:var(--cream);overflow:hidden;white-space:nowrap}
  .ticker-track{display:inline-flex;width:max-content;animation:ticker-scroll 52s linear infinite}
  .ticker-track span{display:inline-flex;align-items:center;padding:10px 20px;font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;flex-shrink:0}
  .ticker-track span.ticker-sep{color:var(--rust);padding:10px 0}
  @keyframes ticker-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
  @media (prefers-reduced-motion: reduce){.ticker-track{animation:none}}
  body{margin:0;font-family:'DM Sans',sans-serif;color:var(--ink);background:var(--cream)}
  a{color:var(--ink)}
  a:hover{color:var(--rust)}
  h1,h2{font-family:'Fraunces',serif}
  .script{font-family:'Caveat',cursive;color:var(--rust)}
  header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:16px 5%;border-bottom:1px solid #E8E0D2}
  nav{display:flex;flex-wrap:wrap;gap:24px;font-size:15px}
  nav a{text-decoration:none;font-weight:500;border-bottom:2px solid transparent;padding:6px 0}
  nav a.active{font-weight:700;border-bottom-color:var(--rust)}
  .social{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:2px solid var(--ink);color:var(--ink);box-sizing:border-box}
  .btn{display:inline-block;padding:15px 26px;background:var(--rust);color:var(--cream);border-radius:999px;text-decoration:none;font-weight:700;border:0;cursor:pointer;font-size:16px;font-family:inherit}
  .btn:hover{color:var(--cream);opacity:.92}
  .btn-dark{background:var(--ink)}
  main-wrap{max-width:1160px;margin:0 auto}
  .order-grid{max-width:1160px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:48px;align-items:start;padding:56px 5%}
  .gallery-frame{position:relative;border-radius:24px;overflow:hidden;background:#eee}
  .gallery-frame img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block}
  .arrow{position:absolute;top:50%;transform:translateY(-50%);width:36px;height:36px;border-radius:50%;border:2px solid var(--ink);background:var(--cream);color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;box-shadow:0 2px 6px rgba(30,26,22,.18)}
  .arrow.prev{left:10px} .arrow.next{right:10px}
  .thumbs{display:flex;gap:8px;margin-top:10px}
  .thumb{padding:0;border-radius:10px;overflow:hidden;width:64px;height:64px;cursor:pointer;background:none;border:2px solid transparent}
  .thumb img{width:100%;height:100%;object-fit:cover;display:block}
  .thumb.active{border-color:var(--rust)}
  .steps{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:28px}
  .step-pill{padding:8px 16px;border-radius:999px;font-size:14px;font-weight:700;background:var(--sand);color:var(--muted)}
  .step-pill.on{background:var(--ink);color:var(--cream)}
  fieldset{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
  legend{font-weight:700;margin-bottom:10px}
  .choice{display:flex;gap:12px;align-items:center;padding:16px;border:2px solid var(--line);border-radius:14px;background:#fff;cursor:pointer}
  .choice input{width:20px;height:20px;accent-color:var(--rust);margin-top:2px}
  label.inline{display:flex;flex-direction:column;gap:6px}
  label.inline span{font-weight:700}
  input[type=text],input[type=email],textarea{padding:14px;border:2px solid var(--line);border-radius:12px;font-size:16px;font-family:inherit;background:#fff;width:100%}
  .grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
  .summary{background:var(--sand);border-radius:20px;padding:24px}
  .summary-row{display:flex;justify-content:space-between;padding:6px 0}
  .summary-total{display:flex;justify-content:space-between;padding:12px 0 0;margin-top:6px;border-top:2px solid var(--ink);font-weight:700;font-size:18px}
  .upload-box{border:2px dashed #B9AC98;border-radius:14px;padding:28px;text-align:center;background:#fff}
  .promise{background:var(--cream);border:2px dashed var(--rust);border-radius:20px;padding:20px 24px;display:flex;flex-wrap:wrap;gap:12px;align-items:center}
  .how-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:24px}
  .how-card{background:var(--cream);border-radius:20px;padding:24px}
  .arrives-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:32px;align-items:center}
  .arrives-card{background:var(--sand);border-radius:20px;padding:18px 22px}
  footer{padding:48px 5%;background:var(--ink);color:var(--cream);display:flex;flex-wrap:wrap;gap:32px;justify-content:space-between}
  footer a{color:var(--cream)}
  #payError{color:#B3261E;font-size:14px;text-align:center;margin:-8px 0 0;display:none}
  #payBtn[disabled]{opacity:.6;cursor:wait}
  .offer-banner{background:var(--forest);color:var(--cream);border-radius:16px;padding:18px 22px;display:flex;flex-direction:column;gap:6px}
  .offer-badge{align-self:flex-start;background:var(--rust);color:var(--cream);font-size:11px;font-weight:700;padding:3px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.03em}
  .offer-title{margin:0;font-weight:700;font-size:17px}
  .offer-sub{margin:0;font-size:13px;opacity:.85}
  .price-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
  .price-old{text-decoration:line-through;color:var(--muted);font-weight:400;font-size:18px}
  .price-new{color:var(--rust);font-size:20px}
  .save-badge{background:var(--rust);color:var(--cream);font-size:11px;font-weight:700;padding:3px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}
  .free-badge{background:var(--forest);color:var(--cream);font-size:11px;font-weight:700;padding:3px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}
  .choice.promo{border-color:var(--rust)}
  .summary-row .price-old{font-size:14px;margin-right:6px}
  .free-text{color:var(--rust);font-weight:700}
