.quote-page{background:#101513;color:#f2efe8}
.quote-intro{padding:135px 6vw 42px;background:linear-gradient(135deg,#18201c,#101513 70%);border-bottom:1px solid #c6a16c44}
.quote-intro h2{font-size:clamp(38px,5vw,68px);letter-spacing:-.045em;margin:10px 0}
.quote-intro>p:last-child{max-width:700px;color:#c5c6bf;line-height:1.7}
.quote-seo-intro{padding:34px 6vw 8px;background:#101513}
.quote-seo-intro h1{font-size:clamp(25px,2.7vw,39px);letter-spacing:-.025em;margin:0 0 12px}
.quote-seo-intro p{max-width:850px;color:#c5c6bf;line-height:1.65;margin:0}
.quote-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(320px,.8fr);gap:36px;padding:38px 5vw 80px;align-items:start}
.quote-builder{min-width:0}
.quote-step{padding:28px 0 36px;border-bottom:1px solid #c6a16c3d}
.quote-step-heading{display:flex;gap:17px;align-items:flex-start;margin-bottom:23px}
.quote-step-heading>span{display:grid;place-items:center;width:38px;height:38px;border:1px solid #c6a16c8a;border-radius:50%;color:#dbb87e;font-size:12px;flex:none}
.quote-step-heading .eyebrow{margin:0;color:#d4ae72;font-size:9px;letter-spacing:.2em}
.quote-step-heading h2{font-size:clamp(22px,2.2vw,31px);margin:6px 0}
.quote-step-heading p:not(.eyebrow){font-size:12px;color:#b9bcb4;line-height:1.6;margin:5px 0;max-width:680px}
.model-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.quote-detail-photos{margin-top:34px;padding-top:24px;border-top:1px solid #c6a16c3d}
.quote-detail-photos>div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:15px;margin-bottom:15px}
.quote-detail-photos .eyebrow{color:#d4ae72;font-size:10px;letter-spacing:.19em;margin:0}
.quote-detail-photos>div:first-child p:last-child{max-width:390px;margin:0;color:#b9bcb4;font-size:11px;line-height:1.5}
.quote-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.quote-detail-grid a{position:relative;display:block;overflow:hidden;min-height:125px;border-radius:10px;color:#fff;text-decoration:none;background:#111}
.quote-detail-grid img{display:block;width:100%;height:145px;object-fit:cover;transition:transform .25s}
.quote-detail-grid a:hover img{transform:scale(1.04)}
.quote-detail-grid span{position:absolute;bottom:0;left:0;right:0;padding:18px 9px 8px;background:linear-gradient(transparent,#000c);font-size:10px;letter-spacing:.04em}
@media(max-width:760px){.quote-detail-photos>div:first-child{display:block}.quote-detail-photos>div:first-child p:last-child{margin-top:9px}.quote-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-detail-grid img{height:130px}}
.model-choice,.option-card{position:relative;display:block;overflow:hidden;border:1px solid #d2bd9a44;background:#171e1a;border-radius:12px;cursor:pointer;transition:border-color .18s,background .18s,transform .18s}
.model-choice:hover,.option-card:hover{border-color:#c6a16c;transform:translateY(-2px)}
.model-choice input,.option-card input{position:absolute;opacity:0;width:1px;height:1px}
.model-choice:has(input:checked),.option-card:has(input:checked){border-color:#d0ad73;background:#28231a;box-shadow:0 0 0 1px #c6a16c66,0 8px 25px #0003}
.model-choice:focus-within,.option-card:focus-within{outline:2px solid #d4af73;outline-offset:3px}
.choice-check{position:absolute;z-index:2;top:10px;right:10px;width:23px;height:23px;border:1px solid #f5ead0aa;border-radius:50%;background:#1015139e}
.option-card .choice-check{border-radius:5px}
.choice-check::after{content:"";position:absolute;left:6px;top:3px;width:7px;height:11px;border:solid #161b17;border-width:0 2px 2px 0;transform:rotate(45deg);opacity:0}
.model-choice input:checked+.choice-check,.option-card input:checked+.choice-check{background:#d7b678;border-color:#d7b678}
.model-choice input:checked+.choice-check::after,.option-card input:checked+.choice-check::after{opacity:1}
.model-choice>img{display:block;width:100%;height:125px;object-fit:cover;background:#101513}
.model-choice-copy{display:grid;gap:5px;padding:12px}
.model-choice-copy strong{font-size:13px}
.model-choice-copy small{font-size:8px;letter-spacing:.15em;color:#c7b28f}
.option-grid{display:grid;gap:21px}
.option-category h3{font-size:15px;margin:0 0 10px;color:#eee9df}
.option-category-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.option-category-heading h3{margin:0}
.option-skip{display:inline-flex;border:1px solid #c6a16c88;border-radius:999px;background:#1b2d23;color:#e6c28b;padding:7px 12px;font:inherit;font-size:12px;white-space:nowrap;cursor:pointer}
.option-skip:hover,.option-skip:focus-visible{background:#294735;border-color:#d8b77e}
.option-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.option-card{min-height:110px;display:grid;grid-template-columns:104px minmax(0,1fr);align-items:stretch}
.option-card-illustration{display:block;width:104px;height:100%;min-height:110px;background:#101713}.option-card-illustration svg{display:block;width:100%;height:100%;min-height:110px}
.option-card-copy{display:flex;flex-direction:column;justify-content:center;gap:8px;padding:12px 32px 12px 13px}
.option-card-copy strong{font-size:12px;line-height:1.4;font-weight:500}
.option-card-copy small{font-size:10px;color:#d1ae75;letter-spacing:.04em}
.quote-form-panel{position:sticky;top:104px;padding:24px;border:1px solid #c6a16c70;border-radius:16px;background:#171e1a;box-shadow:0 18px 50px #0003}
.quote-form-panel.quote-form-attention{border-color:#e2bd7c;box-shadow:0 0 0 2px #c6a16c55,0 18px 50px #0003}
.quote-form-heading .eyebrow{font-size:9px;letter-spacing:.2em;color:#d2ad71;margin:0}
.quote-form-heading h2{font-size:27px;margin:8px 0}
.quote-form-heading>p:last-child{font-size:12px;color:#bfc1ba;margin:0}
.quote-summary{display:grid;gap:8px;padding:16px 0;margin:15px 0;border-block:1px solid #ffffff20}
.quote-summary>span{font-size:8px;letter-spacing:.17em;color:#d2ad71;margin-top:4px}
.quote-summary strong{font-size:14px;font-weight:500}
.quote-summary ul{padding-left:18px;margin:0;color:#d6d5ce;font-size:11px;line-height:1.6;max-height:135px;overflow:auto}
#quote-form{display:grid;gap:12px}
#quote-form label{display:grid;gap:6px;font-size:11px;color:#d3d4cd}
#quote-form label small{display:inline;color:#9ea49b;font-size:10px}
#quote-form input,#quote-form textarea{width:100%;border:1px solid #62675f;border-radius:7px;padding:11px 12px;background:#101513;color:#f5f1e9;font:inherit}
#quote-form textarea{resize:vertical}
#quote-form input:focus,#quote-form textarea:focus{outline:2px solid #c6a16c;outline-offset:2px}
#quote-form button,#quote-form .quote-mail-link{width:100%;min-width:0;justify-content:space-between;margin-top:3px;border-radius:9px}
.quote-status,.quote-privacy{font-size:10px;line-height:1.6;color:#aeb2a9;margin:0}
.quote-mail-link[hidden]{display:none!important}
.quote-privacy{margin-top:16px;padding-top:13px;border-top:1px solid #ffffff18}
@media(max-width:900px){.quote-layout{grid-template-columns:minmax(0,1.3fr) minmax(285px,.8fr);gap:20px;padding-inline:4vw}.quote-form-panel{padding:19px}.model-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.option-category-grid{grid-template-columns:1fr}}
@media(max-width:700px){.quote-intro{padding:112px 6vw 30px}.quote-layout{display:flex;flex-direction:column;padding:20px 6vw 55px}.quote-builder,.quote-form-panel{width:100%}.quote-form-panel{position:static;order:0}.model-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.option-card{grid-template-columns:90px minmax(0,1fr)}.option-card-illustration{width:90px}}
@media(max-width:420px){.model-choices{grid-template-columns:1fr 1fr;gap:8px}.model-choice>img{height:100px}.quote-form-panel{padding:17px}.option-card-copy{padding-right:28px}}

/* The message and submit action each span the full form width. */
#quote-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}
#quote-form .quote-message-field{min-width:0;grid-column:1/-1}
#quote-form textarea{min-height:100px;height:100px}
#quote-form .quote-submit{grid-column:1/-1;min-height:52px;align-self:stretch;justify-content:center;gap:10px;margin:0;text-align:center;background:#224b34;border:1px solid #c6a16c;color:#fff5e5;font-weight:700;box-shadow:0 8px 24px #0004}
#quote-form .quote-submit:hover,#quote-form .quote-submit:focus-visible{background:#2c6143;border-color:#e5bf83}
#quote-form .quote-status,#quote-form .quote-mail-link{grid-column:1/-1}
#quote-form .quote-status.is-success,#quote-form .quote-status.is-error{padding:12px 14px;border:1px solid #c6a16c;border-radius:8px;font-size:13px;font-weight:700;line-height:1.5;color:#f0d39f;background:rgba(198,161,108,.12)}
#quote-form .quote-status.is-error{border-color:#b9796d;color:#f2c1b4;background:rgba(148,61,48,.14)}
#quote-form .quote-submit.is-sent,#quote-form .quote-submit.is-sent:disabled{background:#355b3e;border:1px solid #d5b579;color:#fff3da;opacity:1;cursor:default}
.quote-summary-model{display:flex;align-items:baseline;justify-content:flex-start;gap:7px;min-width:0}
.quote-summary-model span,.quote-summary-model strong{font-size:11px;line-height:1.6;letter-spacing:normal;font-weight:400;color:#d6d5ce}
.quote-summary-model span{white-space:nowrap}
.quote-summary-model strong{text-align:left;overflow-wrap:anywhere}
.quote-summary{padding:9px 0;margin:9px 0;gap:3px}
.quote-summary ul{max-height:54px}
@media(min-width:901px) and (max-width:1700px) and (max-height:950px){
  .quote-intro{padding:100px 5vw 18px}
  .quote-intro h2{font-size:clamp(35px,3.5vw,50px);margin:4px 0}
  .quote-intro>p:last-child{font-size:13px;line-height:1.4;margin:5px 0}
  .quote-layout{padding-top:16px;gap:24px}
  .quote-form-panel{top:82px;padding:18px}
  .quote-form-heading h2{font-size:25px;margin:4px 0}
  .quote-form-heading>p:last-child{font-size:11px}
  .quote-summary{padding:8px 0;margin:8px 0}
  .quote-summary ul{max-height:39px}
  #quote-form{gap:8px 10px}
  #quote-form input,#quote-form textarea{padding:8px 10px}
  #quote-form textarea{min-height:92px;height:92px}
  #quote-form .quote-submit{min-height:48px}
  .quote-privacy{margin-top:9px;padding-top:9px}
}
@media(max-width:1050px){#quote-form{grid-template-columns:1fr}#quote-form .quote-submit{min-height:54px}#quote-form textarea{height:95px}}

.quote-back-options,.quote-jump-form{display:none}
#model-step,#options-step,.option-category{scroll-margin-top:90px}
#quote-seo-title{scroll-margin-top:105px}
.quote-intro{position:relative;display:flex;align-items:center;min-height:clamp(440px,43vw,620px);overflow:hidden;isolation:isolate;background:#111916}
.quote-intro-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 54%;z-index:-2}
.quote-intro::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(7,13,11,.91) 0%,rgba(7,13,11,.78) 35%,rgba(7,13,11,.28) 75%),linear-gradient(0deg,rgba(7,13,11,.48),transparent 50%)}
.quote-intro-content{position:relative;max-width:790px}
.quote-intro h1{font-size:clamp(34px,4vw,58px);line-height:1.08;letter-spacing:-.035em;max-width:780px;margin:12px 0 18px}
.quote-intro-content>p:not(.eyebrow){max-width:670px;line-height:1.6;color:#f2f2ec}
.quote-start-button{display:inline-flex;align-items:center;gap:18px;margin-top:24px;background:rgba(10,16,13,.48);backdrop-filter:blur(5px)}
.quote-start-button:focus-visible{outline:2px solid #e8c18b;outline-offset:4px}
@media(max-width:700px){.quote-intro{min-height:530px;padding:120px 6vw 45px}.quote-intro-image{object-position:57% center}.quote-intro::before{background:linear-gradient(90deg,rgba(7,13,11,.88),rgba(7,13,11,.55)),linear-gradient(0deg,rgba(7,13,11,.55),transparent 65%)}.quote-intro h1{font-size:clamp(33px,8vw,46px)}.quote-start-button{margin-top:18px}}
@media(max-width:700px){
  #quote-form-panel{scroll-margin-top:90px}
  .quote-step{padding-top:20px}
  .quote-form-panel{margin-top:10px}
  .quote-back-options{display:inline-flex;margin-top:13px;color:#d9b578;font-size:12px;text-decoration:underline;text-underline-offset:4px}
  .quote-jump-form{position:fixed;z-index:119;right:6vw;bottom:96px;display:flex;align-items:center;gap:8px;color:#f4e5c9;text-decoration:none;filter:drop-shadow(0 5px 9px #000);line-height:1}
  .quote-jump-label{font-size:12px;font-weight:700;white-space:nowrap;background:rgba(17,25,21,.9);border:1px solid #c6a16c88;border-radius:999px;padding:10px 11px;backdrop-filter:blur(12px)}
  .quote-jump-icon{display:grid;place-items:center;width:46px;height:46px;border:1px solid #c6a16caa;border-radius:50%;background:rgba(28,46,35,.95);font-size:27px;backdrop-filter:blur(12px)}
  .quote-jump-form:focus-visible{outline:2px solid #e2bd7c;outline-offset:3px}
  .quote-page.quote-form-visible .quote-jump-form{opacity:0;pointer-events:none}
}
