.builder-main{max-width:1560px;margin:auto;padding:55px var(--gutter) 90px}
.builder-intro{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:48px}
.builder-intro h1{font-size:clamp(58px,6vw,94px);text-transform:uppercase;line-height:.98;margin:0 0 25px;font-weight:700}
.builder-intro h1 em{font-style:normal;color:#a5a9ac}
.builder-intro>div>p:last-child{font-size:17px;line-height:1.8;max-width:640px;color:#c0c7cb}
.builder-intro-note{font-size:14px;line-height:1.8;color:#c0c7cb;flex-shrink:0;border-left:2px solid #ec3942;padding-left:20px}
.builder-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:30px;align-items:start}
.builder-panel{background:#101619;border:1px solid #ffffff20;border-radius:5px;padding:34px;scroll-margin-top:120px;min-width:0}
.builder-progress{display:grid;grid-template-columns:1fr auto;gap:12px;margin-bottom:34px;color:#cbd0d3;font-size:13px}
.builder-progress progress{grid-column:1/-1;appearance:none;width:100%;height:5px;border:0;border-radius:4px;overflow:hidden;background:#ffffff1a;accent-color:#ec3942}
.builder-progress progress::-webkit-progress-bar{background:#ffffff1a}
.builder-progress progress::-webkit-progress-value{background:#ec3942}
.builder-progress progress::-moz-progress-bar{background:#ec3942}
#builder-stage h2{font-size:clamp(34px,3.4vw,49px);line-height:1.12;text-transform:none;margin:0 0 18px;outline:none}
#builder-stage h2 em{color:#aeb8bd;font-style:normal}
.builder-lead{font-size:16px;color:#c0c7cb;line-height:1.8;margin:0 0 28px}
.builder-options{border:0;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;min-width:0}
.builder-option{position:relative;display:flex;flex-direction:column;background:#1c2428;border:2px solid #ffffff1c;border-radius:4px;overflow:hidden;cursor:pointer}
.builder-option:hover{border-color:#a4afb5}
.builder-option:has(input:checked){border-color:#ff5963;background:#302125}
.builder-option:has(input:focus-visible){outline:3px solid #fff;outline-offset:3px}
.builder-option input{position:absolute;top:15px;left:15px;width:23px;height:23px;accent-color:#dc2833;z-index:1}
.builder-option img{width:100%;height:150px;object-fit:cover}
.builder-option-copy{padding:19px;display:flex;flex-direction:column;gap:10px}
.builder-option-copy strong{font-size:17px;line-height:1.4;color:#fff}
.builder-option-copy>span{font-size:14px;line-height:1.7;color:#c0c7cb}
.builder-check{position:absolute;right:12px;top:12px;background:#d52833;border-radius:50%;width:30px;height:30px;text-align:center;line-height:30px;display:none}
.builder-option:has(input:checked) .builder-check{display:block}
.builder-unsure{display:flex;gap:12px;align-items:center;padding:22px 0;font-size:15px;cursor:pointer}
.builder-unsure input{width:22px;height:22px;accent-color:#de2832;flex-shrink:0}
.builder-scope{border:0;padding:0;margin:22px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:12px;min-width:0}
.builder-scope legend{font-size:17px;font-weight:600;line-height:1.5;margin-bottom:18px}
.builder-scope label{display:flex;align-items:center;gap:10px;border:1px solid #ffffff30;border-radius:3px;padding:15px;font-size:14px;line-height:1.6;cursor:pointer}
.builder-scope input{accent-color:#de2832;width:18px;height:18px;flex-shrink:0}
.builder-scope label:has(input:checked){background:#302125;border-color:#ff5963}
.builder-controls{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:28px;padding-top:24px;border-top:1px solid #ffffff1c}
.builder-controls #builder-next{margin-left:auto}
.builder-controls button,.builder-handoff .button,.builder-secondary{font-size:15px;min-height:48px}
.builder-secondary{background:transparent;color:#fff;border:1px solid #ffffff55;border-radius:3px;padding:14px 20px;cursor:pointer}
.builder-secondary:hover{background:#ffffff10}
.builder-controls [hidden],.builder-copy-fallback[hidden]{display:none}
.builder-error{font-size:15px;color:#ffa4a9;line-height:1.6;margin:18px 0 0}
.builder-error:empty{display:none}
.builder-aside{background:#080d10;border:1px solid #ffffff1c;border-radius:5px;overflow:hidden;position:sticky;top:120px}
.builder-aside>img{height:210px;width:100%;object-fit:cover}
.builder-aside>div{padding:26px}
.builder-aside h2{font-size:34px;line-height:1.1;margin-bottom:20px}
.builder-aside p:not(.eyebrow){font-size:14px;line-height:1.8;color:#c0c7cb}
.builder-aside .eyebrow{font-size:10px;letter-spacing:1px}
#builder-selections{font-size:14px;line-height:1.7;padding:20px 0;border-block:1px solid #ffffff20;margin:20px 0;color:#e5e8eb}
#builder-selections ul{padding-left:18px;margin:10px 0 0}
#builder-selections li+li{margin-top:8px}
.builder-aside a{font-size:13px;text-decoration:underline;text-underline-offset:4px}
.builder-fields{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.builder-field{display:flex;flex-direction:column;gap:9px;font-size:15px;line-height:1.5}
.builder-field>span{color:#aab7be;font-size:13px}
.builder-field input,.builder-field select,.builder-field textarea{font:inherit;font-size:16px;background:#1b2429;border:1px solid #67737a;border-radius:3px;color:#fff;padding:13px;width:100%;min-height:48px}
.builder-field input::placeholder,.builder-field textarea::placeholder{color:#aab7be}
.builder-field textarea{resize:vertical}
.builder-field-wide{grid-column:1/-1}
.builder-summary article{border:1px solid #ffffff25;background:#1b2429;border-left:3px solid #de2832;padding:22px;margin:0 0 16px}
.builder-summary article>div{display:flex;align-items:baseline;justify-content:space-between;gap:18px}
.builder-summary h3,.builder-handoff h3{font-size:29px;margin:0 0 12px}
.builder-summary p,.builder-plan-details p{font-size:16px;line-height:1.8;margin:0 0 12px}
.builder-summary article>span{color:#b9c3c9;font-size:14px}
.builder-edit{font:inherit;font-size:14px;background:transparent;border:0;padding:8px 0;color:#ff929a;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.builder-plan-details{padding:18px 0}
.builder-notes{white-space:pre-wrap;overflow-wrap:anywhere}
.builder-handoff{background:#2c1c20;border:1px solid #8d4148;padding:26px;margin:20px 0}
.builder-handoff p{font-size:16px;line-height:1.8;color:#d2d7da}
.builder-handoff-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:24px}
.builder-handoff .builder-handoff-note,.builder-copy-status{font-size:13px;margin:18px 0 0}
.builder-copy-status:empty{display:none}
.builder-copy-fallback{margin-top:20px}
.builder-cost-guide{margin-top:26px;padding:22px;background:#14232a;border-left:3px solid #ee4b57}
.builder-cost-guide h3{font-size:27px;margin:0 0 16px}
.builder-cost-guide ul{padding-left:20px;font-size:15px;line-height:1.8;color:#e0e6e9}
.builder-cost-guide p,.builder-budget-note{font-size:14px;line-height:1.8;color:#bfcbd1}
@media(max-width:1100px){.builder-layout{grid-template-columns:minmax(0,1fr) 250px;gap:22px}.builder-panel{padding:24px}.builder-intro-note{display:none}.builder-aside>div{padding:20px}.builder-option-copy{padding:16px}.builder-option img{height:130px}}
@media(max-width:900px){.builder-layout{grid-template-columns:1fr}.builder-aside{position:static;display:grid;grid-template-columns:1fr 1fr}.builder-aside>img{height:100%;min-height:250px}.builder-main{padding-top:35px}.builder-intro{margin-bottom:30px}}
@media(max-width:600px){.builder-main{padding:30px 18px 55px}.builder-panel{padding:22px 18px;scroll-margin-top:95px}.builder-options{grid-template-columns:1fr}.builder-option{display:grid;grid-template-columns:105px minmax(0,1fr)}.builder-option img{height:100%;min-height:155px}.builder-option-copy>span{font-size:13px}.builder-option-copy strong{font-size:16px}.builder-check{display:none!important}.builder-scope,.builder-fields{grid-template-columns:1fr}.builder-aside{display:block}.builder-aside>img{height:200px;min-height:0}.builder-controls .button{padding:15px}.builder-secondary{padding:13px 16px}.builder-handoff{padding:20px}.builder-handoff-actions{flex-direction:column}.builder-handoff .button{padding:16px 12px}.builder-intro h1{font-size:60px}}
