.page-shell,.page-section,.cta-strip{max-width:var(--container);margin:0 auto;padding-left:var(--gutter);padding-right:var(--gutter)}
.page-hero{padding:170px 0 92px;border-bottom:1px solid var(--line);position:relative;overflow:hidden}
.page-hero::after{content:"";position:absolute;width:50vw;height:50vw;right:-12vw;top:20px;border:1px solid var(--line);border-radius:46% 54% 62% 38%;transform:rotate(24deg);box-shadow:0 0 0 38px rgba(20,20,15,.018),0 0 0 78px rgba(20,20,15,.012);pointer-events:none}
.page-hero__content{position:relative;z-index:1;max-width:760px}.page-kicker{font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:24px}
.page-title{font-family:var(--font-display);font-size:clamp(3rem,6.4vw,5.6rem);font-weight:500;line-height:.96;letter-spacing:-.035em;margin-bottom:30px}.page-title em{display:block;color:var(--graphite);font-weight:400}
.page-intro{font-size:1.05rem;line-height:1.8;color:var(--ink-soft);max-width:57ch}.page-section{padding-top:105px;padding-bottom:105px}.page-section--tight{padding-top:40px}.section-head{text-align:center;max-width:680px;margin:0 auto 54px}.section-head .section-label{margin-bottom:14px}.section-head p{color:var(--ink-soft);margin-top:14px;line-height:1.7}
.editorial-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:26px}.project{grid-column:span 6;display:block}.project--featured{grid-column:span 8}.project--side{grid-column:span 4}.project--wide{grid-column:1/-1}.project__visual{aspect-ratio:16/10;border-radius:var(--radius-m);overflow:hidden;position:relative;background:var(--ink);margin-bottom:20px;transition:transform var(--dur-med) var(--ease)}.project--side .project__visual{aspect-ratio:4/5}.project__visual--wide{aspect-ratio:2.2/1}.project__preview{width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform var(--dur-med) var(--ease)}.project:hover .project__visual{transform:translateY(-5px)}.project:hover .project__preview{transform:scale(1.018)}
.project__visual::before,.project__visual::after{content:"";position:absolute}.project__visual--flow{background:linear-gradient(145deg,#102334,#1a4053)}.project__visual--flow::before{inset:14% 9%;border:1px solid rgba(255,255,255,.3);border-radius:8px;background:linear-gradient(110deg,transparent 54%,rgba(255,255,255,.08) 55%)}.project__visual--flow::after{width:48%;height:1px;background:#dfe8ec;right:13%;top:54%;transform:rotate(-13deg);box-shadow:-25px 30px 0 rgba(255,255,255,.35),35px -25px 0 rgba(255,255,255,.15)}
.project__visual--home{background:linear-gradient(155deg,#d8d1c0,#6b6559)}.project__visual--home::before{width:70%;height:54%;left:15%;bottom:15%;background:#262722;clip-path:polygon(0 38%,50% 0,100% 38%,94% 100%,7% 100%)}
.project__visual--fit{background:linear-gradient(145deg,#191a1c,#2e3137)}.project__visual--fit::before{width:42%;height:76%;left:29%;top:12%;border:4px solid #090a0b;border-radius:26px;background:radial-gradient(circle at 50% 42%,#5f8f88 0 14%,#21282b 15% 30%,#111 31%)}
.project__visual--brand{background:linear-gradient(135deg,#111,#2d261e)}.project__visual--brand::before{content:"A";inset:0;display:grid;place-items:center;color:#c7a66a;font:italic 7rem var(--font-display)}
.project__meta{display:flex;justify-content:space-between;gap:18px}.project__title{font:500 1.6rem var(--font-display)}.project__desc{font-size:.88rem;color:var(--ink-soft);line-height:1.6;margin:5px 0 10px}.tag{font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:var(--graphite)}
.service-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:90px 1fr 1.35fr;gap:30px;padding:38px 0;border-bottom:1px solid var(--line);transition:padding-left var(--dur-fast) var(--ease)}.service-row:hover{padding-left:12px}.service-row__num{font:500 1.3rem var(--font-display);color:var(--graphite)}.service-row h2{font:500 clamp(1.5rem,3vw,2.4rem) var(--font-display)}.service-row p{color:var(--ink-soft);line-height:1.75}
.steps{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--line);border-radius:var(--radius-m)}.step{padding:32px 24px;min-height:220px;border-right:1px solid var(--line)}.step:last-child{border:0}.step__num{display:block;font:500 1.4rem var(--font-display);margin-bottom:44px}.step h3{font:500 1.25rem var(--font-display);margin-bottom:10px}.step p{font-size:.82rem;line-height:1.6;color:var(--ink-soft)}
.about-lead{display:grid;grid-template-columns:1fr .78fr;gap:80px;align-items:start}.about-copy h2{font:500 clamp(2rem,4vw,3.7rem)/1.05 var(--font-display);margin-bottom:30px}.about-copy p{color:var(--ink-soft);line-height:1.85;margin-bottom:18px}.portrait-stack{display:grid;grid-template-columns:1fr 1fr;gap:14px}.portrait-stack img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:var(--radius-m);filter:grayscale(1)}.portrait-stack img:last-child{margin-top:70px}
.thinking{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.thinking__questions{font:500 clamp(1.55rem,3vw,2.6rem)/1.3 var(--font-display)}.thinking__questions li{padding:14px 0;border-bottom:1px solid var(--line)}.duality{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius-m);overflow:hidden}.duality article{background:var(--paper);padding:48px}.duality h3{font:500 2rem var(--font-display);margin-bottom:18px}.duality p{color:var(--ink-soft);line-height:1.75}.skills{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.skill-group{border-top:1px solid var(--ink);padding-top:18px}.skill-group h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:15px}.skill-group p{font:500 1.1rem/1.7 var(--font-display);color:var(--ink-soft)}
.contact-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:72px}.contact-aside h2{font:500 clamp(2rem,4vw,3.4rem)/1.05 var(--font-display);margin-bottom:25px}.contact-aside p{color:var(--ink-soft);line-height:1.8}.direct-links{margin-top:50px;border-top:1px solid var(--line)}.direct-links a{display:flex;justify-content:space-between;padding:20px 0;border-bottom:1px solid var(--line);font-size:.9rem}.contact-form{padding:42px;border:1px solid var(--line);border-radius:var(--radius-m);background:rgba(255,255,255,.38);box-shadow:0 20px 60px rgba(20,20,15,.04)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:flex;flex-direction:column;gap:8px}.field--wide{grid-column:1/-1}.field label{font-size:.75rem;font-weight:600;letter-spacing:.05em}.field input,.field select,.field textarea{width:100%;padding:15px 0;border:0;border-bottom:1px solid var(--line-strong);background:transparent;color:var(--ink);font:inherit;outline:0;border-radius:0}.field textarea{resize:vertical;min-height:120px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--ink);box-shadow:0 1px 0 var(--ink)}.form-status{font-size:.84rem;min-height:1.5em;margin-top:15px;color:var(--ink-soft)}
.closing{text-align:center;padding:100px var(--gutter)}.closing blockquote{font:500 clamp(2rem,4.5vw,4rem)/1.12 var(--font-display);max-width:900px;margin:0 auto}.closing em{color:var(--graphite)}
.cta-strip{margin-top:20px;margin-bottom:80px}.cta-strip__inner{background:var(--paper-alt);border:1px solid var(--line);border-radius:var(--radius-m);padding:32px 44px;display:flex;align-items:center;justify-content:space-between;gap:30px}.cta-strip h2{font:500 clamp(1.5rem,3vw,2.2rem) var(--font-display)}.footer-nav{display:flex;flex-wrap:wrap;gap:10px 18px;font-size:.78rem;color:var(--ink-soft)}.nav-link.is-active::after{width:100%}.mobile-menu__link.is-active{font-style:italic;color:var(--graphite)}
@media(max-width:1024px){.project--featured,.project--side,.project{grid-column:span 6}.project--wide{grid-column:1/-1}.steps{grid-template-columns:repeat(3,1fr)}.step{border-bottom:1px solid var(--line)}.about-lead,.thinking,.contact-layout{grid-template-columns:1fr;gap:50px}.skills{grid-template-columns:repeat(3,1fr)}}
@media(max-width:768px){.page-hero{padding:132px 0 72px}.page-section{padding-top:76px;padding-bottom:76px}.project--featured,.project--side,.project{grid-column:1/-1}.project--side .project__visual,.project__visual--wide{aspect-ratio:16/10}.service-row{grid-template-columns:50px 1fr}.service-row p{grid-column:2}.steps{grid-template-columns:1fr 1fr}.duality{grid-template-columns:1fr}.skills{grid-template-columns:1fr 1fr}.contact-form{padding:28px}.form-grid{grid-template-columns:1fr}.cta-strip__inner{align-items:flex-start;flex-direction:column}}
@media(max-width:480px){.page-title{font-size:2.8rem}.steps,.skills{grid-template-columns:1fr}.step{border-right:0}.portrait-stack{gap:8px}.portrait-stack img:last-child{margin-top:35px}.duality article{padding:32px 24px}.contact-form{padding:22px}.cta-strip__inner{padding:26px 22px}}
