
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--red:#d71920;--red2:#a60f16;--black:#0a0a0a;--cream:#f4f1eb;--white:#fff;--grey:#747474;--line:#d9d6d0;--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--black);font-family:"DM Sans",Arial,sans-serif;overflow-x:hidden}a{text-decoration:none;color:inherit}
.container{width:min(var(--max),90vw);margin:auto}.mono{font-family:"Space Grotesk",sans-serif}.red{color:var(--red)}
/* completely different visual system: editorial / Swiss / asymmetric */
.topline{background:var(--red);color:#fff;padding:9px 5vw;font-size:11px;display:flex;justify-content:space-between;letter-spacing:.04em}
.topline a{text-decoration:underline}
header{background:var(--cream);border-bottom:1px solid var(--black);position:relative;z-index:10}.nav{height:92px;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:13px}.brand img{width:74px;height:70px;object-fit:contain}.brand strong{font:700 19px/1 "Space Grotesk"}.brand small{display:block;margin-top:5px;font-size:9px;letter-spacing:.18em;font-weight:700}
.navlinks{display:flex;align-items:center;gap:27px;font:600 12px "Space Grotesk";text-transform:uppercase}.navlinks a{position:relative;padding:10px 0}.navlinks a:after{content:"";position:absolute;left:0;bottom:4px;width:0;height:2px;background:var(--red);transition:.25s}.navlinks a:hover:after{width:100%}.navlinks .talk{background:var(--black);color:#fff;padding:13px 18px}.navlinks .talk:after{display:none}.hamb{display:none;border:0;background:none;font-size:25px}
/* hero */
.hero{min-height:720px;display:grid;grid-template-columns:62% 38%;border-bottom:1px solid var(--black);position:relative}
.hero-main{padding:80px 5vw 90px;display:flex;flex-direction:column;justify-content:space-between;min-height:720px}
.kicker{font:700 11px "Space Grotesk";letter-spacing:.18em;text-transform:uppercase}.hero h1{font:700 clamp(62px,9.5vw,142px);line-height:.83;letter-spacing:-.075em;margin:70px 0 40px;max-width:900px}.hero h1 span{display:block}.hero h1 .outline{color:transparent;-webkit-text-stroke:2px var(--black)}
.hero-bottom{display:flex;justify-content:space-between;gap:30px;align-items:end}.hero-copy{max-width:490px;font-size:16px;line-height:1.55}.arrow{font-size:55px;line-height:.7}.hero-side{background:var(--black);color:#fff;display:flex;flex-direction:column;justify-content:flex-end;padding:42px 5vw 48px;position:relative;overflow:hidden}.hero-side:before{content:"A";position:absolute;font:700 390px/1 "Space Grotesk";color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.14);right:-30px;top:-10px}.side-content{position:relative;z-index:1}.side-number{font:700 88px/1 "Space Grotesk";color:var(--red)}.hero-side h2{font:600 34px/1.03 "Space Grotesk";max-width:320px;margin:15px 0}.hero-side p{color:#bbb;max-width:330px;font-size:13px}
/* ticker */
.ticker{overflow:hidden;background:var(--red);color:#fff;border-bottom:1px solid var(--black);white-space:nowrap}.ticker-track{display:inline-block;padding:15px 0;font:700 13px "Space Grotesk";letter-spacing:.08em;text-transform:uppercase;animation:marquee 22s linear infinite}.ticker-track span{margin:0 28px}@keyframes marquee{to{transform:translateX(-50%)}}
/* section */
.section{padding:120px 0;border-bottom:1px solid var(--line)}.section.black{background:var(--black);color:#fff;border-color:#333}.section.red{background:var(--red);color:#fff;border-color:var(--black)}
.section-head{display:grid;grid-template-columns:28% 72%;gap:30px;margin-bottom:65px}.section-label{font:700 11px "Space Grotesk";letter-spacing:.15em;text-transform:uppercase}.section-head h2{font:600 clamp(42px,6vw,78px);line-height:.94;letter-spacing:-.055em;margin:0;max-width:900px}.section-head p{color:var(--grey);font-size:15px;max-width:650px;margin-top:25px}.black .section-head p{color:#aaa}.red .section-head p{color:#ffd5d5}
/* services */
.service-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid currentColor}.service{padding:30px 20px 36px 0;border-bottom:1px solid currentColor;display:grid;grid-template-columns:65px 1fr;gap:20px;min-height:210px}.service:nth-child(odd){border-right:1px solid currentColor;padding-right:45px}.service:nth-child(even){padding-left:45px}.service-num{font:500 16px "Space Grotesk";color:var(--red)}.black .service-num{color:#ff4b52}.service h3{font:600 29px/1 "Space Grotesk";margin:0 0 14px}.service p{font-size:13px;line-height:1.7;color:var(--grey);max-width:470px}.black .service p{color:#aaa}
/* manifesto / process */
.process{display:grid;grid-template-columns:1fr 1fr 1fr;border-top:1px solid var(--black)}.step{padding:35px 30px 35px 0;border-right:1px solid var(--black);min-height:240px}.step:last-child{border-right:0;padding-left:30px}.step:nth-child(2){padding-left:30px}.step b{font:700 54px/1 "Space Grotesk";color:var(--red)}.step h3{font:600 25px "Space Grotesk";margin:20px 0 9px}.step p{font-size:13px;color:#666;max-width:310px}
/* local */
.local-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:0}.local-big{font:600 clamp(48px,7vw,95px);line-height:.9;letter-spacing:-.06em;padding-right:60px}.local-box{border-left:1px solid #fff;padding-left:40px}.local-box h3{font:600 26px "Space Grotesk"}.local-box p{color:#aaa;font-size:13px;line-height:1.7}
/* FAQ */
.faq{max-width:930px;margin-left:auto}.faq-item{border-top:1px solid var(--black)}.faq-item:last-child{border-bottom:1px solid var(--black)}.faq-q{width:100%;background:none;border:0;padding:23px 0;text-align:left;display:flex;justify-content:space-between;align-items:center;font:600 20px "Space Grotesk";cursor:pointer}.faq-q span:last-child{font-size:25px;color:var(--red);transition:.25s}.faq-a{display:grid;grid-template-rows:0fr;transition:.3s}.faq-a>div{overflow:hidden}.faq-a p{font-size:14px;color:#666;max-width:750px;margin:0 0 25px}.faq-item.open .faq-a{grid-template-rows:1fr}.faq-item.open .faq-q span:last-child{transform:rotate(45deg)}
/* contact */
.contact-strip{display:grid;grid-template-columns:1fr 1fr;background:var(--black);color:#fff}.contact-left{padding:85px 6vw}.contact-left h2{font:600 clamp(45px,6vw,80px)/.92 "Space Grotesk";letter-spacing:-.06em;margin:18px 0}.contact-left p{color:#aaa;max-width:500px}.contact-right{background:var(--red);padding:85px 6vw;display:flex;flex-direction:column;justify-content:center}.contact-detail{border-bottom:1px solid rgba(255,255,255,.35);padding:19px 0}.contact-detail small{display:block;text-transform:uppercase;font:700 9px "Space Grotesk";letter-spacing:.16em;opacity:.75}.contact-detail a,.contact-detail div{font:500 22px "Space Grotesk";margin-top:5px;display:block}
/* footer */
footer{background:var(--cream);padding:55px 0 25px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:30px}.footer-brand img{width:80px}.footer-brand p{font-size:12px;color:#666;max-width:300px;margin-top:12px}.footer-col h4{font:700 10px "Space Grotesk";text-transform:uppercase;letter-spacing:.16em;margin-bottom:16px}.footer-col a,.footer-col p{font-size:12px;color:#666;display:block;margin:7px 0}.footer-bottom{border-top:1px solid var(--line);margin-top:45px;padding-top:16px;display:flex;justify-content:space-between;font-size:10px;color:#777}
/* inner pages */
.page-hero{background:var(--black);color:#fff;padding:100px 0;border-bottom:1px solid #333}.page-hero h1{font:600 clamp(55px,9vw,120px)/.86 "Space Grotesk";letter-spacing:-.07em;max-width:1000px;margin:25px 0}.page-hero p{color:#aaa;max-width:600px;font-size:15px}.crumb{font:700 10px "Space Grotesk";letter-spacing:.15em;text-transform:uppercase;color:#ff555d}
.inner-copy{display:grid;grid-template-columns:28% 72%;gap:30px}.inner-copy h2{font:600 clamp(40px,5vw,68px)/.95 "Space Grotesk";letter-spacing:-.05em;margin:0}.inner-copy p{color:#666;font-size:15px;max-width:720px;margin-bottom:18px}.points{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--black);margin-top:55px}.point{padding:25px 20px 25px 0;border-bottom:1px solid var(--black)}.point:nth-child(odd){border-right:1px solid var(--black)}.point:nth-child(even){padding-left:25px}.point h3{font:600 23px "Space Grotesk";margin-bottom:8px}.point p{font-size:12px;margin:0}
/* animation */
.reveal{opacity:0;transform:translateY(25px);transition:.7s cubic-bezier(.2,.7,.2,1)}.reveal.show{opacity:1;transform:none}
.cursor-dot{position:fixed;width:10px;height:10px;border-radius:50%;background:var(--red);pointer-events:none;z-index:9999;mix-blend-mode:multiply;transform:translate(-50%,-50%);display:none}
@media(min-width:1000px){body{cursor:default}.cursor-dot{display:block}}
@media(max-width:900px){
 .topline{justify-content:center}.nav{height:78px}.navlinks{display:none;position:absolute;top:78px;left:0;right:0;background:var(--cream);border-bottom:1px solid var(--black);padding:15px 5vw;flex-direction:column;align-items:flex-start}.navlinks.open{display:flex}.hamb{display:block}
 .hero{grid-template-columns:1fr}.hero-main{min-height:650px;padding:70px 5vw}.hero-side{min-height:420px;padding:55px 5vw}.hero h1{margin-top:55px}.section-head,.inner-copy{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr}.service:nth-child(odd),.service:nth-child(even){border-right:0;padding-left:0;padding-right:0}.process{grid-template-columns:1fr}.step,.step:nth-child(2),.step:last-child{border-right:0;border-bottom:1px solid var(--black);padding:30px 0}.local-grid,.contact-strip{grid-template-columns:1fr}.local-box{border-left:0;border-top:1px solid #fff;padding:35px 0 0;margin-top:45px}.contact-left,.contact-right{padding:65px 7vw}.footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
 .topline{font-size:10px}.brand strong{font-size:15px}.brand img{width:62px;height:60px}.hero h1{font-size:58px}.hero-bottom{flex-direction:column;align-items:flex-start}.section{padding:78px 0}.section-head{margin-bottom:42px}.service{grid-template-columns:45px 1fr}.service h3{font-size:24px}.points{grid-template-columns:1fr}.point:nth-child(odd){border-right:0}.point:nth-child(even){padding-left:0}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:8px}
}
