@import url('https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Montserrat:wght@400;500;600;700&display=swap');
:root{--blue:#0d303a;--blue-deep:#08252d;--terra:#c45a3c;--paper:#f5f3ef;--sand:#d7c8b6;--ink:#173139;--serif:'Lora',Georgia,serif;--sans:'Montserrat',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:16px;line-height:1.6}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--terra);outline-offset:4px}.wrap{width:min(100% - 8vw,1370px);margin-inline:auto}.skip-link{position:absolute;top:-100px;left:1rem;padding:.5rem 1rem;background:#fff;z-index:100}.skip-link:focus{top:1rem}.section-pad{padding-block:clamp(5rem,10vw,9rem)}.eyebrow{font-size:.78rem;line-height:1.4;font-weight:700;letter-spacing:.19em;color:var(--terra);margin:0 0 2rem;text-transform:uppercase}.eyebrow.light{color:#f4b18e}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:400}h1,h2,h3 em{font-weight:400}h1,h2{font-family:var(--serif);letter-spacing:-.045em;line-height:1.13}h2{font-size:clamp(2.5rem,5vw,5.2rem)}em{font-family:var(--serif);font-weight:400}.site-header{background:var(--paper);position:relative;z-index:20}.header-inner{display:flex;align-items:center;gap:3.3rem;min-height:100px}.brand{display:inline-flex;align-items:center;gap:.75rem;flex:none;color:var(--blue)}.brand img{width:43px;height:55px;object-fit:contain}.brand-type{display:flex;flex-direction:column;line-height:1}.brand-type strong{font-size:1.6rem;letter-spacing:.16em;font-weight:600}.brand-type small{font-size:.59rem;letter-spacing:.6em;font-weight:500;margin-top:.35rem}.site-nav{display:flex;align-items:center;gap:2.25rem;margin-left:auto}.site-nav a,.header-cta{font-size:.8rem;font-weight:600}.site-nav a:hover,.footer-top a:hover{color:var(--terra)}.header-cta{padding:.82rem 1.25rem;border:1px solid var(--blue);white-space:nowrap;transition:.2s}.header-cta:hover{background:var(--blue);color:#fff}.header-cta span,.text-link span,.button span{margin-left:1rem}.menu-toggle{display:none}.hero{min-height:min(760px,85vh);position:relative;display:flex;align-items:center;background:var(--blue-deep);color:#fff;overflow:hidden}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-image{object-fit:cover;object-position:center}.hero-shade{background:linear-gradient(90deg,rgba(5,28,35,.96) 0%,rgba(5,28,35,.82) 37%,rgba(5,28,35,.18) 100%)}.hero-content{position:relative;padding-block:8rem 9rem}.hero h1{font-size:clamp(3.2rem,6.1vw,7rem);max-width:980px;margin:0 0 2rem}.hero h1 em{color:#e8b798}.hero-content>p:not(.eyebrow){max-width:560px;font-size:1.12rem;line-height:1.7;color:#f0ebe3}.hero-actions{display:flex;align-items:center;gap:2.4rem;margin-top:2.7rem}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.15rem 1.55rem;min-height:56px;font-weight:700;font-size:.84rem;transition:.2s}.button-terra{background:var(--terra);color:#fff}.button-terra:hover{background:#a9472e;transform:translateY(-2px)}.text-link{display:inline-flex;align-items:center;font-size:.84rem;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:.45rem;transition:color .2s}.text-link:hover{color:var(--terra)}.light-link{color:#fff}.hero-index{position:absolute;bottom:2rem;right:4vw;font-size:.68rem;letter-spacing:.23em;color:#d6c9bd}.intro-grid{display:grid;grid-template-columns:1fr .83fr;gap:12%;margin-bottom:5rem}.intro h2{max-width:690px}.intro-copy{padding-top:3rem}.intro-copy p{font-family:var(--serif);font-size:1.13rem;line-height:1.85;margin-bottom:1.4rem}.intro-copy .text-link{margin-top:1rem}.image-ribbon{display:grid;grid-template-columns:1.1fr .7fr .9fr;gap:1.2rem}.image-ribbon img{width:100%;height:clamp(220px,31vw,435px);object-fit:cover}.image-ribbon img:nth-child(2){margin-top:2rem;height:calc(clamp(220px,31vw,435px) - 2rem)}.services{background:var(--blue);color:#f8f5ed}.section-head{display:flex;align-items:end;justify-content:space-between;gap:3rem;margin-bottom:5rem}.section-head h2{max-width:650px;margin:0}.section-head h2 em{color:#d5a18b}.section-head>p{max-width:390px;color:#d6dedb;margin-bottom:.3rem}.service-list{border-top:1px solid #55707a}.service-item{display:grid;grid-template-columns:90px minmax(300px,1fr) minmax(240px,430px);gap:1.5rem;align-items:baseline;border-bottom:1px solid #55707a;padding:2.2rem 0}.service-item span{font-family:var(--serif);font-size:1.1rem;color:#d5a18b}.service-item h3{font-family:var(--serif);font-size:clamp(1.5rem,2.4vw,2.4rem);margin:0}.service-item p{color:#d6dedb;margin:0}.projects-heading{max-width:800px;margin-bottom:4.5rem}.projects-heading h2{margin:0}.feature{display:grid;grid-template-columns:1.12fr .88fr;min-height:560px;background:#ece7df}.feature-media{position:relative;overflow:hidden}.feature-media img{width:100%;height:100%;min-height:560px;object-fit:cover}.media-label{position:absolute;left:2rem;bottom:2rem;color:#fff;background:var(--blue);font-weight:700;font-size:.74rem;letter-spacing:.16em;padding:.7rem 1rem}.feature-copy{padding:clamp(2.4rem,6vw,6rem);align-self:center}.feature-copy h3{font-family:var(--serif);font-size:clamp(2.4rem,3.7vw,4rem);line-height:1.18;letter-spacing:-.04em;margin-bottom:1.6rem}.feature-copy p{max-width:470px;margin-bottom:2.2rem}.project-pair{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:2rem}.project-card{background:#ebe5dd}.card-media img{width:100%;height:clamp(260px,28vw,410px);object-fit:cover}.card-copy{padding:2.2rem 2.6rem 3rem}.card-copy .eyebrow{margin-bottom:1rem}.card-copy h3{font-family:var(--serif);font-size:clamp(1.9rem,2.4vw,2.7rem);line-height:1.2;letter-spacing:-.035em;margin-bottom:1rem}.card-copy p{margin:0;max-width:520px}.manifesto{background:#d8c5b1}.manifesto-inner{display:flex;gap:4rem;align-items:center;padding-block:clamp(4rem,7vw,7rem)}.manifesto img{width:90px;height:140px;object-fit:contain;opacity:.8}.manifesto p{font-family:var(--serif);font-size:clamp(2rem,4.3vw,4.5rem);line-height:1.28;letter-spacing:-.035em;margin:0}.manifesto em{color:#a24730}.contact{background:#f3f0ea}.contact-grid{display:grid;grid-template-columns:1.1fr .7fr;gap:14%;align-items:end}.contact h2{max-width:820px;margin:0}.contact-copy p{font-family:var(--serif);font-size:1.2rem;line-height:1.8;margin-bottom:2rem}.site-footer{background:var(--blue-deep);color:#f7f3eb;padding-top:4rem}.brand-footer{color:#fff}.brand-footer img{filter:brightness(0) invert(1)}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding-bottom:4rem}.footer-top nav{display:flex;gap:2rem;font-size:.85rem}.footer-bottom{display:flex;justify-content:space-between;gap:2rem;border-top:1px solid #46616a;padding:1.5rem 0;color:#c0cfce;font-size:.78rem}
@media(max-width:1050px){.header-inner{gap:1.5rem}.site-nav{gap:1.1rem}.header-cta{display:none}.feature{min-height:0}.feature-media img{min-height:480px}.service-item{grid-template-columns:60px 1fr 1fr}.wrap{width:min(100% - 6vw,1370px)}}
@media(max-width:760px){.wrap{width:min(100% - 2.5rem,1370px)}.header-inner{min-height:76px}.brand img{width:34px;height:43px}.brand-type strong{font-size:1.2rem}.brand-type small{font-size:.46rem}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;width:44px;height:44px;padding:8px;margin-left:auto;background:transparent;border:0;cursor:pointer}.menu-toggle span{height:2px;width:27px;background:var(--blue)}.site-nav{display:none;position:absolute;top:76px;left:0;right:0;margin:0;background:var(--paper);padding:1rem 1.25rem 1.6rem;box-shadow:0 10px 15px #08252d22;flex-direction:column;align-items:stretch;gap:0}.site-nav.is-open{display:flex}.site-nav a{padding:.85rem 0;border-bottom:1px solid #d7c8b6}.hero{min-height:650px}.hero-image{object-position:66% center}.hero-shade{background:linear-gradient(90deg,rgba(5,28,35,.9),rgba(5,28,35,.62))}.hero-content{padding-block:6rem 8rem}.hero h1{font-size:clamp(2.7rem,10.5vw,4.7rem)}.hero-content>p:not(.eyebrow){font-size:1rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:1.7rem}.hero-index{left:1.25rem;right:auto}.intro-grid,.contact-grid{grid-template-columns:1fr;gap:1.2rem}.intro-copy{padding-top:0}.intro-grid{margin-bottom:3rem}.image-ribbon{grid-template-columns:1fr 1fr;gap:.7rem}.image-ribbon img{height:240px}.image-ribbon img:nth-child(2){height:240px;margin-top:0}.image-ribbon img:nth-child(3){display:none}.section-head{display:block;margin-bottom:3rem}.section-head>p{margin-top:1.5rem}.service-item{grid-template-columns:35px 1fr;gap:.5rem;padding:1.7rem 0}.service-item p{grid-column:2}.feature,.project-pair{grid-template-columns:1fr}.feature-media img{height:360px;min-height:0}.feature-copy{padding:2.5rem 1.6rem 3rem}.project-pair{gap:1.2rem;margin-top:1.2rem}.card-media img{height:300px}.card-copy{padding:2rem 1.6rem 2.5rem}.manifesto-inner{gap:1.5rem}.manifesto img{width:50px;height:80px}.contact-copy{padding-top:1rem}.footer-top{align-items:start;flex-direction:column}.footer-top nav{flex-wrap:wrap;gap:1rem 2rem}}
@media(max-width:430px){.image-ribbon img{height:190px}.hero h1{font-size:2.65rem}.eyebrow{letter-spacing:.14em}.manifesto img{display:none}.footer-bottom{flex-direction:column;gap:.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
.social-links{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;margin-top:2rem}.social-links>span{width:100%;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--terra)}.social-links a{display:inline-flex;align-items:center;gap:.4rem;border:1px solid #b5c0bc;padding:.55rem .8rem;font-size:.85rem;font-weight:600;min-height:44px;transition:background .2s,color .2s}.social-links a:hover{background:var(--blue);color:#fff}.footer-top nav{flex-wrap:wrap;justify-content:flex-end;max-width:690px}@media(max-width:760px){.footer-top nav{justify-content:flex-start}}
.icon-arrow{display:inline-block;width:.78em;height:.78em;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.header-cta .icon-arrow,.text-link .icon-arrow,.button .icon-arrow{margin-left:1rem}.footer-top nav a{display:inline-flex;align-items:center;gap:.35em}
.contact-email{display:block;width:fit-content;max-width:100%;margin:-.7rem 0 1.8rem;padding-bottom:.2rem;border-bottom:1px solid currentColor;color:var(--blue);font-size:clamp(.92rem,1.8vw,1.15rem);font-weight:700;overflow-wrap:anywhere}.contact-email:hover,.footer-bottom a:hover{color:var(--terra)}.footer-bottom{flex-wrap:wrap}.footer-bottom a{color:inherit;text-decoration:underline;text-underline-offset:.2em;overflow-wrap:anywhere}
