/* Ready Set Paid public site — wine + terracotta + blush */
:root{
  --payto-accent:#c45c4a;
  --payto-accent-2:#a84838;
  --payto-ink:#2b1f2a;
  --payto-muted:#6f5d64;
  --payto-line:rgba(58,31,43,.12);
  --payto-paper:#faf6f3;
  --payto-card:#fffdfb;
  --payto-wine:#3a1f2b;
  --payto-shell:min(1400px, 75vw);
}
*{box-sizing:border-box}
html{height:100%}
html,body{margin:0;padding:0}
body.payto-site{
  font-family:Figtree,system-ui,sans-serif;
  color:var(--payto-ink);
  background:
    radial-gradient(720px 360px at 100% 0%, rgba(196,92,74,.14), transparent 58%),
    radial-gradient(560px 280px at 0% 18%, rgba(58,31,43,.06), transparent 52%),
    var(--payto-paper);
  line-height:1.55;
  min-height:100%;
  display:flex;
  flex-direction:column;
}
h1,h2,h3{font-family:Syne,Figtree,sans-serif;letter-spacing:-.02em;line-height:1.15;margin:0}
a{color:inherit}
.payto-shell{width:var(--payto-shell);margin:0 auto}

.payto-site-header{
  position:sticky;top:0;z-index:40;
  background:var(--payto-wine);
}
.payto-header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0}
.payto-brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-weight:800;font-size:1.08rem;color:#fff;font-family:Syne,Figtree,sans-serif}
.payto-brand img{max-height:36px;width:auto}
.payto-site-nav{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.payto-site-nav a{
  text-decoration:none;padding:8px 12px;border-radius:999px;font-size:14px;font-weight:600;color:#f3d8d2;
}
.payto-site-nav a:hover,.payto-site-nav a.is-active{color:#fff;background:rgba(255,255,255,.1)}
.payto-site-nav .payto-nav-cta{background:var(--payto-accent);color:#fff!important;margin-left:4px}
.payto-site-nav .payto-nav-cta:hover{background:var(--payto-accent-2)}
.payto-nav-toggle{
  display:none;border:1px solid rgba(255,255,255,.2);background:transparent;color:#fff;border-radius:10px;padding:8px 12px;font-weight:700;cursor:pointer;
}

.payto-site-main{flex:1 0 auto;padding:0 0 56px;width:100%}
.payto-main-flush{padding-top:0;padding-bottom:40px}
.payto-page{padding:40px 0 12px;animation:paytoIn .45s ease both}
.payto-page-hero{max-width:100%;margin:0 0 28px}
.payto-page-hero-wide{max-width:100%}
.payto-eyebrow{
  display:inline-block;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  color:var(--payto-accent);margin:0 0 10px;
}
.payto-lead{color:var(--payto-muted);font-size:1.06rem;max-width:68ch}
.payto-muted{color:var(--payto-muted)}

.payto-btn,.payto-form button{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  background:var(--payto-accent);color:#fff!important;text-decoration:none;border:0;
  border-radius:999px;padding:12px 18px;font-weight:700;font-size:14px;cursor:pointer;
}
.payto-btn:hover,.payto-form button:hover{background:var(--payto-accent-2)}
.payto-btn-ghost{background:transparent;color:#fff!important;border:1px solid rgba(255,255,255,.45)}
.payto-btn-outline{background:#fff;color:var(--payto-ink)!important;border:1px solid var(--payto-line)}
.payto-btn-lg{padding:14px 22px;font-size:15px}
.payto-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
.payto-inline-link{color:var(--payto-accent);font-weight:700;text-decoration:none}
.payto-inline-link:hover{text-decoration:underline}

/* Home hero — full bleed */
.payto-home{margin:0;padding:0 0 8px}
.payto-hero-bleed{
  position:relative;overflow:hidden;color:#fff;
  background:
    linear-gradient(135deg, #2b1a22 0%, #3a1f2b 42%, #5a2d36 100%);
  padding:clamp(52px,9vw,96px) 0 clamp(48px,7vw,80px);
  margin-bottom:8px;
}
.payto-hero-glow{
  position:absolute;inset:auto -10% -40% 40%;height:70%;
  background:radial-gradient(circle, rgba(196,92,74,.45), transparent 62%);
  pointer-events:none;
}
.payto-hero-copy{position:relative;z-index:1;width:var(--payto-shell);max-width:none;margin:0 auto}
.payto-hero-brand-mark{
  font-family:Syne,Figtree,sans-serif;font-size:clamp(34px,5.5vw,52px);font-weight:800;
  margin:0 0 14px;letter-spacing:-.03em;line-height:1;
}
.payto-hero-copy h1{
  font-size:clamp(26px,3.8vw,42px);margin:0 0 14px;max-width:22ch;color:#fff;
}
.payto-hero-sub{margin:0 0 22px;color:#f3d8d2;font-size:clamp(16px,2vw,19px);max-width:58ch;line-height:1.5}
.payto-hero-bleed .payto-btn-outline{background:rgba(255,255,255,.08);color:#fff!important;border-color:rgba(255,255,255,.28)}
.payto-hero-bleed .payto-btn-outline:hover{background:rgba(255,255,255,.16)}

.payto-section{padding:44px 0 12px;width:var(--payto-shell);margin:0 auto;animation:paytoIn .5s ease .08s both}
.payto-section h2{text-align:left;font-size:clamp(24px,3vw,32px);margin:0 0 8px}
.payto-section .payto-lead{text-align:left;margin:0 0 22px}
.payto-section-soft{
  background:rgba(255,253,251,.85);border:1px solid var(--payto-line);border-radius:18px;
  width:var(--payto-shell);max-width:none;padding:28px 24px 24px;box-sizing:border-box;
}
.payto-feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.payto-feature{
  background:var(--payto-card);border:1px solid var(--payto-line);border-left:4px solid var(--payto-accent);
  border-radius:0 14px 14px 0;padding:18px 18px 16px 18px;
}
.payto-feature h3{font-size:17px;margin:0 0 6px}
.payto-feature p{margin:0;color:var(--payto-muted);font-size:14.5px}
.payto-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding-bottom:4px}
.payto-step{text-align:left;padding:16px 14px;background:#fff;border-radius:14px;border:1px solid var(--payto-line)}
.payto-step-num{
  width:32px;height:32px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;
  background:var(--payto-accent);color:#fff;font-weight:800;margin-bottom:10px;
}
.payto-step h3{font-size:17px;margin:0 0 6px}
.payto-step p{margin:0;color:var(--payto-muted);font-size:14.5px}

.payto-split-panels{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.payto-panel{
  background:var(--payto-card);border:1px solid var(--payto-line);border-radius:16px;padding:22px 20px;
}
.payto-panel h3{font-size:1.15rem;margin:0 0 12px}
.payto-plain-list{margin:0;padding:0 0 0 1.1em;color:var(--payto-muted)}
.payto-plain-list li{margin:0 0 8px;padding-left:2px}
.payto-plain-list li::marker{color:var(--payto-accent)}

.payto-cta-band{
  width:var(--payto-shell);margin:36px auto 8px;padding:clamp(24px,4vw,36px);
  border-radius:18px;color:var(--payto-ink);text-align:left;
  background:#fffdfb;border:1px solid var(--payto-line);
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;
  box-shadow:0 14px 36px rgba(58,31,43,.05);
}
.payto-cta-band h2{margin:0 0 6px}
.payto-cta-band p{margin:0;color:var(--payto-muted)}
.payto-cta-band .payto-hero-actions{margin:0}

/* Help */
.payto-help-intro{
  background:var(--payto-card);border:1px solid var(--payto-line);border-radius:16px;
  padding:22px 22px 18px;margin:0 0 28px;max-width:100%;
}
.payto-help-intro h2{font-size:1.35rem;margin:0 0 8px}
.payto-help-intro p{margin:0;color:var(--payto-muted);max-width:70ch}
.payto-help-block{margin:0 0 36px}
.payto-help-block h2{font-size:clamp(22px,2.6vw,28px);margin:0 0 12px}
.payto-help-note{margin:0 0 16px}
.payto-journey{list-style:none;margin:0;padding:0;display:grid;gap:12px;max-width:100%}
.payto-journey li{
  background:var(--payto-card);border:1px solid var(--payto-line);border-radius:14px;padding:16px 18px;
}
.payto-journey h3{font-size:1.05rem;margin:0 0 6px}
.payto-journey p{margin:0;color:var(--payto-muted);font-size:15px}
.payto-faq{display:grid;gap:10px;max-width:100%}
.payto-faq-item{background:#fff;border:1px solid var(--payto-line);border-radius:12px;padding:12px 16px}
.payto-faq-item summary{cursor:pointer;font-weight:700;list-style:none}
.payto-faq-item summary::-webkit-details-marker{display:none}
.payto-faq-item summary:after{content:"+";float:right;color:var(--payto-accent);font-weight:800}
.payto-faq-item[open] summary:after{content:"–"}
.payto-faq-item p{margin:10px 0 4px;color:var(--payto-muted)}
.payto-help-cta{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;
  background:var(--payto-wine);color:#fff;border-radius:18px;padding:24px 22px;margin-top:8px;
}
.payto-help-cta h2{margin:0 0 6px;color:#fff}
.payto-help-cta p{margin:0;color:#f3d8d2}
.payto-help-cta .payto-btn-outline{background:transparent;color:#fff!important;border-color:rgba(255,255,255,.35)}

/* Account / register */
.payto-auth-layout{
  display:grid;grid-template-columns:1.05fr .95fr;gap:28px;align-items:start;
}
.payto-auth-perks{margin:18px 0 0;max-width:36ch}
.payto-form,.payto-account-card{
  max-width:480px;background:var(--payto-card);border:1px solid var(--payto-line);border-radius:16px;padding:24px 22px;
  box-shadow:0 12px 30px rgba(58,31,43,.05);
}
.payto-account-card-wide,.payto-auth-panel .payto-form{max-width:none;width:100%}
.payto-form-title{font-size:1.2rem;margin:0 0 16px}
.payto-form label{display:block;font-size:13px;font-weight:700;margin:0 0 6px}
.payto-form input[type=text],
.payto-form input[type=email],
.payto-form input[type=password],
.payto-form input[type=url],
.payto-form textarea{
  width:100%;margin:0 0 14px;padding:11px 12px;border:1px solid #e4d4d8;border-radius:10px;font:inherit;background:#fff;
}
.payto-form input:focus,.payto-form textarea:focus{
  outline:none;border-color:var(--payto-accent);box-shadow:0 0 0 3px rgba(196,92,74,.16);
}
.payto-check{display:flex!important;align-items:center;gap:8px;font-weight:600!important;margin:0 0 14px!important;color:var(--payto-muted)}
.payto-form-foot{margin:14px 0 0;font-size:13px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.payto-form-foot a{color:var(--payto-accent);font-weight:700;text-decoration:none}
.payto-account-kicker{margin:0 0 4px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--payto-accent)}
.payto-account-user{font-size:1.35rem;font-weight:700;margin:0 0 4px;font-family:Syne,Figtree,sans-serif}
.payto-alert{max-width:100%;border-radius:12px;padding:12px 14px;margin:0 0 14px;font-weight:600}
.payto-alert-ok{background:#ecfdf5;color:#065f46;border:1px solid #6ee7b7}
.payto-alert-err{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}

/* Contact */
.payto-contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;align-items:start}
.payto-support-card{
  background:var(--payto-card);border:1px solid var(--payto-line);border-radius:16px;padding:26px 24px;
  box-shadow:0 12px 30px rgba(58,31,43,.05);
}
.payto-support-card-main h2{font-size:1.35rem;margin:0 0 10px}
.payto-support-card-main p{margin:0 0 18px;color:var(--payto-muted);font-size:1.02rem}
.payto-support-note{margin:14px 0 0!important;font-size:13px!important}
.payto-support-side{
  background:#fff;border:1px solid var(--payto-line);border-radius:16px;padding:22px 20px;
}
.payto-support-side h2{font-size:1.15rem;margin:0 0 14px}
.payto-topic-list{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:12px}
.payto-topic-list li{padding:0 0 12px;border-bottom:1px solid var(--payto-line)}
.payto-topic-list li:last-child{border-bottom:0;padding-bottom:0}
.payto-topic-list strong{display:block;margin:0 0 4px}
.payto-topic-list span{color:var(--payto-muted);font-size:14px}

/* Footer — matches header width and wine bar */
.payto-site-footer{
  flex-shrink:0;
  margin-top:auto;
  background:var(--payto-wine);
  padding:14px 0;
}
.payto-footer-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px 20px;
  flex-wrap:wrap;
}
.payto-footer-brand{
  font-family:Syne,Figtree,sans-serif;font-size:1rem;color:#fff;font-weight:800;
}
.payto-footer-nav{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.payto-footer-nav a{
  text-decoration:none;font-weight:600;font-size:13px;color:#f3d8d2;
  padding:6px 10px;border-radius:999px;
}
.payto-footer-nav a:hover{color:#fff;background:rgba(255,255,255,.1)}

@keyframes paytoIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

@media (max-width:900px){
  .payto-feature-grid,.payto-steps,.payto-split-panels,.payto-auth-layout,.payto-contact-grid{grid-template-columns:1fr}
  .payto-cta-band,.payto-help-cta{text-align:left}
  .payto-hero-copy h1{max-width:none}
}
@media (max-width:820px){
  .payto-nav-toggle{display:inline-flex}
  .payto-site-nav{display:none;width:100%;flex-direction:column;align-items:stretch;padding-bottom:8px}
  .payto-site-nav.is-open{display:flex}
  .payto-header-inner{flex-wrap:wrap}
  :root{--payto-shell:min(1400px, calc(100% - 28px))}
  .payto-footer-inner{justify-content:center;text-align:center}
  .payto-footer-nav{justify-content:center}
}
