:root{--site-bg:#f4f6f7;--site-surface:#fff;--site-paper:#f8fafb;--site-text:#151515;--site-muted:#5b6168;--site-navy:#06283a;--site-navy-light:#0d425d;--site-blue:#0874d8;--site-blue-dark:#043e7c;--site-yellow:#ffdc82;--site-green:#2f6f5e;--site-orange:#ff6a21;--site-orange-dark:#d84a0c;--site-line:#e3e7ea;--site-shadow:0 18px 45px rgb(21 21 21 / 9%);--site-hard-shadow:0 28px 70px rgb(6 40 58 / 22%)}html{scroll-behavior:smooth}body{background:var(--site-bg);color:var(--site-text);font-family:Inter,Arial,sans-serif;line-height:1.55}img{display:block;max-width:100%}a{color:inherit}a:hover{color:var(--site-blue);text-decoration:none}.brand,.btn,.eyebrow,.navbar-nav,h1,h2,h3{font-family:Archivo,Inter,Arial,sans-serif}h1,h2,h3{color:var(--site-text);font-weight:800;letter-spacing:0}h1{font-size:clamp(2.75rem, 5.4vw, 4.95rem);line-height:.97}h2{font-size:clamp(2rem, 3.6vw, 3.45rem);line-height:1.03}h3{font-size:1.35rem;line-height:1.12}.container{max-width:1140px}.py-lg-6{padding-bottom:5rem;padding-top:5rem}.site-header{background:#fff;border-bottom:1px solid;backdrop-filter:blur(14px)}.top-strip{background:var(--site-navy);color:rgb(255 255 255 / 82%);font-size:.76rem;font-weight:700;letter-spacing:0}.top-strip .container{min-height:2.4rem;padding-bottom:.55rem;padding-top:.55rem}.brand img{width:154px;height:auto}.navbar-toggler{border-radius:4px}.navbar-nav .nav-link{padding-left:.85rem;padding-right:.85rem;color:#2d3136;font-size:1.18rem;font-weight:800;letter-spacing:0}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:var(--site-blue)}.header-phone{display:inline-flex;align-items:center;gap:.75rem;min-width:14.2rem;padding:.85rem 1rem;background:var(--site-navy);color:#fff;font-size:.75rem;white-space:nowrap}.header-phone strong{display:block;font-size:.95rem;line-height:1.1}.mail-mark,.phone-mark{display:inline-grid;width:2.2rem;height:2.2rem;flex:0 0 2.2rem;place-items:center;background:var(--site-orange)}.phone-mark{border-radius:999px}.feature-icon svg,.mail-mark svg,.phone-mark svg,.promise-icon svg,.success-icon svg{width:1.25rem;height:1.25rem;fill:none;stroke:currentcolor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.btn{min-height:3rem;padding:.72rem 1.65rem;border-radius:4px;font-size:.82rem;font-weight:800;letter-spacing:0}.btn-primary{background:var(--site-orange);border-color:var(--site-orange);color:#fff}.btn-primary:focus,.btn-primary:hover{background:var(--site-orange-dark);border-color:var(--site-orange-dark);color:#fff}.btn-secondary{background:#fff;border-color:#fff;color:var(--site-blue)}.btn-light:focus,.btn-light:hover,.btn-outline-primary:focus,.btn-outline-primary:hover,.btn-secondary:focus,.btn-secondary:hover{background:var(--site-blue-dark);border-color:var(--site-blue-dark);color:#fff}.btn-outline-primary{border-color:var(--site-blue);color:var(--site-blue)}.btn-outline-light{border-color:rgb(255 255 255 / 70%);color:#fff}.btn-outline-light:focus,.btn-outline-light:hover{background:#fff;border-color:#fff;color:var(--site-navy)}.home-hero{position:relative;overflow:hidden;background:linear-gradient(90deg,rgb(6 40 58 / 94%) 0,rgb(6 40 58 / 86%) 46%,rgb(6 40 58 / 44%) 100%),url("/images/live/roof-repair-crew.webp") center/cover no-repeat;color:#fff}.home-hero::before{position:absolute;inset:0;background:linear-gradient(135deg,rgb(255 106 33 / 18%) 0 18%,transparent 18% 100%),linear-gradient(135deg,transparent 0 62%,rgb(13 66 93 / 42%) 62% 100%);content:"";pointer-events:none}.hero-content{position:relative;z-index:2;min-height:38rem;padding:4.5rem 0 8.5rem}.home-hero h1{max-width:44rem;color:#fff;text-shadow:0 1rem 2rem rgb(0 0 0 / 24%)}.home-hero .hero-copy{color:rgb(255 255 255 / 82%)}.home-hero .eyebrow{color:var(--site-orange)}.hero-angle{position:absolute;right:0;bottom:-1px;left:0;z-index:1;height:7.5rem;background:var(--site-bg);clip-path:polygon(0 48%,48% 82%,100% 48%,100% 100%,0 100%)}.eyebrow{margin-bottom:.85rem;color:var(--site-green);font-size:.78rem;font-weight:800;text-transform:uppercase}.hero-copy,.lead-copy{color:var(--site-muted);font-size:1.05rem}.hero-copy{max-width:40rem;margin-bottom:0}.cta-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.6rem}.hero-person{width:min(15rem,72vw);margin-bottom:1.1rem;object-fit:contain}.card{border-radius:6px}.contact-form,.hero-booking,.info-card,.service-detail,.stats-card,.visual-card{box-shadow:var(--site-shadow)}.hero-booking{overflow:hidden;background:rgb(255 255 255 / 94%);border-top:5px solid var(--site-orange)!important}.hero-booking .card-body{padding:2rem;text-align:center}.hero-booking h2{margin-bottom:1rem;font-size:clamp(2rem, 4vw, 3.75rem)}.hero-booking p{color:var(--site-muted);font-weight:800}.hero-stat-band{max-width:41rem;margin-top:2.5rem;background:rgb(255 255 255 / 11%);border:1px solid;backdrop-filter:blur(16px)}.stat-item{padding:1.65rem 2rem}.stat-item strong{display:block;color:#fff;font-size:clamp(2rem, 4vw, 3.35rem);font-weight:800;line-height:1}.stat-item small{display:block;margin-top:.55rem;color:rgb(255 255 255 / 78%);font-size:.78rem;font-weight:800}.service-promise{position:relative;z-index:3;margin-top:-4.5rem;padding-bottom:4rem}.promise-card{height:100%;padding:2rem 1.65rem;background:#fff;border-bottom:3px solid var(--site-line);box-shadow:0 20px 46px rgb(6 40 58 / 10%)}.promise-card:hover{border-bottom-color:var(--site-orange)}.promise-icon{display:grid;width:3.25rem;height:3.25rem;place-items:center;margin-bottom:1.25rem;background:#eff6fa}.promise-icon svg{width:1.55rem;height:1.55rem;color:var(--site-navy)}.promise-card h3{font-size:1.12rem}.promise-card p{margin-bottom:0;color:var(--site-muted);font-size:.92rem}.section{padding:5.5rem 0}.partner-section{background:#fff}.gallery-section .eyebrow,.partner-section .eyebrow,.services-section .eyebrow{color:var(--site-orange)}.partner-photo{position:relative;margin:0}.partner-photo>img{width:100%;aspect-ratio:0.88;object-fit:cover;object-position:48% 38%;box-shadow:var(--site-hard-shadow)}.partner-photo figcaption{position:absolute;top:2rem;left:2rem;display:grid;width:7.5rem;min-height:7.5rem;place-items:center;padding:1rem;background:var(--site-yellow);box-shadow:0 16px 34px rgb(6 40 58 / 15%);text-align:center}.cap-icon{display:block;font-family:Archivo,Inter,Arial,sans-serif;font-size:2rem;font-weight:800;line-height:1}.cap-icon span{color:var(--site-blue);font-size:1.25rem}.partner-photo small{font-size:.68rem;font-weight:800}.feature-list{display:grid;gap:1rem}.feature-card{min-height:8.25rem;padding:1.35rem;background:var(--site-surface);border:1px solid var(--site-line);border-radius:6px;box-shadow:0 14px 32px rgb(21 21 21 / 5%)}.feature-card:hover{border-color:rgb(255 106 33 / 42%);box-shadow:0 20px 42px rgb(6 40 58 / 11%)}.feature-icon{display:grid;width:3.2rem;height:3.2rem;flex:0 0 3.2rem;place-items:center;background:var(--site-navy);border-radius:4px}.feature-icon svg{width:1.45rem;height:1.45rem;color:#fff}.feature-card h3,.info-card h3,.process-item h3,.service-tab-pane h3,.visual-card h3{margin-bottom:.65rem;font-size:1.35rem}.contact-box p,.feature-card p,.info-card p,.process-item p,.service-info-box p,.visual-card p{margin-bottom:0;color:var(--site-muted)}.muted,.services-section{background:#eef3f5}.service-tabs{overflow:hidden;background:#fff;border:1px solid var(--site-line);border-radius:6px}.service-tab-link{display:block;width:100%;padding:1.15rem 1.2rem;border-bottom:1px solid var(--site-line);color:var(--site-text);font-family:Archivo,Inter,Arial,sans-serif;font-weight:800;text-decoration:none}.service-tab-link:last-child{border-bottom:0}.service-tab-link:focus,.service-tab-link:hover{color:var(--site-navy);text-decoration:none}.service-tab-link:focus{outline:solid 3px;outline-offset:-3px}.service-tab-link.active{background:var(--site-navy);color:#fff}.service-tab-link.active::before{display:inline-block;width:.42rem;height:.42rem;margin-right:.65rem;background:var(--site-orange);content:"";vertical-align:middle}.service-tab-content{overflow:hidden;background:var(--site-surface);border-radius:6px;box-shadow:var(--site-hard-shadow)}.service-tab-pane img{width:100%;height:100%;min-height:24rem;object-fit:cover}.service-info-box{height:100%;padding:clamp(1.5rem,3.5vw,2.6rem)}.service-info-box ul{display:grid;gap:.8rem;margin:1.65rem 0 1.8rem;padding:0;color:#242424;font-size:.9rem;list-style:none}.service-info-box li{position:relative;padding-left:1.7rem}.service-info-box li::before{position:absolute;top:.22em;left:.12rem;width:.62rem;height:.36rem;border-bottom:2px solid var(--site-orange);border-left:2px solid var(--site-orange);content:"";transform:rotate(-45deg)}.service-link{display:inline-flex;align-items:center;padding:.82rem 1rem;background:var(--site-orange);color:#fff;border-radius:4px;font-family:Archivo,Inter,Arial,sans-serif;font-size:.82rem;font-weight:800;text-decoration:none}.service-link::after{margin-left:.55rem;content:">"}.service-link:focus,.service-link:hover{background:#e85312;color:#fff;text-decoration:none}.gallery-section{background:#fff;padding-top:4.5rem}.gallery-grid img,.visual-card img{width:100%;object-fit:cover;background:#e8ecef}.gallery-thumb{display:block;position:relative;width:100%;padding:0;overflow:hidden;background:0 0;border:0;cursor:pointer}.gallery-thumb::after{position:absolute;inset:0;display:grid;place-items:center;background:rgb(6 40 58 / 0%);color:#fff;content:"+";font-family:Archivo,Inter,Arial,sans-serif;font-size:2.5rem;font-weight:800;opacity:0;transition:background 160ms,opacity 160ms}.gallery-thumb:focus::after,.gallery-thumb:hover::after{background:rgb(6 40 58 / 48%);opacity:1}.gallery-thumb:focus{outline:solid 3px var(--site-blue);outline-offset:4px}.gallery-grid img{aspect-ratio:1;box-shadow:0 16px 34px rgb(6 40 58 / 8%)}.gallery-modal .modal-content{overflow:hidden;background:#061f2d;border:0;border-radius:6px;color:#fff;box-shadow:0 2rem 5rem rgb(0 0 0 / 34%)}.gallery-modal .modal-header{align-items:center;padding:1rem 1.25rem;border-bottom:1px solid;border-bottom-color:rgb(255 255 255 / 12%)}.gallery-modal .modal-title{color:#fff;font-size:1.1rem}.gallery-modal .close{color:#fff;opacity:.8;text-shadow:none}.gallery-modal .close:focus,.gallery-modal .close:hover{opacity:1}.gallery-modal .modal-body{padding:0}.gallery-viewer{position:relative;background:#03131d}.gallery-stage{margin:0}.gallery-stage img{display:block;width:100%;max-height:min(74vh,48rem);object-fit:contain;background:#03131d}.gallery-stage figcaption{display:flex;gap:1rem;align-items:center;justify-content:space-between;padding:.95rem 1.25rem 1.15rem;background:#061f2d;color:rgb(255 255 255 / 78%);font-weight:700}.gallery-stage small{flex:0 0 auto;color:rgb(255 255 255 / 58%);font-family:Archivo,Inter,Arial,sans-serif;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.gallery-nav{position:absolute;top:50%;z-index:2;display:grid;width:3rem;height:3rem;place-items:center;background:rgb(6 40 58 / 82%);border:1px solid;border-color:rgb(255 255 255 / 20%);border-radius:999px;color:#fff;cursor:pointer;font-size:2rem;line-height:1;transform:translateY(-50%);transition:background 160ms,border-color 160ms,transform 160ms}.gallery-nav:focus,.gallery-nav:hover{background:var(--site-orange);border-color:var(--site-orange);outline:0;transform:translateY(-50%) scale(1.04)}.gallery-nav-prev{left:1rem}.gallery-nav-next{right:1rem}.visual-card img{aspect-ratio:1.15}.info-card .card-body,.visual-card .card-body{padding:1.55rem}.booking-band,.contact-box{gap:1.5rem;padding:2rem;border-radius:6px}.booking-band{position:relative;overflow:hidden;background:var(--site-navy);color:#fff}.booking-band::before{position:absolute;inset:0 auto 0 0;width:38%;background:var(--site-orange);clip-path:polygon(0 0,82% 0,100% 100%,0 100%);content:"";opacity:.95}.booking-band h2{position:relative;margin-bottom:1rem;color:#fff}.booking-band .btn{position:relative}.contact-hero,.page-hero{position:relative;overflow:hidden;padding:5.5rem 0 4.5rem;background:linear-gradient(90deg,rgb(6 40 58 / 94%),rgb(6 40 58 / 76%)),url("/images/live/partner-workbench-display.webp") center/cover no-repeat;color:#fff}.contact-hero{background:linear-gradient(90deg,rgb(6 40 58 / 84%),rgb(6 40 58 / 58%)),url("/images/live/partner-workbench-display.webp") center/cover no-repeat}.contact-hero::after,.page-hero::after{position:absolute;right:-6rem;bottom:-8rem;width:26rem;height:18rem;background:rgb(255 106 33 / 18%);content:"";transform:rotate(-18deg)}.contact-hero .container,.page-hero .container{position:relative;z-index:1}.contact-hero h1,.page-hero h1{color:#fff}.contact-hero .hero-copy,.page-hero .hero-copy{color:rgb(255 255 255 / 80%)}.contact-hero .eyebrow,.page-hero .eyebrow{color:var(--site-orange)}.stats-card .card-body{padding:1.5rem}.stat-note{padding:1.1rem 0;border-bottom:1px solid var(--site-line)}.stat-note:first-child{padding-top:0}.stat-note:last-child{padding-bottom:0;border-bottom:0}.stat-note span,.stat-note strong{display:block}.stat-note strong{margin-bottom:.25rem;font-family:Archivo,Inter,Arial,sans-serif;font-size:1.05rem}.stat-note span{color:var(--site-muted);font-size:.9rem}.section-intro{padding-bottom:3rem}.info-card,.process-item,.visual-card{background:var(--site-surface)}.process-list{display:grid;gap:1rem}.process-item{padding:1.35rem;border:1px solid var(--site-line);border-radius:6px}.contact-box{background:var(--site-surface);border:1px solid var(--site-line);box-shadow:var(--site-shadow)}.contact-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:flex-start}.contact-section{padding-top:4.5rem}.contact-panel h2{margin-bottom:1rem}.contact-panel p{color:var(--site-muted)}.contact-methods{display:grid;gap:1rem;margin-top:2rem}.contact-methods a{display:flex;gap:.9rem;align-items:center;padding:1.1rem;background:var(--site-surface);border:1px solid var(--site-line);border-radius:6px}.contact-methods span,.contact-methods strong{display:block}.contact-methods>a>span:last-child{color:var(--site-muted);font-size:.8rem}.contact-methods strong{color:var(--site-text);font-size:.95rem}.contact-form .card-body{padding:clamp(1.5rem,4vw,2.75rem)}.contact-success{overflow:hidden;background:#fff;box-shadow:var(--site-hard-shadow)}.contact-success .card-body{padding:clamp(2rem,5vw,4rem)}.success-icon{display:grid;width:4.8rem;height:4.8rem;place-items:center;margin-bottom:1.5rem;background:#e9f7ef;border:1px solid #c7ecd4;border-radius:999px}.success-icon svg{width:2.35rem;height:2.35rem;color:#1f8a48;stroke-width:3}.contact-success h2{max-width:34rem;margin-bottom:1rem}.contact-success p:not(.eyebrow){max-width:38rem;color:var(--site-muted);font-size:1.05rem}.success-next{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:2rem 0}.success-next>div{padding:1.25rem;background:#f4f8fa;border-left:4px solid var(--site-orange)}.success-next span,.success-next strong{display:block}.success-next strong{margin-bottom:.35rem;font-family:Archivo,Inter,Arial,sans-serif;font-size:.95rem}.success-next span{color:var(--site-muted);font-size:.92rem}.success-workorder{margin:0 0 1.5rem;padding:1.45rem;background:#fff7f1;border:1px solid;border-left:4px solid var(--site-orange)}.success-workorder span,.success-workorder strong{display:block}.success-workorder strong{margin-bottom:.4rem;font-family:Archivo,Inter,Arial,sans-serif;font-size:1rem}.success-workorder span{max-width:42rem;margin-bottom:1rem;color:var(--site-muted);font-size:.95rem}.contact-form label{font-family:Archivo,Inter,Arial,sans-serif;font-size:.78rem;font-weight:800;text-transform:uppercase}.form-control{min-height:3.25rem;border-color:var(--site-line);border-radius:4px;background:#fbfcfc;color:var(--site-text)}.form-control:focus{border-color:var(--site-blue);box-shadow:0 0 0 .2rem rgb(11 108 255 / 15%)}textarea.form-control{min-height:10rem;resize:vertical}.form-hp{position:absolute;left:-9999px}@media (width <= 991.98px){.py-lg-6{padding-bottom:3rem;padding-top:3rem}.navbar-nav{padding-top:1rem}.navbar-nav .nav-link{padding-left:0;padding-right:0}.hero-person{margin-top:1rem}.hero-content{min-height:auto;padding:3.75rem 0 7rem}.hero-booking{max-width:28rem;margin:0 auto}.section{padding:4rem 0}.service-tab-pane img{height:20rem;min-height:20rem}.contact-actions{justify-content:flex-start}}@media (width <= 767.98px){h1{font-size:clamp(2.45rem, 11vw, 3.4rem)}h2{font-size:clamp(1.9rem, 8vw, 2.65rem)}.brand img{width:132px}.top-strip{text-align:center}.top-strip span{display:block}.top-strip span+span{margin-top:.25rem}.header-phone{white-space:normal}.home-hero{background:linear-gradient(180deg,rgb(6 40 58 / 95%),rgb(6 40 58 / 82%)),url("/images/live/roof-repair-crew.webp") center/cover no-repeat}.hero-stat-band{margin-left:0;margin-right:0}.booking-band,.contact-box,.hero-booking .card-body{padding:1.45rem}.booking-band{text-align:center}.booking-band::before{width:100%;height:.55rem;clip-path:none}.partner-photo figcaption{top:1rem;left:1rem}.feature-card{display:block;text-align:center}.feature-icon{margin:0 auto 1rem}.service-tab-pane img{height:16rem;min-height:16rem}.gallery-modal .modal-dialog{margin:.75rem}.gallery-stage img{max-height:68vh}.gallery-stage figcaption{display:block;padding:.85rem 1rem 1rem}.gallery-stage small{display:block;margin-top:.35rem}.gallery-nav{width:2.5rem;height:2.5rem;font-size:1.75rem}.gallery-nav-prev{left:.55rem}.gallery-nav-next{right:.55rem}.contact-hero,.page-hero{padding:4rem 0 3rem;text-align:center}.contact-actions,.cta-row{justify-content:center}.contact-panel{text-align:center}.success-next{grid-template-columns:1fr}}