/* HOMEFRONT Compass / Pre-Quote Project Brief Builder.
 * Research library rather than remodeling showroom. Scoped to this page.
 */
.hf-prequote-hero{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(115% 105% at 83% 22%,#325267 0%,var(--hf-navy,#1E3341) 57%,#122635 100%);color:var(--hf-cream,#F4F0E8)}
.hf-prequote-hero:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;opacity:.5;background-image:linear-gradient(#c4d6da13 1px,transparent 1px),linear-gradient(90deg,#c4d6da13 1px,transparent 1px);background-size:29px 29px}
.hf-prequote-hero-grid{padding-block:126px 90px;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:6%;align-items:center}
.hf-prequote-hero .hf-crumb,.hf-prequote-hero .hf-crumb a{color:#e4e6e2}
.hf-prequote-hero .eyebrow{color:var(--hf-gold-light,#FFE1AE);margin-top:42px}
.hf-prequote-hero h1{font:500 clamp(57px,6.3vw,94px)/.99 Editorial,Georgia,serif;letter-spacing:-.036em;margin:19px 0 29px;text-wrap:balance}
.hf-prequote-hero-grid>div:first-child>p:not(.eyebrow){font:400 16px/1.8 Manrope,Arial,sans-serif;color:#e3e6e2;max-width:610px}
.hf-prequote-button{display:inline-flex;gap:28px;align-items:center;margin-top:28px;min-height:47px;border-radius:27px;background:linear-gradient(125deg,var(--hf-gold-light,#FFE1AE),var(--hf-gold,#EACA92),#d6b075);padding:14px 23px;font:650 12px/1.45 Manrope,Arial,sans-serif;color:var(--hf-navy,#1E3341);text-decoration:none}
.hf-prequote-button:hover{filter:brightness(1.06)}
.hf-prequote-plate{min-height:342px;padding:23px;background:#1a394c;border:1px solid #bfa77c;box-shadow:16px 20px 0 #081a2739;display:flex;flex-direction:column;justify-content:space-between;transform:rotate(1deg)}
.hf-prequote-plate>div:first-child,.hf-prequote-plate>div:last-child{display:flex;justify-content:space-between;gap:14px;font:650 9px/1.55 Manrope,Arial,sans-serif;letter-spacing:.13em;color:var(--hf-gold,#EACA92)}
.hf-prequote-plate>div:last-child{border-top:1px solid #eaca9270;padding-top:16px}
.hf-prequote-plate-lines{min-height:225px;display:flex;flex-direction:column;justify-content:center;gap:30px;padding:32px 15%;background-image:linear-gradient(#c0d4d915 1px,transparent 1px),linear-gradient(90deg,#c0d4d915 1px,transparent 1px);background-size:18px 18px}
.hf-prequote-plate-lines span{font:500 clamp(20px,2.6vw,33px)/1.13 Editorial,Georgia,serif;letter-spacing:.15em;border-bottom:1px solid #d4e2e378;padding-bottom:13px}
.hf-prequote-plate-lines span:nth-child(2){align-self:flex-end;color:var(--hf-gold,#EACA92)}
.hf-prequote-intro{padding-block:82px;display:grid;grid-template-columns:1fr 1fr;gap:12%;border-bottom:1px solid var(--hf-hair,#d7cfc2)}
.hf-prequote-intro h2,.hf-prequote-heading h2,.hf-prequote-sources h2,.hf-prequote-close h2{font:500 clamp(43px,4.8vw,69px)/1.08 Editorial,Georgia,serif;letter-spacing:-.028em;margin:15px 0 23px;text-wrap:balance}
.hf-prequote-intro>div:last-child{align-self:end}
.hf-prequote-intro p:not(.eyebrow){font:400 15px/1.8 Manrope,Arial,sans-serif;color:var(--hf-muted,#53616a);margin-bottom:14px}
.hf-prequote-intro a{border-bottom:1px solid var(--hf-brass,#BB9259);text-decoration:none}
.hf-prequote-workshop{padding-block:80px 105px;scroll-margin-top:20px}
.hf-prequote-heading{max-width:820px;margin-bottom:40px}
.hf-prequote-heading>p:last-child{font:400 15px/1.77 Manrope,Arial,sans-serif;color:var(--hf-muted,#53616a)}
.hf-prequote-layout{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(300px,.82fr);gap:27px;align-items:start}
.hf-prequote-form{background:#fbf8f2;border:1px solid var(--hf-hair,#d7cfc2);padding:34px 37px;min-width:0}
.hf-prequote-part{margin:0 0 30px;padding:0;border:0}
.hf-prequote-part>legend{font:500 28px/1.2 Editorial,Georgia,serif;border-bottom:1px solid var(--hf-hair,#d7cfc2);padding-bottom:16px;margin-bottom:15px;width:100%}
.hf-prequote-part>legend span{color:var(--hf-brass,#BB9259);font:700 11px/1.5 Manrope,Arial,sans-serif;letter-spacing:.13em;display:inline-block;min-width:38px}
.hf-prequote-part>p{font:400 12px/1.7 Manrope,Arial,sans-serif;color:var(--hf-muted,#53616a);margin:0 0 18px}
.hf-prequote-area-group{border:0;padding:0;margin:0 0 20px}
.hf-prequote-area-group>legend{font:700 11px/1.5 Manrope,Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#8a6638;margin-bottom:9px}
.hf-prequote-area-choices{display:grid;grid-template-columns:1fr 1fr;gap:8px 17px}
.hf-prequote-area,.hf-prequote-question{display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px;align-items:start;padding:8px 2px;font:500 12px/1.6 Manrope,Arial,sans-serif;cursor:pointer}
.hf-prequote-area input,.hf-prequote-question input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--hf-navy,#1E3341)}
.hf-prequote-textareas{display:grid;gap:19px}
.hf-prequote-textareas label{font:650 12px/1.55 Manrope,Arial,sans-serif;color:var(--hf-navy,#1E3341)}
.hf-prequote-textareas textarea{display:block;margin-top:9px;width:100%;min-height:104px;resize:vertical;padding:13px;border:1px solid #afa495;border-radius:3px;background:#fffdf9;color:var(--hf-navy,#1E3341);font:400 13px/1.7 Manrope,Arial,sans-serif}
.hf-prequote-textareas textarea::placeholder{color:#65737b;opacity:1}
.hf-prequote-decisions{display:grid;gap:0}
.hf-prequote-decision{display:grid;grid-template-columns:minmax(0,1fr) minmax(165px,.7fr);gap:17px;align-items:center;border-bottom:1px solid var(--hf-hair,#d7cfc2);padding:14px 0}
.hf-prequote-decision strong{font:650 12px/1.5 Manrope,Arial,sans-serif}
.hf-prequote-decision p{font:400 11px/1.7 Manrope,Arial,sans-serif;color:var(--hf-muted,#53616a);margin:5px 0 0}
.hf-prequote-decision select{width:100%;min-height:46px;background:#fffdf9;color:var(--hf-navy,#1E3341);border:1px solid #afa495;border-radius:3px;padding:10px;font:500 12px/1.45 Manrope,Arial,sans-serif}
.hf-prequote-questions{display:grid;gap:4px}
.hf-prequote-question{font-size:13px;padding:11px 0}
.hf-prequote-footer{border-top:2px solid var(--hf-brass,#BB9259);padding-top:17px}
.hf-prequote-footer span{color:#8a6638;font:700 10px/1.5 Manrope,Arial,sans-serif;letter-spacing:.13em}
.hf-prequote-footer p{font:400 12px/1.77 Manrope,Arial,sans-serif;color:var(--hf-muted,#53616a);margin:9px 0 0}
.hf-prequote-output{position:sticky;top:92px;background:#ece6dc;border:1px solid #d2c6b6;padding:29px;min-width:0}
.hf-prequote-output .eyebrow{color:#86643c}
.hf-prequote-output h3{font:500 clamp(33px,3vw,45px)/1.1 Editorial,Georgia,serif;margin:14px 0 20px;text-wrap:balance}
.hf-prequote-output>p:not(.eyebrow){color:var(--hf-muted,#53616a);font:400 13px/1.75 Manrope,Arial,sans-serif}
.hf-prequote-output details{margin-top:18px}
.hf-prequote-output summary{font:700 12px/1.5 Manrope,Arial,sans-serif;cursor:pointer;min-height:35px}
.hf-prequote-output pre{background:#fffdf9;border:1px solid #d3c5b0;color:var(--hf-navy,#1E3341);padding:18px;white-space:pre-wrap;overflow-wrap:anywhere;word-break:normal;max-height:410px;overflow:auto;font:400 11px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace}
.hf-prequote-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}
.hf-prequote-actions[hidden]{display:none!important}
.hf-prequote-actions button{background:transparent;border:1px solid #b1a187;color:var(--hf-navy,#1E3341);min-height:44px;font:650 11px/1.45 Manrope,Arial,sans-serif;cursor:pointer;border-radius:3px;padding:10px}
.hf-prequote-actions button:first-child{background:var(--hf-navy,#1E3341);color:#fff;border-color:var(--hf-navy,#1E3341)}
.hf-prequote-actions button:hover{background:#ddd2c0;color:#1e3341}
.hf-prequote-status{min-height:23px;font:600 11px/1.6 Manrope,Arial,sans-serif;color:var(--hf-muted,#53616a);margin-top:10px}
.hf-prequote-next{padding-top:20px;border-top:1px solid #d1c4b3;display:grid;gap:12px}
.hf-prequote-next strong{font:500 23px/1.2 Editorial,Georgia,serif}
.hf-prequote-next a{font:650 12px/1.5 Manrope,Arial,sans-serif;text-decoration:none;border-bottom:1px solid var(--hf-brass,#BB9259);padding-bottom:8px}
.hf-prequote-sources{background:var(--hf-navy,#1E3341);color:var(--hf-cream,#F4F0E8);padding-block:85px}
.hf-prequote-sources .eyebrow{color:var(--hf-gold-light,#FFE1AE)}
.hf-prequote-sources>div>p:not(.eyebrow){font:400 15px/1.8 Manrope,Arial,sans-serif;max-width:770px;color:#e4e8e5}
.hf-prequote-source-links{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:32px}
.hf-prequote-source-links a{display:grid;grid-template-columns:1fr auto;gap:10px;border-top:1px solid #eaca9277;padding-top:20px;color:var(--hf-cream,#F4F0E8);text-decoration:none}
.hf-prequote-source-links strong{font:500 26px/1.14 Editorial,Georgia,serif}
.hf-prequote-source-links span:nth-child(2){grid-column:1;color:#dce2e1;font:400 12px/1.75 Manrope,Arial,sans-serif}
.hf-prequote-source-links span:last-child{color:var(--hf-gold,#EACA92)}
.hf-prequote-close{padding-block:91px}
.hf-prequote-close nav{display:flex;flex-wrap:wrap;gap:22px;margin:26px 0}
.hf-prequote-close a{font:650 12px/1.6 Manrope,Arial,sans-serif;text-decoration:none;border-bottom:1px solid var(--hf-brass,#BB9259);padding:8px 0}
.hf-prequote-update{font:550 11px/1.7 Manrope,Arial,sans-serif;color:var(--hf-muted,#53616a)}
.hf-sr-only{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.hf-prequote-workshop :is(input,textarea,select,button,a,summary):focus-visible,.hf-prequote-sources a:focus-visible{outline:3px solid var(--hf-brass,#BB9259);outline-offset:3px}
@media(max-width:1000px){.hf-prequote-layout{grid-template-columns:1fr}.hf-prequote-output{position:static;max-width:none}.hf-prequote-hero-grid{gap:4%}}
@media(max-width:760px){.hf-prequote-hero-grid{grid-template-columns:1fr;padding-top:105px;padding-bottom:62px;gap:33px}.hf-prequote-hero h1{font-size:clamp(55px,10vw,72px)}.hf-prequote-hero .eyebrow{margin-top:30px}.hf-prequote-hero-grid>div:first-child>p:not(.eyebrow){font-size:15px}.hf-prequote-plate{min-height:250px;transform:none}.hf-prequote-plate-lines{min-height:155px}.hf-prequote-intro{padding-block:58px;grid-template-columns:1fr;gap:9px}.hf-prequote-workshop{padding-block:55px}.hf-prequote-form{padding:25px 22px}.hf-prequote-decision{grid-template-columns:1fr}.hf-prequote-source-links{grid-template-columns:1fr}.hf-prequote-sources{padding-block:65px}.hf-prequote-close{padding-block:62px}}
@media(max-width:420px){.hf-prequote-hero h1{font-size:52px}.hf-prequote-plate{padding:17px}.hf-prequote-area-choices{grid-template-columns:1fr}.hf-prequote-form{padding:22px 15px}.hf-prequote-output{padding:24px 18px}.hf-prequote-part>legend{font-size:24px}.hf-prequote-plate>div:first-child,.hf-prequote-plate>div:last-child{font-size:8px}}
@media(prefers-reduced-motion:reduce){.hf-prequote-button{transition:none}}
@media print{
 @page{margin:15mm}
 body[data-prequote-print] .hf-header,
 body[data-prequote-print] .hf-footer,
 body[data-prequote-print] .mobile-action,
 body[data-prequote-print] .hf-prequote-hero,
 body[data-prequote-print] .hf-prequote-intro,
 body[data-prequote-print] .hf-prequote-heading,
 body[data-prequote-print] .hf-prequote-form,
 body[data-prequote-print] .hf-prequote-sources,
 body[data-prequote-print] .hf-prequote-close,
 body[data-prequote-print] .hf-prequote-actions,
 body[data-prequote-print] .hf-prequote-status,
 body[data-prequote-print] .hf-prequote-next{display:none!important}
 body[data-prequote-print] .hf-page-scroll{height:auto!important;overflow:visible!important}
 body[data-prequote-print] .hf-prequote-workshop{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
 body[data-prequote-print] .hf-prequote-layout{display:block!important}
 body[data-prequote-print] .hf-prequote-output{width:100%!important;max-width:none!important;border:0!important;background:#fff!important;position:static!important;padding:0!important}
 body[data-prequote-print] .hf-prequote-output details{display:block!important}
 body[data-prequote-print] .hf-prequote-output pre{max-height:none!important;overflow:visible!important;white-space:pre-wrap!important;border:0!important;padding:12px 0!important}
}

/* Keep contextual navigation usable as a touch target without changing its type or destination. */
@media screen{.hf-prequote-close nav a{display:inline-flex;align-items:center;min-height:44px;max-width:100%;box-sizing:border-box}}
