@font-face{font-family:Instrument;src:url('fonts/instrument-serif.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url('fonts/inter-400.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url('fonts/inter-600.woff2') format('woff2');font-style:normal;font-weight:500 900;font-display:swap}
:root{--ink:#050505;--paper:#eee8dc;--smoke:#a7acb0;--eye-gold:#b1a88b;--line:#363a3d;--serif:Instrument,Georgia,serif;--sans:Inter,Arial,sans-serif;--gutter:clamp(24px,5vw,96px);--ease:cubic-bezier(.23,1,.32,1)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:28px}
html[data-input='keyboard']{scroll-behavior:auto}
body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
body:has(.lightbox[open]){overflow:hidden}
::selection{background:#d9dce0;color:#050505}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;cursor:pointer}
button,a{-webkit-tap-highlight-color:transparent}
button:active{transform:scale(.97)}
a:focus-visible,button:focus-visible,summary:focus-visible,video:focus-visible{outline:2px solid var(--paper);outline-offset:6px}
p,figure,h1,h2,h3{margin:0}
img{display:block;width:100%;height:auto}
button[hidden]{display:none}
.skip-link{position:fixed;top:12px;left:12px;z-index:20;padding:12px 20px;background:var(--paper);color:var(--ink);transform:translateY(-150%)}
.skip-link:focus{transform:none}
.site-header{position:absolute;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:34px var(--gutter);z-index:2}
.wordmark{font-size:17px;font-weight:500;letter-spacing:-.6px;line-height:1.07;min-height:44px}
.wordmark-dot{font-family:var(--serif);font-size:24px}
.site-header nav{display:flex;align-items:center;gap:36px;font-size:13px;font-weight:500}
.site-header nav a{padding:12px 0;min-height:44px;display:flex;align-items:center;text-shadow:0 1px 12px #000}
.site-header nav a:hover{text-decoration:underline;text-underline-offset:7px}
.site-header .nav-follow{display:flex;gap:24px;align-items:center;padding:11px 16px;border:1px solid #ffffff55}
.cover{position:relative;min-height:750px;height:100svh;max-height:1100px;isolation:isolate;overflow:hidden;background:#030405}
.cover-photo{position:absolute;inset:0 0 0 34%;z-index:-2;mask-image:linear-gradient(90deg,transparent,black 24%)}
.cover-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 0%;filter:brightness(.93)}
.cover:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#030405 0%,#030405 22%,rgba(3,4,5,.88) 33%,rgba(3,4,5,.1) 60%,transparent 76%),linear-gradient(0deg,#050505 0%,rgba(5,5,5,.65) 14%,transparent 45%)}
.cover-content{position:absolute;left:var(--gutter);right:var(--gutter);bottom:44px}
.cover-intro{font-size:14px;line-height:1.7;max-width:300px;margin-bottom:32px}
.cover h1{font-family:var(--serif);font-size:clamp(180px,25.2vw,390px);font-weight:400;line-height:.74;letter-spacing:-.053em;margin-left:-.025em;margin-bottom:24px;animation:cover-enter 950ms var(--ease) both}
.marla-lettering{display:block;width:1.88em;height:.74em;position:relative;top:-.045em;overflow:visible}
.marla-wordmark-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.cover-signature{display:flex;align-items:center;gap:28px;margin-bottom:36px}
.signature-strip{width:230px;height:46px;overflow:hidden}
.signature-strip img{width:100%;height:100%;object-fit:cover;object-position:50% 60%}
.feral-stamp{font-size:11px;line-height:1.1;letter-spacing:.025em;white-space:nowrap;color:var(--eye-gold);border:1px solid currentColor;padding:9px 11px;transform:rotate(-4deg)}
.cover-bottom{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:#d9dce0}
.cover-link{display:flex;align-items:center;gap:20px;color:var(--paper);min-height:44px}
.circle-icon{width:46px;height:46px;border:1px solid #f2f2ee70;border-radius:50%;display:grid;place-items:center;font-size:21px}
.cover-link:hover .circle-icon{background:var(--paper);color:var(--ink)}
@keyframes cover-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
.section-space{padding:140px var(--gutter)}
.section-kicker{font-size:13px;font-weight:500;margin-bottom:30px;color:var(--smoke)}
h2{font:400 clamp(62px,6.8vw,110px)/1.02 var(--serif);letter-spacing:-.025em;text-wrap:balance}
.introduction{display:grid;grid-template-columns:1.1fr .8fr;gap:12%;align-items:center;max-width:1720px;margin:auto}
.introduction-body{max-width:440px;margin:46px 0 0 6%;color:var(--smoke);font-size:15px;line-height:1.85}
.introduction-body p+p{margin-top:22px}
.introduction-portrait{margin-top:54px;max-width:450px}
.photo-link{position:relative;display:block;cursor:zoom-in}
.photo-open{position:absolute;bottom:16px;right:16px;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#050505b0;border:1px solid #ffffff66;font-size:18px;opacity:0;transition:opacity 160ms ease}
.photo-link:hover .photo-open,.photo-link:focus-visible .photo-open{opacity:1}
figcaption{color:var(--smoke);font-size:12px;line-height:1.5;margin-top:15px}
.film-section{background:#101213;position:relative;padding:110px var(--gutter);overflow:hidden}
.film-layout{display:grid;grid-template-columns:1fr .8fr;gap:12%;max-width:1190px;margin:auto;align-items:center}
.film-copy h2{font-size:clamp(75px,8.6vw,135px);margin-bottom:36px}
.film-copy>p:not(.section-kicker){color:var(--smoke);font-size:15px;line-height:1.8}
.film-copy .film-duration{margin-top:70px;font-size:12px;color:#d9dce0}
.film-frame{max-width:400px;justify-self:center;width:100%}
.film-player{position:relative;background:#25292c;aspect-ratio:9/16}
.film-player video{display:block;width:100%;height:100%;object-fit:contain;background:#050505}
.film-play{position:absolute;left:0;bottom:0;right:0;width:100%;border:0;display:flex;gap:16px;align-items:center;padding:100px 24px 30px;background:linear-gradient(0deg,rgba(0,0,0,.8),transparent);text-align:left;font-size:13px}
.play-icon{display:block;width:54px;height:54px;flex-shrink:0;border:1px solid #ffffffaa;border-radius:50%;position:relative}
.play-icon:after{content:'';position:absolute;left:22px;top:17px;border-left:13px solid var(--paper);border-top:9px solid transparent;border-bottom:9px solid transparent}
.film-play:hover .play-icon{background:#ffffff25}
.portraits{max-width:1720px;margin:auto;padding-top:120px;padding-bottom:135px}
.portraits-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:58px}
.portraits-heading h2{font-size:clamp(60px,5.6vw,88px)}
.portraits-heading>p{color:var(--smoke);font-size:14px;padding-right:7%;padding-bottom:10px}
.portrait-composition{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;align-items:start}
.portrait{min-width:0}
.portrait img{width:100%;height:auto}
.portrait figcaption{font-size:11px}
.follow-section{position:relative;display:grid;grid-template-columns:.92fr 1.08fr;min-height:800px;background:#0d0f10;overflow:hidden}
.follow-photo{width:100%;height:100%;object-fit:cover;object-position:50% 30%;filter:brightness(.78)}
.follow-content{padding:100px clamp(38px,6vw,110px);align-self:center}
.follow-content h2{font-size:clamp(80px,8vw,126px);margin-bottom:30px;white-space:nowrap}
.follow-content>p:not(.section-kicker){font-size:15px;line-height:1.8;color:var(--smoke)}
.social-links{margin-top:45px}
.social-links a{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:23px 0;border-top:1px solid var(--line)}
.social-links a:last-child{border-bottom:1px solid var(--line)}
.social-links strong{font-size:17px;line-height:1.4;font-weight:400;display:block}
.social-links small{font-size:12px;color:var(--smoke);display:block;margin-top:5px}
.social-links a>span:last-child{font-size:24px}
.social-links a:hover strong{text-decoration:underline;text-underline-offset:5px}
.cattery-update{margin-top:50px;max-width:370px}
.cattery-update h3{font-size:13px;font-weight:500;margin-bottom:10px}
.cattery-update p{font-size:12px;line-height:1.85;color:var(--smoke)}
.site-footer{padding:90px var(--gutter) 30px}
.footer-name{display:inline-block;min-height:44px;font:400 clamp(38px,4.4vw,74px)/1.2 var(--serif);letter-spacing:-.025em}
.site-footer>p{font-size:12px;margin-top:15px;color:var(--smoke)}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:80px;border-top:1px solid var(--line);padding-top:25px;font-size:12px}
.footer-bottom small{font-size:11px;color:var(--smoke)}
.footer-bottom a{display:flex;gap:18px;align-items:center;min-height:44px}
.lightbox{color:var(--paper);background:#050505;width:100vw;max-width:none;height:100dvh;max-height:none;inset:0;padding:20px 28px;border:0;margin:0;overflow:hidden}
.lightbox[open]{display:flex;flex-direction:column;align-items:center;gap:16px}
.lightbox::backdrop{background:#050505ed}
.lightbox-toolbar,.lightbox-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;font-size:12px;flex-shrink:0}
.lightbox button{background:none;border:1px solid #ffffff44;padding:12px 18px;min-height:44px;min-width:44px}
.lightbox button:hover{background:#ffffff18}
.lightbox-close{display:flex;gap:24px;align-items:center}
.lightbox-close span{font-size:24px;line-height:1}
.lightbox-image{min-height:0;flex:1;object-fit:contain;width:100%;height:0}
.lightbox-caption{text-align:center;color:var(--smoke);max-width:700px}
@media(min-width:1700px){.cover-photo{left:40%}.cover h1{font-size:430px}}
@media(max-width:1000px){.site-header nav{gap:22px}.introduction{gap:7%;grid-template-columns:1.05fr .85fr}.introduction-body{margin-left:0}.film-layout{gap:9%}.follow-content{padding:70px 35px}.follow-content h2{font-size:86px}.section-space{padding-top:110px;padding-bottom:110px}.cover h1{font-size:27vw}.cover{min-height:700px}}
@media(max-width:700px){
  :root{--gutter:24px}
  .site-header{padding:24px;align-items:start;gap:16px}
  .wordmark{font-size:15px}
  .site-header nav{gap:20px;font-size:12px}
  .site-header nav a{padding:7px 0}
  .site-header nav a[href='#marla'],.site-header nav a[href='#portraits']{display:none}
  .site-header .nav-follow{padding:7px 10px;gap:15px}
  .cover{min-height:740px;height:100svh;max-height:960px}
  .cover-photo{inset:0 0 18% 0;mask-image:none}
  .cover-photo img{object-position:50% 13%;filter:brightness(.94)}
  .cover:after{background:linear-gradient(0deg,#050505 3%,#050505 15%,rgba(5,5,5,.6) 36%,transparent 59%),linear-gradient(180deg,rgba(5,5,5,.63),transparent 19%)}
  .cover-content{bottom:28px}
  .cover-intro{position:relative;isolation:isolate;font-size:12px;line-height:1.65;margin-bottom:25px;max-width:260px}
  .cover-intro:before{content:'';position:absolute;inset:-8px -12px;z-index:-1;background:#05050566;filter:blur(8px)}
  .cover h1{font-size:clamp(130px,37.8vw,260px);margin-bottom:18px;letter-spacing:-.045em}
  .cover-signature{gap:20px;margin-bottom:28px}
  .signature-strip{width:154px;height:32px}
  .feral-stamp{font-size:11px;padding:7px 8px}
  .cover-bottom{font-size:11px}
  .cover-link{gap:12px}
  .circle-icon{width:40px;height:40px;font-size:19px}
  .section-space{padding:88px 24px}
  h2{font-size:62px}
  .section-kicker{margin-bottom:24px;font-size:12px}
  .introduction{display:block}
  .introduction-body{font-size:14px;line-height:1.9;margin-top:30px;max-width:390px}
  .introduction-portrait{width:82%;margin:45px 0 0 auto}
  .photo-open{opacity:1;bottom:12px;right:12px;width:30px;height:30px;font-size:16px}
  .film-section{padding:80px 24px}
  .film-layout{display:block}
  .film-copy h2{font-size:80px;margin-bottom:26px}
  .film-copy>p:not(.section-kicker){font-size:14px}
  .film-copy .film-duration{margin-top:28px}
  .film-frame{width:88%;margin:38px 0 0 auto}
  .film-play{padding:100px 18px 24px;font-size:12px;gap:12px}
  .play-icon{width:46px;height:46px}
  .play-icon:after{left:19px;top:15px;border-left-width:11px;border-top-width:7px;border-bottom-width:7px}
  figcaption{font-size:11px;margin-top:12px}
  .portraits-heading{display:block;margin-bottom:36px}
  .portraits-heading h2{font-size:62px}
  .portraits-heading>p{font-size:13px;margin-top:22px;padding:0}
  .portrait-composition{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 14px}
  .portrait-box{grid-column:2}
  .follow-section{display:block;min-height:0}
  .follow-photo{height:auto;aspect-ratio:1.06;object-position:50% 69%;filter:brightness(.78)}
  .follow-content{padding:60px 24px 65px}
  .follow-content h2{font-size:84px;white-space:normal;margin-bottom:22px}
  .follow-content>p:not(.section-kicker){font-size:14px}
  .social-links{margin-top:32px}
  .social-links a{padding:22px 0}
  .social-links strong{font-size:16px}
  .cattery-update{margin-top:38px}
  .site-footer{padding:62px 24px 25px}
  .footer-name{font-size:42px}
  .site-footer>p{font-size:11px}
  .footer-bottom{margin-top:45px;gap:20px;font-size:11px;align-items:start}
  .footer-bottom small{font-size:10px}
  .lightbox{padding:16px;gap:14px}
  .lightbox-caption{font-size:11px}
  .lightbox-close{gap:14px}
}
@media(max-width:370px){h2{font-size:54px}.cover{min-height:680px}.cover h1{font-size:37vw}.site-header nav{gap:12px}.follow-content h2{font-size:74px}.footer-name{font-size:36px}.cover-intro{max-width:230px}}
@media(min-width:1001px){.cover-photo{left:auto;width:min(66vw,calc(clamp(750px,100svh,1100px)*1.08))}}
@media(min-width:1700px){.cover-photo{width:min(60vw,calc(clamp(750px,100svh,1100px)*1.08))}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.cover h1{opacity:1;transform:none}}
