:root{--navy:#0e1f30;--navy-2:#16293d;--charcoal:#1b2128;--steel:#5c6773;--steel-light:#8c97a1;--warm-white:#f6f4ef;--paper:#fff;--line:#dcd7c9;--line-on-dark:#ffffff24;--teal:#2f6f62;--teal-dark:#21534a;--teal-light:#77c0a8;--teal-tint:#e4eeea;--red:#a6363a;--font-display:"Archivo", sans-serif;--font-body:"Inter", sans-serif;--font-mono:"IBM Plex Mono", monospace;--maxw:1200px;--gutter:24px;--radius:3px;--shadow-card:0 1px 2px #0e1f300f, 0 8px 24px #0e1f300f;--ease:cubic-bezier(.22,.61,.36,1)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}body{font-family:var(--font-body);color:var(--charcoal);background:var(--warm-white);-webkit-font-smoothing:antialiased;margin:0;line-height:1.55}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}ul{margin:0;padding:0;list-style:none}h1,h2,h3,h4,p,figure{margin:0}button{cursor:pointer;font-family:inherit}input,textarea,select{font-family:inherit;font-size:1rem}svg{display:block}.container{max-width:var(--maxw);padding:0 var(--gutter);margin:0 auto}.section{padding:88px 0}.section--tight{padding:56px 0}@media (width<=780px){.section{padding:60px 0}.section--tight{padding:40px 0}}.section--navy{background:var(--navy);color:#fff}.section--navy2{background:var(--navy-2);color:#fff}.section--paper{background:var(--paper)}.section--tint{background:var(--teal-tint)}.grid{gap:32px;display:grid}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-5{grid-template-columns:repeat(5,1fr)}@media (width<=980px){.grid-3,.grid-4,.grid-5{grid-template-columns:repeat(2,1fr)}}@media (width<=620px){.grid-2,.grid-3,.grid-4,.grid-5{grid-template-columns:1fr}}.col{max-width:680px}.col--center{text-align:center;margin:0 auto}.eyebrow{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--teal);align-items:center;gap:10px;margin-bottom:14px;font-size:.74rem;font-weight:600;display:flex}.eyebrow:before{content:"";background:var(--teal);width:18px;height:2px;display:inline-block}.eyebrow--light{color:#7fb9a9}h1,h2,h3,h4{font-family:var(--font-display);color:var(--navy);letter-spacing:-.01em;font-weight:700;line-height:1.12}.section--navy h1,.section--navy h2,.section--navy h3,.section--navy2 h1,.section--navy2 h2,.section--navy2 h3{color:#fff}h1{font-size:clamp(2.1rem,4.4vw,3.4rem)}h2{font-size:clamp(1.7rem,3vw,2.4rem)}h3{font-size:1.3rem}h4{font-size:1.05rem}.lead{color:var(--steel);font-size:1.125rem;line-height:1.6}.section--navy .lead,.section--navy2 .lead{color:#c7d1d9}p{color:var(--steel)}.section--navy p,.section--navy2 p{color:#c7d1d9}.text-paper{color:var(--charcoal)!important}.btn{font-family:var(--font-body);border-radius:var(--radius);transition:transform .18s var(--ease), background .18s var(--ease), border-color .18s var(--ease), color .18s var(--ease);white-space:nowrap;border:1.5px solid #0000;justify-content:center;align-items:center;gap:8px;padding:14px 26px;font-size:.95rem;font-weight:600;display:inline-flex}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--teal);color:#fff}.btn-primary:hover{background:var(--teal-dark)}.btn-outline{color:#fff;background:0 0;border-color:#ffffff8c}.btn-outline:hover{background:#ffffff14;border-color:#fff}.btn-outline-dark{border-color:var(--navy);color:var(--navy);background:0 0}.btn-outline-dark:hover,.btn-call{background:var(--navy);color:#fff}.btn-call:hover{background:var(--teal-dark)}.btn-block{width:100%}.btn-sm{padding:10px 18px;font-size:.86rem}.cta-row{flex-wrap:wrap;gap:14px;margin-top:32px;display:flex}.link-arrow{color:var(--teal);align-items:center;gap:8px;font-size:.92rem;font-weight:600;display:inline-flex}.link-arrow svg{transition:transform .18s var(--ease)}.link-arrow:hover svg{transform:translate(3px)}.site-header{z-index:80;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0}.header-bar{padding:14px var(--gutter);max-width:var(--maxw);justify-content:space-between;align-items:center;gap:24px;margin:0 auto;display:flex}.brand{align-items:center;gap:12px;display:flex}.brand img{width:auto;height:42px}.brand-text{font-family:var(--font-display);line-height:1.15}.brand-text strong{color:var(--navy);letter-spacing:.01em;font-size:1.02rem;font-weight:800;display:block}.brand-text span{letter-spacing:.12em;color:var(--steel);text-transform:uppercase;font-size:.62rem;font-weight:600;display:block}.main-nav{align-items:center;gap:6px;display:flex}.main-nav>ul{align-items:center;gap:2px;display:flex}.nav-item{position:relative}.nav-link{letter-spacing:.02em;color:var(--charcoal);text-transform:uppercase;border-radius:var(--radius);align-items:center;gap:6px;padding:12px 14px;font-size:.86rem;font-weight:600;display:flex}.nav-link:hover{color:var(--teal)}.nav-item.has-dropdown:hover .dropdown{opacity:1;visibility:visible;transform:translateY(0)}.dropdown{border:1px solid var(--line);box-shadow:var(--shadow-card);opacity:0;visibility:hidden;min-width:260px;transition:opacity .16s var(--ease), transform .16s var(--ease);border-radius:var(--radius);background:#fff;padding:10px;position:absolute;top:100%;left:0;transform:translateY(6px)}.dropdown a{color:var(--charcoal);border-radius:2px;padding:10px 12px;font-size:.88rem;font-weight:600;display:block}.dropdown a:hover{background:var(--teal-tint);color:var(--teal-dark)}.dropdown .dropdown-note{font-family:var(--font-mono);letter-spacing:.1em;color:var(--steel-light);text-transform:uppercase;padding:8px 12px 4px;font-size:.66rem}.header-actions{align-items:center;gap:14px;display:flex}.header-phone{text-align:right;flex-direction:column;line-height:1.25;display:flex}.header-phone strong{font-family:var(--font-display);color:var(--navy);font-size:1rem}.header-phone span{font-family:var(--font-mono);color:var(--steel);letter-spacing:.04em;text-transform:uppercase;font-size:.66rem}.nav-toggle{background:0 0;border:none;padding:8px;display:none}.nav-toggle span{background:var(--navy);width:24px;height:2px;margin:5px 0;transition:all .2s;display:block}@media (width<=980px){.main-nav{width:300px;max-width:86vw;transition:transform .25s var(--ease);background:#fff;flex-direction:column;align-items:stretch;padding:90px 22px 22px;position:fixed;inset:0 0 0 auto;overflow-y:auto;transform:translate(100%);box-shadow:-10px 0 30px #0000001f}.main-nav.open{transform:translate(0)}.main-nav>ul{flex-direction:column;align-items:stretch;gap:0}.nav-link{border-bottom:1px solid var(--line);padding:14px 4px}.dropdown{opacity:1;visibility:visible;box-shadow:none;border:none;padding:0 0 6px 12px;display:none;position:static;transform:none}.nav-item.has-dropdown.open .dropdown,.nav-toggle{display:block}.header-phone{display:none}}.nav-backdrop{display:none}.nav-backdrop.open{z-index:70;background:#0e1f3066;display:block;position:fixed;inset:0}.hero{background:var(--navy);color:#fff;padding:72px 0 56px;position:relative;overflow:hidden}.hero:before{content:"";opacity:.5;pointer-events:none;background-image:linear-gradient(#ffffff0b 1px,#0000 1px),linear-gradient(90deg,#ffffff0b 1px,#0000 1px);background-size:42px 42px;position:absolute;inset:0}.hero-grid{z-index:1;grid-template-columns:1.05fr .95fr;align-items:center;gap:56px;display:grid;position:relative}@media (width<=980px){.hero-grid{grid-template-columns:1fr}}.hero-copy h1{color:#f6f4ef;margin-bottom:18px}.hero-sub{color:#c7d1d9;max-width:560px;margin-bottom:8px;font-size:1.12rem}.hero-trust{border-top:1px solid var(--line-on-dark);flex-wrap:wrap;gap:18px 26px;margin-top:40px;padding-top:28px;display:flex}.hero-trust li{color:#c7d1d9;align-items:center;gap:9px;font-size:.84rem;font-weight:500;display:flex}.hero-trust svg{color:var(--teal);flex:none}.hero-visual{position:relative}.hero-art-panel{background:var(--warm-white);border-radius:var(--radius);border:1px solid #ffffff1f;position:relative;overflow:hidden;box-shadow:0 30px 60px #00000059}.hero-art-panel img{width:100%;height:auto}.hero--photo{align-items:center;min-height:620px;padding:120px 0 100px;display:flex}.hero--photo:before{display:none}.hero-bg{z-index:0;position:absolute;inset:0}.hero-bg img{object-fit:cover;object-position:center 38%;width:100%;height:100%}.hero-bg:after{content:"";background:linear-gradient(105deg,#0e1f30f0 0%,#0e1f30e0 30%,#0e1f3094 56%,#0e1f3038 100%);position:absolute;inset:0}.hero--photo .hero-grid{width:100%}.hero--photo .hero-visual{min-height:380px}@media (width<=980px){.hero--photo{padding:88px 0 64px}.hero-bg:after{background:linear-gradient(#0e1f30b3 0%,#0e1f30e0 60%,#0e1f30f5 100%)}}.ticket{background:var(--navy-2);border:1px solid var(--line-on-dark);border-left:4px solid var(--teal);border-radius:2px;width:248px;padding:14px 16px;position:absolute;box-shadow:0 18px 40px #0006}.ticket-top{top:-26px;right:-18px}.ticket-bottom{width:228px;bottom:-30px;left:-22px}.hero--photo .ticket-top{top:8%;right:0}.hero--photo .ticket-bottom{bottom:6%;left:0}.ticket-id{font-family:var(--font-mono);letter-spacing:.08em;color:#8fb6ab;text-transform:uppercase;justify-content:space-between;margin-bottom:8px;font-size:.66rem;display:flex}.ticket-title{font-family:var(--font-display);color:#fff;margin-bottom:8px;font-size:.92rem;font-weight:700;line-height:1.25}.ticket-status{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--teal);background:#2f6f622e;border-radius:2px;align-items:center;gap:6px;padding:4px 8px;font-size:.64rem;display:inline-flex}.ticket-status:before{content:"";background:var(--teal);border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #2f6f6240}@media (width<=560px){.ticket{display:none}}.stat-row{border:1px solid var(--line-on-dark);border-radius:var(--radius);grid-template-columns:repeat(4,1fr);gap:0;display:grid;overflow:hidden}.stat{border-right:1px solid var(--line-on-dark);text-align:left;padding:30px 22px;position:relative}.stat:last-child{border-right:none}.stat-num{font-family:var(--font-display);color:#fff;font-size:2.3rem;font-weight:800;line-height:1}.stat-label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:#9daeba;margin-top:8px;font-size:.7rem}@media (width<=780px){.stat-row{grid-template-columns:repeat(2,1fr)}.stat:nth-child(2){border-right:none}}.stat--light .stat-num{color:var(--navy)}.stat--light .stat-label{color:var(--steel)}.stat-row--light{border-color:var(--line)}.stat--light{border-right:1px solid var(--line)}.card{border:1px solid var(--line);border-radius:var(--radius);transition:transform .2s var(--ease), box-shadow .2s var(--ease), border-color .2s var(--ease);background:#fff;padding:28px 26px}.card:hover{box-shadow:var(--shadow-card);border-color:#cfd6cf;transform:translateY(-3px)}.icon-tile{background:var(--teal-tint);width:46px;height:46px;color:var(--teal-dark);border-radius:2px;justify-content:center;align-items:center;margin-bottom:18px;display:flex}.icon-tile svg{width:24px;height:24px}.service-card h3{margin-bottom:10px;font-size:1.12rem}.service-card p{margin-bottom:14px;font-size:.94rem}.card--dark{background:var(--navy-2);border-color:var(--line-on-dark)}.card--dark h3,.card--dark h4{color:#fff}.card--dark p{color:#b9c4cc}.building-card{border:1px solid var(--line);border-radius:var(--radius);transition:transform .2s var(--ease), box-shadow .2s var(--ease);background:#fff;overflow:hidden}.building-card:hover{box-shadow:var(--shadow-card);transform:translateY(-3px)}.building-card .thumb{aspect-ratio:4/3;border-bottom:1px solid var(--line);overflow:hidden}.building-card .thumb img{object-fit:cover;width:100%;height:100%}.building-card .body{padding:20px 22px}.building-card h3{color:#0e1f30;margin-bottom:8px;font-size:1.05rem}.building-card p{color:#8c97a1;font-size:.92rem}.testimonial{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:26px 26px 22px;position:relative}.testimonial:before{content:"“";color:var(--teal);opacity:.25;font-family:Georgia,serif;font-size:3.4rem;line-height:1;position:absolute;top:6px;left:18px}.testimonial p{z-index:1;color:var(--charcoal);margin-bottom:18px;padding-top:14px;font-size:1rem;position:relative}.testimonial-foot{border-top:1px dashed var(--line);justify-content:space-between;align-items:center;padding-top:14px;display:flex}.testimonial-foot strong{color:var(--navy);font-size:.88rem;display:block}.testimonial-foot span{color:var(--steel);font-size:.78rem;display:block}.testimonial-stamp{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--teal-dark);border:1px solid var(--teal);border-radius:2px;padding:4px 8px;font-size:.62rem;transform:rotate(-3deg)}.value-card{border-bottom:1px solid var(--line);gap:16px;padding:22px 0;display:flex}.value-card:last-child{border-bottom:none}.value-num{font-family:var(--font-mono);color:var(--teal);min-width:32px;padding-top:4px;font-size:.78rem}.process{border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:repeat(4,1fr);gap:0;display:grid;overflow:hidden}.process-step{border-right:1px solid var(--line);background:#fff;padding:28px 22px;position:relative}.process-step:last-child{border-right:none}.process-step .step-no{font-family:var(--font-mono);color:var(--teal);letter-spacing:.08em;font-size:.72rem}.process-step h4{margin:10px 0 8px;font-size:1rem}.process-step p{font-size:.88rem}@media (width<=900px){.process{grid-template-columns:1fr}.process-step{border-right:none;border-bottom:1px solid var(--line)}.process-step:last-child{border-bottom:none}}.trust-strip{background:var(--navy-2);border-top:1px solid var(--line-on-dark);border-bottom:1px solid var(--line-on-dark);padding:18px 0}.trust-strip .container{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 34px;display:flex}.trust-strip-item{font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;color:#aebac3;align-items:center;gap:9px;font-size:.72rem;display:flex}.trust-strip-item svg{color:var(--teal)}.pm-strip{background:var(--teal);color:#fff;padding:38px 0}.pm-strip .container{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;display:flex}.pm-strip h3{color:#fff;font-size:1.25rem}.pm-strip p{color:#ffffffe0;margin-top:4px}.emergency-banner{background:var(--navy);border-top:1px solid var(--line-on-dark);border-bottom:1px solid var(--line-on-dark);padding:14px 0}.emergency-banner .container{text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;display:flex}.emergency-banner p{color:#fff;margin:0;font-size:.92rem}.emergency-banner strong{color:var(--teal);font-family:var(--font-mono);letter-spacing:.04em}.final-cta{background:var(--navy);color:#fff;text-align:center;padding:88px 0;position:relative;overflow:hidden}.final-cta:before{content:"";opacity:.4;background-image:linear-gradient(#ffffff0d 1px,#0000 1px),linear-gradient(90deg,#ffffff0d 1px,#0000 1px);background-size:46px 46px;position:absolute;inset:0}.final-cta .container{z-index:1;position:relative}.final-cta h2{color:#f6f4ef;margin-bottom:14px}.final-cta .lead{max-width:560px;margin:0 auto 8px}.final-cta .cta-row{justify-content:center}.coverage-map{grid-template-columns:1fr 1fr;align-items:center;gap:48px;display:grid}@media (width<=860px){.coverage-map{grid-template-columns:1fr}}.coverage-diagram{border:1px solid var(--line-on-dark);border-radius:var(--radius);background:#00122c;padding:24px}.coverage-diagram svg{width:100%;height:auto}.coverage-note{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:#8c97a1;text-align:center;margin-top:14px;font-size:.66rem}.map-pin{fill:#5c6773}.map-pin.active{fill:#2f6f62}.map-pin-label{font-family:var(--font-mono);fill:#c7d1d9;letter-spacing:.02em;font-size:11px}.map-pin-label.active{fill:#fff;font-weight:600}.map-ring{fill:none;stroke:#ffffff1f;stroke-width:1px}.map-route{stroke:#2f6f62;stroke-width:1.5px;stroke-dasharray:4 4;fill:none}.form-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:32px}.form-row{grid-template-columns:1fr 1fr;gap:18px;display:grid}@media (width<=620px){.form-row{grid-template-columns:1fr}}.field{margin-bottom:18px}.field label{color:var(--navy);margin-bottom:7px;font-size:.82rem;font-weight:600;display:block}.field .req{color:var(--teal)}.field input,.field select,.field textarea{border:1.5px solid var(--line);background:var(--warm-white);width:100%;color:var(--charcoal);border-radius:2px;padding:12px 14px;font-size:.95rem;transition:border-color .15s,background .15s}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--teal);background:#fff;outline:none}.field textarea{resize:vertical;min-height:120px}.form-note{color:var(--steel-light);margin-top:14px;font-size:.8rem}.form-status{margin-top:14px;font-size:.88rem;font-weight:600;display:none}.form-status.success{color:var(--teal-dark);display:block}.form-status.error{color:#9c4a3a;display:block}.contact-side .card{margin-bottom:18px}.contact-line{align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.contact-line svg{color:var(--teal);flex:none;margin-top:3px}.contact-line>div{min-width:0}.contact-line strong{color:var(--navy);overflow-wrap:anywhere;font-size:.95rem;display:block}.contact-line span{color:var(--steel);font-size:.88rem;display:block}.site-footer{background:var(--navy);color:#c7d1d9;padding-top:64px}.footer-grid{border-bottom:1px solid var(--line-on-dark);grid-template-columns:1.4fr 1fr 1fr 1.1fr;gap:40px;padding-bottom:48px;display:grid}@media (width<=860px){.footer-grid{grid-template-columns:1fr 1fr}}.footer-brand{align-items:center;gap:12px;margin-bottom:16px;display:flex}.footer-brand img{width:auto;height:38px}.footer-brand strong{font-family:var(--font-display);color:#fff;font-size:1rem;display:block}.footer-brand span{letter-spacing:.1em;color:#8c97a1;text-transform:uppercase;font-size:.62rem;display:block}.footer-col h4{color:#fff;letter-spacing:.08em;text-transform:uppercase;font-size:.82rem;font-family:var(--font-mono);margin-bottom:16px;font-weight:600}.footer-col ul li{margin-bottom:10px}.footer-col a{color:#c7d1d9;font-size:.92rem}.footer-col a:hover,.footer-contact a:hover{color:var(--teal-light)}.footer-emergency{background:var(--teal);color:#fff;border-radius:var(--radius);flex:auto;min-width:0;padding:14px 18px}.footer-emergency strong{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;font-size:.66rem;display:block}.footer-emergency a{font-family:var(--font-display);color:#fff;font-size:1.15rem;font-weight:700}.footer-bottom{color:#7c8995;flex-wrap:wrap;justify-content:space-between;gap:14px;padding:24px 0;font-size:.78rem;display:flex}.page-header{background:var(--navy);color:#fff;padding:64px 0 52px;position:relative;overflow:hidden}.page-header:before{content:"";opacity:.4;background-image:linear-gradient(#ffffff0d 1px,#0000 1px),linear-gradient(90deg,#ffffff0d 1px,#0000 1px);background-size:42px 42px;position:absolute;inset:0}.page-header .container{z-index:1;position:relative}.breadcrumb{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:#8fb6ab;margin-bottom:16px;font-size:.72rem}.breadcrumb a{color:#8fb6ab}.breadcrumb a:hover{color:#fff}.page-header h1{max-width:760px;color:var(--warm-white)}.page-header .lead{max-width:620px;margin-top:14px}.mt-0{margin-top:0}.mb-0{margin-bottom:0}.center{text-align:center}.divider{background:var(--line);height:1px;margin:48px 0}.tag{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--teal-dark);background:var(--teal-tint);border-radius:2px;align-items:center;gap:6px;padding:5px 10px;font-size:.7rem;display:inline-flex}.list-check{flex-direction:column;gap:12px;display:flex}.list-check li{color:var(--charcoal);align-items:flex-start;gap:10px;font-size:.95rem;display:flex}.list-check svg{color:var(--teal);flex:none;margin-top:3px}.reveal{opacity:0;transition:opacity .6s var(--ease), transform .6s var(--ease);transform:translateY(16px)}.reveal.in{opacity:1;transform:translateY(0)}.two-col{grid-template-columns:1fr 1fr;align-items:center;gap:56px;display:grid}.two-col>*{min-width:0}@media (width<=860px){.two-col{grid-template-columns:1fr;gap:32px}}.photo-frame{border-radius:var(--radius);border:1px solid var(--line);background:var(--line);position:relative;overflow:hidden}.photo-frame img{object-fit:cover;width:100%;height:100%;display:block}.photo-frame--16x9{aspect-ratio:16/9}.photo-frame--4x3{aspect-ratio:4/3}.photo-frame--3x2{aspect-ratio:3/2}.photo-frame--square{aspect-ratio:1}.photo-frame--tall{aspect-ratio:3/4}.photo-frame .photo-caption{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:#fff;background:linear-gradient(#0000,#0e1f30d9);padding:10px 14px;font-size:.68rem;position:absolute;bottom:0;left:0;right:0}[data-carousel]{transition:transform .18s,box-shadow .18s;box-shadow:0 8px 24px #00000008}@media (prefers-reduced-motion:no-preference){[data-carousel]:hover{transform:translateY(-1px)scale(1.005);box-shadow:0 14px 32px #0000000f}}.skip-link{background:var(--teal);color:#fff;z-index:200;padding:10px 16px;position:absolute;top:0;left:-9999px}.skip-link:focus{top:10px;left:10px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--teal);outline-offset:2px}@media (width>=981px){.dropdown--cols{grid-template-columns:repeat(2,minmax(230px,1fr));column-gap:10px;min-width:500px;display:grid}}.work-photo{margin:0}a.photo-frame,.work-photo>.photo-frame{display:block}.work-photo a.photo-frame{cursor:zoom-in}.work-photo a.photo-frame img{transition:transform .35s var(--ease)}@media (prefers-reduced-motion:no-preference){.work-photo a.photo-frame:hover img{transform:scale(1.03)}}.work-photo figcaption,.ba-pair>figcaption{color:var(--steel);margin-top:10px;font-size:.86rem;line-height:1.45}.photo-frame--wide{aspect-ratio:16/10}.ba-pair{margin:0}.ba-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.ba-item{position:relative}.ba-label{z-index:2;pointer-events:none;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;background:var(--charcoal);color:#fff;border-radius:2px;padding:5px 9px;font-size:.66rem;font-weight:600;position:absolute;top:10px;left:10px}.ba-label--after{background:var(--teal)}.gallery{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.gallery--3{grid-template-columns:repeat(3,1fr)}.gallery--2{grid-template-columns:repeat(2,1fr)}@media (width<=980px){.gallery,.gallery--3{grid-template-columns:repeat(2,1fr)}}@media (width<=420px){.gallery--2{grid-template-columns:1fr}}.section-head .col p.lead{margin-top:12px}.project{border-top:1px solid var(--line);padding:56px 0}.project:first-of-type{border-top:none;padding-top:0}.project-head{grid-template-columns:1.3fr 1fr;align-items:start;gap:40px;margin-bottom:28px;display:grid}.project-head h2,.project-head h3{margin-top:8px}.project-head p{color:var(--steel);margin-top:12px}.project-meta{background:var(--warm-white);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:auto 1fr;gap:8px 16px;padding:20px 22px;font-size:.9rem;display:grid}.project-meta dt{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--steel);padding-top:3px;font-size:.7rem}.project-meta dd{color:var(--charcoal);margin:0;font-weight:600}.project-body{gap:20px;display:grid}@media (width<=860px){.project-head{grid-template-columns:1fr;gap:20px}}.work-video{border-radius:var(--radius);border:1px solid var(--line);background:var(--navy);width:100%;height:auto;display:block}.filter-chips{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.filter-chips button{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--teal-dark);background:var(--teal-tint);cursor:pointer;border:1px solid #0000;border-radius:2px;padding:9px 14px;font-size:.72rem;font-weight:600}.filter-chips button:hover{border-color:var(--teal);background:#fff}.filter-chips button[aria-pressed=true]{background:var(--teal);color:#fff}.is-filtered-out{display:none!important}.qa{flex-direction:column;gap:12px;max-width:860px;display:flex}.qa details{border:1px solid var(--line);border-left:3px solid var(--teal);border-radius:var(--radius);background:#fff}.qa summary{cursor:pointer;font-family:var(--font-display);color:var(--navy);justify-content:space-between;gap:16px;padding:18px 22px;font-weight:700;list-style:none;display:flex}.qa summary::-webkit-details-marker{display:none}.qa summary:after{content:"+";font-family:var(--font-mono);color:var(--teal);font-size:1.2rem;line-height:1}.qa details[open] summary:after{content:"−"}.qa details>p{color:var(--steel);padding:0 22px 20px;font-size:.96rem}.photo-frame .photo-caption--note{background:linear-gradient(#0e1f3033,#0e1f30e6)}.lightbox{background:0 0;border:none;max-width:min(92vw,1100px);max-height:92vh;padding:0;overflow:visible}.lightbox::backdrop{background:#0e1f30e0}.lightbox img{border-radius:var(--radius);width:auto;max-width:min(92vw,1100px);height:auto;max-height:82vh;margin:0 auto}.lightbox p{color:#e6ebef;text-align:center;max-width:720px;margin:12px auto 0;font-size:.9rem}.lightbox button{color:#fff;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff40;border-radius:50%;width:44px;height:44px;font-size:1.3rem;line-height:1;position:fixed}.lightbox button:hover{background:#ffffff3d}.lightbox .lb-close{top:16px;right:16px}.lightbox .lb-prev{top:50%;left:16px;transform:translateY(-50%)}.lightbox .lb-next{top:50%;right:16px;transform:translateY(-50%)}@media (width>=1101px){.footer-grid{grid-template-columns:1.7fr 1.15fr .85fr 1fr .7fr;gap:32px}}@media (width>=861px) and (width<=1100px){.footer-grid{grid-template-columns:repeat(4,1fr)}.footer-grid>div:first-child{grid-column:1/-1}}@media (width>=981px){.nav-link{white-space:nowrap}}@media (width>=981px) and (width<=1090px){.nav-link{padding:12px 9px}.header-phone{display:none}}a#bbblink{background:#fff;border-radius:6px;flex:none;width:80px;height:144px;display:block;position:relative;overflow:hidden}a#bbblink img{border:0;width:160px;max-width:none;height:144px;position:absolute;top:0;left:0}a#bbblink:hover img{margin-left:-80px}.footer-bottom a{color:inherit;text-decoration:underline}.legal-copy{max-width:760px}.legal-copy h2{margin-top:36px;font-size:1.3rem}.legal-copy p,.legal-copy ul{color:var(--charcoal);margin-top:12px}.legal-copy ul{padding-left:22px;list-style:outside}.legal-copy li{margin-top:6px}.rep-card{background:linear-gradient(135deg, var(--navy) 0%, var(--navy-2) 60%, var(--teal-dark) 130%);border-radius:8px;grid-template-columns:minmax(0,1fr);gap:28px;padding:44px;display:grid;box-shadow:0 18px 44px #0e1f303d}.rep-intro .eyebrow{color:var(--teal-light)}.rep-intro h2{color:#fff}.rep-intro>p:last-child{color:#ffffffbd;margin-top:12px}.rep-tiles{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;display:grid}.rep-tile{color:#fff;border:1px solid var(--line-on-dark);transition:transform .25s var(--ease), background .25s var(--ease), border-color .25s var(--ease);background:#ffffff0f;border-radius:6px;flex-direction:column;gap:6px;padding:24px;display:flex}.rep-tile:hover,.rep-tile:focus-visible{border-color:var(--teal-light);background:#ffffff1c;transform:translateY(-3px)}.rep-score{font-family:var(--font-display);font-size:2.6rem;font-weight:800;line-height:1}.rep-stars{letter-spacing:2px;color:#ffffff40;align-self:flex-start;font-size:1.05rem;line-height:1.2;display:inline-block;position:relative}.rep-stars:before{content:"★★★★★"}.rep-stars:after{content:"★★★★★";white-space:nowrap;color:#f2b84b;width:90%;position:absolute;top:0;left:0;overflow:hidden}.rep-source{margin-top:6px;font-weight:700}.rep-detail{color:#ffffffb3;font-size:.88rem}.rep-link{color:var(--teal-light);align-items:center;gap:6px;margin-top:auto;padding-top:14px;font-size:.88rem;font-weight:600;display:inline-flex}@media (width<=860px){.rep-card{padding:28px 22px}}@media (prefers-reduced-motion:reduce){.rep-tile{transition:none}.rep-tile:hover,.rep-tile:focus-visible{transform:none}}.hero-bg picture,.building-card .thumb picture,.photo-frame picture{width:100%;height:100%;display:block}.coverage-diagram img{width:100%;height:auto}.stat-rating{flex-wrap:wrap;align-items:center;gap:4px 10px;margin-top:12px;display:flex}.stat-rating .stat-label{margin-top:0}.form-more{border:1px solid var(--line);border-radius:var(--radius);margin-bottom:18px}.form-more summary{color:var(--teal-dark);cursor:pointer;padding:13px 16px;font-size:.88rem;font-weight:600}.form-more[open] summary{border-bottom:1px solid var(--line);margin-bottom:16px}.form-more>.form-row,.form-more>.field{padding:0 16px}.form-more>.field:last-child{padding-bottom:0}.form-card .btn-block{white-space:normal;line-height:1.25}.footer-contact{margin-bottom:18px}.footer-contact li{margin-bottom:8px}.footer-contact a{color:#c7d1d9;overflow-wrap:anywhere;font-size:.92rem}.footer-trust{align-items:flex-start;gap:14px;display:flex}@media (width<=860px){.footer-grid>div:first-child{grid-column:1/-1}.footer-grid{gap:32px 24px}}@media (width<=620px){.footer-bottom{flex-direction:column;gap:8px}}.carousel-controls{justify-content:center;gap:10px;margin-top:22px;display:flex}.carousel-controls[hidden]{display:none}.carousel-btn{width:44px;height:44px;color:var(--navy);border:1px solid var(--line);cursor:pointer;transition:background .2s var(--ease), color .2s var(--ease), border-color .2s var(--ease);background:#fff;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex}@media (hover:hover){.carousel-btn:hover{color:#fff;background:var(--teal);border-color:var(--teal)}}.carousel-btn:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.carousel-btn .icon-play{display:none}.carousel-btn.is-paused .icon-play{display:block}.carousel-btn.is-paused .icon-pause{display:none}html{scroll-padding-top:96px}main:focus{outline:none}.page-header .lead{color:#c7d1d9}.page-header .lead a{color:#fff;text-underline-offset:3px;text-decoration:underline}.blog-nav{background:var(--navy-2);border-bottom:1px solid var(--line-on-dark)}.blog-nav__inner{justify-content:space-between;align-items:center;gap:12px 28px;min-height:46px;display:flex}.blog-nav__home{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--teal-light);white-space:nowrap;font-size:.72rem;font-weight:600}.blog-nav ul{scrollbar-width:none;gap:24px;display:flex;overflow-x:auto}.blog-nav ul::-webkit-scrollbar{display:none}.blog-nav li a{color:#c7d1d9;white-space:nowrap;transition:color .18s var(--ease), border-color .18s var(--ease);border-bottom:2px solid #0000;padding:13px 0 11px;font-size:.84rem;font-weight:500;display:block}.blog-nav li a:hover{color:#fff}.blog-nav li a[aria-current=page]{color:#fff;border-bottom-color:var(--teal-light)}@media (width<=700px){.blog-nav__home{display:none}.blog-nav ul{gap:20px}}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 32px;margin-bottom:32px;display:flex}.section-head .eyebrow{margin-bottom:10px}.byline{font-family:var(--font-mono);letter-spacing:.04em;color:#8fb6ab;flex-wrap:wrap;gap:6px 18px;margin-top:22px;font-size:.74rem;display:flex}.tags{flex-wrap:wrap;gap:8px;display:flex}a.tag{transition:background .18s var(--ease), color .18s var(--ease)}a.tag:hover{background:var(--teal);color:#fff}.tags--dark{margin-top:26px}.tags--dark .tag{color:#c7d1d9;background:#ffffff14}.tags--dark a.tag:hover{background:var(--teal);color:#fff}.tag-cloud .tag{padding:9px 14px;font-size:.78rem}.tag-count{color:var(--steel);margin-left:4px}a.tag:hover .tag-count{color:#fff}.post-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;display:grid}.post-rows{gap:18px;display:grid}.wo-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-card);transition:transform .18s var(--ease), box-shadow .18s var(--ease);flex-direction:column;display:flex;position:relative}.wo-card__cover{aspect-ratio:4/3;border-radius:var(--radius) var(--radius) 0 0;background:var(--line);overflow:hidden}.wo-card__cover img{object-fit:cover;width:100%;height:100%}.wo-card__stub{border-bottom:1px dashed var(--line);font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--steel);flex-wrap:wrap;gap:4px 14px;padding:11px 20px;font-size:.68rem;font-weight:500;display:flex;position:relative}.wo-card__no{color:var(--teal);font-weight:600}.wo-card__stub:before,.wo-card__stub:after{content:"";background:var(--warm-white);border:1px solid var(--line);border-radius:50%;width:13px;height:13px;position:absolute;bottom:-7px}.wo-card__stub:before{clip-path:inset(0 0 0 50%);left:-7px}.wo-card__stub:after{clip-path:inset(0 50% 0 0);right:-7px}.wo-card__body{flex-direction:column;flex:1;padding:20px;display:flex}.wo-card__title{font-size:1.2rem;line-height:1.22}.wo-card__title a:after{content:"";position:absolute;inset:0}.wo-card__title a{transition:color .18s var(--ease)}.wo-card:hover .wo-card__title a{color:var(--teal-dark)}.wo-card__body p{margin-top:10px;font-size:.94rem}.wo-card .tags{z-index:1;margin-top:auto;padding-top:16px;position:relative}@media (prefers-reduced-motion:no-preference){.wo-card:hover{transform:translateY(-2px);box-shadow:0 2px 4px #0e1f3014,0 14px 32px #0e1f301a}}.wo-card--row{flex-direction:row}.wo-card--row .wo-card__stub{border-bottom:0;border-right:1px dashed var(--line);flex-flow:column;flex:0 0 170px;justify-content:center;gap:6px;padding:20px}.wo-card--row .wo-card__no{font-size:.95rem}.wo-card--row .wo-card__stub:before,.wo-card--row .wo-card__stub:after{bottom:auto;left:auto;right:-7px}.wo-card--row .wo-card__stub:before{clip-path:inset(50% 0 0);top:-7px}.wo-card--row .wo-card__stub:after{clip-path:inset(0 0 50%);bottom:-7px}.wo-card--row .wo-card__title{font-size:1.35rem}.wo-card--row .wo-card__body{padding:22px 26px}.wo-card--row .wo-card__body p{max-width:70ch}.article-layout{grid-template-columns:minmax(0,720px) 280px;justify-content:space-between;align-items:start;gap:64px;display:grid}.article-cover{aspect-ratio:3/2;margin-bottom:36px}.article-side{gap:24px;display:grid;position:sticky;top:96px}.toc h2{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--teal);margin-bottom:12px;font-size:.72rem;font-weight:600}.toc ol{border-left:1px solid var(--line);margin:0;padding:0;list-style:none}.toc li a{color:var(--steel);transition:color .18s var(--ease), border-color .18s var(--ease);border-left:2px solid #0000;margin-left:-1px;padding:7px 0 7px 16px;font-size:.88rem;line-height:1.35;display:block}.toc li a:hover{color:var(--navy);border-left-color:var(--teal)}.side-ticket{background:var(--navy);border-radius:var(--radius);color:#fff;padding:20px}.side-ticket__id{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--teal-light);font-size:.68rem;font-weight:600;display:block}.side-ticket__phone{font-family:var(--font-display);color:#fff;margin-top:8px;font-size:1.4rem;font-weight:700;display:block}.side-ticket p{color:#c7d1d9;margin-top:8px;font-size:.86rem}.prose{color:var(--charcoal);font-size:1.06rem;line-height:1.72}.prose>*+*{margin-top:1.15em}.prose p{color:inherit}.prose h2{margin-top:2em;font-size:clamp(1.45rem,2.4vw,1.85rem)}.prose h3{margin-top:1.7em;font-size:1.2rem}.prose h2+*,.prose h3+*{margin-top:.6em}.prose strong{color:var(--navy);font-weight:600}.prose a{color:var(--teal-dark);text-underline-offset:3px;text-decoration:underline}.prose a:hover{color:var(--navy)}.prose ul,.prose ol{margin:0;padding-left:1.35em}.prose ul{list-style:outside}.prose li+li{margin-top:.45em}.prose li::marker{color:var(--teal)}.prose ol li::marker{font-family:var(--font-mono);font-size:.88em}.prose blockquote{background:var(--teal-tint);border-left:3px solid var(--teal);border-radius:0 var(--radius) var(--radius) 0;margin-inline:0;padding:16px 20px}.prose hr{background:var(--line);border:0;height:1px;margin-block:2.2em}.prose img{border:1px solid var(--line);border-radius:var(--radius)}.prose p:has(>img:only-child){max-width:440px}.prose p:has(>img+img){grid-template-columns:1fr 1fr;gap:10px;max-width:none;display:grid}.prose p:has(>img+img) img{aspect-ratio:3/4;object-fit:cover;width:100%;height:100%}.prose p:has(>img)+p>em:only-child{color:var(--steel);margin-top:-.5em;font-size:.88rem;font-style:normal;display:block}.prose table{border-collapse:collapse;width:100%;font-size:.94rem;display:block;overflow-x:auto}.prose th,.prose td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:10px 14px}.prose th{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--steel);border-bottom-color:var(--steel-light);font-size:.72rem}.article-foot{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:48px;padding-top:24px;display:flex}.pager{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;gap:24px;padding-block:28px;display:grid}.pager span{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--steel);margin-bottom:6px;font-size:.7rem;display:block}.pager strong{font-family:var(--font-display);color:var(--navy);transition:color .18s var(--ease);font-size:1.05rem;font-weight:700;line-height:1.25}.pager a:hover strong{color:var(--teal)}.pager .next{text-align:right;grid-column:2}.faq-group+.faq-group{margin-top:48px}.faq-group h2{margin-bottom:18px;font-size:clamp(1.35rem,2.2vw,1.7rem)}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item summary{cursor:pointer;font-family:var(--font-display);color:var(--navy);justify-content:space-between;align-items:baseline;gap:24px;padding:18px 0;font-size:1.06rem;font-weight:600;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";font-family:var(--font-mono);color:var(--teal);transition:transform .18s var(--ease);flex:none;font-size:1.15rem}.faq-item details[open] summary:after{transform:rotate(45deg)}.faq-item .answer{max-width:72ch;padding:0 0 20px}.faq-item .answer .link-arrow{margin-top:10px}.faq-preview{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 56px;display:grid}.faq-preview li{border-top:1px solid var(--line);padding:22px 0}.faq-preview h3{font-size:1.1rem}.faq-preview h3 a:hover{color:var(--teal)}.faq-preview p{margin-top:8px;font-size:.94rem}.short-answer{background:var(--teal-tint);border-left:3px solid var(--teal);border-radius:0 var(--radius) var(--radius) 0;margin-bottom:32px;padding:22px 24px}.short-answer .eyebrow{margin-bottom:8px}.short-answer p:last-child{color:var(--charcoal);font-size:1.04rem}#search{--pagefind-ui-scale:.9;--pagefind-ui-primary:var(--teal);--pagefind-ui-text:var(--charcoal);--pagefind-ui-background:var(--paper);--pagefind-ui-border:var(--line);--pagefind-ui-tag:var(--teal-tint);--pagefind-ui-border-width:1px;--pagefind-ui-border-radius:3px;--pagefind-ui-font:var(--font-body);min-height:280px}#search .pagefind-ui__result-title{font-family:var(--font-display);font-weight:700}#search mark{background:var(--teal-tint);color:var(--teal-dark)}@media (width<=1060px){.article-layout{grid-template-columns:minmax(0,1fr);gap:40px}.article-side{position:static}.toc{display:none}.post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.post-grid,.faq-preview{grid-template-columns:minmax(0,1fr)}.wo-card--row{flex-direction:column}.wo-card--row .wo-card__stub{border-right:0;border-bottom:1px dashed var(--line);flex-flow:wrap;flex:none;justify-content:flex-start;gap:4px 14px;padding:11px 20px}.wo-card--row .wo-card__stub:before{clip-path:inset(0 0 0 50%);inset:auto auto -7px -7px}.wo-card--row .wo-card__stub:after{clip-path:inset(0 50% 0 0);bottom:-7px;right:-7px}.wo-card--row .wo-card__no{font-size:.68rem}.wo-card--row .wo-card__body{padding:20px}.pager{grid-template-columns:minmax(0,1fr)}.pager .next{text-align:left;grid-column:1}}
