/* Shared, low-motion presentation for the public site. */
:root{color-scheme:dark;--ink:#0a0d11;--panel:#141b24;--panel-2:#1a222c;--line:#343d47;--text:#f5f6f3;--muted:#bdc4ca;--yellow:#f4bf2a;--yellow-light:#ffda68;--shell:min(1240px,calc(100% - 48px))}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--text);font-family:Manrope,'Segoe UI',sans-serif;line-height:1.55}body.modal-open{overflow:hidden}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}::selection{background:var(--yellow);color:#111}h1,h2,h3,p,figure{margin-top:0}.skip-link{position:absolute;left:-9999px;z-index:100}.skip-link:focus{left:16px;top:16px;padding:12px;background:var(--yellow);color:#111}.shell{width:var(--shell);margin-inline:auto}.eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--yellow);font-size:.75rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.eyebrow:before{content:'';width:26px;height:2px;background:currentColor}.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:50px;padding:12px 21px;border:1px solid var(--line);border-radius:8px;background:#ffffff0a;color:var(--text);font-weight:800;transition:background .2s,border-color .2s,transform .2s}.button:hover{border-color:var(--yellow);transform:translateY(-2px)}.button--yellow{background:var(--yellow);border-color:var(--yellow);color:#151515}.button--yellow:hover{background:var(--yellow-light)}.button--small{min-height:42px;padding:9px 15px;font-size:.82rem}.button:focus-visible,.nav a:focus-visible,.mobile-nav a:focus-visible,.story-thumb:focus-visible,.gallery-tile:focus-visible{outline:3px solid var(--yellow-light);outline-offset:3px}
.site-header{position:relative;z-index:20;background:#0d1117;border-bottom:1px solid #ffffff18}.header-inner{width:var(--shell);min-height:78px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:inline-flex;align-items:center;gap:11px;font-size:1rem;line-height:1.12;letter-spacing:.04em;font-weight:800;white-space:nowrap}.brand img{width:42px;height:42px;object-fit:contain}.brand small{display:block;color:var(--yellow);font-size:.59rem;letter-spacing:.24em;text-transform:uppercase}.nav{display:flex;align-items:center;gap:23px}.nav a{font-size:.84rem;font-weight:700;color:#d2d5d9;transition:color .2s}.nav a:hover,.nav a[aria-current=page]{color:var(--yellow)}.header-actions{display:flex;gap:9px}.mobile-nav{display:none}
.brand img{object-fit:cover;object-position:left center}
.hero{position:relative;min-height:min(760px,calc(100svh - 78px));display:grid;align-items:center;overflow:hidden;background:#151d25}.hero__photo,.hero__shade{position:absolute;inset:0}.hero__photo{width:100%;height:100%;object-fit:cover;object-position:center 57%}.hero__shade{background:linear-gradient(90deg,#090d12ec 0%,#090d12ba 37%,#090d1250 72%,#090d1230),linear-gradient(0deg,#090d12bb,transparent 46%)}.hero:after{content:'';position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(117deg,transparent 0 95px,#f4bf2a0c 96px,transparent 97px)}.hero__inner{position:relative;z-index:1;padding-block:92px 100px}.hero__copy{max-width:780px}.hero h1{margin:20px 0 18px;font-size:clamp(3.35rem,7.8vw,7.7rem);line-height:.99;letter-spacing:-.07em;font-weight:800;text-wrap:balance}.hero h1 em{font-style:normal;color:var(--yellow)}.hero__lead{max-width:560px;color:#e2e6e8;font-size:clamp(1rem,1.25vw,1.18rem)}.hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.hero__side-note{position:absolute;right:0;bottom:80px;border-left:2px solid var(--yellow);padding-left:17px;max-width:210px;font-size:.73rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#e0e4e5}.hero__side-note strong{display:block;color:var(--yellow);font-size:2rem;line-height:1.1;letter-spacing:-.05em}.hero__scroll{position:absolute;z-index:2;left:max(24px,calc((100vw - 1240px)/2));bottom:28px;color:#dce2e5;font-size:.72rem;letter-spacing:.15em;text-transform:uppercase}
.section{padding:88px 0}.section--muted{background:#111720}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px}.section-heading h2,.intro-section h2,.contact-copy h2,.page-hero h1,.detail-hero h1{margin:10px 0 0;font-size:clamp(2.25rem,4vw,4.3rem);line-height:1.08;letter-spacing:-.055em}.section-heading p{max-width:400px;margin:0;color:var(--muted)}.intro-grid{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr);gap:68px;align-items:center}.intro-grid>.intro-copy>p{max-width:600px;margin:22px 0 0;color:var(--muted);font-size:1.06rem}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.principle{padding:24px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(150deg,#202a35,#111720)}.principle span{color:var(--yellow);font-size:.74rem;font-weight:800}.principle h3{margin:28px 0 8px;font-size:1rem}.principle p{margin:0;color:var(--muted);font-size:.83rem}
.service-grid,.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.service-card,.work-card{position:relative;display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:linear-gradient(145deg,#1d2732,#111821);transition:transform .25s,border-color .25s,box-shadow .25s;transform-style:preserve-3d}.service-card:hover,.work-card:hover{transform:perspective(950px) rotateX(2.2deg) rotateY(-2.2deg) translateY(-5px);border-color:#eebd4699;box-shadow:16px 22px 45px #0005}.service-card__top{display:flex;align-items:center;justify-content:space-between;padding:24px 24px 0}.service-card__top img{width:64px;height:64px;object-fit:contain}.service-card__top span{color:#89949e;font-size:.72rem;font-weight:800;letter-spacing:.14em}.service-card__body{padding:16px 24px 24px;display:flex;flex:1;flex-direction:column}.service-card h3,.work-card h3{margin:0 0 11px;font-size:1.16rem;line-height:1.25}.service-card p,.work-card p{color:var(--muted);font-size:.88rem}.service-card__link,.work-card__link{margin-top:auto;color:var(--yellow);font-size:.86rem;font-weight:800}.service-card__link:after,.work-card__link:after{content:' ↗'}
.work-card__image{aspect-ratio:1.5;overflow:hidden;background:#202833}.work-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.work-card:hover .work-card__image img{transform:scale(1.035)}.work-card__body{padding:22px;display:flex;flex:1;flex-direction:column}.work-card__count{color:var(--yellow);font-size:.71rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.work-card h3{margin-top:10px}.work-card p{margin-bottom:18px}
.story-strip{display:flex;gap:16px;overflow-x:auto;padding:8px 2px 20px;scrollbar-color:var(--yellow) #1c2530;scroll-snap-type:x proximity}.story-thumb{flex:0 0 110px;border:0;background:none;color:var(--text);text-align:center;scroll-snap-align:start}.story-thumb__ring{display:block;width:88px;height:88px;margin:0 auto 10px;padding:4px;border:2px solid var(--yellow);border-radius:50%;transition:transform .2s}.story-thumb:hover .story-thumb__ring{transform:scale(1.06)}.story-thumb img{width:100%;height:100%;border-radius:50%;object-fit:cover}.story-thumb span:last-child{display:block;font-size:.73rem;font-weight:800;line-height:1.2}
.latest-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px}.latest-grid button{padding:0;border:0;border-radius:8px;overflow:hidden;background:#252d38;aspect-ratio:4/5}.latest-grid img{width:100%;height:100%;object-fit:cover;transition:transform .25s}.latest-grid button:hover img{transform:scale(1.04)}
.contact{background:linear-gradient(135deg,#222717,#111720 44%,#0e1319);border-top:1px solid #edbf3840}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.contact-copy p{color:var(--muted);max-width:470px}.contact-links{display:grid;gap:8px;margin-top:28px}.contact-links a{padding:10px 0;border-bottom:1px solid var(--line)}.contact-links span{display:block;color:var(--yellow);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase}.contact-links strong{font-size:.98rem}.contact-form{padding:28px;background:#131a22;border:1px solid var(--line);border-radius:14px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.contact-form label{display:block;margin-bottom:14px;color:#d8dde0;font-size:.78rem;font-weight:700}.contact-form input,.contact-form textarea{display:block;width:100%;margin-top:7px;padding:12px 13px;border:1px solid #47515c;border-radius:7px;outline:none;background:#0c1117;color:#fff}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--yellow)}.contact-form textarea{resize:vertical}.form-note{font-size:.74rem;color:var(--muted)}
.site-footer{background:#090c10;border-top:1px solid var(--line)}.footer-inner{min-height:138px;display:flex;justify-content:space-between;align-items:center;gap:20px}.footer-inner p{max-width:430px;margin:0;color:#9da8af;font-size:.74rem}.footer-links{display:flex;gap:18px;font-size:.8rem;font-weight:700}.footer-links a:hover{color:var(--yellow)}
.page-hero{position:relative;overflow:hidden;min-height:440px;display:flex;align-items:center;background:radial-gradient(circle at 82% 45%,#53512d6e,transparent 32%),linear-gradient(120deg,#161e27,#090c11)}.page-hero:after{content:'';position:absolute;right:5%;bottom:-90px;width:300px;height:360px;border:1px solid #f4bf2a6e;transform:perspective(700px) rotateY(-22deg) rotateX(13deg);border-radius:18px;pointer-events:none}.page-hero__inner{position:relative;z-index:1;padding-block:70px}.page-hero p{max-width:670px;color:var(--muted);font-size:1.06rem}.page-hero h1{max-width:850px;margin-bottom:20px}.page-hero h1 em,.detail-hero h1 em{font-style:normal;color:var(--yellow)}.page-hero__photo{position:absolute;right:8%;top:15%;width:25%;height:74%;border-radius:15px;object-fit:cover;transform:perspective(800px) rotateY(-13deg) rotateZ(2deg);box-shadow:28px 30px 50px #0008}
.detail-hero{position:relative;min-height:480px;display:flex;align-items:end;overflow:hidden;background:#17202a}.detail-hero__photo,.detail-hero__shade{position:absolute;inset:0;width:100%;height:100%}.detail-hero__photo{object-fit:cover}.detail-hero__shade{background:linear-gradient(90deg,#080c11ed,#080c117c 65%,#080c1155),linear-gradient(0deg,#080c11bd,transparent 60%)}.detail-hero__inner{position:relative;z-index:1;padding-block:75px}.detail-hero p{max-width:570px;color:#e1e5e8}.tags{display:flex;flex-wrap:wrap;gap:7px}.tag{border:1px solid #d9dfdf55;border-radius:99px;padding:5px 11px;color:#dce1e1;font-size:.72rem}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.gallery-tile{padding:0;border:0;border-radius:10px;overflow:hidden;background:#202936;aspect-ratio:1.25}.gallery-tile img{width:100%;height:100%;object-fit:cover;transition:transform .25s}.gallery-tile:hover img{transform:scale(1.04)}.breadcrumb{display:flex;gap:8px;margin-bottom:18px;color:#adb8bd;font-size:.8rem}.breadcrumb a:hover{color:var(--yellow)}
.media-modal{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;padding:20px;background:#05070bea}.media-modal[aria-hidden=false]{display:flex}.media-modal__stage{position:relative;width:min(950px,100%);max-height:calc(100svh - 40px);display:flex;align-items:center;justify-content:center}.media-modal__stage img{max-width:100%;max-height:calc(100svh - 40px);object-fit:contain}.media-modal__stage video{width:100%;max-height:calc(100svh - 40px)}.media-modal__close,.media-modal__prev,.media-modal__next{position:absolute;z-index:3;display:grid;place-items:center;width:42px;height:42px;border:1px solid #ffffff73;border-radius:50%;background:#111b26e8;color:#fff;font-size:1.55rem}.media-modal__close{top:10px;right:10px}.media-modal__prev{left:10px;top:50%}.media-modal__next{right:10px;top:50%}.media-modal__caption{position:absolute;left:12px;bottom:12px;padding:7px 12px;border-radius:6px;background:#0b1018dc;font-size:.74rem}.story-player{position:relative;width:min(390px,100%);height:min(700px,calc(100svh - 20px));overflow:hidden;border-radius:12px;background:#0b0e12;box-shadow:0 20px 70px #000a;touch-action:pan-y}.story-player img{width:100%;height:100%;object-fit:contain}.story-player__shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(#0008,transparent 22%,transparent 72%,#0009)}.story-player__progress{position:absolute;z-index:2;left:8px;right:8px;top:8px;display:flex;gap:3px}.story-player__progress i{height:3px;flex:1;border-radius:9px;background:#ffffff77}.story-player__progress i.is-done,.story-player__progress i.is-current{background:var(--yellow)}.story-player__header{position:absolute;z-index:3;left:12px;right:60px;top:21px;display:flex;align-items:center;gap:8px;text-shadow:0 1px 4px #000}.story-player__header img{width:31px;height:31px;border:1px solid var(--yellow);border-radius:50%;object-fit:cover}.story-player__header strong{font-size:.78rem}.story-player__header small{display:block;font-size:.62rem}.story-player__controls{position:absolute;z-index:5;right:8px;top:20px;display:flex;gap:5px}.story-player__controls button{border:0;background:#0a0d11aa;border-radius:50%;width:29px;height:29px;color:#fff;font-size:1.03rem}.story-player__tap{position:absolute;z-index:2;top:70px;bottom:68px;width:30%;border:0;background:transparent}.story-player__tap--prev{left:0}.story-player__tap--next{right:0;width:70%}.story-player__cta{position:absolute;z-index:4;bottom:14px;left:50%;transform:translateX(-50%);white-space:nowrap;border:1px solid var(--yellow);border-radius:99px;padding:8px 16px;background:#111b23db;font-size:.74rem;font-weight:800}
.story-player.is-turning{animation:story-turn .42s ease-in-out both;transform-origin:center center}@keyframes story-turn{0%{transform:perspective(850px) rotateY(-28deg) scale(.94)}100%{transform:perspective(850px) rotateY(0) scale(1)}}
.story-player:before{content:'';position:absolute;inset:-22px;background-image:linear-gradient(#06090fa0,#06090fa0),var(--story-backdrop);background-position:center;background-size:cover;filter:blur(16px);transform:scale(1.07)}.story-player>[data-story-photo]{position:relative;z-index:1}.story-player__shade{z-index:2}.story-player__progress{z-index:4}.story-player__progress i{position:relative;overflow:hidden}.story-player__progress i b{position:absolute;inset:0;background:var(--yellow);transform:scaleX(0);transform-origin:left}.story-player__progress i.is-done b{transform:scaleX(1)}.story-player__progress i.is-current b{animation:story-progress var(--story-duration,9200ms) linear forwards}.story-player.is-paused .story-player__progress i.is-current b{animation-play-state:paused}@keyframes story-progress{to{transform:scaleX(1)}}
@media(max-width:1050px){.nav{gap:13px}.header-actions .button--small:first-child{display:none}.hero__side-note{display:none}.service-grid,.work-grid{grid-template-columns:repeat(2,1fr)}.intro-grid{grid-template-columns:1fr;gap:28px}.principles{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){:root{--shell:calc(100% - 34px)}body{padding-bottom:62px}.site-header .nav,.header-actions{display:none}.header-inner{min-height:64px}.brand img{width:37px;height:37px}.mobile-nav{position:fixed;z-index:50;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));min-height:62px;background:#0b1017f2;border-top:1px solid #ffffff26;backdrop-filter:blur(8px)}.mobile-nav a{min-width:0;display:grid;place-items:center;align-content:center;gap:2px;color:#c2c9cb;font-size:.63rem;font-weight:800}.mobile-nav a span{font-size:1.16rem;line-height:1}.mobile-nav a[aria-current=page]{color:var(--yellow)}.hero{min-width:0;min-height:calc(100svh - 126px)}.hero__photo{object-position:50% 60%}.hero__shade{background:linear-gradient(0deg,#080d13ed,#080d13a6 55%,#080d1355)}.hero__inner{min-width:0;padding-block:85px 95px;align-self:end}.hero h1{font-size:clamp(2.25rem,9.8vw,4rem);letter-spacing:-.065em}.hero__lead{font-size:.9rem}.hero__actions{gap:8px}.hero__actions .button{font-size:.77rem;min-height:45px;padding:9px 12px}.hero__scroll{bottom:12px;left:17px;font-size:.62rem}.section{padding:62px 0}.section-heading{display:block}.section-heading p{margin-top:12px}.section-heading h2,.intro-section h2,.page-hero h1,.detail-hero h1{font-size:clamp(2.15rem,9vw,3.4rem)}.principles{grid-template-columns:1fr}.principle{padding:20px}.principle h3{margin-top:9px}.service-grid,.work-grid{grid-template-columns:1fr;gap:13px}.service-card:hover,.work-card:hover{transform:none}.latest-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.latest-grid button{flex:0 0 43%;scroll-snap-align:start}.contact-layout{grid-template-columns:1fr;gap:22px}.contact-form{padding:18px}.field-row{grid-template-columns:1fr;gap:0}.footer-inner{padding-block:25px;display:block}.footer-inner p{margin:15px 0}.footer-links{flex-wrap:wrap}.page-hero{min-height:370px}.page-hero__photo{opacity:.25;width:60%;right:-10%;transform:none}.page-hero:after{opacity:.4}.page-hero__inner{padding-block:54px}.detail-hero{min-height:420px}.detail-hero__inner{padding-block:55px}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:7px}.media-modal{padding:0}.story-player{width:100%;height:100svh;max-height:100svh;border-radius:0}.media-modal__stage{padding:10px}.media-modal__stage img{max-height:calc(100svh - 20px)}}
@media(max-width:390px){.hero__actions .button{width:100%}.latest-grid button{flex-basis:55%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.form-status{min-height:1.4em;margin:13px 0 0;color:var(--muted);font-size:.82rem}.form-status.is-success{color:#93e6ac}.form-status.is-error{color:#ffb2a8}.contact-form button:disabled{opacity:.55;cursor:wait}.footer-consent{padding:0;border:0;background:none;color:inherit;font-size:inherit;font-weight:inherit}.footer-consent:hover{color:var(--yellow)}.consent-banner{position:fixed;z-index:90;left:20px;bottom:20px;width:min(640px,calc(100% - 40px));display:grid;grid-template-columns:1.2fr 1fr;gap:20px;align-items:center;padding:20px;border:1px solid #f4bf2a88;border-radius:12px;background:#17202af7;box-shadow:0 18px 50px #0009}.consent-banner strong{font-size:.98rem}.consent-banner p{margin:5px 0 0;color:#d2d9dd;font-size:.73rem;line-height:1.5}.consent-banner p a{color:var(--yellow);text-decoration:underline;text-underline-offset:3px}.consent-banner__actions{display:grid;gap:5px}.consent-banner__actions button{min-height:32px;border:1px solid #75818b;border-radius:6px;background:#24303b;color:#fff;font-size:.72rem;font-weight:800}.consent-banner__actions button:hover{border-color:var(--yellow);color:var(--yellow)}.consent-banner__actions button:first-child{border-color:var(--yellow);background:var(--yellow);color:#151515}@media(max-width:700px){.consent-banner{left:9px;bottom:70px;width:calc(100% - 18px);grid-template-columns:1fr;gap:12px;padding:14px}.consent-banner__actions{grid-template-columns:repeat(3,minmax(0,1fr))}.consent-banner__actions button{padding:7px 4px;font-size:.64rem;line-height:1.25}}
.policy-copy{max-width:880px}.policy-copy h1{margin:12px 0 20px;font-size:clamp(2.7rem,6vw,5rem);line-height:1.05;letter-spacing:-.06em}.policy-copy h2{margin:36px 0 10px;font-size:1.35rem}.policy-copy p{color:var(--muted)}.policy-copy a:not(.button){color:var(--yellow);text-decoration:underline;text-underline-offset:3px}.policy-copy code{padding:2px 5px;border-radius:4px;background:#27313d;color:#f4d16a}
.consent-banner__actions button:first-child{border-color:#75818b;background:#24303b;color:#fff}
