*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:#172033;line-height:1.6;background:#fff}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.wrap{width:min(1160px,92%);margin:auto}.top{background:#061a34;color:#fff;font-size:.92rem}.top .wrap{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0}.nav{position:sticky;top:0;z-index:30;background:#081a34;color:#fff;border-bottom:1px solid #21344c}.navin{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand img{width:205px;max-height:58px;object-fit:contain}.links{display:flex;align-items:center;gap:1.15rem;font-weight:750;font-size:.94rem}.links .cta,.btn.primary{background:#f6c531;color:#081a34}.links .cta{padding:.8rem 1rem;border-radius:8px}.menu{display:none;background:none;border:1px solid #47617e;color:#fff;border-radius:8px;padding:.5rem .7rem;font-size:1.2rem}.hero,.pagehero{color:#fff;background:linear-gradient(90deg,rgba(5,18,37,.95),rgba(5,18,37,.58)),url("https://i0.wp.com/nobleroofingtexas.com/wp-content/uploads/2026/04/IMG_5524-scaled.webp?fit=1600%2C1200&ssl=1") center/cover}.hero{min-height:650px;display:grid;align-items:center}.hero .content{max-width:800px;padding:5rem 0}.pagehero{padding:6.5rem 0 4.5rem}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:900;color:#f6c531;font-size:.8rem}.hero h1,.pagehero h1{font-size:clamp(2.7rem,6vw,5rem);line-height:1.02;margin:.6rem 0 1rem;letter-spacing:-.04em}.hero p,.pagehero p{font-size:1.12rem;color:#dbe5ef;max-width:720px}.actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.5rem}.btn{display:inline-flex;justify-content:center;align-items:center;padding:1rem 1.2rem;border-radius:8px;font-weight:850;border:2px solid transparent}.btn.secondary{border-color:#fff;color:#fff}.btn.dark{background:#081a34;color:#fff}.section{padding:4.7rem 0}.section.alt{background:#f5f7fa}.section.dark{background:#081a34;color:#fff}.section h2{font-size:clamp(2rem,4vw,3.15rem);line-height:1.1;margin:.4rem 0 1rem;letter-spacing:-.03em}.lede{font-size:1.08rem;color:#5e6979;max-width:760px}.dark .lede{color:#c9d5e2}.grid{display:grid;gap:1.25rem}.services{grid-template-columns:repeat(4,1fr);margin-top:2rem}.card{background:#fff;border:1px solid #e0e6ec;border-radius:14px;overflow:hidden;box-shadow:0 12px 30px rgba(7,24,45,.06)}.card .pad{padding:1.35rem}.card h3{margin:.1rem 0 .5rem}.card p{color:#657183}.photo{width:100%;height:215px;object-fit:cover}.num{font-size:.8rem;color:#c99c00;font-weight:900}.split{display:grid;grid-template-columns:1.05fr .95fr;gap:3rem;align-items:center}.featurelist{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:1.6rem}.feature{border-top:2px solid #e2e7ed;padding:1rem 0}.feature b{display:block;color:#081a34}.process{grid-template-columns:repeat(4,1fr);margin-top:2rem}.step{background:#fff;border:1px solid #dfe5ec;border-radius:12px;padding:1.4rem}.step .n{font-size:1.9rem;color:#c99c00;font-weight:900}.bullets{padding-left:1.2rem}.bullets li{margin:.45rem 0}.gallery{grid-template-columns:repeat(3,1fr)}.gallery img{height:300px;width:100%;object-fit:cover;border-radius:12px}.estimate{display:grid;grid-template-columns:.9fr 1.1fr;gap:3rem}.form{background:#fff;padding:1.5rem;border-radius:14px;color:#172033;box-shadow:0 18px 40px rgba(0,0,0,.14)}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form input,.form textarea{width:100%;padding:.9rem 1rem;border:1px solid #ccd5df;border-radius:8px;font:inherit}.form textarea{min-height:120px;resize:vertical}.checks{display:flex;gap:1rem;flex-wrap:wrap;padding:.7rem 0}.check{display:flex;gap:.4rem;align-items:center}.check input{width:auto}.form button{width:100%;cursor:pointer}.note{font-size:.88rem;color:#718096}.ctaBand{background:#f6c531;color:#081a34;padding:2.3rem 0}.ctaBand .wrap{display:flex;align-items:center;justify-content:space-between;gap:2rem}.footer{background:#051326;color:#dbe4ef;padding:3.2rem 0 1.2rem}.footergrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem}.footer img{width:210px}.footer h4{color:#fff;margin-top:0}.footer a{display:block;margin:.35rem 0}.copyright{border-top:1px solid #21344c;margin-top:2rem;padding-top:1rem;color:#99acc0;font-size:.9rem}.mobilebar{display:none}.article{max-width:850px}.article h2{margin-top:2rem}.notice{background:#fff5cf;color:#6b5300;padding:.85rem 1rem;border-radius:8px}.projectHero{border-radius:14px;min-height:430px;width:100%;object-fit:cover}@media(max-width:920px){.links{display:none;position:absolute;top:82px;left:0;right:0;background:#081a34;padding:1rem 4%;flex-direction:column;align-items:flex-start}.links.open{display:flex}.menu{display:block}.services,.process{grid-template-columns:repeat(2,1fr)}.split,.estimate{grid-template-columns:1fr}.gallery{grid-template-columns:1fr 1fr}}@media(max-width:620px){body{padding-bottom:66px}.top span{display:none}.top .wrap{justify-content:center}.brand img{width:175px}.navin{min-height:74px}.links{top:74px}.hero{min-height:610px}.services,.process,.featurelist,.formgrid,.gallery,.footergrid{grid-template-columns:1fr}.section{padding:3.8rem 0}.pagehero{padding:5rem 0 3.5rem}.ctaBand .wrap{display:block}.ctaBand .btn{margin-top:1rem}.mobilebar{display:grid;grid-template-columns:1fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:100;box-shadow:0 -3px 18px rgba(0,0,0,.2)}.mobilebar a{padding:.9rem;text-align:center;font-weight:900}.mobilebar a:first-child{background:#081a34;color:#fff}.mobilebar a:last-child{background:#f6c531;color:#081a34}}
.hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 390px;
  justify-content:space-between;
  gap:2rem;
  align-items:start;
  padding:3.25rem 0 2.5rem;
}
.hero .content{
  max-width:520px;
  padding:1.25rem 0 0;
}
.hero-form{
  max-width:390px;
  width:100%;
  margin-left:auto;
  align-self:start;
  padding:1.5rem;
}
.hero-form h2{
  font-size:1.55rem !important;
  margin:0 0 .35rem !important;
}
.hero-form .note{
  font-size:.92rem;
  margin-bottom:.8rem;
}
.hero-form .formgrid{
  grid-template-columns:1fr;
  gap:.75rem;
}
.hero-form textarea{
  margin-top:.75rem;
  min-height:110px;
}
.hero-form .checks{
  display:grid;
  grid-template-columns:1fr;
  gap:.35rem;
  padding:.7rem 0;
}
.hero-form button{
  width:100%;
}
@media(max-width:880px){
  .hero-grid{
    grid-template-columns:1fr;
    gap:2rem;
    padding:3rem 0;
  }
  .hero .content{
    max-width:680px;
  }
  .hero-form{
    max-width:520px;
    margin-left:0;
  }
}
@media(max-width:620px){
  .hero-grid{padding:2rem 0 3rem}
  .hero-form{max-width:none}
  .hero h1{font-size:clamp(2.5rem,14vw,4rem)}
}

