:root{--ivory:#f5f1e8;--navy:#101f2b;--navy2:#182b38;--gold:#b89455;--ink:#14232d;--muted:#687078;--line:#d8d0c1;--serif:"Iowan Old Style",Baskerville,"Times New Roman",serif;--sans:"Avenir Next","Segoe UI",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;overflow-x:hidden;background:var(--ivory);color:var(--ink);font:15px/1.7 var(--sans)}a{color:inherit;text-decoration:none}img{display:block;width:100%}button,input,select,textarea{font:inherit}.site-header{height:106px;padding:0 4vw;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line);background:var(--ivory);position:relative;z-index:20}.brand{display:inline-flex;width:76px;height:76px}.brand img{object-fit:contain}.main-nav{display:flex;gap:38px;font-size:12px}.main-nav a:hover,.lang.active{color:var(--gold)}.header-actions{justify-self:end;display:flex;align-items:center;gap:28px}.language-switcher{display:flex;gap:10px}.lang{padding:5px 0;border:0;border-bottom:1px solid transparent;background:none;color:var(--muted);font-size:10px;letter-spacing:.12em}.lang.active{border-color:var(--gold)}.menu-toggle{display:none}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-width:210px;padding:15px 20px;border:1px solid var(--gold);background:var(--gold);color:#fff;font-size:10px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;cursor:pointer;transition:.25s}.button:hover{background:var(--navy);border-color:var(--navy)}.button-small{min-width:auto;background:var(--navy);border-color:var(--navy)}.section-pad{padding:7vw 5vw}.section-label{color:var(--gold);font-size:9px;font-weight:600;letter-spacing:.17em;text-transform:uppercase}.section-label:after{content:"";display:block;width:28px;height:1px;margin-top:13px;background:currentColor}.hero{min-height:calc(100vh - 106px);display:grid;grid-template-columns:43% 57%}.hero-copy{min-width:0;padding:8vw 6vw 6vw 8vw;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;background:var(--navy);color:var(--ivory)}h1,h2,h3,p{margin-top:0}h1{font:400 clamp(60px,5.2vw,96px)/1.04 var(--serif);letter-spacing:-.045em;margin-bottom:36px}.hero-copy p{max-width:450px;color:#c8ced0;margin-bottom:34px}.hero-image{margin:0;overflow:hidden}.hero-image img{height:100%;object-fit:cover}.positioning{display:grid;grid-template-columns:24% 76%;border-bottom:1px solid var(--line)}.statement{max-width:960px;font:400 clamp(32px,3.6vw,62px)/1.25 var(--serif);letter-spacing:-.025em;margin:0}.services,.approach{display:grid;grid-template-columns:15% 85%;border-bottom:1px solid var(--line)}.service-list,.steps{display:grid;grid-template-columns:repeat(4,1fr)}.service{padding:0 2.4vw;border-left:1px solid var(--line)}.service>span,.step>span{color:var(--gold);font:400 34px var(--serif)}.service h2{min-height:80px;margin:22px 0;font:400 26px/1.15 var(--serif)}.service p,.step p{color:var(--muted);font-size:12px}.projects{background:var(--navy);color:var(--ivory);overflow:hidden}.projects-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:45px}.projects h2,.contact h2,.about h2{font:400 clamp(42px,4.6vw,76px)/1.08 var(--serif);letter-spacing:-.035em;margin:28px 0 0}.slider-controls{display:flex;align-items:center;gap:16px}.slider-button{width:48px;height:48px;border:1px solid var(--gold);border-radius:50%;background:transparent;color:var(--gold);cursor:pointer}.slider-button:hover{background:var(--gold);color:#fff}.slider-count{font-size:10px;letter-spacing:.14em;color:#aeb7bc}.project-slider{display:grid}.project-slide{grid-area:1/1;display:grid;grid-template-columns:78% 22%;opacity:0;visibility:hidden;transform:translateX(30px);transition:.5s}.project-slide.active{opacity:1;visibility:visible;transform:none}.project-slide img{height:min(55vw,670px);object-fit:cover}.project-info{padding:35px;align-self:end}.project-info>span{color:var(--gold);font:32px var(--serif)}.project-info h3{margin:20px 0 5px;font:400 34px var(--serif)}.project-info p,.project-info small{color:#b9c0c4}.project-note{margin:25px 0 0;color:#9ba6ac;font-size:10px}.step{position:relative;padding-right:3vw}.step:not(:last-child):after{content:"\2192";position:absolute;right:2vw;top:16px;color:var(--gold)}.step h3{font:400 24px var(--serif);margin:20px 0 12px}.about{min-height:620px;display:grid;grid-template-columns:32% 68%;align-items:center;background:var(--navy2);color:var(--ivory)}.section-label.light{color:#d1ad6c}.about-copy{max-width:800px}.about-copy p,.contact-intro p{max-width:620px;color:#bac2c5;font-size:16px}.contact{display:grid;grid-template-columns:40% 60%;gap:8vw;background:var(--navy);color:var(--ivory)}.contact h2{margin:28px 0}.contact-intro>a{color:var(--gold)}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:24px 30px;align-content:center}.contact-form label{display:grid;gap:8px;color:#cbd1d3;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:0;border-bottom:1px solid #65717a;padding:12px 2px;background:transparent;color:var(--ivory);outline:none}.contact-form select option{color:var(--ink)}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--gold)}.contact-form .full{grid-column:1/-1}.form-submit{grid-column:2;justify-self:end}.form-status{grid-column:1/-1;color:var(--gold);font-size:12px}.site-footer{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:40px;padding-top:4vw;padding-bottom:2vw;background:#0b1720;color:var(--ivory)}.brand-footer{width:96px;height:96px}.site-footer p{color:#aeb7bc;font-size:11px;margin-top:16px}.site-footer strong{font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:var(--gold)}.site-footer small{grid-column:1/-1;border-top:1px solid #33424c;padding-top:18px;color:#8d999e;font-size:9px}.reveal{opacity:0;transform:translateY(22px);transition:.7s}.reveal.visible{opacity:1;transform:none}
@media(max-width:980px){.site-header{height:88px;grid-template-columns:1fr auto}.site-header .brand{width:64px;height:64px}.menu-toggle{display:block;position:absolute;right:5vw;border:0;background:none;color:var(--ink);font-size:10px;text-transform:uppercase}.main-nav{display:none;position:absolute;top:88px;left:0;right:0;padding:28px 5vw;flex-direction:column;background:var(--ivory);border-bottom:1px solid var(--line)}.main-nav.open{display:flex}.header-actions{margin-right:64px}.header-cta{display:none}.hero{min-height:auto;grid-template-columns:1fr}.hero-copy{padding:14vw 7vw}.hero-image{height:65vw;min-height:380px}.positioning,.services,.approach{grid-template-columns:1fr;gap:55px}.service-list,.steps{grid-template-columns:repeat(2,1fr);gap:50px 0}.project-slide{grid-template-columns:1fr}.project-slide img{height:60vw}.project-info{padding:25px 0}.contact{grid-template-columns:1fr}.contact-form{margin-top:30px}}
@media(max-width:640px){.section-pad{padding:20vw 6vw}.language-switcher{gap:7px}.lang{font-size:9px}.hero-copy{padding:18vw 7vw}.hero-image{height:85vw}.service-list,.steps,.about{grid-template-columns:1fr}.service{padding:30px 0;border-left:0;border-top:1px solid var(--line)}.service h2{min-height:auto}.projects-head{align-items:flex-start;gap:30px}.projects h2{font-size:42px}.slider-count{display:none}.slider-button{width:42px;height:42px}.project-slide img{height:65vw}.steps{gap:42px}.step:not(:last-child):after{display:none}.about{gap:55px}.contact-form{grid-template-columns:1fr}.contact-form .full,.form-submit{grid-column:1}.form-submit{justify-self:stretch}.site-footer{grid-template-columns:1fr;padding-top:15vw}}

.site-header>.brand{align-self:center;justify-self:start;min-width:76px;min-height:76px;overflow:hidden}
.site-header>.brand img{width:76px;height:76px;object-fit:contain}
@media(max-width:980px){
  .site-header>.brand{min-width:64px;min-height:64px}
  .site-header>.brand img{width:64px;height:64px}
  .site-header .header-actions{position:absolute;top:27px;right:76px!important;margin:0}
  .site-header .menu-toggle{z-index:2;right:18px}
  .hero-copy p{max-width:100%}
}
@media(max-width:640px){
  .site-header .header-actions{right:60px!important}
  .site-header .language-switcher{gap:5px}
  .site-header .lang{font-size:8px;letter-spacing:0}
  .site-header .menu-toggle{right:12px;font-size:9px}
}

.main-nav{gap:44px;font-size:14px;font-weight:600;letter-spacing:.015em}
.main-nav a{padding:12px 2px;transition:color .2s ease}
.projects{padding-top:clamp(42px,5vh,64px);padding-bottom:clamp(38px,4.5vh,58px)}
.projects-head{margin-bottom:24px}
.projects h2{font-size:clamp(36px,3.6vw,56px);margin-top:16px}
.project-slide{grid-template-columns:76% 24%}
.project-slide img{height:clamp(330px,52vh,460px)}
.project-info{padding:24px 30px}
.project-info>span{font-size:26px}
.project-info h3{margin:14px 0 3px;font-size:30px}
.project-info p{margin-bottom:3px}
.project-note{margin-top:16px}
@media(max-width:980px){
  .main-nav{gap:0;font-size:15px}
  .main-nav a{padding:9px 0}
  .projects{padding-top:14vw;padding-bottom:14vw}
  .project-slide{grid-template-columns:1fr}
  .project-slide img{height:60vw}
}

.contact{align-items:start;padding-top:clamp(70px,6vw,96px);padding-bottom:clamp(70px,6vw,96px)}
.contact-form{align-content:start}
.site-footer{
  grid-template-columns:minmax(240px,1.7fr) repeat(3,minmax(150px,1fr));
  align-items:start;
  gap:48px;
  padding:48px 5vw 24px;
}
.site-footer>div{align-self:start;min-width:0}
.footer-brand-block{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.site-footer .brand-footer{display:block;flex:0 0 auto;width:88px;height:88px;min-width:88px;min-height:88px;overflow:hidden}
.site-footer .brand-footer img{width:88px;height:88px;object-fit:contain}
.site-footer p{margin:14px 0 0}
.footer-brand-block p{margin:0}
.site-footer small{margin-top:8px}
@media(max-width:980px){
  .contact{padding-top:14vw;padding-bottom:14vw}
  .site-footer{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;padding:48px 5vw 24px}
  .site-footer small{grid-column:1/-1}
}
@media(max-width:640px){
  .site-footer{grid-template-columns:1fr;gap:28px;padding:48px 6vw 24px}
}

.contact-email{color:var(--gold)}
.contact-form .form-consent{display:flex;align-items:flex-start;gap:12px;letter-spacing:.04em;text-transform:none}
.form-consent input{width:15px;height:15px;margin:4px 0 0;accent-color:var(--gold)}
.form-honeypot{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.form-submit:disabled{cursor:wait;opacity:.65}
.form-status{min-height:20px;margin:0}
.form-status.success{color:#a9d4b0}
.form-status.error{color:#e7a7a7}

/* Percentage columns plus the contact gap previously exceeded the viewport. */
.contact{grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:clamp(48px,8vw,120px)}
.contact-intro,.contact-form,.contact-form label{min-width:0}
.form-submit{max-width:100%}
@media(max-width:980px){
  .contact{grid-template-columns:minmax(0,1fr)}
}
