/* The quote opens over the current truck view; fallback stays in document flow. */
html.quote-open,body.quote-open{overflow:hidden;overscroll-behavior:none}
.quote-modal{box-sizing:border-box;width:min(1040px,calc(100% - 64px));max-width:none;max-height:calc(100dvh - 64px);margin:auto;padding:0;border:1px solid #ffffff24;border-radius:20px;color:#edf0f2;background:#0b0e11;box-shadow:0 50px 160px #000b,0 0 0 1px #000,inset 0 1px #ffffff15;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#596168 transparent;opacity:0;transform:perspective(1000px) translateY(36px) rotateX(5deg) scale(.96);transform-origin:50% 70%;transition:opacity .22s ease,transform .48s cubic-bezier(.2,.8,.2,1)}
.quote-modal::backdrop{background:#020304c7;backdrop-filter:blur(12px);opacity:0;transition:opacity .3s ease}
.quote-modal.is-visible{opacity:1;transform:perspective(1000px) translateY(0) rotateX(0) scale(1)}
.quote-modal.is-visible::backdrop{opacity:1}
.quote-modal.is-closing{transition-duration:.2s;pointer-events:none}
.quote-modal #quote{width:100%;padding:0;margin:0;isolation:auto;background:radial-gradient(ellipse at 85% 0%,#e4806710,transparent 45%),linear-gradient(150deg,#15191d,#090c0f 65%)}
#quote .quote-modal-bar{position:sticky;top:0;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:8px 24px 8px 34px;background:#111518f2;border-bottom:1px solid #ffffff12;backdrop-filter:blur(18px)}
#quote .quote-modal-bar>span{display:flex;align-items:center;gap:10px;font-size:9px;font-weight:600;letter-spacing:.11em;color:#d9dfe3}
#quote .quote-modal-bar b{font-weight:400;color:#77858d;margin-left:5px}
#quote .quote-modal-bar i{width:5px;height:5px;border-radius:50%;background:#ee8c73;box-shadow:0 0 13px #ed866680}
#quote .quote-close{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border:1px solid #ffffff24;border-radius:50%;color:#c5cdd3;background:#ffffff04;cursor:pointer;transition:background .2s,transform .2s}
#quote .quote-close:hover{background:#ffffff10;transform:rotate(90deg)}
#quote .quote-close svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5}
.quote-modal #quote .pact-header{padding:30px 38px 24px;margin:0;max-width:none}
.quote-modal #quote .pact-eyebrow{font:500 9px/1.5 'Archivo',sans-serif;letter-spacing:.17em;margin:0 0 12px;padding:0;border:0;background:none;color:#e28c77}
.quote-modal #quote .pact-title{font:600 clamp(48px,5.2vw,72px)/.92 'Barlow Condensed',sans-serif;letter-spacing:-.01em;color:#f0f2f4;margin:0 0 13px;text-shadow:none}
.quote-modal #quote .pact-title span{background:linear-gradient(110deg,#d7b4a7,#9a8078);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-shadow:none}
.quote-modal #quote .pact-intro{font-size:12px;line-height:1.7;max-width:none;color:#9ea8b0}
.quote-modal #quote .pact-content{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:30px;align-items:start;padding:0 38px 32px}
.quote-modal #quote .pact-form{grid-column:1;grid-row:1;width:100%;border:0;padding:0;background:none;box-shadow:none;border-radius:0}
.quote-modal #quote .pact-form::before,.quote-modal #quote .pact-form::after{display:none}
.quote-modal #quote .quote-steps{gap:12px;border:0;margin:0 0 22px;padding:0;counter-reset:step}
.quote-modal #quote .quote-steps li{padding:12px 10px 12px 0;border-top:2px solid #30383e;font-size:9px;color:#82909a;letter-spacing:.05em;transition:border-color .25s,color .25s}
.quote-modal #quote .quote-steps li span{font-size:10px;display:inline;margin-right:7px;color:inherit}
.quote-modal #quote .quote-steps li[aria-current=step]{border-color:#ed967e;color:#f2e1db}
.quote-modal #quote .quote-steps li[data-complete=true]{border-color:#697969;color:#b6c6b8}
.quote-modal #quote .quote-steps li::after{display:none}
.quote-modal #quote .pact-required{font-size:10px;line-height:1.5;margin:0 0 19px;padding:0;border:0;color:#88969f}
.quote-modal #quote .pact-fieldset{margin:0 0 18px;animation:quote-step-enter .3s ease both}
.quote-modal #quote .pact-fieldset>legend{font:500 26px/1.15 'Barlow Condensed',sans-serif;letter-spacing:.01em;margin-bottom:18px;color:#e0e5e9}
.quote-modal #quote .pact-fieldset>legend>span{display:none}
.quote-modal #quote .pact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 16px}
.quote-modal #quote .pact-grid>label{font-size:11px;color:#bdc7ce;font-weight:500}
.quote-modal #quote .pact-form :is(input:not([type=checkbox]),select,textarea){border:1px solid #ffffff22;border-radius:8px;background:#ffffff04;color:#e7edf1;box-shadow:inset 0 1px 4px #0004;font-size:16px;min-height:50px;margin-top:8px;padding:12px}
.quote-modal #quote .pact-form select:disabled{color:#75828d;background:#ffffff02;border-color:#ffffff10}
.quote-modal #quote .pact-form select option{background:#151b20;color:#edf1f5}
.quote-modal #quote .pact-form textarea{min-height:90px}
.quote-modal #quote :is(input,select,textarea,button,a,summary):focus-visible{outline:2px solid #eea28c;outline-offset:3px}
.quote-modal #quote .pact-form :is(input,select,textarea):focus-visible{border-color:#eea28c;background:#1b1b1e}
.quote-modal #quote .pact-hint,.quote-modal #quote .pact-disclaimer{font-size:10px;color:#909da6;line-height:1.65}
.quote-modal #quote .vehicle-feedback{min-height:27px}
.quote-modal #quote .quote-step-actions{margin-top:20px;gap:12px}
.quote-modal #quote .quote-step-actions button,.quote-modal #quote .pact-submit{border-radius:8px;min-height:50px;padding:13px 18px;font-size:12px}
.quote-modal #quote .quote-next,.quote-modal #quote .pact-submit{background:linear-gradient(115deg,#efa38a,#df7a63);border:1px solid #f8b59e;color:#21110c;box-shadow:inset 0 1px #ffffff35,0 7px 25px #e1785512}
.quote-modal #quote .quote-next{min-width:180px}
.quote-modal #quote .quote-next:hover{filter:brightness(1.08)}
.quote-modal #quote .pact-disclaimer{margin:16px 0 0;max-width:470px;font-size:9px}
.quote-modal #quote .pact-summary{grid-column:2;grid-row:1;position:static;width:100%;padding:20px;border:1px solid #ffffff12;border-radius:12px;background:linear-gradient(135deg,#ffffff06,transparent);box-shadow:none}
.quote-modal #quote .pact-summary::before{display:none}
#quote .quote-brief>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:15px;cursor:pointer;min-height:28px;font:500 9px/1.5 'Archivo',sans-serif;letter-spacing:.14em;color:#a0aeb7}
#quote .quote-brief>summary::-webkit-details-marker{display:none}
#quote .quote-brief>summary>span{font-size:19px;transition:transform .2s;color:#e99c85}
#quote .quote-brief[open]>summary>span{transform:rotate(45deg)}
#quote .quote-brief-heading{font:500 31px/1 'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:0;margin:18px 0;color:#dce3e8}
#quote .quote-brief-heading em{font-style:normal;color:#85939d}
.quote-modal #quote .pact-preview{display:grid;grid-template-columns:1fr;gap:0}
.quote-modal #quote .pact-preview-row{display:block;padding:10px 0;border-bottom:1px solid #ffffff0e}
.quote-modal #quote .pact-preview-label{font-size:8px;letter-spacing:.08em;margin-bottom:4px;color:#84939d}
.quote-modal #quote .pact-preview-value{font-size:11px;color:#d5dce1;line-height:1.5}
.quote-modal #quote .pact-summary-bottom{display:block;margin-top:18px;padding-top:16px;border-color:#ffffff14}
.quote-modal #quote .pact-summary-bottom>p:first-child{font-size:10px;color:#929fa8}
.quote-modal #quote .pact-phone{font:500 25px/1.3 'Barlow Condensed',sans-serif;min-height:40px}
.quote-modal #quote .pact-secondary{font-size:10px;margin-top:10px;border-radius:7px;min-height:44px;border-color:#ffffff24;background:#ffffff04}
.quote-modal #quote .pact-tint{border-radius:8px;border-color:#ffffff20;padding:15px;background:#ffffff03}
@keyframes quote-step-enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){
 .quote-modal{width:calc(100% - 24px);max-height:calc(100dvh - 24px);border-radius:16px}
 #quote .quote-modal-bar{padding:7px 16px 7px 22px;min-height:58px}#quote .quote-modal-bar b{display:none}
 .quote-modal #quote .pact-header{padding:24px 24px 22px}.quote-modal #quote .pact-title{font-size:55px}
 .quote-modal #quote .pact-content{display:flex;flex-direction:column;gap:22px;padding:0 24px 28px}
 .quote-modal #quote .pact-summary{padding:14px 18px;order:2}.quote-modal #quote .pact-preview{grid-template-columns:1fr 1fr;column-gap:16px}
 #quote .quote-brief-heading{display:none}.quote-modal #quote .pact-summary-bottom{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.quote-modal #quote .pact-summary-bottom>p:first-child{grid-column:1/-1}.quote-modal #quote .pact-secondary{margin-top:0}.quote-modal #quote .pact-summary-bottom .pact-hint{grid-column:2;font-size:9px}
}
@media(max-width:480px){
 .quote-modal{width:100%;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0;transform:translateY(50px);padding-bottom:env(safe-area-inset-bottom,0px)}
 .quote-modal #quote{min-height:100%}.quote-modal #quote .pact-header{padding:23px 20px 20px}.quote-modal #quote .pact-title{font-size:52px}.quote-modal #quote .pact-eyebrow{font-size:8px}
 .quote-modal #quote .pact-content{padding:0 20px 24px;gap:20px}.quote-modal #quote .pact-grid{gap:16px 12px}.quote-modal #quote .quote-steps{gap:8px;margin-bottom:17px}.quote-modal #quote .quote-steps li{font-size:8px;letter-spacing:0;padding-right:0}.quote-modal #quote .quote-steps li span{margin-right:4px}
 .quote-modal #quote .pact-form[data-step="3"] .pact-grid{grid-template-columns:1fr}.quote-modal #quote .pact-fieldset>legend{font-size:24px}
}
@media(max-width:350px){.quote-modal #quote .pact-grid{grid-template-columns:1fr}.quote-modal #quote .pact-title{font-size:46px}.quote-modal #quote .quote-next{min-width:145px}.quote-modal #quote .pact-summary-bottom{display:block}.quote-modal #quote .pact-secondary{margin-top:12px}}
@media(prefers-reduced-motion:reduce){.quote-modal,.quote-modal::backdrop,#quote .quote-close,#quote .quote-brief>summary>span{transition:none;transform:none}.quote-modal #quote .pact-fieldset{animation:none}}
.motion-paused .quote-modal,.motion-paused .quote-modal::backdrop{transition:none;transform:none}.motion-paused .quote-modal #quote .pact-fieldset{animation:none}

.quote-modal #quote .pact-fieldset>legend{scroll-margin-top:82px}

/* A dimensional conversation inside the garage. Motion belongs to transitions,
   never to a field while the customer is typing. */
.quote-scenery{display:none}
.quote-modal{width:100%;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0;background:#050607;isolation:isolate;transform:perspective(1400px) translateY(30px) rotateX(3deg) scale(.98)}
.quote-modal #quote{position:relative;min-height:100%;overflow:hidden;background:radial-gradient(ellipse at 76% 45%,#8f493618,transparent 44%),#050607;isolation:isolate}
.quote-modal .quote-scenery{display:block;position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:-1}
.quote-wordmark{position:absolute;top:18%;left:4%;right:4%;color:#d8dfe916;font:800 clamp(120px,24vw,390px)/.72 'Barlow Condensed',sans-serif;text-align:center;letter-spacing:-.03em;transform:perspective(1200px) rotateY(-8deg) translateZ(-90px);transition:transform .9s}
.quote-wordmark span{display:block;font-size:.41em;letter-spacing:.2em;margin-bottom:.25em;padding-left:.2em}.quote-wordmark strong{font-weight:800}
.quote-orbit{position:absolute;width:95vw;height:95vw;max-width:1300px;max-height:1300px;left:20%;top:6%;border:1px solid #c3977824;border-radius:50%;transform:perspective(1200px) rotateX(68deg) rotateY(-20deg);box-shadow:0 0 90px #e29b6510,inset 0 0 80px #e29b6508;transition:transform 1s}
.quote-orbit-two{width:65vw;height:65vw;left:35%;top:15%;border-color:#ffffff0b;transform:perspective(1200px) rotateX(70deg) rotateY(20deg)}
#quote[data-phase="THE WORK"] .quote-wordmark{transform:perspective(1200px) rotateY(7deg) translateZ(-70px)}
#quote[data-phase="YOUR DETAILS"] .quote-wordmark{transform:perspective(1200px) rotateY(-3deg) translateZ(0)}
#quote[data-phase="YOUR BUILD BRIEF"] .quote-wordmark{transform:perspective(1200px) rotateY(0) translateZ(20px)}
#quote[data-phase="THE WORK"] .quote-orbit{transform:perspective(1200px) rotateX(60deg) rotateY(25deg)}
.quote-scene-label{position:absolute;right:5%;bottom:8%;writing-mode:vertical-rl;font-size:9px;letter-spacing:.28em;color:#83909c55}
.quote-modal #quote .quote-modal-bar{background:#060708dc;padding:14px 5%;border-color:#ffffff0d;min-height:72px}
.quote-modal #quote .pact-header{max-width:1040px;margin:auto;padding:35px 34px 22px}
.quote-modal #quote .pact-title{font-size:clamp(40px,4vw,62px);text-transform:uppercase}
.quote-modal #quote .pact-intro{max-width:480px}
.quote-modal #quote .pact-content{max-width:1040px;margin:auto;grid-template-columns:minmax(0,680px) 210px;gap:44px;padding:0 34px 44px;align-items:center}
.quote-modal #quote .pact-form{min-width:0;perspective:1500px}
.quote-progress{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font:500 9px/1.4 'Archivo',sans-serif;letter-spacing:.14em;color:#b5a399;margin-bottom:24px}
.quote-progress>div{width:100%;height:1px;background:#ffffff16}.quote-progress i{display:block;height:1px;background:#ef9b80;box-shadow:0 0 12px #ef9b8040;transform-origin:left;transform:scaleX(var(--quote-progress,.07));transition:transform .5s}
.quote-stage{position:relative;perspective:1200px;min-width:0}
.quote-modal #quote .quote-question{position:relative;box-sizing:border-box;min-width:0;margin:0;min-height:295px;padding:30px;border:1px solid #d6d9da25;border-radius:16px 5px 16px 5px;background:linear-gradient(125deg,#252a30df,#111519eb 68%);box-shadow:inset 0 1px #ffffff15,0 8px 0 #030405,0 9px 0 #c3d0da12,0 28px 65px #0008;animation:none;backface-visibility:hidden}
.quote-modal #quote .quote-question>legend{float:left;width:100%;padding:0;margin:0 0 18px;font:600 clamp(30px,3.5vw,46px)/1 'Barlow Condensed',sans-serif;text-transform:uppercase;color:#edf0f1;letter-spacing:-.01em;scroll-margin-top:110px}
.quote-modal #quote .quote-question>legend+*{clear:both}
.quote-question legend em{font-style:normal;color:#c09380}
.quote-modal #quote .question-intro{font-size:12px;line-height:1.7;color:#a5afb8;margin:0 0 25px;max-width:470px}
.quote-modal #quote .quote-question>label{display:block;font-size:10px;letter-spacing:.03em;color:#b7c1c9}
.quote-modal #quote .quote-question :is(input:not([type=checkbox]),select,textarea){min-height:60px;border:0;border-bottom:1px solid #aab5bd60;background:#07090c9c;border-radius:5px 5px 0 0;padding:17px 14px;font-size:18px;box-shadow:inset 0 1px 9px #0004}
.quote-modal #quote .quote-question textarea{min-height:125px;font-size:16px}
.quote-modal #quote .quote-question :is(input,select,textarea):focus-visible{outline-color:#e29b80;outline-offset:4px;border-color:#e29b80;background:#090d11}
.quote-modal #quote .quote-step-actions{display:flex;align-items:center;justify-content:space-between;margin-top:27px;min-height:52px}
.quote-modal #quote .quote-prev{border:0;background:none;color:#b7bec4;box-shadow:none;padding-left:0}
.quote-modal #quote .quote-next{margin-left:auto;min-width:190px}
.quote-modal #quote .pact-submit{margin-top:27px}
.quote-modal #quote .pact-disclaimer{max-width:590px;font-size:10px;line-height:1.7;margin-top:23px;color:#778690}
.quote-modal #quote .pact-summary{border:0;border-left:1px solid #ffffff16;background:none;box-shadow:none;padding:4px 0 4px 24px}
.quote-contact-label{font-size:8px;letter-spacing:.15em;color:#83919b;line-height:1.6}
.quote-modal #quote .pact-phone{font-size:25px;margin-top:12px}
.quote-modal #quote .pact-secondary{border:0;border-bottom:1px solid #ffffff24;border-radius:0;padding-left:0;background:none;color:#c2c9cf}
.quote-modal #quote .pact-preview{display:grid;grid-template-columns:1fr 1fr;gap:0 22px;max-height:none}.quote-modal #quote .pact-preview-label{font-size:9px}.quote-modal #quote .pact-preview-value{font-size:12px}
.quote-modal #quote .pact-result{background:#11171b;border:1px solid #ffffff24;padding:24px;border-radius:12px;scroll-margin-top:110px}
.quote-modal #quote .pact-status{margin:22px 0 0}
#quote .quote-question[hidden]{display:none!important}
@media(max-width:900px){.quote-modal #quote .pact-content{grid-template-columns:1fr;max-width:740px;gap:30px}.quote-modal #quote .pact-header{max-width:740px}.quote-modal #quote .pact-summary{border:0;border-top:1px solid #ffffff16;padding:22px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.quote-contact-label{grid-column:1/-1}.quote-modal #quote .pact-summary>.pact-hint{grid-column:2}.quote-modal #quote .pact-phone{margin-top:0}.quote-modal #quote .pact-secondary{margin:0}.quote-wordmark{top:24%;font-size:28vw}}
@media(max-width:600px){.quote-modal #quote .quote-modal-bar{padding:8px 20px;min-height:64px}.quote-modal #quote .pact-header{padding:24px 20px 20px}.quote-modal #quote .pact-title{font-size:40px}.quote-modal #quote .pact-intro{font-size:11px}.quote-modal #quote .pact-content{padding:0 20px 30px;gap:24px;display:flex}.quote-modal #quote .quote-question{padding:24px 20px;min-height:285px}.quote-modal #quote .quote-question>legend{font-size:34px}.quote-modal #quote .question-intro{font-size:11px;margin-bottom:22px}.quote-modal #quote .quote-question :is(input:not([type=checkbox]),select,textarea){font-size:16px;min-height:56px}.quote-modal #quote .quote-next{min-width:165px}.quote-modal #quote .pact-disclaimer{font-size:9px}.quote-wordmark{top:12%;left:-9%;right:-9%;font-size:36vw;color:#d8dfe91a}.quote-orbit{width:190vw;height:190vw;left:-20%;top:28%}.quote-modal #quote .pact-preview{grid-template-columns:1fr}.quote-modal #quote .pact-summary{width:100%;padding-top:20px}.quote-modal #quote .pact-phone{font-size:23px}.quote-scene-label{display:none}}
@media(max-width:350px){.quote-modal #quote .pact-header{padding:20px 16px 18px}.quote-modal #quote .pact-content{padding:0 16px 24px}.quote-modal #quote .quote-question{padding:22px 16px}.quote-modal #quote .quote-question>legend{font-size:30px}.quote-modal #quote .pact-summary{display:block}.quote-modal #quote .pact-title{font-size:36px}}
@media(prefers-reduced-motion:reduce){.quote-wordmark,.quote-orbit,.quote-progress i{transition:none;transform:none}.quote-modal{transform:none}.quote-modal #quote .quote-question{animation:none}}

/* Window choices stay compact, touch-friendly rows inside the question card. */
.quote-modal #quote .tint-window-options label{display:flex;align-items:center;justify-content:flex-start;gap:12px;text-align:left;min-height:44px;font-size:13px}
.quote-modal #quote .tint-window-options input[type=checkbox]{display:inline-block;flex:0 0 20px;width:20px;height:20px;min-height:0;margin:0;accent-color:#e29b80}

/* The supplied underground garage is a real WebGL room behind the conversation. */
.quote-modal #quote{background:#080d12}
.quote-modal .quote-scenery{position:fixed;inset:0;height:100dvh;z-index:-1;background:#0b1118}
.quote-garage-canvas{position:absolute;inset:0;opacity:0;transition:opacity .8s ease}
.quote-garage-canvas canvas{display:block;width:100%;height:100%}
#quote[data-garage=ready] .quote-garage-canvas{opacity:1}
.quote-garage-shade{position:absolute;inset:0;background:linear-gradient(90deg,#02050915 20%,#04070a20 43%,#04070add 78%),linear-gradient(0deg,#020509a6,transparent 30%,transparent 80%,#02050980)}
.quote-modal .quote-orbit{display:none}
.quote-modal .quote-wordmark{top:17%;left:2%;right:43%;font-size:14vw;color:#dae4e92b;transform:none;transition:opacity .8s}
#quote[data-garage=ready] .quote-wordmark{opacity:.18}
.quote-modal #quote .pact-header{width:min(490px,45%);margin:0 5% 0 auto;padding:24px 0 18px}
.quote-modal #quote .pact-title{font-size:clamp(38px,3.4vw,54px)}
.quote-modal #quote .pact-content{width:min(490px,45%);max-width:none;margin:0 5% 0 auto;padding:0 0 30px;display:flex;flex-direction:column;gap:25px}
.quote-modal #quote .quote-question{min-height:255px;padding:28px;background:linear-gradient(120deg,#161e25de,#0b1117d6);backdrop-filter:blur(8px);box-shadow:inset 0 1px #ffffff15,0 6px 0 #03060970,0 20px 60px #0005}
.quote-modal #quote .quote-question>legend{font-size:38px}
.quote-modal #quote .pact-summary{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;width:100%;border:0;border-top:1px solid #ffffff20;padding:18px 0 0}
.quote-modal #quote .pact-phone{font-size:23px;margin:0}
.quote-modal #quote .pact-summary>.pact-hint{grid-column:2;font-size:9px}
.quote-modal #quote .pact-secondary{margin:0}
.quote-modal #quote .quote-modal-bar{background:#05090d80;backdrop-filter:blur(8px)}
.quote-modal .quote-scene-label{display:block;left:5%;right:auto;bottom:6%;writing-mode:horizontal-tb;color:#cedce496;letter-spacing:.24em}
@media(max-width:759px){
 .quote-modal #quote .pact-header,.quote-modal #quote .pact-content{width:auto;margin:0 20px;padding-left:0;padding-right:0}
 .quote-modal #quote .pact-header{padding-top:170px;padding-bottom:18px}
 .quote-modal #quote .pact-title{font-size:38px}
 .quote-modal #quote .pact-intro{max-width:310px}
 .quote-modal .quote-garage-canvas{height:430px}
 .quote-garage-shade{background:linear-gradient(0deg,#05090df5 10%,#05090df0 42%,#05090d30 76%,#05090d30)}
 .quote-modal .quote-wordmark{top:95px;left:4%;right:4%;font-size:25vw}
 .quote-modal #quote .quote-question{padding:24px;min-height:240px}
 .quote-modal #quote .quote-question>legend{font-size:34px}
 .quote-modal .quote-scene-label{display:none}
 .quote-modal #quote .pact-summary{display:grid}
}
@media(max-width:350px){.quote-modal #quote .pact-header,.quote-modal #quote .pact-content{margin-left:16px;margin-right:16px}.quote-modal #quote .quote-question{padding:20px}.quote-modal #quote .pact-summary{display:block}.quote-modal #quote .pact-title{font-size:34px}}
@media(prefers-reduced-motion:reduce){.quote-garage-canvas,.quote-wordmark{transition:none}}

/* Typography lives in the scene. No surrounding cards on any screen size. */
.quote-modal #quote .quote-question{border:0;border-radius:0;padding:0;min-height:260px;background:none;box-shadow:none;backdrop-filter:none;transform-origin:50% 50%}
.quote-modal #quote .quote-question>legend{font-size:clamp(36px,3.4vw,48px);line-height:1.05;text-shadow:0 2px 18px #0009}
.quote-modal #quote .quote-question :is(input:not([type=checkbox]),select,textarea){border:0;border-bottom:1px solid #d5dce778;border-radius:0;background:#060b1020;box-shadow:none;padding:16px 0;font-size:18px;min-height:58px}
.quote-modal #quote .quote-question :is(input,select,textarea):focus-visible{background:#060b1050;outline:1px solid #e7ad96;outline-offset:5px;border-color:#e7ad96}
.quote-modal #quote .question-intro{color:#c0c8ce;font-size:13px;max-width:400px}
.quote-modal #quote .quote-question>label{color:#b7c6d1;font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.quote-modal #quote .quote-question label :is(input,select,textarea){text-transform:none;letter-spacing:normal}
.quote-modal #quote .quote-next,.quote-modal #quote .pact-submit{border:0;border-bottom:1px solid #eeb39c;border-radius:0;background:none;color:#f0c8b5;box-shadow:none;min-height:52px;padding:13px 0;text-align:right;font-size:14px}
.quote-modal #quote .pact-submit{justify-content:space-between}
.quote-modal #quote .quote-next:hover,.quote-modal #quote .pact-submit:hover{background:#ffffff08}
.quote-modal #quote .quote-progress{margin-bottom:35px}
.quote-modal #quote .pact-header{padding-top:32px;padding-bottom:28px}
.quote-modal #quote .pact-title{font-size:clamp(35px,3vw,46px)}
.quote-modal #quote .pact-result{background:#04090c96;border:0;border-top:1px solid #ffffff40;border-radius:0;padding:24px 0;box-shadow:none}
.quote-modal #quote .pact-status{border:0;border-left:2px solid #d9987b;border-radius:0;background:#04090c80;padding:12px 16px}
@media(max-width:759px){
 .quote-modal #quote .pact-header{padding-top:185px;padding-bottom:22px}
 .quote-modal #quote .pact-title{font-size:34px}
 .quote-modal #quote .quote-question{padding:0;min-height:260px}
 .quote-modal #quote .quote-question>legend{font-size:36px}
 .quote-modal #quote .quote-question :is(input:not([type=checkbox]),select,textarea){font-size:18px;min-height:58px}
 .quote-modal #quote .quote-progress{margin-bottom:30px}
 .quote-modal #quote .question-intro{font-size:13px}
 .quote-modal #quote .quote-next{min-width:145px}
}

.quote-modal #quote .pact-summary{border-radius:0;background:none;box-shadow:none}
.quote-modal #quote .pact-summary::before,.quote-modal #quote .pact-summary::after{display:none}
.quote-modal #quote .quote-next,.quote-modal #quote .pact-submit,.quote-modal #quote .pact-secondary{border-radius:0}
.quote-modal #quote .pact-header .pact-intro{text-shadow:0 1px 8px #000}

/* One viewport composition: the scene never becomes a short mobile banner. */
.quote-modal{min-height:100svh}
.quote-modal .quote-scenery,.quote-modal .quote-garage-canvas{height:100svh;inset:0}
.quote-modal #quote .pact-header{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.quote-modal #quote .pact-content{min-height:calc(100svh - 72px);box-sizing:border-box;justify-content:center;width:min(440px,43%);margin:0 6% 0 auto;padding:32px 0;gap:0}
.quote-modal #quote .pact-summary{display:none}
.quote-modal #quote:has(.pact-form[data-question=review]) .pact-summary{display:grid;margin-top:24px}
.quote-modal #quote .quote-stage{min-height:275px}
.quote-modal #quote .quote-question{min-height:275px}
.quote-modal #quote .quote-progress{margin-bottom:28px}
.quote-modal #quote .quote-question>legend{font-size:44px;margin-bottom:18px}
.quote-modal #quote .quote-step-actions{margin-top:12px}
.quote-modal #quote .pact-disclaimer{margin-top:22px;font-size:10px;line-height:1.6;color:#b2bec6}
.quote-modal .quote-garage-shade{background:linear-gradient(90deg,#03070b0a 15%,#03070b22 42%,#03070bdb 78%),linear-gradient(0deg,#03070b85,transparent 35%,transparent 85%,#03070b80)}
@media(max-width:759px){
 .quote-modal #quote .pact-content{width:auto;min-height:calc(100svh - 64px);margin:0 24px;padding:30px 0 24px;justify-content:flex-end}
 .quote-modal #quote .quote-stage,.quote-modal #quote .quote-question{min-height:265px}
 .quote-modal #quote .quote-question>legend{font-size:38px}
 .quote-modal #quote .quote-progress{margin-bottom:24px}
 .quote-modal #quote .pact-disclaimer{font-size:9px;margin-top:18px}
 .quote-modal .quote-garage-shade{background:linear-gradient(0deg,#03070bfa 0%,#03070bee 30%,#03070b7a 58%,#03070b10 80%,#03070b35)}
 .quote-modal .quote-wordmark{top:13%;left:0;right:0;font-size:29vw}
 .quote-modal .quote-scene-label{display:none}
}
@media(max-width:350px){.quote-modal #quote .pact-content{margin:0 18px}.quote-modal #quote .quote-question>legend{font-size:36px}.quote-modal #quote .quote-stage,.quote-modal #quote .quote-question{min-height:255px}}
@media(max-height:650px) and (max-width:759px){.quote-modal #quote .pact-content{padding-top:160px}}

#quote[data-garage=ready] .quote-wordmark{opacity:.5}
.quote-modal #quote .quote-stage,.quote-modal #quote .quote-question{min-height:275px}
