:root{--bg:oklch(0.972 0.005 60);--paper:oklch(0.984 0.004 70);--ink:oklch(0.205 0.012 280);--ink-2:oklch(0.42 0.012 280);--line:oklch(0.89 0.006 70);--accent:oklch(0.545 0.175 16);--accent-2:oklch(0.46 0.16 14);--accent-wash:oklch(0.93 0.04 18);--ink-deep:oklch(0.18 0.014 285);--display:"Bricolage Grotesque","Archivo",system-ui,sans-serif;--body:"Archivo",system-ui,-apple-system,sans-serif;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:64px;--s-9:96px;--s-10:128px;--pad:clamp(var(--s-4), 5vw, var(--s-9));--wrap:74rem}*,::after,::before{box-sizing:border-box}*{margin:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:clamp(1rem, .96rem + .2vw, 1.1rem);line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:0 0;border:none;cursor:pointer}img{display:block;max-width:100%;height:auto}.accent{color:var(--accent)}.muted{color:var(--ink-2)}.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:var(--paper);padding:8px 16px;z-index:99}.skip:focus{left:8px}.sec-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--s-3) var(--s-5);margin-bottom:clamp(var(--s-5),4vw,var(--s-7))}.sec-head h2{font-family:var(--display);font-weight:700;font-size:clamp(2rem, 1.2rem + 3.4vw, 3.4rem);letter-spacing:-.02em;line-height:1}.head{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:var(--s-4);padding:var(--s-4) var(--pad);background:color-mix(in oklab,var(--bg) 85%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid color-mix(in oklab,var(--line) 60%,transparent)}.wordmark{font-weight:600;font-size:.82rem;letter-spacing:.16em;text-transform:uppercase}.head-nav{display:flex;align-items:center;gap:var(--s-5);font-size:.86rem;font-weight:500}.head-nav a:not(.head-cta){color:var(--ink-2)}.head-nav a:hover{color:var(--ink)}.head-cta{color:var(--accent-2);font-weight:600}@media (max-width:38rem){.head-nav a:not(.head-cta){display:none}}.hero{position:relative;overflow:hidden;min-height:min(92svh,52rem);display:flex;align-items:flex-end}.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:38% 28%;z-index:0}.hero-scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(265deg,oklch(.15 .014 285 / .78) 0,oklch(.15 .014 285 / .52) 30%,oklch(.15 .014 285 / .1) 58%,transparent 76%),linear-gradient(to top,oklch(.15 .014 285 / .72) 0,oklch(.15 .014 285 / .12) 36%,transparent 60%),radial-gradient(125% 125% at 55% 40%,transparent 56%,oklch(.1 .014 285 / .45) 100%)}.hero-inner{position:relative;z-index:2;width:100%;max-width:var(--wrap);margin-inline:auto;padding:clamp(var(--s-7),8vw,var(--s-10)) var(--pad);display:flex;justify-content:flex-end}.hero-text{max-width:34rem;text-align:right}.hero .ticker{flex-direction:column;align-items:flex-end;gap:var(--s-1)}.hero .hero-actions{justify-content:flex-end}@media (max-width:54rem){.hero-inner{justify-content:flex-start}.hero-text{text-align:left}.hero .hero-actions{justify-content:flex-start}.hero .ticker{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:var(--s-1)}.hero-scrim{background:linear-gradient(to top,oklch(.14 .014 285 / .86) 0,oklch(.14 .014 285 / .6) 26%,oklch(.14 .014 285 / .22) 52%,oklch(.14 .014 285 / .05) 74%,transparent 100%),linear-gradient(oklch(.14 .014 285 / .16),oklch(.14 .014 285 / .16))}}.kicker{font-size:.8rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2);font-weight:600;margin-bottom:var(--s-4)}.hero .kicker{color:oklch(.9 .012 70 / .85)}.hero h1{font-family:var(--display);font-weight:800;font-size:clamp(2.9rem, 1.5rem + 7.5vw, 6.2rem);line-height:.9;letter-spacing:-.03em;color:oklch(.98 .008 80);text-shadow:0 1px 30px oklch(.1 .02 285 / .45)}.hero h1 .accent{color:oklch(.78 .15 22)}.sub{font-family:var(--display);font-weight:500;font-size:clamp(1.2rem, 1rem + 1vw, 1.7rem);line-height:1.2;letter-spacing:-.01em;max-width:24ch;margin-top:var(--s-5)}.hero .sub{color:oklch(.95 .008 80);margin-left:auto}@media (max-width:54rem){.hero .sub{margin-left:0}}.hero .ticker-pre{color:oklch(.88 .012 70 / .82)}.hero .ticker-word{color:oklch(.82 .13 24)}.hero .btn{background:var(--accent);color:oklch(.99 .005 80)}.hero .btn:hover{background:oklch(.98 .008 80);color:var(--ink);transform:translateY(-2px)}.hero .link-u{color:oklch(.95 .01 80);border-bottom-color:oklch(.95 .01 80 / .45)}.hero .link-u:hover{color:oklch(.99 .005 80);border-bottom-color:var(--accent)}.ticker{display:flex;align-items:baseline;gap:var(--s-3);flex-wrap:wrap;margin-top:var(--s-5);min-height:1.6em;font-size:.95rem}.ticker-pre{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2);font-weight:600}.ticker-word{font-family:var(--display);font-weight:500;font-size:1.15rem;color:var(--accent);opacity:0;transition:opacity .36s ease;display:inline-block;max-width:100%;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom}.ticker-word.on{opacity:1}@media (prefers-reduced-motion:reduce){.ticker-word{opacity:1;transition:none}}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-4);margin-top:clamp(var(--s-6),4vw,var(--s-7))}.btn{display:inline-flex;align-items:center;background:var(--ink);color:var(--paper);font-weight:600;font-size:.95rem;padding:13px 24px;border-radius:999px;transition:background .22s ease,transform .22s cubic-bezier(.2,.8,.2,1)}.btn:hover{background:var(--accent);transform:translateY(-2px)}.link-u{font-weight:500;font-size:.95rem;border-bottom:1.5px solid var(--line);padding-bottom:2px}.link-u:hover{border-bottom-color:var(--accent);color:var(--accent-2)}.hero-photo{justify-self:end;width:100%;max-width:24rem}.hero-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:4px;border:1px solid var(--line);box-shadow:0 1px 0 var(--line),0 30px 60px -30px oklch(.2 .05 16 / .35)}.gallery{max-width:var(--wrap);margin-inline:auto;padding:clamp(var(--s-7),6vw,var(--s-9)) var(--pad)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:clamp(var(--s-2),1.2vw,var(--s-4))}@media (max-width:40rem){.grid{grid-template-columns:1fr 1fr;gap:var(--s-2)}}.cell{display:flex;flex-direction:column;gap:var(--s-2)}.cell-btn{display:block;padding:0;width:100%;cursor:pointer;border:1px solid var(--line);border-radius:3px;overflow:hidden;background:var(--paper)}.cell-btn img{width:100%;aspect-ratio:3/4;object-fit:cover;transition:transform .5s cubic-bezier(.2,.8,.2,1)}.cell-btn:focus-visible img,.cell-btn:hover img{transform:scale(1.05)}.cell:nth-child(4n+1) .cell-btn img{aspect-ratio:3/4.4}.cell:nth-child(6n+3) .cell-btn img{aspect-ratio:3/3.4}.cap{display:flex;flex-direction:column;gap:1px;padding-left:2px}.cap-name{font-weight:600;font-size:.82rem;color:var(--ink);line-height:1.25}.cap-note{font-size:.74rem;color:var(--ink-2);line-height:1.2}.more{max-width:var(--wrap);margin-inline:auto;padding:clamp(var(--s-7),6vw,var(--s-9)) var(--pad);border-top:1px solid var(--line)}.more-grid{display:grid;grid-template-columns:1fr;gap:0}@media (min-width:50rem){.more-grid{grid-template-columns:repeat(3,1fr)}}.more-item{padding:var(--s-6) var(--s-5) var(--s-6) 0;border-top:1.5px solid var(--ink)}@media (min-width:50rem){.more-item{padding:var(--s-6) var(--s-5)}.more-item+.more-item{border-left:1px solid var(--line)}.more-item:first-child{padding-left:0}}.more-no{font-family:var(--display);font-weight:700;color:var(--accent);font-size:.95rem;display:block;margin-bottom:var(--s-4)}.more-item h3{font-family:var(--display);font-weight:700;font-size:1.3rem;line-height:1.05;letter-spacing:-.01em;margin-bottom:var(--s-3)}.more-item p{color:var(--ink-2)}.more-item strong{color:var(--ink);font-weight:600}.about{max-width:var(--wrap);margin-inline:auto;padding:clamp(var(--s-7),6vw,var(--s-9)) var(--pad);border-top:1px solid var(--line);display:grid;grid-template-columns:1fr;gap:var(--s-4) clamp(var(--s-6),5vw,var(--s-8))}@media (min-width:50rem){.about{grid-template-columns:12rem 1fr;align-items:start}}.about .kicker{margin:0;padding-top:.4em}.about-text{font-family:var(--display);font-weight:400;font-size:clamp(1.3rem, 1rem + 1.5vw, 2rem);line-height:1.38;letter-spacing:-.01em;max-width:40ch}.cta{background:var(--ink-deep);color:var(--paper);padding:clamp(var(--s-9),9vw,var(--s-10)) var(--pad)}.cta-inner{max-width:var(--wrap);margin-inline:auto}.kicker-light{color:color-mix(in oklab,var(--paper) 55%,transparent)}.cta-head{font-family:var(--display);font-weight:800;font-size:clamp(2.2rem, 1.1rem + 6vw, 6rem);line-height:.92;letter-spacing:-.03em;margin:var(--s-3) 0;overflow-wrap:break-word}.cta-sub{font-size:clamp(1.05rem, .95rem + .6vw, 1.3rem);color:color-mix(in oklab,var(--paper) 80%,transparent);max-width:40ch}.cta-hr{margin-top:var(--s-6);font-size:.92rem;color:color-mix(in oklab,var(--paper) 64%,transparent)}.cta-hr a{color:var(--paper);border-bottom:1.5px solid color-mix(in oklab,var(--paper) 40%,transparent);padding-bottom:2px;transition:border-color .22s ease}.cta-hr a:hover{border-bottom-color:var(--accent)}.btn-light{background:var(--accent);color:var(--paper)}.btn-light:hover{background:var(--paper);color:var(--ink)}.link-u-light{color:var(--paper);border-bottom-color:color-mix(in oklab,var(--paper) 40%,transparent)}.link-u-light:hover{color:var(--paper);border-bottom-color:var(--accent)}.foot{max-width:var(--wrap);margin-inline:auto;padding:var(--s-7) var(--pad);display:flex;flex-wrap:wrap;gap:var(--s-3) var(--s-6);font-size:.85rem;color:var(--ink-2);border-top:1px solid var(--line)}.foot span:first-child{font-weight:600;color:var(--ink)}.foot a:hover{color:var(--accent-2)}.lb{position:fixed;inset:0;z-index:80;background:oklch(.18 .01 285 / .92);display:grid;place-items:center;padding:clamp(var(--s-4),4vw,var(--s-8))}.lb-fig{display:flex;flex-direction:column;gap:var(--s-3);align-items:center;max-width:min(92vw,40rem)}.lb-fig img{max-width:100%;max-height:80vh;border-radius:4px}.lb-cap{display:flex;flex-direction:column;gap:2px;text-align:center;color:var(--paper);font-weight:600;font-size:1rem}.lb-note{font-weight:400;font-size:.85rem;color:color-mix(in oklab,var(--paper) 72%,transparent)}.lb-x{position:fixed;top:var(--s-5);right:var(--s-5);color:var(--paper);font-size:2rem;line-height:1;width:44px;height:44px}.lb-x:hover{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:3px}