/* ---- package builder (sprntr.dev/build) and quote page ---- */
body.builderPage{background:#e9e9e4;color:#10110f}
.builderPage footer{background:var(--black)}
.builder{max-width:1360px;margin:0 auto;padding:150px clamp(22px,4vw,72px) 120px}
.builderHead h1{margin:28px 0 0;font-size:clamp(56px,7vw,112px);line-height:.95;letter-spacing:-.045em;font-weight:500}
.builderHead>p:not(.kicker){max-width:560px;margin:28px 0 0;font-size:18px;line-height:1.55;color:#4a4b47}
.buildSteps{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:56px 0 22px;padding:0;scroll-margin-top:20px}
.buildSteps li{display:flex;align-items:center;gap:10px;padding:10px 18px 10px 10px;border-radius:99px;background:#fff;font:600 14px Inter;color:#8a8b87;cursor:pointer;transition:background .2s,color .2s}
.buildSteps li span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#f0f0ec;font:500 11px DM Mono}
.buildSteps li[aria-current]{background:#10110f;color:#fff}.buildSteps li[aria-current] span{background:var(--acid);color:#10110f}
.buildSteps li.done{color:#10110f}.buildSteps li.done span{background:#e9f9c7;color:#3a5208}
.builderGrid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:22px;align-items:start}
.builderMain{min-width:0}
.panel{display:flex;flex-direction:column;gap:14px}.panel[hidden]{display:none}
.card{background:#fff;border:0;border-radius:26px;padding:26px 28px;margin:0;min-width:0}
.card legend{float:left;width:100%;padding:0;margin:0 0 16px;font:600 18px Inter;letter-spacing:-.01em}
.card legend+*{clear:both}
.card legend small,.builder label small{font-weight:400;color:#8a8b87;font-size:13px}
.builder .form-row+.form-row{margin-top:14px}
.builder .card label:not(.addon){display:flex;flex-direction:column;gap:7px;font:600 13px Inter}
.builder input:not([type=radio]):not([type=checkbox]),.builder textarea{font:400 15px Inter;color:#10110f;border:1px solid #d5d6d0;border-radius:12px;padding:12px 14px;background:#fff;width:100%}
.builder textarea{resize:vertical}
.builder input:focus-visible,.builder textarea:focus-visible{outline:2px solid #10110f;outline-offset:1px}
.builder .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chips label{display:block!important;position:relative}
.chips input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.chips span{display:flex;flex-direction:column;gap:2px;padding:12px 18px;border:1px solid #d5d6d0;border-radius:16px;font:600 14px Inter;cursor:pointer;transition:border-color .15s,background .15s,color .15s}
.chips span small{font:400 12.5px Inter;color:#8a8b87}
.chips label:hover span{border-color:#10110f}
.chips input:checked+span{background:#10110f;border-color:#10110f;color:#fff}.chips input:checked+span small{color:#b9bab4}
.chips input:focus-visible+span{outline:2px solid #10110f;outline-offset:2px}
.panelNav{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:6px}
.panelNav .pill-acid{margin:0 0 0 auto;align-self:auto}
.textBtn{background:none;border:0;font:600 15px Inter;color:#10110f;cursor:pointer;padding:10px 0}
.textBtn:hover{text-decoration:underline}
.formStatus{margin:0;font-size:14px;line-height:1.5}
.formStatus[data-kind=error]{color:#b42318}.formStatus[data-kind=ok]{color:#3a5208;font-weight:600}
.payCol{display:flex;flex-direction:column;align-items:flex-end;gap:8px;margin-left:auto}.payCol small{color:#6a6b67;font-size:12.5px}
.tiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.tier{position:relative;background:#fff;border-radius:26px;padding:24px;cursor:pointer;display:flex;flex-direction:column;box-shadow:inset 0 0 0 1px transparent;transition:box-shadow .15s,transform .15s}
.tier:hover{box-shadow:inset 0 0 0 1px #10110f}
.tier:has(input:checked){box-shadow:inset 0 0 0 2px #10110f}
.tier input{position:absolute;opacity:0;pointer-events:none}
.tier:has(input:focus-visible){outline:2px solid #10110f;outline-offset:3px}
.tierTop{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:24px}
.tierName{font:500 11px DM Mono;text-transform:uppercase;letter-spacing:.06em}
.tier .fit{font:500 9.5px DM Mono;letter-spacing:.08em;text-transform:uppercase;font-style:normal;padding:4px 8px;border-radius:99px;background:#e9f9c7;color:#3a5208;white-space:nowrap}
.tierPrice{display:block;margin-top:18px;font-size:40px;letter-spacing:-.04em;font-weight:600}
.tierOnce{color:#8a8b87;font-size:13px}
.tier ul{list-style:none;margin:20px 0 0;padding:18px 0 0;border-top:1px solid #ecece8;display:flex;flex-direction:column;gap:9px;font-size:13.5px;line-height:1.45;color:#3d3e3a}
.tier li{padding-left:20px;position:relative}
.tier li:before{content:'✓';position:absolute;left:0;color:#3a5208;font-weight:700}
.tier li.plus{font-weight:600;color:#10110f}.tier li.plus:before{content:'+'}
.tier .soon{display:inline-block;margin-left:4px;font:500 9px DM Mono;letter-spacing:.06em;text-transform:uppercase;font-style:normal;padding:3px 6px;border-radius:99px;background:#f0f0ec;color:#6a6b67;border:1px dashed #b9bab4;vertical-align:1px}
.tier:has(input:checked) .tierPrice:after{content:'Selected';margin-left:10px;vertical-align:middle;font:600 10px DM Mono;letter-spacing:.06em;text-transform:uppercase;background:var(--acid);color:#10110f;padding:4px 8px;border-radius:99px}
.addons{display:flex;flex-direction:column}
.addon{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0;border-top:1px solid #ecece8;cursor:pointer}
.addons legend+.addon{border-top:0;padding-top:4px}
.addon b{display:block;font-size:15px}.addon small{display:block;margin-top:3px}
.stepper{display:flex;align-items:center;border:1px solid #d5d6d0;border-radius:99px;flex-shrink:0}
.stepper button{width:40px;height:40px;border:0;background:none;font:500 20px Inter;cursor:pointer;border-radius:50%;color:#10110f}
.stepper button:hover{background:#f0f0ec}
.stepper output{min-width:28px;text-align:center;font:600 15px Inter}
.switch{appearance:none;flex-shrink:0;width:48px;height:28px;border-radius:99px;background:#d5d6d0;position:relative;cursor:pointer;transition:background .2s;margin:0}
.switch:before{content:'';position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:transform .2s;box-shadow:0 1px 3px rgba(0,0,0,.2)}
.switch:checked{background:#10110f}.switch:checked:before{transform:translateX(20px);background:var(--acid)}
.switch:focus-visible{outline:2px solid #10110f;outline-offset:2px}
.summary{position:sticky;top:24px;background:#10110f;color:#f1f1ed;border-radius:26px;padding:26px}
.summary .kicker{color:#8a8b87;margin:0 0 18px}
.lines{display:flex;flex-direction:column}
.lines div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid rgba(127,127,120,.25);font-size:14px}
.lines b{font-weight:600;white-space:nowrap}
.lines .total{border-bottom:0;padding-top:16px;font-size:18px;font-weight:700}
.sumTotal{display:flex;justify-content:space-between;align-items:baseline;margin-top:22px}
.sumTotal span{font:500 11px DM Mono;text-transform:uppercase;letter-spacing:.06em;color:#8a8b87}
.sumTotal strong{font-size:44px;letter-spacing:-.04em;font-weight:600;color:var(--acid)}
.sumDeposit{margin:8px 0 0;font-size:13.5px;color:#cfcfca;text-align:right}
.sumNote{margin:22px 0 0;padding-top:16px;border-top:1px solid rgba(127,127,120,.25);font-size:12.5px;color:#8a8b87}
.summaryBar{display:none}
.review h2{margin:10px 0 4px;font-size:30px;font-weight:500;letter-spacing:-.03em}
.review .muted{margin:0 0 18px;color:#6a6b67;font-size:14px}
.review .kicker{margin:0;color:#8a8b87}
.review .lines div{border-color:#ecece8}
.payPlan{list-style:none;padding:0;margin:22px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.payPlan li{background:#f4f4f0;border-radius:18px;padding:16px 18px;display:flex;flex-direction:column;gap:2px}
.payPlan li:first-child{background:#e9f9c7}
.payPlan b{font:500 11px DM Mono;text-transform:uppercase;letter-spacing:.06em}
.payPlan span{font-size:13px;color:#5a5b57}
.payPlan strong{font-size:26px;letter-spacing:-.03em;margin-top:6px}
.how{margin:22px 0 0;padding-left:20px;display:flex;flex-direction:column;gap:6px;font-size:14px;line-height:1.5;color:#4a4b47}
@media(max-width:1100px){.tiers{grid-template-columns:1fr}.tier ul{display:grid;grid-template-columns:1fr 1fr;gap:9px 20px}}
@media(max-width:900px){
  .builderGrid{grid-template-columns:1fr}
  .summary{position:static;order:-1;display:none}
  .summaryBar{display:flex;position:fixed;left:12px;right:12px;bottom:12px;z-index:30;justify-content:space-between;align-items:center;background:#10110f;color:#fff;border-radius:99px;padding:12px 22px;box-shadow:0 10px 30px rgba(0,0,0,.25)}
  .summaryBar span{font:500 11px DM Mono;text-transform:uppercase;letter-spacing:.06em;color:#8a8b87}
  .summaryBar strong{font-size:20px;color:var(--acid)}
  .builder{padding-bottom:110px}
}
@media(max-width:600px){
  .builder{padding:110px 16px 110px}
  .card{border-radius:20px;padding:20px 18px}
  .builder .form-row{grid-template-columns:1fr}
  .tier{border-radius:20px;padding:20px}.tier ul{grid-template-columns:1fr}
  .chips span{padding:10px 14px}
  .buildSteps{flex-wrap:nowrap;gap:6px}.buildSteps li{padding:8px 12px 8px 8px;font-size:12.5px;gap:7px;white-space:nowrap}.buildSteps li span{width:22px;height:22px;font-size:10px}
  .payPlan{grid-template-columns:1fr}
  .panelNav .pill-acid,.payCol{width:100%;margin:0}.panelNav .pill-acid{justify-content:center}.payCol{align-items:stretch;text-align:center}
}
/* quote page */
.quoteWrap{max-width:760px}
.quoteTrack{list-style:none;padding:0;margin:26px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.quoteTrack li{font:500 10.5px DM Mono;text-transform:uppercase;letter-spacing:.05em;color:#8a8b87;padding-top:12px;border-top:3px solid #dcdcd6}
.quoteTrack li.done{color:#10110f;border-color:#10110f}
.quoteTrack li.now{color:#3a5208;border-color:var(--acid)}
.quoteBanner{margin:0 0 14px;padding:14px 18px;border-radius:16px;font-weight:600;font-size:14.5px}
.quoteBanner[data-kind=ok]{background:#e9f9c7;color:#3a5208}.quoteBanner[data-kind=error]{background:#fde8e6;color:#b42318}
.paidTag{font:500 10px DM Mono;letter-spacing:.06em;text-transform:uppercase;background:#10110f;color:var(--acid);padding:3px 8px;border-radius:99px;margin-left:8px;vertical-align:2px}
@media(max-width:600px){.quoteTrack{grid-template-columns:1fr 1fr;row-gap:14px}}
.builderPage [hidden]{display:none!important}
.quoteWrap .builderHead{margin-bottom:30px}
.quoteHelp{margin:22px 0 0;font-size:14px;line-height:1.55;color:#4a4b47}.quoteHelp a{text-decoration:underline}
.switch:disabled{opacity:.55;cursor:not-allowed}
.domainAddon{flex-wrap:wrap;cursor:default}.domainAddon>div:first-child{flex:1 1 180px}
.domainChoice{flex:0 1 auto;justify-content:flex-end}.domainChoice span{padding:9px 13px!important;font-size:13px!important}.domainChoice span small{font-size:11.5px!important}
.domainWant{flex-basis:100%;display:grid!important;gap:6px;font:600 13px Inter}.domainWant[hidden]{display:none!important}.domainWant small{font:400 12px Inter;color:#8a8b87;margin-left:4px}
.domainWant input{border:1px solid #d5d6d0;border-radius:12px;padding:12px 14px;font:15px Inter;background:#fff}
@media(max-width:700px){.domainChoice{justify-content:flex-start}}
.domainWant span small{display:inline!important;margin:0 0 0 6px!important}
