:root{--bg:#111714;--panel:#1b241f;--ink:#f4f6f0;--muted:#abb5ad;--accent:#bbfa75;--line:#354238;font-family:Arial,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,summary{touch-action:manipulation}button,a{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:5px}button{cursor:pointer}p{line-height:1.8}h1,h2,h3,p{margin-top:0}h1,h2{word-break:keep-all;letter-spacing:-.055em}h2{font-size:clamp(2rem,4vw,3.7rem);line-height:1.27;font-weight:650}.skip{position:absolute;top:-90px;background:var(--accent);color:var(--bg);padding:15px;z-index:99}.skip:focus{top:0}.site-header{height:110px;padding:0 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;font-size:18px;font-weight:800;letter-spacing:-.04em;line-height:.96}.brand-mark{color:var(--accent);font-size:45px;font-weight:400;letter-spacing:-.14em;margin-right:8px}.brand-dot{color:var(--accent)}nav{display:flex;align-items:center;gap:36px;font-size:14px}.nav-contact{padding:14px 20px;border:1px solid #647063;border-radius:30px}.nav-contact span{margin-left:32px;color:var(--accent)}.hero{padding:28px 5% 0;overflow:hidden}.hero-label,.hero-bottom,.film-top{font-size:12px;letter-spacing:.07em;display:flex;justify-content:space-between;color:var(--muted)}.hero-grid{display:grid;grid-template-columns:1.16fr 1fr;gap:4%;align-items:center;padding:58px 0 70px}.eyebrow{font-size:12px;letter-spacing:.13em;font-weight:600;color:var(--muted);margin-bottom:30px}.hero h1{font-size:clamp(2.8rem,5.15vw,5.6rem);line-height:1.25;margin-bottom:28px;letter-spacing:-.065em}.outline{color:#d2d9d2}.accent{color:var(--accent)}.hero-description{color:var(--muted);font-size:16px;line-height:1.9}.actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:28px}.button,button{display:inline-flex;align-items:center;justify-content:center;padding:17px 25px;border:1px solid #60715e;background:transparent;color:var(--ink);border-radius:5px;font-size:14px;font-weight:600}.primary,button:not(.secondary){background:var(--accent);color:#152316;border-color:var(--accent)}button:disabled{opacity:.5;cursor:wait}.text-link{font-size:14px;border-bottom:1px solid #677564;padding:10px 0}.text-link span{margin-left:20px}.hero-visual{position:relative;transform:rotate(-3deg);margin-top:20px}.film-top{padding:15px;background:#d7e3d4;color:#243225;font-size:10px}.film-window{aspect-ratio:16/11;background:#000;display:flex;align-items:center;position:relative;z-index:1}.film-window iframe{width:100%;height:100%;border:0}.film-bottom{background:var(--accent);color:#17221b;display:flex;justify-content:space-between;padding:23px;align-items:end}.film-bottom>span{font-size:clamp(24px,3.2vw,45px);font-weight:850;line-height:1.03;letter-spacing:-.045em}.film-bottom p{font-size:12px;margin:0;text-align:right}.stripe-art{position:absolute;right:-35px;bottom:-22px;width:80%;height:52%;z-index:-1;background:repeating-linear-gradient(115deg,#6b8d62 0,#6b8d62 2px,transparent 2px,transparent 12px)}.hero-bottom{border-top:1px solid var(--line);padding:24px 0;gap:20px;font-size:12px;letter-spacing:0}.hero-bottom a{font-size:10px;letter-spacing:.1em}.section{padding:105px 7%}.intro{background:#f1f3eb;color:#19271e}.intro .eyebrow{color:#637061}.intro-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:8%}.intro-grid p{color:#526151}.lead{font-size:23px;line-height:1.6}.intro-grid .lead{color:#253827;font-weight:600}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:65px}.principles article{border-top:1px solid #b9c6b6;padding-top:22px}.principles article>span{font-size:12px;color:#536a4e}.principles h3{font-size:19px;letter-spacing:-.04em;margin:22px 0 12px}.principles p{font-size:15px;color:#596653}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:45px}.section-heading h2{margin:0}.work-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:50px 32px}.work-card{display:block}.work-card img,.work-type{width:100%;aspect-ratio:16/10;object-fit:cover;background:#26392b}.work-type{display:flex;padding:30px;align-items:end;justify-content:space-between;color:var(--accent);font-size:24px}.work-type span{font-size:80px}.card-info{padding:22px 0}.card-info>span{font-size:12px;color:var(--accent)}.card-info h3{font-size:24px;margin:12px 0}.card-info p{font-size:15px;color:var(--muted)}.portfolio-intro{padding:55px;background:linear-gradient(120deg,#253b2b,#18231c);border-left:2px solid var(--accent)}.portfolio-intro h3{font-size:36px;letter-spacing:-.05em;line-height:1.4}.portfolio-intro p{color:var(--muted)}.services{background:#19251d}.services>h2{margin-bottom:55px}.service-row{border-top:1px solid #42513f;padding:32px 0;display:grid;grid-template-columns:60px 1fr 1fr;gap:25px;align-items:start}.service-row>span{font-size:12px;color:var(--accent)}.service-row h3{font-size:24px;margin:0}.service-row p{font-size:15px;color:var(--muted);margin:0}.faq{max-width:1100px;margin:auto}.faq details{border-bottom:1px solid var(--line);padding:25px 0}.faq summary{font-size:18px;cursor:pointer;line-height:1.6}.faq details p{color:var(--muted);margin:20px 0 0}.contact{text-align:center;background:var(--accent);color:#19251c}.contact .eyebrow{color:#4c643c}.contact h2{font-size:clamp(3rem,6.5vw,6rem)}.contact h2 span{color:#466337}.contact .button{background:#19251c;color:white;border:0}.contact p{margin-top:28px;font-size:14px}footer{padding:65px 5% 25px}footer>.brand{font-size:27px}footer>p{font-size:14px;color:var(--muted);margin:20px 0 45px}.footer-row{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:22px 0;border-top:1px solid var(--line);font-size:12px}.muted{color:var(--muted)}.listing{min-height:65vh}.listing h1,.story h1{font-size:clamp(2.5rem,5vw,4.8rem);line-height:1.3}.listing .work-grid{margin-top:60px}.story{max-width:1060px;margin:auto}.story-image{max-width:100%;height:auto}.story .lead{color:var(--muted)}.video{aspect-ratio:16/9;margin:40px 0}.video iframe{height:100%;width:100%;border:0}.prose{margin:50px 0;font-size:18px;overflow-wrap:anywhere}.admin{background:#111914}.admin-header{padding:25px 4%;border-bottom:1px solid var(--line);display:flex;gap:25px;align-items:center;justify-content:space-between}.admin-header>span{color:var(--muted);font-size:14px}.admin-layout{display:grid;grid-template-columns:320px minmax(0,1fr);min-height:90vh}.admin aside{padding:35px 25px;border-right:1px solid var(--line)}.admin aside h1{font-size:28px}.admin aside p{font-size:12px;overflow-wrap:anywhere}.admin .actions{gap:8px}.admin button{padding:12px 16px;font-size:14px}.editor{max-width:950px;width:100%;padding:40px;margin:auto}.editor-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.editor-heading h2{font-size:26px}.editor-heading span{font-size:12px;color:var(--accent)}.editor label{display:flex;flex-direction:column;font-size:14px;gap:10px;margin-bottom:22px}.editor input,.editor textarea,.editor select{width:100%;padding:14px;background:#202c23;color:var(--ink);border:1px solid #54614e;border-radius:5px;font-size:16px}.editor textarea{resize:vertical;line-height:1.7}.editor input:disabled,.editor select:disabled{opacity:.65}.form-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:20px}.editor-actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0 20px;align-items:center}.editor-actions a{font-size:14px;text-decoration:underline}.editor .muted{font-size:13px}.item-list{display:grid;gap:12px;margin-top:28px}.item-list button{display:flex;flex-direction:column;align-items:start;text-align:left;gap:10px;background:#202c23!important;color:var(--ink)!important;border:1px solid #465340!important;line-height:1.5}.item-list span{font-size:12px;color:var(--muted)}#message{color:var(--accent);font-size:14px}#message.error{color:#ffb9a7}#image-preview{max-width:100%;max-height:260px;display:block;margin-bottom:15px}#image-preview[hidden]{display:none}.history{margin-top:50px;border-top:1px solid var(--line);padding-top:25px}.history p{font-size:13px;color:var(--muted)}.history-row{display:flex;gap:20px;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.history-row span{font-size:12px;overflow-wrap:anywhere}.history-row button{flex-shrink:0}
@media(min-width:1600px){.hero,.site-header,.section,footer{padding-left:max(7%,calc((100vw - 1500px)/2));padding-right:max(7%,calc((100vw - 1500px)/2))}.hero-grid{gap:7%}}
@media(max-width:850px){.site-header{height:90px}.brand{font-size:15px}.brand-mark{font-size:35px}nav{gap:20px}.nav-contact{padding:12px 16px}.nav-contact span{margin-left:15px}.hero-grid{grid-template-columns:1fr;padding:40px 0 50px;gap:35px}.hero h1{font-size:clamp(2.6rem,8vw,4.7rem)}.hero-visual{max-width:650px;width:94%;margin:20px auto}.film-window{aspect-ratio:16/9}.film-bottom>span{font-size:36px}.hero-bottom{flex-wrap:wrap}.hero-bottom>span:nth-child(2){display:none}.section{padding:70px 6%}.intro-grid{grid-template-columns:1fr;gap:20px}.principles{gap:22px}.principles h3{font-size:17px}.service-row{grid-template-columns:30px 1fr}.service-row p{grid-column:2}.admin-layout{grid-template-columns:250px minmax(0,1fr)}.editor{padding:25px}.form-grid{grid-template-columns:1fr;gap:0}}
@media(max-width:580px){.site-header{padding:0 6%}.hero{padding:24px 6% 0}.hero-label{font-size:9px}.hero h1{font-size:10vw}.hero-description{font-size:14px}.actions{gap:18px}.hero .button{padding:15px 20px}.hero .text-link{font-size:12px}.film-bottom>span{font-size:28px}.film-bottom p{font-size:10px}.film-top{font-size:8px;padding:12px}.hero-bottom{font-size:10px}.principles{grid-template-columns:1fr;gap:18px;margin-top:35px}.principles article{padding-top:18px}.principles h3{margin-top:14px}.section-heading{align-items:start;flex-direction:column;gap:20px}.work-grid{grid-template-columns:1fr;gap:20px}.portfolio-intro{padding:30px}.portfolio-intro h3{font-size:28px}.service-row h3{font-size:20px}.faq summary{font-size:16px}.footer-row{flex-direction:column;gap:14px}.admin-header{flex-wrap:wrap;font-size:12px}.admin-header .brand{font-size:18px}.admin-layout{grid-template-columns:1fr}.admin aside{border-right:0;border-bottom:1px solid var(--line)}.item-list{max-height:230px;overflow-y:auto}.editor{padding:25px 20px}.history-row{flex-wrap:wrap}.editor-heading{align-items:start;flex-direction:column;gap:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
.work-media{position:relative;overflow:hidden;background:#26392b}.work-media img{display:block;height:auto;aspect-ratio:7/4;transition:transform .35s ease}.work-card:hover .work-media img{transform:scale(1.035)}.play-badge{position:absolute;inset:0;margin:auto;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#132018d9;border:1px solid #d4e4c980;color:white;font-size:25px;padding-left:3px}.duration{position:absolute;bottom:12px;right:12px;padding:5px 9px;background:#111d16eb;border-radius:3px;font-size:12px;font-variant-numeric:tabular-nums}.watch-label{display:inline-block;margin-top:10px;font-size:13px!important;color:var(--ink)!important;border-bottom:1px solid #65775e;padding-bottom:6px}.listing-description{max-width:740px;color:var(--muted);font-size:17px}.category-filters{display:flex;gap:10px;flex-wrap:wrap;margin:38px 0 10px}.category-filters a{display:flex;gap:10px;padding:12px 18px;border:1px solid var(--line);border-radius:50px;font-size:14px}.category-filters a[aria-current]{background:var(--accent);color:var(--bg);border-color:var(--accent)}.category-filters span{font-size:12px;opacity:.7}.story-back{display:inline-block;margin-bottom:36px;font-size:14px;border-bottom:1px solid #64785d;padding-bottom:7px}.story h1{font-size:clamp(2rem,4.2vw,3.6rem)}.story .lead{font-size:20px}.video-info{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:20px 0;border-bottom:1px solid var(--line);font-size:13px;color:var(--muted)}.video-info a{color:var(--accent);text-decoration:underline}.story .video{margin-bottom:0}.prose h2,.topic-section h2{font-size:24px;letter-spacing:-.035em;margin-bottom:22px}.topic-section{margin-bottom:30px}.topic-tags{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:10px}.topic-tags li{font-size:14px;background:#243529;padding:9px 14px;border-radius:25px;color:#c9e1be}.source-note,.original-title{font-size:13px;line-height:1.7;color:var(--muted)}.story-cta{border-top:1px solid var(--line);margin-top:50px;padding-top:35px}.story-cta h2{font-size:26px}.story-cta p{font-size:16px;color:var(--muted)}.video-settings{border:1px solid var(--line);padding:20px;margin-bottom:25px}.video-settings summary{cursor:pointer;margin-bottom:20px;font-size:15px}.video-settings input{font-size:14px}.category-filters a{display:flex!important}
@media(max-width:580px){.listing-description{font-size:15px}.category-filters{gap:8px}.category-filters a{font-size:13px;padding:10px 13px}.story .lead{font-size:17px}.prose{font-size:16px}.video-info{font-size:12px}.work-grid .card-info h3{font-size:21px}}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:65px}.stats>div{border-top:1px solid #b9c6b6;padding-top:22px}.stats strong{display:block;font-size:clamp(2.4rem,4.5vw,4rem);font-weight:650;letter-spacing:-.05em;line-height:1.1}.stats span{display:block;margin-top:10px;font-size:15px;color:#596653;word-break:keep-all}
@media(max-width:580px){.stats{gap:16px;margin-top:35px}.stats>div{padding-top:16px}.stats strong{font-size:30px}.stats span{font-size:12px}}
.sub-contact{border-bottom:1px solid currentColor;padding-bottom:2px}.cta-sub{margin:22px 0 0;font-size:14px}
.nav-links{display:flex;align-items:center;gap:inherit}
@media(max-width:580px){.site-header{height:72px;margin-bottom:49px;border-bottom-color:transparent;transition:border-color .2s}.nav-links{position:absolute;left:0;right:0;top:100%;height:49px;padding:0 6%;gap:24px;background:var(--bg);border-bottom:1px solid var(--line);transition:opacity .2s,visibility .2s}.scrolled .site-header{border-bottom-color:var(--line)}.scrolled .nav-links{opacity:0;visibility:hidden}}
.site-header{position:sticky;top:0;z-index:50;background:var(--bg)}html{scroll-padding-top:120px}
