/*! © 2026 STUDIO KIRILOV EOOD. Intellectual property of the studio. All rights reserved. */
@font-face{font-family:"Source Serif 4";src:url("fonts/source-serif-4.woff2?v=d4d228354d1bc9e2") format("woff2");font-weight:400;font-style:normal;font-display:swap;}
@font-face{font-family:"Source Sans 3";src:url("fonts/source-sans-3.woff2?v=fb665656231056fd") format("woff2");font-weight:300;font-style:normal;font-display:swap;}
@font-face{font-family:"Serif stand-in";src:local("Georgia"),local("Times New Roman");
  size-adjust:96.5%;ascent-override:104%;descent-override:29%;line-gap-override:0%;}
@font-face{font-family:"Sans stand-in";src:local("Segoe UI"),local("Arial"),local("Helvetica Neue");
  size-adjust:99.5%;ascent-override:104%;descent-override:29%;line-gap-override:0%;}

:root,:root[data-theme="light"]{
  --ivory:#f7f5f0;--ink:#15171c;--soft:#5b574f;--gold:#7a5a1c;
  --ink-rgb:21,23,28;--gold-rgb:122,90,28;--ivory-rgb:247,245,240;
  --serif:"Source Serif 4","Serif stand-in",Georgia,serif;
  --sans:"Source Sans 3","Sans stand-in","Segoe UI",system-ui,sans-serif;
  --ease:cubic-bezier(.16,1,.3,1);
  --rail:var(--ink);
  --aura-a:.10;--shade:rgba(21,23,28,.05);
  --seal-glow:none;
  color-scheme:light;
}
:root[data-theme="dark"]{
  --ivory:#14151a;--ink:#ece9e3;--soft:#a19b91;--gold:#e6cb9f;
  --ink-rgb:236,233,227;--gold-rgb:230,203,159;--ivory-rgb:20,21,26;
  --rail:var(--gold);
  --aura-a:.09;--shade:rgba(0,0,0,.42);
  --seal-glow:drop-shadow(0 0 26px rgba(230,203,159,.22));
  color-scheme:dark;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme]){
    --ivory:#14151a;--ink:#ece9e3;--soft:#a19b91;--gold:#e6cb9f;
    --ink-rgb:236,233,227;--gold-rgb:230,203,159;--ivory-rgb:20,21,26;
    --rail:var(--gold);--aura-a:.09;--shade:rgba(0,0,0,.42);
    --seal-glow:drop-shadow(0 0 26px rgba(230,203,159,.22));
    color-scheme:dark;
  }
}

.aura{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;}
.aura span{position:absolute;display:block;border-radius:50%;will-change:transform;transform:translate3d(0,0,0);}
.a1{width:92vmax;height:92vmax;left:-26vmax;top:-34vmax;
  background:radial-gradient(closest-side,rgba(var(--gold-rgb),var(--aura-a)),rgba(var(--gold-rgb),0) 72%);}
.a2{width:78vmax;height:78vmax;right:-24vmax;bottom:-30vmax;
  background:radial-gradient(closest-side,rgba(var(--gold-rgb),calc(var(--aura-a) * .8)),rgba(var(--gold-rgb),0) 70%);}
.a3{width:56vmax;height:56vmax;left:0;top:0;opacity:0;
  background:radial-gradient(closest-side,rgba(var(--gold-rgb),calc(var(--aura-a) * .85)),rgba(var(--gold-rgb),0) 68%);
  transition:transform 1.1s cubic-bezier(.22,1,.36,1),opacity .8s ease-out;}
:root[data-theme="dark"] .a2{background:radial-gradient(closest-side,rgba(120,150,210,.07),rgba(120,150,210,0) 70%);}
@media (prefers-color-scheme: dark){
  :root:not([data-theme]) .a2{background:radial-gradient(closest-side,rgba(120,150,210,.07),rgba(120,150,210,0) 70%);}
}
@media (hover: none), (pointer: coarse){ .a3{display:none;} }
@media (prefers-reduced-motion: no-preference){
  .a1{animation:driftA 74s cubic-bezier(.45,0,.55,1) infinite;}
  .a2{animation:driftB 92s cubic-bezier(.45,0,.55,1) infinite;}
}
@keyframes driftA{0%,100%{transform:translate3d(0,0,0) scale(1);}50%{transform:translate3d(6vmax,4vmax,0) scale(1.1);}}
@keyframes driftB{0%,100%{transform:translate3d(0,0,0) scale(1.06);}50%{transform:translate3d(-5vmax,-5vmax,0) scale(1);}}
.vignette{position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(120% 95% at 50% 45%,transparent 50%,var(--shade) 100%);}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{overflow-x:clip;}
body{
  min-height:100vh;min-height:100svh;
  display:flex;flex-direction:column;align-items:center;
  text-align:center;padding:clamp(2.2rem,5.5vh,3.6rem) clamp(1.25rem,5vw,3rem) clamp(1.4rem,2.4vh,2.2rem);
  background:var(--ivory);color:var(--ink);
  font:300 1.0625rem/1.75 var(--sans);
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-synthesis:none;
  overflow-x:clip;
}

