/* 01. Brand tokens: one display family, one reading family. */
@font-face{font-family:Syne;src:url('assets/syne.ttf') format('truetype');font-style:normal;font-weight:400 800;font-display:swap}
@font-face{font-family:'Barlow Condensed';src:url('assets/barlow-condensed.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Barlow Condensed';src:url('assets/barlow-condensed-semibold.ttf') format('truetype');font-style:normal;font-weight:600;font-display:swap}
:root{
  --bg-primary:#050505;
  --bg-secondary:#141414;
  --bg-crimson-dark:#5E0B0E;
  --text-primary:#EDEDED;
  --text-muted:#A3A3A3;
  --accent-red:#D91C24;
  --accent-green:#26B937;
  --border-thin:1px solid rgba(237,237,237,.75);
  --radius-sharp:0px;
  --skew-badge:skewX(-12deg);
  --font-display:'Syne','Syncopate',sans-serif;
  --font-body:'Barlow Condensed','Space Grotesk',sans-serif;
  --ink:var(--bg-primary);
  --paper:var(--text-primary);
  --red:var(--accent-red);
  --line:rgba(237,237,237,.24);
  --display:var(--font-display);
  --body:var(--font-body);
}
[hidden]{display:none!important}
body{background:var(--bg-primary);color:var(--text-primary);font:400 19px/1.5 var(--font-body)}
::selection{background:var(--accent-green);color:var(--bg-primary)}
h1,h2,h3{font-family:var(--font-display);font-weight:800;font-style:normal}
a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline-color:var(--accent-green)}
.skip-link{background:var(--accent-green);color:var(--bg-primary)}

/* 02. Retained corner header, complete logo and quick navigation. */
header{inset:24px 40px auto;display:grid;grid-template-columns:1fr auto 1fr;gap:24px;align-items:start}
.hud-badge{justify-self:start;display:flex;align-items:center;gap:10px;border:var(--border-thin);padding:9px 13px;transform:var(--skew-badge);font:11px/1.3 var(--font-body);letter-spacing:.7px;margin-top:12px}
.hud-badge>*{transform:skewX(12deg)}
.hud-badge i{width:6px;height:6px;background:var(--accent-green);display:block;flex-shrink:0}
.hud-badge:hover{border-color:var(--accent-green)}
.brand{width:104px;justify-self:center}
.header-actions{justify-self:end;justify-content:flex-end;gap:20px;flex-wrap:wrap;margin-top:12px;max-width:290px}
.instagram-nav{font:14px var(--font-body);letter-spacing:.6px;text-transform:uppercase;min-height:44px}
.header-fiverr{white-space:nowrap;font:14px var(--font-body);letter-spacing:.5px;border:var(--border-thin);padding:12px 15px}
.header-fiverr:hover,.contact-trigger:hover{background:var(--accent-green);border-color:var(--accent-green);color:var(--bg-primary)}
.contact-trigger{font:14px var(--font-body);letter-spacing:.6px;text-transform:uppercase;gap:18px;min-height:44px}
.side-nav{mix-blend-mode:normal;color:var(--text-muted);left:30px}
.side-nav a{font:14px var(--font-body);opacity:1;min-height:28px}
.side-nav a:hover,.side-nav a.active{color:var(--text-primary)}
.side-nav a.active:before{border-radius:0;background:var(--accent-green)}
.side-nav span{font:11px var(--font-body);color:var(--text-muted)}

