/* Haim Realtors: construction site styling. Square corners, drafting-grid details, photo banners. */
:root{--g:#9D790C;--k:#171717;--c:#252525;--l:#EAEAEA;--m:#777}
.hr-top{background:var(--k);color:#d9d9d9;font-size:13px}
.hr-top__in{max-width:1240px;margin:0 auto;padding:8px 20px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.hr-top a{color:#fff;text-decoration:none;margin-left:18px;font-weight:600}
.hr-top a:hover{color:#e5c65b}
@media(max-width:600px){.hr-top__in>span:first-child{display:none}.hr-top__in{justify-content:flex-end}}
.hr-btn,.hr-card,.hr-itemfacts,.hx-card{border-radius:2px}
/* containers */
.e-con.hz-c{display:block!important;max-width:none!important;width:100%;padding:0!important;margin:0}
.e-con.hz-in{display:block!important;max-width:1240px!important;margin:0 auto!important;padding:72px 20px!important;width:100%}
.hz-in>.elementor-widget,.hz-c>.elementor-widget{width:100%;max-width:100%}
.hz-dark{background:var(--k);color:#fff}
.hz-dark .elementor-heading-title,.hz-dark p,.hz-dark li{color:#fff}
.hz-grid{background-color:var(--k);background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:34px 34px}
.hz-grey{background:#F7F7F5}
.hz-eyebrow .elementor-heading-title{font:700 13px Manrope,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--g);display:flex;align-items:center;gap:12px;margin:0 0 8px}
.hz-eyebrow .elementor-heading-title::before{content:"";width:34px;height:2px;background:var(--g)}
.hz-h2 .elementor-heading-title{font:800 clamp(26px,3.6vw,42px)/1.14 Manrope,sans-serif;margin:0 0 14px;color:var(--k);max-width:760px}
.hz-dark .hz-h2 .elementor-heading-title{color:#fff}
.hz-lead{max-width:720px;color:#555;font-size:17px;line-height:1.7;margin-bottom:32px}
.hz-dark .hz-lead{color:#cfcfcf}
.hz-lead p{margin:0}
/* banner */
.e-con.hb{display:flex!important;flex-direction:column;justify-content:flex-end;min-height:380px;max-width:none!important;width:100%;padding:80px 20px 54px!important;background:#171717 center/cover no-repeat;position:relative;color:#fff;margin:0}
.e-con.hb::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(23,23,23,.9) 0%,rgba(23,23,23,.62) 55%,rgba(23,23,23,.25) 100%)}
.hb>.elementor-widget{position:relative;z-index:1;max-width:1240px;width:100%;margin-left:auto;margin-right:auto}
.hb-crumb{font:600 13px Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#e5c65b}
.hb-crumb p{margin:0}
.hb-title .elementor-heading-title{font:800 clamp(32px,5.6vw,62px)/1.06 Manrope,sans-serif;color:#fff;margin:6px 0 0;max-width:820px}
.hb-title .elementor-heading-title::after{content:"";display:block;width:64px;height:4px;background:var(--g);margin-top:20px}
.hb-sub{max-width:1240px}
.hb-sub p{max-width:640px;color:#ececec;font-size:18px;line-height:1.65;margin:16px 0 0}
.e-con.hb-btns{display:flex!important;flex-direction:row!important;flex-wrap:wrap;gap:12px;padding:20px 0 0!important;max-width:1240px!important;margin:0 auto!important;width:100%;position:relative;z-index:1}
.hb-btns .elementor-widget{width:auto!important;margin:0}
.hb-btn .elementor-button,.hz-btn .elementor-button{background:var(--g);color:#fff;border-radius:2px;padding:15px 26px;font:700 15px Manrope,sans-serif;border:2px solid var(--g)}
.hb-btn .elementor-button:hover,.hz-btn .elementor-button:hover{background:#7d5f08;border-color:#7d5f08;color:#fff}
.hb-btn--ghost .elementor-button{background:transparent;border-color:#fff}
.hb-btn--ghost .elementor-button:hover{background:#fff;color:var(--k);border-color:#fff}
.hb--home{min-height:640px}
@media(max-width:700px){.e-con.hb{min-height:320px;padding:56px 16px 40px!important}.hb--home{min-height:560px}.e-con.hz-in{padding:52px 16px!important}}
/* three pillars */
.hp-grid{display:grid;gap:0;grid-template-columns:1fr}
@media(min-width:900px){.hp-grid{grid-template-columns:repeat(3,1fr)}}
.hp{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:420px;padding:32px;background:#171717 center/cover no-repeat;color:#fff;text-decoration:none;overflow:hidden}
.hp::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(23,23,23,.1) 20%,rgba(23,23,23,.92));transition:background .3s}
.hp:hover::before{background:linear-gradient(180deg,rgba(157,121,12,.35) 0%,rgba(23,23,23,.95))}
.hp>*{position:relative}
.hp b.n{font:800 14px Manrope;letter-spacing:.2em;color:#e5c65b}
.hp h3{font:800 28px/1.15 Manrope;margin:8px 0 10px;color:#fff}
.hp p{margin:0 0 14px;color:#e4e4e4;font-size:15px;line-height:1.6}
.hp span.go{font:700 14px Manrope;letter-spacing:.08em;text-transform:uppercase;color:#e5c65b}
/* steps */
.hsteps{display:grid;gap:0;grid-template-columns:1fr;border-top:1px solid rgba(255,255,255,.25)}
@media(min-width:800px){.hsteps{grid-template-columns:repeat(4,1fr)}}
.hsteps>div{padding:28px 24px 28px 0;border-bottom:1px solid rgba(255,255,255,.25)}
.hsteps.light{border-color:var(--l)}.hsteps.light>div{border-color:var(--l)}
.hsteps b{display:block;font:800 44px/1 Manrope;color:var(--g);margin-bottom:12px}
.hsteps h4{margin:0 0 8px;font:700 18px Manrope}
.hsteps p{margin:0;font-size:15px;line-height:1.65;opacity:.85}
/* split */
.hsplit{display:grid;gap:36px;grid-template-columns:1fr;align-items:center}
@media(min-width:900px){.hsplit{grid-template-columns:1.05fr 1fr;gap:64px}.hsplit.rev>.hsplit__img{order:2}}
.hsplit__img{position:relative}
.hsplit__img img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.hsplit__img::after{content:"";position:absolute;left:-14px;bottom:-14px;width:46%;height:46%;border-left:4px solid var(--g);border-bottom:4px solid var(--g);pointer-events:none}
.hsplit h2{font:800 clamp(26px,3.4vw,38px)/1.15 Manrope;margin:6px 0 14px}
.hsplit p{color:#555;line-height:1.75;font-size:16px}
.hsplit ul,.hlist{list-style:none;margin:16px 0 0;padding:0}
.hsplit li,.hlist li{padding:9px 0 9px 28px;border-bottom:1px solid var(--l);position:relative;font-size:15.5px}
.hsplit li::before,.hlist li::before{content:"";position:absolute;left:0;top:17px;width:14px;height:2px;background:var(--g)}
.hz-dark .hlist li{border-color:rgba(255,255,255,.2)}
.heyebrow{font:700 13px Manrope;letter-spacing:.2em;text-transform:uppercase;color:var(--g)}
/* service blocks */
.hsv{display:grid;gap:0;grid-template-columns:1fr;border-top:1px solid var(--l)}
@media(min-width:800px){.hsv{grid-template-columns:repeat(3,1fr)}}
.hsv>div{padding:32px 28px 32px 0;border-bottom:1px solid var(--l)}
@media(min-width:800px){.hsv>div{padding-right:32px}.hsv>div:not(:nth-child(3n+1)){padding-left:28px;border-left:1px solid var(--l)}}
.hsv h3{font:800 20px/1.25 Manrope;margin:0 0 10px}
.hsv p{margin:0;color:#555;font-size:15px;line-height:1.7}
.hsv .k{font:800 13px Manrope;color:var(--g);letter-spacing:.18em;display:block;margin-bottom:10px}
/* faq */
.hfaq details{border-bottom:1px solid var(--l);padding:0}
.hfaq summary{cursor:pointer;list-style:none;padding:20px 40px 20px 0;font:700 17px Manrope;position:relative}
.hfaq summary::-webkit-details-marker{display:none}
.hfaq summary::after{content:"+";position:absolute;right:6px;top:16px;font:400 28px/1 Inter;color:var(--g)}
.hfaq details[open] summary::after{content:"\2212"}
.hfaq details p{margin:0 0 20px;color:#555;line-height:1.75;max-width:760px}
/* cta band */
.hcta{display:flex;flex-direction:column;gap:20px;align-items:flex-start}
@media(min-width:900px){.hcta{flex-direction:row;align-items:center;justify-content:space-between}}
.hcta h2{font:800 clamp(26px,3.4vw,40px)/1.15 Manrope;margin:0 0 8px;color:#fff}
.hcta p{margin:0;color:#cfcfcf;max-width:620px}
.hcta .btns{display:flex;gap:12px;flex-wrap:wrap}
.hcta a.b{display:inline-block;padding:15px 26px;font:700 15px Manrope;text-decoration:none;background:var(--g);color:#fff;border:2px solid var(--g);border-radius:2px}
.hcta a.b.o{background:transparent;border-color:#fff}
.hcta a.b:hover{background:#fff;color:var(--k);border-color:#fff}
/* facts strip */
.hfacts{display:grid;grid-template-columns:1fr;gap:0}
@media(min-width:800px){.hfacts{grid-template-columns:repeat(4,1fr)}}
.hfacts>div{padding:22px 20px;border-left:3px solid var(--g);background:#fff;margin:0 0 12px}
@media(min-width:800px){.hfacts>div{margin:0 12px 0 0}}
.hfacts b{display:block;font:800 17px Manrope;margin-bottom:4px}
.hfacts span{font-size:14px;color:#666}
/* generic content pages */
.hz-prose .elementor-widget-text-editor{max-width:820px}
.hz-prose h2{font:800 26px Manrope;margin:32px 0 10px}
.hz-prose p,.hz-prose li{line-height:1.8;color:#444}
/* chips + search */
.hr-chip{border-radius:2px}
.hr-msearch input[type=search]{border-radius:2px}
/* materials grid cards */
.hr-item .hr-card__media{aspect-ratio:4/3}
.hr-itemgrid .hr-card{box-shadow:none;border:1px solid var(--l)}
.hr-itemgrid .hr-card:hover{border-color:var(--g);box-shadow:none}
/* calculator */
.hcalc{display:grid;gap:28px;grid-template-columns:1fr}
@media(min-width:960px){.hcalc{grid-template-columns:1fr 1fr;align-items:start}}
.hcalc fieldset{border:1px solid var(--l);padding:22px;margin:0 0 18px;background:#fff}
.hcalc legend{font:800 13px Manrope;letter-spacing:.16em;text-transform:uppercase;color:var(--g);padding:0 8px}
.hcalc label{display:block;font:600 14px Inter;margin:12px 0 6px}
.hcalc input,.hcalc select{width:100%;padding:13px 14px;border:1px solid #cfcfcf;border-radius:2px;font:inherit;background:#fff}
.hcalc .row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.hcalc .presets{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.hcalc .presets button{padding:8px 12px;border:1px solid var(--l);background:#f7f7f5;border-radius:2px;font:600 13px Inter;cursor:pointer}
.hcalc .presets button:hover{border-color:var(--g)}
.hcalc .chk{display:flex;gap:10px;align-items:flex-start;margin:10px 0}
.hcalc .chk input{width:auto;margin-top:4px}
.hcalc .chk label{margin:0;font-weight:500}
.hres{background:var(--k);color:#fff;padding:28px;position:sticky;top:100px}
.hres h3{font:800 13px Manrope;letter-spacing:.18em;text-transform:uppercase;color:#e5c65b;margin:0 0 6px}
.hres .tot{font:800 clamp(30px,4vw,44px)/1.1 Manrope;margin:0 0 4px}
.hres .rng{color:#cfcfcf;font-size:14px;margin:0 0 20px}
.hres table{width:100%;border-collapse:collapse;font-size:14px;margin:8px 0 18px}
.hres td{padding:8px 0;border-bottom:1px solid rgba(255,255,255,.18)}
.hres td:last-child{text-align:right;white-space:nowrap}
.hres h4{font:700 15px Manrope;margin:20px 0 4px;color:#fff}
.hres .note{font-size:12.5px;color:#aaa;line-height:1.6;margin-top:14px}
.hres a.hr-btn{width:100%;text-align:center;box-sizing:border-box}

.e-con.hz-cols>.e-con.hz-in{display:grid!important;grid-template-columns:1fr;gap:32px}
@media(min-width:900px){.e-con.hz-cols>.e-con.hz-in{grid-template-columns:1.3fr 1fr}}
.hx-card{background:#F7F7F5;border:1px solid #EAEAEA;border-left:4px solid #9D790C;padding:26px}
.hx-card h3{margin-top:0;font:800 20px Manrope}
