@font-face{font-family:'DM Sans';src:url('/assets/dm-sans.woff2') format('woff2');font-style:normal;font-weight:100 1000;font-display:swap}
@font-face{font-family:'Space Grotesk';src:url('/assets/space-grotesk.woff2') format('woff2');font-style:normal;font-weight:300 700;font-display:swap}
:root{color-scheme:dark;--bg:#0b0c0f;--ink:#f7f6f1;--gold:#d8b153;--panel:#171a1e;--muted:#aaaeb5;--line:#303438;--on:#17130b;--pad:72px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--bg);color:var(--ink);font:400 15px/1.6 'DM Sans',Arial,sans-serif}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3,h4{font-family:'Space Grotesk',Arial,sans-serif;font-weight:500}h1{font-size:77px;line-height:1.03;letter-spacing:-.045em}h2{font-size:54px;line-height:1.04;letter-spacing:-.025em}h3{font-size:29px;line-height:1.2;letter-spacing:-.02em}p{color:var(--muted)}a{color:inherit;text-decoration:none}a,button,summary{touch-action:manipulation}button,input,select,textarea{font:inherit}button,summary{cursor:pointer}button{color:inherit}img{display:block;max-width:100%;height:auto}button,a,input,select,textarea,summary{outline-offset:5px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--gold)}[hidden]{display:none!important}a:hover{color:var(--gold)}a.primary:hover{color:var(--on);background:#e7c369}.shell{max-width:1600px;margin:auto}.pad{padding-left:var(--pad);padding-right:var(--pad)}.section{padding-top:65px;padding-bottom:65px}.section-stack{display:flex;flex-direction:column;align-items:flex-start;gap:32px}.panel{background:var(--panel)}.eyebrow{font-size:10px;line-height:16px;letter-spacing:.02em;text-transform:uppercase;font-weight:500;color:var(--gold)}.muted{color:var(--muted)}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:15px 23px;min-height:52px;border:1px solid var(--line);border-radius:3px;font-size:14px;font-weight:500;line-height:20px;background:transparent;color:var(--ink)}.primary{background:var(--gold);border-color:var(--gold);color:var(--on)}.secondary:hover{background:var(--panel);color:var(--ink)}.actions{display:flex;gap:14px;flex-wrap:wrap}.text-link{font-size:13px;font-weight:500;line-height:21px;display:inline-block}.skip{position:absolute;z-index:1000;top:-100px;left:24px;background:var(--gold);color:var(--on);padding:12px 18px}.skip:focus{top:12px}.site-header{height:104px;display:flex;align-items:center;justify-content:space-between;gap:24px}.wordmark{display:flex;flex-direction:column;flex:none}.wordmark strong{font:500 28px/34px 'Space Grotesk',Arial,sans-serif}.wordmark small{font-size:8px;line-height:13px;color:var(--muted);font-weight:500}.desktop-nav{display:flex;align-items:center;gap:35px;font-size:13px;font-weight:500}.desktop-nav>a,.desktop-nav>details>summary{min-height:44px;display:flex;align-items:center}.desktop-nav details{position:relative}.desktop-nav summary{list-style:none}.desktop-nav summary::-webkit-details-marker{display:none}.dropdown{position:absolute;z-index:30;top:44px;left:-24px;padding:18px 24px;width:295px;border:1px solid var(--line);background:var(--panel);box-shadow:0 18px 40px #0006}.dropdown a{display:block;padding:9px 0;border-bottom:1px solid var(--line);font-size:13px}.dropdown a:last-child{border:0}.language{display:inline-flex;gap:8px;font-size:11px;color:var(--muted)}.language [aria-current]{color:var(--gold)}.menu-toggle{display:none;background:transparent;border:0;padding:12px 0;font-size:13px;line-height:21px}.mobile-menu{border:0;padding:24px;background:var(--bg);color:var(--ink);width:min(100%,460px);max-width:100%;max-height:100dvh;min-height:100dvh;position:fixed;inset:0 0 0 auto;margin:0;z-index:100;overflow:auto}.mobile-menu::backdrop{background:#000a}.menu-head{display:flex;justify-content:space-between;align-items:center;gap:15px}.menu-head strong{font:500 23px/28px 'Space Grotesk'}.menu-head button{background:transparent;border:0;padding:10px 0;font-size:12px}.mobile-menu nav{padding-top:25px}.mobile-menu nav>a,.mobile-menu nav>details{display:block;padding:17px 0;border-bottom:1px solid var(--line);font-size:17px}.mobile-menu details summary{list-style:none}.mobile-menu details a{display:block;font-size:14px;color:var(--muted);padding:10px 0 0 16px}.mobile-menu .primary{width:100%;margin-top:25px}.mobile-menu .language{margin-top:25px}.menu-company{font-size:10px;margin-top:28px}.home-hero{height:790px;position:relative}.home-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.home-hero-copy{position:relative;padding:95px var(--pad) 80px;display:flex;flex-direction:column;align-items:flex-start;gap:25px;max-width:744px}.home-hero h1{font-size:86px;line-height:89px;letter-spacing:-3.87px}.home-hero .eyebrow{font-size:11px;line-height:18px}.hero-description{font-size:17px;line-height:27px;max-width:430px}.hero-mobile-description{display:none}.image-note{font-size:9px;line-height:14px;color:var(--muted)}.hero-mobile-note{display:none}.product-rail{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:55px;padding-top:25px;padding-bottom:25px;background:var(--panel);font-size:13px;line-height:21px;font-weight:500}.home-products{padding-top:86px;padding-bottom:86px;display:flex;flex-direction:column;align-items:flex-start;gap:40px}.home-products h2{font-size:58px;line-height:60px}.home-products>.intro{max-width:640px;line-height:24px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 22px;width:100%}.product-card{background:var(--panel);padding:30px 28px;border-radius:2px;min-height:280px;display:flex;flex-direction:column;align-items:flex-start;gap:19px;min-width:0}.product-card .eyebrow{font-size:11px;line-height:18px}.product-card h3{font-size:28px;line-height:34px}.product-card p{font-size:14px;line-height:22px}.product-card .text-link{font-size:12px;line-height:19px}.product-card>a:hover h3{color:var(--gold)}.softsystem-band{padding-top:64px;padding-bottom:64px;display:grid;grid-template-columns:1.16fr 1fr;gap:65px;background:var(--panel)}.softsystem-band>div{display:flex;flex-direction:column;gap:22px;align-items:flex-start;min-width:0}.softsystem-band h2{font-size:49px;line-height:50px}.softsystem-logo{font:500 60px/62px 'Space Grotesk';letter-spacing:-1.5px}.softsystem-band p{font-size:15px;line-height:24px}.home-cta{padding-top:86px;padding-bottom:86px;display:flex;align-items:flex-start;flex-direction:column;gap:30px}.home-cta h2{font-size:70px;line-height:72px;letter-spacing:-3.15px}.home-cta p{font-size:15px;line-height:24px}.site-footer{padding-top:36px;padding-bottom:30px;background:var(--panel);display:flex;flex-direction:column;gap:22px}.footer-brand{font-size:13px;line-height:21px;font-weight:500}.footer-address{font-size:12px;line-height:19px;color:var(--muted)}.footer-links{display:flex;gap:14px;flex-wrap:wrap;font-size:10px;font-weight:500;line-height:16px;color:var(--muted)}.footer-more{color:var(--muted);font-size:10px}.footer-more summary{display:inline-block}.footer-more nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 25px;padding-top:20px;font-size:12px}.breadcrumb{padding-top:18px;padding-bottom:8px;display:flex;gap:8px;flex-wrap:wrap;font-size:11px;line-height:18px;color:var(--muted)}.page-intro{padding-top:42px;padding-bottom:55px;display:flex;flex-direction:column;gap:23px;align-items:flex-start}.page-intro p{max-width:750px;font-size:16px;line-height:26px}.product-intro{padding-top:50px;padding-bottom:70px;display:grid;grid-template-columns:600fr 630fr;gap:65px;align-items:start}.product-intro .copy{display:flex;flex-direction:column;align-items:flex-start;gap:24px;min-width:0}.product-intro h1{font-size:84px;line-height:87px;letter-spacing:-3.78px}.product-intro .copy>p:not(.eyebrow){font-size:16px;line-height:26px;max-width:560px}.product-intro figure{display:flex;flex-direction:column;gap:12px;min-width:0}.product-intro figure img{height:470px;width:100%;object-fit:cover}.features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 40px;width:100%}.feature{display:flex;flex-direction:column;gap:15px;min-width:0}.feature p{line-height:24px}.project-steps{display:flex;flex-direction:column;align-items:flex-start;gap:30px}.project-step{border-top:1px solid var(--line);padding-top:24px;display:grid;grid-template-columns:270px 1fr;gap:25px;width:100%}.project-step h3{font:500 18px/29px 'DM Sans'}.project-step p{font-size:15px;line-height:24px}.detail-section{border-top:1px solid var(--line)}.detail-section>.inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:65px;align-items:start}.detail-section .detail-copy{display:flex;flex-direction:column;gap:20px;min-width:0}.detail-section h2{font-size:42px;line-height:1.14}.detail-section p,.detail-section li{font-size:16px;line-height:1.7}.detail-section figure{margin-top:28px}.detail-section img{width:100%;max-height:460px;object-fit:contain;background:var(--panel)}.detail-section figcaption{font-size:10px;line-height:16px;margin-top:12px;color:var(--muted)}ul,ol{padding-left:22px;margin:0;color:var(--muted)}li+li{margin-top:9px}.faq-list{width:100%;border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line);padding:24px 0}.faq-list summary{display:flex;justify-content:space-between;gap:30px;font:500 22px/1.35 'Space Grotesk';list-style:none}.faq-list summary::after{content:'+';font:400 24px/1 'DM Sans';color:var(--gold);flex:none}.faq-list details[open] summary::after{content:'−'}.faq-list details>div{max-width:900px;margin-top:20px;line-height:1.7;color:var(--muted)}.faq-list p+p{margin-top:14px}.contact-layout{display:grid;grid-template-columns:440fr 766fr;gap:90px;padding-bottom:70px;align-items:start}.contact-aside{display:flex;flex-direction:column;gap:25px}.contact-aside h2{font-size:36px;line-height:43px}.contact-aside p{font-size:16px;line-height:26px}.contact-aside .hint{font-size:14px;line-height:22px;max-width:400px}.contact-aside address{font-style:normal;color:var(--muted);font-size:16px;line-height:26px}.contact-aside .contact-direct{color:var(--ink);font-weight:500}.enquiry{background:var(--panel);padding:36px;border-radius:3px;display:flex;flex-direction:column;gap:20px;min-width:0}.field{display:flex;flex-direction:column;gap:10px;width:100%;font-size:13px;font-weight:500;line-height:21px}.field:not(.message){padding-bottom:9px}input,select,textarea{border:1px solid var(--line);border-radius:3px;background:var(--bg);color:var(--ink);width:100%;padding:14px 15px;min-height:54px;font-size:15px;font-weight:400;line-height:24px}textarea{resize:vertical;min-height:140px}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}.enquiry .privacy-copy{font-size:11px;line-height:18px}.privacy-copy a{text-decoration:underline;text-underline-offset:3px}.enquiry .primary{width:100%}.form-extra{font-size:12px;color:var(--muted);width:100%}.form-extra summary{padding:8px 0}.form-extra .field{margin-top:16px}.review-dialog{background:var(--panel);color:var(--ink);border:1px solid var(--line);padding:36px;max-width:600px;width:calc(100% - 32px);max-height:calc(100dvh - 32px);overflow:auto}.review-dialog::backdrop{background:#000b}.review-dialog h2{font-size:34px;line-height:41px;letter-spacing:-.025em;margin-bottom:25px}.review-dialog>p{font-size:15px;line-height:24px;margin-bottom:25px}.review-values{background:var(--bg);padding:22px;display:flex;flex-direction:column;gap:16px;margin-bottom:25px}.review-values dt{font-size:12px;color:var(--muted)}.review-values dd{margin:0;font-size:14px;overflow-wrap:anywhere;white-space:pre-wrap}.review-dialog button{width:100%;margin-bottom:18px}.form-status{font-size:14px;line-height:22px;color:var(--ink)}.form-status:empty{display:none}.form-status.error{color:#f2aa9e}.form-status.success{color:#d4e8b5}.article-layout{display:grid;grid-template-columns:minmax(0,840px) minmax(220px,1fr);gap:80px;align-items:start}.prose{font-size:17px;line-height:1.8;overflow-wrap:anywhere}.prose p{margin:0 0 24px}.prose h2{font-size:32px;line-height:1.2;margin:40px 0 22px}.prose h3{font-size:25px;line-height:1.25;margin:30px 0 18px}.prose ul,.prose ol{margin-bottom:24px}.prose a{text-decoration:underline;text-underline-offset:4px;color:var(--ink)}.prose strong{color:var(--ink);font-weight:500}.prose img{width:100%;max-height:560px;object-fit:contain;margin:30px 0}.article-meta{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;line-height:20px;color:var(--muted)}.article-aside{border-top:1px solid var(--line);padding-top:24px;display:flex;flex-direction:column;gap:20px}.article-aside h2{font-size:24px;line-height:1.25}.article-aside a{font-size:14px;line-height:1.4;padding:12px 0;border-bottom:1px solid var(--line)}.blog-layout{display:grid;grid-template-columns:235px minmax(0,1fr);gap:48px;align-items:start}.category-nav{display:flex;flex-direction:column;gap:8px}.category-nav a{padding:11px 12px;border:1px solid var(--line);font-size:13px;line-height:21px;color:var(--muted)}.category-nav a[aria-current]{border-color:var(--gold);color:var(--ink)}.blog-tools{margin-bottom:30px}.blog-tools label{font-size:12px;color:var(--muted);display:block;margin-bottom:10px}.blog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.blog-card{background:var(--panel);padding:24px;min-width:0;display:flex;flex-direction:column;gap:18px}.blog-card figure{margin:-24px -24px 2px}.blog-card img{width:100%;aspect-ratio:16/9;object-fit:cover}.blog-card h2{font-size:25px;line-height:1.2;letter-spacing:-.025em;overflow-wrap:anywhere}.blog-card p{font-size:14px;line-height:22px}.blog-card .text-link{margin-top:auto}.blog-count{font-size:12px;margin-top:14px}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;width:100%}.gallery-item{background:var(--panel);padding:20px;display:flex;flex-direction:column;gap:18px;min-width:0}.gallery-item h2{font-size:24px;line-height:1.25}.gallery-item img{width:100%;aspect-ratio:4/3;object-fit:contain}.gallery-item figcaption{font-size:11px;color:var(--muted)}.gallery-dialog{border:1px solid var(--line);background:var(--bg);padding:24px;color:var(--ink);width:min(1000px,calc(100% - 32px));max-height:calc(100dvh - 32px)}.gallery-dialog::backdrop{background:#000c}.gallery-dialog button{float:right;margin-bottom:20px}.gallery-dialog img{clear:both;max-height:75dvh;margin:auto;object-fit:contain}.legal-page{max-width:1050px}.not-found{min-height:60vh}.empty-result{padding:30px 0;color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.page-intro>.eyebrow{font-size:10px;line-height:16px;color:var(--muted)}.article-cover{margin:30px 0}.article-cover img{width:100%;max-height:520px;object-fit:cover}.primary:disabled{opacity:.55;cursor:default}.page-intro h1{max-width:100%;overflow-wrap:break-word}
@media(min-width:1601px){.home-hero-copy{max-width:800px}.home-hero-image{object-position:center}}
@media(max-width:1199px){:root{--pad:40px}.desktop-nav{gap:22px}.wordmark strong{font-size:26px}.site-header{gap:20px}.header-demo{padding:14px 18px}.product-intro{gap:40px}.product-intro h1{font-size:65px;line-height:1.06;letter-spacing:-.04em}.product-intro figure img{height:420px}.softsystem-band{gap:40px}.softsystem-band h2{font-size:40px;line-height:1.08}.contact-layout{gap:45px}.article-layout{gap:45px}}
@media(max-width:999px){.desktop-nav,.header-demo{display:none}.menu-toggle{display:block}.site-header{height:84px}.home-hero h1{font-size:70px;line-height:1.04;letter-spacing:-.04em}.home-hero{height:700px}.home-hero-copy{padding-top:75px}.hero-description{max-width:370px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.softsystem-band{grid-template-columns:1fr;gap:35px}.contact-layout{grid-template-columns:1fr 1.45fr;gap:35px}.enquiry{padding:24px}.product-intro h1{font-size:56px}.product-intro figure img{height:360px}.detail-section>.inner{gap:35px;grid-template-columns:1fr 1.3fr}.blog-layout{grid-template-columns:180px 1fr;gap:28px}.article-layout{grid-template-columns:1fr}.article-aside{display:none}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:699px){:root{--pad:24px}h1{font-size:46px;line-height:47px;letter-spacing:-1.15px}h2{font-size:36px;line-height:43px;letter-spacing:-.9px}h3{font-size:26px;line-height:32px}.section{padding-top:42px;padding-bottom:42px}.section-stack{gap:26px}.site-header .wordmark strong{font-size:24px;line-height:29px}.home-hero{height:auto;display:flex;flex-direction:column}.home-hero-image{position:relative;inset:auto;width:100%;height:300px;order:2;object-fit:cover}.home-hero-copy{padding:40px 24px 24px;gap:22px;max-width:none;order:1}.home-hero h1{font-size:51px;line-height:53px;letter-spacing:-1.275px}.home-hero .eyebrow{font-size:9px;line-height:14px}.hero-description{font-size:15px;line-height:24px;max-width:none}.hero-desktop-description{display:none}.hero-mobile-description{display:block}.home-hero .actions{width:100%}.home-hero .primary{width:100%}.home-hero .secondary{display:none}.home-hero-copy>.image-note{display:none}.hero-mobile-note{display:block;order:3;padding:10px 24px 12px}.product-rail{grid-template-columns:1fr;gap:13px;padding-top:21px;padding-bottom:21px;font-size:12px;line-height:19px}.home-products{padding-top:48px;padding-bottom:48px;gap:26px}.home-products h2{font-size:36px;line-height:43px}.cards{grid-template-columns:1fr;gap:26px}.product-card{min-height:260px}.softsystem-band{padding-top:42px;padding-bottom:42px;gap:28px}.softsystem-band h2{font-size:34px;line-height:37px}.softsystem-logo{font-size:47px;line-height:52px}.home-cta{padding-top:48px;padding-bottom:48px;gap:26px}.home-cta h2{font-size:46px;line-height:47px;letter-spacing:-1.15px}.home-cta .primary{width:100%}.site-footer{padding-top:36px;padding-bottom:30px}.footer-links{gap:8px 12px}.footer-more nav{grid-template-columns:1fr 1fr}.page-intro{padding-top:25px;padding-bottom:30px;gap:23px}.page-intro p{font-size:16px;line-height:26px}.product-intro{padding-top:30px;padding-bottom:40px;grid-template-columns:1fr;gap:30px}.product-intro h1{font-size:51px;line-height:53px;letter-spacing:-1.275px}.product-intro .copy{gap:22px}.product-intro .primary{width:100%}.product-intro figure img{height:300px}.features{grid-template-columns:1fr;gap:28px}.feature h3{font-size:26px;line-height:31px}.project-steps{gap:26px}.project-step{grid-template-columns:1fr;gap:13px}.detail-section>.inner{grid-template-columns:1fr;gap:25px}.detail-section h2{font-size:32px;line-height:1.2}.detail-section p,.detail-section li{font-size:15px;line-height:1.7}.faq-list summary{font-size:20px}.contact-layout{grid-template-columns:1fr;gap:35px;padding-bottom:42px}.contact-aside h2{font-size:32px;line-height:37px}.enquiry{padding:24px;gap:20px}.field{padding-bottom:0!important}.review-dialog{padding:24px}.review-dialog h2{font-size:29px;line-height:35px}.article-layout{gap:30px}.prose{font-size:16px;line-height:1.8}.prose h2{font-size:28px}.blog-layout{grid-template-columns:1fr;gap:30px}.category-nav{display:grid;grid-template-columns:1fr 1fr;gap:8px}.category-nav a{font-size:12px}.blog-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr}.gallery-dialog{padding:16px}.primary,.secondary{max-width:100%}.legal-page h1{overflow-wrap:anywhere}}
@media(max-width:360px){.home-hero h1,.product-intro h1{font-size:45px;line-height:48px}.home-hero-copy{padding-left:20px;padding-right:20px}.home-products h2{font-size:33px;line-height:39px}.contact-layout .enquiry{padding:20px}.wordmark small{font-size:7px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