/* 03. Quiet analogue texture. Controls remain usable above it. */
.film-grain{position:fixed;inset:0;pointer-events:none;z-index:15;background:url('assets/grain.svg') repeat;opacity:.055;mix-blend-mode:screen}
.hero{background:var(--bg-primary);min-height:700px;border-bottom:1px solid var(--line)}
.color-field,.css-atmosphere .color-field{background:radial-gradient(ellipse at 75% 55%,#5e0b0e 0%,#180507 37%,#050505 73%);filter:blur(10px)}
.css-atmosphere .color-field i{mix-blend-mode:screen;filter:blur(18px);background:radial-gradient(ellipse,#a71924 0%,#5e0b0e88 35%,transparent 70%);height:36%;opacity:.5}
.css-atmosphere .color-field i:nth-child(2){background:radial-gradient(ellipse,#6b0d15 0%,#31060a66 45%,transparent 70%);opacity:.55}
.css-atmosphere .color-field i:nth-child(3){background:radial-gradient(ellipse,#7f1822 0%,#43080d66 45%,transparent 72%);opacity:.4}
.hero-vignette{background:linear-gradient(90deg,#050505a6,transparent 80%),linear-gradient(0deg,#050505bb,transparent 40%,#05050570)}
.hero-brand{left:21%;top:46%;width:74%;max-width:1100px}
h1{font:800 clamp(48px,6.4vw,102px)/1.05 var(--font-display);letter-spacing:-.055em}
.hero-brand p{font:21px/1.45 var(--font-body);color:var(--text-primary);max-width:470px;margin-top:28px}
.watch-film{left:21%;top:auto;bottom:18%;transform:none;font:600 16px var(--font-body);letter-spacing:.2px}
.watch-icon{width:46px;height:46px;border-radius:var(--radius-sharp);border:var(--border-thin)}
.watch-film:hover .watch-icon{background:var(--accent-green);color:var(--bg-primary);transform:none;border-color:var(--accent-green)}
.hero-foot{left:auto;right:40px;bottom:24px;gap:0}
.hero-foot button{font:14px var(--font-body);letter-spacing:0;min-height:44px;color:var(--text-muted)}
.hero-foot button:hover{color:var(--text-primary)}

/* 04. A single portfolio section, consistently organized by service. */
.work,.work[data-theme],.studio{background:var(--bg-primary);color:var(--text-primary)}
.work,.studio,.contact{padding-left:190px;padding-right:5%}
.work{padding-top:80px;min-height:auto;padding-bottom:90px}
.work-heading{margin-bottom:42px}
.work-heading h2{font:800 clamp(32px,4vw,60px)/1.08 var(--font-display);letter-spacing:-.05em;margin:0}
.work-heading p{font:19px var(--font-body);color:var(--text-muted);margin:18px 0 0}
.work-layout{grid-template-columns:160px minmax(0,1fr);gap:42px;margin-top:0;align-items:start}
.project-tabs{gap:0}
.project-tabs button{font:600 21px/1.2 var(--font-body);opacity:1;color:var(--text-muted);min-height:60px;padding:16px 0}
.project-tabs button[aria-selected=true]{color:var(--text-primary);border-bottom-color:var(--accent-green)}
.project-tabs button:hover{color:var(--accent-green)}
#project-panel{min-width:0}
#service-description{font:19px/1.45 var(--font-body);color:var(--text-muted);max-width:660px;margin:0 0 24px}
.project-picker{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}
.project-picker button{font:17px var(--font-body);padding:10px 14px;min-height:44px;border:1px solid var(--line);color:var(--text-muted)}
.project-picker button[aria-pressed=true]{border-color:var(--text-primary);color:var(--text-primary)}
.project-picker button:hover{border-color:var(--accent-green)}
.project-meta{margin:0 0 24px;display:block}
.project-meta h3,#art-project>h3{font:800 clamp(23px,2.8vw,42px)/1.15 var(--font-display);letter-spacing:-.04em;margin:0;overflow-wrap:anywhere}
#art-project>h3{margin-bottom:28px}
.project-triptych{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.project-triptych .project-screen{border:var(--border-thin);border-radius:var(--radius-sharp);box-shadow:none;aspect-ratio:16/9;background:var(--bg-secondary)}
.project-screen img{display:block;object-fit:contain}
.project-play{width:100%;height:100%;inset:0;background:transparent;border:0;display:grid;place-items:center;transition:background .2s;border-radius:0;backdrop-filter:none;box-shadow:none}
.project-play span{display:grid;place-items:center;border:1px solid #edededbb;width:38px;height:38px;background:#05050588;font-size:10px}
.project-play:hover{transform:none;background:#05050528}
.project-play:hover span{background:var(--accent-green);border-color:var(--accent-green);color:var(--bg-primary)}
.project-controls{display:flex;justify-content:flex-end;padding-top:12px}
#preview-toggle{font:16px var(--font-body);padding:8px 0;min-height:44px;border-bottom:1px solid var(--line)}
#preview-toggle:hover,#next-project:hover{color:var(--accent-green);border-color:var(--accent-green)}
#project-description{font:19px/1.5 var(--font-body);color:var(--text-muted);max-width:660px;min-height:0;margin:16px 0 0}
.project-bottom{display:flex;justify-content:space-between;font:16px var(--font-body);letter-spacing:0;padding-top:16px;margin-top:24px;border-top:1px solid var(--line);color:var(--text-muted)}
.project-bottom button{font:16px var(--font-body);min-height:44px;padding:8px 0;color:var(--text-primary)}

/* 05. The existing artwork collection and viewer now belong to The Work. */
.cover-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 12px}
.cover-card{min-width:0}
.cover-card button{display:flex;flex-direction:column;padding:0;width:100%;text-align:left}
.cover-card h3{font:800 clamp(13px,1.05vw,17px)/1.3 var(--font-display);letter-spacing:-.025em;margin:12px 0 0;order:2;overflow-wrap:anywhere}
.cover-image{display:block;width:100%;position:relative;aspect-ratio:1/1;border:var(--border-thin);border-radius:0;background:var(--bg-secondary);overflow:hidden}
.cover-image img{width:100%;height:100%;object-fit:contain;display:block}
.cover-card button:hover .cover-image{border-color:var(--accent-green)}
.cover-card button:hover h3{color:var(--accent-green)}
#art-viewer{width:min(1250px,96vw);background:var(--bg-primary)}
#art-image{width:100%;height:72svh;object-fit:contain;display:block;background:var(--bg-primary)}
.art-viewer-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;border-top:1px solid var(--line);margin-top:15px;padding-top:12px;font:15px var(--font-body)}
.art-viewer-footer button{font:15px var(--font-body);padding:12px 8px;min-height:44px;border:1px solid var(--line)}
.art-viewer-footer button:hover{color:var(--accent-green);border-color:var(--accent-green)}

/* 06. Profile and contact: direct copy, no duplicate service list or strips. */
.studio{padding-top:80px;padding-bottom:90px;border-block:1px solid var(--line)}
.studio-layout{gap:55px;grid-template-columns:1fr 1fr;margin-top:0;align-items:start}
.studio h2{font:800 clamp(28px,3.3vw,52px)/1.12 var(--font-display);letter-spacing:-.05em}
.studio-copy{max-width:430px}
.studio-copy p{font:19px/1.5 var(--font-body);color:var(--text-muted)}
.studio-copy .large-copy{font:600 26px/1.3 var(--font-body);color:var(--text-primary);margin-top:0}
.underlined{font:18px var(--font-body);min-height:44px}
.underlined:hover{color:var(--accent-green)}
.contact{background:var(--bg-crimson-dark);color:var(--text-primary);padding-top:80px}
.contact h2{font:800 clamp(34px,5.4vw,80px)/1.1 var(--font-display);letter-spacing:-.05em;margin:0 0 42px}
.contact-bottom>p{font:23px/1.4 var(--font-body);max-width:350px}
.contact-links strong{font:400 clamp(20px,2.2vw,30px) var(--font-body)}
.contact-links a:hover{color:var(--accent-green)}
.contact-links a>span{font:16px var(--font-body);letter-spacing:0;color:inherit;margin-bottom:8px}
.contact-links .fiverr-link{font:17px var(--font-body)}
footer{font:13px var(--font-body);border-color:var(--line);margin-top:60px;align-items:center}
footer>a{padding:10px 0}
dialog{border:var(--border-thin);border-radius:0;box-shadow:none;background:var(--bg-secondary);color:var(--text-primary)}
#contact-dialog{background:var(--bg-secondary)}
#contact-dialog h2{font:800 clamp(30px,4vw,52px)/1.1 var(--font-display);letter-spacing:-.05em}
#contact-dialog p{font:19px/1.45 var(--font-body);color:var(--text-muted)}
.dialog-bar h2{font:800 20px/1.2 var(--font-display);letter-spacing:-.035em}
.dialog-bar button,.dialog-close{font:14px var(--font-body);min-height:44px;flex-shrink:0}
.dialog-bar button:hover,.dialog-close:hover{background:var(--accent-green);color:var(--bg-primary)}
#player>p{font:15px var(--font-body)}

/* 07. Responsive refinements; all three quick contact routes stay visible. */
@media(min-width:1600px){.work-layout{grid-template-columns:180px minmax(0,1fr);gap:60px}}
@media(max-width:1100px){
  .work,.studio,.contact{padding-left:160px;padding-right:4%}
  .work-layout{grid-template-columns:130px minmax(0,1fr);gap:25px}
  .project-tabs button{font-size:19px}
  .hero-brand{left:23%;width:73%}h1{font-size:6.1vw}.watch-film{left:23%}
  .studio-layout{gap:28px}
  .header-actions{gap:12px}.instagram-nav{display:flex}
}
@media(max-width:760px){
  header{inset:18px 22px auto;gap:12px;grid-template-columns:1fr auto 1fr;align-items:center}
  .brand{width:76px}.hud-badge{font-size:9px;padding:7px;gap:6px;margin-top:0;letter-spacing:.3px}
  .hud-badge i{width:4px;height:4px}
  .header-actions{display:grid;grid-template-columns:auto auto;gap:0 9px;margin-top:0;max-width:none}
  .instagram-nav,.header-fiverr,.contact-trigger{font-size:12px;letter-spacing:0}
  .instagram-nav{gap:3px}.instagram-nav span{font-size:12px}
  .header-fiverr{border:0;padding:10px 0}
  .contact-trigger{grid-column:1/-1;justify-content:space-between;padding:8px 0;gap:8px}
  .contact-trigger span{font-size:16px}
  .side-nav{left:22px;right:22px;top:126px;gap:12px}
  .side-nav a{font-size:13px;gap:5px;min-height:32px}.side-nav span{font-size:10px}
  .hero{min-height:670px}
  .hero-brand{left:7%;top:43%;width:86%;transform:translateY(-25%)}
  h1{font-size:8.6vw;line-height:1.14;letter-spacing:-.055em}
  .hero-brand p{font-size:20px;max-width:350px;margin-top:24px}
  .watch-film{left:7%;bottom:105px;font-size:16px}
  .hero-foot{left:auto;right:22px;bottom:20px;display:block}
  .hero-foot button{font-size:13px}
  .work,.studio,.contact{padding:55px 22px 65px}
  .work-heading{margin-bottom:28px}.work-heading h2{font-size:clamp(28px,7.5vw,42px)}
  .work-heading p{font-size:18px;margin-top:14px}
  .work-layout{display:block;margin-top:0}
  .project-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:28px}
  .project-tabs button{font-size:17px;line-height:1.25;min-height:64px;padding:10px 0;display:block}
  #service-description{font-size:18px;margin-bottom:22px}
  .project-picker{margin-bottom:24px}.project-picker button{font-size:17px}
  .project-meta h3,#art-project>h3{font-size:clamp(23px,5.5vw,34px);line-height:1.15}
  .project-triptych{gap:10px}.project-play span{width:26px;height:26px;font-size:8px}
  .project-controls{padding-top:8px}#project-description{font-size:18px}
  .cover-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 12px}.cover-card h3{font-size:14px}
  .studio-layout{grid-template-columns:1fr;gap:28px;margin-top:0}.studio h2{font-size:clamp(28px,7.2vw,43px)}
  .studio-copy{max-width:490px}.studio-copy .large-copy{font-size:24px}.studio-copy p{font-size:18px}
  .contact h2{font-size:clamp(30px,8vw,48px);margin:0 0 28px}.contact-bottom>p{font-size:21px}
  .contact-links strong{font-size:23px}.contact{padding-bottom:0}
  #contact-dialog{padding:50px 24px 24px}#contact-dialog h2{font-size:32px}
  .dialog-bar h2{font-size:16px}.dialog-bar{gap:12px}.dialog-bar button{font-size:12px}
  #art-image{height:65svh}.art-viewer-footer{font-size:13px}.art-viewer-footer button{font-size:13px}
  footer{font-size:12px;margin-top:40px}
}
@media(max-width:360px){
  header{left:18px;right:18px;gap:8px}.brand{width:62px}.hud-badge{font-size:8px;padding:5px;gap:4px}
  .header-actions{gap:0 7px}.instagram-nav,.header-fiverr,.contact-trigger{font-size:11px}
  .side-nav{left:18px;right:18px;gap:8px}.side-nav span{display:none}.side-nav a{font-size:13px}
  .work,.studio,.contact{padding-left:18px;padding-right:18px}
  .project-tabs{gap:8px}.project-tabs button{font-size:16px}
  .project-play span{width:22px;height:22px}.cover-card h3{font-size:13px}
  #contact-dialog h2{font-size:28px}
}
@media(prefers-contrast:more){.film-grain{opacity:.02}.side-nav,#project-description,#service-description{color:var(--text-primary)}}
@media(forced-colors:active){.film-grain,.hero-vignette,.color-field,#atmosphere{display:none}}

/* Portable interface icons: independent of installed symbol/emoji fonts. */
.ui-icon{display:inline-block;vertical-align:-2px;flex-shrink:0;width:16px;height:16px}
.play-icon{width:14px;height:14px}
.project-play .play-icon{width:12px;height:12px}
@media(max-width:760px){.header-actions .ui-icon{width:12px;height:12px}.project-play .play-icon{width:10px;height:10px}}
