:root{
  --ink:#171613;
  --paper:#eee8dc;
  --warm:#c9bba7;
  --rust:#9a4b37;
  --blue:#233b8f;
  --line:rgba(23,22,19,.18);
  --max:1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,system-ui,sans-serif;line-height:1.6}
a{color:inherit;text-decoration:none}
.grain{position:fixed;inset:0;pointer-events:none;z-index:100;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.035'/%3E%3C/svg%3E");mix-blend-mode:multiply}
.site-header{height:84px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:20;background:rgba(238,232,220,.92);backdrop-filter:blur(10px);position:sticky;top:0}
.brand{font-size:13px;letter-spacing:.16em;line-height:1}
.brand strong{display:block;font-size:17px;letter-spacing:.08em;margin-top:5px}
.nav{display:flex;gap:34px;font-size:12px;text-transform:uppercase;letter-spacing:.12em}
.nav a{position:relative}
.nav a:after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:1px;background:currentColor;transition:.25s}
.nav a:hover:after{width:100%}
.menu-toggle{display:none;background:none;border:0}
.hero{min-height:calc(100vh - 84px);max-width:var(--max);margin:auto;padding:6vw 5vw 5vw;display:grid;grid-template-columns:1fr .9fr;gap:3vw;position:relative;overflow:hidden}
.hero-copy{align-self:center;position:relative;z-index:3}
.eyebrow{font:500 10px/1.3 "DM Mono",monospace;letter-spacing:.2em;text-transform:uppercase}
.hero h1{font-size:clamp(72px,11vw,155px);line-height:.79;letter-spacing:-.07em;margin:25px 0 28px;font-weight:700}
h1 em,h2 em,.display em{font-family:"Playfair Display",serif;font-weight:500}
.hero-lede{font-size:20px;max-width:420px;margin:0 0 12px}
.hero-text{font-size:14px;max-width:450px;color:#4c4942}
.hero-actions{display:flex;align-items:center;gap:28px;margin-top:34px}
.button{display:inline-flex;align-items:center;gap:18px;padding:15px 20px;font-size:11px;text-transform:uppercase;letter-spacing:.12em;border:1px solid var(--ink);transition:.25s}
.button-dark{background:var(--ink);color:var(--paper)}
.button-dark:hover{background:transparent;color:var(--ink)}
.button-light{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.button-light:hover{background:transparent;color:var(--paper)}
.text-link,.arrow-link{font-size:11px;text-transform:uppercase;letter-spacing:.12em;border-bottom:1px solid currentColor;padding-bottom:5px}
.hero-portrait{display:flex;align-items:center;justify-content:center;position:relative;min-height:620px}
.portrait-frame{width:min(72%,390px);position:relative;z-index:2}
.portrait-frame:before{content:"";position:absolute;inset:8% -9% -7% 9%;border:1px solid var(--ink);z-index:-1}
.portrait-frame img{display:block;width:100%;height:auto;filter:saturate(.88) contrast(1.03)}
.orbit{position:absolute;border:1px solid rgba(35,59,143,.42);border-radius:50%;width:70%;aspect-ratio:1;z-index:1}
.orbit-a{transform:rotate(22deg) scaleY(.45)}
.orbit-b{transform:rotate(-34deg) scaleY(.3);width:84%}
.hero-note{position:absolute;right:0;bottom:8%;font:10px/1.35 "DM Mono",monospace;letter-spacing:.14em;text-align:right}
.hero-note span{color:var(--rust)}
.hero-stamp{position:absolute;right:1%;top:15%;font:700 28px/1 "Playfair Display",serif;color:var(--blue);transform:rotate(7deg)}
.hero-stamp small{font:500 7px/1.1 "DM Mono",monospace;letter-spacing:.12em}
.marquee{display:flex;align-items:center;gap:28px;white-space:nowrap;overflow:hidden;background:var(--ink);color:var(--paper);padding:13px 0;font:500 10px "DM Mono",monospace;letter-spacing:.16em}
.marquee i{color:#d3a676;font-style:normal}
.section{max-width:var(--max);margin:auto;padding:110px 5vw}
.section-label{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:12px;font:500 10px "DM Mono",monospace;letter-spacing:.15em;text-transform:uppercase;margin-bottom:58px}
.intro-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:8vw}
.display{font-size:clamp(42px,6vw,78px);line-height:1.02;letter-spacing:-.045em;margin:0}
.intro-body{padding-top:12px;max-width:500px}
.intro-body p,.about-copy p,.commercial-copy p{font-size:15px;color:#4f4b43}
.arrow-link{display:inline-flex;gap:16px;margin-top:25px}
.materials{max-width:none;padding:0;display:grid;grid-template-columns:1fr 1fr;background:#1c1a17;color:var(--paper);min-height:600px}
.materials-card{padding:100px 8vw;position:relative}
.material-number{font:12px "DM Mono",monospace;color:#cfa56e;margin-bottom:70px}
.materials h2{font-size:clamp(60px,8vw,115px);line-height:.82;letter-spacing:-.06em;margin:20px 0 30px}
.materials p:last-child{max-width:390px;color:#c8c0b4;font-size:14px}
.material-art{position:relative;overflow:hidden;background:radial-gradient(circle at 52% 46%,#b8a68f 0 3%,transparent 3.5%),linear-gradient(135deg,#8e3d2d,#2a2a34 55%,#1c1a17)}
.radial{position:absolute;width:72%;aspect-ratio:1;border:1px solid rgba(239,232,220,.55);border-radius:50%;left:14%;top:14%;box-shadow:0 0 0 38px rgba(239,232,220,.04),0 0 0 90px rgba(239,232,220,.03)}
.square{position:absolute;background:#233b8f}
.s1{width:58px;height:58px;right:12%;top:16%}.s2{width:22px;height:110px;left:17%;bottom:17%}.s3{width:90px;height:18px;right:18%;bottom:25%}
.material-caption{position:absolute;bottom:25px;left:30px;font:10px "DM Mono",monospace;letter-spacing:.18em}
.about-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw;align-items:center}
.about-image{position:relative;max-width:410px}
.about-image img{display:block;width:100%;filter:grayscale(.08)}
.image-tag{position:absolute;bottom:14px;left:14px;background:var(--paper);padding:8px 10px;font:9px "DM Mono",monospace;letter-spacing:.12em}
.about-copy h2,.work-heading h2,.commercial-copy h2,.contact h2{font-size:clamp(50px,6vw,82px);line-height:.92;letter-spacing:-.055em;margin:14px 0 28px}
.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;border-top:1px solid var(--line);margin-top:45px;padding-top:20px}
.facts b{font:500 18px "DM Mono",monospace;display:block}
.facts span{display:block;font-size:10px;color:#6b665d;margin-top:8px}
.statement{background:#d2c5b3;padding:130px 5vw;text-align:center;position:relative;overflow:hidden}
.statement:before{content:"";position:absolute;width:580px;height:580px;border:1px solid rgba(35,59,143,.2);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}
.statement-inner{max-width:950px;margin:auto;position:relative}
.quote-mark{font:110px/0.5 "Playfair Display",serif;color:var(--rust)}
blockquote{font:italic 500 clamp(35px,5vw,66px)/1.08 "Playfair Display",serif;letter-spacing:-.03em;margin:35px 0}
.statement p{font:10px "DM Mono",monospace;letter-spacing:.18em}
.work-heading{display:grid;grid-template-columns:1fr .6fr;align-items:end;gap:5vw;margin-bottom:45px}
.work-heading p{font-size:14px;color:#5e594f;max-width:360px}
.work-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:18px}
.work-card:first-child{grid-row:span 2}
.art-placeholder{min-height:480px;position:relative;overflow:hidden}
.work-card:not(:first-child) .art-placeholder{min-height:230px}
.dark-art{background:linear-gradient(145deg,#171613,#493d39 55%,#1b1a1b);color:#eee8dc}
.paper-art{background:#b6a994;color:#171613}
.ember-art{background:#8d3e2d;color:#eee8dc}
.art-code{position:absolute;top:18px;left:18px;font:10px "DM Mono",monospace}
.line-orbit{position:absolute;width:72%;aspect-ratio:1;border:1px solid rgba(238,232,220,.55);border-radius:50%;left:14%;top:10%;transform:rotate(32deg) scaleY(.55)}
.figure-mark{position:absolute;left:48%;top:40%;font-size:100px}
.paper-circle{position:absolute;width:60%;aspect-ratio:1;border:2px solid #5a5249;border-radius:50%;left:20%;top:12%}
.paper-lines{position:absolute;width:130%;height:1px;background:#5a5249;top:58%;left:-15%;transform:rotate(-28deg);box-shadow:0 34px #5a5249,0 -34px #5a5249}
.ember-shape{position:absolute;width:55%;height:65%;border:2px solid #eee8dc;left:23%;top:18%;transform:rotate(45deg);border-radius:45% 0}
.ember-cross{position:absolute;width:110%;height:1px;background:#eee8dc;left:-5%;top:50%;transform:rotate(18deg)}
.art-title{position:absolute;bottom:22px;left:22px;font:500 10px "DM Mono",monospace;letter-spacing:.2em}
.card-meta{display:flex;justify-content:space-between;gap:20px;padding:11px 0;font:9px "DM Mono",monospace;letter-spacing:.1em;border-bottom:1px solid var(--line)}
.work-note{font-size:11px;color:#777168;max-width:650px;margin-top:25px}
.recognition{background:#e3d9c9;max-width:none;padding-left:calc((100vw - var(--max))/2 + 5vw);padding-right:calc((100vw - var(--max))/2 + 5vw)}
.recognition-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:10vw}
.recognition-intro h2{font-size:clamp(48px,6vw,78px);line-height:.92;letter-spacing:-.05em;margin:0 0 25px}
.recognition-intro p{max-width:320px;color:#5f5a51}
.recognition-list>div{display:grid;grid-template-columns:80px 1fr;column-gap:25px;padding:22px 0;border-top:1px solid var(--line)}
.recognition-list span{font:10px "DM Mono",monospace;color:var(--rust)}
.recognition-list strong{font-size:17px}.recognition-list small{grid-column:2;font-size:11px;color:#666157}
.commercial{max-width:none;display:grid;grid-template-columns:1fr 1fr;padding:0;background:#171613;color:var(--paper)}
.commercial-visual{min-height:760px;position:relative;overflow:hidden}
.commercial-visual img{width:100%;height:100%;object-fit:cover;object-position:center;filter:grayscale(1) contrast(1.2);opacity:.45}
.commercial-overlay{position:absolute;left:7%;bottom:7%;font:500 clamp(50px,7vw,100px)/.82 "Playfair Display",serif}
.commercial-copy{padding:100px 9vw}
.commercial-copy .section-label{border-color:rgba(238,232,220,.25);margin-bottom:65px}
.commercial-copy p{color:#c5beb3;max-width:480px}
.service-list{margin:45px 0}
.service-list div{display:flex;gap:25px;border-top:1px solid rgba(238,232,220,.2);padding:14px 0}
.service-list span{font:10px "DM Mono",monospace;color:#cfa56e}.service-list b{font-size:13px;font-weight:500}
.contact{display:grid;grid-template-columns:1fr auto;align-items:end;gap:40px}
.contact-inner{max-width:760px}.contact h2{margin-bottom:20px}.contact-inner>p:not(.eyebrow){color:#5b564d}
.contact-actions{display:flex;align-items:center;gap:25px;margin-top:30px}
.contact-mark{font:100px/.75 "Playfair Display",serif;text-align:right;color:var(--blue)}
.contact-mark span{display:block;font:10px "DM Mono",monospace;letter-spacing:.15em;margin-top:18px}
.footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;padding:25px 5vw;font:9px "DM Mono",monospace;letter-spacing:.08em;text-transform:uppercase;color:#6d675e}
@media(max-width:850px){
  .site-header{height:70px}.nav{display:none;position:absolute;top:70px;left:0;right:0;background:var(--paper);padding:25px 5vw;border-bottom:1px solid var(--line);flex-direction:column;gap:20px}.nav.open{display:flex}.menu-toggle{display:flex;flex-direction:column;gap:6px}.menu-toggle span{display:block;width:26px;height:1px;background:var(--ink)}
  .hero{grid-template-columns:1fr;min-height:auto;padding-top:55px}.hero-copy{order:1}.hero-portrait{order:2;min-height:520px}.portrait-frame{width:min(74%,330px)}
  .hero-stamp{right:4%;top:52%}.hero-note{right:2%;bottom:4%}
  .intro-grid,.about-grid,.recognition-grid,.work-heading{grid-template-columns:1fr;gap:35px}
  .materials,.commercial{grid-template-columns:1fr}.material-art{min-height:480px}.commercial-visual{min-height:560px}
  .work-grid{grid-template-columns:1fr}.work-card:first-child{grid-row:auto}
  .recognition{padding-left:5vw;padding-right:5vw}.facts{grid-template-columns:1fr}
  .contact{grid-template-columns:1fr}.contact-mark{text-align:left}
  .footer{flex-direction:column}
}
@media(max-width:520px){
  .hero h1{font-size:68px}.section{padding:80px 6vw}.hero{padding-left:6vw;padding-right:6vw}.materials-card,.commercial-copy{padding:75px 7vw}
  .portrait-frame{width:75%}.statement{padding:90px 6vw}.statement:before{width:380px;height:380px}
  .contact-actions{align-items:flex-start;flex-direction:column}.facts{gap:15px}.work-card:not(:first-child) .art-placeholder{min-height:260px}
}
