:root{color-scheme:dark;--yellow:#ffc000;--bg:#191b1d;--muted:#a1a6ab;--line:#555;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 4% 30%,#292d30 0,transparent 48%),var(--bg);color:#f6f6f6}button,input{font:inherit}button,a,label,summary{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}[hidden]{display:none!important}.page{max-width:1220px;margin:auto;padding:0 48px}header{height:116px;display:flex;align-items:center;gap:24px;border-bottom:1px solid var(--line)}.brand{display:block;width:72px;height:72px}.brand img{width:100%;height:100%;object-fit:contain}.header-note{margin-left:auto;color:#b5b9bc;font-size:13px}.badge{padding:8px 11px;border:1px solid #4b4f52;border-radius:6px;font-size:10px;letter-spacing:.8px;text-transform:uppercase;color:#c3c7c9}main{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;padding:76px 0 64px;align-items:start}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:700}.intro>.eyebrow{color:#c1c6c9;display:flex;align-items:center;gap:9px}.eyebrow>span{width:6px;height:6px;background:var(--yellow);border-radius:50%}h1{font-size:clamp(44px,4.6vw,62px);line-height:1.06;letter-spacing:-2.7px;margin:25px 0 24px;font-weight:800}h1 em{font-style:normal;color:var(--yellow)}.lead{font-size:18px;font-weight:700;line-height:1.5;margin:0 0 12px}.description{max-width:395px;color:#b0b6ba;font-size:15px;line-height:1.7;margin:0}.build-note{display:flex;align-items:center;gap:8px;margin-top:20px}.build-note img{width:152px;height:152px;object-fit:contain;margin-left:-13px}.build-note p{font-size:12px;color:#a5acb0;line-height:1.8}.build-note strong{font-weight:400;color:#e1e3e5}.support-card{color-scheme:light;background:#f1f2f2;color:#202326;padding:30px;border-radius:16px;box-shadow:0 20px 60px #0003}.card-top{display:flex;align-items:center;justify-content:space-between;color:#676e74}.card-top svg{height:22px;width:22px;fill:none;stroke:#60666b;stroke-width:1.5}h2{font-size:28px;line-height:1.15;letter-spacing:-.8px;margin:20px 0 12px}.card-description{font-size:13px;color:#60676d;margin:0;line-height:1.6}.payment-type{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #d7dbde;border-bottom:1px solid #d7dbde;padding:18px 0;margin:25px 0;font-size:12px}.payment-type span:first-child{font-weight:700}.payment-type span:last-child{color:#727980}fieldset{padding:0;margin:0;border:0;min-width:0}legend{padding:0 0 13px;font-size:12px;font-weight:700;width:100%}legend span{float:right;font-weight:400;color:#747b80;font-size:11px}.amounts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.amounts label{position:relative;cursor:pointer}.amounts input{position:absolute;opacity:0;width:1px;height:1px}.amounts label>span{height:57px;border:1px solid #c5c9cc;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;background:#f7f8f8;transition:background .15s,border-color .15s}.amounts input:checked+span{background:var(--yellow);border:2px solid #24282b}.amounts input:focus-visible+span{outline:3px solid #457ea0;outline-offset:3px}.amounts .custom{grid-column:1/-1}.amounts .custom>span{height:43px;font-size:12px;justify-content:space-between;padding:0 14px}.custom b{font-size:18px;font-weight:400}.hint{min-height:16px;font-size:11px;color:#656c72;margin:12px 0 20px;line-height:1.5}.cta{border:1px solid #e6ab00;background:var(--yellow);color:#171a1c;border-radius:9px;width:100%;padding:17px 18px;display:flex;justify-content:space-between;align-items:center;font-size:14px;font-weight:700;transition:transform .16s,background .16s}.cta>span:last-child{font-size:22px;line-height:14px}.cta:active{transform:scale(.98)}.secure{display:flex;gap:5px;align-items:center;justify-content:center;margin:15px 0 0;font-size:11px;color:#697076}.secure svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.4}.secure strong{color:#444c52}.optional{border-top:1px solid #d7dbde;margin-top:24px;padding-top:19px;font-size:11px;line-height:1.6}.optional strong{font-size:12px}.optional p{margin:6px 0 0;color:#697177}.error{color:#a22626;font-size:12px;line-height:1.5}.impact{border-top:1px solid var(--line);padding:43px 0 48px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.section-heading .eyebrow,.questions .eyebrow{color:#8e979e}.section-heading h2{font-size:25px;margin:0}.impact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:38px}.number{font-size:12px;color:var(--yellow)}h3{font-size:17px;margin:15px 0 10px}.impact p,.questions>div>p{font-size:13px;line-height:1.7;color:#a5adb3;margin:0}.questions{display:grid;grid-template-columns:1fr 1.4fr;gap:70px;padding:43px 0 60px;border-top:1px solid var(--line)}.questions h2{font-size:25px;margin-top:17px}.faq-list details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:14px;font-weight:700;padding:19px 0}summary::-webkit-details-marker{display:none}summary:after{content:'+';color:#a5adb3;font-size:21px;font-weight:400}details[open] summary:after{content:'−'}details p{font-size:13px;line-height:1.8;color:#adb4b8;margin:0 20px 20px 0}footer{display:flex;justify-content:space-between;gap:24px;padding:26px 0 32px;border-top:1px solid var(--line);font-size:11px;color:#9da4a9}.footer-dot{padding:0 8px;color:#555c61}.yellow{color:var(--yellow);margin-left:7px}dialog{color-scheme:light;max-width:440px;width:calc(100% - 32px);border:0;border-radius:16px;background:#f1f2f2;color:#202326;padding:34px;box-shadow:0 24px 100px #0007}dialog::backdrop{background:#090b0ddd;backdrop-filter:blur(5px)}dialog h2{margin-top:22px}dialog>p{font-size:14px;line-height:1.6;color:#646c72}.dialog-close{position:absolute;top:12px;right:13px;background:none;border:0;color:#555;font-size:28px;padding:4px 8px}.preview-checkout{display:flex;gap:16px;border:1px solid #ccd0d3;border-radius:10px;padding:18px;margin:25px 0}.preview-checkout>span{font-size:24px}.preview-checkout strong{font-size:14px}.preview-checkout p{font-size:12px;line-height:1.6;color:#606a70;margin-bottom:0}.dialog-note{font-size:12px!important}.dialog-done{justify-content:center;margin-top:24px}:focus-visible{outline:3px solid #ffc000;outline-offset:5px}.support-card button:focus-visible,dialog button:focus-visible{outline-color:#377aa4}@media(hover:hover) and (pointer:fine){.cta:hover{background:#ffcc32;transform:translateY(-2px)}.amounts label:hover>span{border-color:#272c30}.brand:hover{opacity:.8}}@media(max-width:950px){.page{padding:0 30px}main{gap:35px;padding-top:55px}h1{font-size:46px}.support-card{padding:24px}.impact-grid{gap:25px}.questions{gap:35px}.header-note{display:none}.badge{margin-left:auto}}@media(max-width:680px){.page{padding:0 22px}header{height:90px;gap:10px}.brand{width:59px;height:59px}.badge{font-size:8px;letter-spacing:.5px;padding:7px}main{grid-template-columns:1fr;padding:37px 0 40px;gap:28px}h1{font-size:49px;letter-spacing:-2px;margin-top:21px}.lead{font-size:16px}.description{max-width:440px;font-size:14px}.build-note{display:none}.support-card{padding:25px}.card-description{font-size:13px}.section-heading{display:block}.section-heading h2{margin-top:16px}.impact{padding:34px 0}.impact-grid{grid-template-columns:1fr;gap:26px;margin-top:29px}.impact-grid article{padding-left:36px;position:relative}.number{position:absolute;left:0;top:2px}h3{margin:0 0 7px}.questions{grid-template-columns:1fr;gap:16px;padding:34px 0 40px}footer{flex-direction:column;gap:14px;padding-bottom:calc(25px + env(safe-area-inset-bottom))}dialog{padding:28px}.eyebrow{font-size:9px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}

/* Compact support page, revision 2. */
main{align-items:center;padding:60px 0;gap:85px}.intro h1{margin-top:0}.free-note{color:#d0d4d7;font-size:13px;margin:23px 0 0}.support-card h2{margin-bottom:26px}.support-card{padding:28px}.questions{padding-bottom:40px}@media(max-width:680px){main{padding:35px 0;gap:28px}.intro h1{font-size:46px;margin-bottom:18px}.free-note{margin-top:15px}.support-card{padding:24px}}

/* Full-height page: footer stays below content, at the viewport bottom on short pages. */
html{min-height:100%;background:#191b1d}
body{min-height:100vh;min-height:100dvh;background-repeat:no-repeat;background-size:100% 100%}
.page{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
.page>header,.page>main,.page>.questions,.page>footer{flex-shrink:0}
.page>footer{margin-top:auto}

/* Shared brand palette: yellow primary, Tomasso Builds red secondary. */
:root{--brand-primary:#ffc000;--brand-secondary:#d01012;--yellow:var(--brand-primary)}
.cta{background:var(--brand-primary);border-color:#e6ab00;color:#171a1c}
.amounts input:checked+span{background:var(--brand-primary);color:#171a1c}
@media(hover:hover) and (pointer:fine){.cta:hover{background:#ffcc32;filter:none}}

/* Production contact block and unavailable checkout state. */
.contact-note{font-size:15px;line-height:1.7;color:#f6f6f6;margin:26px 0 0}
.contact-note a{color:#b0b6ba;text-decoration:none;text-underline-offset:4px}
.contact-note a:hover{text-decoration:underline;color:#fff}
.cta:disabled{cursor:not-allowed;opacity:.55;transform:none;filter:none}

/* Match the MOC Step homepage footer typography, border and spacing. */
.legal-footer{flex:none;width:100%;max-width:1440px;margin:24px auto 0;padding:14px 8px 6px;border-top:1px solid #555;color:#aaa;font:12px/1.6 Arial,sans-serif;text-align:center;box-sizing:border-box}
.page>footer.legal-footer{display:block;margin-top:auto;padding-bottom:calc(6px + env(safe-area-inset-bottom,0px))}
.legal-footer .footer-dot{color:inherit}

/* Shared homepage typography: Segoe UI body, Arial display/buttons and legal footer. */
body{font-family:"Segoe UI",Arial,sans-serif}
h1,h2,.eyebrow,.amounts,.cta{font-family:Arial,Helvetica,sans-serif}
