.reserved-hero { padding-bottom:58px; }
.reserved-hero-note { color:#68705f; font-size:12px; margin:20px 0 0; }
.reserved-pricing { scroll-margin-top:24px; }
.reserved-reference-head { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:18px 0; border-top:1px solid #bfc8b7; color:#64705b; font-size:11px; line-height:1.6; }
.reserved-reference-head p { margin:0; text-align:right; }
.reserved-live-label { display:flex; align-items:center; gap:10px; color:#364330; font-size:10px; letter-spacing:.06em; flex-shrink:0; }
.reserved-live-label::before { content:''; width:6px; height:6px; background:#788b65; border-radius:50%; }
.reserved-live-label span { padding-left:10px; border-left:1px solid #bfc8b7; letter-spacing:0; color:#64705b; }
.reserved-estimator { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); border:1px solid #b9c4af; border-radius:6px; overflow:hidden; }
.reserved-inputs { padding:30px; min-width:0; background:#f4f5ee; }
.reserved-control-heading { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:18px; font-size:11px; color:#64705b; }
.reserved-step { font-size:10px; letter-spacing:.07em; color:#637058; }
.reserved-families { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-bottom:22px; }
.reserved-family { display:flex; flex-direction:column; align-items:flex-start; gap:7px; padding:17px 13px; border:1px solid #b9c4af; border-radius:4px; color:#263027; background:#f9faf5; text-align:left; font:inherit; cursor:pointer; transition:background .15s,border-color .15s; }
.reserved-family:hover { background:#e8eedd; border-color:#7b8c69; }
.reserved-family[aria-pressed=true] { color:#f7f8f0; border-color:#263027; background:#263027; box-shadow:inset 0 -2px #d3e7b5; }
.reserved-family-name { font-size:24px; line-height:1; letter-spacing:-.045em; }
.reserved-family-models { font-size:10px; opacity:.78; }
.reserved-family-price { margin-top:7px; font-size:10px; opacity:.85; }
.reserved-family-price strong { font-weight:500; font-variant-numeric:tabular-nums; }
.reserved-model-picker { min-width:0; }
.reserved-model-picker>.reserved-step { display:none; }
.reserved-rates { display:grid; gap:0; border-top:1px solid #c9d1c1; }
.reserved-rate { position:relative; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:5px 12px; padding:12px 14px 12px 28px; border:0; border-bottom:1px solid #c9d1c1; border-radius:0; background:transparent; color:#364330; font:13px var(--font-sans); text-align:left; cursor:pointer; }
.reserved-rate::before { content:''; position:absolute; left:10px; top:16px; width:7px; height:7px; border:1px solid #9eab91; border-radius:50%; }
.reserved-rate[hidden] { display:none; }
.reserved-rate:hover { background:#e8eedd; }
.reserved-rate[aria-pressed=true] { background:#e3ead9; color:#263027; }
.reserved-rate[aria-pressed=true]::before { background:#425c33; border-color:#425c33; box-shadow:0 0 0 3px #425c3314; }
.reserved-rate strong { font-weight:500; font-variant-numeric:tabular-nums; }
.reserved-rate small { grid-column:1/-1; font-size:10px; color:#65725a; }
.reserved-model-unit { display:block; margin-top:9px; font-size:10px; color:#64705b; }
.reserved-sizing-heading { margin:29px 0 18px; }
.reserved-inputs label { display:block; margin:0 0 8px; font-size:12px; color:#3f4838; }
.reserved-inputs input,.reserved-inputs select { width:100%; min-width:0; min-height:46px; padding:11px 12px; border:1px solid #acb89f; border-radius:3px; background:#fffefb; color:#263027; font:inherit; }
.reserved-inputs p { margin:9px 0 16px; color:#64705b; font-size:11px; line-height:1.6; }
.reserved-node-presets { display:flex; gap:7px; flex-wrap:wrap; margin:0 0 22px; }
.reserved-node-presets button { padding:7px 12px; border:1px solid #bec8b5; border-radius:3px; background:transparent; color:#4b5841; font:11px var(--font-sans); cursor:pointer; }
.reserved-node-presets button:hover,.reserved-node-presets button[aria-pressed=true] { background:#e0e9d4; border-color:#7c9068; }
.reserved-term { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.reserved-inputs .reserved-input-error { color:#a63820; }
.reserved-term-comparison { padding-top:4px; }
.reserved-term-comparison>p { display:flex; justify-content:space-between; gap:10px; color:#3f4838; }
.reserved-term-comparison>p span { color:#64705b; font-size:10px; }
.reserved-term-comparison>div { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; }
.reserved-term-comparison button { display:grid; gap:9px; padding:12px 8px; border:1px solid #bcc6b1; border-radius:3px; background:transparent; font:10px var(--font-sans); color:#536046; text-align:left; cursor:pointer; }
.reserved-term-comparison button small { font-size:9px; color:#64705b; }
.reserved-term-comparison button strong { font-size:14px; font-weight:500; color:#293624; font-variant-numeric:tabular-nums; }
.reserved-term-comparison button:hover,.reserved-term-comparison button[aria-pressed=true] { border-color:#6a8058; background:#e3ead9; }
.reserved-estimate-result { min-width:0; padding:32px; color:#f5f5e9; background:radial-gradient(ellipse at 100% 0,#3b4e35 0,transparent 65%),#222d25; }
.reserved-result-top { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:14px; }
.reserved-result-top .reserved-step { color:#b5c2a6; }
#estimate-model { padding:6px 9px; border:1px solid #74826a; border-radius:3px; color:#d1e5b3; font-size:11px; }
.reserved-result-config { margin:0 0 25px; color:#c7d0bd; font-size:12px; line-height:1.6; }
.reserved-result-label { margin:0 0 11px; font-size:11px; color:#c1c9b7; }
.reserved-index { margin:0 0 25px; padding:22px 0; border-block:1px solid #5b6950; font-size:11px; color:#c1c9b7; }
.reserved-index>p { display:flex; align-items:baseline; flex-wrap:wrap; gap:9px; margin:12px 0 15px; }
.reserved-index strong { font-size:clamp(46px,5vw,72px); font-weight:450; letter-spacing:-.055em; line-height:1; color:#def1bd; }
#index-coverage { display:block; font-size:11px; color:#cfddb9; }
.reserved-distribution { position:relative; height:3px; margin:25px 6px 13px; background:#718361; border-radius:3px; }
.reserved-distribution:empty { display:none; }
.reserved-distribution span { position:absolute; top:50%; width:8px; height:8px; transform:translate(-50%,-50%); border:1px solid #d5e9b7; border-radius:50%; background:#253121; }
.reserved-range-row { display:flex; flex-wrap:wrap; justify-content:space-between; gap:6px 12px; }
#index-range { color:#eef1e5; font-variant-numeric:tabular-nums; }
.reserved-budget-grid { display:grid; grid-template-columns:1fr 1fr; gap:15px; }
.reserved-total,.reserved-monthly { margin:0; font-size:clamp(24px,2.5vw,35px); font-weight:450; line-height:1.2; letter-spacing:-.035em; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.reserved-budget-range { margin:16px 0; font-size:10px; line-height:1.7; color:#bac5ae; }
.reserved-breakdown { margin:0 0 20px; padding-top:5px; border-top:1px solid #5b6950; font-size:11px; }
.reserved-breakdown div { display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px 15px; padding-top:12px; }
.reserved-breakdown dt { color:#bac5ae; }
.reserved-breakdown dd { margin:0; font-variant-numeric:tabular-nums; }
.reserved-estimate-basis { color:#c2cbb7; font-size:11px; line-height:1.8; margin:0 0 23px; }
.reserved-quote { width:100%; background:#d3e7b5; color:#253121!important; border-color:#d3e7b5; border-radius:3px; font-size:13px; }
.reserved-quote:hover { background:#e5f3cd; color:#253121; }
.reserved-quote[aria-disabled=true] { opacity:.45; cursor:not-allowed; }
.reserved-email-help { margin:13px 0 10px; color:#c2cbb7; font-size:11px; line-height:1.7; overflow-wrap:anywhere; }
.reserved-copy { border:0; border-bottom:1px solid #98a788; padding:5px 0; background:transparent; color:#d3e7b5; font:11px var(--font-sans); cursor:pointer; }
.reserved-copy-status { display:block; margin-top:10px; font-size:11px; }
.reserved-estimate-result textarea { width:100%; margin-top:12px; min-height:180px; padding:12px; border:1px solid #aeb8a5; background:#fffefb; color:#263027; font:12px/1.6 var(--font-sans); }
.reserved-source { max-width:950px; margin:20px 0 0; color:#64705b; font-size:11px; line-height:1.8; }
.reserved-source { margin-top:9px; }
.reserved-source a { text-underline-offset:3px; }
.reserved-contact { display:flex; justify-content:space-between; align-items:center; gap:50px; }
.reserved-contact p:not(.arm-eyebrow) { max-width:580px; color:#636c5e; font-size:15px; line-height:1.8; }
.reserved-contact .arm-actions { flex-shrink:0; flex-direction:column; align-items:start; margin:0; }
.reserved-capacity-study { padding:0 0 60px; }
.reserved-pricing :is(button,input,select,a,summary):focus-visible { outline:2px solid #cf5937; outline-offset:3px; }
#index-range[hidden],#index-range-label[hidden] { display:none; }
@media(max-width:1000px) { .reserved-inputs,.reserved-estimate-result { padding:24px; } .reserved-family { padding:14px 10px; } .reserved-family-name { font-size:21px; } }
@media(max-width:760px) {
  .reserved-reference-head { align-items:flex-start; flex-direction:column; gap:8px; }
  .reserved-reference-head p { text-align:left; }
  .reserved-estimator { grid-template-columns:1fr; }
  .reserved-inputs,.reserved-estimate-result { padding:22px 18px; }
  .reserved-family { padding:14px 9px; }
  .reserved-family-name { font-size:22px; }
  .reserved-family-models,.reserved-family-price { font-size:9px; }
  .reserved-budget-grid { gap:10px; }
  .reserved-total,.reserved-monthly { font-size:clamp(23px,6.5vw,32px); }
  .reserved-contact { flex-direction:column; align-items:start; gap:20px; }
  .reserved-contact .arm-actions { flex-direction:row; align-items:center; }
}
@media(prefers-reduced-motion:reduce) { .reserved-family { transition:none; } }
