@font-face{font-family:Titillium Web;src:url('assets/fonts/TitilliumWeb-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Titillium Web;src:url('assets/fonts/TitilliumWeb-SemiBold.ttf') format('truetype');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:Titillium Web;src:url('assets/fonts/TitilliumWeb-Bold.ttf') format('truetype');font-style:normal;font-weight:700;font-display:swap}
:root{--red:#be1934;--ink:#242629;--muted:#565c63;--line:#dce0e3}
*{box-sizing:border-box}body{margin:0;background:#fff;color:var(--ink);font-family:'Titillium Web',sans-serif;-webkit-font-smoothing:antialiased}
.holding{min-height:100svh;display:grid;grid-template-columns:48% 52%;grid-template-areas:'visual content'}
.content{grid-area:content;padding:clamp(36px,4.5vw,76px) clamp(36px,5.5vw,96px) 26px;display:flex;flex-direction:column;min-height:100svh}
.brand img{display:block;width:206px;height:auto}.message{margin:auto 0;padding:64px 0 68px;max-width:610px}
.eyebrow{font-size:11px;letter-spacing:1.7px;font-weight:700;color:var(--red);margin:0 0 23px;display:flex;align-items:center;gap:13px}.eyebrow>span{display:inline-block;width:27px;height:2px;background:var(--red)}
h1{font-size:clamp(40px,3.65vw,64px);line-height:1.08;letter-spacing:-1.4px;font-weight:600;margin:0 0 27px}.dot{color:var(--red)}
.intro{font-size:17px;line-height:1.65;max-width:510px;color:var(--muted);margin:0}
.contact{border-top:1px solid var(--line);margin-top:37px;padding-top:28px}.contact h2{font-weight:600;font-size:18px;line-height:1.4;margin:0 0 25px}.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:24px}.label{display:block;font-size:12px;color:var(--muted);margin-bottom:6px}a{color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;min-height:44px;white-space:nowrap}a:hover{color:var(--red)}a:focus-visible{outline:2px solid var(--red);outline-offset:5px;border-radius:2px}.phone{font-size:23px;font-weight:600;letter-spacing:-.3px}.email{font-size:18px;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#c5c8cd;gap:13px}.email span{color:var(--red);font-size:23px}footer{font-size:11px;color:#6b7076;display:flex;justify-content:space-between;gap:20px}
.visual{grid-area:visual;position:relative;overflow:hidden;background:#343a3e;min-height:100%;isolation:isolate}.project-photo{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:48% 40%;z-index:-3}.shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,24,28,.03) 15%,rgba(18,24,28,.15) 40%,rgba(18,24,28,.88) 100%);z-index:-2}.outline{position:absolute;inset:30px;border:1px solid rgba(255,255,255,.28);z-index:-1}.accent{position:absolute;right:0;top:72px;height:180px;width:6px;background:var(--red)}.accent:before{content:'';position:absolute;width:55px;height:22px;right:14px;top:0;background:repeating-linear-gradient(65deg,transparent 0 6px,rgba(255,255,255,.75) 6px 7px,transparent 7px 12px)}.photo-caption{position:absolute;left:clamp(42px,4.3vw,74px);right:40px;bottom:64px;color:#fff}.caption-label{font-size:11px;letter-spacing:2px;font-weight:600}.photo-caption p{font-size:clamp(35px,3vw,51px);line-height:1.16;letter-spacing:-.6px;font-weight:600;margin:21px 0 24px}.caption-bottom{font-size:14px;color:#e1e4e7}
@media(min-width:1700px){.message{padding:90px 0}.content{padding-left:100px;padding-right:100px}}
@media(max-width:1150px) and (min-width:761px){.content{padding-left:35px;padding-right:35px}.contact-grid{grid-template-columns:1fr;gap:12px}.message{padding:45px 0}h1{font-size:42px}.intro{font-size:16px}}
@media(max-width:760px){.holding{grid-template-columns:1fr;grid-template-areas:'content' 'visual'}.content{padding:30px 26px 24px;min-height:auto}.brand img{width:176px}.message{margin:0;padding:45px 0 40px;max-width:none}.eyebrow{font-size:9px;letter-spacing:1.25px;gap:10px;margin-bottom:21px}h1{font-size:clamp(37px,9.5vw,53px);letter-spacing:-.9px;margin-bottom:23px}.intro{font-size:16px;line-height:1.65}.contact{margin-top:29px;padding-top:25px}.contact h2{font-size:18px;margin-bottom:18px}.contact-grid{grid-template-columns:1fr;gap:14px}.label{margin-bottom:0}.phone{font-size:25px}.email{font-size:19px}footer{font-size:10px}.visual{min-height:520px}.project-photo{object-position:50% 40%}.outline{inset:20px}.photo-caption{left:36px;bottom:43px}.photo-caption p{font-size:37px}.accent{top:40px;height:120px}.caption-label{font-size:10px}}
