:root{--red:#7d1a2e;--red-dark:#5b0d1c;--navy:#1a2e56;--gold:#c9a227;--text:#202936;--muted:#687386;--light:#f4f5f8;--blue-gray:#eef1f6;--border:#dfe4eb}
*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{margin:0;color:var(--text);background:#fff;font-family:Inter,Arial,sans-serif;line-height:1.6;overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit}.container{width:min(1280px,calc(100% - 3rem));margin:auto}.section-pad{padding:5rem 0}.section-muted{background:var(--light)}.section-blue{background:#eef1f6}
/* Product pages start on white, so their shared navigation needs a solid surface. */
.aab-navbar-scope .nav2,
.aab-navbar-scope .topbar{background:#101820!important}
.aab-navbar-scope .topbar.product-scroll-translucent{background:rgba(25,35,46,.96)!important;transition:background-color .3s ease}
.aab-navbar-scope .topbar-link,
.aab-navbar-scope .topbar-link i{color:var(--red)!important}
.eyebrow{margin:0 0 .75rem;color:var(--red);font-size:.75rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.product-hero h1,.section-heading h2,.split-layout h2,.projects-heading h2,.price-layout h2,.product-final h2{margin:.25rem 0 1rem;color:var(--navy);font-size:clamp(2.25rem,4.5vw,4rem);font-weight:800;letter-spacing:-.04em;line-height:1.05}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;min-width:210px;min-height:58px;padding:1rem 1.75rem;border:2px solid transparent;border-radius:.5rem;font-size:.9rem;font-weight:800;line-height:1.2;text-align:center;text-decoration:none;transition:background-color .2s,color .2s,transform .2s}.btn:hover{transform:translateY(-2px)}.btn-primary{color:#fff;background:var(--red)}.btn-primary:hover{background:var(--red-dark)}.btn-outline{border-color:var(--navy);color:var(--navy);background:transparent}.btn-outline:hover{color:#fff;background:var(--navy)}.btn-light{border-color:rgba(255,255,255,.55);color:#fff}.btn-light:hover{background:rgba(255,255,255,.12)}
.product-hero{padding-top:clamp(9rem,15vh,11rem)}.product-hero__grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);gap:3.5rem;align-items:start}.product-hero__content{padding-top:.35rem}.product-hero__content h1{max-width:580px;font-size:clamp(2.45rem,4vw,3.75rem)}.hero-copy{max-width:590px;margin:1.25rem 0 1.15rem;color:var(--muted);font-size:.9rem;line-height:1.65}.product-rating{display:flex;align-items:center;gap:.75rem}.product-rating span{color:var(--gold);font-size:1.05rem;letter-spacing:.1em}.product-rating strong{color:var(--navy);font-size:.8rem}.product-hero__details{display:grid;grid-template-columns:1fr 1fr;gap:1.75rem;padding-top:1rem;border-top:1px solid #e5e7eb}.product-detail-label{display:block;margin-bottom:.45rem;color:#4b5563;font-size:.72rem}.product-size-pills{display:flex;gap:.45rem;flex-wrap:wrap;margin-bottom:.9rem}.product-size-pills span{padding:.35rem .7rem;border-radius:.35rem;color:#4b5563;background:#eef1f6;font-size:.7rem;font-weight:700}.product-starting-price{color:var(--red);font-size:1.75rem;font-weight:800;line-height:1}.product-starting-price sup{font-size:.8rem}.product-purchase-info small{display:block;margin-top:.35rem;color:#687386;font-size:.62rem}.actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.35rem}.product-hero .btn-primary{flex:1;min-width:275px}.product-hero .btn-outline{min-width:180px}.trust-line{display:grid;align-content:center;gap:.55rem;margin:1.25rem 0 0;padding:0;list-style:none;color:#5f6979;font-size:.72rem;font-weight:600}.trust-line li:before{content:'✓';margin-right:.5rem;color:var(--red);font-weight:900}.product-gallery__stage{height:455px;overflow:hidden;border-radius:.75rem;background:#e5e7eb;box-shadow:0 15px 38px rgba(15,23,42,.13)}.product-gallery__stage img{width:100%;height:100%;object-fit:cover;opacity:1;transition:opacity .26s ease,transform .45s ease}.product-gallery__stage img.is-changing{opacity:.25;transform:scale(.995)}.product-gallery__rail{display:grid;grid-template-columns:34px minmax(0,1fr) 34px;gap:.65rem;align-items:center;margin-top:1rem}.product-gallery__thumbs{display:flex;gap:.75rem;overflow-x:auto;padding:2px;scrollbar-width:none}.product-gallery__thumbs::-webkit-scrollbar{display:none}.product-gallery__thumb{flex:0 0 calc((100% - 2.25rem)/4);height:76px;overflow:hidden;padding:0;border:2px solid transparent;border-radius:.5rem;background:#e5e7eb;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease}.product-gallery__thumb img{width:100%;height:100%;object-fit:cover}.product-gallery__thumb.is-active{border-color:var(--red);box-shadow:0 0 0 2px rgba(125,26,46,.12)}.product-gallery__arrow{display:flex;align-items:center;justify-content:center;width:34px;height:44px;padding:0;border:0;color:var(--navy);background:transparent;cursor:pointer;transition:color .2s ease,transform .2s ease}.product-gallery__arrow:hover{color:var(--red);transform:scale(1.08)}
.section-heading{max-width:760px;margin:0 auto 3rem;text-align:center}.section-heading h2{font-size:clamp(2rem,4vw,3.1rem)}.section-heading>p:last-child{color:var(--muted)}.size-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.25rem}.size-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid #edf0f4;border-radius:.75rem;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.1);transition:box-shadow .3s,transform .3s}.size-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(15,23,42,.15)}.card-image{position:relative;height:190px;overflow:hidden;background:#e5e7eb}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.size-card:hover img{transform:scale(1.05)}.card-image span{position:absolute;top:.75rem;left:.75rem;padding:.25rem .55rem;border-radius:.25rem;color:#fff;background:var(--navy);font-size:.72rem;font-weight:800}.card-body{display:flex;flex:1;flex-direction:column;padding:1.25rem}.card-body small{color:#9aa1ad;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.card-body h3{margin:.15rem 0;color:var(--navy);font-size:1.12rem;line-height:1.3}.card-body>strong{color:var(--red);font-size:.84rem}.card-body p{flex:1;color:var(--muted);font-size:.82rem}.card-body p span{display:block}.card-body p span+span{margin-top:.35rem}.card-body a{padding:.65rem;border:2px solid var(--red);border-radius:.5rem;color:var(--red);font-size:.72rem;font-weight:800;text-align:center;text-decoration:none;text-transform:uppercase}.card-body a:hover{color:#fff;background:var(--red)}.center-action{margin-top:2.5rem;text-align:center}
.split-layout{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.split-layout h2{font-size:clamp(2rem,4vw,3rem)}.split-layout>div>p:not(.eyebrow){color:var(--muted)}.builder-media{position:relative;min-height:470px;overflow:hidden;border-radius:1rem;background:var(--navy);box-shadow:0 18px 42px rgba(15,23,42,.2)}.builder-media>img{width:100%;height:470px;object-fit:cover;opacity:.78}.builder-media>span{position:absolute;top:1rem;left:1rem;padding:.45rem .75rem;border-radius:.4rem;color:#fff;background:var(--navy);font-size:.72rem;font-weight:800}.builder-media>div{position:absolute;right:1.5rem;bottom:1.5rem;left:1.5rem;display:flex;justify-content:space-between;gap:1rem;padding:1rem;border-radius:.65rem;background:rgba(255,255,255,.94);box-shadow:0 8px 24px rgba(0,0,0,.2)}.builder-media>div strong{color:var(--navy);font-size:.78rem;text-transform:uppercase}.builder-media>div small{padding:.2rem .45rem;border-radius:.25rem;color:#fff;background:var(--red);font-weight:800}.options-grid{display:grid;grid-template-columns:1fr 1fr;gap:.85rem 1.5rem;margin:1.7rem 0}.options-grid span{display:flex;align-items:center;gap:.7rem;color:#374151;font-size:.85rem;font-weight:600}.options-grid i{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:.35rem;color:var(--navy);background:var(--blue-gray)}.sub-callout{padding-top:1.5rem;border-top:1px solid #edf0f4}.sub-callout h3{margin:0 0 .4rem;color:var(--navy)}
.benefit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.25rem}.benefit-grid article{padding:1.5rem;border:1px solid #edf0f4;border-radius:.75rem;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.08);transition:transform .25s,box-shadow .25s}.benefit-grid article:hover{transform:translateY(-4px);box-shadow:0 10px 24px rgba(15,23,42,.12)}.benefit-grid i{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:.55rem;color:var(--navy);background:var(--blue-gray)}.benefit-grid h3{color:var(--navy);font-size:.88rem;text-transform:uppercase}.benefit-grid p{margin:0;color:var(--muted);font-size:.82rem}
.projects-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;margin-bottom:2.5rem}.projects-heading h2{font-size:clamp(2rem,4vw,3rem)}.projects-heading p:last-child{color:var(--muted)}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.project-card{overflow:hidden;border:1px solid #edf0f4;border-radius:.75rem;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.1);transition:box-shadow .3s}.project-card:hover{box-shadow:0 12px 28px rgba(15,23,42,.15)}.project-card>img{width:100%;height:260px;object-fit:cover;transition:transform .5s}.project-card:hover>img{transform:scale(1.04)}.project-card>div{position:relative;padding:1rem;background:#fff}.project-card h3{margin:0;color:var(--navy);font-size:.9rem}.project-card p{margin:.3rem 0 0;color:var(--muted);font-size:.75rem}.project-card i{color:#136700}
.price-layout{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start}.price-layout h2{font-size:clamp(2rem,4vw,3rem)}.price-layout>div>p{color:var(--muted)}.price-layout>div>h3{margin-top:2rem;color:var(--navy);font-size:.82rem;text-transform:uppercase}.factor-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.factor-grid span{padding:.8rem 1rem;border:1px solid #edf0f4;border-radius:.5rem;background:#fff;font-size:.82rem;font-weight:600}.factor-grid span:before{content:'';display:inline-block;width:7px;height:7px;margin-right:.6rem;border-radius:50%;background:var(--red)}.price-card{overflow:hidden;border:1px solid var(--border);border-radius:1rem;background:#fff;box-shadow:0 15px 36px rgba(15,23,42,.12)}.price-card header{padding:1.25rem 2rem;color:#fff;background:var(--navy)}.price-card header small{color:rgba(255,255,255,.7);font-weight:800;text-transform:uppercase}.price-card header h3{margin:.2rem 0 0}.price-card>div{display:grid;gap:.75rem;padding:2rem}.price-card p{color:var(--muted)}.price-card>div>small{padding-top:1rem;border-top:1px solid #edf0f4;color:#5f6979}
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.25rem;margin:0;padding:0;list-style:none;counter-reset:item}.steps li{position:relative;padding:1.5rem;border-radius:.75rem;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.08)}.steps b{color:var(--red);font-size:1.6rem}.steps h3{margin:.6rem 0 .3rem;color:var(--navy);font-size:.88rem;text-transform:uppercase}.steps p{margin:0;color:var(--muted);font-size:.8rem}
.faq-container{max-width:860px}.faq-list{display:grid;gap:.75rem}.faq-item{overflow:hidden;border:1px solid #edf0f4;border-radius:.75rem;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.08)}.faq-item button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:1.15rem 1.4rem;border:0;color:var(--navy);background:#fff;font:inherit;font-size:.88rem;font-weight:700;text-align:left;cursor:pointer}.faq-item button i{color:#9ca3af;transition:transform .25s}.faq-item.is-open button i{color:var(--red);transform:rotate(180deg)}.faq-answer{max-height:0;overflow:hidden;color:var(--muted);font-size:.85rem;transition:max-height .3s}.faq-answer p{margin:0 1.4rem 1.2rem;padding-top:1rem;border-top:1px solid #edf0f4}.faq-item.is-open .faq-answer{max-height:220px}
.product-final{position:relative;padding:6rem 0;color:#fff;text-align:center;background:linear-gradient(rgba(26,46,86,.92),rgba(26,46,86,.92)),var(--final-bg) center/cover}.product-final .container{max-width:860px}.product-final .eyebrow{color:var(--gold)}.product-final h2{color:#fff}.product-final>div>p:not(.eyebrow){max-width:620px;margin:0 auto 2rem;color:rgba(255,255,255,.76)}.product-final .actions,.product-final .trust-line{justify-content:center}.product-final .trust-line{color:rgba(255,255,255,.72)}.product-final .trust-line li:before{color:var(--gold)}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}.reveal.is-visible{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.size-card,.project-card,.benefit-grid article,.btn{transition:none}}
@media(max-width:1100px){.size-grid,.benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-hero__grid,.split-layout,.price-layout{gap:2.5rem}.product-hero__grid{grid-template-columns:minmax(0,1fr) minmax(380px,.9fr)}.product-gallery__stage{height:400px}.product-hero{padding-top:10rem}}
@media(max-width:900px){.product-hero__grid,.split-layout,.price-layout{grid-template-columns:1fr}.product-hero__grid{display:grid;row-gap:.9rem}.product-hero__content{display:contents}.product-hero__content>.eyebrow{order:1;margin-bottom:0}.product-hero__content>h1{order:2;margin:0 0 .25rem}.product-gallery{order:3;margin:1rem 0}.product-rating{order:4}.hero-copy{order:5;margin:.5rem 0}.product-hero__details{order:6}.product-hero__content>.actions{order:7;margin-top:.75rem}.product-hero{padding-top:9rem}.product-gallery__stage{height:430px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.container{width:min(100% - 2rem,1280px)}.section-pad{padding:4rem 0}.product-hero{padding-top:8.5rem}.product-hero h1{font-size:2.5rem}.product-gallery__stage{height:280px}.product-gallery__thumb{flex-basis:calc((100% - 1.5rem)/3);height:64px}.product-hero__details{grid-template-columns:1fr;gap:.5rem}.product-hero .actions .btn{width:100%;min-width:0}.trust-line{margin-top:.5rem}.size-grid,.benefit-grid,.project-grid,.steps{grid-template-columns:1fr}.card-image{height:220px}.builder-media,.builder-media>img{min-height:350px;height:350px}.builder-media>div{right:.8rem;bottom:.8rem;left:.8rem}.options-grid,.factor-grid{grid-template-columns:1fr}.projects-heading{align-items:stretch;flex-direction:column}.projects-heading .btn{width:100%}.project-card>img{height:230px}.price-card header,.price-card>div{padding:1.4rem}.product-final{padding:5rem 0}}

/* Smooth accordion reveal for product FAQs. */
.card-body a {
  border-color: var(--navy);
  color: var(--navy);
  text-transform: none;
}

.card-body a:hover,
.card-body a:focus {
  color: #fff;
  background: var(--navy);
}

.card-body > strong {
  color: #4b5563;
  font-weight: 500;
}

.faq-answer {
  display: grid;
  grid-template-rows: 0fr;
  max-height: none;
  opacity: 0;
  transition: grid-template-rows .35s ease, opacity .25s ease;
}

.faq-answer p {
  min-height: 0;
  margin-bottom: 0;
  padding-top: 0;
  border-top-color: transparent;
  opacity: 0;
  transform: translateY(-8px);
  transition: opacity .28s ease .06s, transform .35s ease .04s,
    padding .35s ease, margin .35s ease, border-color .35s ease;
}

.faq-item.is-open .faq-answer {
  grid-template-rows: 1fr;
  max-height: none;
  opacity: 1;
}

.faq-item.is-open .faq-answer p {
  margin-bottom: 1.2rem;
  padding-top: 1rem;
  border-top-color: #edf0f4;
  opacity: 1;
  transform: none;
}

@media (prefers-reduced-motion: reduce) {
  .faq-answer,
  .faq-answer p {
    transition: none;
  }
}

/* Standard FAQ composition shared with service-area and commercial-buildings. */
.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);
}

.faq-item button {
  padding: 1rem 1.5rem;
  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-item.is-open button .faq-chevron i {
  color: inherit;
  transform: none;
}

.faq-answer[hidden] {
  display: none;
}

.faq-answer {
  display: block;
  max-height: 0;
  padding: 0 1.5rem;
  opacity: 0;
  transition: max-height .35s ease, opacity .25s ease, padding .35s ease;
}

.faq-answer::before {
  content: "";
  display: block;
  height: 1px;
  margin-bottom: 1rem;
  background: #f0f1f4;
}

.faq-answer p {
  margin: 0;
  padding-top: 0;
  border-top: 0;
}

.faq-item.is-open .faq-answer {
  max-height: 26rem;
  padding-bottom: 1.25rem;
  opacity: 1;
}
