body[data-page=home] .intro{padding:30px 0 25px}body[data-page=home] .intro h1{font-size:clamp(2.2rem,3.8vw,3.6rem)}body[data-page=home] .introcopy{font-size:16px}.snapshot-calculator{grid-template-columns:1.05fr 1fr;align-items:start;overflow:visible}.snapshot-calculator .calcinputs{padding:24px 28px}.snapshot-calculator .calcinputs h2{margin:15px 0 18px;font-size:29px}.snapshot-calculator .segmented{margin-bottom:18px}.snapshot-calculator .measure-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.snapshot-calculator .measure-fields>label:last-child{grid-column:auto}.snapshot-calculator .measure-fields>label:last-child .inputwrap{max-width:none}.snapshot-calculator input:not([type=range]):not([type=checkbox]),.snapshot-calculator select{padding:9px 10px;min-height:44px}.snapshot-calculator .measure-fields label{font-size:13px}.snapshot-calculator #pitch-method-wrap{margin-top:15px}.snapshot-calculator #pitchMethod{margin-top:5px}.snapshot-calculator .pitchlabel{margin-top:12px}.snapshot-calculator input[type=range]{margin-top:5px}.snapshot-calculator .rangeends{display:none}.snapshot-angles{display:grid;grid-template-columns:repeat(6,1fr);gap:7px;margin:6px 0 13px}.snapshot-angles button{min-height:40px;border:1px solid #bdcbbb;border-radius:5px;background:#f5f6f2;color:var(--green);font-size:15px;font-weight:700}.snapshot-angles button[aria-pressed=true]{background:var(--green);color:white;border-color:var(--green)}.snapshot-calculator .snapshot-geometry-help{font-size:12px;margin:10px 0}.snapshot-label{font-size:14px;font-weight:700;margin:12px 0 9px}.native-material{position:absolute!important;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}.snapshot-materials{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.snapshot-materials button{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0;padding:5px 5px 8px;background:white;border:2px solid var(--line);border-radius:6px;color:var(--green);font-weight:700;font-size:14px;position:relative}.snapshot-materials button[aria-pressed=true]{background:#fff2cb;border-color:var(--green)}.snapshot-materials button[aria-pressed=true]:after{content:'✓';position:absolute;right:5px;top:5px;width:23px;height:23px;border-radius:50%;background:var(--green);color:white;text-align:center}.material-thumb{width:100%;height:43px;display:block;overflow:hidden;border-radius:3px}.material-thumb img{width:100%;height:100%;object-fit:cover;display:block}.snapshot-materials button[data-material=plat] img{object-fit:contain;background:#edf0e7}.snapshot-calculator #materialnote{font-size:12px;margin:9px 0 0}.snapshot-calculator #materialnote+p{margin-top:5px;margin-bottom:0}.snapshot-calculator .calcvisual{padding:19px 24px 0;border-radius:0 6px 0 0;min-width:0}.snapshot-calculator .roofdiagram{min-height:0;height:181px;flex:none;margin:0;justify-content:center}.snapshot-calculator .roofdiagram svg{height:100%;width:auto;max-width:100%}.snapshot-calculator .visnumbers{padding-top:10px;gap:15px}.snapshot-calculator .visnumbers strong{font-size:31px;letter-spacing:-1px}.snapshot-calculator .visnumbers strong small{font-size:17px}.snapshot-calculator .visnumbers span{font-size:12px}.snapshot-calculator #geometry-note{font-size:12px;margin:3px 0 10px}.snapshot-calculator .minimetrics{gap:22px;font-size:11px}.snapshot-calculator .minimetrics strong{font-size:16px}.snapshot-calculator .rise-metric{margin-top:10px;padding-top:8px;padding-bottom:12px}.snapshot-calculator .rise-metric span{font-size:13px}.snapshot-calculator .rise-metric strong{font-size:23px}.snapshot-price{background:var(--yellow);color:var(--green);margin:0 -24px;padding:19px 24px 20px;border-top:1px solid #c6a658}.snapshot-price-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.snapshot-price-top a{font-size:12px;white-space:nowrap}.snapshot-total{font-size:clamp(1.5rem,2.65vw,2.4rem);line-height:1.2;display:block;letter-spacing:-1px;margin:11px 0 4px}.snapshot-basis{font-size:12px;margin:0 0 12px}.snapshot-price dl{margin:0;font-size:14px}.snapshot-price dl>div{display:flex;justify-content:space-between;gap:16px;padding:5px 0;border-bottom:1px solid #173b3225}.snapshot-price dd{margin:0;text-align:right;font-weight:700;white-space:nowrap}.snapshot-reserve{display:flex;justify-content:space-between;gap:12px;font-size:12px;margin-top:11px}.snapshot-reserve strong{white-space:nowrap}.snapshot-warning{font-size:13px;font-weight:700;background:#fff4d6;padding:9px 12px;border-left:3px solid #934119;margin:12px 0}.snapshot-rate-editor{margin:12px 0}.snapshot-rate-editor summary{cursor:pointer;font-size:13px;font-weight:700}.snapshot-rate-editor p{font-size:13px;margin:10px 0}.snapshot-rate-fields,.snapshot-manual{display:grid;grid-template-columns:1fr 1fr;gap:12px}.snapshot-rate-fields label,.snapshot-manual label{font-size:12px}.snapshot-rate-fields input,.snapshot-manual input{font-size:17px!important;padding-right:10px!important}.snapshot-rate-editor a{font-size:12px;display:block;margin-top:12px}.snapshot-manual button{grid-column:1/-1;padding:10px;background:var(--green);color:white;border-radius:4px;font-size:13px}.snapshot-offer{width:100%;padding:10px 15px;min-height:44px;margin-top:2px}.snapshot-extras{grid-column:1/-1;border-top:1px solid var(--line);background:#fff;border-radius:0 0 6px 6px}.snapshot-extras>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:19px 28px;cursor:pointer;list-style:none;font-size:16px;font-weight:700}.snapshot-extras>summary:before{content:'+';width:24px;flex:0 0 24px;font-size:27px;color:var(--orange)}.snapshot-extras[open]>summary:before{content:'−'}.snapshot-extras>summary>span{margin-right:auto}.snapshot-extras>summary strong{font-size:14px;white-space:nowrap}.snapshot-extras-body{padding:0 28px 24px}.snapshot-extras-body>p{font-size:14px;max-width:850px;margin-top:0}#snapshot-extra-rows{display:grid;grid-template-columns:1fr 1fr;gap:12px 22px;margin:18px 0}.snapshot-extra-row{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;padding:14px;border:1px solid var(--line);border-radius:5px;background:var(--paper);align-content:start}.snapshot-extra-row>h3{grid-column:1/-1;font-size:16px;line-height:1.4;margin:0 0 4px}.quick-status-buttons{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.quick-status-buttons button{min-width:0;min-height:44px;padding:8px 5px;border:2px solid #bac7bf;border-radius:5px;background:#fff;color:var(--green);font:inherit;font-size:12px;font-weight:700;line-height:1.3;cursor:pointer}.quick-status-buttons button:hover{border-color:var(--green)}.quick-status-buttons button[aria-pressed=true]{background:var(--green);border-color:var(--green);color:#fff}.quick-status-buttons button:focus-visible{outline:3px solid #a4522a;outline-offset:3px}@media(max-width:1000px){.quick-status-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}}.snapshot-extra-row .quick-price-wrap{font-size:12px}.snapshot-extra-row input{font-size:17px!important;padding-right:10px!important;margin-top:3px}.quick-result{font-size:13px;font-weight:700;align-self:center}.quick-detail{font-size:12px}.snapshot-extras-body>a{font-size:15px;font-weight:700}.snapshot-rate-fields [hidden],.snapshot-manual[hidden],.snapshot-extra-row [hidden],.snapshot-calculator [hidden]{display:none!important}.floating-budget{position:fixed;z-index:45;bottom:22px;right:24px;max-width:calc(100vw - 48px);display:flex;align-items:center;gap:25px;background:var(--yellow);color:var(--green);padding:15px 20px;border:1px solid #ba913a;border-radius:8px;box-shadow:0 8px 35px #0c241d35}.floating-budget[hidden]{display:none}.float-label,.float-basis,.float-warning{display:block;font-size:11px;line-height:1.4}.float-label{font-weight:700;letter-spacing:.4px;text-transform:uppercase}.float-total{display:block;font-size:25px;line-height:1.3;letter-spacing:-.5px}.float-warning{font-weight:700;color:#703817}.float-edit{font-weight:700;font-size:13px;white-space:nowrap;min-height:44px;display:flex;align-items:center}.has-floating-budget{padding-bottom:130px}
@media(min-width:761px) and (max-width:1000px){.snapshot-calculator .calcinputs{padding:20px}.snapshot-calculator .measure-fields{grid-template-columns:1fr 1fr}.snapshot-calculator .measure-fields>label:last-child{grid-column:1/-1}.snapshot-calculator .measure-fields>label:last-child .inputwrap{max-width:48%}.snapshot-materials{gap:5px}.snapshot-materials button{font-size:12px}.snapshot-calculator .calcvisual{padding-left:18px;padding-right:18px}.snapshot-price{margin-left:-18px;margin-right:-18px;padding-left:18px;padding-right:18px}.snapshot-price dl{font-size:12px}.snapshot-total{font-size:27px}}
@media(max-width:760px){body[data-page=home] .intro{padding-top:23px;padding-bottom:20px}body[data-page=home] .intro h1{font-size:35px}body[data-page=home] .introcopy{display:none}.snapshot-calculator{display:flex;flex-direction:column;overflow:hidden}.snapshot-calculator .calcvisual{order:-1;width:100%;padding:14px 18px 0;border-radius:0}.snapshot-calculator .roofdiagram{height:150px}.snapshot-calculator .visualtop{font-size:10px}.snapshot-calculator .visnumbers{grid-template-columns:1fr 1fr}.snapshot-calculator .visnumbers strong{font-size:29px}.snapshot-calculator .minimetrics{display:none}.snapshot-calculator .rise-metric{margin-top:3px;padding-bottom:9px}.snapshot-calculator .rise-metric strong{font-size:21px}.snapshot-price{margin:0 -18px;padding:16px 18px}.snapshot-total{font-size:clamp(1.45rem,6.8vw,2rem)}.snapshot-price-top .tag{font-size:9px}.snapshot-price dl{font-size:13px}.snapshot-price dd{white-space:normal}.snapshot-price-top a{font-size:11px}.snapshot-reserve{font-size:11px}.snapshot-offer{display:none}.snapshot-calculator .calcinputs{width:100%;padding:22px 18px}.snapshot-calculator .measure-fields{grid-template-columns:1fr 1fr;gap:12px}.snapshot-calculator .measure-fields>label:last-child{grid-column:1/-1}.snapshot-calculator .measure-fields>label:last-child .inputwrap{max-width:48%}.snapshot-calculator .calcinputs h2{font-size:26px}.snapshot-calculator .sectionlabel{font-size:10px}.snapshot-calculator .sectionlabel a{font-size:12px}.snapshot-materials button{font-size:12px}.snapshot-angles{gap:5px}.snapshot-angles button{min-height:44px;font-size:14px}.snapshot-extras{width:100%}.snapshot-extras>summary{padding:17px 18px;flex-wrap:wrap;gap:6px 10px;font-size:15px}.snapshot-extras>summary>span{max-width:calc(100% - 35px)}.snapshot-extras>summary>strong{margin-left:34px;font-size:12px}.snapshot-extras-body{padding:0 18px 20px}#snapshot-extra-rows{grid-template-columns:1fr}.snapshot-extra-row{padding:12px}.floating-budget{left:0;right:0;bottom:0;max-width:none;width:100%;border-radius:9px 9px 0 0;padding:11px 16px calc(11px + env(safe-area-inset-bottom));gap:12px;justify-content:space-between}.float-total{font-size:clamp(1.15rem,5.6vw,1.55rem)}.float-edit{font-size:12px;white-space:normal;max-width:70px;line-height:1.3}.float-basis{font-size:10px}.float-label{font-size:9px}.float-warning{font-size:11px}.has-floating-budget{padding-bottom:120px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.floating-budget{display:none!important}.has-floating-budget{padding-bottom:0}}

/* On phones: compact drawing, editable measures, then expanded price details. */
@media(max-width:760px){.snapshot-calculator .calcvisual{display:contents}.snapshot-calculator .visualtop{display:none}.snapshot-calculator .roofdiagram{order:-4;width:100%;height:145px;background:var(--green);padding:8px 12px 0}.snapshot-calculator .visnumbers{order:-3;width:100%;background:var(--green);padding:4px 18px 9px;border-top:0}.snapshot-calculator #geometry-note{display:none}.snapshot-calculator .rise-metric{order:-2;width:100%;background:var(--green);margin:0;padding:7px 18px 11px;border-top:1px solid #ffffff30}.snapshot-calculator .calcinputs{order:1}.snapshot-calculator .snapshot-price{order:2;width:100%;margin:0}.snapshot-calculator .snapshot-extras{order:3}.snapshot-calculator .roofdiagram svg{max-width:100%}}

@media(max-width:760px){.floating-budget.is-editing{padding-top:7px;padding-bottom:7px}.floating-budget.is-editing .float-label,.floating-budget.is-editing .float-basis{display:none}.snapshot-calculator input{scroll-margin-bottom:140px}}

@media(min-width:1001px){body[data-page=home] .intro{padding:22px 0;align-items:center;gap:25px}body[data-page=home] .intro h1{font-size:34px;margin-top:10px}body[data-page=home] .intro h1 br{display:none}body[data-page=home] .intro h1 span{margin-left:.2em}body[data-page=home] .introcopy{font-size:14px;max-width:310px;margin:0}body[data-page=home] .introcopy p{margin:0 0 8px}body[data-page=home] .introline{font-size:11px}.snapshot-price{padding-top:15px;padding-bottom:15px}.snapshot-price dl{font-size:13px}.snapshot-price dl>div{padding:3px 0}.snapshot-total{font-size:34px;margin:8px 0 3px}.snapshot-basis{margin-bottom:7px}.snapshot-rate-editor{margin:8px 0}.snapshot-reserve{margin-top:8px}}

/* Visible user-supplied unit prices. */
.own-rates{padding:14px;margin:14px 0;background:#fff8e5;border:1px solid #bba252;border-radius:6px}.own-rates h3{font-size:17px;margin:0 0 5px}.own-rates p,.own-disclaimer,.own-manual-note{font-size:12px;line-height:1.5;margin:7px 0}.own-rate-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.own-rate-fields label{font-size:12px;line-height:1.4;min-width:0}.own-rate-fields input{width:100%;min-width:0;margin-top:5px;padding:9px 8px!important;font-size:17px!important}.own-rate-fields input::placeholder{font-size:12px;color:#626b63}.own-scope{display:grid;grid-template-columns:1fr 1fr;gap:8px}.own-scope button{min-height:44px;padding:8px;border:2px solid #849c88;border-radius:4px;background:#fff;color:var(--green);font:inherit;font-size:12px;font-weight:700;cursor:pointer}.own-scope button[aria-pressed=true]{background:var(--green);color:#fff}.own-reset{min-height:44px;background:transparent;color:var(--green);font-size:12px;text-decoration:underline;padding:5px 0}.own-scope button:focus-visible,.own-reset:focus-visible{outline:3px solid #a4522a;outline-offset:2px}.own-rates .own-question{font-weight:700;margin-top:12px}#own-rate-status.pending{padding:8px;border-left:3px solid #a4522a;background:#fff0bd}.own-disclaimer{font-weight:700}.snapshot-price-top{flex-wrap:wrap}.snapshot-calculator input:disabled{opacity:.65}@media(max-width:420px){.own-rate-fields{gap:8px}.own-rate-fields label{font-size:11px}.own-rates{padding:10px}}

.material-preset-heading,.material-preset-note{font-size:12px;line-height:1.5;margin:6px 0 10px}.material-preset-note{margin-top:10px}.material-preset{display:flex;flex-direction:column;width:100%;gap:2px;border-top:1px solid #173b3230;padding-top:7px;margin-top:2px}.material-preset>span{font-size:10px;font-weight:400;line-height:1.3}.material-preset>strong{font-size:13px;font-weight:700;line-height:1.4;white-space:nowrap}.material-preset>strong+span{margin-top:3px}@media(max-width:760px){.material-preset>strong{font-size:12px}.material-preset-heading,.material-preset-note{font-size:11px}}

/* Review 1.4: space for the dock, no overlay on tools, reachable budget summary. */
.floating-budget{left:0;right:0;bottom:0;max-width:none;width:100%;border-radius:0;padding:8px max(18px,calc((100vw - 1280px)/2)) calc(8px + env(safe-area-inset-bottom));gap:20px;box-shadow:0 -2px 12px #173b3215}
.floating-budget>div{display:flex;align-items:center;flex-wrap:wrap;gap:2px 16px;flex:1;min-width:0}.float-total{font-size:21px}.float-basis{font-size:11px}.float-warning:empty{display:none}.float-close{flex:none;min-width:44px;min-height:44px;font-size:27px;background:transparent;color:var(--green);border:1px solid #173b3260;border-radius:5px;cursor:pointer}.has-floating-budget{padding-bottom:100px;scroll-padding-bottom:110px}
.planning-summary{position:static}.budget-mode{margin:22px 0}.budget-mode h2{font-size:24px}.budget-mode-buttons{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.budget-mode-buttons button{padding:11px 16px;border:2px solid var(--green);border-radius:5px;background:white;color:var(--green);font:inherit;font-weight:700;min-height:44px;cursor:pointer}.budget-mode-buttons [aria-pressed=true]{background:var(--green);color:white}#budgetDetails{border:0;padding:0;margin:0;min-width:0}#budgetDetails:disabled{opacity:.6}.snapshot-extra-row button:disabled{opacity:.6;cursor:default}.step-nav{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.step-nav a{display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 11px;text-decoration:none;border:1px solid var(--line);border-radius:5px;font-size:14px}.step-nav a[aria-current=step]{background:var(--green);color:white}.step-nav b{font-size:12px}.step-nav a:hover{border-color:var(--green)}.guidegroup{margin-top:32px}.guidegroup>h2{font-size:27px}.guide-card h2{font-size:24px}
@media(max-width:900px){#budgetDetails{display:contents}.planning-summary{grid-row:auto}.planning-base{grid-row:auto}#budgetEditor{grid-row:auto}}
@media(max-width:760px){.floating-budget{padding:7px 12px calc(7px + env(safe-area-inset-bottom));gap:8px}.floating-budget>div{display:block}.float-label{font-size:9px}.float-total{font-size:18px}.float-basis{font-size:10px}.float-edit{font-size:11px;max-width:60px}.float-close{min-width:40px}.has-floating-budget{padding-bottom:140px}.step-nav{display:grid;grid-template-columns:1fr 1fr;gap:6px}.step-nav a{font-size:12px;padding:8px}.introcopy{display:block!important}.introline{display:none}.snapshot-offer{display:flex}}

.guidecard h2{font-size:24px;line-height:1.2}
.step-nav{position:static;inset:auto;width:auto;padding:0;background:transparent;border-bottom:0;box-shadow:none;z-index:auto;align-items:stretch}
@media print{.step-nav,.budget-mode,.floating-budget{display:none!important}}
@media(max-width:600px){.quotegrid{grid-template-columns:minmax(0,1fr)}.quotegrid>label{min-width:0}.quotegrid input,.quotegrid select,.quotegrid textarea{min-width:0;max-width:100%;width:100%}}
