:root{color-scheme:dark;--bg:#11100f;--paper:#fff6ec;--muted:#bcb0a6;--orange:#ff7b34;--line:#ffffff20;--surface:#1b1816;font-family:Inter,Arial,sans-serif;background:var(--bg);color:var(--paper)}
*,*::before,*::after{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}img{display:block;max-width:100%}[hidden]{display:none!important}::selection{background:var(--orange);color:#1a0c05}:focus-visible{outline:2px solid var(--orange);outline-offset:5px}.skip{position:fixed;left:1rem;top:1rem;transform:translateY(-200%);z-index:10;background:#111;padding:12px}.skip:focus{transform:none}
.shell,.header-inner{width:min(1320px,calc(100% - 112px));margin-inline:auto}.header{position:relative;z-index:3;border-bottom:1px solid var(--line);background:#11100fee}.header-inner{display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:81px}.brand{display:inline-flex;align-items:center;flex:none}.brand img{width:121px;height:auto}.footer .brand img{width:105px}.header nav{display:flex;gap:clamp(16px,2.7vw,42px);align-self:stretch;align-items:center}.header nav a{display:grid;align-items:center;height:100%;position:relative;color:var(--muted);font-size:14px;white-space:nowrap}.header nav a:hover,.header nav [aria-current]{color:var(--paper)}.header nav [aria-current]::after{position:absolute;bottom:-1px;inset-inline:0;height:2px;background:var(--orange);content:''}.menu{display:none}
.button{min-height:50px;padding:0 20px;border-radius:6px;display:inline-flex;justify-content:center;align-items:center;gap:22px;font-size:14px;font-weight:700;border:1px solid transparent;transition:background .2s,border-color .2s,transform .2s;color:var(--paper)}.button span{font-size:19px;line-height:1}.button:hover{transform:translateY(-2px)}.primary{background:var(--orange);color:#201008}.primary:hover{background:#ff9b58}.secondary{border-color:#ffffff37;background:#ffffff05}.secondary:hover{border-color:var(--orange);background:#ff7b3410}.header .button{min-height:42px}
.hero{position:relative;isolation:isolate;display:flex;align-items:center;min-height:clamp(490px,42vw,640px);border-bottom:1px solid var(--line)}.hero-copy{position:relative;z-index:1;padding:55px 0 65px;width:58%;pointer-events:none}.hero-copy .actions{pointer-events:auto}.hero h1,.page-intro h1{font-size:clamp(65px,8.5vw,136px);line-height:.91;letter-spacing:-.092em;margin:25px 0 25px;font-weight:800}.hero h1 em,.page-intro em{font-style:normal;color:var(--orange);background:linear-gradient(105deg,#ffad60,#ff762e 54%,#fa4f25);background-clip:text;-webkit-text-fill-color:transparent}.hero p,.page-intro p{font-size:clamp(17px,1.6vw,22px);line-height:1.52;color:var(--muted);max-width:475px;margin:0 0 28px}.eyebrow{color:#ff9c60;font:700 11px/1.5 'IBM Plex Mono',ui-monospace,monospace;letter-spacing:.13em;display:flex;gap:10px;align-items:center}.eyebrow b{width:7px;height:7px;display:inline-block;background:var(--orange);box-shadow:0 0 14px #ff762e80;border-radius:50%;flex:none}.actions{display:flex;gap:11px;flex-wrap:wrap}
.hero-art{position:absolute;inset:15px -20px 15px 38%;overflow:hidden;background:radial-gradient(ellipse at 53% 54%,#78301478 0,transparent 64%)}.hero-art canvas{position:absolute;width:100%;height:100%;inset:0;display:block}.grid{position:absolute;inset:1%;opacity:.38;background-image:linear-gradient(#da9b6930 1px,transparent 1px),linear-gradient(90deg,#da9b6930 1px,transparent 1px);background-size:54px 54px;mask-image:radial-gradient(ellipse,#000 14%,transparent 73%)}.orbit{position:absolute;inset:18% 9%;border:1px solid #ffb37d36;border-radius:50%;transform:rotate(-25deg)}.orbit::after{content:'';position:absolute;inset:14% -7%;border:1px solid #ffb37d1d;border-radius:50%}.cross{position:absolute;color:#ffba8c80;font:20px monospace}.cross-top{top:17%;right:16%}.cross-bottom{bottom:17%;left:14%}.art-fallback{position:absolute;inset:16% 17%;border-radius:50%;background:conic-gradient(from 40deg,#a12f0d,#ff954a,#fff1cd,#ad2f07,#fb6825,#431407,#ff9b54,#a12f0d);mask-image:radial-gradient(ellipse,transparent 35%,#000 36%,#000 68%,transparent 69%);transform:rotate(-27deg);filter:drop-shadow(0 0 20px #ff6f38)}.is-rendering .art-fallback{display:none}
.facts{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line)}.facts div{padding:22px 25px 25px;border-right:1px solid var(--line);display:grid;gap:7px}.facts div:first-child{padding-left:0}.facts div:last-child{border-right:0}.facts strong{font-size:clamp(25px,3vw,45px);letter-spacing:-.055em}.facts span{font-size:13px;color:var(--muted)}
.section{padding-top:73px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}.section h2,.cta h2,.panel h2{font-size:clamp(29px,4vw,60px);line-height:1;letter-spacing:-.065em;margin:13px 0 0}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.case{min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:10px;overflow:hidden}.case-button{display:block;text-align:left;width:100%;height:100%;border:0;padding:0;background:none;color:inherit}.case-button:focus-visible{outline-offset:-4px}.case img{width:100%;aspect-ratio:1.58;object-fit:cover;transition:filter .3s;filter:saturate(.75)}.case:hover img{filter:saturate(1.12)}.case-info{display:grid;grid-template-columns:1fr auto;gap:8px;padding:18px}.case-info small{grid-column:1/-1;color:#ff9c60}.case-info strong{font-size:clamp(18px,2vw,27px);letter-spacing:-.04em}.case-info>span{color:var(--orange)}
.cta{display:flex;align-items:center;justify-content:space-between;gap:24px;background:radial-gradient(ellipse at 95% 40%,#702d14,transparent 75%),var(--surface);border:1px solid var(--line);border-radius:12px;padding:36px;margin-top:70px}.footer{margin-top:70px;border-top:1px solid var(--line);padding:25px 0 35px;display:flex;gap:22px;justify-content:space-between;align-items:center;color:var(--muted);font-size:13px}.footer .brand{color:var(--paper)}
.page-intro{padding:85px 0 40px;position:relative}.page-intro h1{font-size:clamp(45px,7.5vw,110px);line-height:.98;letter-spacing:-.075em;max-width:1050px}.page-intro p{max-width:615px;margin:0}.service-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:grid;align-items:center;grid-template-columns:65px 1fr 22px;gap:16px;padding:22px 0}summary::-webkit-details-marker{display:none}summary:hover strong{color:var(--orange)}summary .index{color:var(--orange);font-family:ui-monospace,monospace}summary strong{font-size:clamp(21px,3vw,39px);letter-spacing:-.05em;display:block}summary small{display:block;color:var(--muted);margin-top:4px}summary i::after{content:'+';font:24px monospace;color:var(--orange)}details[open] summary i::after{content:'−'}.service-body{padding:0 0 18px 81px;color:var(--muted);line-height:1.6}.service-body p{margin:0 0 6px}
.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.filters button{border:1px solid var(--line);border-radius:40px;padding:9px 16px;color:var(--paper);background:var(--surface);font-size:14px}.filters button[aria-pressed=true]{background:var(--orange);color:#211007;border-color:var(--orange)}
.about-grid,.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:30px}.panel h2{font-size:clamp(25px,3.4vw,46px);margin-bottom:18px}.panel p,.panel small{color:var(--muted);line-height:1.55}.panel.warm{background:radial-gradient(ellipse at top right,#70301b,transparent 85%),var(--surface)}.steps{display:grid;grid-template-columns:repeat(5,1fr);padding:0;list-style:none;counter-reset:steps;margin:27px 0 0}.steps li{counter-increment:steps;border-top:1px solid var(--line);position:relative;padding:19px 10px 0 0;color:var(--paper)}.steps li::before{content:counter(steps,decimal-leading-zero);display:block;color:var(--orange);font:14px monospace;margin-bottom:9px}.steps li::after{content:'';width:7px;height:7px;background:var(--orange);border-radius:50%;position:absolute;top:-4px;left:0}
.contact-link{display:block;width:fit-content;margin-bottom:12px;color:#ffad7e}.contact-link:hover{text-decoration:underline}form label{display:grid;gap:7px;margin:14px 0;color:var(--muted);font-size:14px}input,textarea{border:1px solid var(--line);border-radius:6px;background:#11100f;color:var(--paper);padding:11px 12px;width:100%}textarea{resize:vertical}.form-note{font-size:13px}
dialog{color:var(--paper);background:var(--surface);width:min(680px,calc(100% - 32px));border:1px solid #ffffff40;border-radius:12px;padding:0;overflow:auto;max-height:90vh}dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}dialog img{width:100%;max-height:52vh;object-fit:contain;background:#100f0e}dialog>div{padding:25px}dialog h2{font-size:34px;margin:8px 0}dialog p{color:var(--muted);line-height:1.55}.close{position:absolute;top:10px;right:10px;width:42px;height:42px;background:#16120e;border:1px solid #ffffff40;color:var(--paper);border-radius:50%;font-size:24px}
@keyframes enter{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}.hero-copy,.page-intro{animation:enter .48s ease-out}dialog[open]{animation:enter .2s ease-out}
@media(max-width:1000px){.shell,.header-inner{width:calc(100% - 60px)}.hero-art{left:35%}}
@media(max-width:760px){.shell,.header-inner{width:calc(100% - 36px)}.header-inner{min-height:64px}.header .button{display:none}.menu{display:flex;align-items:center;gap:8px;background:none;color:var(--paper);border:1px solid var(--line);border-radius:6px;padding:7px 10px}.header nav{display:none;position:absolute;top:100%;inset-inline:0;background:var(--surface);padding:8px 18px;border-bottom:1px solid var(--line)}.header nav.open{display:grid;gap:0}.header nav a{padding:12px 0}.header nav [aria-current]::after{width:25px}.hero{flex-direction:column;align-items:stretch;min-height:0}.hero-copy{width:100%;padding:35px 0 22px}.hero h1{font-size:clamp(58px,13vw,92px)}.hero p{max-width:390px}.hero-art{position:relative;inset:auto;order:1;height:clamp(225px,58vw,365px);margin-top:-10px}.facts div{padding:14px 10px}.facts strong{font-size:clamp(18px,5vw,32px)}.facts span{font-size:11px}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.case-info{padding:12px}.section{padding-top:50px}.section-head{align-items:start;flex-direction:column}.cta{margin-top:48px;padding:24px;align-items:start;flex-direction:column}.footer{margin-top:48px;flex-wrap:wrap}.footer>span{order:1;width:100%}.page-intro{padding:51px 0 32px}.about-grid,.contact-grid{grid-template-columns:1fr}.panel{padding:22px}.steps{grid-template-columns:1fr;gap:12px}.steps li{display:flex;gap:12px;padding-top:12px}.steps li::after{display:none}summary{grid-template-columns:33px 1fr 22px;gap:9px}.service-body{padding-left:42px}}
@media(max-width:380px){.cards{grid-template-columns:1fr}.button{padding-inline:12px;gap:10px}.facts strong{font-size:17px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
@media(max-width:760px){.hero .button{padding-inline:12px;gap:11px}.hero h1{margin:19px 0}.hero p{margin-bottom:21px}.hero-copy{padding-top:29px}}

.hero-scene{position:relative}
.hero{border-bottom:0}
.facts{border-top:1px solid var(--line)}
.facts a:hover{color:var(--orange)}
.geo,.home-directions{margin-top:clamp(52px,8vw,112px);scroll-margin-top:20px}
.geo{display:grid;grid-template-columns:minmax(265px,.75fr) minmax(0,1.45fr);align-items:center;gap:35px;padding:clamp(24px,4vw,59px);border:1px solid var(--line);background:#171411;min-height:450px}
.geo h2,.home-directions h2{margin:15px 0;font-size:clamp(35px,5vw,76px);line-height:.98;letter-spacing:-.07em}
.geo-copy>p{color:var(--muted);line-height:1.5}
.geo-cities{display:flex;flex-wrap:wrap;gap:7px;margin-top:23px}
.geo-cities button{color:var(--muted);background:transparent;border:1px solid #ffffff31;border-radius:3px;padding:7px 9px;font-size:13px}
.geo-cities button:hover{border-color:var(--orange);color:var(--paper)}
.geo-cities button[aria-pressed=true]{border-color:var(--orange);color:var(--orange);background:#ff7b3417}
.geo-detail{min-height:4.5em;font-size:14px;margin:18px 0 0}
.geo-art{position:relative;isolation:isolate;display:grid;align-items:center;min-width:0;min-height:260px;overflow:hidden;background:radial-gradient(ellipse,#632c1770 5%,transparent 70%)}
.geo-grid{position:absolute;inset:0;background:linear-gradient(#d8814f30 1px,transparent 1px),linear-gradient(90deg,#d8814f30 1px,transparent 1px);background-size:34px 34px;mask-image:radial-gradient(ellipse,#000 30%,transparent 72%)}
.geo-map{position:relative;aspect-ratio:1362 / 776;margin:6% 2%;transform:translateY(calc((1 - var(--geo-progress,1))*19px)) scale(calc(.91 + var(--geo-progress,1)*.09))}
.geo-shape{position:absolute;inset:0;background:linear-gradient(155deg,#f58f4b,#9e4025 35%,#54271d 76%,#c56d3d);mask:url('/assets/kazakhstan.png') center/100% 100% no-repeat}
.geo-glow{background:linear-gradient(114deg,transparent 29%,#ffb47d75 48%,transparent 67%);background-size:210% 100%;background-position:calc(100% - var(--geo-progress,1)*100%) 0}
.geo-pin{position:absolute;left:var(--x);top:var(--y);width:9px;height:9px;border-radius:50%;background:#ffcf9b;border:1px solid #4a1c0e;transform:translate(-50%,-50%) scale(clamp(.25,calc(var(--geo-progress,1)*2.4 - var(--order)*.16),1));opacity:clamp(.28,calc(var(--geo-progress,1)*2.2 - var(--order)*.15),1)}
.geo-pin.active{background:#fff5e3;box-shadow:0 0 0 5px #ffb27162,0 0 18px 4px #ff7b34}
.home-directions{border-block:1px solid var(--line);display:grid;grid-template-columns:.8fr 1.2fr;gap:30px;padding:32px 0}
.direction-links{display:grid}
.direction-links a{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line);font-size:clamp(17px,2vw,26px);letter-spacing:-.025em}
.direction-links a:last-child{border-bottom:0}
.direction-links a span,.direction-links a:hover{color:var(--orange)}
.service-list details{scroll-margin-top:20px}
.venues{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);padding:0;margin:25px 0 0;gap:1px;background:var(--line);border:1px solid var(--line)}
.venues li{padding:20px;background:var(--bg);display:grid;gap:7px}
.venues span{color:var(--muted);font-size:14px;line-height:1.4}
@media(min-width:761px) and (prefers-reduced-motion:no-preference){
  .hero-scene{padding-bottom:clamp(88px,16vh,180px)}
  .hero-scene .hero{position:sticky;top:0}
}
@media(max-width:760px){
  .brand img{width:105px}
  .geo,.home-directions{grid-template-columns:1fr;gap:10px}
  .geo-art{min-height:0}
  .geo-detail{min-height:0}
  .venues{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:390px){.venues{grid-template-columns:1fr}}

.depth-scene{
  --progress:1;
  position:relative;
  display:grid;
  place-items:center;
  min-width:0;
  overflow:hidden;
  isolation:isolate;
  perspective:850px;
  background:radial-gradient(ellipse at center,#6c301b60,transparent 67%);
}
.depth-grid{
  position:absolute;
  inset:0;
  background:linear-gradient(#dc8d5226 1px,transparent 1px),linear-gradient(90deg,#dc8d5226 1px,transparent 1px);
  background-size:32px 32px;
  mask-image:radial-gradient(ellipse,#000 15%,transparent 71%);
}
.depth-stage{
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  transform-style:preserve-3d;
}
.depth-stage i{position:absolute;display:block;backface-visibility:hidden}
.depth-studio{height:220px;margin:3px 0 -14px}
.depth-studio .depth-stage{
  transform:rotateX(calc(72deg - var(--progress)*39deg)) rotateY(calc(-36deg + var(--progress)*26deg)) rotateZ(calc(-36deg + var(--progress)*62deg));
}
.depth-ring{
  width:clamp(100px,16vw,205px);
  aspect-ratio:1;
  border:2px solid transparent;
  border-radius:23%;
  background:linear-gradient(#31180e32,#ff9c3919) padding-box,conic-gradient(from var(--angle),#712c16,#e66432,#ffcf99,#5d210b,#ff8c48,#712c16) border-box;
  box-shadow:0 0 13px #ff672d35,inset 0 0 15px #f97a3c32;
  transform:translateZ(calc((var(--layer) - 3)*var(--progress)*23px)) rotateZ(calc(var(--angle)*var(--progress))) scale(calc(.72 + var(--layer)*.045));
  opacity:calc(.35 + var(--progress)*.58);
}
.depth-core{
  width:47px;
  aspect-ratio:1;
  border-radius:50%;
  background:radial-gradient(circle at 31% 28%,#fff1d4 0,#ffb87b 12%,#ed6a32 34%,#8e2d13 63%,#260d06 79%);
  box-shadow:0 0 25px #ff7b3470;
  transform:translateZ(calc(var(--progress)*65px));
}
.home-directions .direction-links{align-content:center}
.case-transition{margin:-18px 0 23px;border-block:1px solid var(--line)}
.depth-portfolio{height:clamp(175px,23vw,315px)}
.depth-portfolio .depth-stage{
  transform:translateY(calc(35px - var(--progress)*35px)) rotateX(calc(52deg - var(--progress)*44deg)) rotateY(calc(-33deg + var(--progress)*33deg));
}
.depth-photo{
  width:clamp(92px,20vw,240px);
  aspect-ratio:1.56;
  border:1px solid #ffa8779b;
  border-radius:8px;
  background:linear-gradient(150deg,#ffae5352,transparent 48%,#1b0b03a3),var(--photo) center/cover;
  box-shadow:0 12px 40px #060301b0,0 0 26px #db5d2d32;
  transform:translate3d(calc((var(--layer) - 1)*var(--progress)*clamp(94px,19vw,230px)),calc((var(--layer) - 1)*var(--progress)*-7px),calc(var(--layer)*30px - var(--progress)*var(--layer)*13px)) rotateY(calc((var(--layer) - 1)*var(--progress)*-17deg)) rotateZ(calc((var(--layer) - 1)*var(--progress)*8deg));
  opacity:calc(.3 + var(--progress)*.7);
}
@media(max-width:760px){
  .depth-studio{height:166px;margin:-7px 0 3px}
  .case-transition{margin-top:-6px}
}
.depth-ring{
  border:0;
  padding:4px;
  background:conic-gradient(from var(--angle),#712c16,#e66432,#ffcf99,#5d210b,#ff8c48,#712c16);
  mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  mask-composite:exclude;
}
