:root{--red:#7c1427;--red-dark:#5b0d1c;--navy:#071a35;--navy-soft:#10294b;--gold:#d4ae3e;--text:#202936;--muted:#687386;--light:#f3f5f8;--border:#dfe4eb;--pin-green:#136700;}
*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{margin:0;color:var(--text);font-family:Inter,Arial,sans-serif;line-height:1.6;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit}.container{width:min(1160px,calc(100% - 2rem));margin:auto}.site-header{background:#fff;border-bottom:6px solid var(--red);position:relative;z-index:10}.header-inner{min-height:94px;display:flex;align-items:center;gap:2rem}.header-logo{width:205px}.reviews{margin-left:auto;color:#596273}.reviews span{color:var(--gold);letter-spacing:2px}.phone-button{background:var(--red);color:#fff;text-decoration:none;padding:.8rem 1.2rem;font-weight:800}.hero{height:100vh;color:#fff;display:flex;align-items:center;background:linear-gradient(to right,rgba(16,28,54,.88) 55%,rgba(16,28,54,.55)),url("https://images.unsplash.com/photo-1669003750682-93cf2c65b9ca?w=1600&h=900&fit=crop&auto=format") center/cover no-repeat}.hero-inner{padding:5rem 0}.eyebrow{color:var(--gold);font-weight:800;text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;margin:0 0 1rem}.hero h1{font-size:clamp(3rem,7vw,5.4rem);line-height:.98;max-width:760px;margin:0 0 1.5rem;letter-spacing:-.05em}.hero h1 span{display:block;color:var(--gold)}.hero-lead{max-width:700px;font-size:1.18rem}.hero-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin:2rem 0}.btn{display:inline-flex;justify-content:center;align-items:center;gap:.7rem;padding:1rem 1.35rem;text-transform:uppercase;text-decoration:none;font-weight:800;letter-spacing:.04em;border:2px solid transparent;cursor:pointer}.btn-primary{background:var(--red);color:#fff}.btn-primary:hover{background:var(--red-dark)}.btn-outline{border-color:#fff;color:#fff}.trust-list{display:flex;gap:1.5rem;flex-wrap:wrap;padding:0;list-style:none}.trust-list li:before{content:"✓";color:var(--gold);margin-right:.5rem}.hero small{color:#d8deea}.stats{background:var(--navy);color:#fff}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}.stats-grid div{text-align:center;padding:1.6rem;border-right:1px solid rgba(255,255,255,.15)}.stats-grid strong,.stats-grid span{display:block}.stats-grid strong{font-size:1.8rem;color:var(--gold)}.stats-grid span{font-size:.82rem;text-transform:uppercase}.section{padding:5.5rem 0}.section-heading{max-width:760px;margin:0 auto 3rem;text-align:center}.section-heading h2,.split h2,.quote h2,.final-cta h2{font-size:clamp(2rem,4vw,3.25rem);line-height:1.1;letter-spacing:-.035em;margin:.3rem 0 1rem}.section-heading>p:last-child{color:var(--muted)}.building-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}.building-card{border:1px solid var(--border);background:#fff;box-shadow:0 12px 30px rgba(5,24,50,.08);transition:.2s}.building-card:hover{transform:translateY(-5px)}.building-card img{width:100%;height:210px;object-fit:cover}.card-content{padding:1.4rem}.card-content h3{margin:0;font-size:1.25rem}.card-content p{color:var(--muted);min-height:78px}.card-content a{color:var(--red);font-weight:800;text-decoration:none;text-transform:uppercase;font-size:.78rem}.service-area,.conditions,.faq{background:var(--light)}.split{display:grid;grid-template-columns:1.15fr .85fr;gap:4rem;align-items:center}.state-grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin:2rem 0}.state-grid div{background:#fff;border-left:4px solid var(--red);padding:1rem}.state-grid strong,.state-grid span{display:block}.state-grid span{font-size:.82rem;color:var(--muted)}.map-card{background:var(--navy);color:#fff;padding:4rem 3rem;text-align:center;min-height:400px;display:flex;flex-direction:column;justify-content:center}.map-card i{color:var(--gold);font-size:4rem}.map-card h3{font-size:2rem;margin:1rem 0}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.feature-grid article,.condition-grid article{border:1px solid var(--border);padding:1.5rem;background:#fff}.feature-grid i,.condition-grid i{font-size:1.8rem;color:var(--red)}.feature-grid h3,.condition-grid h3{margin:.8rem 0 .3rem}.feature-grid p,.condition-grid p{color:var(--muted);margin:0}.condition-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}.project-grid article{position:relative;min-height:330px;overflow:hidden;background:var(--navy);color:#fff}.project-grid img{width:100%;height:330px;object-fit:cover;opacity:.72;transition:.3s}.project-grid article:hover img{transform:scale(1.04)}.project-grid article div{position:absolute;left:0;right:0;bottom:0;padding:3rem 1.5rem 1.5rem;background:linear-gradient(transparent,rgba(3,16,35,.96))}.project-grid span{background:var(--red);padding:.35rem .55rem;font-size:.75rem;font-weight:700}.project-grid h3{margin:.7rem 0 0}.project-grid p{margin:0;color:#d8deea}.faq-wrap{max-width:850px}.faq-item{border-bottom:1px solid var(--border);background:#fff}.faq-item button{width:100%;border:0;background:#fff;padding:1.3rem;text-align:left;font:inherit;font-weight:800;display:flex;justify-content:space-between;cursor:pointer}.faq-item button span{color:var(--red);font-size:1.4rem}.faq-answer{padding:0 1.3rem 1rem;color:var(--muted)}.quote{background:var(--navy);color:#fff;padding:5.5rem 0}.quote-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:4rem;align-items:start}.quote-copy{position:sticky;top:2rem}.quote-copy ul{list-style:none;padding:0}.quote-copy li{margin:.8rem 0}.quote-copy i{color:var(--gold);margin-right:.5rem}.quote-wrap{background:#fff;color:var(--text);padding:2rem;box-shadow:0 20px 50px rgba(0,0,0,.2)}.form-title{font-weight:800;text-transform:uppercase;font-size:.8rem;letter-spacing:.07em;margin:1.1rem 0 .5rem}.form-grid{display:grid;gap:.8rem;margin-bottom:.8rem}.two-col{grid-template-columns:1fr 1fr}.one-col{grid-template-columns:1fr}.field input,.field select,.field textarea{width:100%;border:1px solid var(--border);background:#f8f9fb;padding:1rem;font:inherit}.field textarea{min-height:110px;resize:vertical}.radio-options{display:flex;gap:.8rem}.finance-option input{position:absolute;opacity:0}.finance-option span{display:block;border:1px solid var(--border);padding:.7rem 2rem;cursor:pointer;font-weight:700}.finance-option input:checked+span{background:var(--red);color:#fff}.captcha-row{margin:1.2rem 0}.submit-button{width:100%}.text-disclaimer{font-size:.7rem;color:var(--muted);line-height:1.45}.text-disclaimer a{color:var(--red)}.form-submit-status{text-align:center;font-weight:700}.final-cta{padding:5rem 0;background:linear-gradient(rgba(5,22,49,.94),rgba(5,22,49,.94)),url("https://storage.googleapis.com/bucket_images_ws/americanbuildings/landing/Multipurpose.png") center/cover;color:#fff;text-align:center}.final-cta .hero-actions{justify-content:center}.site-footer{background:#050e1d;color:#aeb7c4;padding:3rem 0 1rem;text-align:center}.footer-inner{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #28364a;padding-bottom:2rem}.footer-inner img{width:190px}.footer-inner nav{display:flex;gap:1.3rem;flex-wrap:wrap}.footer-inner a{text-decoration:none;font-size:.8rem;text-transform:uppercase}.success-modal{position:fixed;inset:0;background:rgba(0,0,0,.72);display:none;align-items:center;justify-content:center;z-index:100}.success-modal.is-open{display:flex}.modal-content{background:#fff;padding:2.5rem;text-align:center;max-width:480px;width:calc(100% - 2rem)}.modal-content img{width:70px;margin:auto}
/* Figma Make visual treatment */
:root{--red:#7d1a2e;--navy:#1a2e56;--navy-soft:#233d6f;--gold:#c9a227;--light:#f5f5f2}
.eyebrow{display:flex;align-items:center;gap:.65rem}
.eyebrow:before{content:"";display:block;width:2rem;height:2px;flex:0 0 2rem;background:var(--gold)}
.hero h1,.section-heading h2,.split h2,.quote h2,.final-cta h2,.card-content h3,.feature-grid h3,.condition-grid h3,.project-grid h3{font-family:Inter,Arial,sans-serif}
.hero h1{letter-spacing:-.035em}.hero-lead{max-width:730px}.hero-lead strong{font-weight:500}.hero-description{max-width:730px;color:#e1e6ef;font-size:1.05rem}
.btn{text-transform:none;letter-spacing:.01em;border-radius:8px}
.stats{background:#fff;color:var(--text);border-bottom:1px solid var(--border);box-shadow:0 8px 24px rgba(12,31,62,.06)}
.stats-grid div{border-right:1px solid var(--border);padding:1.8rem}.stats-grid strong{color:var(--red);font-family:Inter,Arial,sans-serif}.stats-grid span{color:var(--muted);font-size:.76rem;font-weight:700;letter-spacing:.04em}
.section-heading h2,.split h2,.quote h2{color:var(--navy)}
.building-card,.feature-grid article,.condition-grid article,.project-grid article{border-radius:4px;overflow:hidden}
.card-content h3,.feature-grid h3,.condition-grid h3{color:var(--navy)}.card-content a{text-transform:none;font-size:.82rem}
.state-grid div{box-shadow:0 4px 16px rgba(26,46,86,.06)}
.map-card{background:#e9ecf1;color:var(--text);padding:2rem;min-height:440px;border:1px solid #d8dde5}
.map-shape{width:340px;max-width:100%;height:285px;margin:auto;position:relative}
.state{position:absolute;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:900;border:4px solid #fff;box-shadow:0 3px 12px rgba(0,0,0,.15)}
.state-il{width:105px;height:165px;left:15px;top:95px;background:var(--navy);clip-path:polygon(18% 0,82% 5%,100% 100%,0 92%)}
.state-in{width:92px;height:145px;left:114px;top:105px;background:var(--red);clip-path:polygon(8% 0,94% 4%,87% 100%,0 94%)}
.state-oh{width:112px;height:125px;left:198px;top:98px;background:var(--navy);clip-path:polygon(10% 3%,92% 0,100% 80%,58% 100%,0 75%)}
.state-mi{width:126px;height:93px;left:135px;top:7px;background:var(--gold);clip-path:polygon(2% 28%,28% 0,48% 18%,100% 5%,89% 90%,45% 100%,25% 70%)}
.map-legend{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;font-size:.72rem;color:var(--muted)}
.map-legend span{display:flex;align-items:center;gap:.35rem}.map-legend i{display:block;width:12px;height:12px}.legend-in{background:var(--red)}.legend-near{background:var(--navy)}.legend-mi{background:var(--gold)}
.emoji{font-size:1.8rem}.feature-grid i,.condition-grid i{display:none}
.quote{background:#fff;color:var(--text)}.quote-copy i{color:var(--red)}.quote-wrap{border:1px solid var(--border);box-shadow:0 20px 50px rgba(26,46,86,.12)}
.final-cta{background-color:var(--navy);background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.025) 0,rgba(255,255,255,.025) 1px,transparent 1px,transparent 20px)}.final-cta h2{color:#fff}
/* Building cards: match the Figma implementation */
.building-grid{gap:1.5rem}
.building-card{display:flex;flex-direction:column;border:1px solid #f0f1f4;border-radius:.75rem;box-shadow:0 1px 3px rgba(0,0,0,.1);overflow:hidden;transition:box-shadow .3s ease;transform:none}
.building-card:hover{transform:none;box-shadow:0 10px 24px rgba(15,23,42,.14)}
.building-card__image{position:relative;height:12rem;overflow:hidden;background:#e5e7eb;flex:none}
.building-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;transform:scale(1)}
.building-card:hover .building-card__image img{transform:scale(1.05)}
.building-card__image span{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.3),transparent);pointer-events:none}
.card-content{padding:1.25rem;display:flex;flex:1;flex-direction:column}
.card-content h3{font-size:1.125rem;line-height:1.5;margin:0 0 .5rem}
.card-content p{font-size:.875rem;line-height:1.625;color:#4b5563;min-height:0;flex:1;margin:0 0 1rem}
.card-content .card-button{width:100%;display:flex;align-items:center;justify-content:center;border:2px solid var(--navy);border-radius:.5rem;padding:.625rem 1.25rem;color:var(--navy);background:transparent;font-size:.875rem;font-weight:700;line-height:1.25;text-decoration:none;transition:background-color .2s ease,color .2s ease}
.card-content .card-button:hover{background:var(--navy);color:#fff}
.cards-swiper{display:block;overflow:hidden;padding:.25rem .25rem 2.75rem}
.cards-swiper:not(.is-swiper-active) .swiper-wrapper{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}
.cards-swiper:not(.is-swiper-active) .swiper-slide{width:100%!important}
.cards-swiper.is-swiper-active .building-card{height:auto}
.cards-swiper .swiper-pagination{display:none;bottom:.25rem}
.cards-swiper.is-swiper-active .swiper-pagination{display:block}
.cards-swiper .swiper-pagination-bullet{width:.6rem;height:.6rem;background:#aeb7c4;opacity:1}
.cards-swiper .swiper-pagination-bullet-active{background:var(--red)}
/* Service area: exact SVG and card treatment from the Figma source */
.container{width:min(1280px,calc(100% - 2rem))}
.service-area{background:#f4f5f8}
.service-area .split{grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem}
.service-area .split>div:first-child>p:not(.eyebrow){color:#4b5563;margin:0 0 1.25rem}
.state-grid{gap:.75rem;margin:2rem 0 0}
.state-grid>div{display:flex;align-items:center;gap:.625rem;border:0;border-radius:.5rem;padding:.75rem;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.1)}
.state-grid p{margin:0}.state-grid strong{color:var(--navy);font-size:.875rem;line-height:1.25rem}.state-grid span{color:#6b7280;font-size:.75rem;line-height:1rem}
.state-dot{width:.75rem;height:.75rem;border-radius:999px;flex:none}.state-dot--red{background:var(--red)}.state-dot--gold{background:var(--gold)}.state-dot--navy{background:var(--navy)}
.state-pin{margin-left:auto;color:var(--pin-green);font-size:.875rem}
.map-card{background:#fff;min-height:0;padding:2rem;border:0;border-radius:1rem;box-shadow:0 4px 10px rgba(0,0,0,.12)}
.midwest-map{display:block;width:100%;max-width:384px;margin:auto}
.service-area-map{position:relative;width:100%;height:25rem;min-height:320px;border-radius:.85rem;background:#0b3354;overflow:hidden}
.service-area-map .jvm-container{background:#0b3354}
.service-area-map path.jvm-region{transition:filter .2s ease,fill .2s ease;outline:none}
.service-area-map path.jvm-region.is-service-available{cursor:pointer}
.service-area-map path.jvm-region.is-service-available:hover,
.service-area-map path.jvm-region.is-service-available:focus,
.service-area-map path.jvm-region.is-service-available.is-map-hovered{filter:drop-shadow(0 8px 10px rgba(0,0,0,.42))}
.service-area-map path.jvm-region.is-service-unavailable{cursor:default}
.service-area-map path.jvm-region.is-map-hidden{display:none;pointer-events:none}
.service-area-map .jvm-label{fill:#fff!important;font-family:Inter,Arial,sans-serif;font-size:13px;font-weight:700;letter-spacing:.03em;pointer-events:none;text-shadow:0 1px 2px rgba(0,0,0,.4)}
.service-area-map-tooltip{position:fixed;z-index:9999;left:0;top:0;pointer-events:none;opacity:0;transform:translate(-50%,calc(-100% - .75rem));border:1px solid rgba(255,255,255,.18);border-radius:.65rem;background:rgba(7,26,53,.96);box-shadow:0 12px 28px rgba(0,0,0,.28);padding:.65rem .8rem;color:#fff;font-family:Inter,Arial,sans-serif;font-size:.78rem;font-weight:700;white-space:nowrap;transition:opacity .15s ease}
.service-area-map-tooltip.is-visible{opacity:1}
.service-map-legend{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;margin-top:1rem;color:#4b5563;font-size:.78rem;font-weight:700}
.service-map-legend span{display:inline-flex;align-items:center;gap:.4rem}
.service-map-legend i{width:.8rem;height:.8rem;border-radius:.2rem;border:1px solid rgba(7,26,53,.12)}
.legend-available{background:#087a3a}
.legend-unavailable{background:#d7e1e2}
.county-card{background:#fff;min-height:0;padding:2rem;border:0;border-radius:1rem;box-shadow:0 4px 10px rgba(0,0,0,.12)}
.county-card__header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}
.county-card__icon{display:inline-flex;align-items:center;justify-content:center;width:3rem;height:3rem;flex:0 0 3rem;border-radius:.85rem;background:rgba(19,103,0,.1);color:var(--pin-green)}
.county-card__icon i{font-size:1.25rem}
.county-card__eyebrow{margin:0 0 .2rem;color:var(--gold);font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.county-card h3{margin:0;color:var(--navy);font-size:1.35rem;line-height:1.2;letter-spacing:-.02em}
.county-card>p{margin:0;color:#4b5563}
.county-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;list-style:none;margin:1.35rem 0 0;padding:0}
.county-list li{display:flex;align-items:center;gap:.6rem;min-height:3rem;padding:.75rem .85rem;border:1px solid var(--border);border-radius:.65rem;background:#f8fafc;color:var(--navy);font-size:.88rem;font-weight:800;line-height:1.25;box-shadow:0 1px 3px rgba(0,0,0,.06)}
.county-list i{color:var(--pin-green);font-size:.85rem}
.county-list span{display:block;min-width:0}
.county-list strong{display:block;color:var(--navy)}
.county-list small{display:block;margin-top:.2rem;color:#64748b;font-size:.74rem;font-weight:700;line-height:1.35}
.county-swiper{position:relative;margin:1.35rem 0 0;padding:0 0 3.25rem;overflow:hidden}
.county-swiper .county-list{margin:0}
.county-swiper .swiper-pagination{bottom:.55rem;left:50%;width:auto;transform:translateX(-50%)}
.county-swiper .swiper-pagination-bullet{width:.55rem;height:.55rem;background:#aeb7c4;opacity:1}
.county-swiper .swiper-pagination-bullet-active{background:var(--red)}
.county-swiper__nav{position:absolute;bottom:.1rem;z-index:3;width:2rem;height:2rem;border:1px solid var(--border);border-radius:999px;background:#fff;color:var(--navy);box-shadow:0 6px 16px rgba(15,23,42,.14);font-size:1.4rem;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s ease,color .2s ease,opacity .2s ease}
.county-swiper__nav:hover{background:var(--navy);color:#fff}
.county-swiper__nav--prev{left:calc(50% - 5.75rem)}
.county-swiper__nav--next{right:calc(50% - 5.75rem)}
.county-swiper .swiper-button-disabled{opacity:.35;cursor:not-allowed}
/* Centered sections keep the Figma label aligned to the container edge */
.section-heading{max-width:none}
.section-heading .eyebrow{text-align:left}
.section-heading>p:last-child{max-width:42rem;margin-left:auto;margin-right:auto}
/* Midwest condition cards */
.condition-grid{gap:1.25rem}
.condition-grid article{padding:1.25rem;border:1px solid #f0f1f4;border-radius:.75rem;text-align:center;box-shadow:0 1px 3px rgba(0,0,0,.1);transition:box-shadow .2s ease}
.condition-grid article:hover{box-shadow:0 4px 8px rgba(0,0,0,.12)}
.condition-grid .emoji{font-size:1.875rem;line-height:2.25rem;margin-bottom:.75rem}
.condition-grid h3{font-family:Inter,Arial,sans-serif;font-size:.875rem;line-height:1.25rem;margin:0 0 .5rem;font-weight:700}
.condition-grid p{color:#6b7280;font-size:.75rem;line-height:1.625;margin:0}
.feature-icon,.condition-icon{display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:.625rem;background:#f0f4fa;color:var(--red)}
.feature-icon i,.condition-icon i{display:block;color:inherit;font-size:1.2rem}
.condition-icon{margin:0 auto .75rem;background:rgba(201,162,39,.12);color:var(--navy)}
.condition-grid article.condition-card--highlight{border-color:rgba(125,26,46,.42);background:linear-gradient(180deg,rgba(125,26,46,.08),#fff);box-shadow:0 8px 20px rgba(125,26,46,.14)}
.condition-grid article.condition-card--highlight:hover{box-shadow:0 12px 26px rgba(125,26,46,.2)}
.condition-grid article.condition-card--highlight .condition-icon{background:var(--red);color:#fff}
.condition-grid article.condition-card--highlight h3{color:var(--red)}
/* Production building-costs footer (without its pre-footer) */
.site-footer{background:rgba(2,19,43,.9);color:#fff;padding:3.4rem 0}
.site-footer__inner{width:min(1160px,calc(100% - 2rem));display:flex;align-items:center;justify-content:space-around;gap:1rem}
.footer-logo-link{display:inline-flex;margin:0}
.footer-logo{width:min(176px,42vw);height:auto;display:block}
.site-footer nav{display:flex;justify-content:flex-end;gap:2rem;flex-wrap:wrap}
.site-footer nav a{color:#c8d4e8;text-decoration:none;font-size:.85rem;letter-spacing:.05em;text-transform:none}
.site-footer__copy{margin:.7rem 0 0;text-align:center;color:#c8d4e8;font-size:.78rem}
.site-footer__copy a{color:#c8d4e8;font-weight:700;text-decoration:none}
@media(max-width:600px){
  .site-footer__inner{flex-direction:column;justify-content:center}
  .site-footer nav{justify-content:center;gap:.8rem;line-height:1.9}
  .footer-logo{width:min(170px,60vw)}
  .site-footer__copy{line-height:1.8;margin-top:1rem;padding:0 1rem}
  .site-footer nav a{line-height:1.9;padding:.08rem 0}
}
/* Recent projects gallery */
.project-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.25rem}
.project-grid article,.project-grid .project-card{display:flex;flex-direction:column;min-height:0;background:#fff;color:var(--text);border:1px solid #f0f1f4;border-radius:.75rem;box-shadow:0 1px 3px rgba(0,0,0,.1);transition:box-shadow .3s ease;overflow:hidden;text-decoration:none}
.project-grid article:hover,.project-grid .project-card:hover{box-shadow:0 12px 24px rgba(15,23,42,.16)}
.project-grid article .project-image,.project-grid .project-card .project-image{position:relative;inset:auto;height:13rem;overflow:hidden;background:#e5e7eb;padding:0}
.project-image img{width:100%;height:100%;object-fit:cover;opacity:1;transform:scale(1);transition:transform .5s ease}
.project-grid article:hover .project-image img,.project-grid .project-card:hover .project-image img{transform:scale(1.05)}
.project-image>i{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.5),transparent 65%);pointer-events:none}
.project-image span{position:absolute;left:.75rem;bottom:.75rem;background:rgba(0,0,0,.4);color:#fff;border-radius:999px;padding:.125rem .5rem;font-size:.75rem;line-height:1rem;font-weight:600}
.project-grid article .project-content,.project-grid .project-card .project-content{position:static;inset:auto;padding:1rem;background:#fff}
.project-content h3{font-family:Inter,Arial,sans-serif;color:var(--navy);font-size:.875rem;line-height:1.25rem;font-weight:700;margin:0 0 .25rem}
.project-content p{display:flex;align-items:center;gap:.25rem;color:#6b7280;font-size:.75rem;line-height:1rem;margin:0}
.project-content p i{font-size:.6875rem}
.project-content .pin-project{color:var(--pin-green)}
/* FAQ accordion */
.faq-wrap{max-width:48rem}
.faq .section-heading{margin-bottom:3rem}
.faq-item{margin-bottom:.75rem;border:1px solid #f0f1f4;border-radius:.75rem;box-shadow:0 1px 3px rgba(0,0,0,.1);overflow:hidden}
.faq-item button{padding:1rem 1.5rem;color:var(--navy);font-size:.875rem;line-height:1.25rem;font-weight:600;transition:background-color .2s ease}
.faq-item button:hover{background:#f9fafb}
.faq-chevron{color:#9ca3af;font-size:1rem;line-height:1;flex:none;transition:transform .2s ease,color .2s ease}
.faq-item button[aria-expanded="true"] .faq-chevron{color:var(--red);transform:rotate(180deg)}
.faq-answer{max-height:0;overflow:hidden;opacity:0;padding:0 1.5rem;color:#4b5563;font-size:.875rem;line-height:1.625;transition:max-height .28s ease,opacity .22s ease,padding .28s ease}
.faq-item.is-open .faq-answer{max-height:26rem;opacity:1;padding:0 1.5rem 1.25rem}
.faq-answer:before{content:"";display:block;height:1px;background:#f0f1f4;margin-bottom:1rem}
.faq-answer p{margin:0}
/* Figma form composition, preserving the production building-costs fields */
.quote{background:#fff;padding:5rem 0}
.quote-layout{display:grid;grid-template-columns:1fr;gap:3rem;max-width:48rem}
.quote-copy{position:static}
.quote-copy .eyebrow{text-align:left}
.quote-copy h2{text-align:center;margin-bottom:1rem}
.quote-copy>p:not(.eyebrow){max-width:42rem;margin:0 auto;color:#4b5563;text-align:center}
.quote-copy ul{display:none}
.quote-wrap{padding:2rem;border:1px solid #f0f1f4;border-radius:1rem;box-shadow:0 10px 24px rgba(15,23,42,.12)}
.quote-wrap .field input,.quote-wrap .field select,.quote-wrap .field textarea{border:1px solid #dfe4eb;border-radius:.5rem;background:#fff}
.quote-wrap .finance-option span{border-radius:.5rem}
.quote-wrap .submit-button{border-radius:.5rem}
.quote-wrap .radio-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;width:100%}
.quote-wrap .finance-option{display:block;width:100%}
.quote-wrap .finance-option span{width:100%;padding:.75rem;text-align:center}
.quote-wrap .captcha-row{display:flex;justify-content:center;align-items:center;width:100%}
/* Dark CTA */
.final-cta{position:relative;overflow:hidden;padding:5rem 0;background-color:var(--navy);background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.05) 0,rgba(255,255,255,.05) 1px,transparent 1px,transparent 20px)}
.final-cta__inner{max-width:56rem;text-align:center}
.final-cta__rule{width:3rem;height:2px;margin:0 auto 1rem;background:var(--gold)}
.final-cta h2{font-size:clamp(2rem,5vw,3rem);margin:0 0 1.25rem;color:#fff}
.final-cta h2 span{color:var(--gold)}
.final-cta__lead,.final-cta__copy{max-width:42rem;margin-left:auto;margin-right:auto;line-height:1.625}
.final-cta__lead{margin-top:0;margin-bottom:1rem;color:rgba(255,255,255,.7);font-size:1.125rem}
.final-cta__copy{margin-top:0;margin-bottom:2.5rem;color:rgba(255,255,255,.6)}
.final-cta__actions{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}
.final-cta__actions .btn{padding:1rem 2rem;border-radius:.5rem;font-size:1rem}
.final-cta__actions .btn-outline{border-color:rgba(255,255,255,.4)}
.final-cta__actions .btn-outline:hover{background:rgba(255,255,255,.1)}
.final-cta__trust{display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap;margin-top:2.5rem;color:rgba(255,255,255,.5);font-size:.875rem}
.final-cta__trust i{color:var(--gold);font-size:.75rem;margin-right:.375rem}
/* Production building-costs header */
.top-strip{position:relative;margin-top:.7rem;background:#fff;border-bottom:8px solid var(--red)}
.top-strip__inner{width:min(1280px,calc(100% - 2rem));min-height:82px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:.2rem;padding-top:.5rem;padding-bottom:.7rem}
.top-strip__inner img{height:54px;width:auto;display:block}
.top-strip__meta{display:flex;align-items:center;gap:.8rem}
.top-strip__reviews{margin:0;color:#8b8b8b;font-size:1rem}
.top-strip__reviews span{color:#f2c94c;letter-spacing:.05em;margin-right:.3rem;font-size:1.3rem}
.top-header-phone{position:absolute;top:20px;right:100px;display:inline-block;padding:.6rem 1.2rem;color:var(--red);background:#fff;border:2px solid var(--red);font-size:.9rem;font-weight:700;text-decoration:none;text-align:center;transition:.2s ease}
.hero .btn,.top-header-phone{border-radius:.5rem}
.top-header-phone:hover{background:var(--red);color:#fff}
@media(max-width:900px){.reviews{display:none}.building-grid,.feature-grid,.project-grid{grid-template-columns:repeat(2,1fr)}.condition-grid{grid-template-columns:repeat(2,1fr)}.split,.service-area .split,.quote-layout{grid-template-columns:1fr}.quote-copy{position:static}.stats-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:798px){.top-header-phone{position:static;margin-top:.7rem;margin-bottom:.3rem;font-size:.84rem}.top-strip__inner{align-items:center}}
@media(max-width:600px){.top-strip__inner{min-height:70px}.top-strip__inner img{height:30px}.top-strip__reviews{font-size:.72rem}.top-strip__meta{gap:.2rem}.hero-inner{padding:4rem 0}.hero h1{font-size:3.2rem}.hero-actions .btn{width:100%}.trust-list{display:block}.trust-list li{margin:.5rem 0}.section{padding:4rem 0}.building-grid,.feature-grid,.condition-grid,.project-grid{grid-template-columns:1fr}.state-grid,.two-col{grid-template-columns:1fr}.stats-grid div{padding:1rem .4rem}.stats-grid strong{font-size:1.35rem}.quote-wrap{padding:1.2rem}.footer-inner{display:block}.footer-inner img{margin:0 auto 1.5rem}.footer-inner nav{justify-content:center}}

/* Near Me hero: reserve responsive space for the shared navbar. */
.hero{
  height:auto;
  min-height:100svh;
  align-items:center;
}

.hero .hero-inner{
  padding-top:clamp(10rem,18vh,13rem);
  padding-bottom:clamp(4rem,10vh,7rem);
}

@media(max-width:900px){
  .hero{
    min-height:auto;
  }

  .hero .hero-inner{
    padding-top:clamp(8.5rem,22vw,11rem);
    padding-bottom:4rem;
  }

  .service-area{
    overflow-x:hidden;
  }

  .service-area .split{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:2rem;
    align-items:stretch;
  }

  .service-area .split>*,
  .county-card,
  .county-swiper,
  .county-swiper .swiper,
  .county-swiper .swiper-wrapper,
  .county-swiper .swiper-slide{
    max-width:100%;
    min-width:0;
  }

  .county-card{
    width:100%;
  }

  .county-list{
    grid-template-columns:1fr;
    gap:.6rem;
  }

  .county-list li{
    min-height:2.75rem;
    padding:.7rem .8rem;
  }
}

@media(max-width:600px){
  .hero .hero-inner{
    padding-top:8rem;
    padding-bottom:3.5rem;
  }

  .service-area .split{
    display:grid;
    grid-template-columns:1fr;
    gap:2rem;
    align-items:stretch;
  }

  .service-area .split>*{
    width:100%;
    min-width:0;
  }

  .county-card{
    padding:1.25rem;
    border-radius:.85rem;
  }

  .county-card__header{
    align-items:flex-start;
    gap:.8rem;
  }

  .county-card__icon{
    width:2.5rem;
    height:2.5rem;
    flex-basis:2.5rem;
  }

  .county-card h3{
    font-size:1.1rem;
  }

  .county-list{
    grid-template-columns:1fr;
    gap:.6rem;
  }

  .county-list li{
    min-height:2.75rem;
    padding:.7rem .8rem;
  }

  .county-swiper{
    padding-bottom:3.8rem;
  }

  .county-swiper .swiper-pagination{
    bottom:.75rem;
  }

  .county-swiper__nav{
    bottom:.25rem;
  }

  .county-swiper__nav--prev{
    left:calc(50% - 4.75rem);
  }

  .county-swiper__nav--next{
    right:calc(50% - 4.75rem);
  }
}
