@font-face{
	font-family:Scandia;
	src:url(../fonts/ScandiaWebRegular.woff2) format("woff2");
	font-weight:400; font-style:normal; font-display:swap;
}
@font-face{
	font-family:Scandia;
	src:url(../fonts/ScandiaWebMedium.woff2) format("woff2");
	font-weight:700; font-style:normal; font-display:swap;
}
:root{
	--bg:           #0a0909;
	--bg-alt:       #13110f;
	--fg:           #efece7;
	--muted:        #6b6f7a;
	--accent:       #ddb178;
	--accent-bright:#fcbc49;
	--accent-soft:  #c99650;
	--container:    1340px;
	--gutter:       32px;
	--gutter-mobile:20px;
	--radius:       16px;
	--marquee-h:    50px;
	--ease-out:     cubic-bezier(.2,.7,.2,1);
	--font-sans:    'Scandia', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{
	background:var(--bg);
	scroll-behavior:smooth;
	-webkit-text-size-adjust:100%;
	scrollbar-color:var(--accent) var(--bg);
	scrollbar-width:thin;
}
::-webkit-scrollbar{width:10px; height:10px}
::-webkit-scrollbar-track{background:var(--bg)}
::-webkit-scrollbar-thumb{
	background:var(--accent);
	border:2px solid var(--bg);
	border-radius:999px;
}
::-webkit-scrollbar-thumb:hover{background:var(--accent-bright)}
html{overflow-x:clip}
body::before{
	content:""; position:fixed; inset:0; z-index:1;
	background:var(--time-tint, transparent);
	pointer-events:none;
	mix-blend-mode:overlay;
	transition:background 8s ease;
}

object.is-loading-fade{
	opacity:0;
	transition:opacity .7s ease;
}
object.is-loading-fade.is-loaded{opacity:var(--object-opacity, .95)}

@media (hover: none), (max-width: 900px){
	.cursor-dot, .cursor-ring, .cursor-label, .cursor-spotlight, .stardust, .shooting-star{display:none !important}
}

.omd-toast-host{
	position:fixed; right:20px; bottom:20px; z-index:9500;
	display:flex; flex-direction:column; gap:8px;
	pointer-events:none;
}
.omd-toast{
	padding:10px 18px;
	background:rgba(19,17,15,.95);
	border:1px solid rgba(221,177,120,.4);
	border-radius:999px;
	color:var(--fg);
	font-size:13px; letter-spacing:.01em;
	box-shadow:0 12px 32px -12px rgba(0,0,0,.6);
	opacity:0; transform:translateY(8px);
	transition:opacity .3s ease, transform .3s cubic-bezier(.2,.7,.2,1);
	pointer-events:auto;
	-webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px);
}
.omd-toast.is-show{opacity:1; transform:translateY(0)}
.omd-toast--success{border-color:rgba(221,177,120,.55)}
.omd-toast--error{border-color:rgba(220,38,38,.5); color:#fca5a5}
@media (max-width:600px){
	.omd-toast-host{right:12px; bottom:calc(var(--marquee-h, 40px) + 12px); left:12px}
	.omd-toast{font-size:12px; padding:9px 14px}
}

.stardust{
	position:fixed; width:3px; height:3px; z-index:38;
	pointer-events:none;
	background:radial-gradient(circle, #f5d99b 0%, #ddb178 50%, transparent 80%);
	border-radius:50%;
	box-shadow:0 0 4px rgba(245,217,155,.7);
	transform:translate(-50%, -50%) scale(var(--s, 1));
	animation:stardustFade .9s ease-out forwards;
}
@keyframes stardustFade{
	0%   {opacity:1}
	100% {opacity:0; transform:translate(calc(-50% + var(--dx, 0px)), calc(-50% + var(--dy, 20px))) scale(0)}
}

.brief-toast{
	position:absolute; top:34px; right:32px;
	padding:4px 10px;
	background:rgba(221,177,120,.9);
	color:#0a0909;
	font-size:9.5px; font-weight:500;
	letter-spacing:.04em;
	border-radius:999px;
	box-shadow:0 4px 14px -6px rgba(221,177,120,.5);
	opacity:0; transform:translateY(-6px);
	transition:opacity .3s, transform .3s cubic-bezier(.2,.7,.2,1);
	pointer-events:none;
	z-index:5;
}
.brief-toast.is-show{opacity:1; transform:translateY(0)}
@media (max-width:600px){
	.brief-toast{top:24px; right:20px}
}

.footer__kbd-hint{
	display:none;
	margin:14px 0 0;
	font-size:13px; line-height:1.55;
	color:rgba(239,236,231,.55);
}
.kbd-hint{
	display:inline-flex; align-items:center; justify-content:center;
	min-width:22px; height:22px;
	padding:0 7px; margin:0 2px;
	border:1px solid rgba(239,236,231,.32);
	border-radius:6px;
	font-family:ui-monospace, Menlo, monospace;
	font-size:11px; font-weight:600;
	color:var(--fg);
	background:rgba(239,236,231,.06);
	box-shadow:0 1px 0 rgba(0,0,0,.4), inset 0 -1px 0 rgba(0,0,0,.3);
	vertical-align:1px;
	transition:transform .15s, background .15s, border-color .15s, color .15s;
}
.kbd-hint.is-pressed{
	transform:translateY(1px) scale(.92);
	background:var(--accent);
	border-color:var(--accent);
	color:#0a0909;
}
@media (hover: hover) and (pointer: fine){
	.footer__kbd-hint{display:block}
}

.shooting-star{
	position:fixed; width:2px; height:2px; z-index:30;
	pointer-events:none;
	background:radial-gradient(circle, #f5d99b 0%, #ddb178 40%, transparent 70%);
	border-radius:50%;
	box-shadow:0 0 8px 1px rgba(245,217,155,.8), 0 0 16px 4px rgba(221,177,120,.4);
	animation:shootingStarFly 1.6s ease-out forwards;
}
.shooting-star::before{
	content:""; position:absolute;
	top:50%; right:0;
	width:120px; height:1px;
	background:linear-gradient(90deg, transparent 0%, rgba(245,217,155,.7) 100%);
	transform-origin:right center;
	transform:translateY(-50%) rotate(var(--angle, 30deg));
}
@keyframes shootingStarFly{
	0%   {transform:translate(0, 0) scale(.6); opacity:0}
	15%  {opacity:1}
	85%  {opacity:1}
	100% {transform:translate(var(--dx, 600px), var(--dy, 300px)) scale(1.2); opacity:0}
}

.omd-egg-overlay{
	position:fixed; inset:0; z-index:8500;
	background:rgba(10,9,9,.65);
	backdrop-filter:blur(14px) saturate(140%);
	-webkit-backdrop-filter:blur(14px) saturate(140%);
	display:flex; align-items:center; justify-content:center;
	pointer-events:none;
	opacity:0;
	transition:opacity .6s cubic-bezier(.2,.7,.2,1), backdrop-filter .6s ease;
}
.omd-egg-overlay.is-in{opacity:1}
.omd-egg-overlay.is-out{
	opacity:0;
	backdrop-filter:blur(0) saturate(100%);
	-webkit-backdrop-filter:blur(0) saturate(100%);
	transition:opacity .9s ease, backdrop-filter .9s ease;
}
.omd-egg-deer{
	width:min(60vw, 520px);
	aspect-ratio:1;
	transform:scale(.6) translateY(40px);
	opacity:0;
	filter:drop-shadow(0 30px 80px rgba(221,177,120,.4));
	transition:transform .9s cubic-bezier(.2,.7,.2,1), opacity .7s ease;
}
.omd-egg-overlay.is-in .omd-egg-deer{
	transform:scale(1) translateY(0);
	opacity:.95;
}
.omd-egg-overlay.is-out .omd-egg-deer{
	transform:scale(1.05) translateY(-12px);
	opacity:0;
	transition:transform .9s ease, opacity .7s ease;
}
.omd-egg-deer object{width:100%; height:100%; pointer-events:none}
html{scroll-padding-top:80px}
body{
	margin:0;
	padding-bottom:var(--marquee-h);
	background:var(--bg);
	color:var(--fg);
	font-family:var(--font-sans);
	font-size:14px; line-height:1.5;
	-webkit-font-smoothing:antialiased;
	position:relative;
	overflow-x:clip;
	max-width:100vw;
	user-select:none;
	-webkit-user-select:none;
}
.modal,
.modal *,
input,
textarea,
[contenteditable]{
	user-select:text;
	-webkit-user-select:text;
}
img,svg,video{display:block; max-width:100%}
a{color:inherit; text-decoration:none}
button{font:inherit; color:inherit; background:none; border:0; cursor:pointer; padding:0}
mark{background:transparent; color:inherit}
address{font-style:normal}
ul,ol,dl,dt,dd{margin:0; padding:0; list-style:none}
.container{
	width:100%; max-width:var(--container);
	margin:0 auto;
	padding:0 var(--gutter);
}
.header,.main,.main > *{position:relative; z-index:1}
.section{position:relative; z-index:1; background:transparent}
.section--lighter::after{
	content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
	background:rgba(255,255,255,.022);
}
.skip-link{
	position:fixed; top:8px; left:8px;
	z-index:200;
	padding:10px 18px;
	background:var(--accent); color:#0a0909;
	font-size:12px; font-weight:500; letter-spacing:.16em; text-transform:uppercase;
	border-radius:999px;
	transform:translateY(-150%);
	transition:transform .25s var(--ease-out);
}
.skip-link:focus{transform:translateY(0); outline:2px solid var(--fg); outline-offset:3px}
.header{
	position:fixed; inset:0 0 auto 0;
	z-index:50;
	padding:18px 0;
	transition:background .4s, padding .4s, border-color .4s;
	border-bottom:1px solid transparent;
}
.header--shrink{
	background:rgba(10,9,9,.78);
	-webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px);
	padding:12px 0;
	border-bottom-color:rgba(239,236,231,.06);
}
.header__row{
	display:flex; align-items:center; justify-content:space-between;
	width:100%; max-width:var(--container); margin:0 auto;
}
.header__brand{
	font-size:22px; font-weight:700; letter-spacing:-.02em; line-height:1;
	position:relative;
	background:linear-gradient(90deg, var(--fg) 0%, var(--fg) 42%, #ddb178 50%, var(--fg) 58%, var(--fg) 100%);
	background-size:300% 100%; background-position:0% 50%;
	-webkit-background-clip:text; background-clip:text;
	-webkit-text-fill-color:transparent;
}
.header__brand-accent{color:var(--accent)}
@media (hover: hover) and (pointer: fine){
	.header__brand{animation:brandFlicker 22s ease-in-out infinite}
	.header__brand:hover{animation:brandShine 1.6s ease-out}
}
@keyframes brandFlicker{
	0%, 94%, 100%{background-position:0% 50%}
	96%{background-position:60% 50%}
	98%{background-position:0% 50%}
}
@keyframes brandShine{
	from{background-position:-30% 50%}
	to{background-position:130% 50%}
}
.header__nav{
	display:flex; align-items:center;
	gap:clamp(20px, 3vw, 44px);
}
.header__nav a{
	position:relative;
	font-size:11px; letter-spacing:.22em; text-transform:uppercase;
	color:rgba(239,236,231,.7);
	transition:color .3s;
}
.header__nav a::after{
	content:""; position:absolute; left:0; bottom:-6px;
	width:0; height:1px; background:var(--accent);
	transition:width .35s var(--ease-out);
}
.header__nav a:hover{color:var(--accent)}
.header__nav a:hover::after{width:100%}
.header__nav a.is-active{color:var(--accent)}
.header__nav a.is-active::after{width:100%}
@media (max-width:900px){ .header__nav{display:none} }
.header__burger{
	display:none;
	position:relative;
	width:44px; height:44px;
	border:1px solid rgba(239,236,231,.3);
	border-radius:50%;
	background:transparent;
	transition:border-color .3s, background .3s;
	z-index:101;
}
.header__burger span{
	position:absolute; left:50%; top:50%;
	width:18px; height:1.5px;
	background:var(--fg);
	border-radius:2px;
	transform-origin:center;
	transition:transform .4s var(--ease-out), opacity .25s ease, background .3s;
}
.header__burger span:nth-child(1){transform:translate(-50%, -7px)}
.header__burger span:nth-child(2){transform:translate(-50%, -50%)}
.header__burger span:nth-child(3){transform:translate(-50%, 5px)}
.header__burger:hover{border-color:var(--accent)}
.header__burger:hover span{background:var(--accent)}
.header__burger.is-open{border-color:var(--accent); background:rgba(221,177,120,.06)}
.header__burger.is-open span{background:var(--accent)}
.header__burger.is-open span:nth-child(1){transform:translate(-50%, -50%) rotate(45deg)}
.header__burger.is-open span:nth-child(2){opacity:0; transform:translate(-50%, -50%) scaleX(0)}
.header__burger.is-open span:nth-child(3){transform:translate(-50%, -50%) rotate(-45deg)}
@media (max-width:900px){ .header__burger{display:inline-flex; align-items:center; justify-content:center} }
@media (max-width:900px){ .header__cta{display:none} }
.mobile-nav{
	position:fixed; inset:0;
	z-index:100;
	pointer-events:none;
	visibility:hidden;
}
.mobile-nav.is-open{visibility:visible; pointer-events:auto}
.mobile-nav__bg{
	position:absolute; inset:0;
	background:radial-gradient(ellipse at 100% 0%, rgba(221,177,120,.18) 0%, transparent 50%),
		linear-gradient(135deg, #0a0909 0%, #13110f 100%);
	clip-path:circle(0% at calc(100% - 42px) 42px);
	transition:clip-path .8s cubic-bezier(.77, 0, .175, 1);
}
.mobile-nav.is-open .mobile-nav__bg{clip-path:circle(160% at calc(100% - 42px) 42px)}
.mobile-nav__inner{
	position:relative; z-index:2;
	display:flex; flex-direction:column; justify-content:space-between;
	height:100%;
	padding:90px clamp(28px, 8vw, 60px) 36px;
	overflow-y:auto;
	opacity:0;
	transition:opacity .3s ease .15s;
}
.mobile-nav.is-open .mobile-nav__inner{opacity:1; transition-delay:.4s}
.mobile-nav__close{
	position:absolute; top:24px; right:clamp(20px, 6vw, 40px);
	width:44px; height:44px;
	border:1px solid rgba(221,177,120,.4);
	border-radius:50%;
	background:transparent;
	transition:border-color .3s, transform .3s, background .3s;
}
.mobile-nav__close span{
	position:absolute; left:50%; top:50%;
	width:18px; height:1.5px;
	background:var(--accent);
	border-radius:2px;
}
.mobile-nav__close span:nth-child(1){transform:translate(-50%, -50%) rotate(45deg)}
.mobile-nav__close span:nth-child(2){transform:translate(-50%, -50%) rotate(-45deg)}
.mobile-nav__close:hover{
	border-color:var(--accent);
	background:rgba(221,177,120,.06);
	transform:rotate(90deg);
}
.mobile-nav__list{display:flex; flex-direction:column; gap:8px; padding-top:24px}
.mobile-nav__list a{
	position:relative;
	display:flex; align-items:baseline; gap:18px;
	padding:14px 0;
	font-size:clamp(28px, 8vw, 44px);
	font-weight:700; letter-spacing:-.025em; line-height:1;
	color:var(--fg);
	transform:translateY(40px); opacity:0;
	transition:color .3s ease, transform .6s var(--ease-out), opacity .5s ease;
	transition-delay:calc(var(--i, 0) * .06s);
	border-bottom:1px solid rgba(239,236,231,.06);
}
.mobile-nav.is-open .mobile-nav__list a{
	transform:translateY(0); opacity:1;
	transition-delay:calc(.45s + var(--i, 0) * .06s);
}
.mobile-nav__num{
	font-size:11px; font-weight:500; letter-spacing:.18em;
	color:var(--accent);
	font-variant-numeric:tabular-nums;
}
.mobile-nav__label{
	position:relative;
	transition:transform .3s var(--ease-out), color .3s;
}
.mobile-nav__list a:hover .mobile-nav__label,
.mobile-nav__list a:active .mobile-nav__label{
	color:var(--accent);
	transform:translateX(6px);
}
.mobile-nav__foot{
	display:flex; flex-direction:column; gap:24px;
	padding-top:32px;
	margin-top:auto;
}
.mobile-nav__cta{
	display:inline-flex; align-items:center; justify-content:space-between;
	gap:16px;
	padding:18px 28px;
	background:var(--accent);
	color:#0a0909;
	border-radius:999px;
	font-size:13px; font-weight:500; letter-spacing:.18em; text-transform:uppercase;
	transition:transform .3s var(--ease-out), background .3s;
}
.mobile-nav__cta svg{width:18px; height:18px}
.mobile-nav__cta:hover{transform:translateY(-2px); background:var(--accent-bright)}
.mobile-nav__contact{
	display:flex; flex-direction:column; gap:6px;
	margin:0;
	font-size:13px; color:rgba(239,236,231,.55);
}
.mobile-nav__contact a{color:var(--fg)}
.mobile-nav__contact span{
	font-size:11px; letter-spacing:.2em; text-transform:uppercase;
	color:rgba(239,236,231,.45);
}
@media (max-width:900px){
	body.is-nav-open{overflow:hidden}
}
.header__cta{
	position:relative; overflow:hidden; isolation:isolate;
	display:inline-block;
	border:1px solid var(--accent);
	border-radius:999px;
	padding:11px 22px;
	color:var(--fg);
	font-size:11px; letter-spacing:.2em; text-transform:uppercase;
	transition:color .35s;
}
.header__cta::before{
	content:""; position:absolute; inset:0; z-index:-1;
	background:var(--accent);
	transform:translateY(101%);
	transition:transform .45s var(--ease-out);
}
.header__cta:hover{color:#0a0909}
.header__cta:hover::before{transform:translateY(0)}
.hero{
	position:relative;
	height:100vh;
	min-height:640px;
	overflow:visible;
	isolation:isolate;
	perspective:1400px;
}
.hero__tint{position:absolute; inset:0; pointer-events:none; z-index:2}
.hero__ghost{
	position:absolute; inset:0; z-index:0;
	display:flex; align-items:center;
	overflow:hidden;
	pointer-events:none;
	transform:translate3d(0, var(--ghost-parallax-y, 0px), 0);
	will-change:transform;
}
.hero__ghost-track{
	display:flex; width:max-content;
	font-family:var(--font-sans);
	font-size:clamp(8rem, 22vw, 22rem);
	font-weight:700; letter-spacing:-.05em;
	color:rgba(221,177,120,.06);
	white-space:nowrap;
	animation:ghostScroll 90s linear infinite;
	filter:blur(6px);
}
@keyframes ghostScroll{
	from{transform:translate3d(0,0,0)}
	to  {transform:translate3d(-50%,0,0)}
}
@media (max-width:900px){
	.hero__ghost{display:none}
	.hero__title .split-char{transform:none}
	.hero__title .split-char.is-revealing{
		animation:heroCharFade .5s ease-out both;
		animation-delay:120ms;
	}
	@keyframes heroCharFade{
		from{opacity:0}
		to  {opacity:1}
	}
}
.cursor-spotlight{
	position:fixed; inset:0; z-index:39;
	pointer-events:none;
	background:radial-gradient(circle 360px at var(--sx, 50%) var(--sy, 50%),
		rgba(221,177,120,.14) 0%,
		rgba(221,177,120,.04) 35%,
		transparent 72%);
	mix-blend-mode:screen;
	opacity:0;
	transition:opacity .45s var(--ease-out);
}
.cursor-spotlight.is-active{opacity:1}
@media (hover: none){ .cursor-spotlight{display:none} }
@media (prefers-reduced-motion: reduce){ .cursor-spotlight{display:none} }
@media (hover: hover) and (pointer: fine){
	.hero__title .split-char{
		transition:transform .35s cubic-bezier(.2,.7,.2,1);
	}
}
.page-particles{
	position:fixed; inset:0;
	z-index:0;
	pointer-events:none;
}
.hero__tint{
	z-index:2;
	background:
		radial-gradient(ellipse 80% 70% at 30% 50%, rgba(221,177,120,.04) 0%, transparent 60%),
		radial-gradient(ellipse at center, transparent 0%, rgba(10,12,16,.4) 100%);
}
.hero__content{
	position:relative; z-index:10;
	width:100%; max-width:var(--container);
	margin:0 auto;
	height:100%;
	padding:120px var(--gutter) 80px;
	display:flex; flex-direction:column; justify-content:center;
}
.hero__deer{
	position:absolute; z-index:5;
	right:clamp(-40px, 2vw, 40px);
	top:50%;
	width:clamp(420px, 52vw, 920px);
	height:auto;
	pointer-events:none; opacity:.95;
	filter:drop-shadow(0 30px 80px rgba(0,0,0,.5));
	transform:translate3d(var(--tilt-tx, 0px), calc(-50% + var(--parallax-y, 0px) + var(--tilt-ty, 0px)), 0)
		rotateX(var(--tilt-x, 0deg)) rotateY(var(--tilt-y, 0deg));
	transform-style:preserve-3d;
	transition:transform .15s linear;
	will-change:transform;
}
.hero__scroll,
.scroll-next{
	position:absolute; bottom:24px; left:50%; transform:translateX(-50%);
	z-index:10;
	width:28px; height:46px;
	border:1.5px solid rgba(239,236,231,.32);
	border-radius:20px;
	display:flex; justify-content:center;
	padding-top:8px;
	transition:border-color .3s, transform .3s;
}
.hero__scroll:hover,
.scroll-next:hover{
	border-color:var(--accent);
	transform:translateX(-50%) translateY(3px);
}
.hero__scroll::after,
.scroll-next::after{
	content:""; width:3px; height:12px; border-radius:3px;
	background:rgba(221,177,120,.8);
	animation:scrollDot 1.8s ease-in-out infinite;
}
@keyframes scrollDot{
	0%{transform:translateY(0); opacity:1}
	80%{transform:translateY(14px); opacity:0}
	100%{transform:translateY(0); opacity:0}
}
.hero__title{
	margin:0;
	font-weight:700;
	font-size:clamp(2.1rem, 6.2vw, 7rem);
	line-height:.85; letter-spacing:-.035em;
}
.hero__line{display:block}
.hero__line--small{
	font-size:.85em;
	font-weight:700; color:var(--fg);
	margin-top:.12em;
	margin-bottom:.04em;
	display:flex; align-items:center; gap:clamp(18px, 3vw, 44px);
}
.hero__line--small .hero__spin{
	width:clamp(1.4rem, 2.2vw, 2.2rem); height:clamp(1.4rem, 2.2vw, 2.2rem);
	margin:0;
}
.hero__txt-light{
	display:inline-block;
	font-weight:700; color:var(--fg);
	font-size:.85em; vertical-align:baseline;
	margin-right:.12em;
}
.hero__txt-solid{font-weight:700; color:var(--fg); font-size:.85em}
.hero__txt-bright{
	font-weight:700; color:var(--fg); font-size:.85em;
	margin-right:.12em;
	border-bottom:3px solid var(--accent);
	padding-bottom:.04em;
	line-height:1;
}
.hero__txt-outline{
	font-weight:400;
	color:var(--accent);
	font-size:.85em;
}
.hero__txt-italic{
	font-weight:400;
	color:var(--accent);
	letter-spacing:-.02em;
	font-size:.85em;
}
.hero__txt-dot{
	color:var(--accent);
	font-weight:400;
	font-size:.85em;
}
.hero__spin{
	display:inline-flex; align-items:center; justify-content:center;
	width:clamp(2rem, 3.5vw, 3.2rem); height:clamp(2rem, 3.5vw, 3.2rem);
	margin:0 .35em; vertical-align:middle; position:relative;
	opacity:0;
	transform:scale(.6) rotate(-90deg);
	animation:heroSpinIn 1.1s cubic-bezier(.2,.7,.2,1) 1.6s forwards;
}
@keyframes heroSpinIn{
	to{opacity:1; transform:scale(1) rotate(0deg)}
}
.hero__spin svg{
	width:100%; height:100%;
	color:var(--accent);
	animation:spin 14s linear infinite;
}
.hero__spin-star{
	position:absolute;
	color:var(--accent); font-size:.55em; font-weight:700;
	animation:spinReverse 9s linear infinite;
}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes spinReverse{to{transform:rotate(-360deg)}}
.manifesto{
	position:relative;
	min-height:100vh;
	padding:clamp(80px, 12vh, 160px) 0;
	display:flex; align-items:center; justify-content:center;
	text-align:center;
	overflow:visible;
}
.manifesto__deco{
	position:absolute;
	width:clamp(220px, 26vw, 440px);
	height:auto;
	z-index:1;
	opacity:.9;
	pointer-events:none;
	transform:translate3d(var(--tilt-tx, 0px), calc(var(--deco-y, 0px) + var(--tilt-ty, 0px)), 0)
		rotateX(var(--tilt-x, 0deg)) rotateY(var(--tilt-y, 0deg));
	transform-style:preserve-3d;
	transition:transform .25s linear;
	will-change:transform;
	filter:drop-shadow(0 20px 50px rgba(221,177,120,.18));
}
.manifesto, .cta{perspective:1400px}
.manifesto__deco--event,
.manifesto__deco--kreacja{
	width:clamp(170px, 20vw, 340px);
}
.manifesto__deco--event{
	left:clamp(-30px, 2vw, 40px);
	bottom:-22%;
}
.manifesto__deco--kreacja{
	right:clamp(-30px, 2vw, 40px);
	bottom:-22%;
}
.manifesto > .container{position:relative; z-index:2}
.cta__deco{
	position:absolute;
	width:clamp(280px, 32vw, 540px);
	height:auto;
	z-index:1;
	opacity:.9;
	pointer-events:none;
	transform:translate3d(var(--tilt-tx, 0px), calc(var(--deco-y, 0px) + var(--tilt-ty, 0px)), 0)
		rotateX(var(--tilt-x, 0deg)) rotateY(var(--tilt-y, 0deg)) scaleX(-1);
	transform-origin:center center;
	transform-style:preserve-3d;
	transition:transform .25s linear;
	will-change:transform;
	filter:drop-shadow(0 20px 50px rgba(221,177,120,.18));
}
.cta__deco--hand{
	left:clamp(-30px, 2vw, 40px);
	bottom:-12%;
}
.cta{overflow:visible}
.cta > .cta__inner{position:relative; z-index:2}
@media (max-width:768px){
	.manifesto__deco--event,
	.manifesto__deco--kreacja{width:clamp(120px, 32vw, 200px); opacity:.65}
	.manifesto__deco--event{bottom:-12%}
	.manifesto__deco--kreacja{bottom:-12%}
	.cta__deco{width:clamp(180px, 44vw, 280px); opacity:.65}
	.footer__deco{width:clamp(180px, 40vw, 280px); opacity:.5}
}
.footer__deco{
	position:absolute;
	left:38%;
	transform:translate3d(-50%, var(--deco-y, 0px), 0);
	bottom:clamp(40px, 7vh, 110px);
	width:clamp(200px, 20vw, 340px);
	height:auto;
	z-index:1; opacity:.55;
	pointer-events:none;
	will-change:transform;
}
.manifesto__title{
	margin:0;
	font-weight:700;
	font-size:clamp(1.8rem, 5.3vw, 6rem);
	line-height:.95; letter-spacing:-.035em;
	white-space:nowrap;
	display:inline-flex; align-items:baseline;
	gap:clamp(18px, 2vw, 40px);
}
.manifesto__title-solid{color:var(--fg)}
.manifesto__title-outline{
	color:var(--accent);
	font-weight:400;
	letter-spacing:-.035em;
}
.manifesto__rule{
	width:120px; height:1px;
	background:rgba(221,177,120,.5);
	margin:clamp(32px, 5vh, 60px) auto clamp(28px, 4vh, 44px);
}
.manifesto__text{
	max-width:780px;
	margin:0 auto;
	font-size:clamp(17px, 1.8vw, 24px);
	line-height:1.55; font-weight:300;
	letter-spacing:-.005em;
}
.manifesto__text-mark{
	position:relative;
	border-bottom:2px solid var(--accent);
	padding-bottom:2px;
	transition:color .35s ease, text-shadow .35s ease;
	cursor:default;
}
@media (hover: hover) and (pointer: fine){
	.manifesto__text-mark:hover{
		color:var(--accent);
		text-shadow:0 0 24px rgba(221,177,120,.5);
	}
	.manifesto__text-mark::after{
		content:""; position:absolute; left:0; right:0; bottom:-2px;
		height:2px; background:var(--accent);
		transform:scaleX(0); transform-origin:left;
		transition:transform .5s cubic-bezier(.2,.7,.2,1);
		box-shadow:0 0 8px rgba(221,177,120,.6);
	}
	.manifesto__text-mark:hover::after{
		transform:scaleX(1);
	}
}
.stats{
	max-width:960px;
	margin:clamp(48px, 7vh, 90px) auto 0;
	display:grid;
	grid-template-columns:repeat(4, 1fr);
	gap:clamp(20px, 3vw, 60px);
}
.stats__item{
	display:flex; flex-direction:column; align-items:center; gap:8px;
	opacity:0; transform:translateY(20px);
}
.stats__num{
	font-size:clamp(2.5rem, 5vw, 4.5rem);
	font-weight:700; line-height:1; letter-spacing:-.04em;
	font-variant-numeric:tabular-nums;
}
.stats__num-suffix{
	color:var(--accent); font-weight:300; margin-left:.05em;
}
.stats__label{
	font-size:11px; letter-spacing:.28em; text-transform:uppercase;
	color:var(--muted);
}
.services{
	position:relative;
	padding:clamp(80px, 12vh, 180px) 0;
	overflow:hidden;
	text-align:center;
}
.services::before{
	content:""; position:absolute; inset:-10%; z-index:-1; pointer-events:none;
	background:radial-gradient(60% 50% at 50% 50%, rgba(221,177,120,.04) 0%, transparent 65%);
}
.services__title{
	margin:0 0 clamp(48px, 8vh, 100px);
	font-weight:700;
	font-size:clamp(1.8rem, 5.3vw, 6rem);
	line-height:.95; letter-spacing:-.035em;
	white-space:nowrap;
	display:inline-flex; align-items:baseline;
	gap:clamp(18px, 2vw, 40px);
}
.services__title-solid{color:var(--fg)}
.services__title-outline{
	color:var(--accent);
	font-weight:400;
	letter-spacing:-.035em;
}
.services__list{
	text-align:left;
	border-top:1px solid rgba(239,236,231,.12);
}
.pillar{
	position:relative;
	display:flex; align-items:center; gap:clamp(20px, 3vw, 40px);
	padding:clamp(40px, 6vh, 90px) 0;
	border-bottom:1px solid rgba(239,236,231,.12);
	--p: var(--progress, 0);
	opacity: var(--p);
	transform: translateX(calc((1 - var(--p)) * -80px));
	transition:transform .55s cubic-bezier(.2,.7,.2,1), filter .45s ease;
}
@media (hover: hover) and (pointer: fine){
	.pillar:hover{
		filter:drop-shadow(0 0 38px rgba(221,177,120,.18));
	}
}
.pillar::after{
	content:""; position:absolute; left:0; bottom:-1px;
	height:1px; width:0; background:var(--accent);
	transition:width .7s var(--ease-out);
}
.pillar:hover::after{width:100%}
.pillar__icon{
	flex-shrink:0;
	width:clamp(48px, 5vw, 72px); height:clamp(48px, 5vw, 72px);
	border-radius:62% 38% 56% 44% / 56% 50% 50% 44%;
	background:#1c1e22;
	display:flex; align-items:center; justify-content:center;
	color:var(--fg);
	animation:fabMorph 9s ease-in-out infinite alternate;
	transition:background .4s, color .4s;
}
.pillar__icon{position:relative; overflow:hidden}
.pillar:hover .pillar__icon{background:var(--accent); color:#0a0909}
.pillar__icon-chevron,
.pillar__icon-svg{
	position:absolute; left:50%; top:50%; transform:translate(-50%,-50%);
	width:46%; height:46%;
}
.pillar__icon-chevron path,
.pillar__icon-svg path,
.pillar__icon-svg circle{stroke-dasharray:1}
.pillar__icon-chevron path{stroke-dashoffset:0}
.pillar__icon-svg path,
.pillar__icon-svg circle{stroke-dashoffset:1}
@media (hover: none), (max-width: 900px){
	.pillar[data-has-icon] .pillar__icon-chevron{display:none}
	.pillar__icon-svg path,
	.pillar__icon-svg circle{stroke-dashoffset:0; animation:none !important}
}

@media (hover: hover) and (pointer: fine){
	.pillar:hover .pillar__icon-chevron path{
		animation:pillarUndraw .5s ease-in forwards;
	}
	.pillar:hover[data-has-icon] .pillar__icon-svg path,
	.pillar:hover[data-has-icon] .pillar__icon-svg circle{
		animation:pillarDraw 1.2s ease-out .5s forwards;
	}
	.pillar:hover[data-has-icon] .pillar__icon-svg :nth-child(1){animation-delay:.5s}
	.pillar:hover[data-has-icon] .pillar__icon-svg :nth-child(2){animation-delay:.65s}
	.pillar:hover[data-has-icon] .pillar__icon-svg :nth-child(3){animation-delay:.8s}
	.pillar:hover[data-has-icon] .pillar__icon-svg :nth-child(4){animation-delay:.95s}
	.pillar:hover[data-has-icon] .pillar__icon-svg :nth-child(5){animation-delay:1.1s}
	.pillar:hover[data-has-icon] .pillar__icon-svg :nth-child(6){animation-delay:1.25s}
	@keyframes pillarDraw{
		from{stroke-dashoffset:1}
		to  {stroke-dashoffset:0}
	}
	@keyframes pillarUndraw{
		from{stroke-dashoffset:0}
		to  {stroke-dashoffset:1}
	}
}
@media (prefers-reduced-motion: reduce){
	.pillar__icon{animation:none; border-radius:8px}
}
.pillar__body{
	flex:1; min-width:0;
	display:flex; flex-direction:column;
	gap:clamp(20px, 2.5vh, 32px);
}
.pillar__title{
	margin:0;
	font-size:clamp(1.9rem, 3vw, 3rem);
	font-weight:700;
	line-height:1; letter-spacing:-.025em;
}
.pillar__title-dot{color:var(--accent)}
.pillar__tags{
	position:relative;
	display:flex; flex-wrap:wrap; gap:10px;
	isolation:isolate;
}
.pillar__tags::before{
	content:"";
	position:absolute; inset:-8px -20px;
	background:linear-gradient(90deg, transparent 0%, rgba(221,177,120,.14) 50%, transparent 100%);
	transform:translateX(-100%);
	pointer-events:none;
	z-index:-1;
	border-radius:24px;
}
@media (hover: hover) and (pointer: fine){
	.pillar:hover .pillar__tags::before{
		animation:pillarTagsSweep 1.8s ease-in-out infinite;
	}
}
@keyframes pillarTagsSweep{
	0%{transform:translateX(-100%)}
	100%{transform:translateX(100%)}
}
.pillar__tag{
	position:relative; isolation:isolate;
	font-size:11px; letter-spacing:.18em; text-transform:uppercase;
	color:rgba(239,236,231,.55);
	padding:8px 16px;
	border:1px solid rgba(239,236,231,.16);
	border-radius:999px;
	cursor:pointer;
	overflow:hidden;
	transition:color .4s ease, border-color .3s ease;
	--tp: clamp(0, calc((var(--progress, 0) - var(--i, 0) * 0.06) * 2), 1);
	opacity: var(--tp);
	transform: translateX(calc((1 - var(--tp)) * -20px));
}
.pillar__tag::before{
	content:""; position:absolute; inset:0; z-index:-1;
	background:var(--accent);
	border-radius:inherit;
	transform:translateY(101%);
	transition:transform .45s cubic-bezier(.2,.7,.2,1);
}
.pillar__tag:hover{
	color:#0a0909;
	border-color:var(--accent);
}
.pillar__tag:hover::before{transform:translateY(0)}
.pillar:hover .pillar__tag{
	color:rgba(239,236,231,.85);
	border-color:rgba(221,177,120,.4);
}
.pillar:hover .pillar__tag:hover{color:#0a0909}
.cta{
	position:relative;
	padding:clamp(100px, 15vh, 200px) 0;
	overflow:hidden;
	display:flex; align-items:center; justify-content:center;
	text-align:center;
}
.cta::before{
	content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
	background:radial-gradient(60% 50% at 50% 50%, rgba(221,177,120,.05) 0%, transparent 70%);
}
.cta__inner{
	width:100%; max-width:var(--container);
	margin:0 auto;
	padding:0 var(--gutter);
	display:flex; flex-direction:column; align-items:center;
	gap:clamp(20px, 3vh, 32px);
}
.cta__eyebrow{
	display:inline-flex; align-items:center; gap:12px;
	margin:0 0 clamp(8px, 1.5vh, 20px);
	font-size:11px; letter-spacing:.35em; text-transform:uppercase;
	color:var(--accent);
}
.cta__eyebrow-dot{
	width:8px; height:8px; border-radius:50%;
	background:var(--accent);
}
.cta__title{
	margin:0;
	font-size:clamp(1.8rem, 5.3vw, 6rem);
	font-weight:700;
	line-height:.95; letter-spacing:-.035em;
}
.cta__title-line{display:block}
.cta__title-solid{color:var(--fg)}
.cta__title-italic{
	font-weight:400;
	color:var(--accent); letter-spacing:-.035em;
}
.cta__text{
	margin:0; max-width:520px;
	font-size:clamp(15px, 1.4vw, 17px);
	line-height:1.6; font-weight:300;
	color:rgba(239,236,231,.65);
}
.btn-pill{
	margin-top:clamp(16px, 2vh, 28px);
	display:inline-flex; align-items:center; gap:14px;
	padding:18px 28px;
	border:1px solid var(--accent);
	border-radius:999px;
	color:var(--fg);
	background:transparent;
	font-size:13px; letter-spacing:.22em; text-transform:uppercase; font-weight:500;
	position:relative; overflow:hidden;
	transition:color .35s;
	cursor:pointer;
}
.btn-pill::before{
	content:""; position:absolute; inset:0;
	background:var(--accent);
	transform:translateY(101%);
	transition:transform .45s var(--ease-out);
	z-index:0;
}
.btn-pill:hover{color:#0a0909}
.btn-pill:hover::before{transform:translateY(0)}
.btn-pill__label,
.btn-pill__arrow{position:relative; z-index:1}
.btn-pill__arrow{
	display:inline-flex; align-items:center; justify-content:center;
	width:18px; height:18px;
	transition:transform .35s var(--ease-out);
}
.btn-pill__arrow svg{width:100%; height:100%}
.btn-pill:hover .btn-pill__arrow{transform:translateX(6px)}
.footer{
	position:relative;
	min-height:100vh;
	padding:clamp(80px, 12vh, 160px) 0 clamp(60px, 8vh, 100px);
	overflow:hidden;
	border-top:1px solid rgba(239,236,231,.06);
	display:flex; flex-direction:column; justify-content:center;
}
.footer::before{
	content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
	background:
		radial-gradient(ellipse 80% 60% at 30% 30%, rgba(221,177,120,.07) 0%, transparent 60%),
		radial-gradient(ellipse 70% 60% at 80% 80%, rgba(221,177,120,.04) 0%, transparent 60%);
}
.footer__inner{
	width:100%; max-width:var(--container);
	margin:0 auto;
	padding:0 var(--gutter);
}
.footer__grid{
	display:grid; grid-template-columns:1fr 1fr;
	gap:clamp(40px, 5vw, 80px);
	align-items:start;
}
.footer__eyebrow{
	display:inline-flex; align-items:center; gap:12px;
	margin:0 0 clamp(24px, 4vh, 48px);
	font-size:11px; letter-spacing:.35em; text-transform:uppercase;
	color:var(--accent);
}
.footer__eyebrow-dot{
	width:8px; height:8px; border-radius:50%;
	background:var(--accent);
}
.footer__title{
	margin:0 0 clamp(24px, 4vh, 40px);
	font-size:clamp(1.8rem, 5.3vw, 6rem);
	font-weight:700;
	line-height:.95; letter-spacing:-.035em;
}
.footer__title-line{display:block}
.footer__title-solid{color:var(--fg)}
.footer__title-italic{
	font-weight:400;
	color:var(--accent); letter-spacing:-.035em;
}
.footer__lead{
	margin:0 0 clamp(28px, 4vh, 48px);
	max-width:420px;
	font-size:14px; line-height:1.7; font-weight:300;
	color:rgba(239,236,231,.6);
}
.footer__cta-link{
	display:inline-flex; align-items:center; gap:18px;
}
.footer__cta-circle{
	position:relative; overflow:hidden; isolation:isolate;
	display:flex; align-items:center; justify-content:center;
	width:64px; height:64px; border-radius:999px;
	border:1px solid var(--accent);
	color:var(--accent);
	transition:color .35s;
}
.footer__cta-circle::before{
	content:""; position:absolute; inset:0;
	background:var(--accent);
	transform:translateY(101%);
	transition:transform .45s var(--ease-out);
	z-index:0; border-radius:999px;
}
.footer__cta-circle svg{
	position:relative; z-index:1;
	width:22px; height:22px;
	transition:transform .35s var(--ease-out);
}
.footer__cta-link:hover .footer__cta-circle{color:#0a0909}
.footer__cta-link:hover .footer__cta-circle::before{transform:translateY(0)}
.footer__cta-link:hover .footer__cta-circle svg{transform:translateX(6px)}
.footer__cta-text{display:flex; flex-direction:column; gap:4px}
.footer__cta-label{
	font-size:13px; letter-spacing:.22em; text-transform:uppercase;
	font-weight:500;
}
.footer__cta-sub{
	font-size:11px; letter-spacing:.04em;
	color:rgba(239,236,231,.45);
}
.footer__cards{
	display:flex; flex-direction:column;
	gap:clamp(16px, 2.5vh, 24px);
}
.footer__card{
	position:relative;
	padding:clamp(28px, 3.5vh, 40px);
	border:1px solid rgba(239,236,231,.10);
	border-radius:var(--radius);
}
.footer__card-label{
	display:block;
	font-size:11px; letter-spacing:.32em; text-transform:uppercase;
	color:rgba(239,236,231,.45);
	margin-bottom:18px;
}
.footer__email,
.footer__phone{
	display:block;
	font-size:15px; letter-spacing:.02em;
	color:var(--fg);
	cursor:pointer;
	transition:color .3s;
}
.footer__email{margin-bottom:8px}
.footer__phone{margin-bottom:20px; color:rgba(239,236,231,.7)}
.footer__email:hover,
.footer__phone:hover{color:var(--accent)}
.copy-bubble{
	position:absolute;
	z-index:9000;
	padding:4px 12px;
	background:rgba(10,9,9,.85);
	color:var(--accent);
	border:1px solid var(--accent);
	font-size:11px; font-weight:500;
	letter-spacing:.05em;
	border-radius:999px;
	white-space:nowrap;
	transform:translateY(-50%) translateX(-10px);
	opacity:0;
	transition:opacity .55s ease, transform .55s cubic-bezier(.2,.7,.2,1);
	pointer-events:none;
	-webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px);
}
.copy-bubble.is-show{opacity:1; transform:translateY(-50%) translateX(0)}
.copy-bubble--err{color:#fca5a5; border-color:#fca5a5}
.footer__socials{
	display:flex; gap:18px;
	padding-top:16px;
	border-top:1px solid rgba(239,236,231,.08);
}
.footer__socials a{
	font-size:11px; letter-spacing:.22em; text-transform:uppercase;
	color:rgba(239,236,231,.55);
	transition:color .3s;
}
.footer__socials a:hover{color:var(--accent)}
.footer__office{display:flex; flex-direction:column; gap:14px}
.footer__office-row{
	display:flex; align-items:center; gap:10px;
	font-size:11px; letter-spacing:.28em; text-transform:uppercase;
	color:rgba(239,236,231,.55);
}
.footer__office-pin{
	width:6px; height:6px; border-radius:50%;
	background:var(--accent);
	animation:pulseDot 2s var(--ease-out) infinite;
}
@keyframes pulseDot{
	0%{transform:scale(1); opacity:1}
	80%,100%{transform:scale(2.4); opacity:0}
}
.footer__office-addr{
	margin:0; font-size:15px; line-height:1.55;
	letter-spacing:.005em; color:var(--fg);
}
.footer__office-legal{
	margin:0; font-size:12px; line-height:1.6;
	letter-spacing:.04em;
	color:rgba(239,236,231,.45);
}
.footer__office-hours{
	margin:0; font-size:13px; line-height:1.6;
	color:rgba(239,236,231,.55);
}
.footer__bottom{
	display:flex; justify-content:space-between; align-items:center;
	gap:24px; flex-wrap:wrap;
	margin-top:clamp(60px, 8vh, 100px);
	padding-top:24px;
	border-top:1px solid rgba(239,236,231,.08);
	font-size:11px; letter-spacing:.18em; text-transform:uppercase;
	color:rgba(239,236,231,.4);
}
.footer__bottom a{
	color:rgba(239,236,231,.55);
	transition:color .3s;
}
.footer__bottom a:hover{color:var(--accent)}
.footer__live{
	display:inline-flex; align-items:center; gap:6px;
	color:rgba(239,236,231,.55);
	font-variant-numeric:tabular-nums;
	white-space:nowrap;
}
.footer__live-place{margin-right:2px}
.footer__live-time{
	font-variant-numeric:tabular-nums;
	display:inline-block;
	min-width:6.2ch;
	text-align:left;
}
.footer__live-sep{
	color:rgba(221,177,120,.5);
	margin:0 4px;
}
.footer__live-status{
	display:inline-block;
	min-width:14ch;
	text-align:left;
}
.footer__live-dot{
	width:6px; height:6px; border-radius:50%;
	background:var(--accent);
	box-shadow:0 0 8px var(--accent);
	animation:livePulse 2.4s ease-in-out infinite;
}
@keyframes livePulse{
	0%, 100%{opacity:.5; transform:scale(.85)}
	50%{opacity:1; transform:scale(1)}
}
.split-word{
	display:inline-block;
	white-space:nowrap;
}
.split-char{
	display:inline-block;
	will-change:transform, opacity;
	opacity:0;
	transform:translateY(110%);
}
.hero__title,
.manifesto__title,
.services__title,
.cta__title,
.footer__title{
	overflow:hidden;
	padding-bottom:.08em;
}
.manifesto__title > span,
.services__title > span,
.cta__title > span,
.footer__title > span{
	overflow:hidden;
	display:inline-block;
	vertical-align:baseline;
}
[data-scroll-tied] .split-char{
	--p: clamp(0, calc((var(--progress, 0) - var(--i, 0) * 0.018) * 2.5), 1);
	opacity: var(--p);
	transform: translateY(calc((1 - var(--p)) * 110%));
}
@media (prefers-reduced-motion: reduce){
	.split-char{ opacity:1!important; transform:none!important }
}
.modal{
	position:fixed; inset:0;
	z-index:100;
	display:flex; align-items:center; justify-content:center;
	padding:24px;
	pointer-events:none;
	visibility:hidden;
}
.modal[data-open]{pointer-events:auto; visibility:visible}
.modal__overlay{
	position:absolute; inset:0;
	background:rgba(10,9,9,.82);
	-webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px);
	cursor:pointer;
	opacity:0;
}
.modal__panel{
	position:relative; z-index:1;
	width:100%; max-width:930px;
	max-height:calc(100vh - 48px);
	display:flex; flex-direction:column;
	background:#13110f;
	border:1px solid rgba(239,236,231,.10);
	border-radius:var(--radius);
	overflow:hidden;
	opacity:0;
	transform:translateY(40px) scale(.94);
}
.modal__close{
	position:absolute; top:18px; right:18px;
	z-index:2;
	width:36px; height:36px;
	border-radius:999px;
	color:rgba(239,236,231,.7);
	font-size:22px; line-height:1;
	transition:color .3s, background .3s;
}
.modal__close:hover{color:var(--accent); background:rgba(221,177,120,.1)}
.modal__head{
	padding:32px 32px 20px;
	border-bottom:1px solid rgba(239,236,231,.08);
}
.modal__title{
	margin:0 0 16px;
	font-family:var(--font-sans);
	font-size:clamp(1.5rem, 3vw, 2.2rem);
	font-weight:700; line-height:1; letter-spacing:-.025em;
	color:var(--fg);
}
.modal__progress{
	display:flex; align-items:center; gap:16px;
}
.modal__progress-track{
	flex:1; height:3px;
	background:rgba(239,236,231,.08); border-radius:2px;
	overflow:hidden;
}
.modal__progress-bar{
	height:100%; width:0;
	background:var(--accent);
	transition:width .45s var(--ease-out);
}
.modal__progress-label{
	font-size:10px; letter-spacing:.22em; text-transform:uppercase;
	color:rgba(239,236,231,.55);
	white-space:nowrap;
}
.brief[hidden]{display:none}
.brief{
	position:relative;
	flex:1;
	overflow-y:auto;
	padding:22px 32px 24px;
	display:flex; flex-direction:column; gap:18px;
}
.brief__step{
	border:0; margin:0; padding:0; min-width:0;
	display:flex; flex-direction:column; gap:18px;
}
.brief__step[hidden]{display:none}
.brief__legend{
	margin:0 0 18px;
	font-size:clamp(20px, 2.2vw, 26px);
	letter-spacing:-.015em;
	line-height:1.1;
	color:var(--accent);
	font-weight:700;
}
.brief__field{display:flex; flex-direction:column; gap:10px}
.brief__field[hidden]{display:none}
.brief__field--conditional{
	overflow:hidden;
	max-height:600px;
	opacity:1;
	transform:translateY(0);
	transition:max-height .4s cubic-bezier(.2,.7,.2,1), opacity .3s ease, transform .35s cubic-bezier(.2,.7,.2,1), margin .35s cubic-bezier(.2,.7,.2,1), gap .35s ease;
}
.brief__field--hidden{
	max-height:0!important;
	opacity:0!important;
	transform:translateY(-6px);
	margin-top:0!important;
	margin-bottom:0!important;
	gap:0!important;
	pointer-events:none;
}
@media (prefers-reduced-motion: reduce){
	.brief__field--conditional{transition:none}
}
.brief__label{
	font-size:13px; letter-spacing:.06em;
	color:rgba(239,236,231,.85); font-weight:500;
}
.brief__label .req{color:var(--accent); margin-left:.15em}
.brief__input,
.brief__textarea{
	width:100%;
	padding:14px 16px;
	background:rgba(239,236,231,.04);
	border:1px solid rgba(239,236,231,.10);
	border-radius:10px;
	color:var(--fg);
	font:inherit; font-size:15px;
	transition:border-color .3s, background .3s;
}
.brief__textarea{min-height:120px; resize:vertical; line-height:1.6}
.brief__input:focus,
.brief__textarea:focus{
	outline:none;
	border-color:var(--accent);
	background:rgba(239,236,231,.06);
}
.brief__radios,
.brief__checks{
	display:flex; flex-wrap:wrap; gap:8px;
}
.brief__checks{display:grid; grid-template-columns:repeat(5, 1fr)}
@media (max-width:700px){ .brief__checks{grid-template-columns:repeat(3, 1fr)} }
@media (max-width:480px){ .brief__checks{grid-template-columns:repeat(2, 1fr)} }
.brief__radio,
.brief__check{
	position:relative;
	display:flex; flex-direction:column; align-items:center; justify-content:center;
	gap:6px;
	padding:10px 10px;
	border:1px solid rgba(239,236,231,.16);
	border-radius:10px;
	font-size:12px; letter-spacing:.02em;
	color:rgba(239,236,231,.75);
	cursor:pointer;
	transition:border-color .3s, color .3s, background .3s;
	user-select:none;
	text-align:center;
}
.brief__radio{flex-direction:row; padding:12px 18px; font-size:13px; min-width:150px; justify-content:center}
.brief__icon{
	width:22px; height:22px;
	color:rgba(239,236,231,.55);
	transition:color .3s;
}
.brief__check:has(input:checked) .brief__icon,
.brief__check:hover .brief__icon{color:var(--accent)}
.brief__radio input,
.brief__check input{
	position:absolute; opacity:0; inset:0;
	cursor:pointer;
}
.brief__radio:hover,
.brief__check:hover{
	border-color:rgba(221,177,120,.4);
	color:var(--fg);
}
.brief__radio:has(input:checked),
.brief__check:has(input:checked){
	border-color:var(--accent);
	background:rgba(221,177,120,.10);
	color:var(--fg);
}
.brief__nav{
	display:flex; justify-content:space-between; align-items:center;
	gap:12px;
	margin-top:8px;
	padding-top:20px;
	border-top:1px solid rgba(239,236,231,.06);
}
.brief__group{
	display:flex; flex-direction:column; gap:18px;
	padding:8px 0 4px;
}
.brief__group[hidden]{display:none}
.brief__group-title{
	margin:0 0 4px;
	display:flex; align-items:center; gap:10px;
	font-size:13px; letter-spacing:.18em; text-transform:uppercase;
	font-weight:600;
	color:var(--accent);
}
.brief__group-title::before{
	content:""; width:6px; height:6px; border-radius:50%;
	background:var(--accent);
}
.brief__sub{
	font-size:11px; color:rgba(239,236,231,.45);
	margin:-4px 0 0; letter-spacing:.02em;
}
.brief__check--consent{
	flex-direction:row; align-items:flex-start; gap:12px;
	padding:14px 16px; text-align:left;
	font-size:11px; line-height:1.55;
	letter-spacing:.01em;
	color:rgba(239,236,231,.65);
}
.brief__check--consent::before{
	content:""; flex-shrink:0;
	width:16px; height:16px; border-radius:4px;
	border:1px solid rgba(239,236,231,.3);
	margin-top:2px;
	background-repeat:no-repeat;
	background-position:center;
	background-size:11px 11px;
	transition:background-color .3s, border-color .3s;
}
.brief__check--consent:has(input:checked)::before{
	background-color:var(--accent); border-color:var(--accent);
	background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'><path d='M3 8.5l3.2 3.2L13 4.5' stroke='%230a0909' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/></svg>");
}
.brief__file{
	display:flex; align-items:center; justify-content:space-between; gap:12px;
	padding:14px 18px;
	border:1px dashed rgba(239,236,231,.20);
	border-radius:10px;
	color:rgba(239,236,231,.65);
	font-size:13px; cursor:pointer;
	transition:border-color .3s, color .3s;
}
.brief__file:hover{border-color:var(--accent); color:var(--fg)}
.brief__file{position:relative}
.brief__file input{position:absolute; inset:0; opacity:0; width:100%; height:100%; cursor:pointer}
.brief__file-name{font-size:11px; color:rgba(239,236,231,.45)}
.brief__btn{
	padding:14px 24px;
	border-radius:999px;
	font-family:inherit;
	font-size:12px; letter-spacing:.22em; text-transform:uppercase;
	font-weight:600;
	border:1px solid transparent;
	cursor:pointer;
	transition:background .3s, color .3s, border-color .3s, transform .3s var(--ease-out);
}
.brief__btn--back{
	border-color:rgba(239,236,231,.18);
	color:rgba(239,236,231,.7);
	background:transparent;
}
.brief__btn--back:hover{color:var(--fg); border-color:var(--fg)}
.brief__btn--next,
.brief__btn--submit{
	margin-left:auto;
	background:var(--accent);
	color:#0a0909;
	border-color:var(--accent);
}
.brief__btn--next:hover,
.brief__btn--submit:hover{transform:translateY(-1px)}
.brief__btn[disabled]{opacity:.5; cursor:not-allowed; transform:none!important}
body.is-modal-open{overflow:hidden}
.brief__field{position:relative}
.brief__field.is-invalid .brief__label{color:#ef9a9a}
.brief__error{
	position:absolute;
	right:0; top:-6px;
	margin:0;
	padding:4px 12px;
	font-size:11.5px; line-height:1.4; font-weight:500; letter-spacing:.02em;
	color:#fca5a5;
	background:rgba(10,9,9,.85);
	border:1px solid #fca5a5;
	border-radius:999px;
	white-space:nowrap;
	pointer-events:none;
	-webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px);
	opacity:0; transform:translateY(-6px);
	animation:errorIn .55s cubic-bezier(.2,.7,.2,1) forwards;
	z-index:5;
}
@keyframes errorIn{
	from{opacity:0; transform:translateY(-6px)}
	to  {opacity:1; transform:translateY(0)}
}
.brief__success[hidden]{display:none}
.brief__success{
	flex:1;
	position:relative;
	display:flex; flex-direction:column; align-items:center; justify-content:center;
	min-height:420px;
	padding:40px 24px;
	text-align:center;
	overflow:hidden;
}
.brief__confetti{
	position:absolute; inset:0;
	width:100%; height:100%;
	pointer-events:none;
}
.brief__success-inner{
	position:relative; z-index:2;
	max-width:440px;
}
.brief__success-icon{
	display:flex; align-items:center; justify-content:center;
	width:72px; height:72px;
	margin:0 auto 24px;
	color:var(--accent);
	filter:drop-shadow(0 0 24px rgba(221,177,120,.4));
}
.brief__success-icon svg{width:100%; height:100%}
.brief__success-title{
	margin:0 0 16px;
	font-size:clamp(28px, 4vw, 42px);
	font-weight:700;
	line-height:1;
	color:var(--fg);
	letter-spacing:-.02em;
}
.brief__success-text{
	margin:0 0 10px;
	font-size:15px; line-height:1.6; font-weight:300;
	color:rgba(239,236,231,.85);
}
.brief__success-sub{
	margin:0 0 32px;
	font-size:13px; line-height:1.6; font-weight:300;
	color:rgba(239,236,231,.55);
}
.brief__success #briefDone{
	margin:0 auto;
}
@media (max-width:600px){
	.modal{
		padding:0;
		align-items:flex-start;
	}
	.modal__panel{
		width:100%; max-width:100%;
		height:calc(100dvh - 35px);
		max-height:calc(100dvh - 35px);
		margin-top:35px;
		border-radius:24px 24px 0 0;
		border:0;
		border-top:1px solid rgba(239,236,231,.10);
	}
	.modal__close{top:14px; right:14px}
	.modal__head{padding:24px 20px 16px}
	.brief{
		padding:20px;
		overflow-y:auto;
		-webkit-overflow-scrolling:touch;
		flex:1;
	}
	.brief__checks{grid-template-columns:1fr 1fr}
	.brief__input,
	.brief__textarea,
	.brief__select,
	.brief-uiselect__btn,
	.brief__radio span,
	.brief__check span,
	.brief__file,
	.brief__file-name,
	.phone-input__prefix-btn,
	.phone-input__number{font-size:16px}
}
.blob-btn{
	position:fixed; right:clamp(20px, 3vw, 40px);
	bottom:calc(var(--marquee-h) + clamp(20px, 3vh, 40px));
	z-index:45;
	width:clamp(64px, 6vw, 84px); height:clamp(64px, 6vw, 84px);
	display:flex; align-items:center; justify-content:center;
	color:#0a0909;
	transition:transform .4s var(--ease-out), opacity .4s;
	opacity:0; transform:scale(.6) translateY(20px);
	pointer-events:none;
}
.blob-btn--visible{
	opacity:1; transform:scale(1) translateY(0);
	pointer-events:auto;
}
.blob-btn:hover{transform:scale(1.08) translateY(0)}
.blob-btn svg{position:absolute; inset:0; width:100%; height:100%}
.blob-btn__svg path{fill:var(--accent)}
.blob-btn__icon{
	position:relative; z-index:1;
	font-size:clamp(22px, 2vw, 28px);
	font-weight:300; line-height:1;
}
.split{display:inline-block; overflow:hidden; line-height:inherit; vertical-align:baseline}
.split .char{
	display:inline-block;
	transform:translateY(0);
	transition:transform .25s var(--ease-out), opacity .25s var(--ease-out);
}
.is-below .split .char{opacity:0; transform:translateY(110%)}
.is-above .split .char{opacity:0; transform:translateY(-110%)}
.is-in .split .char   {opacity:1; transform:translateY(0)}
:root{--scroll-v:0px}
.is-in .split .char{
	transform:translateY(calc(var(--scroll-v) * -.35));
}
@media (hover: hover) and (pointer: fine){
	body.has-custom-cursor,
	body.has-custom-cursor a,
	body.has-custom-cursor button,
	body.has-custom-cursor input,
	body.has-custom-cursor textarea,
	body.has-custom-cursor label{cursor:none!important}
	body.has-custom-cursor .cookie-bar,
	body.has-custom-cursor .cookie-bar *,
	body.has-custom-cursor .cookie-modal,
	body.has-custom-cursor .cookie-modal *,
	body.has-custom-cursor .cookie-fab{cursor:auto!important}
	body.has-custom-cursor .cookie-bar a,
	body.has-custom-cursor .cookie-bar button,
	body.has-custom-cursor .cookie-modal a,
	body.has-custom-cursor .cookie-modal button,
	body.has-custom-cursor .cookie-modal .cookie-toggle,
	body.has-custom-cursor .cookie-fab{cursor:pointer!important}
	body.has-custom-cursor .cookie-modal input[type="text"],
	body.has-custom-cursor .cookie-modal textarea{cursor:text!important}
	body.is-modal-open,
	body.is-modal-open a,
	body.is-modal-open button,
	body.is-modal-open input,
	body.is-modal-open textarea,
	body.is-modal-open label{cursor:auto!important}
	body.is-modal-open a,
	body.is-modal-open button,
	body.is-modal-open .brief__check,
	body.is-modal-open .brief__radio,
	body.is-modal-open .brief__file{cursor:pointer!important}
	body.is-modal-open input[type="text"],
	body.is-modal-open input[type="email"],
	body.is-modal-open input[type="tel"],
	body.is-modal-open input[type="url"],
	body.is-modal-open textarea{cursor:text!important}
	body.is-modal-open .cursor-dot,
	body.is-modal-open .cursor-ring{opacity:0; visibility:hidden}
	body:has(.cookie-bar:hover) .cursor-dot,
	body:has(.cookie-bar:hover) .cursor-ring,
	body:has(.cookie-modal:hover) .cursor-dot,
	body:has(.cookie-modal:hover) .cursor-ring,
	body:has(.cookie-fab:hover) .cursor-dot,
	body:has(.cookie-fab:hover) .cursor-ring{opacity:0; visibility:hidden}
	.cursor-dot,
	.cursor-ring,
	.cursor-label{
		position:fixed; top:0; left:0;
		z-index:9999;
		pointer-events:none;
		will-change:transform;
	}
	.cursor-label{
		transform:translate3d(var(--cx, -200px), var(--cy, -200px), 0);
		background:transparent; box-shadow:none; padding:0;
	}
	.cursor-label__inner{
		display:inline-block;
		padding:6px 14px;
		background:rgba(221,177,120,.92);
		color:#0a0909;
		font-size:12px; font-weight:500;
		letter-spacing:.01em;
		border-radius:999px;
		white-space:nowrap;
		transform:translate(22px, 30px);
		opacity:0;
		transition:opacity .45s cubic-bezier(.2,.7,.2,1), transform .45s cubic-bezier(.2,.7,.2,1);
		box-shadow:0 10px 30px -12px rgba(221,177,120,.55);
	}
	.cursor-label.is-visible .cursor-label__inner{
		opacity:1;
		transform:translate(22px, 22px);
	}
	body.is-modal-open .cursor-label,
	body:has(.cookie-bar:hover) .cursor-label,
	body:has(.cookie-modal:hover) .cursor-label,
	body:has(.cookie-fab:hover) .cursor-label{opacity:0!important}
	.cursor-dot{
		width:8px; height:8px;
		margin:-4px 0 0 -4px;
		border-radius:50%;
		background:var(--accent);
		transition:width .25s var(--ease-out), height .25s var(--ease-out), margin .25s var(--ease-out), background .25s;
	}
	.cursor-ring{
		width:36px; height:36px;
		margin:-18px 0 0 -18px;
		color:var(--accent);
		transition:opacity .25s, color .25s;
	}
	.cursor-ring svg{
		width:100%; height:100%;
		animation:spin 12s linear infinite;
	}
	.cursor-ring__star{
		position:absolute; inset:0;
		display:flex; align-items:center; justify-content:center;
		font-size:26px;
		color:var(--accent);
		animation:spinReverse 7s linear infinite;
	}
	body.is-cursor-hover .cursor-dot{
		width:14px; height:14px;
		margin:-7px 0 0 -7px;
		background:var(--accent-bright);
	}
	body.is-cursor-hover .cursor-ring{color:var(--accent-bright)}
}
@media (hover: none){ .cursor-dot,.cursor-ring{display:none} }
.clients{
	position:relative;
	padding:clamp(80px, 12vh, 160px) 0 clamp(40px, 6vh, 80px);
	overflow:hidden;
}
.clients__head{
	display:grid; grid-template-columns:1fr 1fr;
	gap:clamp(32px, 5vw, 80px);
	align-items:center;
	margin-bottom:clamp(48px, 7vh, 90px);
}
.clients__title{
	margin:0;
	font-size:clamp(1.8rem, 5.3vw, 6rem);
	font-weight:700;
	line-height:.95; letter-spacing:-.035em;
	color:var(--fg);
	overflow:hidden;
	padding-bottom:.08em;
}
.clients__title > span{
	overflow:hidden;
	display:block;
}
.clients__title-accent{
	color:var(--accent);
	font-weight:400;
}
.clients__lead{
	margin:0; max-width:400px; justify-self:end;
	font-size:17px; line-height:1.7; font-weight:300;
	color:rgba(239,236,231,.55);
}
.clients__marquee{
	display:flex; flex-direction:column;
	border-top:1px solid rgba(239,236,231,.10);
	border-bottom:1px solid rgba(239,236,231,.10);
}
.clients__row{
	position:relative;
	overflow:hidden;
	-webkit-mask-image:linear-gradient(to right, transparent 0, #000 6%, #000 94%, transparent 100%);
	        mask-image:linear-gradient(to right, transparent 0, #000 6%, #000 94%, transparent 100%);
}
.clients__row + .clients__row{
	border-top:1px solid rgba(239,236,231,.10);
}
.clients__track{
	display:flex; width:max-content;
	animation:clientsLeft 70s linear infinite;
	will-change:transform;
}
.clients__track--right{ animation-name:clientsRight }
@keyframes clientsLeft{
	from{ transform:translate3d(0,0,0) }
	to  { transform:translate3d(-50%,0,0) }
}
@keyframes clientsRight{
	from{ transform:translate3d(-50%,0,0) }
	to  { transform:translate3d(0,0,0) }
}
.clients__row:hover .clients__track{ animation-play-state:paused }
.clients__item{
	flex-shrink:0;
	padding:clamp(28px, 4vh, 56px) clamp(36px, 5vw, 72px);
	font-family:var(--font-sans);
	font-size:clamp(12px, 1.1vw, 15px);
	font-weight:600;
	letter-spacing:.01em;
	color:rgba(239,236,231,.50);
	border-right:1px solid rgba(239,236,231,.08);
	white-space:nowrap;
	transition:color .35s, background .35s;
	cursor:default;
}
.clients__item:hover{
	color:var(--fg);
	background:rgba(221,177,120,.04);
}
@media (max-width:900px){
	.clients__head{grid-template-columns:1fr; gap:18px; align-items:start}
	.clients__lead{justify-self:start}
}
@media (prefers-reduced-motion:reduce){
	.clients__track{animation:none}
}
.marquee{
	position:fixed; left:0; right:0; bottom:0;
	z-index:40;
	background:rgba(10,9,9,.78);
	-webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px);
	border-top:1px solid rgba(239,236,231,.06);
	overflow:hidden;
	padding:14px 0;
	pointer-events:none;
	transform:translateY(100%);
	opacity:0;
	transition:transform .6s var(--ease-out), opacity .6s ease;
	-webkit-mask-image:linear-gradient(to right, transparent 0, #000 6%, #000 94%, transparent 100%);
	        mask-image:linear-gradient(to right, transparent 0, #000 6%, #000 94%, transparent 100%);
}
.marquee--visible{
	transform:translateY(0);
	opacity:1;
}
.marquee__track{
	display:flex;
	width:max-content;
	animation:marqueeScroll 220s linear infinite;
}
@keyframes marqueeScroll{
	from{transform:translate3d(0,0,0)}
	to  {transform:translate3d(-50%,0,0)}
}
.marquee__item{
	display:inline-flex; align-items:center; gap:28px;
	padding:0 28px; white-space:nowrap;
}
.marquee__label{
	font-size:12px; letter-spacing:.22em; text-transform:uppercase;
	color:rgba(239,236,231,.55);
}
.marquee__star{
	color:rgba(221,177,120,.55);
	font-size:11px;
}
@media (max-width:900px){
	.footer__grid{grid-template-columns:1fr}
	.manifesto__text{line-height:1.65}
}
@media (max-width:900px){
	.pillar{
		flex-direction:column; align-items:flex-start;
		gap:18px;
		padding:clamp(28px, 4vh, 56px) 0;
	}
	.pillar__icon{width:48px; height:48px}
}
@media (max-width:768px){
	.container,
	.hero__content,
	.cta__inner,
	.footer__inner{padding-left:var(--gutter-mobile); padding-right:var(--gutter-mobile)}
	.hero__content{
		padding:90px 20px 80px;
		justify-content:center;
		align-items:center;
		text-align:center;
		z-index:10;
	}
	.hero__line--small,
	.hero__line{text-align:center}
	.hero__line--small{margin-top:0; justify-content:center; gap:0}
	.hero__line--small .hero__spin{display:none}
	.hero__title{font-size:clamp(2.6rem, 10vw, 5rem)}
	.hero__deer{
		width:130vw; max-width:none;
		left:-15vw; right:auto;
		top:14%; bottom:auto;
		transform:translate3d(0, var(--parallax-y, 0px), 0);
		--object-opacity:.35;
		z-index:1;
	}
	.manifesto__title,
	.services__title{
		font-size:clamp(2.2rem, 8vw, 5rem);
		flex-direction:column; align-items:center;
		gap:0; white-space:normal;
	}
	.manifesto__title-outline,
	.services__title-outline{display:none}
	.cta__title{font-size:clamp(2.2rem, 8vw, 5rem)}
	.footer__title{font-size:clamp(2rem, 7.5vw, 4.5rem)}
	.clients__title{font-size:clamp(2rem, 7.5vw, 3.5rem)}
	.clients__title > span{display:inline}
	.clients__lead{font-size:13px}
	.pillar__title{font-size:clamp(1.7rem, 5vw, 2.6rem)}
	.services{text-align:center}
	.services__list{text-align:center}
	.pillar{align-items:center; text-align:center}
	.pillar__body{align-items:center}
	.pillar__tags{justify-content:center}
	.clients__head{grid-template-columns:1fr; align-items:center; text-align:center}
	.clients__lead{justify-self:center; max-width:100%}
	.footer__grid{text-align:center}
	.footer__left{display:flex; flex-direction:column; align-items:center}
	.footer__title{text-align:center}
	.footer__cta-link{justify-content:center}
	.footer__card{text-align:center}
	.footer__card-label{text-align:center}
	.footer__office{align-items:center}
	.footer__socials{justify-content:center}
	.footer__bottom{justify-content:center; text-align:center; flex-direction:column; gap:10px}
	.footer__bottom > span:first-child{order:3; margin-top:18px}
	.footer__bottom .footer__live{order:1; flex-wrap:wrap; justify-content:center; row-gap:2px; white-space:normal}
	.footer__bottom .footer__live-sep{display:none}
	.footer__bottom .footer__live-status{flex-basis:100%; min-width:0; text-align:center}
	.footer__bottom a{order:2}
}
@media (max-width:560px){
	.hero__content{padding-top:80px; padding-bottom:80px}
	.hero__title{font-size:clamp(2.4rem, 10.5vw, 4rem)}
	.hero__deer{
		width:140vw; left:-20vw;
		top:12%;
		--object-opacity:.28;
	}
	.manifesto__title,
	.services__title,
	.cta__title{font-size:clamp(2rem, 9vw, 3.5rem)}
	.footer__title{font-size:clamp(1.9rem, 8.5vw, 3.5rem)}
	.clients__title{font-size:clamp(1.9rem, 8.5vw, 3rem)}
}
@media (max-width:600px){
	.stats{grid-template-columns:1fr; gap:24px}
}
.scroll-rail{
	position:fixed; top:50%; right:22px; left:auto;
	transform:translateY(-50%);
	z-index:60;
	display:flex; flex-direction:column; align-items:center; gap:18px;
	opacity:0; pointer-events:none;
	transition:opacity .4s ease;
}
.scroll-rail.is-visible{opacity:1; pointer-events:auto}
.scroll-rail__line, .scroll-rail__fill{
	position:absolute; left:50%; top:8px; bottom:8px;
	width:1.5px; transform:translateX(-50%);
	pointer-events:none;
}
.scroll-rail__line{background:rgba(239,236,231,.14)}
.scroll-rail__fill{
	background:linear-gradient(to bottom, var(--accent-bright, #f5d99b), var(--accent));
	transform-origin:top;
	transform:translateX(-50%) scaleY(var(--rail, 0));
	transition:transform .15s linear;
	box-shadow:0 0 8px rgba(221,177,120,.5);
}
.scroll-rail__dot{
	position:relative; z-index:2;
	display:flex; align-items:center; justify-content:center;
	width:12px; height:12px;
	border:1.5px solid rgba(221,177,120,.55);
	border-radius:50%;
	background:var(--bg);
	transition:transform .25s cubic-bezier(.2,.7,.2,1), background .2s ease, border-color .2s ease, box-shadow .25s ease;
	text-decoration:none;
}
.scroll-rail__dot::before{
	content:""; position:absolute; inset:2px;
	border-radius:50%;
	background:var(--accent);
	transform:scale(0);
	transition:transform .3s cubic-bezier(.2,.7,.2,1);
}
.scroll-rail__dot.is-active::before{transform:scale(1)}
.scroll-rail__dot.is-active{
	border-color:var(--accent);
	box-shadow:0 0 12px rgba(221,177,120,.6);
	transform:scale(1.15);
}
.scroll-rail__dot span{
	position:absolute; right:22px; top:50%;
	transform:translateY(-50%) translateX(8px);
	opacity:0;
	font-size:11px; font-weight:600;
	color:#0a0909;
	letter-spacing:.06em; text-transform:uppercase;
	white-space:nowrap;
	pointer-events:none;
	padding:5px 12px;
	background:var(--accent);
	border-radius:999px;
	box-shadow:0 6px 18px -8px rgba(221,177,120,.6);
	transition:opacity .25s ease, transform .3s cubic-bezier(.2,.7,.2,1);
}
.scroll-rail__dot:hover span{opacity:1; transform:translateY(-50%) translateX(0)}
.scroll-rail__dot:hover{
	transform:scale(1.5);
	border-color:var(--accent-bright, #f5d99b);
	box-shadow:0 0 18px rgba(221,177,120,.7);
}
.scroll-rail__dot:hover.is-active{transform:scale(1.5)}
@media (max-width:900px){ .scroll-rail{display:none} }
.process{
	position:relative;
	min-height:100vh;
	padding:clamp(80px, 12vh, 140px) 0;
	overflow:hidden;
}
.process::before{
	content:""; position:absolute; inset:0; z-index:0;
	background:radial-gradient(60% 50% at 50% 30%, rgba(221,177,120,.05) 0%, transparent 70%);
	pointer-events:none;
}
.process > .container{position:relative; z-index:1}
.process__head{
	max-width:760px;
	margin:0 auto clamp(40px, 6vh, 80px);
	text-align:center;
}
.process__eyebrow{
	display:inline-flex; align-items:center; gap:8px;
	margin:0 0 18px;
	font-size:12px; font-weight:500;
	letter-spacing:.18em; text-transform:uppercase;
	color:var(--accent);
}
.process__eyebrow-dot{
	width:6px; height:6px; border-radius:50%;
	background:var(--accent);
	box-shadow:0 0 12px var(--accent);
}
.process__title{
	margin:0 0 18px;
	font-weight:700;
	font-size:clamp(2rem, 5vw, 4.5rem);
	line-height:1; letter-spacing:-.03em;
	color:var(--fg);
}
.process__title-accent{
	display:block;
	color:var(--accent);
	font-weight:400;
}
.process__lead{
	margin:0;
	font-size:clamp(14px, 1.1vw, 16px);
	font-weight:300; line-height:1.7;
	color:rgba(239,236,231,.7);
	max-width:520px; margin:0 auto;
}
.process__steps{
	position:relative;
	list-style:none; margin:0; padding:0;
	display:grid;
	grid-template-columns:repeat(5, 1fr);
	gap:24px;
}
.process__steps::before{
	content:""; position:absolute;
	left:6%; right:6%;
	top:46px;
	height:1px;
	background:linear-gradient(to right, transparent, rgba(221,177,120,.35) 12%, rgba(221,177,120,.35) 88%, transparent);
	z-index:0;
}
.process__step{
	position:relative; z-index:1;
	display:flex; flex-direction:column; align-items:center;
	text-align:center;
	padding:0 4px;
	opacity:0; transform:translateY(20px);
	transition:opacity .6s cubic-bezier(.2,.7,.2,1), transform .6s cubic-bezier(.2,.7,.2,1);
	transition-delay:calc(var(--i) * .08s);
}
.process__step.is-in{opacity:1; transform:translateY(0)}
.process__num{
	position:relative;
	display:flex; align-items:center; justify-content:center;
	width:64px; height:64px;
	margin:0 auto 24px;
	border:1px solid rgba(221,177,120,.4);
	border-radius:50%;
	background:var(--bg);
	font-size:14px; font-weight:500;
	letter-spacing:.05em;
	color:var(--accent);
	transition:border-color .35s ease, transform .45s cubic-bezier(.2,.7,.2,1), box-shadow .35s ease, font-size .35s ease, background .35s ease;
}
.process__step:hover .process__num{
	border-color:var(--accent);
	background:var(--accent);
	color:#0a0909;
	transform:translateY(-6px) scale(1.35);
	box-shadow:0 18px 48px rgba(221,177,120,.35);
	font-size:18px;
}
.process__step-title{
	margin:0 0 12px;
	font-size:clamp(18px, 1.5vw, 22px);
	font-weight:700;
	color:var(--fg);
	letter-spacing:-.01em;
}
.process__step-text{
	margin:0;
	font-size:14px; line-height:1.6; font-weight:300;
	color:rgba(239,236,231,.7);
	max-width:220px;
}
@media (max-width:900px){
	.process__steps{grid-template-columns:1fr; gap:32px; padding-left:24px}
	.process__steps::before{
		left:48px; right:auto;
		top:24px; bottom:24px;
		width:1px; height:auto;
		background:linear-gradient(to bottom, transparent, rgba(221,177,120,.3) 4%, rgba(221,177,120,.3) 96%, transparent);
	}
	.process__step{display:grid; grid-template-columns:auto 1fr; column-gap:18px; row-gap:6px; align-items:start; text-align:left; padding:0}
	.process__num{margin:0; flex-shrink:0; width:48px; height:48px; font-size:12px; grid-row:1 / span 2}
	.process__step-title{margin:0}
	.process__step-text{max-width:none}
}
.cta-blob{
	position:fixed; top:0; left:0;
	width:200px; height:200px;
	pointer-events:none; z-index:1000;
	background:radial-gradient(circle at 50% 50%, rgba(221,177,120,.5) 0%, rgba(221,177,120,.15) 40%, transparent 70%);
	border-radius:50%;
	transform:translate3d(-50%, -50%, 0) scale(0);
	transition:transform .35s cubic-bezier(.2,.7,.2,1), opacity .35s ease;
	opacity:0;
	filter:blur(20px);
	mix-blend-mode:screen;
}
.cta-blob.is-active{transform:translate3d(-50%, -50%, 0) scale(1); opacity:1}
@media (prefers-reduced-motion: reduce){
	.hero__spin svg,
	.hero__spin-star,
	.hero__scroll::after,
	.footer__office-pin,
	.marquee__track{animation:none}
	html{scroll-behavior:auto}
}
.brief__field--phone .phone-input{
	display:flex; align-items:stretch; gap:0;
	background:rgba(255,255,255,.04);
	border:1px solid rgba(239,236,231,.16);
	border-radius:10px;
	overflow:visible;
	position:relative;
	transition:border-color .2s ease,background .2s ease;
}
.brief__field--phone .phone-input:focus-within{border-color:var(--accent); background:rgba(255,255,255,.06)}
.brief__field--phone .phone-input__prefix{
	display:flex; align-items:center; gap:6px;
	padding:14px 12px 14px 16px;
	border-right:1px solid rgba(239,236,231,.12);
	font-size:14px; color:var(--fg); font-weight:500;
	background:transparent; border-radius:0;
	cursor:pointer; transition:background .2s ease;
	border-top-left-radius:10px; border-bottom-left-radius:10px;
}
.brief__field--phone .phone-input__prefix:hover{background:rgba(255,255,255,.04)}
.brief__field--phone .phone-input__prefix[aria-expanded="true"]{background:rgba(255,255,255,.06)}
.brief__field--phone .phone-input__prefix[aria-expanded="true"] svg{transform:rotate(180deg)}
.brief__field--phone .phone-input__prefix svg{transition:transform .2s ease; color:rgba(239,236,231,.55)}
.brief__field--phone .phone-input__prefix .flag{
	width:22px; height:16px; border-radius:2px; object-fit:cover; display:block; flex-shrink:0;
	box-shadow:0 0 0 1px rgba(239,236,231,.12);
}
.brief__field--phone .phone-input__menu{
	position:absolute; top:calc(100% + 6px); left:0; z-index:20;
	background:#13110f; border:1px solid rgba(239,236,231,.14);
	border-radius:10px; padding:6px; margin:0; list-style:none;
	width:280px; max-height:320px; overflow-y:auto;
	box-shadow:0 20px 50px -20px rgba(0,0,0,.7);
}
.brief__field--phone .phone-input__menu[hidden]{display:none}
.brief__field--phone .phone-input__menu li{
	display:grid; grid-template-columns:28px 1fr auto; align-items:center; gap:10px;
	padding:8px 10px; border-radius:6px;
	font-size:13.5px; color:var(--fg); cursor:pointer;
	transition:background .15s ease;
}
.brief__field--phone .phone-input__menu li:hover,
.brief__field--phone .phone-input__menu li[aria-selected="true"]{background:rgba(221,177,120,.12)}
.brief__field--phone .phone-input__menu li > img{
	width:22px; height:16px; border-radius:2px; object-fit:cover; display:block;
	box-shadow:0 0 0 1px rgba(239,236,231,.12);
}
.brief__field--phone .phone-input__menu li .phone-input__country{color:var(--fg); font-weight:500}
.brief__field--phone .phone-input__menu li .phone-input__dial{color:rgba(239,236,231,.55); font-variant-numeric:tabular-nums; font-size:12.5px}
.brief__field--phone .phone-input input{
	border:0; border-radius:0; background:transparent;
	padding:14px 16px 14px 12px; flex:1; min-width:0;
	color:var(--fg); font-size:14px;
}
.brief__field--phone .phone-input input:focus{background:transparent; outline:none}
.brief-fab{
	position:fixed; right:22px; bottom:52px; z-index:80;
	width:58px; height:58px;
	background:transparent; border:0; padding:0;
	cursor:pointer; isolation:isolate;
	opacity:0; transform:translateY(20px) scale(.6); pointer-events:none;
	transition:opacity .6s cubic-bezier(.2,.7,.2,1), transform .6s cubic-bezier(.2,.7,.2,1);
}
.brief-fab.is-show{opacity:1; transform:translateY(0) scale(1); pointer-events:auto}
.brief-fab__blob{
	position:absolute; inset:0;
	background:var(--accent);
	border-radius:62% 38% 56% 44% / 56% 50% 50% 44%;
	animation:fabMorph 9s ease-in-out infinite alternate;
	transition:transform .35s cubic-bezier(.2,.7,.2,1);
}
.brief-fab__blob--2{display:none}
.brief-fab:hover .brief-fab__blob{transform:scale(1.08)}
.brief-fab:hover .brief-fab__blob--2{transform:scale(1.15)}
.brief-fab__icon{
	position:absolute; inset:0; z-index:2;
	display:flex; align-items:center; justify-content:center;
	color:#0a0909;
	pointer-events:none;
}
.brief-fab__icon svg{
	position:absolute; left:50%; top:50%; transform:translate(-50%,-50%);
	width:22px; height:22px;
}
.brief-fab__icon-plus path,
.brief-fab__icon-flame path{
	stroke-dasharray:1;
}
.brief-fab__icon-plus path{
	stroke-dashoffset:0;
	transition:stroke-dashoffset .5s ease-in;
	transition-delay:.5s;
}
.brief-fab__icon-flame path{
	stroke-dashoffset:1;
	transition:stroke-dashoffset .9s ease-out;
	transition-delay:0s;
}
@media (hover: hover) and (pointer: fine){
	.brief-fab:hover .brief-fab__icon-plus path{
		stroke-dashoffset:1;
		transition-delay:0s;
	}
	.brief-fab:hover .brief-fab__icon-flame path{
		stroke-dashoffset:0;
		transition-delay:.5s;
	}
}
.brief-fab__tip{
	position:absolute; right:calc(100% + 14px); top:50%; transform:translateY(-50%) translateX(8px);
	background:rgba(10,9,9,.92); color:var(--fg);
	padding:8px 14px; border-radius:999px;
	font-size:13px; font-weight:500; white-space:nowrap;
	box-shadow:0 8px 24px rgba(0,0,0,.35);
	opacity:0; pointer-events:none;
	transition:opacity .25s ease, transform .35s cubic-bezier(.2,.7,.2,1);
	border:1px solid rgba(221,177,120,.22);
}
.brief-fab__tip::after{display:none}
.brief-fab.is-show .brief-fab__tip{
	opacity:1; transform:translateY(-50%) translateX(0);
	animation:fabTipBounce 2.4s ease-in-out 1s infinite;
}
.brief-fab:hover .brief-fab__tip{animation-play-state:paused}
@keyframes fabMorph{
	0%   { border-radius:62% 38% 56% 44% / 56% 50% 50% 44%; transform:rotate(0deg) }
	33%  { border-radius:38% 62% 44% 56% / 60% 38% 62% 40%; transform:rotate(-8deg) }
	66%  { border-radius:54% 46% 60% 40% / 42% 56% 44% 58%; transform:rotate(6deg) }
	100% { border-radius:48% 52% 38% 62% / 56% 44% 56% 44%; transform:rotate(-3deg) }
}
@keyframes fabTipBounce{
	0%, 100% { transform:translateY(-50%) translateX(0) }
	50%      { transform:translateY(-50%) translateX(-6px) }
}
@media (max-width:560px){
	.brief-fab{right:14px; bottom:49px; width:62px; height:62px}
	.brief-fab__icon svg{width:24px; height:24px}
	.brief-fab__tip{font-size:12px; padding:6px 12px}
}
@media (prefers-reduced-motion: reduce){
	.brief-fab__blob, .brief-fab__blob--2{animation:none}
	.brief-fab.is-show .brief-fab__tip{animation:none}
}
.brief__select{
	appearance:none;-webkit-appearance:none;-moz-appearance:none;
	background:rgba(255,255,255,.04);
	border:1px solid rgba(239,236,231,.16);
	border-radius:10px;
	padding:14px 44px 14px 18px;
	color:var(--fg);font-size:14px;font-family:inherit;
	width:100%;cursor:pointer;
	background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23ddb178' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M4 6l4 4 4-4'/></svg>");
	background-repeat:no-repeat;background-position:right 16px center;background-size:16px;
	transition:border-color .25s ease,background-color .25s ease;
}
.brief__select:focus{outline:none;border-color:var(--accent);background:rgba(255,255,255,.06)}
.brief__select option{background:#13110f;color:var(--fg);padding:8px}
.flatpickr-input.brief__date{background:rgba(255,255,255,.04);border:1px solid rgba(239,236,231,.16);border-radius:10px;padding:14px 18px;color:var(--fg);font-size:14px;width:100%;cursor:pointer;font-family:inherit}
.flatpickr-input.brief__date:focus{outline:none;border-color:var(--accent);background:rgba(255,255,255,.06)}
.flatpickr-calendar{background:#13110f!important;border:1px solid rgba(239,236,231,.14)!important;box-shadow:0 20px 50px -20px rgba(0,0,0,.7)!important;border-radius:12px!important;font-family:inherit!important}
.flatpickr-calendar .flatpickr-month{background:transparent!important;color:var(--fg)!important;fill:var(--fg)!important}
.flatpickr-calendar .flatpickr-current-month{font-size:14px!important;line-height:1!important;padding:7.48px 0 0!important}
.flatpickr-calendar .flatpickr-current-month input,
.flatpickr-calendar .flatpickr-current-month .cur-month,
.flatpickr-calendar .flatpickr-current-month .cur-year,
.flatpickr-calendar .flatpickr-current-month .flatpickr-monthDropdown-months{
	color:var(--fg)!important;
	font-weight:600!important;
	font-size:14px!important;
	font-family:inherit!important;
	letter-spacing:.01em!important;
	background:transparent!important;
}
.flatpickr-calendar .flatpickr-monthDropdown-months{border:0!important}
.flatpickr-calendar .flatpickr-current-month input.cur-year{border:0!important}
.flatpickr-calendar .flatpickr-weekday{color:rgba(239,236,231,.5)!important;font-weight:500!important}
.flatpickr-calendar .flatpickr-day{color:var(--fg)!important;border-radius:6px!important;border:0!important}
.flatpickr-calendar .flatpickr-day.prevMonthDay,
.flatpickr-calendar .flatpickr-day.nextMonthDay{color:rgba(239,236,231,.25)!important}
.flatpickr-calendar .flatpickr-day:hover{background:rgba(221,177,120,.15)!important}
.flatpickr-calendar .flatpickr-day.today{border:1px solid var(--accent)!important;color:var(--accent)!important}
.flatpickr-calendar .flatpickr-day.selected{background:var(--accent)!important;color:#0a0909!important;font-weight:600!important}
.flatpickr-calendar .flatpickr-prev-month,
.flatpickr-calendar .flatpickr-next-month{color:var(--fg)!important;fill:var(--fg)!important}
.flatpickr-calendar .flatpickr-prev-month:hover svg,
.flatpickr-calendar .flatpickr-next-month:hover svg{fill:var(--accent)!important}
.brief__file.is-picked{border-style:solid;border-color:var(--accent);color:var(--fg)}
.brief__file.is-picked .brief__file-name{color:var(--accent)}
.brief-uiselect{position:relative;display:block;width:100%}
.brief-uiselect select.brief__select{position:absolute;inset:0;width:100%;height:100%;opacity:0;pointer-events:none}
.brief-uiselect__btn{
	display:flex;align-items:center;gap:8px;width:100%;
	padding:14px 44px 14px 18px;
	background:rgba(255,255,255,.04);
	border:1px solid rgba(239,236,231,.16);
	border-radius:10px;
	color:var(--fg);font-size:14px;font-family:inherit;
	cursor:pointer;text-align:left;
	background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23ddb178' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M4 6l4 4 4-4'/></svg>");
	background-repeat:no-repeat;background-position:right 16px center;background-size:16px;
	transition:border-color .25s ease,background-color .25s ease;
}
.brief-uiselect.is-open .brief-uiselect__btn,
.brief-uiselect__btn:focus{outline:none;border-color:var(--accent);background-color:rgba(255,255,255,.06)}
.brief-uiselect__btn-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.brief-uiselect__btn-label--empty{color:rgba(239,236,231,.45)}
.brief-uiselect__menu{
	position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:50;
	background:#13110f;border:1px solid rgba(239,236,231,.14);
	border-radius:10px;padding:4px;list-style:none;margin:0;
	max-height:280px;overflow-y:auto;
	box-shadow:0 20px 50px -20px rgba(0,0,0,.7);
	display:none;
}
.brief-uiselect.is-open .brief-uiselect__menu{display:block;animation:uiselectOpen .15s ease}
.brief-uiselect__opt{
	display:flex;align-items:center;gap:8px;
	padding:10px 14px;border-radius:6px;font-size:14px;color:var(--fg);
	cursor:pointer;transition:background .12s
}
.brief-uiselect__opt:hover{background:rgba(221,177,120,.15)}
.brief-uiselect__opt.is-selected{background:rgba(221,177,120,.18);color:var(--accent);font-weight:500}
.brief__file-list{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-direction:column;gap:4px}
.brief__file-list li{
	display:inline-flex;align-items:center;gap:8px;
	padding:6px 10px;
	background:rgba(221,177,120,.08);
	border:1px solid rgba(221,177,120,.25);
	border-radius:8px;
	font-size:12.5px;color:var(--fg);
	max-width:100%;
}
.brief__file-list li svg{width:14px;height:14px;color:var(--accent);flex-shrink:0}
.brief__file-list li .brief__file-list-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}
.brief__file-list li .brief__file-list-size{color:rgba(239,236,231,.5);font-variant-numeric:tabular-nums;font-size:11.5px;flex-shrink:0}
