:root{--ink:#1b3038;--deep:#162a34;--deeper:#10232c;--cream:#f6f3ec;--paper:#fffdf8;--muted:#69747a;--line:#dedfd8;--accent:#b68b6b;--accent-light:#d7b99e;--font:'DM Sans',sans-serif;--display:'Manrope',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}svg{fill:currentColor}.container{width:min(100% - 64px,1240px);margin-inline:auto}.skip-link{position:absolute;top:-60px;left:12px;z-index:100;background:#fff;padding:12px}.skip-link:focus{top:12px}.topline{height:35px;padding:0 max(32px,calc((100vw - 1240px)/2));display:flex;justify-content:space-between;align-items:center;color:#ebe4d7;background:var(--deep);font-size:10px;letter-spacing:.16em;text-transform:uppercase}.site-header{height:82px;background:var(--paper);position:relative;z-index:10}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:10px;min-width:192px;color:var(--ink)}.brand-mark{position:relative;display:block;width:39px;height:39px;border:2px solid currentColor;transform:skew(-9deg)}.brand-mark i:first-child{position:absolute;height:34px;width:2px;background:currentColor;left:13px;top:0;transform:skew(-12deg)}.brand-mark i:last-child{position:absolute;height:2px;width:28px;background:currentColor;left:7px;top:23px}.brand strong{font-family:var(--display);display:block;font-size:22px;letter-spacing:-.095em;line-height:1;font-weight:800;white-space:nowrap}.brand-amp{font-weight:400;color:var(--accent);padding:0 1px}.brand small{display:block;margin-top:5px;font-size:8px;letter-spacing:.24em;font-weight:700}.nav{display:flex;align-items:center;gap:34px;font-size:13px;font-weight:600}.nav a{transition:color .2s}.nav a:hover,.inline-link:hover{color:var(--accent)}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:0;font-weight:700;transition:transform .2s,background .2s,box-shadow .2s}.button:hover{transform:translateY(-2px)}.button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #d6a47b;outline-offset:3px}.button-nav{background:var(--deep);color:#fff;padding:14px 18px;font-size:12px;white-space:nowrap}.button-nav:hover{background:#304b56}.hero{min-height:650px;position:relative;background:var(--deep);color:#fff;overflow:hidden}.hero-media{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(6,22,31,.89) 0%,rgba(8,27,36,.78) 26%,rgba(8,27,36,.28) 60%,rgba(8,27,36,.1) 100%),linear-gradient(0deg,rgba(5,21,30,.45),transparent 34%),url('/assets/hero.webp');background-size:cover;background-position:center 48%}.hero-content{position:relative;z-index:1;padding-top:114px;padding-bottom:105px}.eyebrow{display:flex;align-items:center;gap:13px;color:#8d806f;font-size:11px;letter-spacing:.22em;font-weight:700}.eyebrow-line{display:block;width:27px;height:1px;background:var(--accent)}.eyebrow-light{color:#dcc6af}.hero h1,h2,h3,p{margin-top:0}.hero h1{font-family:var(--display);font-size:clamp(54px,6.5vw,96px);line-height:1.05;letter-spacing:-.07em;font-weight:600;margin:28px 0 26px}.hero h1 em,h2 em{font-style:normal;color:var(--accent-light)}.hero p{font-size:17px;line-height:1.7;color:#e4e8e6;max-width:520px;margin-bottom:34px}.hero-actions{display:flex;align-items:center;gap:31px}.button-primary{background:var(--paper);color:var(--deep);min-height:54px;padding:0 23px;font-size:13px}.button-primary:hover{background:#e8dacb}.button-primary svg,.mobile-cta svg{width:19px;height:19px}.button-primary span{margin-left:9px}.text-link{display:inline-flex;gap:10px;align-items:center;font-size:13px;font-weight:700}.hero-link{color:#fff}.hero-link:hover{color:var(--accent-light)}.hero-side-note{position:absolute;right:24px;top:45%;writing-mode:vertical-rl;letter-spacing:.24em;font-size:9px;color:#fff;z-index:1}.hero-bottom{position:absolute;bottom:0;left:0;right:0;z-index:1;border-top:1px solid rgba(255,255,255,.28)}.hero-bottom-inner{height:56px;display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.18em;color:#e8e1d7}.small-diamond{display:inline-block;width:6px;height:6px;margin-right:9px;background:var(--accent-light);transform:rotate(45deg)}.section-pad{padding:112px 0}.intro{background:var(--paper)}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.intro h2,.section-heading h2,.contact-copy h2{font-family:var(--display);font-size:clamp(39px,4.1vw,61px);letter-spacing:-.065em;line-height:1.13;font-weight:600;margin:22px 0 0}.intro h2 em,.section-heading h2 em{color:var(--accent)}.intro-copy{padding-top:35px;max-width:490px}.intro-copy p{font-size:17px;line-height:1.8;color:#53616a;margin-bottom:18px}.inline-link{display:inline-flex;align-items:center;gap:30px;border-bottom:1px solid var(--accent);padding-bottom:10px;font-size:13px;font-weight:700;margin-top:12px;transition:color .2s}.solutions{background:var(--cream)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:42px}.section-heading>p{max-width:305px;color:#68747a;line-height:1.7;margin:0 0 8px;font-size:15px}.solution-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.solution-card{min-height:488px;position:relative;overflow:hidden}.photo-card{background:#42545a;color:white}.photo-card img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transition:transform .6s}.photo-card:hover img{transform:scale(1.035)}.photo-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,28,35,.35) 0%,transparent 31%,rgba(5,24,31,.85) 100%)}.card-content{position:absolute;inset:0;display:flex;flex-direction:column;padding:28px}.card-number{font-size:10px;letter-spacing:.18em;font-weight:700}.card-content h3,.detail-content h3{font-family:var(--display);font-weight:600;font-size:31px;letter-spacing:-.05em;line-height:1.17;margin:auto 0 12px}.card-content p,.detail-content p{font-size:14px;line-height:1.6;max-width:245px;margin-bottom:18px;color:#e4e8e6}.round-link{border:1px solid rgba(255,255,255,.55);border-radius:50%;width:40px;height:40px;display:grid;place-items:center;font-size:19px;transition:background .2s,color .2s}.round-link:hover{background:#fff;color:var(--deep)}.detail-card{background:#dfe4e0;padding:28px;color:var(--deep);display:flex;flex-direction:column}.detail-art{position:absolute;inset:0;overflow:hidden;opacity:.5}.detail-art span{position:absolute;border:1px solid #8d9d9c;transform:skewY(-13deg) rotate(12deg);width:260px;height:230px;top:120px;left:40px}.detail-art span:nth-child(2){left:86px;top:145px}.detail-art span:nth-child(3){left:132px;top:170px}.detail-top,.detail-content{position:relative}.detail-top{display:flex;justify-content:space-between;align-items:start}.detail-top svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1}.detail-content{margin-top:auto}.detail-content p{color:#52616a}.detail-card .round-link{border-color:#839390}.detail-card .round-link:hover{background:var(--deep);color:#fff}.solutions-foot{display:flex;justify-content:center;align-items:center;gap:18px;margin-top:38px;color:#68747a;font-size:14px}.solutions-foot .inline-link{margin:0}.quote-band{background:#e7e9e4}.quote-inner{min-height:205px;display:flex;align-items:center;gap:28px}.quote-symbol{font-family:Georgia,serif;font-size:116px;line-height:.4;color:var(--accent);margin-top:35px}.quote-inner p{font-family:var(--display);font-size:clamp(22px,2.4vw,35px);line-height:1.25;letter-spacing:-.05em;max-width:720px;margin:0}.quote-label{margin-left:auto;white-space:nowrap;font-size:10px;letter-spacing:.2em;color:#647077}.process{background:var(--paper)}.steps{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.step{padding:29px 35px 10px 0;display:flex;gap:24px}.step+ .step{padding-left:30px;border-left:1px solid var(--line)}.step>span{font-family:var(--display);font-size:13px;font-weight:700;color:var(--accent)}.step h3{font-family:var(--display);font-size:19px;letter-spacing:-.04em;margin:0 0 12px}.step p{color:#68747a;line-height:1.7;font-size:14px;margin:0}.contact-section{background:var(--deep);color:white;padding:104px 0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.contact-copy h2{margin:25px 0}.contact-copy h2 em{color:var(--accent-light)}.contact-copy>p{font-size:16px;line-height:1.75;color:#c4d0d0;max-width:430px}.contact-info{display:flex;gap:75px;margin-top:86px}.contact-info div{display:flex;flex-direction:column;gap:12px}.contact-info span{color:#b9a896;font-size:10px;letter-spacing:.18em;font-weight:700}.contact-info strong{font-size:15px;font-weight:500}.form-card{background:var(--paper);color:var(--ink);padding:36px 42px 32px;box-shadow:0 24px 80px rgba(0,0,0,.12)}.form-header{display:flex;justify-content:space-between;align-items:center;color:var(--accent);font-size:10px;letter-spacing:.17em;font-weight:700}.form-header span:last-child{font-size:20px;letter-spacing:0}.form-card h3{font-family:var(--display);font-size:29px;line-height:1.2;letter-spacing:-.05em;font-weight:600;margin:18px 0 24px}.form-card form{display:flex;flex-direction:column}.form-card label{font-size:12px;font-weight:700;margin:0 0 8px}.form-card input,.form-card select,.form-card textarea{border:1px solid #d9ddd8;background:#fff;width:100%;padding:12px 14px;border-radius:0;color:var(--ink);outline:none;margin-bottom:17px;font-size:13px}.form-card textarea{resize:vertical;min-height:74px}.form-card input:focus,.form-card select:focus,.form-card textarea:focus{border-color:var(--accent)}.form-card input::placeholder,.form-card textarea::placeholder{color:#9ba4a5}.button-form{background:var(--deep);color:white;width:100%;min-height:51px;font-size:13px;justify-content:space-between;padding:0 19px}.button-form:hover{background:#304b56}.form-note{color:#87918f;font-size:11px;line-height:1.5;text-align:center;margin:12px 0 0}.footer{background:var(--deeper);color:#fff}.footer-main{display:grid;grid-template-columns:1.8fr 1fr 1fr 1.15fr;gap:40px;padding:70px 0 65px}.brand-footer{color:#fff}.footer-main p{color:#aebec0;font-size:13px;line-height:1.7;max-width:260px;margin:24px 0 0}.footer-main h3{font-size:12px;letter-spacing:.13em;text-transform:uppercase;margin:0 0 22px;color:#d0ad8c}.footer-main>div:not(:first-child){display:flex;flex-direction:column;align-items:start;gap:13px}.footer-main>div:not(:first-child) a,.footer-main>div:not(:first-child) span{font-size:13px;color:#bdc9c9}.footer-main a:hover{color:#fff!important}.footer-main .footer-phone{font-size:18px!important;color:#fff!important;font-weight:700}.footer-bottom{border-top:1px solid #3b4b52;min-height:58px;display:flex;justify-content:space-between;align-items:center;color:#8fa1a5;font-size:11px}.mobile-cta{display:none}@media(max-width:1050px){.nav{gap:19px}.nav a{font-size:12px}.contact-grid{gap:45px}.footer-main{gap:25px}}@media(max-width:800px){.topline{padding:0 24px}.site-header{height:70px}.container{width:min(100% - 40px,1240px)}.nav{display:none}.button-nav{padding:12px 15px}.hero{min-height:610px}.hero-content{padding-top:110px}.hero-side-note{display:none}.intro-grid{gap:40px}.solution-grid{gap:10px}.solution-card{min-height:420px}.card-content,.detail-card{padding:18px}.card-content h3,.detail-content h3{font-size:25px}.contact-grid{gap:30px}.form-card{padding:30px}.footer-main{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.topline{height:30px;font-size:8px;letter-spacing:.11em}.topline span:first-child{display:none}.topline{justify-content:center}.site-header{height:64px}.brand{min-width:0}.brand-mark{width:31px;height:31px}.brand-mark i:first-child{height:27px;left:10px}.brand-mark i:last-child{width:22px;left:5px;top:18px}.brand strong{font-size:19px}.brand small{font-size:6px}.button-nav{font-size:0;width:41px;height:41px;padding:0}.button-nav span{font-size:18px}.hero{min-height:630px}.hero-media{background-position:62% center;background-image:linear-gradient(90deg,rgba(6,22,31,.88),rgba(8,27,36,.55) 75%),linear-gradient(0deg,rgba(5,21,30,.5),transparent 50%),url('/assets/hero.webp')}.hero-content{padding-top:102px}.eyebrow{font-size:9px;letter-spacing:.16em}.hero h1{font-size:clamp(52px,14vw,75px);margin:25px 0}.hero p{font-size:15px;max-width:330px}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.hero-bottom-inner{font-size:8px}.section-pad{padding:75px 0}.intro-grid,.contact-grid{grid-template-columns:1fr;gap:20px}.intro h2,.section-heading h2,.contact-copy h2{font-size:clamp(38px,10vw,53px)}.intro-copy{padding:0}.intro-copy p{font-size:15px}.section-heading{display:block;margin-bottom:27px}.section-heading>p{margin:18px 0 0}.solution-grid{grid-template-columns:1fr;gap:13px}.solution-card{min-height:430px}.photo-card img{object-position:center 40%}.card-content,.detail-card{padding:25px}.card-content h3,.detail-content h3{font-size:30px}.detail-card{min-height:350px}.solutions-foot{display:block;text-align:center}.solutions-foot .inline-link{margin-top:10px}.quote-inner{min-height:210px;gap:14px}.quote-symbol{font-size:80px}.quote-inner p{font-size:22px}.quote-label{display:none}.steps{grid-template-columns:1fr}.step,.step+ .step{padding:24px 0;border-left:0;border-bottom:1px solid var(--line)}.contact-section{padding:75px 0 90px}.contact-copy h2{margin:22px 0}.contact-copy>p{font-size:15px}.contact-info{margin:30px 0 22px;gap:30px}.contact-info strong{font-size:13px}.form-card{padding:28px 22px}.footer-main{grid-template-columns:repeat(2,1fr);gap:42px 20px;padding:60px 0 40px}.footer-main>div:first-child{grid-column:1/-1}.footer-main>div:last-child{grid-column:1/-1}.footer-bottom{flex-direction:column;align-items:start;gap:8px;padding:18px 0 92px}.mobile-cta{position:fixed;bottom:14px;left:14px;right:14px;z-index:20;background:#e8f0e9;color:#153b2b;min-height:52px;display:flex;align-items:center;justify-content:center;gap:9px;font-size:13px;font-weight:700;box-shadow:0 8px 25px #071b1d50}.mobile-cta span{margin-left:auto;margin-right:18px}.mobile-cta svg{margin-left:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Updated brand and expanded solution catalogue */
.brand-logo{min-width:220px;gap:0}.brand-logo img{width:220px;height:55px;object-fit:contain}.brand-footer img{width:220px;height:55px}
.solution-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.solution-card{min-height:450px}.card-content p{max-width:300px}
.service-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-top:17px}.service-tile{min-height:238px;background:#e6eae6;padding:28px;display:flex;flex-direction:column;border:1px solid #dce2dd;transition:background .2s,transform .2s}.service-tile:hover{background:#f0f2ed;transform:translateY(-2px)}.service-tile:nth-child(6){background:var(--deep);color:#fff;border-color:var(--deep)}.service-tile:nth-child(6):hover{background:#27434d}.tile-number{font-size:10px;font-weight:700;letter-spacing:.17em;color:#788b8a}.service-tile:nth-child(6) .tile-number{color:#c5ad98}.service-tile h3{font-family:var(--display);font-weight:600;font-size:23px;line-height:1.2;letter-spacing:-.045em;margin:29px 0 8px}.service-tile p{font-size:13px;line-height:1.55;color:#617079;margin-bottom:19px;max-width:290px}.service-tile:nth-child(6) p{color:#c9d5d5}.service-tile a{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:10px;border-top:1px solid #bdcbc5;font-size:12px;font-weight:700}.service-tile:nth-child(6) a{border-color:#61757a}.service-tile a span{font-size:18px}.service-tile a:hover{color:var(--accent)}
@media(max-width:1050px){.brand-logo{min-width:190px}.brand-logo img{width:190px;height:auto}.service-tile{padding:23px}.service-tile h3{font-size:21px}}
@media(max-width:800px){.service-list{gap:10px;margin-top:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.service-tile{min-height:225px}.solution-card{min-height:410px}}
@media(max-width:640px){.brand-logo{min-width:0}.brand-logo img{width:176px;height:auto}.brand-footer img{width:210px;height:auto}.solution-grid{grid-template-columns:1fr}.solution-card{min-height:380px}.service-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.service-tile{min-height:232px;padding:17px}.service-tile h3{font-size:18px;margin:22px 0 8px}.service-tile p{font-size:12px;line-height:1.5}.service-tile a{font-size:11px}.tile-number{font-size:8px}}
@media(max-width:360px){.brand-logo img{width:158px}.service-list{grid-template-columns:1fr}.service-tile{min-height:170px}.service-tile h3{margin-top:16px}.contact-info{flex-wrap:wrap}}

/* Persistent quote action and an image for every solution */
.site-header{position:sticky;top:0;z-index:30;box-shadow:0 3px 16px rgba(13,35,44,.08)}
main section[id]{scroll-margin-top:88px}
.photo-service{position:relative;isolation:isolate;overflow:hidden;min-height:350px;background:var(--deep);color:#fff;border:0;padding:27px;transform:none}
.photo-service:hover{background:var(--deep);transform:none}
.photo-service img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .5s ease}
.photo-service:hover img{transform:scale(1.04)}
.photo-service .tile-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(8,28,36,.38) 0%,rgba(8,28,36,.08) 35%,rgba(7,25,33,.88) 100%)}
.photo-service .tile-number{color:#fff;position:relative}
.photo-service:nth-child(6) .tile-number{color:#fff}
.photo-service .tile-copy{margin-top:auto;position:relative}
.photo-service h3{color:#fff;font-size:25px;margin:0 0 9px}
.photo-service p,.photo-service:nth-child(6) p{color:#e7eeee;font-size:13px;line-height:1.5;max-width:290px;margin:0 0 16px}
.photo-service a,.photo-service:nth-child(6) a{color:#fff;border-color:rgba(255,255,255,.6);margin-top:0}
.photo-service a:hover{color:var(--accent-light)}
@media(max-width:800px){main section[id]{scroll-margin-top:76px}.photo-service{min-height:300px;padding:22px}}
@media(max-width:640px){.site-header{position:relative;top:auto}main section[id]{scroll-margin-top:18px}.photo-service{min-height:245px;padding:16px}.photo-service h3{font-size:18px;margin-bottom:12px}.photo-service p{display:none}.photo-service a{font-size:11px}.photo-service .tile-number{font-size:8px}}
@media(max-width:360px){.photo-service{min-height:290px;padding:23px}.photo-service h3{font-size:22px}.photo-service p{display:block;font-size:13px}}