body:not(:has(.maker)){justify-content:center;}
a:focus-visible,button:focus-visible{outline:1px solid var(--rail);outline-offset:4px;}
::selection{background:rgba(var(--gold-rgb),.24);}
main{display:contents;}
main:focus{outline:none;}

.skip{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
.skip:focus-visible{position:fixed;left:.75rem;top:.75rem;z-index:20;
  display:flex;align-items:center;width:auto;height:auto;min-height:44px;overflow:visible;clip-path:none;
  padding:0 1.1rem;background:var(--ivory);color:var(--ink);border:1px solid rgba(var(--gold-rgb),.55);
  font:300 .95rem/1 var(--sans);letter-spacing:.02em;text-decoration:none;}

.seal{display:block;width:var(--seal,clamp(184px,29vh,288px));height:var(--seal,clamp(184px,29vh,288px));
  color:var(--gold);overflow:visible;filter:var(--seal-glow);}
.seal .ring{fill:none;stroke:currentColor;stroke-width:1.7;}
.seal .letter{fill:currentColor;stroke:currentColor;stroke-width:.32;stroke-linejoin:round;}

.wordmark{
  margin-top:clamp(1.6rem,3.2vh,2.5rem);
  font-family:var(--serif);font-weight:400;line-height:1;
  font-size:min(clamp(1.95rem,5.2vw,3.5rem),calc((100vw - 3rem) / 9.4));
  letter-spacing:.3em;padding-left:.3em;color:var(--ink);white-space:nowrap;
}
.creed{
  margin-top:clamp(1.3rem,2.8vh,2.1rem);
  font-family:var(--serif);font-weight:400;
  font-size:clamp(1.15rem,2vw,1.6rem);line-height:1.5;color:var(--ink);
  max-width:22em;text-wrap:balance;
}

.rule{width:1px;height:clamp(1.9rem,3.2vh,2.8rem);margin:clamp(1.6rem,3.4vh,2.6rem) auto 0;
  background:linear-gradient(to bottom,rgba(var(--gold-rgb),0),rgba(var(--gold-rgb),.85));}

.line{margin-top:clamp(1.4rem,2.6vh,2rem);
  font-size:clamp(.98rem,1.4vw,1.1rem);line-height:1.85;color:var(--soft);max-width:28em;text-wrap:balance;}

.mail{position:relative;display:inline-block;margin-top:clamp(1.2rem,2.4vh,1.9rem);
  font-family:var(--serif);font-weight:400;font-size:clamp(1.15rem,2vw,1.5rem);line-height:1.4;
  color:var(--ink);text-decoration:none;padding-bottom:.22em;overflow-wrap:anywhere;}
.mail::before,.mail::after{content:"";position:absolute;left:0;right:0;bottom:.06em;height:1px;}
.mail::before{background:rgba(var(--ink-rgb),.22);}
.mail::after{background:var(--gold);transform:scaleX(0);transform-origin:left center;transition:transform .45s var(--ease);}
.mail:hover::after,.mail:focus-visible::after{transform:scaleX(1);}

.maker{display:flex;flex-direction:column;align-items:center;gap:.8rem;margin-top:auto;
  padding-top:clamp(2rem,4vh,3.2rem);color:var(--soft);text-decoration:none;}
.maker-ey{font:300 .68rem/1.6 var(--sans);letter-spacing:.24em;padding-left:.24em;text-transform:uppercase;}
.maker-lk{display:block;height:24px;width:auto;aspect-ratio:4959/580;opacity:.86;transition:opacity .45s ease-out;
  content:url("brand/lockup-small-ink.svg?v=298e8aa9daf31a7d");}
:root[data-theme="dark"] .maker-lk{content:url("brand/lockup-small-ivory.svg?v=6fb27aa778287830");}
@media (prefers-color-scheme: dark){
  :root:not([data-theme]) .maker-lk{content:url("brand/lockup-small-ivory.svg?v=6fb27aa778287830");}
}
.maker:hover .maker-lk,.maker:focus-visible .maker-lk{opacity:1;}
.maker:focus-visible{outline:1px solid var(--rail);outline-offset:8px;}

.colophon{margin-top:clamp(1rem,2vh,1.4rem);font:300 .78rem/1.8 var(--sans);letter-spacing:.04em;color:var(--soft);}

.corner{position:fixed;top:clamp(1rem,2.4vh,1.7rem);right:clamp(1rem,3vw,2.4rem);z-index:5;
  display:flex;align-items:center;gap:clamp(.8rem,1.5vw,1.2rem);}
.lang{position:relative;display:inline-flex;align-items:center;justify-content:center;
  min-height:44px;min-width:44px;
  font:300 .68rem/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;
  color:var(--soft);text-decoration:none;padding:0 .5em;white-space:nowrap;}
.lang::after{content:"";position:absolute;left:.5em;right:.3em;bottom:.7rem;height:1px;background:var(--rail);
  transform:scaleX(0);transform-origin:left center;transition:transform .4s var(--ease);}
.lang:hover{color:var(--ink);}
.lang:hover::after,.lang:focus-visible::after{transform:scaleX(1);}
.sep{width:1px;height:1.1em;background:rgba(var(--ink-rgb),.25);flex:none;}
.mode{position:relative;display:inline-flex;align-items:center;justify-content:center;
  width:44px;height:44px;flex:none;padding:0;border:0;background:none;color:var(--soft);
  cursor:pointer;-webkit-appearance:none;appearance:none;}
.mode::after{content:"";position:absolute;left:12px;right:12px;bottom:8px;height:1px;background:var(--rail);
  transform:scaleX(0);transform-origin:left center;transition:transform .4s var(--ease);pointer-events:none;}
.mode:hover{color:var(--ink);}
.mode:hover::after,.mode:focus-visible::after{transform:scaleX(1);}
.mi{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  opacity:0;transform:scale(.55) rotate(-40deg);pointer-events:none;
  transition:opacity .3s ease-out,transform .55s var(--ease);}
.mi svg{width:16px;height:16px;display:block;}
.mi-auto{font:400 1.1rem/1 var(--serif);transform:scale(.55);padding-bottom:.08em;}
.mi-moon{transform:scale(.55) rotate(40deg);}
html[data-mode="auto"] .mi-auto,html[data-mode="light"] .mi-sun,html[data-mode="dark"] .mi-moon{opacity:1;transform:none;}
html:not(.js) .corner .mode,html:not(.js) .corner .sep{display:none;}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}

