:root{
  --ink:#17191b;--graphite:#2e3133;--paper:#f8f8f6;--white:#fff;
  --gray:#858b90;--line:#d9d9d4;--copper:#a66a3f;--copper-dark:#835132;
  --max:1440px;--text:780px;--header:140px;--ease:cubic-bezier(.2,.7,.2,1)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);line-height:1.58;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.wrap{width:min(calc(100% - 72px),var(--max));margin:auto}.accent{color:var(--copper)}
.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:.18em;font-weight:800}.eyebrow{font-size:.82rem}.section-kicker{font-size:clamp(.9rem,1vw,1.05rem);margin-bottom:14px}.skip-link{position:fixed;left:12px;top:-80px;z-index:200;background:#fff;color:#000;padding:12px 16px}.skip-link:focus{top:12px}

/* Header / Concept B wordmark */
.site-header{position:fixed;z-index:100;top:0;left:0;width:100%;height:var(--header);display:flex;align-items:center;color:#fff;border-bottom:1px solid rgba(255,255,255,.15);background:linear-gradient(to bottom,rgba(0,0,0,.58),rgba(0,0,0,.04));transition:background .3s,border-color .3s,color .3s,box-shadow .3s}.site-header.scrolled,.site-header.light{background:rgba(248,248,246,.98);color:var(--ink);border-color:var(--line);box-shadow:0 8px 28px rgba(0,0,0,.05);backdrop-filter:blur(14px)}.header-inner{display:flex;align-items:center;justify-content:space-between;height:100%}
.brand-mark{position:relative;display:flex;align-items:center;width:220px;height:116px;max-width:30vw;line-height:1;flex:0 0 auto;overflow:visible}.brand-logo{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}.brand-logo-light{position:absolute;inset:0;opacity:1;transition:opacity .25s var(--ease)}.brand-logo-dark{opacity:0;transition:opacity .25s var(--ease)}.site-header.scrolled .brand-logo-dark,.site-header.light .brand-logo-dark{opacity:1}.site-header.scrolled .brand-logo-light,.site-header.light .brand-logo-light{opacity:0}.footer .brand-mark{width:235px;height:auto;max-width:100%}.footer .brand-logo-dark{display:none}.footer .brand-logo-light{position:static;opacity:1}
.nav{display:flex;align-items:center;gap:34px;font-size:.75rem;letter-spacing:.14em;font-weight:800}.nav a{position:relative}.nav a:not(.nav-cta):after{content:'';position:absolute;left:0;bottom:-8px;width:0;height:1px;background:currentColor;transition:width .2s}.nav a:hover:after,.nav a[aria-current="page"]:after{width:100%}.nav-cta{border:1px solid var(--copper);padding:15px 20px;color:#fff;background:var(--copper);transition:.2s}.nav-cta:hover{background:var(--copper-dark);border-color:var(--copper-dark)}.menu-toggle{display:none;background:none;border:0;color:inherit;font-weight:800;letter-spacing:.12em;padding:10px 0;cursor:pointer}

/* Home hero */
.hero{min-height:100svh;display:flex;align-items:flex-end;position:relative;color:#fff;background:center/cover no-repeat;padding:calc(var(--header) + 80px) 0 74px;isolation:isolate}.hero:before{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.84) 0%,rgba(0,0,0,.62) 45%,rgba(0,0,0,.20) 100%)}.hero:after{content:'';position:absolute;z-index:-1;inset:auto 0 0;height:30%;background:linear-gradient(to top,rgba(0,0,0,.45),transparent)}.hero-content{width:min(900px,72vw)}.hero .eyebrow{font-size:clamp(.86rem,1vw,1.02rem)}.hero h1{font-family:"Arial Black",Arial,Helvetica,sans-serif;font-size:clamp(3.8rem,5.75vw,6.55rem);font-weight:900;line-height:.88;letter-spacing:-.055em;margin:20px 0 18px;text-transform:uppercase}.hero .starts{font-size:clamp(1.9rem,2.5vw,2.8rem);margin-bottom:12px;color:#d99a58;font-weight:400}.hero .tagline{font-size:clamp(1.15rem,1.6vw,1.55rem);letter-spacing:.075em;margin-bottom:18px}.hero p{max-width:680px;font-size:clamp(.98rem,1.15vw,1.08rem);color:rgba(255,255,255,.84)}.actions{display:flex;gap:30px;flex-wrap:wrap;margin-top:28px}.text-link{display:inline-flex;gap:12px;align-items:center;text-transform:uppercase;letter-spacing:.13em;font-weight:800;font-size:.76rem;padding:11px 0;border-bottom:1px solid var(--copper);transition:gap .2s,color .2s}.text-link:hover{gap:18px;color:var(--copper)}.text-link span{color:var(--copper);font-size:1.15rem}.button{display:inline-block;padding:15px 22px;background:var(--copper);color:#fff;text-transform:uppercase;letter-spacing:.1em;font-size:.76rem;font-weight:800;border:1px solid var(--copper);transition:.2s}.button:hover{background:var(--copper-dark);border-color:var(--copper-dark)}.button.secondary{background:transparent;color:inherit}.button.secondary:hover{background:var(--copper);color:#fff}

.proof-strip{background:#111315;color:#fff;border-top:1px solid rgba(255,255,255,.14)}.proof-grid{display:grid;grid-template-columns:1.15fr repeat(3,1fr);align-items:stretch}.proof-intro,.proof-item{padding:31px 30px;border-right:1px solid rgba(255,255,255,.16)}.proof-item:last-child{border-right:0}.proof-intro{padding-left:0}.proof-intro strong{font-size:1.1rem}.proof-item strong{display:block;font-size:clamp(1.65rem,2vw,2.2rem);line-height:1;color:#fff}.proof-item.featured strong{font-family:"Arial Black",Arial,sans-serif;font-size:clamp(3rem,4.5vw,5rem);color:var(--copper);letter-spacing:-.06em}.proof-item span{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.13em;color:#aaa;margin-top:7px}

.section{padding:118px 0}.section.white{background:#fff}.section.dark{background:#101112;color:#fff}.section.soft{background:#efefec}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:34px;margin-bottom:48px}.section h2{font-family:"Arial Black",Arial,Helvetica,sans-serif;font-size:clamp(2.5rem,4.2vw,4.9rem);line-height:.95;letter-spacing:-.045em;margin:10px 0 0}.lead{font-size:1.12rem;max-width:720px;color:#555}.dark .lead{color:#c2c4c5}

/* Work cards: predictable, no collapsing portrait cards */
.home-work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.project-card{position:relative;aspect-ratio:16/10;overflow:hidden;background:#222;color:#fff;min-width:0}.project-card img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform .65s var(--ease),filter .35s}.project-card:after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.84),rgba(0,0,0,.02) 68%)}.project-card:hover img{transform:scale(1.035);filter:saturate(1.04)}.project-info{position:absolute;z-index:2;left:26px;right:50px;bottom:23px}.project-info h3{margin:0;font-size:1rem;text-transform:uppercase;letter-spacing:.045em}.project-info p{margin:4px 0 0;font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;color:#eee}.project-card .arrow{position:absolute;right:25px;bottom:22px;z-index:3;color:#d99a58;font-size:1.2rem}.focus-top img{object-position:center top}.focus-left img{object-position:left center}.focus-right img{object-position:right center}

.manifesto{display:grid;grid-template-columns:1.05fr 1fr;gap:90px;align-items:start}.manifesto h2{font-size:clamp(2.7rem,4.6vw,5.2rem)}.manifesto-copy{font-size:1.08rem;max-width:650px}.manifesto-copy p:first-child{font-size:1.22rem}

.pillars{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.pillar{padding:44px 30px 48px;border-right:1px solid var(--line)}.pillar:last-child{border-right:0}.pillar-number{font-family:"Arial Black",Arial,sans-serif;font-size:clamp(1.45rem,2vw,2rem);line-height:1;color:var(--copper);font-weight:900;letter-spacing:-.04em}.pillar h3{font-size:1.22rem;margin:39px 0 12px}.pillar p{font-size:.92rem;color:#555}

.cap-grid{display:grid;grid-template-columns:1.05fr 1.75fr;gap:60px;align-items:start}.cap-grid>.cap-copy .section-kicker{color:var(--copper)}.cap-list{display:grid;grid-template-columns:repeat(2,1fr);gap:4px}.cap-item{min-height:240px;position:relative;padding:26px;background:#1b1d1f;overflow:hidden;display:flex;align-items:flex-end}.cap-item img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.42;transition:.5s}.cap-item:after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.86),transparent)}.cap-item:hover img{transform:scale(1.035)}.cap-item h3{position:relative;z-index:2;margin:0;font-size:1rem;text-transform:uppercase;letter-spacing:.045em}

.audience{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.audience article{padding:38px 25px;border-right:1px solid var(--line)}.audience article:last-child{border:0}.audience h3{font-size:.94rem;text-transform:uppercase;letter-spacing:.025em}.audience p{font-size:.86rem;color:#666}

.process-feature .section-head h2{font-size:clamp(3rem,4.8vw,5.7rem);max-width:1060px}.process{display:grid;grid-template-columns:repeat(5,1fr);counter-reset:steps}.step{padding:28px 26px;border-left:1px solid #5e6163;min-height:225px;counter-increment:steps}.step:before{content:'0' counter(steps);font-family:"Arial Black",Arial,sans-serif;color:var(--copper);font-weight:900;font-size:clamp(1.45rem,2vw,2rem);line-height:1}.step h3{margin-top:66px;font-size:.96rem;text-transform:uppercase;letter-spacing:.04em}

/* Real US map */
.map-section{background:#efefec;padding:104px 0}.map-layout{display:grid;grid-template-columns:.72fr 1.45fr;gap:70px;align-items:center}.map-copy h2{font-size:clamp(3rem,4.6vw,5.5rem)}.map-visual{position:relative;width:100%;max-width:920px;margin-left:auto}.map-visual>img{width:100%;height:auto;opacity:.72;filter:grayscale(1);mix-blend-mode:multiply}.map-pin{position:absolute;width:13px;height:13px;border-radius:50%;background:var(--ink);border:2px solid #efefec;box-shadow:0 0 0 1px rgba(0,0,0,.15);transform:translate(-50%,-50%);cursor:default}.map-pin.texas{width:20px;height:20px;background:var(--copper);box-shadow:0 0 0 4px var(--ink)}.map-pin:after{content:attr(data-label);position:absolute;left:50%;bottom:calc(100% + 9px);transform:translateX(-50%) translateY(4px);background:#111;color:#fff;font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;padding:6px 8px;opacity:0;pointer-events:none;transition:.2s}.map-pin:hover:after{opacity:1;transform:translateX(-50%) translateY(0)}
.pin-pch{left:15.5%;top:54%}.pin-lubbock{left:43%;top:57%}.pin-forthood{left:46%;top:65%}.pin-sanantonio{left:47%;top:70%}.pin-miami{left:79%;top:80%}.pin-pinellas{left:75%;top:75%}.pin-utica{left:82%;top:34%}.pin-brooklyn{left:85%;top:42%}

.cta{padding:82px 0;background:#151617;color:#fff}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:38px}.cta h2{font-family:"Arial Black",Arial,sans-serif;font-size:clamp(2.3rem,4.3vw,5rem);line-height:.98;letter-spacing:-.04em;max-width:850px;margin:0}.footer{background:#080909;color:#fff;padding:46px 0}.footer-grid{display:grid;grid-template-columns:1.35fr 2fr;gap:40px;align-items:end}.footer nav{display:flex;justify-content:flex-end;gap:25px;font-size:.69rem;text-transform:uppercase;letter-spacing:.09em}.footer small{color:#999}.footer-meta{margin-top:13px}

/* Interior pages */
.page-hero{padding:190px 0 105px;background:#161718;color:#fff}.page-hero .section-kicker,.page-hero .eyebrow{font-size:clamp(.95rem,1.1vw,1.1rem)}.page-hero h1{font-family:"Arial Black",Arial,sans-serif;font-size:clamp(3.6rem,6.3vw,6.9rem);line-height:.9;letter-spacing:-.05em;margin:14px 0}.page-hero p{font-size:1.15rem;max-width:790px;color:#d0d0d0}.prose{max-width:820px}.prose h2{font-size:2.5rem}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.info-card{background:#fff;padding:36px 34px 42px;border-top:3px solid var(--copper)}.info-card>.eyebrow{font-family:"Arial Black",Arial,sans-serif;font-size:clamp(1.35rem,1.8vw,1.8rem);line-height:1;letter-spacing:-.035em}.info-card h3{font-size:1.18rem;margin-top:28px}.info-card p{font-size:.95rem;color:#444}
.filter-bar{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 34px}.filter-button{border:1px solid var(--line);background:transparent;padding:10px 14px;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;cursor:pointer}.filter-button.active,.filter-button:hover{background:var(--ink);border-color:var(--ink);color:#fff}.portfolio-grid .project-card[hidden]{display:none}

.project-hero{height:78svh;min-height:570px;position:relative;background:center/cover no-repeat;color:#fff;display:flex;align-items:flex-end}.project-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.88),rgba(0,0,0,.1) 68%)}.project-hero-content{position:relative;z-index:2;padding-bottom:74px}.project-hero h1{font-family:"Arial Black",Arial,sans-serif;font-size:clamp(3.2rem,6.2vw,6.8rem);line-height:.9;letter-spacing:-.05em;margin:11px 0}.project-hero p{max-width:820px;font-size:1.1rem}.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);margin-top:40px}.fact{background:var(--paper);padding:27px}.fact strong{display:block;text-transform:uppercase;letter-spacing:.09em;font-size:.66rem;color:#666;margin-bottom:8px}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.gallery{display:grid;grid-template-columns:2fr 1fr;gap:13px}.gallery img{width:100%;height:100%;object-fit:cover;min-height:320px}.gallery img:first-child{grid-row:span 2;min-height:650px}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:21px}.field{display:flex;flex-direction:column;gap:8px}.field.full{grid-column:1/-1}.field label{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.field input,.field textarea,.field select{padding:14px;border:1px solid #bbb;background:#fff}.field input:focus,.field textarea:focus,.field select:focus{outline:2px solid rgba(166,106,63,.25);border-color:var(--copper)}.field textarea{min-height:160px}.notice{padding:16px;background:#e9efe6;border-left:4px solid #57814a;margin-bottom:20px}.notice.error{background:#f5e7e4;border-color:#a84535}.form-note{font-size:.8rem;color:#666}.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.reveal.in-view{opacity:1;transform:none}

@media(max-width:1050px){.nav{display:none}.menu-toggle{display:block}.site-header.open{background:var(--paper);color:var(--ink)}.site-header.open .nav{display:flex;position:absolute;top:var(--header);left:0;width:100%;background:var(--paper);color:var(--ink);flex-direction:column;align-items:flex-start;padding:32px 36px;box-shadow:0 20px 35px rgba(0,0,0,.11)}.hero-content{width:min(800px,88vw)}.proof-grid{grid-template-columns:repeat(2,1fr)}.proof-intro{grid-column:1/-1;border-bottom:1px solid rgba(255,255,255,.16)}.home-work-grid{grid-template-columns:repeat(2,1fr)}.manifesto,.cap-grid,.story-grid,.map-layout{grid-template-columns:1fr}.pillars{grid-template-columns:repeat(2,1fr)}.audience{grid-template-columns:repeat(2,1fr)}.process{grid-template-columns:repeat(2,1fr)}.facts{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr}.footer nav{justify-content:flex-start;flex-wrap:wrap}.gallery{grid-template-columns:1fr 1fr}.gallery img:first-child{grid-column:1/-1;grid-row:auto;min-height:470px}.map-visual{margin:20px auto 0}}
@media(max-width:700px){.wrap{width:min(calc(100% - 34px),var(--max))}.site-header{height:94px}.brand-mark{width:150px;height:79px;max-width:48vw}.hero{padding-top:146px;padding-bottom:55px;min-height:100svh}.hero-content{width:100%}.hero h1{font-size:clamp(3.25rem,15vw,4.7rem)}.hero p{font-size:.96rem}.section{padding:82px 0}.proof-grid{grid-template-columns:1fr}.proof-intro,.proof-item{border-right:0;border-bottom:1px solid rgba(255,255,255,.16);padding-left:0}.section-head{display:block}.section-head>.text-link{margin-top:20px}.home-work-grid,.portfolio-grid,.cards,.form-grid,.related-grid{grid-template-columns:1fr}.project-card{aspect-ratio:4/3}.pillars,.audience,.process,.facts{grid-template-columns:1fr}.pillar,.audience article{border-right:0;border-bottom:1px solid var(--line)}.cap-list{grid-template-columns:1fr}.cta-inner{display:block}.cta .button{margin-top:27px}.gallery{display:block}.gallery img{margin-bottom:13px;min-height:270px}.gallery img:first-child{min-height:370px}.footer nav{gap:17px}.page-hero{padding-top:150px}.map-section{padding:80px 0}.map-layout{gap:32px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.project-card img,.cap-item img{transition:none}}
