:root{--bg:#f5f2ea;--card:#fff;--ink:#16241d;--muted:#5b6a62;--line:#e2ddd0;--green:#1f4d3a;--green-dark:#163829;--green-soft:#e4eee8;--amber:#c9791a;--amber-soft:#fbf0dd;--red:#a63a2b;--radius:14px;--shadow:0 1px 2px #16241d0f, 0 8px 24px #16241d0f;--serif:Georgia, "Iowan Old Style", "Times New Roman", serif;--sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.55}h1,h2,h3{font-family:var(--serif);letter-spacing:-.01em;text-wrap:balance;margin:0 0 .5em;font-weight:700;line-height:1.18}h1{font-size:clamp(1.9rem,6vw,3rem)}h2{font-size:clamp(1.45rem,4.4vw,2rem)}h3{font-size:1.15rem}p{margin:0 0 1em}a{color:var(--green)}button{font:inherit;color:inherit}img,svg{max-width:100%}.wrap{width:100%;max-width:1040px;margin:0 auto;padding:0 20px}.narrow{width:100%;max-width:560px;margin:0 auto;padding:0 20px}.muted{color:var(--muted)}.small{font-size:.875rem}.center{text-align:center}.stack>*+*{margin-top:14px}.btn{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:54px;padding:14px 26px;font-size:1.05rem;font-weight:700;text-decoration:none;transition:background .15s,transform 50ms;display:inline-flex}.btn:hover{background:var(--green-dark)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.block{width:100%;display:flex}.btn.ghost{color:var(--green);border:1.5px solid var(--green);background:0 0}.btn.ghost:hover{background:var(--green-soft)}.btn.quiet{color:var(--muted);background:0 0;min-height:44px;font-weight:600}.btn.amber{background:var(--amber)}.btn.amber:hover{background:#b06a15}:focus-visible{outline:3px solid var(--amber);outline-offset:2px}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.pill{background:var(--green-soft);color:var(--green);letter-spacing:.02em;border-radius:999px;padding:4px 12px;font-size:.8rem;font-weight:700;display:inline-block}.pill.amber{background:var(--amber-soft);color:#8a5310}.topbar{justify-content:space-between;align-items:center;padding-top:18px;padding-bottom:18px;display:flex}.logo{font-family:var(--serif);color:var(--ink);align-items:center;gap:10px;font-size:1.2rem;font-weight:700;text-decoration:none;display:inline-flex}.logo-mark{background:var(--green);color:#f5f2ea;width:34px;height:34px;font-family:var(--sans);border-radius:9px;place-items:center;font-size:.95rem;font-weight:800;display:grid}.hero{align-items:center;gap:28px;padding-top:18px;padding-bottom:48px;display:grid}.hero p.lead{color:#2d3d35;font-size:1.15rem}.hero-art{background:#e9e3d3;border-radius:22px;padding:18px}@media (min-width:860px){.hero{grid-template-columns:1.05fr .95fr;gap:48px;padding-top:36px;padding-bottom:72px}}.section{padding:52px 0}.section.alt{background:#ece7da}.grid3{gap:16px;display:grid}@media (min-width:760px){.grid3{grid-template-columns:repeat(3,1fr)}}.step-num{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:36px;height:36px;margin-bottom:12px;font-weight:800;display:grid}.checklist{margin:0;padding:0;list-style:none}.checklist li{padding:8px 0 8px 32px;position:relative}.checklist li:before{content:"";background:var(--green-soft);border-radius:50%;width:20px;height:20px;position:absolute;top:13px;left:0}.checklist li:after{content:"";border:solid var(--green);border-width:0 2.5px 2.5px 0;width:5px;height:9px;position:absolute;top:17px;left:7px;transform:rotate(45deg)}details.faq{border-bottom:1px solid var(--line);padding:14px 0}details.faq summary{cursor:pointer;justify-content:space-between;gap:12px;font-weight:700;list-style:none;display:flex}details.faq summary::-webkit-details-marker{display:none}details.faq summary:after{content:"+";color:var(--green);font-size:1.3rem;line-height:1}details.faq[open] summary:after{content:"–"}details.faq p{color:#2d3d35;margin:10px 0 0}.footer{color:var(--muted);padding-top:32px;padding-bottom:48px;font-size:.85rem}.footer a{color:var(--muted)}.quiz-shell{flex-direction:column;min-height:100dvh;display:flex}.progress{background:var(--line);border-radius:999px;height:6px;overflow:hidden}.progress>span{background:var(--green);border-radius:999px;height:100%;transition:width .3s;display:block}.quiz-body{flex:1;padding:28px 0 24px}.quiz-foot{align-items:center;gap:10px;padding:12px 0 28px;display:flex}.quiz-foot .btn.block{flex:1}.options{gap:10px;display:grid}.option{text-align:left;cursor:pointer;background:var(--card);border:1.5px solid var(--line);border-radius:12px;align-items:center;gap:12px;width:100%;min-height:58px;padding:14px 16px;font-weight:600;display:flex}.option:hover{border-color:var(--green)}.option[aria-pressed=true]{border-color:var(--green);background:var(--green-soft)}.option small{color:var(--muted);font-weight:400;display:block}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{background:var(--card);border:1.5px solid var(--line);cursor:pointer;border-radius:999px;min-height:44px;padding:10px 16px;font-weight:600}.chip[aria-pressed=true]{border-color:var(--green);background:var(--green);color:#fff}.field-label{margin:18px 0 8px;font-weight:700;display:block}.input{width:100%;min-height:54px;font:inherit;background:var(--card);border:1.5px solid var(--line);color:var(--ink);border-radius:12px;padding:12px 16px;font-size:1.05rem}.input:focus{border-color:var(--green);box-shadow:0 0 0 3px var(--green-soft);outline:none}.stepper-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.stepper-row:last-child{border-bottom:0}.stepper-row .label small{color:var(--muted);display:block}.stepper{flex-shrink:0;align-items:center;gap:4px;display:inline-flex}.stepper button{border:1.5px solid var(--line);background:var(--card);cursor:pointer;border-radius:50%;width:44px;height:44px;font-size:1.3rem;font-weight:700;line-height:1}.stepper button:disabled{opacity:.35;cursor:default}.stepper output{text-align:center;font-variant-numeric:tabular-nums;min-width:34px;font-size:1.15rem;font-weight:800}.check{color:var(--muted);align-items:flex-start;gap:10px;margin-top:14px;font-size:.9rem;display:flex}.check input{width:22px;height:22px;accent-color:var(--green);flex-shrink:0;margin-top:2px}.error{color:var(--red);margin-top:10px;font-size:.95rem;font-weight:600}.analysing{text-align:center;place-items:center;min-height:100dvh;display:grid}.spinner{border:5px solid var(--line);border-top-color:var(--green);border-radius:50%;width:56px;height:56px;margin:0 auto 22px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.analysing ul{text-align:left;margin:18px auto 0;padding:0;list-style:none;display:inline-block}.analysing li{color:var(--muted);padding:5px 0 5px 30px;transition:color .3s;position:relative}.analysing li:before{content:"";border:2px solid var(--line);border-radius:50%;width:18px;height:18px;position:absolute;top:9px;left:0}.analysing li.done{color:var(--ink)}.analysing li.done:before{background:var(--green);border-color:var(--green)}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:3s}}.stats{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.stat{background:var(--card);border:1px solid var(--line);text-align:center;border-radius:12px;padding:14px 10px}.stat b{font-family:var(--serif);color:var(--green);font-variant-numeric:tabular-nums;font-size:clamp(1.5rem,7vw,2.1rem);line-height:1.1;display:block}.stat span{color:var(--muted);font-size:.8rem}.gapbar{background:var(--line);border-radius:999px;height:14px;margin:10px 0 6px;overflow:hidden}.gapbar>span{background:var(--amber);border-radius:999px;height:100%;display:block}.gapbar.good>span{background:var(--green)}.list-rows{margin:0;padding:0;list-style:none}.list-rows li{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:10px 0;display:flex}.list-rows li:last-child{border-bottom:0}.list-rows .qty{white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:700}.locked{position:relative}.locked .list-rows{filter:blur(5px);-webkit-user-select:none;user-select:none;pointer-events:none}.locked .lock-note{text-align:center;place-items:center;padding:0 16px;font-weight:700;display:grid;position:absolute;inset:0}.price-box{border:2px solid var(--green)}.price{font-family:var(--serif);font-size:2.8rem;font-weight:700;line-height:1}.sticky-cta{background:linear-gradient(to top, var(--bg) 70%, transparent);padding:14px 0 18px;position:sticky;bottom:0}.app{min-height:100dvh;padding-bottom:calc(84px + env(safe-area-inset-bottom))}.app-head{justify-content:space-between;align-items:center;padding:16px 0 8px;display:flex}.tabbar{z-index:20;background:var(--card);border-top:1px solid var(--line);padding:6px 6px calc(6px + env(safe-area-inset-bottom));grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.tab{min-height:56px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:10px;flex-direction:column;align-items:center;gap:3px;padding:8px 2px;font-size:.74rem;font-weight:700;display:flex}.tab[aria-current=page]{color:var(--green);background:var(--green-soft)}.tab svg{width:24px;height:24px}.ring{width:168px;height:168px;margin:0 auto;position:relative}.ring svg{transform:rotate(-90deg)}.ring .ring-label{text-align:center;place-items:center;display:grid;position:absolute;inset:0}.ring .ring-label b{font-family:var(--serif);font-variant-numeric:tabular-nums;font-size:2.5rem;line-height:1;display:block}.ring .ring-label span{color:var(--muted);font-size:.82rem}.bar-row{padding:10px 0}.bar-row .bar-top{justify-content:space-between;font-size:.95rem;font-weight:600;display:flex}.bar{background:var(--line);border-radius:999px;height:9px;margin-top:6px;overflow:hidden}.bar>span{background:var(--green);border-radius:999px;height:100%;transition:width .3s;display:block}.item{border-bottom:1px solid var(--line);padding:14px 0}.item:last-child{border-bottom:0}.item-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.item-name{font-weight:700}.item-name.done{color:var(--green)}.item-meta{color:var(--muted);font-size:.85rem}.item-extra{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;font-size:.85rem;display:flex}.item-extra input[type=date]{font:inherit;border:1.5px solid var(--line);background:var(--card);border-radius:8px;min-height:38px;padding:6px 8px;font-size:.9rem}.tick{border:2px solid var(--line);background:var(--card);cursor:pointer;border-radius:50%;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.tick[aria-pressed=true]{background:var(--green);border-color:var(--green)}.tick svg{stroke:#fff;opacity:0;width:20px;height:20px}.tick[aria-pressed=true] svg{opacity:1}.section-title{justify-content:space-between;align-items:baseline;margin:26px 0 10px;display:flex}.section-title h2{margin:0;font-size:1.25rem}.notice{background:var(--amber-soft);border:1px solid #ecd3a4;border-radius:12px;padding:14px 16px;font-size:.95rem}.notice.green{background:var(--green-soft);border-color:#c5dccf}.modal-back{z-index:50;background:#16241d8c;align-items:end;padding:12px;display:grid;position:fixed;inset:0}@media (min-width:600px){.modal-back{place-items:center}}.modal{background:var(--card);padding:24px 20px calc(20px + env(safe-area-inset-bottom));border-radius:20px;width:100%;max-width:480px;box-shadow:0 20px 60px #0000004d}.guide summary{font-family:var(--serif);cursor:pointer;padding:4px 0;font-size:1.1rem;font-weight:700}.guide ol,.guide ul{margin:10px 0 0;padding-left:22px}.guide li{margin-bottom:6px}.numbers{gap:8px;display:grid}.numbers a{border:1.5px solid var(--line);color:var(--ink);background:var(--card);border-radius:12px;justify-content:space-between;align-items:center;padding:12px 14px;font-weight:600;text-decoration:none;display:flex}.numbers a b{color:var(--green);font-size:1.1rem}textarea.input{resize:vertical;min-height:110px;line-height:1.4}.otp{letter-spacing:.4em;text-align:center;font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:700}.legal h2{margin-top:1.4em;font-size:1.25rem}
:root{--cta:#e39a2e;--cta-dark:#d0881c;--night:#0f1b2a;--night-card:#182a40;--night-line:#2a405c;--night-ink:#f5f2ea;--night-muted:#a9b8c8}.btn.cta{background:var(--cta);color:var(--ink);box-shadow:0 2px #b97614,0 10px 24px #e39a2e47}.btn.cta:hover{background:var(--cta-dark)}.btn.cta:disabled{box-shadow:none}.cta-row{margin-top:28px}.hero-art{background:var(--night);padding:0;line-height:0;overflow:hidden}.section.night{background:var(--night);color:var(--night-ink)}.section.night h2,.section.night h3{color:var(--night-ink)}.section.night p{color:var(--night-muted)}.section.night .scene{background:var(--night-card);border:1px solid var(--night-line);border-radius:var(--radius);padding:20px}.section.night .scene svg{width:44px;height:44px;margin-bottom:12px;display:block}.section.night .scene p{margin-bottom:0}.split{align-items:center;gap:32px;display:grid}@media (min-width:860px){.split{grid-template-columns:1fr auto;gap:56px}}.phone-wrap{justify-items:center;gap:12px;margin:0;display:grid}.phone{background:var(--bg);border:9px solid var(--ink);text-align:left;border-radius:38px;width:264px;max-width:100%;padding:26px 14px 16px;font-size:12.5px;line-height:1.4;position:relative;box-shadow:0 24px 50px #0f1b2a47}.phone:before{content:"";background:var(--ink);border-radius:999px;width:64px;height:8px;margin-left:-32px;position:absolute;top:8px;left:50%}.phone .p-card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px}.phone .p-head+.p-card{margin-top:6px}.phone .p-ring{width:104px;height:104px;margin:0 auto;position:relative}.phone .p-ring svg{display:block;transform:rotate(-90deg)}.phone .p-ring div{text-align:center;place-content:center;display:grid;position:absolute;inset:0}.phone .p-ring b{font-family:var(--serif);font-size:1.9rem;line-height:1;display:block}.phone .p-ring span{color:var(--muted);font-size:.72rem}.phone .p-title{font-family:var(--serif);text-align:center;margin:8px 0 0;font-size:1.05rem;font-weight:700}.phone .p-head{font-family:var(--serif);justify-content:space-between;align-items:baseline;margin:12px 2px 0;font-size:.98rem;font-weight:700;display:flex}.phone .p-head span{font-family:var(--sans);color:var(--muted);font-size:.72rem;font-weight:400}.phone ul{margin:0;padding:0;list-style:none}.phone li{border-bottom:1px solid var(--line);justify-content:space-between;gap:8px;padding:6px 0;display:flex}.phone li:last-child{border-bottom:0}.phone li b{white-space:nowrap}.phone .p-btn{background:var(--green);color:#fff;text-align:center;border-radius:999px;margin-top:8px;padding:9px;font-weight:700}.phone .p-bar{margin-top:7px}.phone .p-bar:first-child{margin-top:0}.phone .p-bar div{justify-content:space-between;font-weight:600;display:flex}.phone .p-bar div span{color:var(--muted);font-weight:400}.phone .p-bar i{background:var(--line);border-radius:999px;height:6px;margin-top:4px;display:block;overflow:hidden}.phone .p-bar i em{background:var(--green);border-radius:999px;height:100%;display:block}.tally{background:var(--green-soft);color:var(--green-dark);border-radius:12px;flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin-top:14px;padding:10px 14px;font-size:.9rem;display:flex}.tally b{font-variant-numeric:tabular-nums}.live{grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;display:grid}.route{margin:14px 0 0;padding:0;list-style:none}.route li{padding:0 0 16px 34px;position:relative}.route li:last-child{padding-bottom:0}.route li:before{content:"";background:var(--card);border:4px solid var(--amber);box-sizing:border-box;border-radius:50%;width:16px;height:16px;position:absolute;top:3px;left:4px}.route li.goal:before{border-color:var(--green);background:var(--green)}.route li:after{content:"";background:var(--line);width:2px;position:absolute;top:21px;bottom:0;left:11px}.route li:last-child:after{display:none}.route b{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:.82rem;display:block}