::view-transition-old(root),::view-transition-new(root){animation:none;mix-blend-mode:normal;}
html.ambient::view-transition-new(root){animation:vtfade 1.3s ease both;}
@keyframes vtfade{from{opacity:0;}}
.rim{position:fixed;left:0;top:0;z-index:9;width:24px;height:24px;margin:-12px 0 0 -12px;
  border:1px solid rgba(var(--gold-rgb),.55);border-radius:50%;opacity:0;pointer-events:none;view-transition-name:rim;}
::view-transition-group(rim),::view-transition-old(rim),::view-transition-new(rim){animation:none;}

@media (prefers-reduced-motion: no-preference){
  html.js .seal .ring{stroke-dasharray:54.98;stroke-dashoffset:54.98;transform:rotate(-90deg);transform-origin:12px 12px;
    animation:close 1s var(--ease) .1s forwards;}
  html.js .seal .letter{opacity:0;transform:scale(.9);transform-origin:12px 12px;
    animation:press .6s var(--ease) .82s forwards;}

  html.js .creed{opacity:0;animation:fadeup .85s var(--ease) .82s forwards;}
  html.js .rule{transform:scaleY(0);transform-origin:top center;animation:draw .8s var(--ease) 1s forwards;}
  html.js .line{opacity:0;animation:fadeup .8s var(--ease) 1.16s forwards;}
  html.js .mail{opacity:0;animation:fadeup .8s var(--ease) 1.28s forwards;}
  html.js .maker,html.js .colophon{opacity:0;animation:fadeup .8s var(--ease) 1.4s forwards;}
  html.js .corner{opacity:0;animation:fadein .9s ease-out 1.52s forwards;}
  html.js .corner:focus-within,html.js .maker:focus-visible,html.js .mail:focus-visible,
  html.js :focus-visible{opacity:1;transform:none;animation:none;}
}
@keyframes close{to{stroke-dashoffset:0;}}
@keyframes draw{to{transform:scaleY(1);}}
@keyframes press{from{opacity:0;transform:scale(.9);}60%{opacity:1;}to{opacity:1;transform:scale(1);}}
@keyframes fadeup{from{opacity:0;transform:translateY(.28em);}to{opacity:1;transform:none;}}
@keyframes fadein{from{opacity:0;}to{opacity:1;}}

@media (max-width: 899px){
  .seal{--seal:clamp(160px,26vh,232px);}
}
@media (max-width: 560px){
  .corner{right:.5rem;gap:.2rem;}
  .wordmark{letter-spacing:.24em;padding-left:.24em;}
}

@media (prefers-reduced-motion: reduce){
  html.js .seal .ring{stroke-dasharray:none;stroke-dashoffset:0;transform:none;animation:none;}
  html.js .seal .letter{opacity:1;transform:none;animation:none;}
  html.js .rule{transform:none;animation:none;}
  html.js .creed,html.js .line,html.js .mail,
  html.js .maker,html.js .colophon,html.js .corner{opacity:1;transform:none;animation:none;}
  .mail::after,.lang::after,.mode::after,.mi,.maker-lk{transition:none;}
}

@media (forced-colors: active){
  .aura,.vignette,.rim{display:none;}
  .sep,.rule{background:CanvasText;}
  .seal{filter:none;}
  .seal .ring{stroke:CanvasText;}
  .seal .letter{fill:CanvasText;stroke:CanvasText;}
}

@media print{
  .aura,.vignette,.corner,.rim,.skip{display:none;}
  body{background:#fff;color:#000;min-height:0;}
  .seal{color:#000;filter:none;}
  .wordmark,.creed,.mail{color:#000;}
  .rule{background:#000;}
  .line,.maker,.colophon{color:#333;}
  .maker-lk{content:url("brand/lockup-small-ink.svg?v=298e8aa9daf31a7d");}
}
