:root{--paper:#F1EFE9;--panel:#E6E3DA;--ink:#161510;--stone:#78746A;--line:rgba(22,21,16,.15);--disp:"Bricolage Grotesque",-apple-system,system-ui,sans-serif;--sans:"Instrument Sans",-apple-system,system-ui,sans-serif;--max:1180px}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}.wrap{max-width:var(--max);margin:0 auto;padding:0 22px}.cap{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--stone)}header.top{display:flex;justify-content:space-between;align-items:center;padding:30px 22px;max-width:var(--max);margin:0 auto}header.top .wm{font-family:var(--disp);font-weight:800;font-size:clamp(26px,2.1vw,30px);letter-spacing:-.01em}header.top nav{display:flex;gap:28px}header.top nav a{font-size:clamp(16px,1.35vw,18px);font-weight:600;color:var(--stone);transition:color .25s}header.top nav a:hover{color:var(--ink)}header.top nav a:focus-visible,.contact-card:focus-visible,.foot__links a:focus-visible{outline:2px solid currentColor;outline-offset:4px}.intro{padding:52px 22px 40px;max-width:var(--max);margin:0 auto}.intro h1{font-family:var(--disp);font-weight:700;font-size:clamp(44px,11.5vw,110px);line-height:.92;letter-spacing:-.03em}.intro h1 .thin{font-weight:400}.intro .lead{margin-top:26px;max-width:44ch;font-size:clamp(16px,4.2vw,20px)}.intro .tags{margin-top:22px;display:flex;gap:18px;flex-wrap:wrap}.contact-strip{margin-top:28px;display:grid;gap:10px;max-width:920px}.contact-card{display:flex;justify-content:space-between;align-items:center;gap:18px;min-height:58px;padding:13px 15px;border:1px solid var(--line);border-radius:6px;background:#ffffff2e;transition:transform .35s cubic-bezier(.16,1,.3,1),border-color .35s,background .35s}.contact-card:hover{transform:translateY(-2px);border-color:#16151057;background:#ffffff57}.contact-card span{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--stone)}.contact-card strong{font-family:var(--disp);font-size:clamp(18px,5vw,24px);line-height:1.05;text-align:right}.contact-card--primary{background:var(--ink);color:var(--paper);border-color:var(--ink)}.contact-card--primary span{color:#f1efe99e}.contact-card--primary:hover{background:#2a2821;color:var(--paper);border-color:#2a2821}.contact-card--quiet strong{font-size:clamp(18px,3vw,22px)}.filter{display:flex;gap:8px;flex-wrap:wrap;max-width:var(--max);margin:0 auto;padding:0 22px 8px}.filter button{font-family:var(--sans);font-size:13px;font-weight:500;color:var(--stone);background:transparent;border:1px solid var(--line);border-radius:20px;padding:7px 14px;cursor:pointer;transition:color .25s,background .25s,border-color .25s}.filter button:hover{color:var(--ink)}.filter button[aria-pressed=true]{color:var(--paper);background:var(--ink);border-color:var(--ink)}.index{border-top:1px solid var(--ink);margin-top:14px}.idx{position:relative;display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;padding:26px 22px;max-width:var(--max);margin:0 auto;border-bottom:1px solid var(--line);transition:padding-left .4s cubic-bezier(.16,1,.3,1)}.idx__no{font-family:var(--disp);font-weight:600;font-size:13px;color:var(--stone)}.idx__t{font-family:var(--disp);font-weight:700;font-size:clamp(30px,9vw,60px);letter-spacing:-.025em;line-height:.98;transition:transform .4s cubic-bezier(.16,1,.3,1),opacity .3s}.idx__m{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--stone);text-align:right;white-space:nowrap}.idx__thumb{display:none;grid-column:1 / -1;margin-top:14px;aspect-ratio:16/9;overflow:hidden;background:var(--panel);border-radius:3px}.idx__thumb img{object-position:var(--pos,center center)}@media (hover:hover) and (pointer:fine){.idx:hover{padding-left:40px}.idx:hover .idx__t{transform:translate(4px)}.index:hover .idx:not(:hover) .idx__t{opacity:.32}}@media (hover:none){.idx__thumb{display:block}.idx{grid-template-columns:auto 1fr;grid-auto-rows:auto}.idx__m{grid-column:2;text-align:left}}.peek{position:fixed;top:0;left:0;width:300px;aspect-ratio:4/5;z-index:80;--x:-999px;--y:-999px;pointer-events:none;opacity:0;transform:translate3d(var(--x),var(--y),0) translate(-50%,-50%) scale(.94);transition:opacity .35s ease,transform .35s cubic-bezier(.16,1,.3,1);overflow:hidden;border-radius:4px;box-shadow:0 30px 60px #16151040;will-change:transform,opacity}.peek.on{opacity:1;transform:translate3d(var(--x),var(--y),0) translate(-50%,-50%) scale(1)}.peek img{filter:saturate(1.03)}.about{border-top:1px solid var(--line);margin-top:20px}.about__in{max-width:var(--max);margin:0 auto;padding:70px 22px;display:grid;gap:24px}.about h3{font-family:var(--disp);font-weight:700;font-size:clamp(26px,7vw,42px);letter-spacing:-.02em;line-height:1.02;margin-bottom:14px}.about p{max-width:52ch;margin-bottom:12px;font-size:16px}.about .pf{aspect-ratio:4/5;overflow:hidden;background:var(--panel);border-radius:3px;max-width:250px}.about .pf img{object-position:center top}footer{background:var(--ink);color:var(--paper)}.foot__in{max-width:var(--max);margin:0 auto;padding:64px 22px 40px}.foot__cta{font-family:var(--disp);font-weight:700;font-size:clamp(46px,11vw,92px);line-height:.95;letter-spacing:-.03em;margin-bottom:22px}.foot__contact{max-width:760px;margin-bottom:40px}.foot__contact p{max-width:46ch;color:#f1efe9b8;font-size:17px;margin-bottom:18px}.foot__actions{display:flex;gap:10px;flex-wrap:wrap}.foot__actions a{display:inline-flex;align-items:center;min-height:44px;padding:10px 16px;border:1px solid rgba(241,239,233,.22);border-radius:6px;font-weight:700;transition:background .3s,border-color .3s,transform .3s cubic-bezier(.16,1,.3,1)}.foot__actions a:hover{background:#f1efe914;border-color:#f1efe980;transform:translateY(-2px)}.foot__actions .phone{font-weight:600;color:#f1efe9b8}.foot__row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:18px;border-top:1px solid rgba(241,239,233,.22);padding-top:22px}.foot__row .cap{color:#f1efe98c}.foot__links{display:flex;gap:18px;flex-wrap:wrap}.foot__links a{font-size:14px;color:#f1efe9c7;transition:color .3s}.foot__links a:hover{color:var(--paper)}.story__cover{position:relative;height:90svh;min-height:520px;overflow:hidden;background:var(--ink)}.story__cover img{object-position:var(--pos,center center);filter:brightness(.9) saturate(1.02)}.story__cover .grad{position:absolute;inset:0;background:linear-gradient(180deg,#1615100a,#1615101f 45%,#161510b8)}.story__cover .lbl{position:absolute;left:22px;right:22px;bottom:34px;color:var(--paper);z-index:2}.story__cover .lbl .cap{color:#f1efe9b3}.story__cover .lbl h1{font-family:var(--disp);font-weight:800;font-size:clamp(44px,13vw,120px);line-height:.9;letter-spacing:-.03em;margin-top:10px}.story__back{max-width:var(--max);margin:0 auto;padding:36px 22px 18px}.story__back a{font-size:15px;font-weight:700;color:var(--stone)}.story__back a:hover{color:var(--ink)}.story__intro{max-width:640px;margin:52px auto;padding:0 22px;text-align:center}.story__intro p{font-family:var(--disp);font-weight:400;font-size:clamp(20px,5vw,30px);line-height:1.3;letter-spacing:-.01em}.story__seq{max-width:960px;margin:0 auto;padding:0 22px 48px;display:grid;gap:22px}.story__seq .shot{overflow:hidden;background:transparent;border-radius:3px;content-visibility:auto;contain-intrinsic-size:900px 700px}.story__seq .shot img{width:auto;max-width:100%;height:auto;max-height:78svh;object-fit:contain;margin:0 auto}.story__nav{max-width:var(--max);margin:0 auto;padding:10px 22px 70px;display:flex;justify-content:space-between;gap:16px}.story__nav a{font-family:var(--disp);font-weight:700;font-size:clamp(18px,4.5vw,24px);letter-spacing:-.02em}.story__nav a:hover{color:var(--stone)}.story__nav .empty{color:var(--line);pointer-events:none}.reveal{opacity:0;transform:translateY(16px);transition:opacity .62s ease,transform .62s cubic-bezier(.16,1,.3,1);transition-delay:var(--d,0ms)}.reveal.in{opacity:1;transform:none}@media (min-width:820px){header.top,.intro,.idx,.filter,.about__in,.story__seq,.foot__in,.story__back,.story__nav{padding-left:40px;padding-right:40px}.story__cover .lbl{left:40px;right:40px}.contact-strip{grid-template-columns:1fr 1fr minmax(240px,auto)}.about__in{grid-template-columns:250px 1fr;align-items:start;gap:44px}}@media (min-width:1280px){.story__seq{max-width:900px}}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.story__cover img{transform:scale(1)}}
