@import "https://fonts.googleapis.com/css2?family=Mulish:wght@400;500;600;700&family=Quicksand:wght@400;500;600;700&display=swap";:root{--color-primary:#ff6900;--color-primary-dark:#161616;--color-primary-light:#fff4eb;--color-accent:#ff6900;--color-bg:#fff;--color-surface:#fff;--color-surface-alt:#f7f7f7;--color-border:#d8d8d8;--color-border-dark:#161616;--color-text:#1b1b1b;--color-text-muted:#5e5e5e;--color-text-light:#777;--color-success:#1f6f2a;--color-success-bg:#edf8ef;--color-error:#9b1c1c;--color-error-bg:#fff1f1;--color-warning-bg:#fff8f0;--color-warning-border:#ff6900;--font-heading:"Mulish", "Quicksand", Arial, sans-serif;--font-body:"Quicksand", "Mulish", Arial, sans-serif;--radius:2px;--radius-lg:2px;--shadow-sm:none;--shadow-md:none;--shadow-lg:none;--max-width:1112px;--section-pad:5rem 1.5rem}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--color-bg);color:var(--color-text);font-size:16px;font-weight:400;line-height:1.65}img{max-width:100%;display:block}a{color:var(--color-text);text-decoration:none}a:hover{text-decoration:none}.container{max-width:var(--max-width);margin:0 auto;padding:0 1.5rem}section{padding:var(--section-pad)}.brand-rule,.section-header:after,.form-card h3:after,.estimate-summary h3:after,.footer__name:after{content:"";background:var(--color-border-dark);width:90px;height:2px;display:block}.header{z-index:100;color:var(--color-text);background:#fff;border-bottom:1px solid #efefef;position:sticky;top:0}.header__inner{max-width:var(--max-width);justify-content:space-between;align-items:center;min-height:72px;margin:0 auto;padding:1rem 1.5rem;display:flex}.header__logo{flex-direction:column;line-height:1.25;display:flex}.header__logo-name{font-family:var(--font-heading);color:var(--color-text);letter-spacing:.08em;text-transform:uppercase;font-size:1rem;font-weight:600}.header__logo-sub{color:var(--color-text-muted);letter-spacing:.14em;text-transform:uppercase;font-size:.72rem}.header__nav{align-items:center;gap:1.9rem;display:flex}.header__nav a{color:var(--color-text);letter-spacing:.18em;text-transform:uppercase;padding:.9rem 0;font-size:.82rem;font-weight:500;position:relative}.header__nav a:before{content:"";background:var(--color-border-dark);transform-origin:0;height:2px;transition:transform .2s;position:absolute;top:.18rem;left:0;right:0;transform:scaleX(0)}.header__nav a:hover:before,.header__nav a:focus-visible:before{transform:scaleX(1)}.header__hamburger{cursor:pointer;color:var(--color-text);background:0 0;border:none;flex-direction:column;gap:5px;padding:.25rem;display:none}.header__hamburger span{background:var(--color-text);width:25px;height:2px;transition:transform .2s,opacity .2s;display:block}.header__mobile-nav{border-top:1px solid var(--color-border);background:#fff;flex-direction:column;gap:0;padding:1rem 1.5rem;display:flex}.header__mobile-nav a{color:var(--color-text);letter-spacing:.18em;text-transform:uppercase;border-bottom:1px solid var(--color-border);padding:.85rem 0;font-size:.82rem}.btn{letter-spacing:.16em;text-transform:uppercase;cursor:pointer;text-align:center;border:2px solid #0000;border-radius:0;justify-content:center;align-items:center;min-height:44px;padding:.78rem 1.8rem;font-size:.82rem;font-weight:700;line-height:1.25;transition:background .2s,color .2s,border-color .2s,transform .1s;display:inline-flex}.btn:hover{text-decoration:none}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--color-primary-dark);color:#fff;border-color:var(--color-primary-dark)}.btn-primary:hover{background:#000;border-color:#000}.btn-secondary{color:var(--color-primary-dark);border-color:var(--color-primary-dark);background:0 0}.btn-secondary:hover{background:var(--color-primary-dark);color:#fff}.btn-accent{background:var(--color-primary);color:var(--color-primary-dark);border-color:var(--color-primary)}.btn-accent:hover{background:var(--color-primary-dark);color:#fff;border-color:var(--color-primary-dark)}.btn-sm{min-height:38px;padding:.55rem 1.1rem;font-size:.72rem}.btn-lg{padding:.95rem 2rem;font-size:.82rem}.btn:disabled{opacity:.55;cursor:not-allowed}.hero{color:var(--color-text);background:#fff;padding:2rem 1.5rem 2.6rem}.hero__inner{max-width:var(--max-width);grid-template-columns:minmax(320px,.78fr) minmax(420px,1.17fr);align-items:stretch;min-height:460px;margin:0 auto;display:grid}.hero__panel{background:var(--color-primary);color:#000;text-align:center;flex-direction:column;justify-content:center;padding:clamp(1.35rem,2.6vw,2.35rem) clamp(1.8rem,3.6vw,3.4rem);display:flex}.hero__parent-brand{letter-spacing:.2em;text-transform:uppercase;margin-bottom:.8rem;font-size:.78rem;font-weight:700;line-height:1.3}.hero__logo-card{width:min(100%,315px);margin:0 auto .95rem}.hero__service-logo{filter:drop-shadow(0 1px #ffffff2e);width:100%;height:auto}.hero__panel .brand-rule{margin:0 auto 1.05rem}.hero__eyebrow{text-transform:uppercase;letter-spacing:.2em;color:#161616;margin-bottom:.65rem;font-size:.78rem;font-weight:600}.hero__headline{font-family:var(--font-heading);margin-bottom:.65rem;font-size:clamp(1.45rem,2.45vw,1.95rem);font-weight:400;line-height:1.15}.hero__subheading{color:#000000bd;max-width:440px;margin:0 auto 1rem;font-size:.9rem;line-height:1.55}.hero__actions{flex-wrap:wrap;justify-content:center;gap:.9rem;margin-bottom:0;display:flex}.hero__note{color:#000000ad;font-size:.86rem}.hero__image-wrap{background:#ece6dc;justify-content:center;align-items:center;min-height:460px;display:flex;overflow:hidden}.hero__image{object-fit:cover;object-position:center 38%;width:100%;height:100%;max-height:460px}.how-it-works{background:var(--color-surface-alt);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.section-header{text-align:center;margin-bottom:3rem}.section-header:after{margin:1.1rem auto 0}.section-header h2{font-family:var(--font-heading);color:var(--color-text);margin-bottom:.45rem;font-size:clamp(1.75rem,3vw,2.4rem);font-weight:400}.section-header p{color:var(--color-text-muted);max-width:620px;margin:0 auto;font-size:1rem}.steps{max-width:var(--max-width);border-top:1px solid var(--color-border);border-left:1px solid var(--color-border);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:0;margin:0 auto;display:grid}.step{text-align:center;background:var(--color-surface);border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);padding:2rem 1.15rem}.step__number{background:var(--color-primary);width:46px;height:46px;color:var(--color-primary-dark);justify-content:center;align-items:center;margin:0 auto 1rem;font-size:1.15rem;font-weight:700;display:flex}.step h3{letter-spacing:.08em;text-transform:uppercase;color:var(--color-text);margin-bottom:.55rem;font-size:.96rem;font-weight:700}.step p{color:var(--color-text-muted);font-size:.9rem;line-height:1.55}.request-section{background:var(--color-bg)}.request-paths{grid-template-columns:1fr 1fr;gap:1rem;max-width:900px;margin:0 auto 1.5rem;display:grid}.request-path{border:2px solid var(--color-border);background:var(--color-surface);min-height:134px;color:var(--color-text);cursor:pointer;text-align:left;font:inherit;gap:.45rem;padding:1.35rem;transition:border-color .2s,background .2s,transform .1s;display:grid}.request-path:hover,.request-path:focus-visible,.request-path.is-active{border-color:var(--color-primary-dark);background:var(--color-primary-light)}.request-path:active{transform:translateY(1px)}.request-path__label{color:var(--color-text);font-family:var(--font-heading);font-size:1.18rem;font-weight:600}.request-path__text{color:var(--color-text-muted);font-size:.95rem;line-height:1.55}.request-placeholder{border:1px dashed var(--color-border);background:var(--color-surface-alt);max-width:900px;color:var(--color-text-muted);text-align:center;margin:0 auto;padding:1.1rem 1.25rem}.request-workflow{margin-top:1.5rem}.request-workflow:focus{outline:none}.request-workflow:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px}.estimate-layout{max-width:var(--max-width);grid-template-columns:1fr 1fr;align-items:start;gap:2rem;margin:0 auto;display:grid}.form-card{background:var(--color-surface);border:1px solid var(--color-border);padding:2rem}.form-card h3{font-family:var(--font-heading);color:var(--color-text);margin-bottom:1.5rem;padding-bottom:1rem;font-size:1.45rem;font-weight:400;position:relative}.form-card h3:after{position:absolute;bottom:0;left:0}.form-group{margin-bottom:1.2rem}.form-group label{letter-spacing:.12em;text-transform:uppercase;color:var(--color-text);margin-bottom:.45rem;font-size:.78rem;font-weight:700;display:block}.form-group label .required{color:var(--color-primary);margin-left:.2rem}.form-control{border:1px solid var(--color-border);width:100%;min-height:45px;font-size:1rem;font-family:var(--font-body);background:var(--color-surface);color:var(--color-text);appearance:none;border-radius:0;padding:.66rem .85rem;transition:border-color .2s,box-shadow .2s}.form-control:focus{border-color:var(--color-primary-dark);box-shadow:inset 0 -2px 0 var(--color-primary);outline:none}select.form-control{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23161616' d='M6 8L0 0h12z'/%3E%3C/svg%3E");background-position:right .9rem center;background-repeat:no-repeat;padding-right:2.5rem}textarea.form-control{resize:vertical;min-height:110px}.form-hint{color:var(--color-text-muted);margin-top:.35rem;font-size:.84rem}.upload-fallback-note{color:var(--color-text-muted);background:var(--color-primary-light);border-left:4px solid var(--color-primary);margin-top:.55rem;padding:.65rem .8rem}.upload-fallback-note a{color:var(--color-primary-dark);border-bottom:1px solid var(--color-primary-dark);font-weight:700}.file-error{color:var(--color-error);font-weight:700}.field-optional{color:var(--color-text-light);margin-left:.25rem;font-size:.72rem;font-weight:500}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.file-input-wrapper{border:1px dashed var(--color-text);text-align:center;cursor:pointer;padding:1.4rem;transition:border-color .2s,background .2s;position:relative}.file-input-wrapper:hover{border-color:var(--color-primary);background:var(--color-primary-light)}.file-input-wrapper input[type=file]{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.file-input-label{color:var(--color-text-muted);font-size:.92rem}.file-input-label strong{color:var(--color-primary-dark)}.form-actions{margin-top:1.5rem}.form-actions .btn{width:100%}.estimate-summary{background:var(--color-surface);border:1px solid var(--color-border);padding:2rem;position:sticky;top:92px}.estimate-summary h3{font-family:var(--font-heading);color:var(--color-text);margin-bottom:1.5rem;padding-bottom:1rem;font-size:1.45rem;font-weight:400;position:relative}.estimate-summary h3:after{position:absolute;bottom:0;left:0}.estimate-placeholder{text-align:center;color:var(--color-text-muted);border:1px dashed var(--color-border);padding:2rem 1rem}.estimate-placeholder .icon{margin-bottom:.75rem;font-size:2.4rem}.estimate-placeholder p{font-size:.95rem;line-height:1.6}.estimate-manual{text-align:center;background:var(--color-warning-bg);border:1px solid var(--color-warning-border);margin-bottom:1rem;padding:1.5rem}.estimate-manual h4{color:var(--color-primary-dark);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.5rem;font-size:1.05rem}.estimate-manual p{color:var(--color-text-muted);font-size:.9rem}.estimate-line-items{margin-bottom:1rem}.estimate-line{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:baseline;gap:1rem;padding:.65rem 0;font-size:.95rem;display:flex}.estimate-line:last-child{border-bottom:none}.estimate-line__label{color:var(--color-text-muted);flex:1}.estimate-line__value{color:var(--color-text);text-align:right;font-weight:700}.estimate-total{background:var(--color-primary);color:var(--color-primary-dark);border:1px solid var(--color-primary);justify-content:space-between;align-items:center;margin:1rem 0;padding:1rem 1.1rem;display:flex}.estimate-total__label{letter-spacing:.14em;text-transform:uppercase;font-size:.82rem;font-weight:700}.estimate-total__value{font-size:1.32rem;font-weight:700}.estimate-next-step{margin-top:1.25rem}.estimate-next-step .btn{width:100%}.disclaimer{background:var(--color-warning-bg);border:1px solid var(--color-warning-border);border-left:4px solid var(--color-warning-border);color:var(--color-text-muted);margin-top:1rem;padding:.9rem 1rem;font-size:.85rem;line-height:1.6}.disclaimer strong{color:var(--color-text)}.quote-form-wrap{max-width:900px;margin:0 auto}.quote-handoff{overflow:hidden}.quote-prep{margin-bottom:1.25rem}.quote-no-estimate{border:1px dashed var(--color-border);background:var(--color-surface-alt);justify-content:space-between;align-items:center;gap:1rem;padding:1.4rem;display:flex}.quote-no-estimate h4{letter-spacing:.12em;text-transform:uppercase;margin-bottom:0;font-size:.86rem}.quote-no-estimate p{color:var(--color-text-muted);margin:0;font-size:.95rem;line-height:1.6}.quote-no-estimate .btn{flex:none}.quote-included-message{border-left:4px solid var(--color-primary);background:var(--color-primary-light);color:var(--color-text);margin-bottom:.85rem;padding:.75rem 1rem;font-size:.92rem;font-weight:700}.quote-recap{border:1px solid var(--color-border);background:var(--color-surface);grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:1rem;display:grid}.quote-recap__item{border-right:1px solid var(--color-border);gap:.25rem;min-height:72px;padding:.85rem .9rem;display:grid}.quote-recap__item:last-child{border-right:0}.quote-recap__item span{color:var(--color-text-muted);letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:700}.quote-recap__item strong{color:var(--color-text);font-size:.95rem;line-height:1.35}.quote-estimate-summary{background:var(--color-surface-alt);border:1px solid var(--color-border);margin-bottom:1.2rem;padding:.75rem 1rem;font-size:.9rem}.font-selector-wrap{border-top:1px solid var(--color-border);margin-top:1.25rem;padding-top:1.25rem}.font-selector-wrap h4{letter-spacing:.12em;text-transform:uppercase;margin-bottom:.35rem;font-size:.86rem}.font-selected-summary{border:1px solid var(--color-border);background:var(--color-surface-alt);min-height:52px;color:var(--color-text-muted);grid-template-columns:1fr auto;align-items:center;gap:.3rem .8rem;margin-bottom:.8rem;padding:.75rem .9rem;font-size:.88rem;display:grid}.font-selected-summary__text{gap:.2rem;display:grid}.font-selected-summary strong{color:var(--color-text)}.font-selected-summary span{line-height:1.45}.font-selected-summary__actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.75rem;display:flex}.link-button{color:var(--color-primary-dark);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.font-picker-panel{gap:.8rem;padding-top:.35rem;display:grid}.font-list{gap:.55rem;max-height:340px;padding-right:.2rem;display:grid;overflow:auto}.font-option{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.7rem;min-height:58px;padding:.7rem .8rem;transition:border-color .2s,background .2s;display:grid}.font-option:hover,.font-option.is-selected{border-color:var(--color-primary-dark);background:var(--color-primary-light)}.font-option input{block-size:1rem;inline-size:1rem;accent-color:var(--color-primary-dark)}.font-option__main{gap:.15rem;min-width:0;display:grid}.font-option__name{color:var(--color-text);font-weight:700;line-height:1.25}.font-option__meta,.font-option__details{color:var(--color-text-muted);font-size:.82rem;line-height:1.35}.font-option__details{text-align:right;white-space:nowrap}.font-list-empty{border:1px dashed var(--color-border);margin-top:0;padding:1rem}.success-message{text-align:center;background:var(--color-success-bg);border:1px solid var(--color-success);color:var(--color-success);padding:3rem 2rem}.success-message h3{margin-bottom:.75rem;font-size:1.5rem}.error-message{background:var(--color-error-bg);border:1px solid var(--color-error);color:var(--color-error);margin-bottom:1rem;padding:.75rem 1rem;font-size:.9rem}.faq{background:var(--color-bg)}.faq__list{border-top:1px solid var(--color-border);max-width:820px;margin:0 auto}.faq__item{border-bottom:1px solid var(--color-border);background:var(--color-surface);overflow:hidden}.faq__question{text-align:left;width:100%;color:var(--color-text);cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:1rem;padding:1.2rem .25rem;font-size:1rem;font-weight:700;transition:color .2s;display:flex}.faq__question:hover{color:var(--color-primary)}.faq__icon{color:var(--color-primary);flex-shrink:0;font-size:1.3rem;transition:transform .2s}.faq__item--open .faq__icon{transform:rotate(45deg)}.faq__answer{color:var(--color-text-muted);padding:0 .25rem 1.2rem;font-size:.96rem;line-height:1.75}.footer{background:var(--color-primary-dark);color:#dcdcdc;text-align:center;padding:2.8rem 1.5rem}.footer__name{font-family:var(--font-heading);color:#fff;margin-bottom:.95rem;font-size:1.15rem;font-weight:400;position:relative}.footer__name:after{background:#fff;margin:.8rem auto 0}.footer__contact{color:#fff;margin-bottom:.35rem;font-size:.95rem}.footer__disclaimer{color:#fff9;max-width:560px;margin:.75rem auto 0;font-size:.8rem;line-height:1.6}.footer__copy{color:#ffffffb3;margin-top:.5rem;font-size:.85rem}@media (width<=900px){.hero{padding:2rem 1rem 3rem}.hero__inner{grid-template-columns:1fr;min-height:0}.hero__panel{min-height:420px}.hero__image-wrap{min-height:360px}.hero__image{object-position:center 34%;max-height:420px}.estimate-layout{grid-template-columns:1fr}.estimate-summary{position:static}}@media (width<=768px){:root{--section-pad:3.3rem 1.15rem}.header__inner{min-height:66px;padding:.85rem 1.25rem}.header__nav{display:none}.header__hamburger{display:flex}.form-row,.request-paths{grid-template-columns:1fr}.quote-no-estimate{flex-direction:column;align-items:flex-start}.quote-recap{grid-template-columns:1fr 1fr}.quote-recap__item:nth-child(2){border-right:0}.quote-recap__item:nth-child(-n+2){border-bottom:1px solid var(--color-border)}.font-option{grid-template-columns:auto minmax(0,1fr)}.font-option__details{text-align:left;white-space:normal;grid-column:2}.steps{grid-template-columns:1fr 1fr}}@media (width<=520px){.container{padding:0 1rem}.hero{padding:1rem 0 2.5rem}.hero__panel{min-height:470px;padding:2.25rem 1.4rem}.hero__logo-card{width:min(100%,315px)}.hero__actions{flex-direction:column;align-items:stretch}.hero__image-wrap{min-height:320px}.steps{grid-template-columns:1fr}.form-card,.estimate-summary{padding:1.35rem}.font-selected-summary{grid-template-columns:1fr}.font-selected-summary__actions{justify-content:flex-start}.quote-recap{grid-template-columns:1fr}.quote-recap__item,.quote-recap__item:nth-child(2){border-right:0}.quote-recap__item:nth-child(-n+3){border-bottom:1px solid var(--color-border)}.estimate-total{flex-direction:column;align-items:flex-start;gap:.3rem}}
