:root{--navy:#25222b;--navy2:#332e3b;--blue:#a83d29;--sky:#ffd4b8;--pale:#fff1e8;--cream:#fffaf5;--ink:#25222b;--muted:#645550;--line:#ead8cf}
/* Quick actions are visible only at phone widths. */
.hga-landing-page .mobile-action-bar{display:none}
@media(max-width:767px){
 .hga-landing-page{padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))}
 .hga-landing-page .mobile-action-bar{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:fixed;inset:auto 0 0;z-index:1000;box-sizing:border-box;margin:0;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));background:#fffaf5;border-top:1px solid #ead8cf;box-shadow:0 -4px 18px rgba(37,34,43,.08)}
 .hga-landing-page .mobile-action-bar a{display:flex;align-items:center;justify-content:center;min-height:48px;margin:0;padding:8px 12px;box-sizing:border-box;border-radius:8px;font-size:16px;font-weight:700;line-height:1.4;text-align:center;text-decoration:none}
 .hga-landing-page .mobile-action-bar .mobile-call{background:#fffaf5;border:2px solid #25222b;color:#25222b}
 .hga-landing-page .mobile-action-bar .mobile-quote{background:#a83d29;border:2px solid #a83d29;color:#fff}
 .hga-landing-page .mobile-action-bar a:focus-visible{outline:3px solid #25222b;outline-offset:3px}
 .hga-landing-page #quote-form{scroll-margin-top:24px}
}
.hga-gallery img[src*="37601618"]{object-position:center 78%}
.hga-reviews .hga-gallery-grid article{border-radius:12px;box-shadow:0 6px 22px rgba(37,34,43,.06);border-top:3px solid #a83d29}
.hga-reviews .hga-gallery-grid article>p{font-weight:700;border-top:1px solid #ead8cf;padding-top:18px}
.hga-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-bottom:32px}.hga-gallery-grid figure{margin:0;background:#fff;border:1px solid #ead8cf;border-radius:16px;overflow:hidden}.hga-gallery-grid img{width:100%;height:290px;object-fit:cover;display:block}.hga-gallery-grid figcaption{padding:22px}.hga-gallery-grid h3{font-size:20px;color:#25222b;margin:0 0 12px}.hga-gallery-grid small{color:#645550}.hga-reviews{background:#fff1e8}.hga-gallery-grid article{padding:28px;border:1px solid #ead8cf;border-radius:16px;background:#fffaf5}.hga-gallery-grid blockquote{margin:22px 0;padding:0;border:0;font-size:19px;color:#25222b;line-height:1.7}.hga-sample-label{display:block;padding:10px;background:#f5e3d9;font-weight:700;font-size:12px}.hga-gallery-grid article p{font-size:14px;color:#645550}.hga-areas .chips{margin-bottom:28px}
@media(max-width:800px){.hga-gallery-grid{grid-template-columns:1fr}.hga-gallery-grid img{height:300px}}
#how-it-works.hga-process-pending:not(.hga-headings-started) .sub-header,#how-it-works.hga-process-pending:not(.hga-headings-started) .main-title,#how-it-works.hga-process-pending:not(.hga-headings-started) .description,#how-it-works.hga-process-pending:not(.hga-cards-started) .steps>li{opacity:0}
#how-it-works .steps>li{translate:0 0;box-shadow:0 10px 20px rgba(0,0,0,0);transition:translate 250ms ease-out,box-shadow 250ms ease-out}
#how-it-works .steps>li>b{background:#a83d29;transform:scale(1);transition:transform 250ms ease-out}
@media(hover:hover) and (pointer:fine){#how-it-works .steps>li:hover{translate:0 -6px;box-shadow:0 10px 20px rgba(0,0,0,.05)}#how-it-works .steps>li:hover>b{transform:scale(1.1)}}
@media(prefers-reduced-motion:reduce){#how-it-works .steps>li,#how-it-works .steps>li>b{transition:none}#how-it-works .steps>li:hover{translate:0 0}#how-it-works .steps>li:hover>b{transform:none}}
.hga-landing-page .skip-link:not(:focus){position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.hga-landing-page .skip-link:focus{position:fixed;top:40px;left:16px;z-index:100000;background:#fff;color:#25222b;padding:12px}
.site-header.hga-review-header{position:relative;top:auto;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:16px max(24px,calc((100% - 1180px)/2));background:#fffaf5;border-bottom:1px solid #ead8cf}
.hga-header-logo{display:block;flex:0 0 245px}.hga-header-logo img{display:block;width:245px;height:auto;max-height:124px;object-fit:contain}
.hga-header-nav,.hga-header-actions{display:flex;align-items:center;gap:24px}.hga-header-nav a{font-size:16px;font-weight:700;color:#25222b;text-decoration:none;white-space:nowrap}.hga-header-nav a:hover{text-decoration:underline}
.hga-header-phone{display:flex;flex-direction:column;color:#25222b;text-decoration:none;white-space:nowrap}.hga-header-phone small{font-size:12px;color:#645550}.hga-header-phone strong{font-size:22px;line-height:1.4}.hga-header-actions .button{padding:14px 20px;font-size:15px}
@media(max-width:1000px){.hga-header-nav{order:3;width:100%;justify-content:center;padding-top:12px;border-top:1px solid #ead8cf}}
@media(max-width:560px){.site-header.hga-review-header{padding:12px 16px;gap:12px}.hga-header-logo{flex-basis:160px}.hga-header-logo img{width:160px}.hga-header-phone strong{font-size:17px}.hga-header-phone small{font-size:11px}.hga-header-actions .button{display:none}.hga-header-nav{gap:24px}.hga-header-nav a{font-size:14px}}
.hero .eyebrow{display:none}
.hero h1,.section-head h2,.quote h2,.local h2,.faq h2{color:#25222b}
.hero h1 span,.kicker,.quote .kicker{color:#a83d29}
.hero .hero-lede{color:#382c29}
.hero .hero-actions .button.ghost{background:#fffaf5;color:#25222b;border:2px solid #25222b;box-shadow:none}
.hero .hero-actions .button.ghost:hover{background:#25222b;color:#fffaf5}
.button.primary{background:#a83d29;color:#fff}.button.primary:hover{background:#832c1e;color:#fff}
.hero .micro{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;color:#25222b;font-size:15px;line-height:1.5}
.hero .micro span{color:#25222b;background:#fffaf5;padding:8px 12px;border:1px solid #d8c4b9;border-radius:6px;font-weight:600}
.proof,.final{background:#332e3b;color:#fffaf5}.proof b,.proof span,.final h2{color:#fffaf5}
.process,.quote,.local-card{background:#fff1e8}.steps li{border-color:#a83d29}.quote-copy>p,.quote-copy li{color:#645550}.progress i.active{background:#a83d29}
.local-card{display:grid;grid-template-columns:1fr 1fr;gap:32px;color:#25222b}.local-card p,.local-card small{color:#645550}.local-card h2{font-size:clamp(32px,4vw,52px)}
.hga-montage{grid-column:1/-1;display:grid;grid-template-columns:1.3fr 1fr;gap:16px;overflow:hidden;border-radius:16px}
.hga-montage img{display:block;width:100%;height:220px;object-fit:cover;border-radius:12px;animation:hga-photo-arrive 1.2s ease both}
.hga-montage img:first-child{grid-row:span 2;height:456px}.hga-montage img:nth-child(2){animation-delay:.2s}.hga-montage img:nth-child(3){animation-delay:.4s}
.hga-portrait{display:flex;align-items:center;gap:18px;grid-column:1/-1}.hga-portrait img{width:100px;height:100px;object-fit:cover;border-radius:50%}
@keyframes hga-photo-arrive{from{opacity:0;transform:translateY(20px) scale(1.03)}to{opacity:1;transform:none}}
@media(max-width:640px){.local-card{grid-template-columns:1fr;padding:24px}.hga-montage{gap:10px}.hga-montage img{height:130px}.hga-montage img:first-child{height:270px}}
@media(prefers-reduced-motion:reduce){.hga-montage img{animation:none}}

/* Hero benefits: a quiet two-column checklist. */
.hero .micro{display:grid;grid-template-columns:max-content max-content;column-gap:30px;row-gap:12px;margin-top:28px;font-size:15px}
.hero .micro span{display:flex;align-items:baseline;gap:9px;padding:0;background:none;border:0;border-radius:0;color:#25222b;font-weight:600}
.hero .micro b{display:inline-block;color:#a83d29;font-size:19px;font-weight:800}
@media(max-width:560px){.hero .micro{grid-template-columns:1fr;gap:10px}}


/* Locations dropdown: native keyboard and touch disclosure. */
.hga-locations{position:relative}
.hga-locations summary{display:flex;align-items:center;gap:7px;min-height:44px;cursor:pointer;list-style:none;color:#25222b;font:700 16px/1.4 system-ui,sans-serif}
.hga-locations summary::-webkit-details-marker{display:none}
.hga-locations summary>span{transition:transform .2s ease}
.hga-locations[open] summary>span{transform:rotate(180deg)}
.hga-locations summary:hover,.hga-locations[open] summary{color:#a83d29}
.hga-locations-list{position:absolute;top:calc(100% + 8px);right:0;z-index:30;width:242px;margin:0;padding:8px;list-style:none;border:1px solid #ead8cf;border-radius:12px;background:#fffaf5;box-shadow:0 16px 40px rgba(37,34,43,.13)}
.hga-locations-list li{margin:0;padding:0;list-style:none}
.hga-header-nav .hga-locations-list a{display:block;padding:12px 14px;min-height:44px;border-radius:7px;font-size:15px;line-height:1.4;text-decoration:none}
.hga-header-nav .hga-locations-list a:hover,.hga-header-nav .hga-locations-list a:focus-visible{background:#fff1e8;color:#a83d29}
.hga-locations summary:focus-visible,.hga-locations-list a:focus-visible{outline:2px solid #a83d29;outline-offset:3px}
.hga-areas .chips span[id]{scroll-margin-top:32px}
.hga-areas .chips span:target{outline:2px solid #a83d29;outline-offset:4px}
@media(max-width:560px){.hga-header-nav{gap:8px 16px;flex-wrap:wrap}.hga-locations summary{font-size:14px}.hga-locations-list{width:226px}}
@media(prefers-reduced-motion:reduce){.hga-locations summary>span{transition:none}}

@media(max-width:560px){.hga-header-nav{position:relative}.hga-locations{position:static}}


/* Four trust statements with a responsive, balanced layout. */
.proof .proof-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));max-width:1180px}
.proof .proof-grid>div{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:154px;padding:28px 22px;text-align:center;border:0;border-right:1px solid rgba(255,250,245,.2)}
.proof .proof-grid>div:last-child{border-right:0}
.proof .proof-grid b{color:#fffaf5;font-size:clamp(32px,3vw,44px);line-height:1.1;letter-spacing:-.025em}
.proof .proof-grid span{color:#fffaf5;font-size:14px;line-height:1.5;font-weight:600}
.proof .proof-grid .trust-statement{font-size:clamp(20px,2vw,25px);line-height:1.3;letter-spacing:-.015em;max-width:220px}
@media(max-width:900px){.proof .proof-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.proof .proof-grid>div:nth-child(2){border-right:0}.proof .proof-grid>div:nth-child(-n+2){border-bottom:1px solid rgba(255,250,245,.2)}}
@media(max-width:440px){.proof .proof-grid>div{min-height:138px;padding:22px 12px}.proof .proof-grid b{font-size:30px}.proof .proof-grid .trust-statement{font-size:19px}.proof .proof-grid span{font-size:13px}}


/* Four featured services and seven compact detail disclosures. */
#services .service-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
@media(max-width:1000px){#services .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
#services .service-card img{height:230px}
#services .service-card>div{padding:24px}
#services .service-card h3{font-size:22px;color:#25222b;line-height:1.3;margin:8px 0 10px}
#services .service-card p{font-size:16px;line-height:1.6}
.hga-service-pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.hga-service-pill{display:inline-flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:10px 17px;border:1px solid #ead8cf;border-radius:999px;background:#fff1e8;color:#25222b;font:600 14px/1.4 system-ui,sans-serif;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.hga-service-pill>span{color:#a83d29}
.hga-service-pill:hover{background:#a83d29;border-color:#a83d29;color:#fffaf5}
.hga-service-pill:hover>span{color:inherit}
.hga-service-pill:focus-visible,.hga-service-close:focus-visible{outline:3px solid #a83d29;outline-offset:3px}
.hga-services-cta{margin-top:28px}
.hga-service-dialog{position:fixed;inset:0;width:min(560px,calc(100% - 32px));max-height:calc(100dvh - 40px);margin:auto;padding:0;border:1px solid #ead8cf;border-radius:18px;background:#fffaf5;color:#25222b;overflow:auto;box-shadow:0 24px 80px #0003}
.hga-service-dialog::backdrop{background:rgba(25,21,29,.62)}
.hga-service-dialog[open]{animation:hga-service-open .24s ease-out}
.hga-service-close{position:absolute;top:12px;right:12px;z-index:1;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid #ead8cf;border-radius:50%;background:#fffaf5;color:#25222b;font:30px/1 system-ui;cursor:pointer}
.hga-service-photo{display:block;width:100%;height:240px;object-fit:cover}
.hga-service-content{padding:28px}
.hga-service-content h3{font:700 30px/1.15 Georgia,serif;color:#25222b;margin:0 0 16px}
.hga-service-content>p:not(.kicker){color:#645550;line-height:1.65;margin-bottom:24px}
html.hga-dialog-open{overflow:hidden}
@keyframes hga-service-open{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:700px){#services .service-grid{grid-template-columns:1fr;gap:18px}#services .service-card img{height:190px}#services .service-card>div{padding:20px}#services .service-card h3{font-size:21px}.hga-service-pills{gap:8px}.hga-service-pill{font-size:13px;padding:10px 13px}.hga-service-photo{height:190px}.hga-service-content{padding:24px}.hga-service-content h3{font-size:27px}}
@media(prefers-reduced-motion:reduce){.hga-service-pill{transition:none}.hga-service-dialog[open]{animation:none}}


/* Clear numbered steps with quiet service icons. */
#how-it-works .steps>li{position:relative;padding:26px 28px}
#how-it-works .steps>li>b{margin-bottom:24px}
#how-it-works .hga-step-icon{position:absolute;top:30px;right:28px;display:block;width:30px;height:30px;fill:none;stroke:#a83d29;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
#how-it-works .steps h3{color:#25222b;font-size:21px;line-height:1.3;margin:0 0 12px}
#how-it-works .steps p{font-size:16px;line-height:1.6;color:#645550}


/* Issue-first intake, with contact details at the final gate. */
.hga-quote-shell{max-width:940px}
.hga-quote-heading{max-width:760px;margin:0 auto 32px;text-align:center}
.hga-quote-heading h2{font-size:clamp(32px,4vw,52px);line-height:1.08}
.hga-quote-heading>p:last-child{margin:18px 0 0;color:#645550}
#hga-lead-form{max-width:780px;margin:auto;padding:36px;border-color:#ead8cf;box-shadow:0 18px 45px rgba(37,34,43,.08)}
#hga-lead-form [hidden]{display:none!important}
#hga-lead-form .form-step legend{color:#25222b;font-size:26px;margin-bottom:12px;line-height:1.2}
#hga-lead-form .form-step legend:focus{outline:none}
#hga-lead-form .hga-form-hint{font-size:14px;line-height:1.6;color:#645550;margin-bottom:20px}
#hga-lead-form label{color:#25222b}
#hga-lead-form input:not([type=checkbox]):not([type=file]),#hga-lead-form textarea{border-color:#dacbc3;background:#fffdfb;color:#25222b}
#hga-lead-form input:focus,#hga-lead-form textarea:focus{outline-color:#a83d2933;border-color:#a83d29}
#hga-lead-form textarea{min-height:82px;resize:vertical}
#hga-lead-form .hga-upload{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px 18px;border:2px dashed #caa595;border-radius:12px;background:#fffaf5;text-align:center;cursor:pointer}
#hga-lead-form .hga-upload strong{color:#a83d29;font-size:17px}
#hga-lead-form .hga-upload>span{color:#645550;font-size:12px;font-weight:400}
#hga-lead-form .hga-upload input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;margin:0;padding:0}
#hga-lead-form .hga-upload:focus-within{outline:3px solid #a83d29;outline-offset:3px}
.hga-file-list{list-style:none;padding:0;margin:0 0 16px}
.hga-file-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px;padding:8px 0;border-bottom:1px solid #ead8cf}
.hga-file-list li>span{overflow-wrap:anywhere;min-width:0}
.hga-file-list button{flex-shrink:0;min-height:40px;border:0;background:none;color:#a83d29;cursor:pointer;font:600 13px system-ui}
#hga-lead-form .hga-check-row{display:flex;gap:10px;align-items:flex-start;font-weight:500;line-height:1.5}
#hga-lead-form input[type=checkbox]{accent-color:#a83d29;width:18px;height:18px;flex-shrink:0;margin:2px 0 0}
.hga-service-selector{border:1px solid #dacbc3;border-radius:10px;margin:24px 0 12px;padding:0 16px}
.hga-service-selector summary{padding:16px 0;cursor:pointer;font-weight:750;color:#25222b}
.hga-service-selector summary>span{display:block;margin-top:4px;font-size:12px;font-weight:500;color:#645550}
#hga-lead-form .checks{grid-template-columns:1fr 1fr;margin:0 0 16px}
#hga-lead-form .checks label{display:flex;gap:9px;align-items:flex-start;min-height:44px;margin:0;font-size:13px}
.hga-detail-card{border-top:1px solid #ead8cf;padding-top:20px;margin-top:8px}
.hga-detail-card h3{font-size:18px;color:#25222b;margin:0 0 12px}
#hga-lead-form .form-nav{gap:20px}
#hga-lead-form .form-nav .next{width:auto;margin:0}
#hga-lead-form .back{min-height:44px;padding:10px 0;color:#645550;flex-shrink:0}
.hga-request-summary{padding:16px 18px;border-radius:10px;background:#fffaf5;color:#645550;font-size:14px;line-height:1.6;margin:0 0 22px;overflow-wrap:anywhere}
.hga-request-summary p{margin:0 0 4px}
.hga-request-summary p:last-child{margin:0}
#hga-lead-form .form-top{color:#645550}
#hga-lead-form .progress i{background:#ead8cf}
#hga-lead-form .progress i.active{background:#a83d29}
#hga-lead-form button:disabled{opacity:.65;cursor:wait}
@media(max-width:600px){#hga-lead-form{padding:24px 18px}.hga-quote-heading{text-align:left}#hga-lead-form .form-step legend{font-size:23px}#hga-lead-form .checks{grid-template-columns:1fr}#hga-lead-form .form-nav{gap:12px}#hga-lead-form .form-nav .button{font-size:14px;padding:12px 16px}}
@media(prefers-reduced-motion:reduce){#hga-lead-form .form-step.active{animation:none}}

#hga-lead-form input,#hga-lead-form textarea{font-family:inherit}


/* Keep the homepage invitation compact; intake opens in its own module. */
#quote-form{padding:48px 0}
.hga-quote-invite{display:flex;align-items:center;justify-content:space-between;gap:32px}
.hga-quote-invite h2{font-size:clamp(28px,3.5vw,42px);line-height:1.12;max-width:650px}
.hga-quote-invite p:last-child{margin:14px 0 0;color:#645550}
.hga-quote-invite>.button{flex-shrink:0;white-space:nowrap}
.hga-quote-dialog{position:fixed;inset:0;width:min(660px,calc(100% - 32px));max-height:calc(100dvh - 40px);margin:auto;padding:0;border:1px solid #ead8cf;border-radius:18px;background:#fff;color:#25222b;overflow:auto;overscroll-behavior:contain;box-shadow:0 24px 80px #0003}
.hga-quote-dialog::backdrop{background:rgba(25,21,29,.65)}
.hga-quote-dialog[open]{animation:hga-service-open .24s ease-out}
.hga-quote-modal-header{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 24px;background:#fffaf5;border-bottom:1px solid #ead8cf}
.hga-quote-modal-header h2{font:700 18px/1.4 system-ui,sans-serif;letter-spacing:0;margin:0;color:#25222b}
.hga-quote-close{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:8px;background:transparent;color:#25222b;font:28px/1 system-ui;cursor:pointer}
.hga-quote-close:hover{background:#fff1e8}
.hga-quote-close:focus-visible{outline:2px solid #a83d29;outline-offset:2px}
.hga-quote-dialog #hga-lead-form{border:0;border-radius:0;box-shadow:none;padding:24px 28px;margin:0;max-width:none}
.hga-quote-dialog #hga-lead-form .form-top{margin-bottom:20px;font-size:13px}
.hga-quote-dialog #hga-lead-form .form-step legend{font-size:23px}
.hga-quote-dialog #hga-lead-form .hga-upload{padding:18px 14px;margin-bottom:14px}
.hga-quote-dialog #hga-lead-form .hga-form-hint{margin-bottom:14px;font-size:13px}
.hga-quote-dialog #hga-lead-form .hga-service-selector{margin-top:18px}
.hga-quote-dialog #hga-lead-form .hga-notes{margin:16px 0}
.hga-notes summary{font-size:14px;font-weight:600;cursor:pointer;color:#645550;padding:8px 0}
.hga-notes label{margin:10px 0 0}
@media(max-width:600px){.hga-quote-invite{display:block}.hga-quote-invite>.button{margin-top:22px}.hga-quote-dialog{width:100%;max-width:100%;height:100dvh;max-height:100dvh;border:0;border-radius:0}.hga-quote-modal-header{padding:10px 18px}.hga-quote-dialog #hga-lead-form{padding:22px 18px calc(24px + env(safe-area-inset-bottom,0px))}#quote-form{padding:36px 0}}
@media(prefers-reduced-motion:reduce){.hga-quote-dialog[open]{animation:none}}
/* Before-and-after gallery */
.hga-gallery-toolbar,.hga-gallery-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:26px 0}.hga-gallery-filters,.hga-gallery-arrows{display:flex;gap:8px;flex-wrap:wrap}.hga-gallery-toolbar button,.hga-photo-dialog button{background:transparent;color:#25222b;border:1px solid #e5cfc3;border-radius:30px;padding:10px 18px;cursor:pointer;font:inherit}.hga-gallery-filters button[aria-pressed=true]{background:#a83d29;border-color:#a83d29;color:#fff}.hga-project-track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#b44831 #f8e9df;padding:0 0 18px}.hga-project{flex:0 0 calc((100% - 48px)/3);min-width:0;scroll-snap-align:start;display:block;text-align:left;padding:0;overflow:hidden;border:1px solid #e9d8cd;border-radius:18px;background:#fff;color:#25222b;cursor:pointer;transition:box-shadow .35s,transform .35s;font:inherit}.hga-project[hidden]{display:none}.hga-project:hover{box-shadow:0 12px 25px #25222b15;transform:translateY(-3px)}.hga-project-photo{display:block;aspect-ratio:4/3;overflow:hidden;background:#f5eee8}.hga-project-photo img{display:block;width:100%;height:100%;object-fit:contain}.hga-project-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px}.hga-project-caption small{display:block;font-size:10px;letter-spacing:1.6px;text-transform:uppercase;color:#a83d29;margin-bottom:6px}.hga-project-caption strong{display:block;font-size:18px}.hga-project-caption>span:last-child{font-size:25px;color:#a83d29}.hga-paired{display:flex}.hga-paired>span{position:relative;display:block;width:50%;height:100%}.hga-paired img{object-fit:cover}.hga-paired b{position:absolute;top:8px;left:8px;background:#25222bbd;color:#fff;padding:3px 7px;font-size:11px}.hga-gallery-bottom small{color:#75665f;font-size:12px}.hga-gallery.is-gallery-ready .hga-project{animation:hgaGalleryEnter .65s both;animation-delay:var(--gallery-delay,0ms)}@keyframes hgaGalleryEnter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
.hga-photo-dialog{padding:20px;border:0;border-radius:20px;width:min(1060px,94vw);max-height:94dvh;background:#fffaf5;color:#25222b}.hga-photo-dialog::backdrop{background:#17151dde;backdrop-filter:blur(6px)}.hga-photo-dialog[open]{animation:hgaGalleryEnter .3s both}.hga-photo-top,.hga-photo-nav{display:flex;justify-content:space-between;align-items:center;gap:12px}.hga-photo-top h3{margin:0;font-size:20px}.hga-photo-top{margin-bottom:12px}.hga-photo-content{display:flex;justify-content:center}.hga-photo-content>.hga-project-photo{width:100%;height:min(68dvh,740px);aspect-ratio:auto;background:transparent}.hga-photo-content img{object-fit:contain}.hga-photo-nav{margin-top:14px}.hga-photo-nav span{font-size:12px}.hga-photo-dialog button:focus-visible,.hga-gallery button:focus-visible{outline:3px solid #117c89;outline-offset:3px}
@media(max-width:800px){.hga-project{flex-basis:calc((100% - 24px)/2)}}@media(max-width:540px){.hga-project{flex-basis:88%}.hga-project-track{gap:14px}.hga-gallery-toolbar{align-items:flex-start;flex-direction:column;gap:12px}.hga-gallery-toolbar button{padding:8px 13px;font-size:13px}.hga-gallery-arrows{align-self:flex-end}.hga-gallery-bottom{align-items:flex-start;flex-direction:column}.hga-photo-dialog{padding:12px}.hga-photo-dialog button{padding:8px 12px}.hga-photo-content>.hga-project-photo{height:60dvh}.hga-photo-top h3{font-size:17px}}
@media(prefers-reduced-motion:reduce){.hga-gallery.is-gallery-ready .hga-project,.hga-photo-dialog[open]{animation:none}.hga-project{transition:none}}

/* Continuous gallery flow; native touch scrolling remains available. */
.hga-project-track{scroll-snap-type:none}.hga-gallery.is-gallery-ready .hga-project{animation:none}.hga-project[data-gallery-clone]{animation:none}

.hga-expect-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:#f7e6da;color:#a83d29;font-weight:700;margin-bottom:25px}.hga-expectations .hga-gallery-grid h3{font-size:22px;margin-bottom:14px}.hga-expectations article>div{font-size:16px;line-height:1.75;color:#645550}

.site-footer .brand-footer{display:inline-flex;width:150px;background:#fffaf5;border-radius:9px;padding:9px 12px;margin-bottom:8px}.site-footer .hga-footer-logo{display:block;width:100%;height:auto;max-width:none}.hga-footer-legal{padding-bottom:30px;font-size:12px;color:#d5c9c3}.hga-footer-legal summary{cursor:pointer;text-decoration:underline;text-underline-offset:4px;width:fit-content}.hga-footer-legal details p{max-width:850px;line-height:1.8;margin-top:14px}
/* Compact conditional service questionnaire */
.hga-question-service{border:1px solid #e6d4c9;border-radius:12px;margin:12px 0;background:#fffaf5;overflow:hidden}.hga-question-service>summary{padding:16px;font-weight:700;cursor:pointer;color:#172e40}.hga-question-service[open]>summary{border-bottom:1px solid #e6d4c9;background:#fff1e8}.lead-form .hga-question-group{display:block;border:0;padding:16px;margin:0;min-width:0}.lead-form .hga-question-group[hidden]{display:none}.lead-form .hga-question-group legend{float:none;font:700 14px/1.5 Arial,sans-serif;color:#172e40;margin:0;padding-top:12px;width:100%}.lead-form .hga-question-option{display:flex;align-items:center;gap:10px;padding:10px;margin:8px 0;border:1px solid #e6d4c9;border-radius:8px;background:white;font-size:13px;font-weight:400;line-height:1.5}.lead-form .hga-question-option:has(input:checked){border-color:#a83d29;background:#fff1e8}.lead-form .hga-question-option>input{width:17px;height:17px;flex-shrink:0;margin:0;accent-color:#a83d29}.lead-form .hga-question-option>span:first-child{flex:1}.hga-quantity{display:flex;align-items:center;flex-shrink:0;gap:2px}.lead-form .hga-quantity input{width:47px;padding:8px 2px;text-align:center;font-size:14px;appearance:textfield}.hga-quantity input::-webkit-inner-spin-button{appearance:none}.hga-quantity button{width:32px;height:36px;border:0;border-radius:6px;background:#f5e5da;color:#172e40;cursor:pointer;font-size:20px}.hga-question-clear{background:none;border:0;color:#88402e;text-decoration:underline;cursor:pointer;font-size:12px;padding:6px 0}.hga-question-option:focus-within{outline:2px solid #167d88;outline-offset:2px}@media(max-width:400px){.lead-form .hga-question-group{padding:10px}.lead-form .hga-question-option{padding:8px;gap:7px}.hga-quantity button{width:28px}.lead-form .hga-quantity input{width:38px}}
.hga-quote-dialog #hga-lead-form .hga-question-group legend{font:700 14px/1.5 system-ui,sans-serif;margin:0;padding-top:12px}
#hga-lead-form .hga-question-option>input[type=radio],#hga-lead-form .hga-question-option>input[type=checkbox]{width:17px;height:17px;padding:0;margin:0;flex:0 0 17px}
#hga-lead-form .hga-quantity input{width:47px;margin:0;padding:8px 2px}
#hga-lead-form .hga-question-option{min-height:44px;padding:10px;margin:6px 0}
#hga-lead-form .hga-question-option>input[type=radio],#hga-lead-form .hga-question-option>input[type=checkbox]{min-height:0}
/* Quote motion: transform/opacity only, with native focus and reduced-motion support. */
#hga-lead-form{position:relative;isolation:isolate}
#hga-lead-form [hidden]{display:none!important}
#hga-lead-form .form-step.active{animation:none}
#hga-lead-form .hga-step-ghost{position:absolute;pointer-events:none;z-index:2;background:#fffaf6;border:0;margin:0;padding:0;min-width:0}
#hga-lead-form .progress i{position:relative;overflow:hidden;background:#ead8cf!important}
#hga-lead-form .progress i::after{content:"";position:absolute;inset:0;background:#a83d29;transform:scaleX(0);transform-origin:left;transition:transform 350ms cubic-bezier(.16,1,.3,1)}
#hga-lead-form .progress i.active::after{transform:scaleX(1)}
#hga-lead-form .button{transition:transform 250ms cubic-bezier(.16,1,.3,1),background-color 250ms ease-out}
#hga-lead-form .button:not(:disabled):hover{transform:scale(1.02);background-color:#94331f}
#hga-lead-form .button:not(:disabled):active{transform:scale(.98)}
#hga-lead-form .button:disabled{cursor:wait}
#hga-lead-form .hga-floating-field{position:relative;display:block;margin:0 0 18px;padding:0}
#hga-lead-form .hga-floating-field input,#hga-lead-form .hga-floating-field textarea{padding:29px 14px 10px;margin:0;min-height:64px;border:1px solid #dac7bd;border-radius:10px;background:#fffdfb;transition:border-color 250ms ease-out;box-sizing:border-box;width:100%}
#hga-lead-form .hga-floating-field textarea{padding-top:34px}
#hga-lead-form .hga-floating-caption{position:absolute;top:21px;left:15px;right:10px;font-size:14px;line-height:20px;font-weight:500;color:#6d625b;pointer-events:none;transform-origin:left top;transition:transform 250ms cubic-bezier(.16,1,.3,1),color 250ms ease-out;z-index:1}
#hga-lead-form .hga-floating-field:focus-within .hga-floating-caption,#hga-lead-form .hga-floating-field.has-value .hga-floating-caption,#hga-lead-form .hga-floating-field:has(textarea) .hga-floating-caption{transform:translateY(-14px) scale(.83);color:#983d2b}
#hga-lead-form .hga-floating-field::after{content:"";position:absolute;inset:0;border-radius:10px;box-shadow:0 0 0 3px rgba(168,61,41,.09);opacity:0;pointer-events:none;transition:opacity 250ms ease-out}
#hga-lead-form .hga-floating-field:focus-within::after{opacity:1}
#hga-lead-form .hga-floating-field input:focus,#hga-lead-form .hga-floating-field textarea:focus{outline:2px solid transparent;border-color:#a83d29;box-shadow:none}
#hga-lead-form .hga-processing,#hga-lead-form .form-success{padding:36px 8px;text-align:center;outline:none}
#hga-lead-form .hga-processing h3,#hga-lead-form .form-success h3{font-family:Georgia,serif;font-size:32px;line-height:1.15;margin:16px 0}
#hga-lead-form .hga-processing p,#hga-lead-form .form-success p{max-width:420px;margin:16px auto;color:#655b56;line-height:1.65}
#hga-lead-form .hga-processing small{display:block;color:#796b63;font-size:12px;line-height:1.5}
#hga-lead-form .hga-state-eyebrow{display:block;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#a83d29}
#hga-lead-form .hga-processing-mark{height:72px;display:flex;justify-content:center;align-items:center;gap:9px;margin:0 0 24px}
#hga-lead-form .hga-processing-mark span{width:14px;height:14px;border-radius:4px;background:#a83d29;animation:hga-wait-breathe 400ms cubic-bezier(.16,1,.3,1) infinite alternate}
#hga-lead-form .hga-processing-mark span:nth-child(2){animation-delay:100ms;background:#ca7859}
#hga-lead-form .hga-processing-mark span:nth-child(3){animation-delay:200ms;background:#e8b394}
#hga-lead-form #hga-quote-amount{font-size:36px;font-weight:700;color:#25222b}
@keyframes hga-wait-breathe{from{opacity:.4;transform:translateY(5px) scale(.85)}to{opacity:1;transform:translateY(-5px) scale(1)}}
@media(prefers-reduced-motion:reduce){#hga-lead-form *,#hga-lead-form *::before,#hga-lead-form *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* About section: the full team photo, paired with the existing introduction. */
#about .hga-about-team{grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:clamp(28px,4vw,52px);align-items:center;padding:clamp(24px,3vw,42px);border-radius:28px}
#about .hga-team-photo{margin:0;min-width:0;overflow:hidden;border-radius:18px;background:#fffaf6;box-shadow:0 12px 30px rgba(61,38,27,.08)}
#about .hga-team-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}
#about .hga-team-photo figcaption{padding:13px 18px;font-size:12px;letter-spacing:.04em;color:#75645c;border-top:1px solid #ead8cf}
#about .hga-about-copy{min-width:0}
#about .hga-about-copy .kicker{margin:0 0 14px;color:#a83d29}
#about .hga-about-copy h2{font-size:clamp(32px,3.1vw,44px);line-height:1.05;margin:0 0 24px;letter-spacing:-.035em}
#about .hga-about-copy>p:not(.kicker){font-size:15px;line-height:1.65;margin:0 0 18px}
#about .hga-about-copy small{display:block;font-size:12px;line-height:1.5;margin-top:24px}
@media(max-width:850px){#about .hga-about-team{grid-template-columns:minmax(0,1fr);gap:28px}#about .hga-team-photo{max-width:640px;width:100%;justify-self:center}#about .hga-about-copy h2{max-width:600px;font-size:clamp(32px,5vw,42px)}}
@media(max-width:480px){#about .hga-about-team{padding:20px;gap:24px;border-radius:22px}#about .hga-team-photo{border-radius:13px}#about .hga-team-photo figcaption{padding:11px 13px}#about .hga-about-copy h2{font-size:32px}}

/* Quote delivery and measured units. */
#hga-quote-pdf[hidden]{display:none!important}#hga-quote-pdf{margin:8px 0 16px;display:inline-flex} .hga-quantity input{min-width:64px} .hga-question-option>span:first-child{overflow-wrap:anywhere}

/* Quote CTAs in all caps */
a[href="#quote-form"].button,a[href="#quote-form"].mobile-quote,.mobile-quote,button[aria-controls="hga-quote-dialog"],#submit-request,.site-footer a[href="#quote-form"]{text-transform:uppercase;letter-spacing:.04em}

/* Call us: service-area subline */
.hga-landing-page .mobile-action-bar .mobile-call{flex-direction:column;gap:2px}
.hga-landing-page .mobile-action-bar .mobile-call small{display:block;font-size:11px;font-weight:600;line-height:1.2}


/* Compact Yes/No fines control; override the landing-form text-input defaults. */
#hga-lead-form fieldset.hga-fines-question{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;min-width:0;margin:12px 0 16px;padding:10px 12px 12px;border:1px solid #e6d4c9;border-radius:10px;background:#fffdfb}
#hga-lead-form fieldset.hga-fines-question legend{float:none;width:100%;margin:0 0 2px;padding:0 3px;font-size:14px;line-height:1.4;font-weight:700;color:#172e40}
#hga-lead-form fieldset.hga-fines-question label{display:inline-flex;flex:0 0 auto;align-items:center;gap:7px;width:auto;margin:0;padding:7px 10px;border:1px solid #e6d4c9;border-radius:8px;background:#fff;font-size:13px;line-height:1.25;font-weight:600;cursor:pointer}
#hga-lead-form fieldset.hga-fines-question input[type=radio]{appearance:auto;display:inline-block;flex:0 0 18px;width:18px;height:18px;min-width:18px;min-height:18px;margin:0;padding:0;accent-color:#a83d29}

