@keyframes card0{0%,0%{background:var(--surface);box-shadow:none}1.0%,15.670000000000002%{background:#FFF4DE;box-shadow:inset 0 -4px 0 var(--action)}16.67%,100%{background:var(--surface);box-shadow:none}}
.path5 a.s0{animation:card0 12.0s infinite}
@keyframes word0{0%,0%{color:var(--ink)}1.0%,15.670000000000002%{color:var(--action-deep)}16.67%,100%{color:var(--ink)}}
.path5 a.s0 .pw{animation:word0 12.0s infinite}
@keyframes seg0{0%,0.0%{stroke-dashoffset:1;opacity:1}10.0%,95.0%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}
.tree .g0 .dr{stroke-dasharray:1;stroke-dashoffset:1;animation:seg0 12.0s infinite}
@keyframes node0{0%,0.0%{opacity:0;transform:scale(.4)}10.0%,95.0%{opacity:1;transform:scale(1)}100%{opacity:0}}
.tree .g0 .nd{transform-box:fill-box;transform-origin:center;opacity:0;animation:node0 12.0s infinite}
@keyframes lab0{0%,0%{fill:#A7ADC6}1.0%,16.67%{fill:#9C6605}100%{fill:#3A4059}}
.tree .g0 .lb{animation:lab0 12.0s infinite}
@keyframes card1{0%,16.66%{background:var(--surface);box-shadow:none}17.67%,32.33%{background:#FFF4DE;box-shadow:inset 0 -4px 0 var(--action)}33.33%,100%{background:var(--surface);box-shadow:none}}
.path5 a.s1{animation:card1 12.0s infinite}
@keyframes word1{0%,16.66%{color:var(--ink)}17.67%,32.33%{color:var(--action-deep)}33.33%,100%{color:var(--ink)}}
.path5 a.s1 .pw{animation:word1 12.0s infinite}
@keyframes seg1{0%,16.67%{stroke-dashoffset:1;opacity:1}26.67%,95.0%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}
.tree .g1 .dr{stroke-dasharray:1;stroke-dashoffset:1;animation:seg1 12.0s infinite}
@keyframes node1{0%,16.67%{opacity:0;transform:scale(.4)}26.67%,95.0%{opacity:1;transform:scale(1)}100%{opacity:0}}
.tree .g1 .nd{transform-box:fill-box;transform-origin:center;opacity:0;animation:node1 12.0s infinite}
@keyframes lab1{0%,16.66%{fill:#A7ADC6}17.67%,33.33%{fill:#9C6605}100%{fill:#3A4059}}
.tree .g1 .lb{animation:lab1 12.0s infinite}
@keyframes card2{0%,33.32%{background:var(--surface);box-shadow:none}34.33%,49.0%{background:#FFF4DE;box-shadow:inset 0 -4px 0 var(--action)}50.0%,100%{background:var(--surface);box-shadow:none}}
.path5 a.s2{animation:card2 12.0s infinite}
@keyframes word2{0%,33.32%{color:var(--ink)}34.33%,49.0%{color:var(--action-deep)}50.0%,100%{color:var(--ink)}}
.path5 a.s2 .pw{animation:word2 12.0s infinite}
@keyframes seg2{0%,33.33%{stroke-dashoffset:1;opacity:1}43.33%,95.0%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}
.tree .g2 .dr{stroke-dasharray:1;stroke-dashoffset:1;animation:seg2 12.0s infinite}
@keyframes node2{0%,33.33%{opacity:0;transform:scale(.4)}43.33%,95.0%{opacity:1;transform:scale(1)}100%{opacity:0}}
.tree .g2 .nd{transform-box:fill-box;transform-origin:center;opacity:0;animation:node2 12.0s infinite}
@keyframes lab2{0%,33.32%{fill:#A7ADC6}34.33%,50.0%{fill:#9C6605}100%{fill:#3A4059}}
.tree .g2 .lb{animation:lab2 12.0s infinite}
@keyframes card3{0%,49.99%{background:var(--surface);box-shadow:none}51.0%,65.67%{background:#FFF4DE;box-shadow:inset 0 -4px 0 var(--action)}66.67%,100%{background:var(--surface);box-shadow:none}}
.path5 a.s3{animation:card3 12.0s infinite}
@keyframes word3{0%,49.99%{color:var(--ink)}51.0%,65.67%{color:var(--action-deep)}66.67%,100%{color:var(--ink)}}
.path5 a.s3 .pw{animation:word3 12.0s infinite}
@keyframes seg3{0%,50.0%{stroke-dashoffset:1;opacity:1}60.0%,95.0%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}
.tree .g3 .dr{stroke-dasharray:1;stroke-dashoffset:1;animation:seg3 12.0s infinite}
@keyframes node3{0%,50.0%{opacity:0;transform:scale(.4)}60.0%,95.0%{opacity:1;transform:scale(1)}100%{opacity:0}}
.tree .g3 .nd{transform-box:fill-box;transform-origin:center;opacity:0;animation:node3 12.0s infinite}
@keyframes lab3{0%,49.99%{fill:#A7ADC6}51.0%,66.67%{fill:#9C6605}100%{fill:#3A4059}}
.tree .g3 .lb{animation:lab3 12.0s infinite}
@keyframes card4{0%,66.66%{background:var(--ink);box-shadow:none}67.67%,90.67%{background:#1D2450;box-shadow:inset 0 -4px 0 var(--action)}91.67%,100%{background:var(--ink);box-shadow:none}}
.path5 a.s4{animation:card4 12.0s infinite}
@keyframes word4{0%,66.66%{color:#FFFFFF}67.67%,90.67%{color:var(--action)}91.67%,100%{color:#FFFFFF}}
.path5 a.s4 .pw{animation:word4 12.0s infinite}
@keyframes seg4{0%,66.67%{stroke-dashoffset:1;opacity:1}76.67%,95.0%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}
.tree .g4 .dr{stroke-dasharray:1;stroke-dashoffset:1;animation:seg4 12.0s infinite}
@keyframes node4{0%,66.67%{opacity:0;transform:scale(.4)}76.67%,95.0%{opacity:1;transform:scale(1)}100%{opacity:0}}
.tree .g4 .nd{transform-box:fill-box;transform-origin:center;opacity:0;animation:node4 12.0s infinite}
@keyframes lab4{0%,66.66%{fill:#A7ADC6}67.67%,95.0%{fill:#9C6605}100%{fill:#3A4059}}
.tree .g4 .lb{animation:lab4 12.0s infinite}
@media (prefers-reduced-motion:reduce){.path5 a,.path5 .pw,.tree .dr,.tree .nd,.tree .lb{animation:none !important;stroke-dashoffset:0 !important;opacity:1 !important}}
.recipe{margin-top:44px}
.recipe .mono{display:block;margin-bottom:14px;color:var(--action-deep)}
.pillars.cook a{padding:0 0 22px;overflow:hidden;background:var(--surface)}
.pillars.cook .ill{background:#FBF8F1;border-bottom:1px solid var(--rule);line-height:0}
.pillars.cook .ill svg{width:100%;height:auto;display:block}
.pillars.cook b,.pillars.cook span,.pillars.cook em{padding:0 22px}
.pillars.cook b{margin-top:18px}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.bob{animation:bob 2.4s ease-in-out infinite}.b2{animation-delay:.3s}.b3{animation-delay:.6s}.b4{animation-delay:.9s}
@keyframes whisk{0%,100%{transform:translateX(-5px)}50%{transform:translateX(5px)}}
.whisk{animation:whisk .35s ease-in-out infinite}
@keyframes drop{0%{transform:translate(0,-10px);opacity:0}20%{opacity:1}100%{transform:translate(-80px,60px);opacity:0}}
.drop text{animation:drop 2.4s ease-in infinite}.drop text:nth-child(2){animation-delay:.8s}.drop text:nth-child(3){animation-delay:1.6s}
@keyframes tray{0%,10%{transform:translateX(140px)}40%,100%{transform:translateX(0)}}
.tray{animation:tray 5s ease-out infinite}
@keyframes door{0%,40%{transform:scaleY(0)}52%,90%{transform:scaleY(1)}100%{transform:scaleY(0)}}
/* The oven door in the "recipe for trust" drawing. Scoped to SVG: the numbered
   offer panels are also class "door" and must not open and close. */
svg .door{transform-box:fill-box;transform-origin:bottom;animation:door 5s ease-in-out infinite}
@keyframes glow{0%,50%{opacity:.08}75%{opacity:.75}100%{opacity:.08}}
.glow{animation:glow 5s ease-in-out infinite}
@keyframes steam{0%,55%{opacity:0;transform:translateY(6px)}80%{opacity:1}100%{opacity:0;transform:translateY(-8px)}}
.steam{animation:steam 5s ease-in-out infinite}
@keyframes rays{0%,100%{opacity:.35;transform:scale(.94)}50%{opacity:1;transform:scale(1.04)}}
.rays{transform-box:fill-box;transform-origin:center bottom;animation:rays 2.2s ease-in-out infinite}
@keyframes happy{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
.happy{animation:happy 2.2s ease-in-out infinite}
@keyframes heart{0%{transform:translateY(10px);opacity:0}30%{opacity:1}100%{transform:translateY(-30px);opacity:0}}
.hearts path{animation:heart 3s ease-out infinite}.hearts path:nth-child(2){animation-delay:1.5s}
@media (prefers-reduced-motion:reduce){.bob,.whisk,.drop text,.tray,svg .door,.glow,.steam,.rays,.happy,.hearts path{animation:none !important}}

.tcol{display:flex;flex-direction:column;gap:22px;min-width:0}
.vig{line-height:0;color:var(--ink)}
.dark .vig{color:#C9CEE4}
.vig svg{width:100%;height:auto;display:block}
@keyframes stamp{0%{transform:translate(88px,58px)}8%{transform:translate(88px,74px)}14%{transform:translate(88px,58px)}25%{transform:translate(218px,58px)}33%{transform:translate(218px,74px)}39%{transform:translate(218px,58px)}50%{transform:translate(348px,58px)}58%{transform:translate(348px,74px)}64%{transform:translate(348px,58px)}75%{transform:translate(478px,58px)}83%{transform:translate(478px,74px)}89%,100%{transform:translate(478px,58px)}}
.stamp{animation:stamp 6s ease-in-out infinite}
.ticks path{opacity:0;animation:tk 6s infinite}
.ticks path:nth-child(1){animation-name:tk1}.ticks path:nth-child(2){animation-name:tk2}.ticks path:nth-child(3){animation-name:tk3}.ticks path:nth-child(4){animation-name:tk4}
@keyframes tk1{0%,7%{opacity:0}9%,95%{opacity:1}100%{opacity:0}}
@keyframes tk2{0%,32%{opacity:0}34%,95%{opacity:1}100%{opacity:0}}
@keyframes tk3{0%,57%{opacity:0}59%,95%{opacity:1}100%{opacity:0}}
@keyframes tk4{0%,82%{opacity:0}84%,95%{opacity:1}100%{opacity:0}}
.stars path{fill:transparent;animation:st 5s infinite}
.stars path:nth-child(1){animation-name:st1}.stars path:nth-child(2){animation-name:st2}.stars path:nth-child(3){animation-name:st3}.stars path:nth-child(4){animation-name:st4}.stars path:nth-child(5){animation-name:st5}
@keyframes st1{0%,4%{fill:transparent}8%,92%{fill:#F5A524}100%{fill:transparent}}
@keyframes st2{0%,18%{fill:transparent}22%,92%{fill:#F5A524}100%{fill:transparent}}
@keyframes st3{0%,32%{fill:transparent}36%,92%{fill:#F5A524}100%{fill:transparent}}
@keyframes st4{0%,46%{fill:transparent}50%,92%{fill:#F5A524}100%{fill:transparent}}
@keyframes st5{0%,60%{fill:transparent}64%,92%{fill:#F5A524}100%{fill:transparent}}
@keyframes saw{0%,100%{transform:translate(0,0)}50%{transform:translate(-44px,-14px)}}
.saw{animation:saw .9s ease-in-out infinite}
@keyframes dust{0%{transform:translateY(0);opacity:1}100%{transform:translate(6px,22px);opacity:0}}
.dust circle{animation:dust .9s linear infinite}.dust circle:nth-child(2){animation-delay:.2s}.dust circle:nth-child(3){animation-delay:.45s}.dust circle:nth-child(4){animation-delay:.65s}
@keyframes flash{0%,8%{opacity:0}10%{opacity:.95}22%,100%{opacity:0}}
.flash{opacity:0;animation:flash 4s infinite}
@keyframes flt{0%,20%{transform:translateY(12px);opacity:0}40%{opacity:1}100%{transform:translateY(-30px);opacity:0}}
.float path{animation:flt 4s ease-out infinite}.float path:nth-child(2){animation-delay:.4s}.float path:nth-child(3){animation-delay:.8s}
@media (prefers-reduced-motion:reduce){.stamp,.ticks path,.stars path,.saw,.dust circle,.flash,.float path{animation:none !important;opacity:1}}

@keyframes saw{0%,100%{transform:translate(0,0)}50%{transform:translate(-40px,12px)}}
.saw{animation:saw 1s ease-in-out infinite}

.chan{padding-bottom:0 !important}
.traffic{position:relative;height:190px;margin-top:72px;overflow:hidden}
.traffic .road{position:absolute;left:0;right:0;top:78px;bottom:0;background:#E7EAF3;border-top:2px solid #C9CEE4}
.traffic .road::after{content:"";position:absolute;left:0;right:0;top:50px;height:4px;
  background:repeating-linear-gradient(90deg,#FFFFFF 0 46px,transparent 46px 88px)}
.traffic .lane{position:absolute;left:0;right:0;height:72px}
.traffic .lane.far{top:52px;transform:scale(.78);transform-origin:left bottom;opacity:.9;height:72px}
.traffic .lane.near{top:112px}
.traffic .veh{position:absolute;left:0;bottom:0;line-height:0;animation-name:drive;animation-timing-function:linear;animation-iteration-count:infinite;will-change:transform}
.traffic .lane.far .veh{bottom:4px}
@keyframes drive{from{transform:translateX(-260px)}to{transform:translateX(calc(100vw + 40px))}}
.traffic .lane.far .veh{animation-name:drivefar}
@keyframes drivefar{from{transform:translateX(-300px)}to{transform:translateX(calc(128vw + 40px))}}
.traffic .wh{animation:spin .45s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.traffic .bob{animation:bob .6s ease-in-out infinite}
@keyframes bob{50%{transform:translateY(-1.5px)}}
.traffic .spd{animation:spd .5s linear infinite}
@keyframes spd{0%{opacity:.25;transform:translateX(6px)}50%{opacity:1}100%{opacity:.25;transform:translateX(-6px)}}
.traffic .sign{position:absolute;right:6%;top:0;z-index:3}
@media (max-width:900px){.traffic .sign{right:2%;transform:scale(.8);transform-origin:right top}}
@media (prefers-reduced-motion:reduce){
  .traffic .veh,.traffic .wh,.traffic .bob,.traffic .spd{animation:none}
  .traffic .lane .veh:nth-child(1){transform:translateX(4vw)}
  .traffic .lane .veh:nth-child(2){transform:translateX(34vw)}
  .traffic .lane .veh:nth-child(3){transform:translateX(62vw)}
}
/* anchors land below the sticky nav */
section[id]{scroll-margin-top:96px}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.close{padding-bottom:96px}
.close .shell{position:relative;z-index:2}
.close .callart{position:relative;z-index:1;display:block;width:100%;max-width:1180px;height:auto;margin:-190px auto 0}
@media (max-width:1180px){.close .callart{margin-top:24px}}
@media (min-width:1181px) and (max-width:1380px){.close .callart{margin-top:-150px}}
.callart .pulse{animation:pulse 3.2s linear infinite}
.callart .p2{animation-name:pulse2;animation-delay:-1.6s}
@keyframes pulse{from{stroke-dashoffset:1000}to{stroke-dashoffset:0}}
@keyframes pulse2{from{stroke-dashoffset:0}to{stroke-dashoffset:1000}}
.callart .bubble{opacity:0;transform-box:fill-box;transform-origin:50% 100%}
.callart .bl{animation:bl 8s ease-in-out infinite}
.callart .br{animation:br 8s ease-in-out infinite}
@keyframes bl{0%,4%{opacity:0;transform:scale(.8)}9%,40%{opacity:1;transform:none}46%,100%{opacity:0;transform:scale(.9)}}
@keyframes br{0%,50%{opacity:0;transform:scale(.8)}55%,90%{opacity:1;transform:none}96%,100%{opacity:0;transform:scale(.9)}}
.callart .wave-l{animation:wave 8s ease-in-out infinite}
@keyframes wave{0%,2%,40%,100%{transform:rotate(0)}6%,14%,22%{transform:rotate(-14deg)}10%,18%,26%{transform:rotate(8deg)}}
.callart .mini-wave,.callart .mini-wave2{animation:mwave 1.2s ease-in-out infinite}
@keyframes mwave{50%{transform:rotate(-22deg)}}
.callart .talk{animation:talk 8s ease-in-out infinite}
@keyframes talk{0%,50%,92%,100%{transform:rotate(0)}56%,68%,80%{transform:rotate(12deg)}62%,74%,86%{transform:rotate(-6deg)}}
.callart .buzz{animation:buzz 8s linear infinite}
@keyframes buzz{0%,20%,30%,100%{transform:none}21%,23%,25%,27%{transform:translateX(-2px)}22%,24%,26%,28%{transform:translateX(2px)}}
.callart .buzzl{opacity:0;animation:buzzl 8s linear infinite}
@keyframes buzzl{0%,20%{opacity:0}21%,29%{opacity:.9}30%,100%{opacity:0}}
.callart .glow-l,.callart .glow-r{animation:gl 2.4s ease-in-out infinite}
@keyframes gl{50%{opacity:.45}}
.callart .rec{animation:gl 1.2s ease-in-out infinite}
@media (prefers-reduced-motion:reduce){
  .callart *{animation:none !important}
  .callart .bubble{opacity:1}
  .callart .pulse{display:none}
}

.case .shot{position:relative;height:232px;overflow:hidden;background:#E7EAF2;line-height:0}
.case .shot img,.case .shot svg{width:100%;height:100%;object-fit:cover;object-position:top center;display:block}
.case .shot .v-live,.case .shot .v-ill{position:absolute;inset:0;transition:opacity .35s ease}
.case .shot .v-ill{opacity:0}
.case.show-ill .shot .v-ill{opacity:1}.case.show-ill .shot .v-live{opacity:0}
.chrome .vt{margin-left:auto;display:flex;gap:2px;background:#D6DAE6;border-radius:999px;padding:2px}
.chrome .vt button{border:0;background:transparent;font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.04em;color:#5A6184;padding:3px 9px;border-radius:999px;cursor:pointer}
.chrome .vt button.on{background:#fff;color:#080C24;box-shadow:0 1px 2px rgba(8,12,36,.15)}
.ill .spk{stroke-dasharray:14 80;animation:spk .9s linear infinite}
@keyframes spk{from{stroke-dashoffset:14}to{stroke-dashoffset:-60}}
.ill .arc{animation:arc .18s steps(2) infinite}
@keyframes arc{50%{opacity:.55}}
.ill .bed{animation:bed 6s ease-in-out infinite}
@keyframes bed{0%,20%,100%{transform:none}45%,75%{transform:translateX(-22px)}}
.ill .ringglow{animation:gl 3s ease-in-out infinite}
.ill .clouds{animation:clouds 40s linear infinite}
@keyframes clouds{from{transform:translateX(0)}to{transform:translateX(-260px)}}
.ill .fish{animation:jump 3.6s ease-in-out infinite}
.ill .f2{animation-delay:-1.2s}.ill .f3{animation-delay:-2.4s}
@keyframes jump{0%,100%{transform:translateY(0)}40%{transform:translateY(-12px)}60%{transform:translateY(-12px)}}
.ill .splash ellipse{transform-box:fill-box;transform-origin:center;animation:splash 3.6s ease-out infinite}
.ill .sp2{animation-delay:-1.2s}.ill .sp3{animation-delay:-2.4s}
@keyframes splash{0%,30%{transform:scale(.4);opacity:0}40%{opacity:1}80%,100%{transform:scale(1.6);opacity:0}}
.ill .shimmer{stroke-dasharray:8 10;animation:shim 2.4s linear infinite}
@keyframes shim{to{stroke-dashoffset:-36}}
@media (prefers-reduced-motion:reduce){.ill *{animation:none !important}}

.hero .shell{position:relative}
.hero-art{position:absolute;right:-6px;bottom:calc(var(--trio-h,170px) + 70px);width:340px;pointer-events:none}
.hero-art svg{width:100%;height:auto;display:block}
@media (max-width:1320px){.hero-art{width:300px}}
@media (max-width:1180px){.hero-art{display:none}}
.hero-art .a1{animation:typeA .34s ease-in-out infinite}
.hero-art .a2{animation:typeB .3s ease-in-out infinite}
@keyframes typeA{50%{transform:rotate(-2.2deg)}}
@keyframes typeB{50%{transform:rotate(2deg)}}
.hero-art .typecover{animation:reveal 9s steps(20) infinite}
@keyframes reveal{0%,4%{transform:translateX(0)}30%,100%{transform:translateX(150px)}}
.hero-art .caret{animation:caret 9s steps(20) infinite, blink .8s steps(1) infinite}
@keyframes caret{0%,4%{transform:translateX(0)}30%,100%{transform:translateX(122px)}}
@keyframes blink{50%{opacity:0}}
.hero-art .ans,.hero-art .r{opacity:0;animation:9s ease-out infinite}
.hero-art .ans{animation-name:ans}
.hero-art .r1{animation-name:r1}.hero-art .r2{animation-name:r2}.hero-art .r3{animation-name:r3}
@keyframes ans{0%,36%{opacity:0}42%,92%{opacity:1}98%,100%{opacity:0}}
@keyframes r1{0%,46%{opacity:0;transform:translateY(6px)}52%,92%{opacity:1;transform:none}98%,100%{opacity:0}}
@keyframes r2{0%,52%{opacity:0;transform:translateY(6px)}58%,92%{opacity:1;transform:none}98%,100%{opacity:0}}
@keyframes r3{0%,56%{opacity:0;transform:translateY(6px)}62%,92%{opacity:1;transform:none}98%,100%{opacity:0}}
.hero-art .steam{stroke-dasharray:4 5;animation:shim 2.6s linear infinite}
@media (prefers-reduced-motion:reduce){
  .hero-art *{animation:none !important}
  .hero-art .typecover,.hero-art .caret{display:none}
  .hero-art .ans,.hero-art .r{opacity:1}
}

.gaplink{flex-basis:100%;font-family:var(--font-display);font-weight:600;font-size:16px;color:var(--brand);text-decoration:none}
.gaplink:hover{text-decoration:underline}
.site-footer .fine a{color:inherit}

.buybox{background:var(--ink);color:#C9CEE4;border-radius:var(--radius-lg);padding:36px 36px 30px;display:flex;flex-direction:column;gap:18px}
.buybox .bb-top{display:flex;align-items:baseline;gap:14px}
.buybox .bb-price{font-family:var(--font-display);font-weight:800;font-size:64px;line-height:1;color:#fff}
.buybox .bb-unit{font-size:18px;color:#B4BAD4}
.buybox .bb-list{list-style:none;margin:0;padding:0;display:grid;gap:10px;font-size:18px}
.buybox .bb-list li{padding-left:28px;position:relative}
.buybox .bb-list li::before{content:"";position:absolute;left:4px;top:.45em;width:12px;height:7px;border-left:2.5px solid var(--action);border-bottom:2.5px solid var(--action);transform:rotate(-45deg)}
.buybox .btn{align-self:flex-start}
.buybox .lp-fine{color:#9AA2C8}

#faq{padding:112px 0}
.faqgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 64px;margin-top:52px;border-top:1px solid var(--rule);padding-top:44px}
.faqgrid h3{font-size:24px;line-height:1.25;color:var(--ink);margin:0 0 12px}
.faqgrid p{font-size:19px;line-height:1.6;color:var(--body);margin:0}
@media (max-width:900px){.faqgrid{grid-template-columns:1fr;gap:32px}}
.lp-paid{margin:10px 0 0;font-size:17px;color:#C3C9E2}
.lp-paid a{color:var(--action);font-weight:600}

/* Numbered offer panels (div.door): fold open once, from the bottom, the first
   time each scrolls into view, then stay open. Same motion as the mockup's door
   (40%→52% of a 5s ease-in-out = 0.6s). Only hidden once home-motion.js runs,
   so the panels are always visible without JS or with reduced motion. */
div.door{transform-origin:bottom}
div.door.door-shut{transform:scaleY(0)}
div.door.door-open{animation:panelopen .6s ease-in-out both}
@keyframes panelopen{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@media (prefers-reduced-motion:reduce){div.door.door-shut{transform:none}div.door.door-open{animation:none}}
