
body{margin:0;background:#F4F4F2}
a{color:#1B3550}
.wrap{font-family:'Public Sans',system-ui,sans-serif;color:#2C303A;background:#F4F4F2;font-size:17px;line-height:1.55;overflow:hidden}
.in{max-width:1200px;margin:0 auto;padding-left:24px;padding-right:24px}
.disp{font-family:'Space Grotesk',sans-serif;font-weight:700;letter-spacing:-0.035em;line-height:1.0;margin:0}
.eyebrow{margin:0;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.btn{display:inline-flex;align-items:center;gap:10px;min-height:52px;padding:0 26px;border-radius:6px;background:#F2A900;color:#16181D;border:1px solid #8F6A00;box-shadow:0 2px 0 #8F6A00;font-weight:700;font-size:18px;text-decoration:none;transition:transform .1s ease-out}
.btn:active{transform:scale(.97)}
.ghost{display:inline-flex;align-items:center;gap:10px;min-height:52px;padding:0 24px;border-radius:6px;background:transparent;color:#FFFFFF;border:1px solid rgba(255,255,255,.7);font-weight:700;font-size:18px;text-decoration:none}
.grain{background-image:url("/static/brand/texture-grain.svg")}
.card{background:#FFFFFF;border:1px solid #DEE0E4;border-radius:14px}
.lift{transition:transform .25s ease, box-shadow .25s ease}
.lift:hover{transform:translateY(-6px);box-shadow:0 26px 50px -30px rgba(27,53,80,.55)}
.tab{font-variant-numeric:tabular-nums}

/* hero */
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes floaty2{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(8px) rotate(-2deg)}}
@keyframes rec{0%,100%{opacity:1}50%{opacity:.25}}
@keyframes eq{0%,100%{transform:scaleY(.35)}50%{transform:scaleY(1)}}
.eq span{display:block;width:4px;border-radius:2px;background:#1B3550;transform-origin:center;animation:eq 1s ease-in-out infinite}
@keyframes ln0{0%,6%{opacity:0;transform:translateY(10px) scale(.98)}11%{opacity:1;transform:none}88%{opacity:1;transform:none}94%,100%{opacity:0;transform:none}}
.ln0{animation:ln0 10s ease-out infinite}
@keyframes ln1{0%,15%{opacity:0;transform:translateY(10px) scale(.98)}20%{opacity:1;transform:none}88%{opacity:1;transform:none}94%,100%{opacity:0;transform:none}}
.ln1{animation:ln1 10s ease-out infinite}
@keyframes ln2{0%,24%{opacity:0;transform:translateY(10px) scale(.98)}29%{opacity:1;transform:none}88%{opacity:1;transform:none}94%,100%{opacity:0;transform:none}}
.ln2{animation:ln2 10s ease-out infinite}
@keyframes ln3{0%,33%{opacity:0;transform:translateY(10px) scale(.98)}38%{opacity:1;transform:none}88%{opacity:1;transform:none}94%,100%{opacity:0;transform:none}}
.ln3{animation:ln3 10s ease-out infinite}
@keyframes ln4{0%,42%{opacity:0;transform:translateY(10px) scale(.98)}47%{opacity:1;transform:none}88%{opacity:1;transform:none}94%,100%{opacity:0;transform:none}}
.ln4{animation:ln4 10s ease-out infinite}
@keyframes tx0{0%,0%{opacity:0;transform:translateY(10px) scale(.98)}5%{opacity:1;transform:none}88%{opacity:1;transform:none}94%,100%{opacity:0;transform:none}}
.tx0{animation:tx0 10s ease-out infinite}
@keyframes tx1{0%,5%{opacity:0;transform:translateY(10px) scale(.98)}10%{opacity:1;transform:none}88%{opacity:1;transform:none}94%,100%{opacity:0;transform:none}}
.tx1{animation:tx1 10s ease-out infinite}
@keyframes tx2{0%,10%{opacity:0;transform:translateY(10px) scale(.98)}15%{opacity:1;transform:none}88%{opacity:1;transform:none}94%,100%{opacity:0;transform:none}}
.tx2{animation:tx2 10s ease-out infinite}

/* marquee */
@keyframes mq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes mqr{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.mq{display:flex;gap:16px;width:max-content;animation:mq 46s linear infinite}
.mqr{display:flex;gap:16px;width:max-content;animation:mqr 52s linear infinite}
.pill{display:flex;align-items:center;gap:14px;background:#FFFFFF;border:1px solid #DEE0E4;border-radius:12px;padding:14px 18px;white-space:nowrap;box-shadow:0 10px 24px -20px rgba(27,53,80,.5)}
.said{font-style:italic;color:#4B5160}
.arrow{color:#8F6A00;font-weight:700}
.wrote{font-weight:700;color:#16181D}
.svc{display:inline-block;font-size:12px;font-weight:700;padding:3px 8px;border-radius:5px;background:#E6E9EE;color:#1B3550;margin-right:6px}

/* before / after */
@keyframes sign{0%,30%{stroke-dashoffset:520}62%,92%{stroke-dashoffset:0}100%{stroke-dashoffset:520}}
@keyframes stamp{0%,60%{opacity:0;transform:scale(1.8) rotate(-14deg)}66%{opacity:1;transform:scale(1) rotate(-8deg)}92%{opacity:1;transform:scale(1) rotate(-8deg)}100%{opacity:0}}
@keyframes flow{0%{transform:translateX(-14px);opacity:0}30%,70%{opacity:1}100%{transform:translateX(14px);opacity:0}}
.sigpath{stroke-dasharray:520;animation:sign 7s ease-in-out infinite}
.stamp{animation:stamp 7s ease-out infinite}

/* timeline */
@keyframes fill{0%,8%{width:0}70%,92%{width:100%}100%{width:100%;opacity:0}}
@keyframes st0{0%,8%{opacity:0;transform:translateY(10px) scale(.98)}13%{opacity:1;transform:none}90%{opacity:1;transform:none}96%,100%{opacity:0;transform:none}}
.st0{animation:st0 10s ease-out infinite}
@keyframes st1{0%,24%{opacity:0;transform:translateY(10px) scale(.98)}29%{opacity:1;transform:none}90%{opacity:1;transform:none}96%,100%{opacity:0;transform:none}}
.st1{animation:st1 10s ease-out infinite}
@keyframes st2{0%,40%{opacity:0;transform:translateY(10px) scale(.98)}45%{opacity:1;transform:none}90%{opacity:1;transform:none}96%,100%{opacity:0;transform:none}}
.st2{animation:st2 10s ease-out infinite}
@keyframes st3{0%,56%{opacity:0;transform:translateY(10px) scale(.98)}61%{opacity:1;transform:none}90%{opacity:1;transform:none}96%,100%{opacity:0;transform:none}}
.st3{animation:st3 10s ease-out infinite}
@keyframes nt0{0%,14%{opacity:0;transform:translateY(10px) scale(.98)}19%{opacity:1;transform:none}88%{opacity:1;transform:none}94%,100%{opacity:0;transform:none}}
.nt0{animation:nt0 10s ease-out infinite}
@keyframes nt1{0%,34%{opacity:0;transform:translateY(10px) scale(.98)}39%{opacity:1;transform:none}88%{opacity:1;transform:none}94%,100%{opacity:0;transform:none}}
.nt1{animation:nt1 10s ease-out infinite}
@keyframes nt2{0%,54%{opacity:0;transform:translateY(10px) scale(.98)}59%{opacity:1;transform:none}88%{opacity:1;transform:none}94%,100%{opacity:0;transform:none}}
.nt2{animation:nt2 10s ease-out infinite}

/* bento */
@keyframes wig{0%,80%,100%{transform:rotate(0)}84%{transform:rotate(14deg)}88%{transform:rotate(-12deg)}92%{transform:rotate(8deg)}96%{transform:rotate(-4deg)}}
@keyframes drive{0%{offset-distance:0%}100%{offset-distance:100%}}
@keyframes rowin{0%,10%{opacity:0;transform:translateX(-10px)}20%,85%{opacity:1;transform:none}100%{opacity:0}}
@keyframes check{0%,25%{stroke-dashoffset:40}45%,90%{stroke-dashoffset:0}100%{stroke-dashoffset:40}}
@keyframes slide{0%,15%{transform:translate(0,0)}35%,80%{transform:translate(18px,-14px)}100%{transform:translate(0,0)}}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(23,88,58,.45)}100%{box-shadow:0 0 0 16px rgba(23,88,58,0)}}

/* closing */
@keyframes rise{0%,100%{transform:scaleY(.4)}50%{transform:scaleY(1)}}
.bigwave span{display:block;width:10px;border-radius:5px;background:rgba(255,255,255,.14);transform-origin:bottom;animation:rise 2.4s ease-in-out infinite}

@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}


@keyframes press{0%,70%{transform:none;box-shadow:0 2px 0 #8F6A00}74%{transform:scale(.96);box-shadow:0 0 0 #8F6A00}78%,100%{transform:none;box-shadow:0 2px 0 #8F6A00}}
@keyframes sent{0%,76%{opacity:0;transform:scale(1.8) rotate(-14deg)}82%,96%{opacity:1;transform:scale(1) rotate(-8deg)}100%{opacity:0}}
@keyframes hl{0%,20%{background:transparent}30%,100%{background:#FFF1CF}}
@keyframes strike{0%,20%{width:0}32%,100%{width:100%}}
@keyframes newv{0%,30%{opacity:0}40%,100%{opacity:1}}
@keyframes codein{0%,42%{opacity:0;transform:translateY(6px)}52%,100%{opacity:1;transform:none}}
.ins-cycle *{animation-duration:9s;animation-iteration-count:infinite}
.ins-press{animation-name:press}
.ins-sent{animation-name:sent;animation-timing-function:ease-out}
.ins-hl{animation-name:hl}
.ins-strike{animation-name:strike}
.ins-new{animation-name:newv}
.ins-code{animation-name:codein}
@keyframes s1{0%,100%{background:#1B3550;color:#fff}}
@keyframes s2{0%,25%{background:#FFFFFF;color:#4B5160}27%,100%{background:#1B3550;color:#fff}}
@keyframes s3{0%,46%{background:#FFFFFF;color:#4B5160}48%,100%{background:#1B3550;color:#fff}}
@keyframes s4{0%,72%{background:#FFFFFF;color:#4B5160}74%,100%{background:#1B3550;color:#fff}}
.stp{display:flex;align-items:center;gap:12px;min-height:56px;padding:0 18px;border-radius:12px;border:1px solid #DEE0E4;font-weight:700;font-size:16px;animation-duration:9s;animation-iteration-count:infinite}
.stp b{width:30px;height:30px;flex:none;border-radius:50%;display:grid;place-items:center;background:rgba(242,169,0,.9);color:#16181D;font-size:14px}


.fg{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:44px}
.fc{background:#FFFFFF;border:1px solid #DEE0E4;border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:10px;min-height:150px;box-sizing:border-box;transition:transform .2s ease,box-shadow .2s ease}
.fc:hover{transform:translateY(-3px);box-shadow:0 18px 36px -26px rgba(27,53,80,.55)}
.fi{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:#E6E9EE}
.fc h3{margin:4px 0 0;font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:18px;color:#16181D;letter-spacing:-.01em}
.fc p{margin:0;font-size:15px;line-height:1.45;color:#4B5160}
@keyframes ping{0%{box-shadow:0 0 0 0 rgba(192,57,43,.35)}100%{box-shadow:0 0 0 10px rgba(192,57,43,0)}}


.bill{position:absolute;opacity:0;pointer-events:none}
.tog{display:inline-flex;background:#FFFFFF;border:1px solid #DEE0E4;border-radius:10px;padding:4px;gap:4px}
.tog label{min-height:44px;padding:0 20px;display:inline-flex;align-items:center;gap:8px;border-radius:7px;font-weight:700;cursor:pointer;color:#4B5160}
#b-m:checked ~ .tg .tog label[for=b-m],#b-y:checked ~ .tg .tog label[for=b-y]{background:#1B3550;color:#FFFFFF}
.yr{display:none}#b-y:checked ~ .plans .yr{display:inline}#b-y:checked ~ .plans .mo{display:none}
.plan{background:#FFFFFF;border:1px solid #DEE0E4;border-radius:20px;padding:32px;display:flex;flex-direction:column;gap:18px;position:relative}
.plan ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px;font-size:16px}
.plan li{display:flex;gap:10px;align-items:flex-start}
.plan li::before{content:"";flex:none;width:20px;height:20px;margin-top:2px;border-radius:50%;background:#D9F0E3 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2317583A' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E") center/12px no-repeat}
.price{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:64px;letter-spacing:-.04em;line-height:1;color:#16181D}
@keyframes shine{0%{background-position:-200% 0}100%{background-position:200% 0}}
details{background:#FFFFFF;border:1px solid #DEE0E4;border-radius:14px;padding:0 22px}
summary{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-weight:700;font-size:18px;color:#16181D;cursor:pointer;list-style:none}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-size:26px;color:#1B3550;transition:transform .2s}
details[open] summary::after{transform:rotate(45deg)}
details p{margin:0 0 20px;font-size:16px}


/* ===== Responsive layer for the round-six page (Claude, 16 Oct). The design is
   1440 px; everything below keeps it, and only re-flows it for smaller screens. */
html,body{overflow-x:hidden}
.disp{overflow-wrap:break-word}
@media (max-width:1023px){
  .lp-navlinks{display:none!important}
  .fg{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .lp-insgrid{grid-template-columns:minmax(0,1fr)!important}
  .lp-est,.lp-mid{display:none!important}
  .lp-plans{grid-template-columns:minmax(0,1fr)!important;max-width:520px}
  .lp-pro{transform:none!important}
  .lp-ftgrid{grid-template-columns:1fr 1fr!important}
  .lp-chipR{display:none!important}
  .lp-chipL{left:calc(50% - 175px)!important;top:auto!important;bottom:150px}
  .lp-phone{flex:1 1 100%!important;display:flex;justify-content:center;position:relative}
}
@media (max-width:767px){
  .in{padding-left:16px!important;padding-right:16px!important}
  section{padding-top:64px!important;padding-bottom:64px!important}
  .disp{font-size:clamp(32px,9.6vw,52px)!important;line-height:1.04!important}
  .lp-h1{font-size:clamp(44px,13vw,64px)!important}
  .lp-phone{flex:1 1 100%!important;display:flex;justify-content:center}
  .lp-phone > div:last-child{width:min(310px,100%)!important}
  .lp-chipL{left:4px!important}
  .lp-chipR{display:none!important}
  header nav{flex-wrap:nowrap!important;gap:8px!important;min-height:64px!important}
  header nav img{height:28px!important}
  header .btn{padding:0 12px!important;font-size:14px!important}
  .lp-lhgrid{grid-template-columns:70px minmax(0,1fr) 78px!important;gap:8px!important;font-size:13px!important}
  .lp-sendrow{flex-direction:column;align-items:stretch!important}
  .lp-sendrow span{max-width:none!important;width:100%;box-sizing:border-box;text-align:center}
  .lp-steps{grid-template-columns:1fr 1fr!important}
  .stp{font-size:14px!important;padding:0 12px!important}
  .fg{grid-template-columns:minmax(0,1fr)!important}
  .lp-ftgrid{grid-template-columns:minmax(0,1fr)!important}
  .btn,.ghost{min-height:48px}
  .pill{padding:10px 14px!important;font-size:14px}
}
@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}
