/*
Theme Name: YENNESSEE
Theme URI: https://yennessee.com
Author: YENNESSEE
Description: A cinematic, editorial portfolio theme for photography, moving image, choreography, digital experiments and notes.
Version: 1.0.0
Requires at least: 6.5
Tested up to: 7.1
Requires PHP: 7.4
Text Domain: yennessee
*/

:root{
  --bg:#10110f; --paper:#e9e6de; --muted:#aaa79e;
  --line:rgba(233,230,222,.23); --acid:#c8f36b;
  --pad:clamp(20px,4.2vw,68px); --header:76px;
  --serif:Georgia,"Times New Roman",serif;
  --sans:Arial,Helvetica,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--paper);font-family:var(--sans);overflow-x:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit}
img,video{display:block;width:100%}
.site-header{
  position:absolute;z-index:30;top:0;left:0;width:100%;height:var(--header);
  padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;
  border-bottom:1px solid rgba(255,255,255,.22);color:#fff
}
.brand{font-size:13px;font-weight:600;letter-spacing:.22em}
.nav{display:flex;align-items:center;gap:clamp(20px,3.4vw,52px)}
.nav a,.menu-toggle{font-size:10px;letter-spacing:.19em;text-transform:uppercase;opacity:.88}
.nav a:hover{color:var(--acid);opacity:1}
.menu-toggle{display:none;background:none;border:0;color:#fff}
.hero{
  min-height:100svh;position:relative;overflow:hidden;display:flex;align-items:flex-end;
  padding:calc(var(--header) + 5vh) var(--pad) 7vh;background:#252722
}
.hero-video,.hero-shade,.hero-grain{position:absolute;inset:0;width:100%;height:100%}
.hero-video{object-fit:cover;object-position:center 48%;filter:saturate(.72) brightness(.82)}
.hero-shade{background:linear-gradient(180deg,rgba(0,0,0,.25),rgba(0,0,0,.03) 35%,rgba(0,0,0,.78) 100%),linear-gradient(90deg,rgba(0,0,0,.24),transparent 72%)}
.hero-grain{pointer-events:none;opacity:.12;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='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.4'/%3E%3C/svg%3E")}
.hero-content{position:relative;z-index:2;width:100%}
.hero-topline{display:flex;justify-content:space-between;gap:20px;margin-bottom:clamp(70px,15vh,170px)}
.hero-topline span,.eyebrow,.hero-bottom,.work-meta,.scroll-link,.archive-link,.footer,.note-meta{
  font-size:9px;letter-spacing:.17em;text-transform:uppercase
}
.hero-title{font-size:clamp(68px,13.2vw,194px);line-height:.77;letter-spacing:-.09em;font-weight:500;margin:0 0 28px;white-space:nowrap}
.hero-title span{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-.1em}
.hero-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:30px}
.hero-description{font-size:12px;line-height:1.7;letter-spacing:.02em;text-transform:none;max-width:330px;color:rgba(255,255,255,.82)}
.scroll-link{display:flex;align-items:center;gap:14px}
.scroll-link:before{content:"";height:1px;width:38px;background:var(--acid)}
.sound-note{position:absolute;z-index:3;right:var(--pad);top:calc(var(--header) + 22px);font-size:9px;letter-spacing:.15em;color:#fff8;text-transform:uppercase}
.intro{
  padding:clamp(100px,15vw,210px) var(--pad);
  display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw;align-items:start
}
.eyebrow{color:var(--muted)}
.intro-statement{font-size:clamp(35px,6vw,84px);line-height:1.02;letter-spacing:-.065em;font-weight:400;margin:0;max-width:950px}
.intro-statement em{font-family:var(--serif);font-weight:400;color:#a6a79c}
.works{padding:0 var(--pad) clamp(120px,16vw,220px)}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding-bottom:17px;border-bottom:1px solid var(--line);margin-bottom:45px}
.section-head h2{font-size:11px;letter-spacing:.19em;text-transform:uppercase;font-weight:400;margin:0}
.section-head span{font-size:9px;color:var(--muted);letter-spacing:.13em;text-transform:uppercase}
.work-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(38px,7vw,110px) 5vw;align-items:start}
.work-card{display:block;min-width:0;cursor:pointer}
.work-card:nth-child(2){margin-top:17vw}
.work-card:nth-child(3){width:78%;margin-left:12%;margin-top:-4vw}
.work-card:nth-child(4){margin-top:12vw}
.work-image{display:block;overflow:hidden;position:relative;background:#282a27;aspect-ratio:4/5}
.work-card:nth-child(2) .work-image{aspect-ratio:5/4}
.work-card:nth-child(3) .work-image{aspect-ratio:3/4}
.work-card:nth-child(4) .work-image{aspect-ratio:16/10}
.work-image img{height:100%;object-fit:cover;filter:saturate(.72);transition:transform .9s cubic-bezier(.2,.7,.2,1),filter .6s}
.work-card:hover .work-image img{transform:scale(1.045);filter:saturate(1)}
.work-meta{display:flex;justify-content:space-between;gap:15px;padding-top:13px}
.work-meta span:last-child{color:var(--muted);text-align:right}
.all-works{display:inline-flex;margin-top:72px;padding-bottom:10px;border-bottom:1px solid var(--paper);font-size:10px;letter-spacing:.18em;text-transform:uppercase;gap:20px}
.all-works b{color:var(--acid);font-size:16px;font-weight:400}
.video-interlude{position:relative;height:min(82vh,900px);min-height:540px;overflow:hidden;background:#1a1c19}
.interlude-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.65) saturate(.72)}
.interlude-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.68),transparent 75%),linear-gradient(90deg,rgba(0,0,0,.18),transparent)}
.interlude-copy{position:absolute;left:var(--pad);right:var(--pad);bottom:8%;display:flex;align-items:flex-end;justify-content:space-between;gap:30px}
.interlude-copy h2{font-size:clamp(48px,8.5vw,122px);line-height:.86;letter-spacing:-.075em;font-weight:400;margin:0}
.interlude-copy h2 em{font-family:var(--serif);font-weight:400}
.interlude-copy p{max-width:220px;font-size:11px;line-height:1.7;color:#ddd;margin:0}
.notes{padding:clamp(110px,15vw,200px) var(--pad);display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw}
.notes-lead{font-size:clamp(35px,5.5vw,76px);line-height:.98;letter-spacing:-.06em;margin:16px 0 0}
.notes-lead em{font-family:var(--serif);font-weight:400}
.notes-intro p{font-size:11px;line-height:1.8;color:var(--muted);max-width:250px;margin-top:28px}
.note-list{border-top:1px solid var(--line)}
.note-item{display:grid;grid-template-columns:44px 1fr auto;gap:18px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line);transition:padding .25s,color .25s}
.note-item:hover{padding-left:9px;color:var(--acid)}
.note-num,.note-meta{font-size:9px;color:var(--muted)}
.note-title{font-family:var(--serif);font-style:italic;font-size:clamp(23px,3vw,39px);letter-spacing:-.025em}
.statement{
  min-height:70vh;background:#d9d5ca;color:#171814;position:relative;overflow:hidden;
  display:flex;align-items:center;justify-content:center;text-align:center;padding:100px var(--pad)
}
.statement:before,.statement:after{content:"";position:absolute;border:1px solid rgba(0,0,0,.13);border-radius:50%}
.statement:before{width:58vw;height:58vw;left:-27vw;top:0}
.statement:after{width:42vw;height:42vw;right:-17vw;bottom:-20%}
.statement-inner{position:relative;z-index:1;max-width:1000px}
.statement p{font-family:var(--serif);font-size:clamp(36px,6.2vw,86px);line-height:1.07;letter-spacing:-.045em;margin:0}
.statement p em{font-weight:400}
.statement small{display:block;margin-top:36px;font:9px var(--sans);letter-spacing:.2em;text-transform:uppercase}
.archive-wrap{padding:0 var(--pad) 120px}
.archive-panel{height:min(68vh,760px);min-height:470px;position:relative;display:flex;align-items:flex-end;overflow:hidden;padding:clamp(30px,6vw,80px);background:#292c28}
.archive-panel img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1s;filter:brightness(.68) saturate(.75)}
.archive-panel:hover img{transform:scale(1.04)}
.archive-panel:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.58),transparent 80%),linear-gradient(0deg,rgba(0,0,0,.42),transparent 75%)}
.archive-content{position:relative;z-index:2;max-width:680px}
.archive-content h2{font-size:clamp(58px,10vw,140px);line-height:.8;letter-spacing:-.09em;font-weight:400;margin:20px 0}
.archive-content p{max-width:300px;font-size:11px;line-height:1.7;color:#ddd}
.archive-link{display:inline-block;margin-top:18px;padding-bottom:8px;border-bottom:1px solid var(--acid)}
.footer{padding:35px var(--pad) 28px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px;align-items:end;color:var(--muted)}
.footer-brand{font-size:20px;letter-spacing:.2em;color:var(--paper)}
.footer-middle{font-size:9px;line-height:1.8;letter-spacing:.1em}
.footer-links{display:flex;justify-content:flex-end;gap:22px}
.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;margin-top:34px;padding-top:16px;border-top:1px solid var(--line);font-size:8px;color:#777}
.project-modal{position:fixed;z-index:60;inset:0;background:rgba(8,9,8,.97);display:none;overflow:auto;padding:8vh var(--pad)}
.project-modal.open{display:block}
.modal-close{position:fixed;right:var(--pad);top:24px;border:0;background:none;color:#fff;letter-spacing:.18em;font-size:10px;cursor:pointer}
.modal-inner{max-width:1100px;margin:4vh auto}
.modal-inner img,.modal-inner video{width:100%;max-height:68vh;object-fit:cover;background:#222}
.modal-inner h2{font-size:clamp(42px,8vw,100px);letter-spacing:-.07em;font-weight:400;margin:26px 0 8px}
.modal-inner p{max-width:520px;color:var(--muted);font-size:12px;line-height:1.8}
@media(max-width:700px){
  :root{--header:64px;--pad:20px}
  .nav{display:none;position:absolute;top:var(--header);left:0;width:100%;padding:26px var(--pad) 34px;background:#10110f;flex-direction:column;align-items:flex-start;gap:22px}
  .nav.open{display:flex}.nav a{font-size:12px}.menu-toggle{display:block}
  .hero{min-height:88svh;padding-bottom:8vh}
  .hero-topline{margin-bottom:19vh}.hero-topline span:last-child{display:none}
  .hero-title{font-size:clamp(58px,15.8vw,112px);white-space:normal}
  .hero-bottom{align-items:flex-start;flex-direction:column;gap:20px}
  .scroll-link{align-self:flex-end}
  .intro,.notes{grid-template-columns:1fr;gap:35px}
  .work-grid{grid-template-columns:1fr 1fr;gap:40px 14px}
  .work-card:nth-child(2){margin-top:65px}
  .work-card:nth-child(3){width:100%;margin:0}
  .work-card:nth-child(4){margin-top:55px}
  .work-meta{flex-direction:column;gap:6px}
  .work-meta span:last-child{text-align:left}
  .video-interlude{height:68vh;min-height:480px}
  .interlude-copy{left:var(--pad);right:var(--pad);bottom:7%;flex-direction:column;align-items:flex-start}
  .interlude-copy p{max-width:270px}
  .note-item{grid-template-columns:25px 1fr}.note-meta{display:none}
  .archive-panel{height:65vh;min-height:480px}
  .footer{grid-template-columns:1fr 1fr}
  .footer-middle{grid-column:1/-1;grid-row:2}
  .footer-links{justify-content:flex-start;flex-wrap:wrap}
  .footer-bottom{margin-top:20px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* WordPress theme additions */
.admin-bar .site-header{top:32px}
.site-header{position:absolute}
.site-header.inner-header{position:relative;background:#171915}
.nav a[aria-current="page"]{color:var(--acid)}
.inner-hero{padding:clamp(90px,12vw,170px) var(--pad) 7vh;background:#191b17;min-height:48vh;display:flex;flex-direction:column;justify-content:flex-end}
.inner-hero h1{font-size:clamp(56px,11vw,150px);line-height:.82;letter-spacing:-.08em;font-weight:400;margin:22px 0}
.inner-hero p{max-width:520px;color:var(--muted);font-size:13px;line-height:1.8}
.archive-grid{padding:60px var(--pad) 140px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:70px 5vw}
.archive-grid .work-card:nth-child(2n){margin-top:10vw}
.archive-grid .work-image{aspect-ratio:4/5;display:block}
.archive-grid img{height:100%;object-fit:cover}
.single-work{padding:7vw var(--pad) 120px;max-width:1300px;margin:auto}
.single-work h1{font-size:clamp(48px,9vw,120px);line-height:.9;letter-spacing:-.07em;font-weight:400;margin:20px 0}
.single-work .work-description{max-width:650px;color:var(--muted);line-height:1.9;margin:30px 0 60px}
.single-work .featured{max-height:78vh;object-fit:cover;margin:45px 0}
.single-work .entry-content{max-width:760px;margin:50px auto;line-height:1.9;color:#d4d0c7}
.single-work .entry-content img,.single-work .entry-content video{height:auto;margin:35px 0}
.entry-content a{color:var(--acid);text-decoration:underline}
.empty-state{padding:50px 0;color:var(--muted);font-size:13px}
.notes-page{padding:80px var(--pad) 140px}
.notes-page .note-row{padding:28px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:80px 1fr auto;gap:20px;align-items:center}
.notes-page .note-row h2{font:italic clamp(25px,4vw,48px) Georgia,serif;margin:0}
.notes-page .note-row small{color:var(--muted);letter-spacing:.12em;text-transform:uppercase}
.page-content{padding:70px var(--pad) 130px;max-width:1100px;margin:auto;line-height:1.9}
.page-content h2,.page-content h3{font-weight:400;letter-spacing:-.04em}
.page-content p{max-width:760px;color:#d1cec5}
.page-content img{height:auto}
.site-footer a:hover{color:var(--acid)}
@media(max-width:700px){.admin-bar .site-header{top:46px}.archive-grid{grid-template-columns:1fr 1fr;gap:45px 14px}.archive-grid .work-card:nth-child(2n){margin-top:55px}.notes-page .note-row{grid-template-columns:28px 1fr}.notes-page .note-row small{display:none}.inner-hero{min-height:42vh}}

.nav ul{display:flex;align-items:center;gap:clamp(20px,3.4vw,52px);list-style:none;margin:0;padding:0}.nav li{margin:0;padding:0}
@media(max-width:700px){.nav ul{display:flex;flex-direction:column;align-items:flex-start;gap:22px}}
