.configurator-page{background:var(--paper-100)}.configurator-page .button-outline{border-color:var(--line-mid)}.configurator-hero{background:var(--ink-900);color:var(--text-light-strong);padding:clamp(64px,9vw,112px) 0 clamp(48px,6vw,72px)}.configurator-hero .eyebrow{color:var(--accent)}.configurator-hero h1{max-width:980px;color:var(--text-light-strong);font-size:clamp(2.4rem,5.2vw,4.8rem);font-weight:var(--heading-weight);letter-spacing:var(--heading-tracking);text-wrap:balance;margin:0;line-height:1.02}.configurator-lede{max-width:760px;color:var(--text-light);margin:24px 0 0;font-size:1.08rem;line-height:1.75}.configurator-price-note{max-width:760px;color:var(--text-light-muted);margin:14px 0 0;font-size:.82rem;line-height:1.6}.configurator-steps-nav{background:var(--paper-50);border-bottom:1px solid var(--line-mid)}.configurator-steps{gap:8px;margin:0;padding:14px 0;list-style:none;display:flex;overflow-x:auto}.configurator-steps button{border-radius:var(--radius-pill);min-height:42px;color:var(--text-mid);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;align-items:center;gap:9px;padding:8px 14px;font-size:.82rem;font-weight:600;display:inline-flex}.configurator-steps button:hover{color:var(--ink-900);background:var(--paper-alt)}.configurator-steps li.is-current button{color:var(--ink-900);background:var(--accent)}.configurator-steps li.is-done button{color:var(--accent-strong)}.configurator-steps button>span{width:24px;height:24px;font-family:var(--font-mono);border:1px solid;border-radius:50%;place-items:center;font-size:.72rem;display:inline-grid}.configurator-section{padding:clamp(32px,5vw,56px) 0 clamp(64px,8vw,96px)}.configurator-layout{gap:28px;display:grid}.configurator-main{min-width:0}.configurator-summary{border:1px solid var(--line-mid);border-radius:var(--radius-panel);background:var(--paper-50);box-shadow:var(--shadow-soft);padding:22px}.configurator-summary h2{letter-spacing:-.03em;margin:0;font-size:1.45rem;line-height:1.15}.configurator-summary-tagline{color:var(--text-mid);margin:6px 0 0;font-size:.84rem;line-height:1.5}.configurator-summary-lines{border-top:1px solid var(--line-mid);border-bottom:1px solid var(--line-mid);margin:16px 0 4px;padding:8px 0}.configurator-summary-line{justify-content:space-between;gap:14px;padding:5px 0;font-size:.82rem;line-height:1.4;display:flex}.configurator-summary-line>span:last-child{flex:none;font-weight:600}.configurator-summary-line.is-included,.configurator-summary-line.is-included>span:last-child{color:var(--text-mid);font-weight:500}.configurator-summary-line.is-care{border-top:1px dashed var(--line-mid);margin-top:6px;padding-top:10px}.configurator-totals{gap:1px;margin:14px 0 0;display:grid}.configurator-totals>div{border-bottom:1px dashed var(--line-mid);justify-content:space-between;gap:14px;padding:7px 0;font-size:.84rem;display:flex}.configurator-totals dt{color:var(--text-mid)}.configurator-totals dd{text-align:right;margin:0;font-weight:600}.configurator-totals>div.is-total{border-top:2px solid var(--ink-900);color:var(--ink-900);border-bottom:0;margin-top:4px;padding:12px 0 8px;font-size:1.05rem;font-weight:700}.configurator-totals>div.is-total dt{color:var(--ink-900);font-weight:700}.configurator-province{gap:5px;margin-top:16px;font-size:.8rem;font-weight:600;display:grid}.configurator-province select{border:1px solid var(--line-mid);border-radius:var(--radius-btn);background:var(--paper-50);width:100%;min-height:40px;color:var(--ink-900);font:inherit;padding:8px 10px;font-weight:500}.configurator-province small{color:var(--text-mid);font-size:.72rem;font-weight:400}.configurator-from-note,.configurator-review-note{border-left:3px solid var(--accent-strong);background:var(--accent-soft);color:var(--ink-700);margin:12px 0 0;padding:10px 12px;font-size:.76rem;line-height:1.55}.configurator-summary-cta{width:100%;margin-top:16px}.configurator-step-title{letter-spacing:-.04em;margin:0 0 20px;font-size:clamp(1.7rem,3vw,2.3rem);line-height:1.1}.configurator-package-grid{gap:14px;display:grid}.configurator-package{border:1px solid var(--line-mid);border-radius:var(--radius-panel);background:var(--paper-50);cursor:pointer;transition:border-color var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out);flex-direction:column;gap:5px;padding:18px;display:flex;position:relative}.configurator-package:hover{border-color:var(--accent-strong);transform:translateY(-2px)}.configurator-package.is-selected{border-color:var(--accent-strong);box-shadow:0 0 0 3px var(--accent-soft)}.configurator-package:has(.configurator-package-input:focus-visible){outline:3px solid var(--accent-strong);outline-offset:3px}.configurator-package-input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.configurator-package-head{flex-wrap:wrap;align-items:center;gap:8px;font-size:1.02rem;display:flex}.configurator-package-price{letter-spacing:-.05em;font-size:2rem;font-weight:700;line-height:1.1}.configurator-package-standard{color:var(--text-mid);font-size:.72rem}.configurator-package-care{color:var(--accent-strong);font-size:.74rem;font-weight:600}.configurator-package-tagline{margin-top:2px;font-size:.88rem;font-weight:600}.configurator-package-best{color:var(--text-mid);font-size:.8rem;line-height:1.5}.configurator-package-includes{color:var(--accent-strong);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;margin-top:8px;font-size:.64rem}.configurator-package-features{gap:4px;margin-top:2px;font-size:.8rem;line-height:1.55;display:grid}.configurator-package-features>span{padding-left:14px;position:relative}.configurator-package-features>span:before{color:var(--accent-strong);content:"·";font-weight:700;position:absolute;left:0}.configurator-badge{border-radius:var(--radius-pill);background:var(--accent);color:var(--ink-900);font-family:var(--font-sans);letter-spacing:.02em;text-transform:uppercase;padding:2px 7px;font-size:.62rem;font-weight:700;display:inline-block}.configurator-badge.is-included{background:var(--accent-soft);color:var(--accent-strong)}.configurator-note{color:var(--text-mid);margin:18px 0 0;font-size:.76rem;line-height:1.6}.configurator-step-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:26px;display:flex}.configurator-step-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:12px;display:flex}.configurator-step-heading .configurator-step-title{margin:0}.configurator-step-tools{color:var(--text-mid);flex-wrap:wrap;align-items:center;gap:12px;font-size:.78rem;display:flex}.configurator-step-tools button{color:var(--accent-strong);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}.configurator-notice{border-left:3px solid var(--accent-strong);background:var(--accent-soft);color:var(--ink-700);margin:0 0 12px;padding:10px 13px;font-size:.78rem;line-height:1.55}.configurator-groups{border-top:1px solid var(--line-mid)}.configurator-group{border-bottom:1px solid var(--line-mid)}.configurator-group-head{width:100%;color:var(--ink-900);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:16px;padding:16px 0;display:flex}.configurator-group-head strong{font-size:1rem;display:block}.configurator-group-head small{color:var(--text-mid);margin-top:3px;font-size:.78rem;line-height:1.5;display:block}.configurator-group-count{color:var(--text-mid);flex:none;font-size:.74rem}.configurator-group-body{padding-bottom:12px}.configurator-module{border-top:1px dashed var(--line-mid);grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:12px;padding:13px 0;display:grid}.configurator-module>input{width:18px;height:18px;accent-color:var(--accent-strong);margin-top:3px}.configurator-module-label{cursor:pointer;flex-direction:column;gap:3px;display:flex}.configurator-module-head{flex-wrap:wrap;align-items:center;gap:7px;font-size:.92rem;display:flex}.configurator-module-summary{color:var(--text-mid);font-size:.79rem;line-height:1.5}.configurator-module-deps{color:var(--accent-strong);font-size:.72rem;line-height:1.45}.configurator-module-price{min-width:84px;color:var(--ink-900);text-align:right;white-space:nowrap;flex-direction:column;align-items:flex-end;gap:2px;font-size:.88rem;font-weight:700;display:flex}.configurator-module-price small{color:var(--text-mid);white-space:normal;font-size:.66rem;font-weight:400}.configurator-module-price .configurator-standard{max-width:100px}.configurator-module.is-included .configurator-module-price>span{color:var(--accent-strong);font-size:.76rem}.configurator-stepper{border:1px solid var(--line-mid);border-radius:var(--radius-pill);align-items:center;gap:6px;margin-top:4px;padding:2px;display:inline-flex}.configurator-stepper button{background:var(--paper-alt);width:26px;height:26px;color:var(--ink-900);font:inherit;cursor:pointer;border:0;border-radius:50%;place-items:center;padding:0;font-size:1rem;display:grid}.configurator-stepper button:disabled{opacity:.35;cursor:default}.configurator-stepper span{text-align:center;min-width:18px;font-size:.78rem}.configurator-care{border-top:1px solid var(--line-mid);margin-top:30px;padding-top:24px}.configurator-care h3{margin:0;font-size:1.2rem}.configurator-care>p{color:var(--text-mid);margin:6px 0 14px;font-size:.78rem;line-height:1.55}.configurator-care-billing{border:1px solid var(--line-mid);border-radius:var(--radius-pill);background:var(--paper-50);gap:4px;margin:0 0 10px;padding:3px;display:inline-flex}.configurator-care-billing button{border-radius:var(--radius-pill);min-height:34px;color:var(--text-mid);font:inherit;cursor:pointer;background:0 0;border:0;padding:6px 12px;font-size:.76rem;font-weight:600}.configurator-care-billing button.is-selected{background:var(--accent);color:var(--ink-900)}.configurator-care-billing-note{line-height:1.5;color:var(--accent-strong)!important;font-size:.76rem!important}.configurator-care-grid{gap:9px;display:grid}.configurator-care-option{border:1px solid var(--line-mid);border-radius:var(--radius-card);background:var(--paper-50);cursor:pointer;flex-wrap:wrap;align-items:flex-start;gap:10px;padding:11px 12px;display:flex}.configurator-care-option.is-disabled{opacity:.55;cursor:default}.configurator-care-minimum{color:var(--text-mid);flex-basis:100%;margin-left:27px;font-size:.68rem;line-height:1.4}.configurator-care-option.is-selected{border-color:var(--accent-strong);box-shadow:0 0 0 2px var(--accent-soft)}.configurator-care-option>input{width:17px;height:17px;accent-color:var(--accent-strong);margin-top:3px}.configurator-care-copy{flex-direction:column;flex:1;gap:2px;display:flex}.configurator-care-copy strong{font-size:.86rem}.configurator-care-copy small{color:var(--text-mid);font-size:.74rem;line-height:1.45}.configurator-care-price{white-space:nowrap;flex:none;font-size:.8rem;font-weight:700}.configurator-care-price small{color:var(--text-mid);white-space:normal;margin-top:2px;font-size:.64rem;font-weight:400;display:block}.configurator-review{border:1px solid var(--line-mid);border-radius:var(--radius-panel);background:var(--paper-50);margin-bottom:20px;padding:18px}.configurator-review h3{margin:0;font-size:1.1rem}.configurator-review-lines{border-top:1px solid var(--line-mid);margin-top:10px}.configurator-review-line{border-bottom:1px dashed var(--line-mid);justify-content:space-between;gap:14px;padding:8px 0;font-size:.8rem;display:flex}.configurator-review-line>span:last-child{flex:none;font-weight:600}.configurator-totals-inline{margin-top:12px}.configurator-form{border:1px solid var(--line-mid);border-radius:var(--radius-panel);background:var(--paper-50);padding:22px}.configurator-form h3{letter-spacing:-.02em;margin:0;font-size:1.35rem}.configurator-form>p{color:var(--text-mid);margin:8px 0 0;font-size:.84rem;line-height:1.6}.configurator-fields{gap:14px;margin:20px 0;display:grid}.configurator-form-total{border-top:1px solid var(--line-mid);border-bottom:1px solid var(--line-mid);color:var(--text-mid);margin:0 0 14px;padding:12px 0;font-size:.86rem}.configurator-form-total strong{color:var(--ink-900);font-size:1.05rem}.configurator-consent{color:var(--ink-700);cursor:pointer;align-items:flex-start;gap:10px;margin:4px 0 14px;font-size:.8rem;line-height:1.55;display:flex}.configurator-consent input{width:18px;height:18px;accent-color:var(--accent-strong);margin-top:2px}.configurator-error{border-radius:var(--radius-card);background:var(--quote-alert-bg);color:var(--quote-alert-ink);margin:12px 0 0;padding:10px 13px;font-size:.8rem;line-height:1.5}.configurator-success{border:1px solid var(--line-mid);border-radius:var(--radius-panel);background:var(--paper-50);max-width:780px;box-shadow:var(--shadow-soft);padding:clamp(22px,4vw,36px)}.configurator-success h2{letter-spacing:-.04em;margin:0;font-size:clamp(1.8rem,3vw,2.4rem)}.configurator-success>p{color:var(--text-mid);margin:12px 0 0;font-size:.92rem;line-height:1.65}.configurator-success h3{margin:24px 0 8px;font-size:1.1rem}.configurator-success-totals{gap:1px;margin:22px 0 0;display:grid}.configurator-success-totals>div{border-bottom:1px dashed var(--line-mid);justify-content:space-between;gap:16px;padding:8px 0;font-size:.84rem;display:flex}.configurator-success-totals dt{color:var(--text-mid)}.configurator-success-totals dd{text-align:right;margin:0;font-weight:700}.configurator-success ol{color:var(--ink-700);margin:0;padding-left:20px;font-size:.86rem;line-height:1.8}.configurator-success .button{margin-top:20px}@media (min-width:620px){.configurator-package-grid,.configurator-care-grid,.configurator-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.configurator-fields .field-full{grid-column:1/-1}}@media (min-width:1000px){.configurator-layout{grid-template-columns:minmax(0,1fr) 380px;align-items:start;gap:40px}.configurator-summary{grid-area:1/2;position:sticky;top:92px}.configurator-main{grid-area:1/1}}@media (max-width:999px){.configurator-summary{order:-1}.configurator-summary-lines,.configurator-summary-tagline{display:none}.configurator-summary h2{font-size:1.2rem}.configurator-module{grid-template-columns:auto minmax(0,1fr)}.configurator-module-price{text-align:left;flex-flow:wrap;grid-column:2;justify-content:flex-start;align-items:baseline;gap:10px}.configurator-module-price .configurator-standard{max-width:none}}@media (prefers-reduced-motion:reduce){.configurator-package{transition:none}}
