:root{--marine:#0b2545;--marine-deep:#061528;--brand:#0170b9;--blue-cta:#0170b9;--blue-cta-hover:#015a94;--ice:#e8f0f8;--white:#fff;--text:#1a2a3d;--text-muted:#4a5f75;--line:#0b25451f;--danger:#c53030;--shadow-sm:0 2px 8px #06152814;--shadow-md:0 8px 32px #0615281f;--shadow-lg:0 16px 48px #06152829;--header-h:4.5rem;--max:72rem;--radius:.5rem;--radius-lg:.75rem;--ease:cubic-bezier(.22, 1, .36, 1)}@media (width<=767px){:root{--header-h:4rem}}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;font-size:100%}body{color:var(--text);background:var(--white);margin:0;font-family:Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif;font-size:1.0625rem;line-height:1.65}::selection{background:var(--blue-cta);color:var(--white)}img{max-width:100%;height:auto;display:block}a{color:var(--blue-cta);text-underline-offset:.15em}a:focus-visible,button:focus-visible{outline:3px solid var(--blue-cta);outline-offset:3px}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.error-page{min-height:calc(100vh - var(--header-h));background:var(--marine-deep);color:var(--white);align-items:center;padding:clamp(3rem,8vw,6rem) clamp(1rem,4vw,2.5rem);display:flex}.error-page-inner{max-width:var(--max);margin:0 auto}.error-page h1{max-width:16ch;margin:0 0 1rem;font-size:clamp(2rem,5vw,3.25rem);line-height:1.1}.error-page p{color:#ffffffdb;max-width:40ch;margin:0 0 2rem}.skip-link{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link:focus,.skip-link:focus-visible{z-index:200;clip:auto;white-space:normal;background:var(--blue-cta);width:auto;height:auto;color:var(--white);margin:0;padding:.75rem 1rem;font-weight:600;text-decoration:none;position:fixed;top:1rem;left:1rem;overflow:visible}.site-header{z-index:100;min-height:var(--header-h);background:var(--white);border-bottom:1px solid var(--line);box-shadow:var(--shadow-sm);display:flex;position:relative}.header-inner{max-width:var(--max);flex:1;justify-content:space-between;align-items:center;gap:1rem;margin:0 auto;padding:0 clamp(1rem,4vw,2.5rem);display:flex}.logo{border-radius:var(--radius);box-shadow:none;background:0 0;align-items:center;padding:0;text-decoration:none;display:inline-flex}.logo img{width:min(150px,38vw);height:auto}.nav-toggle{border:2px solid var(--marine);border-radius:var(--radius);background:var(--white);min-height:2.75rem;color:var(--marine);font:inherit;cursor:pointer;justify-content:center;align-items:center;padding:.5rem .85rem;font-weight:600;display:none}.main-nav{padding-block:.5rem}.main-nav ul{flex-wrap:wrap;gap:.25rem 1.5rem;margin:0;padding:0;list-style:none;display:flex}.main-nav a{color:var(--marine);padding:.35rem 0;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-block;position:relative}.main-nav a:after{content:"";background:var(--blue-cta);transform-origin:0;width:100%;height:2px;transition:transform .25s var(--ease);position:absolute;bottom:0;left:0;transform:scaleX(0)}.main-nav a:hover:after,.main-nav a:focus-visible:after,.main-nav a.is-active:after,.main-nav a[aria-current=page]:after,.main-nav a[aria-current=location]:after{transform:scaleX(1)}.main-nav a.is-active,.main-nav a[aria-current=page],.main-nav a[aria-current=location]{color:var(--blue-cta)}.header-cta{border-radius:var(--radius);background:var(--blue-cta);min-height:2.75rem;color:var(--white);white-space:nowrap;align-items:center;padding:.5rem 1rem;font-size:.95rem;font-weight:700;text-decoration:none;transition:background-color .2s,transform .2s;display:inline-flex}.header-cta:hover{background:var(--blue-cta-hover);color:var(--white);transform:translateY(-1px)}.hero{background:var(--ice);color:var(--marine);padding:clamp(2.5rem,6vw,4.5rem) clamp(1rem,4vw,2.5rem) clamp(3.5rem,8vw,5.5rem)}.hero-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:clamp(2rem,5vw,4rem);display:grid}.hero-content h1{letter-spacing:-.02em;text-wrap:balance;max-width:14ch;margin:0 0 1rem;font-size:clamp(2.25rem,6vw,3.75rem);font-weight:700;line-height:1.08}.hero-lead{max-width:42ch;color:var(--text);margin:0 0 2rem;font-size:clamp(1.05rem,2vw,1.2rem);line-height:1.6}.hero-actions{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.hero-facts{max-width:42ch;color:var(--text);flex-direction:column;gap:.15rem;margin:1.25rem 0 0;padding:0;font-size:1rem;font-weight:400;line-height:1.45;list-style:none;display:flex}.hero-facts li{margin:0}.hero-media{aspect-ratio:4/5;border-radius:var(--radius-lg);width:100%;max-width:30rem;box-shadow:var(--shadow-md);justify-self:end;margin:0;position:relative;overflow:hidden}.hero-media img{object-fit:cover;will-change:transform;opacity:0;width:100%;height:100%;position:absolute;inset:0;transform:scale(1.06)}.hero-media img.is-current{z-index:1;opacity:1}.hero-media.is-live img,.hero-media.is-live figcaption a{transition:opacity .7s}.hero-media figcaption{z-index:2;max-width:calc(100% - 2rem);display:grid;position:absolute;bottom:1rem;left:1rem}.hero-media figcaption a{border-radius:var(--radius);background:var(--white);max-width:100%;box-shadow:var(--shadow-sm);color:var(--marine);opacity:0;pointer-events:none;grid-area:1/1;place-self:end start;padding:.4rem .75rem;font-size:.85rem;font-weight:600;line-height:1.4;text-decoration:none}.hero-media figcaption a.is-current{z-index:1;opacity:1;pointer-events:auto}.hero-media figcaption a:hover{text-decoration:underline}.btn{border-radius:var(--radius);min-height:3rem;font:inherit;cursor:pointer;border:2px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.85rem 1.5rem;font-weight:700;text-decoration:none;transition:background-color .2s,color .2s,border-color .2s,transform .2s;display:inline-flex}.btn-primary{background:var(--blue-cta);color:var(--white)}.btn-primary:hover{background:var(--blue-cta-hover);color:var(--white);transform:translateY(-1px)}.btn-secondary{color:var(--marine);border-color:var(--marine);background:0 0}.btn-secondary:hover{background:var(--ice)}.link-arrow{align-items:center;gap:.4rem;font-weight:600;text-decoration:none;display:inline-flex}.link-arrow svg{width:1rem;height:1rem;transition:transform .2s var(--ease);flex-shrink:0}.link-arrow:hover svg{transform:translate(3px)}.link-arrow--light,.link-arrow--light.btn-secondary{color:var(--white);border-color:#ffffffa6}.link-arrow--light.btn-secondary:hover{background:#ffffff1f}.contact-strip{z-index:3;margin-top:-2rem;padding:0 clamp(1rem,4vw,2.5rem);position:relative}.contact-strip-inner{max-width:var(--max);background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.25rem 2rem;margin:0 auto;padding:clamp(1.25rem,3vw,1.75rem) clamp(1.25rem,3vw,2rem);display:flex}.contact-strip h2{color:var(--marine);margin:0 0 .35rem;font-size:clamp(1.1rem,2.5vw,1.35rem);font-weight:700}.contact-strip p{color:var(--text-muted);margin:0;font-size:.95rem}.contact-strip-actions{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.contact-phone{color:var(--marine);white-space:nowrap;font-size:clamp(1.25rem,3vw,1.5rem);font-weight:700;text-decoration:none}.contact-phone:hover{color:var(--blue-cta)}.section{padding:clamp(3.5rem,8vw,6rem) clamp(1rem,4vw,2.5rem)}.section--ice{background:var(--ice)}.section-inner{max-width:var(--max);margin:0 auto}.section-head{max-width:42rem;margin-bottom:clamp(2rem,4vw,3rem)}.section-head h2,.section h2{color:var(--marine);letter-spacing:-.02em;margin:0 0 .75rem;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700;line-height:1.15}.section-head p{color:var(--text-muted);margin:0;font-size:1.05rem}.service-grid{grid-template-columns:repeat(3,1fr);gap:clamp(1rem,2.5vw,1.5rem);display:grid}.service-card{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;transition:box-shadow .25s,transform .25s;display:flex;overflow:hidden}.section--ice+.section .service-card,.section:not(.section--ice) .service-card{border:1px solid var(--line)}.service-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.service-card-media{aspect-ratio:4/3;overflow:hidden}.service-card-media img{object-fit:cover;width:100%;height:100%;transition:transform .4s var(--ease)}.page-feature img[alt*=strängtrimmer]{object-position:72% 22%}.project-feature-media.crop-home-terrace img{object-position:50% 42%}.project-secondary-media.crop-home-garden-thumb img{object-position:72% 22%}.service-card:hover .service-card-media img{transform:scale(1.04)}.service-card-body{flex-direction:column;flex:1;gap:.75rem;padding:clamp(1.1rem,2.5vw,1.5rem);display:flex}.service-card-body h3{color:var(--marine);margin:0;font-size:1.25rem;font-weight:700}.service-card-body p{color:var(--text-muted);flex:1;margin:0;font-size:.98rem}.service-card-body .link-arrow{margin-top:auto;font-size:.95rem}.about-grid{grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(2rem,5vw,4rem);display:grid}.about-copy h2{margin-bottom:1.25rem}.about-badge{width:min(160px,40%);margin-bottom:.75rem}.years-stat{color:var(--text-muted);flex-wrap:wrap;align-items:baseline;gap:.35rem .6rem;margin:0 0 1.25rem;font-size:1rem;display:flex}.years-stat [data-years-counter]{color:var(--blue-cta);letter-spacing:-.03em;font-size:clamp(2.5rem,6vw,3.5rem);font-weight:800;line-height:1}.about-copy p{color:var(--text);margin:0 0 1rem}.about-copy p:last-child{margin-bottom:0}.about-visual{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden}.about-visual img{aspect-ratio:4/3;object-fit:contain;background:var(--ice);width:100%;display:block}.audience-grid{grid-template-columns:repeat(3,1fr);gap:clamp(1rem,2.5vw,1.5rem);display:grid}.audience-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(1.25rem,3vw,1.75rem);transition:box-shadow .25s,transform .25s}.audience-card:hover{box-shadow:var(--shadow-sm);transform:translateY(-2px)}.audience-card h3{color:var(--marine);margin:0 0 .65rem;font-size:1.15rem;font-weight:700}.audience-card p{color:var(--text-muted);margin:0;font-size:.98rem}.section--projects{background:linear-gradient(180deg, var(--white) 0%, var(--ice) 100%);padding-top:clamp(4rem,9vw,7rem);padding-bottom:clamp(4rem,9vw,7rem)}.projects-intro{max-width:44rem;margin-bottom:clamp(2rem,5vw,3.5rem)}.eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--blue-cta);margin:0 0 .5rem;font-size:.82rem;font-weight:700}.projects-intro h2{color:var(--marine);margin:0 0 .85rem;font-size:clamp(2rem,4.5vw,3rem);line-height:1.1}.projects-intro p{color:var(--text-muted);margin:0;font-size:1.08rem}.projects-showcase{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);align-items:stretch;gap:clamp(1rem,2.5vw,1.5rem);display:grid}.project-card-link{height:100%;color:inherit;text-decoration:none;display:block}.project-feature{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:box-shadow .25s,transform .25s;overflow:hidden}.project-feature:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.project-feature-media{aspect-ratio:4/5;position:relative;overflow:hidden}.project-feature-media:after{content:"";opacity:0;transition:opacity .35s var(--ease);background:linear-gradient(#0000 45%,#0615288c 100%);position:absolute;inset:0}.project-feature:hover .project-feature-media:after{opacity:1}.project-feature-media img{object-fit:cover;width:100%;height:100%;transition:transform .45s var(--ease)}.project-feature:hover .project-feature-media img{transform:scale(1.04)}.project-feature-body{padding:clamp(1.25rem,3vw,1.75rem)}.project-meta{letter-spacing:.06em;text-transform:uppercase;color:var(--blue-cta);flex-wrap:wrap;gap:.35rem .65rem;margin:0 0 .65rem;font-size:.78rem;font-weight:700;display:flex}.project-meta span{background:var(--ice);border-radius:999px;padding:.2rem .55rem}.project-feature-body h3,.project-secondary-body h3{color:var(--marine);margin:0 0 .55rem;font-size:clamp(1.25rem,2.5vw,1.6rem)}.project-feature-body p,.project-secondary-body p{color:var(--text-muted);margin:0 0 .85rem;line-height:1.6}.projects-side{grid-template-rows:1fr 1fr;gap:clamp(1rem,2.5vw,1.5rem);display:grid}.project-secondary{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--line);transition:box-shadow .25s,transform .25s;overflow:hidden}.project-secondary:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.project-secondary--offset{margin-top:clamp(.5rem,2vw,1.25rem)}.project-secondary-media{aspect-ratio:16/10;overflow:hidden}.project-secondary-media img{object-fit:cover;width:100%;height:100%;transition:transform .4s var(--ease)}.project-secondary:hover .project-secondary-media img{transform:scale(1.05)}.project-secondary-body{padding:1rem 1.15rem 1.15rem}.projects-cta{text-align:center;margin:clamp(2rem,4vw,2.75rem) 0 0}.projects-cta .btn{min-width:min(100%,20rem)}.faq-wrap{max-width:46rem}.faq-list{gap:.75rem;display:grid}.faq-item{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--white);overflow:hidden}.faq-item summary{color:var(--marine);cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.15rem;font-weight:700;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";background:var(--ice);width:1.75rem;height:1.75rem;color:var(--blue-cta);text-align:center;transition:transform .25s var(--ease), background-color .25s ease;border-radius:50%;flex-shrink:0;font-size:1.15rem;line-height:1.75rem}.faq-item[open] summary:after{content:"−";background:var(--blue-cta);color:var(--white);transform:rotate(180deg)}.faq-item summary:focus-visible{outline:3px solid var(--blue-cta);outline-offset:-3px}.faq-answer{color:var(--text-muted);padding:0 1.15rem 1.1rem;line-height:1.65}.faq-answer p{margin:0}.faq-answer a{font-weight:600}.section--contact{background:var(--ice)}.contact-grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:start;gap:clamp(2rem,5vw,3.5rem);display:grid}.contact-info h2{margin:0 0 1rem}.contact-lead{color:var(--text-muted);max-width:38ch;margin:0 0 1.75rem;font-size:1.05rem}.contact-details{gap:1.15rem;margin:0;padding:0;list-style:none;display:grid}.contact-details li{gap:.2rem;display:grid}.contact-label{letter-spacing:.06em;text-transform:uppercase;color:var(--blue-cta);font-size:.82rem;font-weight:700}.contact-details a{color:var(--marine);font-size:clamp(1.05rem,2.5vw,1.25rem);font-weight:700;text-decoration:none}.contact-details a:hover{color:var(--blue-cta)}.contact-details span:not(.contact-label){color:var(--text);font-size:1.05rem}.contact-form-wrap{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:clamp(1.25rem,3vw,1.75rem)}.contact-form{gap:1rem;display:grid}.form-field{gap:.35rem;display:grid}.form-field label{color:var(--marine);font-size:.95rem;font-weight:600}.required-mark{color:var(--blue-cta)}.contact-form input,.contact-form select,.contact-form textarea{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);width:100%;min-height:3rem;color:var(--text);font:inherit;padding:.65rem .85rem;font-size:1rem;line-height:1.4}.contact-form textarea{resize:vertical;min-height:7rem}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:3px solid var(--blue-cta);outline-offset:2px;border-color:var(--blue-cta)}.contact-form input[aria-invalid=true],.contact-form select[aria-invalid=true],.contact-form textarea[aria-invalid=true]{border-color:var(--danger)}.field-error{color:var(--danger);margin:0;font-size:.9rem;font-weight:600}.form-preview-note{color:var(--text-muted);margin:0;font-size:.88rem;line-height:1.55}.form-actions{margin-top:.25rem}.form-actions .btn{width:100%}.form-status{border-radius:var(--radius);background:color-mix(in srgb, var(--blue-cta) 10%, transparent);border:1px solid color-mix(in srgb, var(--blue-cta) 25%, transparent);color:var(--marine);margin:0;padding:.85rem 1rem;font-size:.95rem;font-weight:600;line-height:1.5}.form-status.is-preview{background:#0b254514;border-color:#0b254533}.form-noscript{color:var(--text-muted);margin:1rem 0 0;font-size:.9rem}.site-footer{background:var(--marine-deep);color:#ffffffd1;padding:clamp(2.5rem,6vw,4rem) clamp(1rem,4vw,2.5rem) 0}.footer-grid{max-width:var(--max);grid-template-columns:1.4fr 1fr 1fr;gap:clamp(1.5rem,4vw,3rem);margin:0 auto;padding-bottom:clamp(2rem,4vw,2.5rem);display:grid}.footer-brand .logo-mark{border-radius:var(--radius);background:#fffffff5;margin-bottom:1rem;padding:.5rem .75rem;display:inline-flex}.footer-brand .logo-mark img{width:min(140px,50vw);height:auto}.footer-brand p{margin:0;font-size:.95rem;line-height:1.6}.footer-hours{margin-top:.75rem}.footer-brand a{color:var(--ice);text-decoration:none}.footer-brand a:hover{color:var(--white);text-decoration:underline}.footer-col h2,.footer-col h3{letter-spacing:.06em;text-transform:uppercase;color:var(--white);margin:0 0 .85rem;font-size:.85rem;font-weight:700}.footer-col ul{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.footer-col a{color:#ffffffbf;font-size:.95rem;text-decoration:none}.footer-col a:hover{color:var(--white);text-decoration:underline}.footer-bottom{max-width:var(--max);color:#ffffff8c;border-top:1px solid #ffffff1f;flex-wrap:wrap;justify-content:space-between;gap:.75rem 1.5rem;margin:0 auto;padding:1.25rem 0;font-size:.85rem;display:flex}.footer-bottom a{color:#ffffffb3;text-decoration:none}.footer-bottom a:hover{color:var(--white)}html.js.motion-ready:not(.reduced-motion) .reveal{opacity:0;transition:opacity .65s var(--ease), transform .65s var(--ease);transform:translateY(1.5rem)}html.js.motion-ready:not(.reduced-motion) .reveal.is-visible{opacity:1;transform:translateY(0)}html.js.motion-ready:not(.reduced-motion) .hero-content h1{opacity:0;transition:opacity .7s var(--ease) 50ms, transform .7s var(--ease) 50ms;transform:translateY(1.25rem)}html.js.motion-ready:not(.reduced-motion) .hero.is-visible .hero-content h1{opacity:1;transform:translateY(0)}html.js.motion-ready:not(.reduced-motion) .hero-lead{opacity:0;transition:opacity .7s var(--ease) .25s, transform .7s var(--ease) .25s;transform:translateY(1rem)}html.js.motion-ready:not(.reduced-motion) .hero.is-visible .hero-lead{opacity:1;transform:translateY(0)}html.js.motion-ready:not(.reduced-motion) .hero-actions{opacity:0;transition:opacity .7s var(--ease) .35s, transform .7s var(--ease) .35s;transform:translateY(1rem)}html.js.motion-ready:not(.reduced-motion) .hero.is-visible .hero-actions{opacity:1;transform:translateY(0)}html.js.motion-ready:not(.reduced-motion) .hero-facts{opacity:0;transition:opacity .7s var(--ease) .45s, transform .7s var(--ease) .45s;transform:translateY(1rem)}html.js.motion-ready:not(.reduced-motion) .hero.is-visible .hero-facts{opacity:1;transform:translateY(0)}html.js.motion-ready:not(.reduced-motion) .service-grid .reveal:nth-child(2),html.js.motion-ready:not(.reduced-motion) .audience-grid .reveal:nth-child(2),html.js.motion-ready:not(.reduced-motion) .projects-side .reveal:nth-child(2){transition-delay:80ms}html.js.motion-ready:not(.reduced-motion) .service-grid .reveal:nth-child(3),html.js.motion-ready:not(.reduced-motion) .audience-grid .reveal:nth-child(3),html.js.motion-ready:not(.reduced-motion) .projects-side .reveal:nth-child(3){transition-delay:.16s}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.header-cta,.service-card,.audience-card,.project-feature,.project-secondary,.service-card-media img,.project-feature-media img,.project-secondary-media img,.faq-item summary:after,.link-arrow svg,.main-nav a:after,.site-header,.logo{transition:none}.hero-media img,.hero-media.is-live img{transition:none;transform:scale(1.06)}.hero-media figcaption a,.hero-media.is-live figcaption a{transition:none}}@media (width<=900px){.service-grid,.audience-grid{grid-template-columns:repeat(2,1fr)}.projects-showcase{grid-template-columns:1fr}.projects-showcase .project-feature-media{aspect-ratio:16/10;max-height:min(26rem,72vh)}.projects-side{grid-template-rows:auto}.about-grid,.contact-grid{grid-template-columns:1fr}.about-visual{order:-1;max-width:28rem}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}@media (width<=767px){:root{--header-h:4rem}html.js .nav-toggle{display:inline-flex}html:not(.js) .nav-toggle{display:none}html.js .main-nav{background:var(--white);box-shadow:var(--shadow-md);border-top:1px solid var(--line);padding:.75rem clamp(1rem,4vw,2.5rem) 1.25rem;display:none;position:absolute;top:100%;left:0;right:0}html.js .main-nav.is-open{display:block}html:not(.js) .header-inner{flex-wrap:wrap;row-gap:.5rem}html:not(.js) .main-nav{box-shadow:none;border-top:1px solid var(--line);flex:100%;order:3;padding:.25rem 0 .5rem;display:block;position:static}.main-nav ul{flex-direction:column;gap:0}.main-nav li{border-bottom:1px solid var(--line)}.main-nav a{padding:.85rem 0;display:block}.header-cta{display:none}.hero-grid{grid-template-columns:1fr}.hero-media{aspect-ratio:4/3;justify-self:start}.contact-strip{margin-top:-1.25rem}.contact-strip-inner{flex-direction:column;align-items:flex-start}.contact-strip-actions{flex-direction:column;align-items:stretch;width:100%}.service-grid,.audience-grid,.projects-showcase{grid-template-columns:1fr}.projects-side{grid-template-rows:auto}.project-secondary--offset{margin-top:0}.footer-grid{grid-template-columns:1fr}.footer-bottom{text-align:center;flex-direction:column}.contact-grid{grid-template-columns:1fr}.contact-form input,.contact-form select,.contact-form textarea{font-size:1rem}}@media (width<=320px){body{font-size:1rem}.hero-content h1{font-size:1.85rem}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .btn{width:100%}.contact-strip-actions .btn{text-align:center;width:100%}.contact-phone{font-size:1.15rem}.years-stat [data-years-counter]{font-size:2.25rem}}html.screenshot-mode .main-nav.is-open{display:none!important}@media (width<=767px){html.screenshot-mode .main-nav,html.screenshot-mode .nav-toggle{display:none!important}}.family-page{min-width:0}.family-page .page-hero{min-width:0;padding:clamp(2rem,5vw,3.5rem) clamp(1rem,4vw,2.5rem) 1.25rem}.family-page .page-feature.section-inner{box-sizing:border-box;padding-inline:clamp(1rem,4vw,2.5rem)}.family-page .page-hero .section-inner,.family-page .section-inner{min-width:0}.family-page h1,.family-page h2,.family-page .prose{overflow-wrap:anywhere;word-break:break-word;hyphens:auto}.family-page .page-hero h1{color:var(--marine);max-width:100%;margin:0 0 .75rem;font-size:clamp(1.6rem,4vw,2.75rem);line-height:1.2}.contact-copy .contact-line{margin:.35rem 0 0}.contact-copy .prose+.contact-line{margin-top:1.15rem}.family-page .page-hero+.section{padding-top:clamp(1.25rem,3vw,2.25rem)}.page-meta{color:var(--text-muted);margin:0}.page-feature{margin:0 auto 1rem}.page-feature img{object-fit:cover;border-radius:var(--radius-lg);width:100%;max-height:32rem}.breadcrumbs ol{flex-wrap:wrap;gap:.35rem .6rem;margin:0 0 1rem;padding:0;font-size:.95rem;list-style:none;display:flex}.breadcrumbs li:not(:last-child):after{content:"/";color:var(--text-muted);margin-left:.6rem}.prose{max-width:46rem}.prose h2,.prose h3,.prose h4{color:var(--marine)}.prose p,.prose li{color:var(--text)}.card-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.content-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.content-card a{color:inherit;text-decoration:none;display:block}.content-card-media{aspect-ratio:16/10;background:var(--ice);overflow:hidden}.content-card-media img{object-fit:cover;width:100%;height:100%}.content-card-body{padding:1.1rem 1.2rem 1.3rem}.content-card-body h2,.content-card-body h3{color:var(--marine);margin:0 0 .5rem;font-size:1.2rem}.content-card-body p{color:var(--text-muted);margin:0}.project-gallery{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.project-gallery-item{margin:0}.project-gallery-item img{object-fit:cover;border-radius:var(--radius);width:100%;height:100%}.pagination{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem 1rem;margin-top:2.5rem;display:flex}.pagination ol{flex-wrap:wrap;justify-content:center;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.pagination a,.pagination ol span[aria-current=page],.pagination>span{border-radius:var(--radius);justify-content:center;align-items:center;min-width:2.75rem;min-height:2.75rem;padding:.35rem .65rem;text-decoration:none;display:inline-flex}.pagination>span{color:var(--text-muted)}.pagination [aria-current=page]{color:var(--marine);background:var(--ice);font-weight:700}.geo-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem 1.75rem;margin:0;padding:0;list-style:none;display:grid}.geo-list a{line-height:1.35;display:inline-block}.policy-stub{border:1px dashed var(--line);background:var(--ice);padding:1.5rem}@media (width<=900px){.card-grid,.project-gallery,.geo-list{grid-template-columns:1fr 1fr}}@media (width<=767px){.card-grid,.project-gallery,.geo-list{grid-template-columns:1fr}.geo-list{gap:.85rem}}@media (width<=320px){.family-page .page-hero h1{font-size:1.55rem}}html.screenshot-mode .skip-link,html.screenshot-mode .skip-link:focus,html.screenshot-mode .skip-link:focus-visible{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;top:0!important;left:0!important;overflow:hidden!important}
