.page-hero{padding-block:var(--s16) var(--s12)}@media(min-width:1024px){.page-hero{padding-block:var(--s20) var(--s16)}}.page-hero .eyebrow{display:block;margin-bottom:18px}.page-hero h1{font-size:clamp(2.6rem,5.4vw,4.4rem);max-width:16ch}.page-hero p{margin-top:22px;font-size:clamp(18px,1.6vw,21px);line-height:1.5;max-width:52ch;color:var(--tx-inv-2)}.config{display:grid;grid-template-columns:1fr 372px;gap:48px;align-items:start;padding-bottom:var(--s24)}@media(max-width:980px){.config{grid-template-columns:1fr;gap:0;padding-bottom:140px}}.cstep{margin-bottom:44px}.cstep-h{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-bottom:20px;padding-bottom:14px;border-bottom:2px solid var(--tx)}.cstep-h .cnum{font-family:var(--f-mono);font-weight:800;color:var(--blue);font-size:14px}.cstep-h h2{font-size:1.5rem}.cstep-h .csub{margin-left:auto;color:var(--tx-2);font-size:13px;font-family:var(--f-mono);letter-spacing:.02em}.opts{display:flex;flex-direction:column;gap:12px}.opt{width:100%;text-align:left;font:inherit;color:inherit;display:flex;align-items:center;gap:16px;background:var(--paper-card);border:1.5px solid var(--line);border-radius:var(--r-lg);padding:18px 20px;cursor:pointer;transition:border-color .15s var(--ease),background-color .15s var(--ease)}.opt:hover{border-color:var(--blue-l)}.opt.selected{border-color:var(--blue);background:color-mix(in srgb,var(--blue) 8%,var(--paper-card))}.opt-check{width:22px;height:22px;border-radius:50%;border:1.5px solid var(--line);flex-shrink:0;display:grid;place-items:center;transition:.15s var(--ease)}.opt-check:after{content:"✓";font-size:12px;font-weight:800;color:transparent;line-height:1}.opt.selected .opt-check{background:var(--blue);border-color:var(--blue)}.opt.selected .opt-check:after{color:#fff}.opt-body{flex:1;min-width:0}.opt-title{display:block;font-weight:600;font-size:16px;line-height:1.3}.opt-desc{display:block;color:var(--tx-2);font-size:13.5px;margin-top:5px;line-height:1.4}.opt-right{display:flex;align-items:center;gap:14px;margin-left:auto;flex-shrink:0}.opt-price{font-family:var(--f-mono);font-weight:700;color:var(--blue);font-size:15px;white-space:nowrap}.opt-price.free{color:var(--tx-3)}.int-card{background:var(--paper-card);border:1.5px solid var(--line);border-radius:var(--r-lg);padding:18px 20px}.int-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.opt--chip{width:auto;padding:9px 15px;gap:9px;border-radius:999px;align-items:center}.opt--chip .opt-check{width:18px;height:18px}.opt--chip .opt-check:after{font-size:10px}.opt--chip .opt-title{display:inline;font-size:14px;font-weight:600;line-height:1}.adapt-note{display:flex;align-items:center;gap:9px;font-family:var(--f-mono);font-size:12.5px;color:var(--tx-3);margin:30px 0 6px;padding:12px 16px;background:var(--paper-card);border:1px dashed var(--line);border-radius:var(--r)}.adapt-note b{color:var(--blue);font-weight:700}.recap{position:sticky;top:calc(var(--nav-h) + 24px);background:var(--ink);color:var(--tx-inv);border-radius:var(--r-xl);padding:26px}.recap .rtag{font-family:var(--f-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--tx-inv-2)}.recap .rtotal{font-family:var(--f-mono);font-weight:800;font-size:2.4rem;letter-spacing:-.02em;color:var(--blue-l);margin-top:6px;line-height:1}.recap .rmonthly{font-family:var(--f-mono);font-weight:700;font-size:15px;color:var(--green-l);margin-top:8px}.recap-list{margin:22px 0;max-height:300px;overflow-y:auto;display:flex;flex-direction:column}.recap-row{display:flex;justify-content:space-between;gap:12px;font-size:13.5px;padding:9px 0;border-bottom:1px solid var(--line-inv);color:var(--tx-inv-2)}.recap-row:last-child{border-bottom:0}.recap-row .mono{color:var(--tx-inv);white-space:nowrap}.recap-empty{color:var(--tx-inv-3);font-size:14px;padding:8px 0}.recap .btn{width:100%}.recap .ghost{display:block;text-align:center;margin-top:10px;color:var(--tx-inv-2);font-weight:600;font-size:14px;padding:10px}.recap .ghost:hover{color:var(--blue-l)}.recap .rnote{font-size:12px;color:var(--tx-inv-3);margin-top:14px;text-align:center}.recap-bar{position:fixed;left:0;right:0;bottom:0;z-index:95;background:var(--ink);color:#fff;border-top:1px solid var(--line-inv);display:none;flex-direction:column}@media(max-width:980px){.recap-bar{display:flex}.recap{display:none}}.rb-main{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 20px}.rb-total{font-family:var(--f-mono);font-weight:800;font-size:1.3rem;color:var(--blue-l)}.rb-total small{display:block;font-size:11px;color:var(--tx-inv-2);font-weight:500;font-family:var(--f-sans)}.rb-toggle{background:transparent;border:1px solid var(--line-inv);color:#fff;border-radius:var(--r);padding:8px 12px;font-size:13px;font-weight:600;cursor:pointer}.recap-drawer{display:none;padding:0 20px;border-top:1px solid var(--line-inv);max-height:46vh;overflow-y:auto}.recap-drawer.open{display:block;padding-block:14px}.recap-drawer .recap-row{color:var(--tx-inv-2)}.devis-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:start}@media(max-width:860px){.devis-grid{grid-template-columns:1fr;gap:32px}}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}@media(max-width:520px){.form-grid{grid-template-columns:1fr}}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1 / -1}.field label{font-size:14px;font-weight:600}.field label .opt-q{color:var(--tx-3);font-weight:400}.field input{background:var(--paper-card);border:1.5px solid var(--line);border-radius:var(--r);padding:13px 16px;font-size:16px;color:var(--tx)}.field input::placeholder{color:var(--tx-3)}.field input:focus{border-color:var(--blue);outline:none;box-shadow:0 0 0 3px #2563eb2e}.quote-done{background:#0e9f6e1a;border:1px solid rgba(14,159,110,.4);border-radius:var(--r-lg);padding:32px}.quote-done .qd-tag{font-family:var(--f-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--green);font-weight:700}.quote-done h3{margin:12px 0 10px}.quote-done .qd-total{font-family:var(--f-mono);font-weight:800;font-size:1.6rem;color:var(--blue);margin:8px 0}
