*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;border-width:0;border-style:solid;border-color:transparent;font:inherit;vertical-align:baseline;transition:none}html{font-size:100%;background-color:var(--color-background);line-height:var(--line-height);scroll-behavior:smooth;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;height:100%;overflow-y:scroll;overflow-wrap:break-word;scroll-padding-top:var(--header-height,4rem)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}body{color:var(--color-text);background-color:var(--color-background);font-family:var(--font-family-base);font-size:var(--font-size-base);min-height:100%;display:flex;flex-direction:column}img,svg,video,canvas,audio,iframe,embed,object{display:block;max-width:100%;height:auto}img:not([height]),video:not([height]){aspect-ratio:16/9}ul,ol{list-style:none}[hidden]{display:none!important}::selection{background-color:var(--color-selection-background);color:var(--color-selection-text)}*:focus{outline:none}section,article{margin-block-end:var(--space-sm)}[id]{scroll-margin-top:calc(var(--header-height) + var(--space-md))}:root{--radius-sm:0.1875rem;--radius-md:0.25rem;--radius-lg:0.5rem;--border-width-thin:0.0625rem;--border-width-medium:0.125rem;--font-family-base:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial,
        "Helvetica Neue", sans-serif;--font-size-base:clamp(0.95rem, 0.9rem + 0.25vw, 1rem);--font-size-sm:0.875rem;--font-size-lg:1.25rem;--font-size-xl:clamp(1.5rem, 1.25rem + 1vw, 1.75rem);--font-size-2xl:clamp(1.75rem, 1.5rem + 1.25vw, 2.25rem);--line-height:1.6;--line-height-tight:1.2;--space-unit:1rem;--space-xs:calc(0.25 * var(--space-unit));--space-sm:calc(0.5 * var(--space-unit));--space-md:0.6rem;--space-lg:1.2rem;--space-xl:2.5rem;--container-width:min(72rem, 90vw);--container-padding:var(--space-sm);--header-height:auto;--content-max-width:65ch;--transition-duration-fast:150ms;--transition-duration-normal:250ms;--transition-timing-function:ease;--transition-fast:var(--transition-duration-fast)
        var(--transition-timing-function);--transition-normal:var(--transition-duration-normal)
        var(--transition-timing-function);--z-index-back:-1;--z-index-base:0;--z-index-content:1;--z-index-sticky:1020;--z-index-skip-link:9000}@media(min-width:576px){:root{--space-md:0.75rem;--space-lg:1.5rem;--space-xl:3rem;--container-padding:var(--space-md)}}@media(min-width:768px){:root{--font-size-base:clamp(1rem, 0.95rem + 0.25vw, 1.125rem);--space-md:var(--space-unit);--container-padding:var(--space-md);--header-height:3.5rem}}@media(min-width:992px){:root{--space-lg:calc(2 * var(--space-unit));--space-xl:calc(4 * var(--space-unit));--header-height:4rem}}h1,h2,h3,h4,h5,h6{margin-block-start:var(--space-lg);margin-block-end:var(--space-sm);line-height:var(--line-height-tight);font-weight:700;color:var(--color-heading);text-wrap:balance}h1{font-size:var(--font-size-2xl);margin-block-start:0}h2{font-size:var(--font-size-xl)}h3{font-size:clamp(1.25rem,1.15rem + .5vw,1.5rem);font-weight:600}h4{font-size:clamp(1.125rem,1.05rem + .25vw,1.25rem);font-weight:600}h5{font-size:1.1rem;font-weight:600}h6{font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}p{margin-block-end:var(--space-md);max-width:var(--content-max-width);text-wrap:pretty}h1+p,h2+p,h3+p,h4+p,h5+p,h6+p{margin-block-start:var(--space-sm)}a{color:var(--color-link);text-decoration:none;border-block-end:var(--border-width-medium)solid transparent;border-radius:var(--radius-sm);transition:color var(--transition-fast)}a:hover,a:focus-visible{color:var(--color-link-hover);border-color:var(--color-link-hover)}strong,b{font-weight:600}em,i{font-style:italic}small{font-size:var(--font-size-sm)}sub,sup{font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}ul,ol{margin-block:var(--space-md)var(--space-lg);padding-inline-start:var(--space-lg);list-style-position:outside}ul{list-style:disc}ol{list-style:decimal}li{margin-block-end:var(--space-sm);padding-inline-start:var(--space-xs)}ul ul,ol ul{list-style-type:circle}ul ul ul,ol ul ul{list-style-type:square}ol ol{list-style-type:lower-alpha}ol ol ol{list-style-type:lower-roman}ul ul,ol ul,ol ol,ul ol{margin-inline-start:var(--space-lg);margin-block-start:var(--space-xs);margin-block-end:var(--space-sm);padding-inline-start:0}li::marker{color:var(--color-marker)}dl{margin-block:var(--space-md)var(--space-lg)}dt{font-weight:600;margin-block-start:var(--space-sm)}dd{margin-inline-start:var(--space-lg);margin-block-end:var(--space-sm)}hr{border:0;height:var(--border-width-thin);background-color:var(--color-border-subtle);margin:var(--space-lg)0}blockquote{border-inline-start:.25rem solid var(--color-border);padding:var(--space-md);margin:var(--space-md)0 var(--space-lg);font-style:italic;color:var(--color-text-light);background-color:var(--color-background-alt);border-radius:0 var(--radius-sm)var(--radius-sm)0}blockquote p:last-child{margin-block-end:0}blockquote footer{margin-block-start:var(--space-sm);font-style:normal;font-size:var(--font-size-sm);color:var(--color-text-muted)}blockquote footer::before{content:"— "}figure{margin:var(--space-lg)0}figure img{border-radius:var(--radius-md)}figcaption{margin-block-start:var(--space-sm);font-size:.9rem;color:var(--color-text-muted);text-align:center}@layer theme{:root{--color-light-bg-lch:lch(99% 0 0);--color-light-bg-alt-lch:lch(96% 1 240);--color-light-bg-hover-lch:lch(93% 2 240);--color-light-text-lch:lch(25% 4 240);--color-light-heading-lch:lch(15% 2 240);--color-light-text-light-lch:lch(
            35% 4 240
        );--color-light-text-muted-lch:lch(
            41% 3 240
        );--color-light-border-lch:lch(90% 1.5 240);--color-light-border-subtle-lch:lch(
            94% 1 240
        );--color-light-accent-lch:lch(
            35.5% 8 245
        );--color-light-link-lch:lch(45% 30 260);--color-light-footer-bg-lch:lch(
            95% 1.5 80
        );--color-light-focus-ring-lch:lch(
            65% 50 265
        );--color-dark-bg-lch:lch(18% 3 240);--color-dark-bg-alt-lch:lch(25% 4 240);--color-dark-bg-hover-lch:lch(32% 5 240);--color-dark-text-lch:lch(90% 2 240);--color-dark-heading-lch:lch(98% 0 0);--color-dark-text-light-lch:lch(86% 2 240);--color-dark-text-muted-lch:lch(80% 3 240);--color-dark-border-lch:lch(38% 5 240);--color-dark-border-subtle-lch:lch(30% 4 240);--color-dark-accent-lch:lch(70% 3 240);--color-dark-link-lch:lch(80% 25 260);--color-dark-footer-bg-lch:lch(
            35.7% 0.61 105.16
        );--color-dark-focus-ring-lch:lch(78% 50 265);--color-light-bg-srgb:#fefefe;--color-light-bg-alt-srgb:#f5f6f7;--color-light-bg-hover-srgb:#eceff1;--color-light-text-srgb:#404447;--color-light-heading-srgb:#26282a;--color-light-text-light-srgb:#5b636a;--color-light-text-muted-srgb:#666d72;--color-light-border-srgb:#e5e7e9;--color-light-border-subtle-srgb:#f0f2f4;--color-light-accent-srgb:#586381;--color-light-link-srgb:#4b6c9d;--color-light-footer-bg-srgb:#f2f1ef;--color-light-focus-ring-srgb:#9084f3;--color-dark-bg-srgb:#2d3033;--color-dark-bg-alt-srgb:#3c4044;--color-dark-bg-hover-srgb:#32373d;--color-dark-text-srgb:#e8e9ea;--color-dark-heading-srgb:#fefefe;--color-dark-text-light-srgb:#e3e5e6;--color-dark-text-muted-srgb:#dadde0;--color-dark-border-srgb:#585e63;--color-dark-border-subtle-srgb:#464b50;--color-dark-accent-srgb:#b3b7bb;--color-dark-link-srgb:#b9c7e8;--color-dark-footer-bg-srgb:#545453;--color-dark-focus-ring-srgb:#a49bf7;--color-black:lch(0% 0 0);--color-white:lch(100% 0 0);--color-white-srgb:#ffffff;--color-background:light-dark(
            var(--color-light-bg-lch),
            var(--color-dark-bg-lch)
        );--color-text:light-dark(
            var(--color-light-text-lch),
            var(--color-dark-text-lch)
        );--color-border:light-dark(
            var(--color-light-border-lch),
            var(--color-dark-border-lch)
        );--color-accent:light-dark(
            var(--color-light-accent-lch),
            var(--color-dark-accent-lch)
        );--color-link:light-dark(
            var(--color-light-link-lch),
            var(--color-dark-link-lch)
        );--color-focus-ring:light-dark(
            var(--color-light-focus-ring-lch),
            var(--color-dark-focus-ring-lch)
        );--color-marker:light-dark(
            var(--color-light-text-muted-lch),
            var(--color-dark-text-muted-lch)
        );--color-background-alt:light-dark(
            var(--color-light-bg-alt-lch),
            var(--color-dark-bg-alt-lch)
        );--color-background-hover:light-dark(
            var(--color-light-bg-hover-lch),
            var(--color-dark-bg-hover-lch)
        );--color-text-light:light-dark(
            var(--color-light-text-light-lch),
            var(--color-dark-text-light-lch)
        );--color-text-muted:light-dark(
            var(--color-light-text-muted-lch),
            var(--color-dark-text-muted-lch)
        );--color-heading:light-dark(
            var(--color-light-heading-lch),
            var(--color-dark-heading-lch)
        );--color-border-subtle:light-dark(
            var(--color-light-border-subtle-lch),
            var(--color-dark-border-subtle-lch)
        );--color-text-on-accent:light-dark(
            var(--color-white),
            var(--color-dark-bg-lch)
        );--color-link-hover:light-dark(
            color-mix(
                in lch,
                var(--color-light-link-lch) 85%,
                var(--color-black)
            ),
            color-mix(
                in lch,
                var(--color-dark-link-lch) 85%,
                var(--color-white)
            )
        );--color-selection-background:light-dark(
            color-mix(
                in lch,
                var(--color-light-focus-ring-lch) 20%,
                transparent
            ),
            color-mix(in lch, var(--color-dark-focus-ring-lch) 25%, transparent)
        );--color-selection-text:var(--color-text);--color-button-primary-hover-background:light-dark(
            color-mix(
                in lch,
                var(--color-light-accent-lch) 85%,
                var(--color-black)
            ),
            color-mix(
                in lch,
                var(--color-dark-accent-lch) 85%,
                var(--color-black)
            )
        );--color-footer-background:light-dark(
            var(--color-light-footer-bg-lch),
            var(--color-dark-footer-bg-lch)
        );--shadow-light:light-dark(
            0 1px 3px rgb(0 0 0 / 6%),
            0 1px 2px rgb(0 0 0 / 10%),
            0 2px 5px rgb(0 0 0 / 30%),
            0 1px 2px rgb(0 0 0 / 20%)
        );--shadow-focus:0 0 0 3px var(--color-focus-ring);@supports not (color:lch(0% 0 0)){--color-background: light-dark( var(--color-light-bg-srgb),var(--color-dark-bg-srgb) ); --color-text: light-dark( var(--color-light-text-srgb),var(--color-dark-text-srgb) ); --color-border: light-dark( var(--color-light-border-srgb),var(--color-dark-border-srgb) ); --color-accent: light-dark( var(--color-light-accent-srgb),var(--color-dark-accent-srgb) ); --color-link: light-dark( var(--color-light-link-srgb),var(--color-dark-link-srgb) ); --color-focus-ring: light-dark( var(--color-light-focus-ring-srgb),var(--color-dark-focus-ring-srgb) ); --color-marker: light-dark( var(--color-light-text-muted-srgb),var(--color-dark-text-muted-srgb) ); --color-background-alt: light-dark( var(--color-light-bg-alt-srgb),var(--color-dark-bg-alt-srgb) ); --color-background-hover: light-dark( var(--color-light-bg-hover-srgb),var(--color-dark-bg-hover-srgb) ); --color-text-light: light-dark( var(--color-light-text-light-srgb),var(--color-dark-text-light-srgb) ); --color-text-muted: light-dark( var(--color-light-text-muted-srgb),var(--color-dark-text-muted-srgb) ); --color-heading: light-dark( var(--color-light-heading-srgb),var(--color-dark-heading-srgb) ); --color-border-subtle: light-dark( var(--color-light-border-subtle-srgb),var(--color-dark-border-subtle-srgb) ); --color-text-on-accent: light-dark( var(--color-white-srgb),var(--color-dark-bg-srgb) ); --color-link-hover: light-dark( #26282a,#f5f6f7 ); --color-selection-background: light-dark( rgba(144,132,243,0.2),rgba(164,155,247,0.25) ); --color-selection-text: var(--color-text); --color-footer-background: light-dark( var(--color-light-footer-bg-srgb),var(--color-dark-footer-bg-srgb) ); --color-button-primary-hover-background: light-dark( #454e62,#9ca6ac ); --shadow-light: light-dark( 0 1px 3px rgb(0 0 0 / 6%),0 1px 2px rgb(0 0 0 / 10%),0 2px 5px rgb(0 0 0 / 30%),0 1px 2px rgb(0 0 0 / 20%) );}color-scheme:light dark}}.container{width:100%;max-width:var(--container-width);margin-inline:auto;padding-inline:var(--container-padding)}.site-header{padding-block:0;display:flex;position:relative;z-index:var(--z-index-sticky);min-block-size:0}@media(min-width:768px){.site-header{align-items:stretch;position:sticky;inset-block-start:0;min-block-size:var(--header-height)}}.site-header>.container{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);padding-block:var(--space-sm);border-radius:var(--radius-md);margin-block-start:var(--space-sm);width:100%;background-color:rgb(from var(--color-footer-background) r g b/.9);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}@media(min-width:768px){.site-header>.container{flex-direction:row;gap:var(--space-md);padding-block:var(--space-xs)}}.site-title{font-weight:500;font-size:var(--font-size-sm);margin-block:0;white-space:nowrap;color:var(--color-heading);text-decoration:none;position:relative}.site-title a{color:inherit;text-decoration:none;border-block-end:none}@media(min-width:576px){.site-title{font-size:inherit}}.nav{display:flex}@media(min-width:768px){.nav{flex-grow:1;justify-content:center}}.main-navigation-list{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;justify-content:center;gap:var(--space-xs);list-style:none;margin:0;padding:0}@media(min-width:768px){.main-navigation-list{gap:var(--space-md)}}.nav li{margin:0;padding:0}.nav a{display:block;padding-block:var(--space-xs);padding-inline:var(--space-xs);color:var(--color-text-light);font-weight:500;font-size:var(--font-size-sm);white-space:nowrap;border-radius:var(--radius-sm);text-decoration:none;border-block-end:none;transition:color var(--transition-fast),background-color var(--transition-fast)}@media(min-width:768px){.nav a{padding-inline:var(--space-sm);font-size:inherit}}.nav a:hover,.nav a:focus-visible{color:var(--color-text)}.nav a.active{color:var(--color-text)}.site-footer{margin-block-start:auto;padding-block:var(--space-lg);color:var(--color-text-light);font-size:var(--font-size-sm);background-color:var(--color-footer-background);width:100%;contain:layout style}.site-footer>.container{display:grid;grid-template-columns:1fr;gap:var(--space-md);align-items:center;text-align:center;padding-block-start:var(--space-md)}.footer-section{width:100%}.footer-section h2{font-size:1rem;font-weight:600;color:var(--color-heading);margin-block-start:0;margin-block-end:var(--space-sm);text-transform:uppercase;letter-spacing:.05em}.footer-section p,.footer-section ul,.footer-section dl{margin:0;padding:0;list-style:none;max-width:none}.footer-section li,.footer-section dd{margin-block-end:var(--space-xs)}.footer-section dt{font-weight:500;color:var(--color-text-light);margin-block-start:var(--space-sm)}.footer-section dd{margin-inline-start:0}.footer-section a{color:var(--color-text-light);border-block-end:none}.footer-section a:hover,.footer-section a:focus-visible{color:var(--color-text);text-decoration:underline}.footer-contact address+address{margin-block-start:var(--space-sm)}.page-header{margin-block-end:var(--space-lg)}#main-content{padding-block-start:var(--space-md);padding-block-end:0;flex-grow:1;display:flow-root}#main-content>:last-child:not( :where( figure,pre,table,.card-grid,.hero-image ) ){margin-block-end:var(--space-lg)}:where(.content-body,.page-content)>:where(p,ul,ol,dl,h1,h2,h3,h4,h5,h6,blockquote,hr){max-width:var(--content-max-width);margin-inline:auto}:where(.content-body,.page-content)>:where( figure,pre,table,.card-grid,.hero-image,.single-column-gallery,.further-inspiration ){max-width:none;width:100%;margin-inline:0}.card-grid{display:grid;gap:var(--space-md);margin-block:var(--space-lg)}.card-grid{grid-template-columns:repeat(auto-fit,minmax(min(17.5rem,100%),1fr))}.grid-cols-3{grid-template-columns:1fr}@media(min-width:768px){.site-footer>.container{grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr));align-items:start;text-align:start;padding-block-start:var(--space-lg)}.footer-section{width:auto}.grid-cols-3{grid-template-columns:repeat(2,1fr)}.card-grid{grid-template-columns:repeat(auto-fit,minmax(min(18.75rem,100%),1fr))}}@media(min-width:992px){#main-content{padding-block-start:var(--space-lg)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}}.not-found-page{text-align:center;padding:var(--space-xl)var(--container-padding)}.not-found-page h1{font-size:clamp(3rem,10vw,6rem);color:var(--color-text-muted);margin-block-end:var(--space-sm)}.not-found-page p{font-size:var(--font-size-lg);color:var(--color-text-light);margin-block-end:var(--space-lg)}.not-found-page a{font-size:var(--font-size-lg)}.content-grid-2-col{display:grid;grid-template-columns:1fr;gap:var(--space-md);align-items:center;margin-block:var(--space-xl)}.content-grid-2-col__image img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius-md);box-shadow:var(--shadow-light)}@media(min-width:768px){.content-grid-2-col{grid-template-columns:repeat(2,1fr);gap:var(--space-lg)}}.further-inspiration{text-align:center;padding:var(--space-md)}.further-inspiration h2{margin-block-end:var(--space-md)}.single-column-gallery{display:grid;grid-template-columns:1fr;gap:var( --space-lg );margin-block:var(--space-xl)}.single-column-gallery .gallery-item{margin:0}.single-column-gallery .gallery-image{max-width:100%;width:auto;height:auto;display:block;margin-inline:auto;border-radius:var(--radius-md);aspect-ratio:auto}.card-content--compact{display:flex;align-items:center;padding-block:var(--space-sm)}.text-center{text-align:center}.page-introduction{font-size:var(--font-size-lg);color:var(--color-text-light)}.btn{display:inline-block;font-weight:500;text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;user-select:none;border:var(--border-width-thin)solid transparent;padding:var(--space-xs)var(--space-md);font-size:.95rem;line-height:1.5;border-radius:var(--radius-sm);text-decoration:none;transition:color var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast)}.btn:hover,.btn:focus-visible{text-decoration:none;border-color:var(--color-border);background-color:var(--color-background-hover)}.btn-primary{color:var(--color-text-on-accent);background-color:var(--color-accent);border-color:var(--color-accent)}.btn-primary:hover,.btn-primary:focus-visible{background-color:var(--color-button-primary-hover-background);border-color:var(--color-button-primary-hover-background);color:var(--color-text-on-accent)}@media(min-width:576px){.btn{padding:var(--space-sm)var(--space-lg);font-size:1rem}}.project-card{display:flex;flex-direction:column;height:100%;background-color:var(--color-background-alt);border-radius:var(--radius-md);overflow:hidden;position:relative;border:var(--border-width-thin)solid var(--color-border-subtle);contain:content}.project-card:hover,.project-card:has(:focus-visible){background-color:var(--color-background-hover);border-color:var(--color-border)}.card-title{color:var(--color-heading);font-size:1.125rem;font-weight:600;line-height:1.3;margin:0}.card-content{flex-grow:1;padding:var(--space-md)}.card-content>*:last-child{margin-block-end:0}.card-image-container{position:relative;overflow:hidden;background-color:var(--color-border-subtle);aspect-ratio:16/9}.card-image-container picture{display:block;width:100%;height:100%}.card-image-container img{display:block;width:100%;height:100%;object-fit:cover;transition:filter var(--transition-fast)}.project-card:hover .card-image-container img,.project-card:has(:focus-visible) .card-image-container img{filter:brightness(1.05)}.card-image-container.is-missing-image{display:flex;align-items:center;justify-content:center;color:var(--color-text-muted)}a:has(>.project-card):focus-visible{border-radius:var(--radius-md)}.breadcrumbs{margin-block-end:var(--space-lg)}.breadcrumbs ol{display:flex;flex-wrap:wrap;list-style:none;margin:0;padding:0;font-size:var(--font-size-sm);gap:var(--space-xs)var(--space-sm)}.breadcrumbs li{display:flex;align-items:center;margin:0;padding:0;color:var(--color-text-muted)}.breadcrumbs li:not(:last-child)::after{content:"/";margin-inline-start:var(--space-sm);color:inherit;user-select:none}.breadcrumbs a{color:var(--color-text-muted);border-block-end:none}.breadcrumbs a:hover,.breadcrumbs a:focus-visible{color:var(--color-text);text-decoration:underline}.breadcrumbs li[aria-current=page]{color:var(--color-text);font-weight:500}.hero-image{position:relative;width:100%;padding:0;border-radius:var(--radius-lg);overflow:hidden;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--color-white,#fff);background-color:var(--color-light-accent-lch,var(--color-light-accent-srgb));min-height:12.5rem;contain:layout style paint}@media(prefers-color-scheme:dark){.hero-image{background-color:var(--color-dark-accent-lch,var(--color-dark-accent-srgb))}}.hero-background-image{position:absolute;inset:0;width:100%;height:100%;z-index:var(--z-index-back)}.hero-background-image img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-overlay{position:absolute;inset:0;z-index:var(--z-index-content);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-sm);background:rgb(0 0 0/.7)}.hero-content{max-width:var(--content-max-width)}.hero-title{font-size:clamp(1.8rem,5vw,2.5rem);margin-block:0 var(--space-md);color:var(--color-white,#fff);text-shadow:0 2px 4px rgb(0 0 0/.5);font-weight:700;text-wrap:balance}.hero-subtitle{font-size:clamp(1.3rem,3vw,2rem);margin-block:0 var(--space-lg);color:rgb(255 255 255/.9);font-weight:300;text-shadow:0 1px 2px rgb(0 0 0/.5);max-width:60ch;margin-inline:auto;text-wrap:pretty}.hero-content>p{font-size:1.1rem;max-width:60ch;margin:var(--space-md)auto;color:rgb(255 255 255/.9)}.hero-content>.btn{margin-block-start:var(--space-md)}@media(min-width:576px){.hero-image{min-height:24rem}.hero-overlay{padding:var(--space-md)}}@media(min-width:768px){.hero-image{min-height:40rem}.hero-overlay{padding:var(--space-lg)}.hero-title{font-size:clamp(2rem,5vw,3rem)}.hero-subtitle{font-size:clamp(1.1rem,3vw,1.5rem)}}.brands-page .content-body{margin-block-end:var(--space-xl);max-width:var(--content-max-width);margin-inline:auto}.brands-grid-container{margin-block:var(--space-lg)}.brands-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr));gap:var(--space-lg)var(--space-sm);align-items:center;justify-items:center}.brand-item{padding:var(--space-sm);border-radius:var(--radius-sm);transition:background-color var(--transition-fast)}.brand-item:hover,.brand-item:has(:focus-visible){background-color:var(--color-background-hover)}.brand-item img{display:block;max-width:100%;max-height:60px;width:auto;height:auto;object-fit:contain;aspect-ratio:3/2}@media(prefers-color-scheme:dark){.brand-item img{filter:invert(1)grayscale(1)brightness(1.5)}}.feature-card{position:relative;overflow:hidden;border-radius:var(--radius-md);aspect-ratio:1/1;contain:layout style paint}.feature-card__link{display:block;width:100%;height:100%;text-decoration:none;color:inherit;border-radius:inherit}.feature-card__link:focus-visible{border-radius:var(--radius-md)}.feature-card__image{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:filter var(--transition-fast);position:absolute;inset:0;z-index:var(--z-index-base);border-radius:inherit}.feature-card__image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;border-radius:inherit}.feature-card:hover .feature-card__image,.feature-card:has(:focus-visible) .feature-card__image{filter:brightness(.9)}.feature-card__overlay{position:absolute;inset:0;z-index:var(--z-index-content);display:flex;align-items:center;justify-content:center;padding:var(--space-md);text-align:center;transition:background-color var(--transition-fast);border-radius:inherit;border:var(--border-width-thin)solid var(--color-border-subtle)}.feature-card:hover .feature-card__overlay,.feature-card:has(:focus-visible) .feature-card__overlay{background-color:rgb(0 0 0/.7);border-color:var(--color-border)}.feature-card:has(.feature-card__link:focus-visible){box-shadow:var(--shadow-focus);border-radius:var(--radius-md)}.feature-card__title{color:var(--color-white,#fff);font-size:clamp(1.5rem,7vw,1.875rem);font-weight:800;margin:0;text-shadow:0 1px 5px rgb(0 0 0/.5);text-transform:uppercase;letter-spacing:.1em}@media(min-width:576px){.feature-card{aspect-ratio:3/2}.feature-card__title{font-size:clamp(1.5rem,4vw,2rem)}}@media(min-width:768px){.feature-card{aspect-ratio:4/3}}.skip-link{position:absolute;top:0;left:.5rem;transform:translateY(-100%);z-index:var(--z-index-skip-link);background:var(--color-heading);color:var(--color-background);padding:var(--space-sm)var(--space-md);border-radius:0 0 var(--radius-sm)var(--radius-sm);text-decoration:none;border-bottom:none;transition:transform var(--transition-normal)}.skip-link:focus-visible{transform:translateY(0%);outline:none;border-radius:0 0 var(--radius-sm)var(--radius-sm)}.skip-link:hover,.skip-link:focus-visible{color:var(--color-background);border-color:transparent}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border-width:0!important}:where( a,button,input:not([type=hidden]),select,textarea,summary,[role=button],[tabindex="0"] ):focus-visible{outline:none;box-shadow:var(--shadow-focus);border-radius:var(--radius-sm)}a:focus-visible{border-color:transparent!important}@media(prefers-contrast:more){:where(a,[role=button],[tabindex="0"]):focus-visible{outline:.1875rem solid transparent!important;box-shadow:0 0 0 .1875rem CanvasText!important;outline-offset:.0625rem!important;border-radius:0!important}a{text-decoration:underline!important;text-decoration-thickness:var(--border-width-medium)!important;border-block-end:none!important;color:CanvasText!important}:where(img,svg,video,.btn,.project-card,.site-header,.site-footer){border:var(--border-width-medium)solid CanvasText!important}:where(.project-card,blockquote,.btn,.site-header,.site-footer){background-color:Canvas!important;color:CanvasText!important}.btn{color:CanvasText!important}.card-image-container{background-color:initial!important}}@media print{@page{margin:1.5cm;size:A4}html{font-size:11pt!important}body{background-color:#fff!important;color:#000!important;line-height:1.4!important;font-family:-apple-system,BlinkMacSystemFont,segoe ui,Roboto,Arial,sans-serif!important;transition:none!important;animation:none!important}*{background:0 0!important;box-shadow:none!important;text-shadow:none!important;border-color:#ccc!important;print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important;color-scheme:light!important}.container,#main-content{max-width:100%!important;width:auto!important;padding:0!important;margin:0!important}.site-header,.site-footer,.nav,.breadcrumbs,.skip-link,aside,iframe,video:not([poster]),audio{display:none!important}a{color:#000!important;text-decoration:underline!important;border:none!important}a[href^="http://"]::after,a[href^="https://"]::after{content:" [" attr(href)"]";font-size:.8em;font-weight:400;word-break:break-all;color:#555}a[href^="#"]::after,a[href^="/"]::after,a[href^="mailto:"]::after,a[href^="javascript:"]::after{content:""}h1,h2,h3,h4,h5,h6{page-break-after:avoid!important;page-break-inside:avoid!important;color:#000!important;font-weight:700!important}h1{font-size:20pt!important}h2{font-size:16pt!important}h3{font-size:14pt!important}p,ul,ol,dl,li,blockquote,figure,img,svg{page-break-inside:avoid!important}*:focus,*:hover{outline:none!important;filter:none!important;box-shadow:none!important}}