:root{--ink:#17191d;--red:#b42025;--cream:#f4f0e8;--white:#fff;--muted:#696a6d}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.55}
a{color:inherit}
header{height:78px;padding:0 clamp(20px,5vw,72px);display:flex;align-items:center;justify-content:space-between;background:var(--white);position:relative;z-index:2}
.brand{font-weight:900;font-size:clamp(19px,3vw,27px);text-decoration:none;letter-spacing:-.03em}.brand span{color:var(--red)}
.topcall,.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 19px;border-radius:3px;font-weight:800;text-decoration:none}
.topcall,.primary{background:var(--red);color:#fff}.topcall:hover,.primary:hover{background:#8e171b}
.hero{min-height:610px;background:linear-gradient(90deg,rgba(8,9,11,.92) 0%,rgba(8,9,11,.76) 43%,rgba(8,9,11,.14) 100%),url('images/IMG_5850.jpeg') center/cover no-repeat;display:flex;align-items:center;color:#fff;padding:70px clamp(22px,8vw,120px)}
.overlay{max-width:760px}.eyebrow{color:#c52a30;font-size:.82rem;font-weight:900;letter-spacing:.18em;margin:0 0 13px}
.hero .eyebrow{color:#ff6267}.hero h1{font-size:clamp(3rem,8vw,6.7rem);line-height:.94;letter-spacing:-.055em;margin:0 0 24px}.lead{font-size:clamp(1rem,2vw,1.3rem);font-weight:700}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.secondary{border:2px solid currentColor;color:#fff}.secondary:hover{background:#fff;color:var(--ink)}
.intro,.work{padding:90px clamp(22px,8vw,120px)}.intro{max-width:990px}.intro h2,.work h2,.quote h2{font-size:clamp(2.2rem,5vw,4.6rem);line-height:1.03;letter-spacing:-.045em;margin:0 0 24px}.intro>p:last-child{max-width:760px;color:var(--muted);font-size:1.12rem}
.services{padding:0 clamp(22px,8vw,120px) 90px;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.services article{background:#fff;border-top:5px solid var(--red);padding:30px 25px;box-shadow:0 10px 30px rgba(0,0,0,.07)}.services h3{font-size:1.25rem;margin:0 0 10px}.services p{color:var(--muted);margin:0}
.work{background:#111317;color:#fff}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.gallery figure{margin:0;aspect-ratio:4/3;overflow:hidden;background:#24262b}.gallery figure.wide{grid-column:span 2}.gallery img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .35s ease}.gallery img:hover{transform:scale(1.025)}
.quote{text-align:center;padding:100px 22px;background:var(--red);color:#fff}.quote .eyebrow{color:#fff}.quote p{max-width:690px;margin-left:auto;margin-right:auto}.centered{justify-content:center}.quote .primary{background:#fff;color:var(--red)}.quote .light{color:#fff}
footer{padding:34px clamp(22px,8vw,120px);display:flex;gap:20px;flex-wrap:wrap;align-items:center;background:#08090b;color:#fff}footer strong{margin-right:auto}footer a{color:#fff}
@media(max-width:850px){.services{grid-template-columns:repeat(2,1fr)}.gallery{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){header{height:auto;padding:16px 18px;gap:12px}.brand{max-width:145px;line-height:1}.topcall{min-height:44px;padding:9px 12px;font-size:.9rem}.hero{min-height:560px;padding:55px 22px;background-position:58% center}.services{grid-template-columns:1fr}.gallery{grid-template-columns:1fr}.gallery figure.wide{grid-column:auto}.intro,.work{padding:70px 22px}footer{flex-direction:column;align-items:flex-start}footer strong{margin-right:0}}
