@font-face{font-family:'Sora';src:url('fonts/Sora-VariableFont_wght.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}
*{box-sizing:border-box}
:root{--paper:#c9df2b;--ink:#11120b;--muted:#656b22;--line:rgba(17,18,11,.13);--accent:#a44320}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:'Sora',Arial,Helvetica,sans-serif;font-size:14px;line-height:1.5}
a{color:inherit;text-decoration:none}
.site-header{width:100%;margin:0 auto;padding:15px 4vw 12px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:30px}
.logo{display:block;width:64px;flex-shrink:0}.logo img{display:block;width:100%;height:auto;max-height:44px;object-fit:contain;mix-blend-mode:multiply}
nav{display:flex;gap:clamp(22px,3.2vw,64px);align-items:center;flex-wrap:wrap}
nav a{font-size:clamp(11px,.9vw,15px);font-weight:700;letter-spacing:.075em;text-transform:uppercase;padding:8px 0;border-bottom:3px solid transparent}
nav a:hover,nav a.active{border-bottom-color:var(--ink)}
main{width:min(100%,960px);margin:0 auto 0 0;padding:0 4vw}
.intro{display:flex;justify-content:space-between;align-items:center;padding:12px 0 11px;border-bottom:1px solid var(--line);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.intro p{margin:0}.intro span{color:var(--ink)}
.projects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 32px;margin:0;padding:16px 0 12px}
.project{min-width:0;padding:0 0 17px;border-bottom:1px solid var(--line)}
.project-heading{display:grid;grid-template-columns:28px minmax(0,1fr);gap:9px;margin-bottom:11px}
.num{font-size:10px;color:var(--accent);padding-top:4px;letter-spacing:.08em}
.project-info h2{font-size:clamp(14px,1vw,17px);line-height:1.25;font-weight:700;letter-spacing:-.025em;margin:0 0 4px}
.project-info p{font-size:9px;line-height:1.45;color:#35371a;margin:0 0 3px}
.project-info time{font-size:8px;color:var(--accent);letter-spacing:.04em}
.project-image{display:flex;align-items:flex-start;justify-content:flex-start;width:100%;height:auto;overflow:visible;background:transparent}
.project-image img{display:block;width:auto;height:auto;max-width:100%;max-height:230px;object-fit:contain;object-position:left top;filter:none;transition:opacity .2s ease}
.project-image:hover img,.project-image:focus-visible img{filter:none;transform:none;opacity:.94}
footer{width:100%;margin:0 auto;padding:22px 4vw 28px;display:flex;gap:24px;align-items:center;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
footer a{margin-left:auto;color:var(--ink)}
@media(min-width:1500px){.projects{gap:26px 32px}.project{padding-bottom:17px}.project-image img{max-height:230px}}
@media(max-width:700px){
.site-header{padding:17px 5vw;align-items:center;gap:14px}.logo{width:48px}nav{justify-content:flex-end;gap:6px 13px;max-width:82%}nav a{font-size:9px;letter-spacing:.04em;border-bottom-width:2px}.site-header nav a:last-child{display:none}
main{padding:0 5vw}.intro{font-size:9px;padding:16px 0 12px}.projects{grid-template-columns:1fr;gap:25px;padding-top:18px}.project{padding-bottom:22px}.project-heading{grid-template-columns:24px minmax(0,1fr);gap:7px;margin-bottom:10px}.project-info h2{font-size:19px}.project-info p{font-size:11px}.project-image img{max-height:360px}footer{padding:20px 5vw;gap:12px;font-size:9px}footer span:nth-child(2){display:none}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Original project images: retain color, full content and native aspect ratio. */
.project-image img{width:auto!important;height:auto!important;max-width:100%;object-fit:contain!important;filter:none!important}
.project-image:hover img,.project-image:focus-visible img{filter:none!important;transform:none!important}

/* Sora typeface supplied by the site owner */
body,button,input,textarea,select{font-family:'Sora',Arial,Helvetica,sans-serif}
nav a{font-weight:700}
.project-info h2{font-weight:650}

/* Lime editorial reference layout */
body{background:var(--paper)}
.logo img{mix-blend-mode:multiply}
.project-image img{max-width:100%;height:auto!important;width:auto!important;object-fit:contain!important;filter:none!important}
@media(max-width:700px){
 main{width:100%;padding:0 5vw}
 .projects{grid-template-columns:1fr;gap:22px}
 .project-image img{max-height:none}
}

/* Inner pages */
.inner-page{width:min(100%,960px);margin:0 auto 0 0;padding:0 4vw}
.visual-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 32px;padding:18px 0 32px}
.visual-card{min-width:0;border-bottom:1px solid var(--line);padding-bottom:15px}
.visual-image{display:flex;align-items:flex-start;justify-content:flex-start;width:100%;overflow:visible}
.visual-image img{display:block;width:auto;height:auto;max-width:100%;max-height:290px;object-fit:contain;object-position:left top;transition:opacity .2s ease}
.visual-image:hover img{opacity:.9}
.visual-caption{padding-top:9px}
.visual-caption h2{font-size:clamp(13px,1vw,16px);line-height:1.3;margin:0 0 3px;font-weight:700;letter-spacing:-.02em}
.visual-caption p{font-size:9px;line-height:1.5;margin:0;color:#35371a}
.music-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 22px}
.music-grid .visual-image img{max-height:200px}
.page-note{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding:0 0 30px}
.bio-layout{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(0,1.3fr);gap:36px;padding:22px 0 50px;align-items:start}
.bio-photo img{display:block;width:100%;height:auto;object-fit:contain}
.bio-copy{font-size:11px;line-height:1.7;max-width:620px}
.bio-lead{font-size:15px;line-height:1.5;font-weight:600;margin:0 0 28px}
.bio-copy h2{font-size:13px;margin:22px 0 8px;font-weight:700}
.bio-copy ul{padding-left:17px;margin:0}
.timeline p{margin:0 0 10px}
.timeline strong{display:inline-block;min-width:65px;color:#6d741e}
@media(max-width:700px){
 .inner-page{width:100%;padding:0 5vw}
 .visual-grid,.music-grid{grid-template-columns:1fr;gap:23px;padding-top:16px}
 .visual-image img,.music-grid .visual-image img{max-height:none;max-width:100%}
 .bio-layout{grid-template-columns:1fr;gap:22px;padding-top:18px}
 .bio-photo img{max-width:260px}
 .bio-copy{font-size:12px}
 .bio-lead{font-size:14px}
}

/* WORKS page: original project order and content, redesigned in the approved lime/Sora style */
.works-page{width:min(100%,1100px);margin:0 auto 0 0;padding:0 4vw}
.works-list{padding:0 0 36px}
.work-section{position:relative;border-bottom:1px solid rgba(17,18,11,.24);padding:27px 0 30px 17px;margin:0}
.work-section:before{content:"";position:absolute;left:0;top:27px;bottom:30px;width:3px;background:var(--section-accent);opacity:.95}
.work-heading{display:grid;grid-template-columns:32px minmax(0,1fr);gap:9px;align-items:start;margin-bottom:14px}
.work-index{font-size:10px;font-weight:700;letter-spacing:.08em;padding-top:3px;color:var(--section-accent)}
.work-heading-copy h2{font-size:clamp(16px,1.35vw,21px);font-weight:700;line-height:1.25;letter-spacing:-.025em;margin:0 0 6px}
.work-meta{display:flex;flex-wrap:wrap;gap:4px 15px;font-size:10px;line-height:1.5;color:#333619}
.work-description{max-width:820px;font-size:11px;line-height:1.7;margin:15px 0 18px;padding-left:41px}
.work-description p{margin:0 0 9px;white-space:normal}
.work-gallery{display:grid;gap:12px;align-items:start;margin:14px 0 0 41px}
.work-gallery.many{grid-template-columns:repeat(3,minmax(0,1fr))}
.work-gallery.single{grid-template-columns:minmax(0, min(100%, 620px))}
.work-image{display:flex;align-items:flex-start;justify-content:flex-start;min-width:0}
.work-image img{display:block;width:auto;height:auto;max-width:100%;max-height:360px;object-fit:contain;object-position:left top}
.work-gallery.single .work-image img{max-height:460px}
.work-links{margin:12px 0 0 41px;font-size:10px;text-transform:uppercase;letter-spacing:.07em}
.work-links a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){
 .works-page{width:100%;padding:0 5vw}
 .work-section{padding:22px 0 24px 12px}
 .work-section:before{top:22px;bottom:24px}
 .work-heading{grid-template-columns:24px minmax(0,1fr);gap:6px;margin-bottom:10px}
 .work-heading-copy h2{font-size:17px}
 .work-meta{font-size:9px}
 .work-description{padding-left:30px;font-size:11px;line-height:1.65}
 .work-gallery{margin-left:30px;gap:9px}
 .work-gallery.many{grid-template-columns:repeat(2,minmax(0,1fr))}
 .work-image img,.work-gallery.single .work-image img{max-height:none}
 .work-links{margin-left:30px}
}

/* Shared black footer band */
footer{background:#000!important;color:#fff!important;padding:22px 5vw!important;display:flex;align-items:center;justify-content:space-between;gap:18px}
footer,footer *{color:#fff!important}
footer .footer-contact{display:flex;flex-direction:column;align-items:flex-end;gap:4px;text-decoration:none}
footer .footer-contact span{font-size:11px;opacity:.85}
@media(max-width:600px){footer{flex-wrap:wrap;gap:12px}footer .footer-contact{align-items:flex-start}}
