.hero{position:relative;isolation:isolate;width:100%;min-height:clamp(42rem,91svh,66rem);overflow:hidden;background:var(--color-primary);color:var(--color-hero-text)}.hero__slides,.hero__slide,.hero__image,.hero__scrim{position:absolute;inset:0;width:100%;height:100%}.hero__slides{overflow:hidden}.hero__slide{z-index:0;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .85s ease,visibility .85s}.hero__slide.is-active{z-index:1;visibility:visible;opacity:1;pointer-events:auto}.hero__image{z-index:0;object-fit:cover;object-position:center;pointer-events:none;transform:scale(1.035);transition:transform 8s ease}.hero__slide.is-active .hero__image{transform:scale(1)}.hero__scrim{z-index:1;background:linear-gradient(90deg,#05111d3d,#05111d1f 38%,#05111d05 82%),linear-gradient(0deg,rgba(5,17,29,.1),transparent 34%);pointer-events:none}.hero__content-wrap{position:relative;z-index:2;display:flex;width:min(100%,var(--container-max));min-height:inherit;align-items:center;margin:auto;padding:9rem var(--container-gutter) 7.5rem;pointer-events:auto}.hero__content-wrap--right{justify-content:flex-end}.hero__panel{width:min(100%,43rem);padding:clamp(1.6rem,4vw,3rem);border:1px solid rgba(255,255,255,.24);border-radius:var(--radius-md);background:#0b1f331f;box-shadow:0 12px 32px #0000001a;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);animation:hero-content-in .52s ease both}.hero__eyebrow{margin:0 0 var(--space-4);color:var(--color-accent);font-size:.82rem;font-weight:750;letter-spacing:.13em;text-shadow:0 1px 4px rgba(0,0,0,.48)}.hero__panel h1,.hero__panel h2{max-width:18ch;margin:0;color:var(--color-hero-text);font-size:clamp(2.6rem,5.2vw,4.8rem);font-weight:650;line-height:1.04;letter-spacing:-.04em;text-wrap:balance;text-shadow:0 2px 8px rgba(0,0,0,.48)}.hero__description{max-width:45ch;margin:var(--space-5) 0 0;color:#fffffff5;font-size:clamp(1rem,1.35vw,1.18rem);line-height:1.65;text-shadow:0 1px 5px rgba(0,0,0,.48)}.hero__actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:var(--space-8)}.hero__button{display:inline-flex;min-height:3.2rem;align-items:center;justify-content:center;padding:.72rem 1.15rem;border:1px solid transparent;border-radius:var(--radius-sm);font-size:.95rem;font-weight:700;text-align:center;text-decoration:none;cursor:pointer;pointer-events:auto;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.hero__button:hover{transform:translateY(-1px)}.hero__button:active{transform:translateY(0)}.hero__button--primary{background:var(--color-accent);color:var(--color-primary)}.hero__button--primary:hover{background:#e6b95d}.hero__button--secondary{border-color:#ffffffb8;background:#0b1f3347;color:var(--color-hero-text);text-shadow:0 1px 3px rgba(0,0,0,.35)}.hero__button--secondary:hover{background:#ffffff2e;border-color:var(--color-white)}.hero__controls{position:absolute;right:max(var(--container-gutter),calc((100vw - var(--container-max)) / 2 + var(--container-gutter)));bottom:2.1rem;z-index:3;display:flex;align-items:center;gap:.65rem;pointer-events:auto}.hero__pagination{display:flex;align-items:center;gap:.4rem;margin-right:.4rem}.hero__dot{width:.65rem;height:.65rem;padding:0;border:1px solid rgba(255,255,255,.9);border-radius:999px;background:#ffffff4d;cursor:pointer;pointer-events:auto;transition:width var(--transition-fast),background-color var(--transition-fast)}.hero__dot.is-active{width:1.8rem;background:var(--color-accent);border-color:var(--color-accent)}.hero__dot:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}.hero__control:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}.hero__counter{min-width:3.5rem;margin:0 .3rem;color:var(--color-white);font-size:.88rem;font-variant-numeric:tabular-nums;font-weight:650;text-align:center}.hero__control{display:grid;width:2.8rem;height:2.8rem;place-items:center;padding:.65rem;border:1px solid rgba(255,255,255,.58);border-radius:50%;background:#0b1f335c;color:var(--color-white);cursor:pointer;pointer-events:auto;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background-color var(--transition-fast),border-color var(--transition-fast),opacity var(--transition-fast)}.hero__control:hover:not(:disabled){background:#0b1f33c2;border-color:var(--color-accent)}.hero__control:disabled{opacity:.5;cursor:not-allowed}.hero__control svg{width:1.15rem;height:1.15rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.hero__control--pause svg{fill:currentColor;stroke-width:2.6}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%)}@keyframes hero-content-in{0%{opacity:.4;transform:translateY(.65rem)}to{opacity:1;transform:translateY(0)}}@media(max-width:64rem){.hero{min-height:clamp(42rem,88svh,58rem)}.hero__content-wrap{padding-block:8rem 7rem}.hero__panel{width:min(100%,40rem)}}@media(max-width:42rem){.hero{min-height:max(43rem,88svh)}.hero__image{object-position:57% center}.hero__scrim{background:linear-gradient(90deg,#05111d2e,#05111d0a),linear-gradient(0deg,#05111d2e,#05111d03 80%)}.hero__content-wrap{align-items:end;padding:7rem var(--container-gutter) 7.25rem}.hero__panel{padding:1.35rem 1.2rem}.hero__eyebrow{margin-bottom:.65rem;font-size:.72rem}.hero__panel h1,.hero__panel h2{font-size:clamp(2.15rem,9.4vw,3.15rem)}.hero__description{margin-top:.85rem;font-size:.98rem;line-height:1.5}.hero__actions{gap:.55rem;margin-top:1.15rem}.hero__button{min-height:2.9rem;padding:.65rem .78rem;font-size:.86rem}.hero__controls{right:var(--container-gutter);bottom:1.15rem;left:var(--container-gutter);justify-content:flex-end;gap:.45rem}.hero__pagination{margin-right:auto}.hero__control{width:2.55rem;height:2.55rem}.hero__counter{min-width:3rem;font-size:.8rem}}@media(max-width:22rem){.hero__actions{flex-direction:column;align-items:stretch}}@media(prefers-reduced-motion:reduce){.hero__slide,.hero__image,.hero__panel,.hero__button,.hero__dot,.hero__control{animation:none!important;transition:none!important}.hero__image,.hero__slide.is-active .hero__image{transform:none}}@media(prefers-reduced-transparency:reduce){.hero__panel{background:var(--color-primary);-webkit-backdrop-filter:none;backdrop-filter:none}}:root{color-scheme:light;--color-primary: #0b1f33;--color-secondary: #1e4d6b;--color-accent: #d9a441;--color-background: #f7f9fa;--color-white: #fff;--color-text: #17212b;--color-text-muted: #64748b;--color-hero-text: #fff;--color-border: #d9e1e7;--glass-background: rgba(11, 31, 51, .3);--glass-border: 1px solid rgba(255, 255, 255, .2);--glass-blur: blur(14px);--header-glass: rgba(255, 255, 255, .82);--header-solid: rgba(255, 255, 255, .97);--font-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans Kannada", "Noto Sans Telugu", sans-serif;--font-display: var(--font-sans);--text-xs: .8125rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--container-max: 78rem;--container-gutter: clamp(1rem, 3vw, 2.5rem);--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--shadow-header: 0 8px 24px rgba(11, 31, 51, .08);--shadow-card: 0 12px 28px rgba(11, 31, 51, .05);--shadow-hero-panel: 0 18px 48px rgba(0, 0, 0, .16);--transition-fast: .16s ease;--transition-standard: .24s ease;--breakpoint-mobile: 48rem;--breakpoint-wide: 80rem;--focus-ring: 3px solid var(--color-accent)}.hero-glass{color:var(--color-hero-text);background:var(--glass-background);border:var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}@media(prefers-reduced-transparency:reduce){.hero-glass{background:var(--color-primary);-webkit-backdrop-filter:none;backdrop-filter:none}}.site-header{position:sticky;top:0;z-index:50;--current-header-height: 5.5rem;min-height:var(--current-header-height);background:var(--header-glass);border-bottom:1px solid rgba(255,255,255,.55);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:background-color var(--transition-standard),box-shadow var(--transition-standard)}.site-header--over-hero{margin-bottom:calc(-1 * var(--current-header-height));background:#ffffffbd;border-color:#ffffff52}.site-header.is-scrolled{background:var(--header-solid);box-shadow:var(--shadow-header)}.site-header__inner{width:min(100%,90rem);min-height:var(--current-header-height);margin:auto;padding:.4rem var(--container-gutter);display:flex;align-items:center;justify-content:space-between;gap:clamp(1.1rem,2.2vw,2rem)}.brand-lockup{min-width:9rem;flex:0 0 auto;display:inline-flex;align-items:center;color:var(--color-primary);text-decoration:none}.brand-lockup__logo{display:block;width:auto;height:auto;max-width:12rem;max-height:4.65rem;object-fit:contain;object-position:left center}.brand-lockup__wordmark{display:flex;flex-direction:column;text-transform:uppercase;line-height:1.08;letter-spacing:.09em}.brand-lockup__wordmark span:first-child{font-size:.9rem;font-weight:750}.brand-lockup__wordmark span:last-child{margin-top:.24rem;font-size:.65rem;font-weight:650;letter-spacing:.19em}.primary-navigation{display:flex;align-items:center;justify-content:flex-end;margin-left:auto}.primary-navigation__links{display:flex;align-items:center;gap:clamp(.9rem,1.5vw,1.4rem);margin:0;padding:0;list-style:none}.primary-navigation__links a{position:relative;display:inline-flex;min-height:2.75rem;align-items:center;color:var(--color-primary);font-size:.82rem;font-weight:700;letter-spacing:.055em;text-decoration:none;white-space:nowrap}.primary-navigation__links a:after{position:absolute;right:0;bottom:.3rem;left:0;height:1px;background:var(--color-accent);content:"";transform:scaleX(0);transform-origin:left;transition:transform .22s ease}.primary-navigation__links a:hover,.primary-navigation__links a:focus-visible{color:var(--color-secondary)}.primary-navigation__links a[aria-current=page]{color:var(--color-secondary)}.primary-navigation__links a[aria-current=page]:after{background:var(--color-accent);transform:scaleX(1)}.primary-navigation__links a:hover:after,.primary-navigation__links a:focus-visible:after{transform:scaleX(1)}.menu-toggle{display:none}@media(max-width:78rem){.site-header__inner{gap:1rem}.brand-lockup{min-width:8.5rem}.brand-lockup__logo{max-width:10.5rem;max-height:4.4rem}.primary-navigation__links{gap:clamp(.75rem,1.2vw,1.1rem)}.primary-navigation__links a{font-size:.8125rem}}@media(max-width:64rem){.site-header{--current-header-height: 4.75rem}.site-header__inner{min-height:var(--current-header-height)}.brand-lockup{min-width:0}.brand-lockup__logo{max-width:8.75rem;max-height:3.5rem}.menu-toggle{position:relative;z-index:52;display:flex;width:2.75rem;height:2.75rem;flex:0 0 auto;flex-direction:column;align-items:center;justify-content:center;gap:5px;margin-left:auto;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#ffffffbf;color:var(--color-primary);cursor:pointer}.menu-toggle span{width:1.15rem;height:2px;background:currentColor;transition:transform var(--transition-fast),opacity var(--transition-fast)}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-7px) rotate(-45deg)}.primary-navigation{position:absolute;top:calc(100% - 1px);right:0;left:0;display:none;margin:0;padding:.65rem var(--container-gutter) 1rem;background:var(--header-solid);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-header)}.primary-navigation.is-open{display:block}.primary-navigation__links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.2rem .75rem}.primary-navigation__links a{width:fit-content;min-height:2.75rem;font-size:.92rem;white-space:normal}.primary-navigation__links a:after{bottom:.15rem}}@media(max-width:46rem){.site-header{--current-header-height: 4.35rem}.site-header__inner{min-height:var(--current-header-height)}.brand-lockup__logo{max-width:7.75rem;max-height:3.1rem}.primary-navigation__links{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:.5rem}}@media(max-width:24rem){.primary-navigation__links{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.site-header,.menu-toggle span,.primary-navigation__links a:after{transition:none}}@media(prefers-reduced-transparency:reduce){.site-header,.site-header--over-hero{background:var(--color-white);-webkit-backdrop-filter:none;backdrop-filter:none}}.section-eyebrow{margin:0 0 var(--space-3);color:var(--color-secondary);font-size:var(--text-sm);font-weight:750;letter-spacing:.12em}.section-heading{max-width:54rem;margin:0 auto var(--space-12);text-align:center}.section-heading h2{max-width:22ch;margin:0 auto;color:var(--color-primary);font-size:clamp(2rem,4.5vw,3.35rem);font-weight:650;line-height:1.12;letter-spacing:-.035em;text-wrap:balance}.section-heading>p:last-child{max-width:66ch;margin:var(--space-4) auto 0;color:var(--color-text-muted);font-size:var(--text-lg)}.trust-strip{position:relative;z-index:2;padding:1.1rem var(--container-gutter);background:var(--color-white);border-bottom:1px solid var(--color-border)}.trust-strip__list{display:grid;width:min(100%,var(--container-max));grid-template-columns:repeat(5,minmax(0,1fr));margin:0 auto;padding:0;list-style:none}.trust-strip__list li+li{margin:0}.trust-strip__list a{display:flex;min-height:3.15rem;align-items:center;justify-content:center;gap:.65rem;padding:.45rem .8rem;border-radius:var(--radius-sm);color:var(--color-primary);font-size:.88rem;font-weight:650;text-align:center;text-decoration:none;transition:color var(--transition-fast),background-color var(--transition-fast)}.trust-strip__list a:hover,.trust-strip__list a:focus-visible{color:var(--color-secondary);background:#f4f7f9}.trust-strip__icon{width:1.25rem;height:1.25rem;flex:0 0 auto;color:var(--color-secondary)}.trust-strip__arrow{color:var(--color-accent);font-size:.9rem;opacity:0;transform:translate(-3px,3px);transition:opacity var(--transition-fast),transform var(--transition-fast)}.trust-strip__list a:hover .trust-strip__arrow,.trust-strip__list a:focus-visible .trust-strip__arrow{opacity:1;transform:translate(0)}.services-section{padding:clamp(4rem,8vw,7.25rem) var(--container-gutter);background:var(--color-background)}.services-section>.section-heading,.service-grid{width:min(100%,var(--container-max));margin-right:auto;margin-left:auto}.service-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:1rem}.service-card{grid-column:span 4;display:flex;min-width:0;min-height:19rem;flex-direction:column;padding:clamp(1.35rem,2.5vw,2rem);overflow:hidden;border:1px solid var(--color-border);border-top:3px solid var(--color-accent);border-radius:var(--radius-md);background:var(--color-white);box-shadow:var(--shadow-card);transition:transform var(--transition-standard),box-shadow var(--transition-standard),border-color var(--transition-standard),outline-color var(--transition-standard)}.service-card:focus-within{border-color:var(--color-secondary);box-shadow:0 12px 24px #0b1f331a}.service-card:target{border-color:var(--color-accent);outline:2px solid rgba(217,164,65,.58);outline-offset:3px;box-shadow:0 12px 28px #0b1f3321,0 0 0 5px #d9a4411f}.service-card--residential-safety-nets,.service-card--construction-industrial-safety-nets{grid-column:span 6;min-height:18rem}.service-card--residential-safety-nets{border-color:var(--color-primary);border-top-color:var(--color-accent);background:var(--color-primary);color:#ffffffdb}.service-card--residential-safety-nets h3{color:var(--color-white)}.service-card--residential-safety-nets .service-card__icon,.service-card--residential-safety-nets .service-card__number{color:var(--color-accent)}.service-card--residential-safety-nets .service-card__details{border-color:#ffffff38}.service-card--residential-safety-nets .service-card__details summary{color:var(--color-white)}.service-card--construction-industrial-safety-nets{border-left:3px solid var(--color-secondary)}.service-card--sports-recreation-nets{background:#f0f4f6}.service-card--invisible-grills{background:#fff;border-top-color:var(--color-secondary)}.service-card--cloth-hangers{background:#fbf8f0;border-top-color:var(--color-accent)}.service-card__topline{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}.service-card__number{color:var(--color-secondary);font-size:.82rem;font-weight:750;letter-spacing:.1em}.service-card__icon{width:2rem;height:2rem;color:var(--color-secondary);transition:transform var(--transition-standard)}.service-card h3{margin:0;color:var(--color-primary);font-size:clamp(1.2rem,2vw,1.55rem);font-weight:650;line-height:1.25;letter-spacing:-.02em}.service-card>p{position:relative;z-index:1;margin:.8rem 0 1.2rem;color:#4b5b6b;font-size:.98rem;line-height:1.55;opacity:1;visibility:visible}.service-card--residential-safety-nets>p{color:#ffffffe0}.service-card__details{margin-top:auto;border-top:1px solid var(--color-border)}.service-card__details summary{display:flex;width:100%;min-height:3rem;align-items:center;gap:.5rem;padding:0 .25rem;border-radius:var(--radius-sm);color:var(--color-secondary);font-size:.9rem;font-weight:700;cursor:pointer;list-style:none;transition:color var(--transition-fast),background-color var(--transition-fast)}.service-card__details summary:focus-visible{outline:var(--focus-ring);outline-offset:2px}.service-card__details[open] summary{color:var(--color-primary)}.service-card--residential-safety-nets .service-card__details[open] summary{color:var(--color-white)}@media(hover:hover)and (pointer:fine){.service-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px #0b1f331a}}@media(hover:hover)and (pointer:fine){.service-card__details summary:hover{background:#0b1f330e;color:var(--color-primary)}.service-card--residential-safety-nets .service-card__details summary:hover{background:#ffffff1a;color:var(--color-white)}}.service-card__details summary::-webkit-details-marker{display:none}.service-card__details summary>span:first-child{margin-right:auto}.service-card__count{color:var(--color-text-muted);font-size:.8rem;font-variant-numeric:tabular-nums}.service-card__toggle{position:relative;width:1.15rem;height:1.15rem;border:1px solid currentColor;border-radius:50%}.service-card__toggle:before,.service-card__toggle:after{position:absolute;top:50%;left:50%;width:.5rem;height:1px;background:currentColor;content:"";transform:translate(-50%,-50%)}.service-card__toggle:after{transform:translate(-50%,-50%) rotate(90deg);transition:transform var(--transition-fast)}.service-card__details[open] .service-card__toggle:after{transform:translate(-50%,-50%) rotate(0)}.service-card__details ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem 1.25rem;margin:0 0 .5rem;padding:0 0 0 1.1rem;color:var(--color-text-muted);font-size:.9rem}.service-card__details li+li{margin:0}.service-card--residential-safety-nets .service-card__details ul{color:#ffffffd4}.feature-section{padding:clamp(4rem,8vw,7rem) var(--container-gutter);background:var(--color-white)}.feature-section--cloth-hangers{background:#f3f6f7}.feature-section__inner{display:grid;width:min(100%,var(--container-max));grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(2rem,6vw,5.5rem);margin:auto}.feature-section--cloth-hangers .feature-section__visual{order:2}.feature-section__visual{position:relative;margin:0}.feature-section__visual picture,.feature-section__visual img{display:block;width:100%}.feature-section__visual img{aspect-ratio:16 / 10;border:1px solid rgba(11,31,51,.1);border-radius:var(--radius-md);object-fit:cover}.feature-section__visual figcaption{margin-top:.55rem;color:var(--color-text-muted);font-size:.8rem}.feature-section__copy{max-width:35rem}.feature-section__copy .section-eyebrow{color:var(--color-secondary)}.feature-section__copy h2{margin:0;color:var(--color-primary);font-size:clamp(2rem,4vw,3.15rem);font-weight:650;line-height:1.1;letter-spacing:-.035em;text-wrap:balance}.feature-section__description{margin:1.1rem 0 0;color:var(--color-text-muted);font-size:var(--text-lg)}.feature-section__benefits{display:grid;gap:.65rem;margin:1.5rem 0 1.7rem;padding:0;list-style:none}.feature-section__benefits li{display:flex;align-items:baseline;gap:.7rem;color:var(--color-text)}.feature-section__benefits li span{color:var(--color-secondary);font-weight:800}.text-link{display:inline-flex;min-height:2.8rem;align-items:center;gap:.65rem;color:var(--color-secondary);font-weight:750;text-decoration:none}.text-link span{color:var(--color-accent);transition:transform var(--transition-fast)}.text-link:hover span{transform:translate(3px,-3px)}.why-section{padding:clamp(4rem,8vw,7rem) var(--container-gutter);background:var(--color-primary);color:var(--color-white)}.why-section__inner{width:min(100%,var(--container-max));margin:auto}.why-section .section-heading{margin-left:0;text-align:left}.why-section .section-eyebrow{color:var(--color-accent)}.why-section .section-heading h2{max-width:25ch;margin-left:0;color:var(--color-white)}.why-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem}.why-card{position:relative;min-width:0;padding:1.5rem 1.25rem 1.5rem 0;border-top:1px solid rgba(255,255,255,.25)}.why-card__number{color:var(--color-accent);font-size:.8rem;font-weight:750;letter-spacing:.12em}.why-card__icon{display:block;width:1.8rem;height:1.8rem;margin:1.3rem 0 1rem;color:#ffffffd1}.why-card h3{margin:0;color:var(--color-white);font-size:1.1rem;line-height:1.3}.why-card p{margin:.65rem 0 0;color:#ffffffbd;font-size:.94rem}.projects-section{padding:clamp(4rem,8vw,7rem) var(--container-gutter);background:var(--color-background)}.projects-section__inner{width:min(100%,var(--container-max));margin:auto}.project-gallery{columns:4 14rem;column-gap:1.15rem}.project-gallery__item{display:inline-block;width:100%;margin:0 0 1.15rem;overflow:hidden;break-inside:avoid;background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-card)}.project-gallery__open{position:relative;isolation:isolate;display:block;width:100%;padding:0;overflow:hidden;border:0;background:#e9eef1;color:var(--color-white);text-align:left;cursor:zoom-in;pointer-events:auto}.project-gallery__open img{display:block;width:100%;height:auto;transition:transform .26s cubic-bezier(.2,.7,.2,1)}.project-gallery__open:after{position:absolute;z-index:1;inset:0;background:#050c1400;content:"";pointer-events:none;transition:background-color .24s ease}.project-gallery__zoom{position:absolute;z-index:2;top:50%;left:50%;display:grid;width:2.65rem;height:2.65rem;place-items:center;padding:0;border:1px solid rgba(255,255,255,.42);border-radius:50%;color:var(--color-white);background:#050c14c7;opacity:0;pointer-events:none;transform:translate(-50%,calc(-50% + .2rem));transition:opacity .22s ease,transform .22s ease,background-color .18s ease}.project-gallery__zoom>span{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%)}.project-gallery__zoom svg{display:block;width:1rem;height:1rem;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.project-gallery__open:focus-visible{outline:3px solid var(--color-accent);outline-offset:-4px}@media(hover:hover)and (pointer:fine){.project-gallery__open:hover img{transform:scale(1.03)}.project-gallery__open:hover:after{background:#050c1433}.project-gallery__open:hover .project-gallery__zoom{opacity:1;transform:translate(-50%,-50%)}}.project-gallery__open:focus-visible img{transform:scale(1.03)}.project-gallery__open:focus-visible:after{background:#050c1433}.project-gallery__open:focus-visible .project-gallery__zoom{opacity:1;transform:translate(-50%,-50%)}@media(hover:none){.project-gallery__zoom{opacity:1;transform:translate(-50%,-50%)}}.project-gallery__item figcaption{padding:.85rem 1rem .95rem;color:var(--color-primary);font-size:.9rem;font-weight:650}.service-areas{padding:clamp(4rem,8vw,7rem) var(--container-gutter);background:#f3f6f7}.service-areas__inner{width:min(100%,var(--container-max));margin:auto}.service-areas__grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1rem}.service-areas__region{grid-column:span 2;min-width:0;padding:clamp(1.25rem,2vw,1.65rem);border:1px solid var(--color-border);border-top:2px solid var(--color-accent);border-radius:var(--radius-md);background:var(--color-white);box-shadow:var(--shadow-card);transition:transform var(--transition-standard),border-color var(--transition-standard),box-shadow var(--transition-standard)}.service-areas__region:nth-child(4){grid-column:2 / span 2}.service-areas__region:nth-child(5){grid-column:4 / span 2}.service-areas__region-heading{display:flex;align-items:baseline;gap:.65rem;margin-bottom:1rem}.service-areas__number{color:#9c6810;font-size:.78rem;font-weight:800;letter-spacing:.1em}.service-areas__region-heading h3{margin:0;color:var(--color-primary);font-size:1rem;font-weight:750;line-height:1.3;letter-spacing:.035em}.service-areas__localities{display:flex;flex-wrap:wrap;gap:.45rem;margin:0;padding:0;list-style:none}.service-areas__localities li{max-width:100%;padding:.35rem .58rem;border:1px solid #e1e7eb;border-radius:999px;background:#f8fafb;color:#354657;font-size:.84rem;line-height:1.3;overflow-wrap:anywhere;transition:border-color var(--transition-fast),background-color var(--transition-fast),color var(--transition-fast)}.service-areas__closing{margin:1.5rem 0 2rem;color:var(--color-text-muted);font-size:.95rem;text-align:center}.service-areas__cta{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:clamp(1.25rem,3vw,2rem);border-left:3px solid var(--color-accent);border-radius:var(--radius-sm);background:var(--color-primary);color:var(--color-white)}.service-areas__cta-copy{max-width:48rem}.service-areas__cta-copy h3{margin:0;color:var(--color-white);font-size:clamp(1.2rem,2.2vw,1.55rem);line-height:1.25}.service-areas__cta-copy p{margin:.45rem 0 0;color:#ffffffd1;font-size:.95rem;line-height:1.5}.service-areas__actions{display:flex;flex:0 0 auto;flex-wrap:wrap;gap:.65rem}.service-areas__action{display:inline-flex;min-height:2.85rem;align-items:center;justify-content:center;padding:.65rem 1rem;border:1px solid transparent;border-radius:var(--radius-sm);font-size:.9rem;font-weight:750;text-decoration:none;transition:background-color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.service-areas__action--call{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-primary)}.service-areas__action--whatsapp{border-color:#25d366;background:#25d366;color:#073b1d}.service-areas__action:hover{transform:translateY(-1px)}.service-areas__action--call:hover{border-color:#e5b957;background:#e5b957}.service-areas__action--whatsapp:hover{border-color:#1fc15c;background:#1fc15c}.service-areas__action:focus-visible{outline:var(--focus-ring);outline-offset:3px}@media(hover:hover)and (pointer:fine){.service-areas__region:hover{transform:translateY(-2px);border-color:#c5d1d9;border-top-color:var(--color-accent);box-shadow:0 14px 30px #0b1f331a}.service-areas__localities li:hover{border-color:var(--color-accent);background:#fffdf7;color:var(--color-primary)}}.project-viewer{box-sizing:border-box;position:fixed;inset:0;width:100vw;height:100vh;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;overflow:hidden;border:0;background:transparent;color:var(--color-white)}.project-viewer:not([open]){display:none}.project-viewer[open]{display:block;animation:project-viewer-fade-in .18s ease-out both}.project-viewer::backdrop{background:#040a12f5}.project-viewer[open]::backdrop{animation:project-viewer-backdrop-in .18s ease-out both}.project-viewer__layout{position:relative;display:grid;width:100%;height:100%;place-items:center}.project-viewer__header{position:fixed;z-index:3;inset:0;display:block;pointer-events:none}.project-viewer__caption{position:absolute;top:max(1.25rem,env(safe-area-inset-top));left:max(1.5rem,env(safe-area-inset-left));max-width:min(48vw,36rem);margin:0;overflow:hidden;color:#ffffffd1;font-size:.9rem;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.project-viewer__counter{position:fixed;z-index:4;bottom:max(1.25rem,env(safe-area-inset-bottom));left:50%;display:inline-flex;min-height:2.4rem;align-items:center;padding:.35rem .8rem;transform:translate(-50%);border:1px solid rgba(255,255,255,.18);border-radius:999px;background:#0c141ed1;color:#ffffffeb;font-size:.8rem;font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap}.project-viewer__counter span{padding-inline:.2rem;color:var(--color-accent)}.project-viewer__close,.project-viewer__arrow{display:grid;width:50px;height:50px;place-items:center;border:1px solid rgba(255,255,255,.22);border-radius:50%;background:#121a24c2;color:var(--color-white);cursor:pointer;pointer-events:auto;transition:transform .18s ease,border-color .18s ease,background-color .18s ease}.project-viewer__close{position:fixed;z-index:5;top:max(1.25rem,env(safe-area-inset-top));right:max(1.25rem,env(safe-area-inset-right))}.project-viewer__body{position:absolute;inset:0;display:grid;min-width:0;min-height:0;place-items:center}.project-viewer__image{display:block;width:auto;height:auto;max-width:min(82vw,1280px);max-height:80dvh;object-fit:contain;border-radius:6px;box-shadow:0 16px 48px #00000042;touch-action:pan-y}.project-viewer[open] .project-viewer__image{animation:project-viewer-image-in .18s ease-out both}.project-viewer__arrow{position:fixed;z-index:5;top:50%;transform:translateY(-50%)}.project-viewer__previous{left:max(clamp(18px,3vw,48px),calc(env(safe-area-inset-left) + 8px))}.project-viewer__next{right:max(clamp(18px,3vw,48px),calc(env(safe-area-inset-right) + 8px))}.project-viewer__close svg,.project-viewer__arrow svg{display:block;width:1.4rem;height:1.4rem;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.project-viewer__close:hover{transform:translateY(-1px);border-color:#ffffff80;background:#ffffff29}.project-viewer__arrow:hover{transform:translateY(-50%) scale(1.03);border-color:#ffffff80;background:#ffffff29}.project-viewer__close:active{transform:scale(.96)}.project-viewer__arrow:active{transform:translateY(-50%) scale(.96)}.project-viewer__close:focus-visible,.project-viewer__arrow:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}@keyframes project-viewer-fade-in{0%{opacity:0}to{opacity:1}}@keyframes project-viewer-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes project-viewer-image-in{0%{opacity:0}to{opacity:1}}.reviews-section{padding:clamp(4rem,8vw,7rem) var(--container-gutter);background:var(--color-white)}.reviews-section__inner{width:min(100%,var(--container-max));margin:auto}.review-empty-state{width:min(100%,58rem);margin:0 auto;padding:1.25rem 1.5rem;border:1px solid var(--color-border);border-left:3px solid var(--color-accent);background:var(--color-background);color:var(--color-secondary);font-weight:600;text-align:center}.review-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.review-card{min-width:0;padding:1.35rem;border:1px solid var(--color-border);border-top:2px solid var(--color-accent);border-radius:var(--radius-sm);background:var(--color-white)}.review-card__text{margin:0;color:var(--color-text)}.review-card__meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:.3rem .65rem;margin-top:1.25rem;padding-top:.85rem;border-top:1px solid var(--color-border);font-size:.85rem}.review-card__name,.review-card__location,.review-card__date{margin:0}.review-card__name{color:var(--color-primary);font-weight:700}.review-card__location,.review-card__date,.review-card__source{color:var(--color-text-muted)}.review-card__source{margin-left:auto}.review-card__rating{flex-basis:100%;color:var(--color-accent);letter-spacing:.12em}.review-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:1.5rem}.review-action{display:inline-flex;min-height:2.8rem;align-items:center;justify-content:center;padding:.65rem 1rem;border:1px solid var(--color-secondary);color:var(--color-secondary);font-size:.9rem;font-weight:700;text-decoration:none;transition:background-color var(--transition-fast),color var(--transition-fast)}.review-action:hover{background:var(--color-secondary);color:var(--color-white)}.review-action--primary{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-white)}.review-action--primary:hover{border-color:var(--color-secondary);background:var(--color-secondary)}.faq-section{padding:clamp(4rem,8vw,7rem) var(--container-gutter);background:var(--color-background)}.faq-section__inner{width:min(100%,62rem);margin:auto}.faq-list{border-top:1px solid var(--color-border)}.faq-item{border-bottom:1px solid var(--color-border)}.faq-item__heading{margin:0;font-size:inherit}.faq-item__trigger{display:grid;width:100%;min-height:4.25rem;grid-template-columns:2.5rem minmax(0,1fr) 2.25rem;align-items:center;gap:.85rem;padding:.9rem .25rem;border:0;background:transparent;color:var(--color-primary);text-align:left;cursor:pointer}.faq-item__number{color:var(--color-secondary);font-size:.8rem;font-weight:750;letter-spacing:.08em;font-variant-numeric:tabular-nums}.faq-item__question{font-size:clamp(1rem,2vw,1.125rem);font-weight:650;line-height:1.4}.faq-item__toggle{display:grid;width:2rem;height:2rem;place-items:center;justify-self:end;border:1px solid var(--color-border);border-radius:50%;color:var(--color-secondary);font-size:1.25rem;line-height:1;transition:border-color var(--transition-fast),background-color var(--transition-fast),color var(--transition-fast)}.faq-item.is-open .faq-item__toggle{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-white)}.faq-item__panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .22s ease}.faq-item.is-open .faq-item__panel{grid-template-rows:1fr}.faq-item__panel-inner{min-height:0;overflow:hidden;padding:0 3.1rem 0 3.6rem;color:var(--color-text-muted)}.faq-item.is-open .faq-item__panel-inner{padding-bottom:1.25rem}.faq-item__panel-inner>p{margin:0}.faq-item__services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem 1.5rem;margin:.75rem 0 0;padding-left:1.1rem;color:var(--color-text);font-size:.94rem}.faq-item__services li+li{margin:0}.faq-item__link{display:inline-flex;min-height:2.75rem;align-items:center;gap:.5rem;margin-top:.8rem;color:var(--color-secondary);font-weight:750;text-decoration:none}.faq-item__link span{color:var(--color-accent)}.faq-item__link:hover{text-decoration:underline;text-underline-offset:.2em}.contact-section{padding:clamp(4.5rem,8vw,7.5rem) var(--container-gutter);background:#edf2f5}.contact-section__inner{display:grid;width:min(100%,var(--container-max));grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:clamp(2rem,6vw,6rem);margin:auto}.contact-section__intro{max-width:34rem;padding-top:.3rem}.contact-section__intro h2{max-width:13ch;margin:0;color:var(--color-primary);font-size:clamp(2.1rem,4.5vw,3.45rem);font-weight:650;line-height:1.1;letter-spacing:-.04em;text-wrap:balance}.contact-section__intro>p:not(.section-eyebrow){margin:1rem 0 0;color:var(--color-text-muted);font-size:var(--text-lg)}.contact-options{display:grid;gap:.7rem;margin-top:2rem}.contact-option{display:grid;min-height:5.25rem;grid-template-columns:2.75rem minmax(0,1fr) 1.5rem;align-items:center;gap:.9rem;padding:.85rem 1rem;border:1px solid #d4dfe6;border-radius:var(--radius-sm);background:var(--color-white);color:var(--color-primary);text-decoration:none;transition:border-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.contact-option:hover{transform:translateY(-2px);border-color:var(--color-secondary);box-shadow:var(--shadow-card)}.contact-option__icon{display:grid;width:2.65rem;height:2.65rem;place-items:center;border-radius:50%;color:var(--color-white)}.contact-option__icon--call{background:#16a34a}.contact-option__icon--whatsapp{background:#25d366}.contact-option__icon .whatsapp-mark{fill:currentColor;stroke:none}.contact-option__icon svg{width:1.25rem;height:1.25rem;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.contact-option__label,.contact-option__value{display:block}.contact-option__label{color:var(--color-text-muted);font-size:.72rem;font-weight:750;letter-spacing:.12em}.contact-option__value{margin-top:.15rem;font-size:1.05rem;font-weight:700;font-variant-numeric:tabular-nums}.contact-option__arrow{color:var(--color-accent);font-size:1.1rem}.contact-section__privacy{max-width:42ch;margin-top:1.1rem!important;font-size:.85rem!important}.quote-form{min-width:0;padding:clamp(1.3rem,3vw,2.35rem);border:1px solid #d8e1e6;border-top:3px solid var(--color-accent);border-radius:var(--radius-md);background:var(--color-white);box-shadow:var(--shadow-card)}.quote-form__heading{margin-bottom:1.5rem}.quote-form__heading>span{color:var(--color-secondary);font-size:.75rem;font-weight:800;letter-spacing:.13em}.quote-form__heading p{margin:.3rem 0 0;color:var(--color-text-muted)}.quote-form__fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.05rem 1rem}.quote-form__field{min-width:0}.quote-form__field--wide{grid-column:1 / -1}.quote-form__field label{display:inline-flex;align-items:baseline;gap:.35rem;margin-bottom:.38rem;color:var(--color-primary);font-size:.9rem;font-weight:700}.quote-form__field label>span:first-child{color:#9c6810}.quote-form__optional{color:var(--color-text-muted);font-size:.78rem;font-weight:500}.quote-form__field input,.quote-form__field select,.quote-form__field textarea{display:block;width:100%;min-height:3rem;padding:.65rem .75rem;border:1px solid #cbd6de;border-radius:var(--radius-sm);background:#fff;color:var(--color-text);font:inherit}.quote-form__field textarea{min-height:7.25rem;resize:vertical}.quote-form__field input:hover,.quote-form__field select:hover,.quote-form__field textarea:hover{border-color:var(--color-secondary)}.quote-form__field input[aria-invalid=true],.quote-form__field select[aria-invalid=true]{border-color:#a33f36}.quote-form__field input:focus-visible,.quote-form__field select:focus-visible,.quote-form__field textarea:focus-visible{outline:var(--focus-ring);outline-offset:2px}.quote-form__error{display:block;margin-top:.35rem;color:#8f2d25;font-size:.82rem;line-height:1.4}.quote-form__required-note{margin:.85rem 0 .7rem;color:var(--color-text-muted);font-size:.8rem}.quote-form__required-note span{color:#9c6810;font-weight:800}.quote-form__submit{display:inline-flex;min-height:3.15rem;align-items:center;justify-content:center;gap:.75rem;padding:.7rem 1.1rem;border:1px solid var(--color-primary);border-radius:var(--radius-sm);background:var(--color-primary);color:var(--color-white);font-size:.92rem;font-weight:700;cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.quote-form__submit:hover{border-color:var(--color-secondary);background:var(--color-secondary)}.quote-form__submit span{color:var(--color-accent)}.quote-form__status{margin:.9rem 0 0;color:var(--color-secondary);font-size:.88rem;font-weight:600}.quote-form__fallback{display:inline-flex;min-height:2.75rem;align-items:center;margin-top:.4rem;color:var(--color-secondary);font-weight:700;text-underline-offset:.2em}.quote-form__note{margin:1rem 0 0;padding-top:.8rem;border-top:1px solid var(--color-border);color:var(--color-text-muted);font-size:.78rem;line-height:1.5}.site-footer{background:var(--color-primary);color:#ffffffd4}.site-footer__inner{display:grid;width:min(100%,calc(var(--container-max) + 2 * var(--container-gutter)));grid-template-columns:1.35fr .7fr 1.05fr 1fr;gap:clamp(1.6rem,4vw,3.5rem);margin:auto;padding:clamp(3rem,6vw,5rem) var(--container-gutter) 3rem}.site-footer__brand-column{max-width:25rem}.site-footer__logo-panel{display:inline-flex;max-width:100%;align-items:center;padding:.65rem .8rem;border-radius:var(--radius-sm);background:var(--color-white)}.site-footer__logo-panel .brand-lockup{min-width:0}.site-footer__logo-panel .brand-lockup__logo{width:min(14rem,48vw);max-width:100%;max-height:none}.site-footer__description{max-width:34ch;margin:1.1rem 0 0;color:#ffffffc4;font-size:.92rem}.site-footer__location{display:flex;align-items:center;gap:.55rem;margin:1rem 0 0;color:var(--color-white);font-size:.88rem;font-weight:650}.site-footer__location-mark{color:var(--color-accent);font-size:1.15rem}.site-footer__column{min-width:0}.site-footer__column h2{margin:.15rem 0 1rem;color:var(--color-white);font-size:.96rem;font-weight:700;letter-spacing:.02em}.site-footer__column ul{display:grid;gap:.4rem;margin:0;padding:0;list-style:none}.site-footer__column li+li{margin:0}.site-footer__column li a{display:flex;min-height:2rem;align-items:baseline;justify-content:space-between;gap:.4rem;color:#ffffffc2;font-size:.85rem;line-height:1.35;text-decoration:none}.site-footer__column li a span{flex:0 0 auto;color:var(--color-accent);opacity:0;transition:opacity var(--transition-fast)}.site-footer__column li a:hover,.site-footer__column li a:focus-visible{color:var(--color-white)}.site-footer__column li a:hover span,.site-footer__column li a:focus-visible span{opacity:1}.site-footer__contact>p{margin:-.2rem 0 .85rem;color:#ffffffb3;font-size:.84rem}.site-footer__contact .site-footer__phone-number{margin:.9rem 0 .35rem;color:var(--color-white);font-size:.92rem;font-weight:650;font-variant-numeric:tabular-nums}.site-footer__contact-actions{display:flex;align-items:center;gap:.5rem}.site-footer__contact-icon{display:inline-grid;width:2.25rem;height:2.25rem;place-items:center;border:0;border-radius:50%;background:#16a34a;color:var(--color-white);transition:transform var(--transition-fast),box-shadow var(--transition-fast),filter var(--transition-fast)}.site-footer__contact-icon--whatsapp{background:#25d366}.site-footer__contact-icon:hover,.site-footer__contact-icon:focus-visible{transform:translateY(-1px);box-shadow:0 5px 12px #0003;filter:brightness(.94)}.site-footer__contact-icon .whatsapp-mark{fill:currentColor;stroke:none}.site-footer__contact-icon svg{width:1.1rem;height:1.1rem;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.65}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%)}.site-footer__bottom{border-top:1px solid rgba(255,255,255,.16)}.site-footer__bottom-inner{display:flex;width:min(100%,calc(var(--container-max) + 2 * var(--container-gutter)));min-height:3.75rem;align-items:center;justify-content:space-between;gap:1rem;margin:auto;padding:.7rem var(--container-gutter);color:#ffffffad;font-size:.78rem}.site-footer__legal{display:grid;min-width:0;gap:.16rem;line-height:1.35}.site-footer__developer-credit{color:#ffffff8c;font-size:.74rem}.site-footer__bottom a{color:#ffffffd4;text-decoration:none}.site-footer__bottom a span{padding-left:.35rem;color:var(--color-accent)}.floating-contact{position:fixed;z-index:45;right:max(1.25rem,env(safe-area-inset-right));bottom:calc(1.25rem + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:.6rem}.floating-contact__action{display:inline-grid;width:3.25rem;height:3.25rem;flex:0 0 auto;place-items:center;border:0;border-radius:50%;background:#16a34a;color:var(--color-white);box-shadow:0 5px 16px #0b1f3333;text-decoration:none;transition:transform var(--transition-fast),box-shadow var(--transition-fast),filter var(--transition-fast)}.floating-contact__action--whatsapp{background:#25d366}.floating-contact__action:hover{transform:translateY(-2px) scale(1.025);box-shadow:0 8px 20px #0b1f333d;filter:brightness(.95)}.floating-contact__action:active{transform:scale(.96)}.floating-contact__action:focus-visible{outline:var(--focus-ring);outline-offset:3px}.floating-contact__action .whatsapp-mark{fill:currentColor;stroke:none}.floating-contact__action svg{display:block;width:1.55rem;height:1.55rem;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}@media(max-width:64rem){.service-areas__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-areas__region,.service-areas__region:nth-child(4),.service-areas__region:nth-child(5){grid-column:auto}.service-areas__region:last-child{grid-column:1 / -1;width:calc(50% - .5rem);justify-self:center}.trust-strip__list{grid-template-columns:repeat(3,minmax(0,1fr))}.trust-strip__list li:last-child{grid-column:2}.service-card--residential-safety-nets,.service-card--construction-industrial-safety-nets,.service-card{grid-column:span 6}.service-card--cloth-hangers{grid-column:4 / span 6}.feature-section__inner{gap:2.25rem}.why-grid,.review-list,.site-footer__inner{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:46rem){.service-areas__grid{grid-template-columns:1fr;gap:.8rem}.service-areas__region,.service-areas__region:nth-child(4),.service-areas__region:nth-child(5),.service-areas__region:last-child{grid-column:auto;width:auto}.service-areas__cta{align-items:flex-start;flex-direction:column;gap:1rem}.service-areas__actions{width:100%}.service-areas__action{flex:1 1 8rem}.section-heading{margin-bottom:var(--space-8);text-align:left}.section-heading h2{margin-left:0;font-size:clamp(1.9rem,8vw,2.7rem)}.section-heading>p:last-child{margin-left:0;font-size:1rem}.trust-strip{padding:.75rem var(--container-gutter)}.trust-strip__list{grid-template-columns:repeat(2,minmax(0,1fr))}.trust-strip__list li:last-child{grid-column:1 / -1}.trust-strip__list li:last-child a{margin:0 auto;max-width:16rem}.trust-strip__list a{justify-content:flex-start;gap:.5rem;min-height:3rem;padding-inline:.35rem;font-size:.82rem;text-align:left}.trust-strip__arrow{display:none}.service-grid{grid-template-columns:1fr;gap:.8rem}.service-card,.service-card--residential-safety-nets,.service-card--construction-industrial-safety-nets,.service-card--cloth-hangers{grid-column:auto;min-height:0;padding:1.35rem}.service-card__details ul{grid-template-columns:1fr}.feature-section__inner{grid-template-columns:1fr;gap:1.5rem}.feature-section--cloth-hangers .feature-section__visual{order:0}.feature-section__visual img{aspect-ratio:4 / 3}.feature-section__copy h2{font-size:clamp(1.9rem,8vw,2.7rem)}.feature-section__description{font-size:1rem}.why-grid{grid-template-columns:1fr;gap:.5rem}.why-card{display:grid;grid-template-columns:2rem 2rem minmax(0,1fr);align-items:center;gap:.65rem;padding:1rem 0}.why-card__icon{width:1.4rem;height:1.4rem;margin:0}.why-card h3{font-size:1rem}.why-card p{grid-column:3;margin:-.35rem 0 0}.project-gallery{columns:2 10rem;column-gap:.7rem}.project-gallery__item{margin-bottom:.7rem}.project-gallery__item figcaption{padding:.7rem .75rem .8rem;font-size:.82rem}.project-viewer__caption{top:max(.9rem,env(safe-area-inset-top));left:max(.9rem,env(safe-area-inset-left));max-width:58vw;font-size:.78rem}.project-viewer__counter{bottom:max(1rem,env(safe-area-inset-bottom))}.project-viewer__close,.project-viewer__arrow{width:44px;height:44px}.project-viewer__close{top:max(.75rem,env(safe-area-inset-top));right:max(.75rem,env(safe-area-inset-right))}.project-viewer__image{max-width:min(94vw,calc(100vw - env(safe-area-inset-left) - env(safe-area-inset-right)));max-height:min(74dvh,calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 7rem))}.project-viewer__previous{left:max(8px,calc(env(safe-area-inset-left) + 4px))}.project-viewer__next{right:max(8px,calc(env(safe-area-inset-right) + 4px))}.review-list{grid-template-columns:1fr}.faq-item__trigger{grid-template-columns:2rem minmax(0,1fr) 2rem;gap:.5rem;padding-inline:0}.faq-item__panel-inner{padding-right:2.5rem;padding-left:2.5rem}.faq-item__services{grid-template-columns:1fr;gap:.35rem}.contact-section__inner{grid-template-columns:1fr;gap:2rem}.contact-section__intro{max-width:none}.contact-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;margin-top:1.4rem}.contact-option{min-height:5rem;grid-template-columns:2.35rem minmax(0,1fr);gap:.6rem;padding:.7rem}.contact-option__icon{width:2.3rem;height:2.3rem}.contact-option__arrow{display:none}.contact-option__value{font-size:clamp(.8rem,3.2vw,1rem);white-space:nowrap}.quote-form{padding:1.2rem}.quote-form__fields{grid-template-columns:1fr;gap:.85rem}.quote-form__field--wide{grid-column:auto}.site-footer__inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 1.25rem;padding-bottom:2rem}.site-footer__brand-column{grid-column:1 / -1;max-width:34rem}.site-footer__logo-panel .brand-lockup__logo{width:min(12.5rem,60vw)}.site-footer__column li a{font-size:.82rem}.floating-contact{right:max(.75rem,env(safe-area-inset-right));bottom:calc(.75rem + env(safe-area-inset-bottom));flex-direction:column;gap:.5rem}.floating-contact__action{width:3rem;height:3rem}.floating-contact__action svg{width:1.45rem;height:1.45rem}.contact-section{padding-bottom:5rem}.site-footer__bottom-inner{flex-wrap:wrap;align-items:flex-start;padding-bottom:max(7.5rem,calc(7rem + env(safe-area-inset-bottom)))}.site-footer__bottom-inner>a{margin-left:auto}}@media(max-width:24rem){.contact-options{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.service-card,.service-areas__region,.service-areas__localities li,.service-areas__action,.trust-strip__list a,.trust-strip__arrow,.service-card__toggle:after,.text-link span,.project-gallery__open img,.project-gallery__open:after,.project-gallery__zoom,.project-viewer__close,.project-viewer__arrow,.review-action,.faq-item__toggle,.faq-item__panel,.contact-option,.quote-form__submit,.site-footer__column li a span,.site-footer__contact-icon,.floating-contact__action{transition:none}.project-viewer[open],.project-viewer[open]::backdrop,.project-viewer[open] .project-viewer__image{animation:none}}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6.5rem}body{min-width:320px;margin:0;background:var(--color-background);color:var(--color-text);font:400 var(--text-base)/1.6 var(--font-sans);-webkit-font-smoothing:antialiased}button,a{font:inherit}a{color:inherit}:focus-visible{outline:var(--focus-ring);outline-offset:3px}.skip-link{position:fixed;top:-5rem;left:1rem;z-index:100;padding:.65rem 1rem;background:var(--color-white);color:var(--color-primary);box-shadow:var(--shadow-header)}.skip-link:focus{top:1rem}main{width:min(100%,var(--container-max));margin:auto;padding:clamp(3rem,8vw,7rem) var(--container-gutter)}h1,h2,h3{font-family:var(--font-display)}h1{max-width:16ch;margin:0 0 var(--space-4);color:var(--color-primary);font-size:clamp(2.5rem,7vw,5.25rem);font-weight:650;line-height:1.08;letter-spacing:-.045em}ul{margin:0;padding-left:1.25rem}li+li{margin-top:var(--space-1)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}main.site-main{width:100%;max-width:none;margin:0;padding:0}.inner-page{width:min(100%,78rem);margin:0 auto;padding:clamp(3.5rem,7vw,6.25rem) var(--container-gutter) clamp(4rem,8vw,7rem)}.inner-page--wide{width:min(100%,92rem)}.inner-page--gallery{padding-top:0}.page-intro{max-width:54rem;margin:0 auto clamp(2.5rem,5vw,4rem);padding:clamp(1.5rem,4vw,3rem);border:1px solid var(--color-border);border-radius:var(--radius-md);background:linear-gradient(135deg,#fff,#f4f7f9)}.page-intro h1{max-width:19ch;margin-bottom:1rem;font-size:clamp(2.15rem,5.2vw,4.1rem)}.page-intro__description{max-width:68ch;margin:0;color:var(--color-text-muted);font-size:clamp(1rem,1.6vw,1.14rem)}.inner-page__sections{display:grid;gap:clamp(2rem,4vw,3.5rem)}.service-page-group{scroll-margin-top:6.5rem;padding:clamp(1.5rem,3vw,2.25rem);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-white);box-shadow:var(--shadow-card)}.service-page-group__heading{margin-bottom:1.4rem}.service-page-group__heading h2,.about-services h2{margin:0;color:var(--color-primary);font-size:clamp(1.55rem,3vw,2.1rem);line-height:1.2}.service-page-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.service-page-item{min-width:0;scroll-margin-top:6.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.95rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#fbfcfd}.service-page-item h3{margin:0;color:var(--color-primary);font-size:.98rem;line-height:1.35}.service-page-item .text-link{min-height:2rem;flex:0 0 auto;font-size:.82rem}.about-services{max-width:54rem;margin:0 auto;padding:clamp(1.5rem,3vw,2.25rem);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-white)}.about-services ul{display:flex;flex-wrap:wrap;gap:.8rem 1.5rem;margin:1.25rem 0;padding:0;list-style:none}.about-services li+li{margin-top:0}.about-services a{color:var(--color-secondary);font-weight:700;text-underline-offset:.2em}.about-services p{margin:0;color:var(--color-text-muted)}.inner-page>.projects-section,.inner-page>.reviews-section,.inner-page>.faq-section,.inner-page>.contact-section{width:100%;padding-right:0;padding-left:0}.service-card h3 a{color:inherit;text-decoration:none;text-underline-offset:.2em}.service-card--residential-safety-nets h3 a{color:var(--color-white)}.service-card h3 a:hover,.service-card h3 a:focus-visible{color:inherit;text-decoration:underline;text-decoration-color:var(--color-accent)}.service-card h3 a:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:2px}.service-card__details li a{text-decoration-color:#0b1f334d;text-underline-offset:.18em}.service-card__details li a:hover{color:var(--color-secondary);text-decoration-color:currentColor}.faq-item__services a{color:inherit;text-decoration-color:#0b1f334d;text-underline-offset:.18em}.faq-item__services a:hover,.faq-item__services a:focus-visible{color:var(--color-secondary)}@media(max-width:46rem){.page-intro{margin-bottom:2rem;padding:1.35rem}.service-page-group{padding:1.2rem}.service-page-list{grid-template-columns:1fr}.service-page-item{align-items:flex-start}.inner-page>.projects-section,.inner-page>.reviews-section,.inner-page>.faq-section,.inner-page>.contact-section{padding-right:0;padding-left:0}}