@media(min-width:881px){
  .hero h1{
    font-size:clamp(3rem,5.2vw,4.25rem);
  }
  .hero .content p{
    max-width:510px;
  }
}

.warranty-pill{display:inline-block;margin:.9rem 0 .1rem;padding:.5rem .9rem;border:1px solid rgba(246,197,49,.85);border-radius:999px;background:rgba(246,197,49,.1);color:#f6c531;font-weight:900;letter-spacing:.08em;text-transform:uppercase;font-size:.88rem}
.roofing-intro p:not(.lede){color:#455265}
.roofing-service-list{display:grid;grid-template-columns:1fr 1fr;gap:.65rem .9rem;margin-top:1.35rem}
.roofing-service-list a,.roofing-service-list span{padding:.8rem .9rem;background:#f5f7fa;border-left:3px solid #f6c531;border-radius:5px;font-weight:750}
.roof-signs{grid-template-columns:repeat(3,1fr);margin-top:2rem}
.local-projects{grid-template-columns:repeat(3,1fr);margin-top:2rem}
.project-card{background:#fff;color:#172033;border-radius:14px;overflow:hidden}
.project-card img{width:100%;height:220px;object-fit:cover}
.project-card .pad{padding:1.25rem}
.project-card h3{margin:.3rem 0 .5rem}
.project-card p{margin:0;color:#5e6979}
.project-meta{font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em;color:#a77e00}
.service-areas{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.5rem}
.service-areas a,.service-areas span{padding:.7rem 1rem;border:1px solid #d8e0e8;border-radius:999px;background:#fff;font-weight:800}
.service-areas a{border-color:#f6c531}
.roofing-faq{max-width:900px}
.roofing-faq details{border-bottom:1px solid #dce3ea;padding:1rem 0}
.roofing-faq summary{cursor:pointer;font-weight:850;font-size:1.05rem}
.roofing-faq details p{color:#5e6979;margin-bottom:.2rem}
@media(max-width:920px){.roof-signs,.local-projects{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.roofing-service-list,.roof-signs,.local-projects{grid-template-columns:1fr}.project-card img{height:240px}}

.gutter-size-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;margin:2rem 0 3rem}
.gutter-size-card{background:#f5f7fa;border:1px solid #dfe5ec;border-radius:14px;padding:1.6rem;position:relative}
.gutter-size-card.featured{border:2px solid #f6c531;background:#fffaf0}
.gutter-size{display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:50%;background:#081a34;color:#fff;font-size:1.4rem;font-weight:900;margin-bottom:.75rem}
.gutter-size-card.featured .gutter-size{background:#f6c531;color:#081a34}
.gutter-size-card h3{font-size:1.45rem;margin:.15rem 0 .65rem}
.gutter-measure{margin-top:1rem}
.city-gutter-grid{grid-template-columns:repeat(2,1fr);margin-top:2rem}
.city-gutter-card{border:1px solid #dfe5ec;border-radius:14px;padding:1.5rem;background:#fff}
.city-gutter-card h3{margin:.1rem 0 .65rem;font-size:1.35rem}
.city-gutter-card p{color:#566273}
@media(max-width:760px){.gutter-size-grid,.city-gutter-grid{grid-template-columns:1fr}}

.city-roof-grid{grid-template-columns:repeat(2,1fr);margin-top:2rem}
.city-roof-card{background:#fff;border:1px solid #dfe5ec;border-radius:14px;padding:1.5rem}
.city-roof-card h3{margin:.1rem 0 .65rem;font-size:1.35rem}
.city-roof-card p{color:#566273}
.city-roof-card a{display:inline-block;margin-top:.35rem;color:#081a34}
@media(max-width:760px){.city-roof-grid{grid-template-columns:1fr}}

.trust-grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-top:1.5rem}
.trust-grid>div{padding:1rem;border:1px solid #dde4eb;border-radius:10px;background:#fff}
.trust-grid b{display:block;color:#081a34;margin-bottom:.2rem}
.trust-grid span{font-size:.92rem;color:#657183}
.price-grid{grid-template-columns:1fr 1fr;margin-top:1.5rem}
.price-point{background:#fff;border:1px solid #dfe5ec;border-radius:10px;padding:1rem}
.price-point b{display:block;color:#081a34;margin-bottom:.25rem}
.price-point span{color:#657183;font-size:.92rem}
.area-hub-grid{grid-template-columns:repeat(2,1fr);margin-top:2rem}
.area-hub-card{border:1px solid #dfe5ec;border-radius:14px;padding:1.5rem;background:#fff}
.area-hub-card h3{margin:.1rem 0 .5rem}
.area-hub-card p{color:#566273}
.project-index{grid-template-columns:repeat(3,1fr)}
.project-index-card{scroll-margin-top:110px}
@media(max-width:920px){.project-index{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.trust-grid,.price-grid,.area-hub-grid,.project-index{grid-template-columns:1fr}}

@media(max-width:1080px){.links{display:none;position:absolute;top:82px;left:0;right:0;background:#081a34;padding:1rem 4%;flex-direction:column;align-items:flex-start}.links.open{display:flex}.menu{display:block}}
