@font-face{font-family:Inter;src:url('/assets/Inter-v3.19.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:block}
:root{color-scheme:dark;--s:1;--card:#1b1b1b;--muted:rgba(255,255,255,.6)}
*{box-sizing:border-box}html,body{margin:0;background:#000;color:#fff;font-family:Inter,Arial,sans-serif;font-weight:500}body{scrollbar-width:none}body::-webkit-scrollbar{display:none}p,h1{margin:0;font-weight:500}a{color:inherit;text-decoration:none}button,input{font:inherit}button{color:inherit;cursor:pointer}img{display:block}button:focus-visible,a:focus-visible{outline:2px solid #fff;outline-offset:5px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;clip-path:inset(50%);overflow:hidden}
.login{height:100svh;min-height:640px;position:relative}.login-content{position:absolute;left:calc(50% + .5px);top:calc(50% - .46px);transform:translate(-50%,-50%);width:305px;display:flex;flex-direction:column;align-items:center;gap:64px}.identity{display:flex;flex-direction:column;align-items:center;gap:39px;width:100%}.identity h1{font-size:24px;line-height:29px;text-align:center;white-space:nowrap}.portraits{width:292.921px;height:136.09px;position:relative}.portrait-position{position:absolute;display:flex;justify-content:center;align-items:center}.portrait{position:relative;width:105.142px;height:105.142px;border:3px solid #fff;border-radius:12.866px;box-shadow:0 2.126px 22.593px #000;overflow:hidden}.portrait img{position:absolute}.third{left:179.83px;top:16.65px;width:113.088px;height:113.088px}.third .portrait{transform:rotate(4.51deg)}.third img{height:100%;width:99.77%;left:.12%;top:0}.second{left:91.84px;top:0;width:118.752px;height:118.752px}.second .portrait{transform:rotate(-8deg)}.second img{height:290.71%;width:193.73%;left:-50.37%;top:-17.05%}.first{left:0;top:10.37px;width:125.722px;height:125.722px}.first .portrait{transform:rotate(12.73deg)}.first img{width:100%;height:100%;object-fit:cover}.divider{width:211px;height:1px;margin:-.5px 0}.password-form{display:flex;flex-direction:column;gap:24px;align-items:center;width:100%}.password-control{position:relative;width:234px;height:54px}.password-boxes{display:flex;gap:6px}.password-boxes span{display:grid;place-items:center;width:54px;height:54px;background:var(--card);border-radius:12px;font-size:44px;line-height:54px}.password-control input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:text;border:0}.password-control input:focus{outline:none}.password-form p{color:var(--muted);text-align:center;font-size:18px;line-height:22px;min-height:58px;width:305px}.contact{display:flex;align-items:flex-end;gap:4px;font-size:18px;line-height:22px}.contact img{width:24px;height:24px}.login-contact{position:absolute;left:calc(50% + .5px);bottom:20px;transform:translateX(-50%)}
.intro{position:fixed;left:calc(20px * var(--s));top:calc(20px * var(--s));width:481px;transform:scale(var(--s));transform-origin:top left;z-index:2}.intro{--compact-size:24px}
.intro .eyebrow{font-size:18px;line-height:22px;color:rgba(255,255,255,.5);margin-bottom:8px}.intro .bio{font-size:inherit;line-height:1.21875;white-space:pre-wrap}.brand-row{position:absolute;display:flex;isolation:isolate;align-items:center;top:3.78125em;left:5.65625em}.brand-row.businesses{top:5em;left:9.5625em}.brand{width:32px;height:32px;border:4px solid #000;border-radius:44px;background:#fff;position:relative;overflow:hidden;margin-right:-6px;flex:none}.brand:nth-child(1){z-index:5}.brand:nth-child(2){z-index:4}.brand:nth-child(3){z-index:3}.brand:nth-child(4){z-index:2}.brand:nth-child(5){z-index:1}.brand img{position:absolute;width:32px;height:32px;left:50%;top:50%;transform:translate(-50%,-50%);object-fit:cover}.brand .yandex{width:38.46px;height:38.64px}.brand .sber{width:30px;height:30px}.brand .dots-clip{position:absolute;width:24px;height:22px;left:50%;top:50%;transform:translate(-50%,-50%);overflow:hidden}.brand .dots-clip img{width:352.36%;height:100%;top:0;left:0;transform:none;max-width:none}
.cards{width:calc(800px * var(--s));margin-left:auto;margin-right:calc(20px * var(--s));padding-top:calc(20px * var(--s));padding-bottom:calc(20px * var(--s));display:flex;flex-direction:column;gap:calc(20px * var(--s))}.card-slot{position:relative;width:100%;height:calc(800px * var(--s));flex:none;scroll-margin-top:calc(20px * var(--s))}.card{position:absolute;top:0;left:0;width:800px;height:800px;border-radius:12px;overflow:hidden;background:var(--card);transform:scale(var(--s));transform-origin:top left}.card.bordered{box-shadow:inset 0 0 0 1px #323232}.asset{position:absolute;object-fit:cover}.phone{left:223px;top:16px;width:354px;height:768px;border-radius:32px;overflow:hidden;position:absolute}.phone>img{width:100%;height:100%;object-fit:cover}.phone.hugly{width:355px;border-radius:0}.phone.sber>img{position:absolute;width:129.35%;height:106.6%;left:-13.31%;top:-2.36%;max-width:none}.logo-hugly{left:30px;top:30px;width:71.205px;height:48.111px}.logo-round{position:absolute;left:30px;top:30px;width:58px;height:58px;border-radius:80px;background:#fff;overflow:hidden}.logo-round img{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:54.375px;height:54.375px;object-fit:cover}.logo-round.full img{width:58px;height:58px}.caption{position:absolute;left:20px;top:723px;width:158px;font-size:16px;line-height:19px;color:rgba(255,255,255,.5)}.card-arrow{position:absolute;width:64px;height:64px;background:#292929;border:0;border-radius:24px;padding:16px;top:368px}.card-arrow img{width:32px;height:32px}.card-arrow.prev{left:74px}.card-arrow.next{left:663px}.card-arrow.next img{transform:rotate(180deg)}.top-arrows .prev{top:20px;left:640px}.top-arrows .next{top:20px;left:720px}.card-arrow:disabled{cursor:default}.card-arrow:disabled img{opacity:.4}.card-arrow:hover:not(:disabled){background:#383838}.dual-logo{position:absolute;top:30px;width:54px;height:54px;border-radius:50%;overflow:hidden}.dual-logo.green{left:65px}.dual-logo.red{left:30px}.dual-logo.green img{width:100%;height:100%}.dual-logo.red img{position:absolute;width:120.19%;height:120.75%;left:-10.33%;top:-10.38%}.closing-copy{position:absolute;left:20px;top:20px;width:760px;font-size:44px;line-height:53px}.closing-copy p+p{margin-top:26px;color:var(--muted)}#about .asset{mask-image:linear-gradient(to bottom,black 50%,rgba(0,0,0,.85) 63%,rgba(0,0,0,.38) 79%,transparent 94%)}.closing-availability{position:absolute;left:20px;top:741px;width:760px;font-size:32px;line-height:39px}.bottom-fade{position:fixed;left:0;bottom:0;width:100%;height:calc(204px * var(--s));pointer-events:none;z-index:3}.bottom-fade{background:linear-gradient(to top,#000 3px,transparent)}.top-fade{position:fixed;left:0;top:0;width:100%;height:calc(20px * var(--s));pointer-events:none;z-index:3}.top-fade{background:linear-gradient(to bottom,#000 3px,transparent)}.portfolio-contact{position:fixed;left:calc(20px * var(--s));bottom:calc(20px * var(--s));transform:scale(var(--s));transform-origin:left bottom;z-index:4}
@media(max-width:1100px){.intro{position:relative;left:auto;top:auto;margin:24px 20px 36px;width:auto;transform:none}.intro{--compact-size:20px}.intro .eyebrow{font-size:16px;line-height:20px}.intro{--expanded-size:clamp(24px,5.4vw,32px)}.intro .bio{line-height:1.22;white-space:normal}.brand-row{display:none}.cards{margin:0 auto;width:calc(800px * var(--s));padding-top:0;padding-bottom:80px;gap:12px}.portfolio-contact{left:20px;bottom:20px;transform:none}.bottom-fade{height:110px}.top-fade{display:none}}
@media(max-width:900px) and (max-height:680px){.login-content{top:48%;transform:translate(-50%,-50%) scale(.82)}.password-form p{font-size:calc(18px / .82);line-height:calc(22px / .82)}.login{min-height:540px}}
/* Figma's Inter styles use the default optical size. */
html,body{font-optical-sizing:none}


.mobile-space{display:none}@media(max-width:1100px){.company-space{display:none}.mobile-space{display:inline}}

/* Desktop dimensions remain in CSS pixels, independent of viewport width.
   Only the card canvas scales to fit the available width AND height. */
html,body{-webkit-font-smoothing:antialiased;font-synthesis:none}
.brand{border:0;box-shadow:0 0 0 4px #000}
.card-arrow img{transition:opacity 180ms ease}
.card-arrow{transition:background-color 180ms ease,transform 180ms ease}
.card-arrow:active:not(:disabled){transform:scale(.94)}

#property .property-logo{top:20px}
#property .property-logo.red{left:20px;box-shadow:0 0 0 4px #1b1b1b}
#property .property-logo.green{left:65px}
#property-grid .dual-logo.red{box-shadow:0 0 0 4px #1b1b1b}
#location .logo-round{left:20px;top:20px;width:54px;height:54px}
#location .logo-round img{width:54px;height:54px}
#sber-concept .logo-round{left:20px;top:20px;width:54px;height:54px}
#sber-concept .logo-round img{width:50.625px;height:50.625px}
#climate img[alt="Climate control"]{left:20px!important;top:20px!important}
@media(min-width:1101px){
 .intro{left:20px;top:20px;transform:none}
 .cards{margin-right:20px;padding-top:20px;padding-bottom:20px;gap:20px}
 .card-slot{scroll-margin-top:20px}
 .portfolio-contact{left:20px;bottom:20px;transform:none}
 
 .bottom-fade,.top-fade{height:24px}
 
}
@media(prefers-reduced-motion:reduce){
 .card-arrow,.card-arrow img{transition:none}
 html{scroll-behavior:auto}
}

.hugly-stage{
  position:absolute;
  inset:0;
  overflow:hidden;
  inset-block:20px;
  mask-image:linear-gradient(to right,transparent 25%,black 28%,black 72%,transparent 75%);
}
.hugly-video{clip-path:inset(0 28.75%);position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transform:scale(1.106);transform-origin:center}
.password-control:focus-within .current::after{content:"";width:2px;height:26px;background:white;animation:caret 1s infinite}
@keyframes caret{0%,52%{opacity:1}60%,100%{opacity:0}}
.password-boxes span{transition:color .12s,background-color .12s}
.password-form.invalid .password-boxes span{background:#420000;color:red}
.password-boxes b{font-weight:inherit}
.login.leaving{position:fixed;inset:0;z-index:5;pointer-events:none}
.celebration{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:10}
@media(prefers-reduced-motion:reduce){.password-boxes .current::after{animation:none}}

.intro .availability{color:var(--muted)}
.intro{transition:opacity 320ms ease}
.intro-body{position:relative;font-size:var(--expanded-size,32px);transition:font-size 360ms cubic-bezier(.22,.61,.36,1)}
.brand-row{transform-origin:top left;transition:scale 360ms cubic-bezier(.22,.61,.36,1)}
.intro .eyebrow,.intro .availability{transition:color 320ms ease}
.intro.is-dimmed{opacity:.4}
.intro.is-dimmed .intro-body{font-size:var(--compact-size)}
.intro.is-dimmed .brand-row{scale:.75}
.intro.is-dimmed .eyebrow,.intro.is-dimmed .availability{color:white}
@media(min-width:1101px){
  .intro-body{width:15.03125em}
}
@media(prefers-reduced-motion:reduce){
  .intro,.intro-body,.brand-row,.intro .eyebrow,.intro .availability{transition:none}
}

.phone > img[data-slides]{position:absolute;inset:0}
.edadil-title{position:absolute;left:24px;top:33px;font-size:32px}
.edadil-stage{position:absolute;left:16px;right:16px;top:100px;aspect-ratio:1280/1044;overflow:hidden;border-radius:14px}
.edadil-stage :is(video,.video-preview){position:absolute;inset:0;width:100%;height:100%}
.local-talent-video{display:block;width:100%;height:100%;object-fit:contain}
.avito-video{position:absolute;left:16px;top:50%;transform:translateY(-50%);width:768px;height:auto;border-radius:16px}
.extranet-video{position:absolute;left:0;top:50%;transform:translateY(-50%);width:100%;height:auto}
.aurus-stage{position:absolute;inset:170px 16px;overflow:hidden;border-radius:24px}
.aurus-stage :is(video,.video-preview){position:absolute;inset:0;width:100%;height:100%;object-fit:contain}

/* Media can resize with the card. Desktop type and controls use CSS pixels. */
.project-card{--u:1px;width:100%;height:100%;transform:none;container-type:inline-size}
.project-media{position:absolute;inset:0;overflow:hidden}
.phone-project .project-media{inset:0}
.project-heading,.project-actions{position:absolute;top:calc(20 * var(--u))}
.project-heading{left:calc(20 * var(--u));width:calc(250 * var(--u));pointer-events:none}
.phone-project .project-heading{width:100px}



.project-logo,.project-logos img{display:block;height:calc(44 * var(--u));width:auto;max-width:100%;object-fit:contain}
.project-logos{display:flex}
.project-logos img,.project-logo[src$=".png"]{border-radius:50%}
.project-logos img+img{margin-left:calc(-10 * var(--u))}
.project-actions{right:calc(20 * var(--u));display:flex;align-items:center;gap:calc(16 * var(--u))}
.project-card .card-arrow{border-radius:calc(16 * var(--u));border:0;display:grid;place-items:center}

.project-card .card-arrow{width:calc(54 * var(--u));height:calc(54 * var(--u));padding:0}
.project-card .card-arrow img{width:calc(24 * var(--u));height:calc(24 * var(--u))}
.project-card .project-actions .card-arrow{position:static}
.phone-project>.card-arrow{top:calc(50% - 27 * var(--u))}
.phone-project>.prev{left:calc(13.875% - 27 * var(--u))}
.phone-project>.next{left:auto;right:calc(13.875% - 27 * var(--u))}
.desktop-project .project-media{inset:calc(154 * var(--u)) calc(16 * var(--u)) calc(16 * var(--u));display:flex;align-items:flex-end;justify-content:center}
.project-media .avito-video,.project-media .extranet-video,.project-media .property-screen{position:static;transform:none;width:100%;height:100%;object-fit:contain;object-position:center bottom}
.project-media .property-screen{object-fit:cover;object-position:top;border-radius:16px}
.project-media .avito-video{height:auto;max-height:100%;border-radius:calc(24 * var(--u))}
.project-media .edadil-stage,.project-media .aurus-stage{position:relative;inset:auto;width:100%;max-height:100%;border-radius:calc(24 * var(--u))}
.project-media .aurus-stage{aspect-ratio:800/480}
.project-media .edadil-stage :is(video,.video-preview),.project-media .aurus-stage :is(video,.video-preview){object-fit:contain;object-position:center bottom}
#property-grid .project-media{inset-inline:0;bottom:0}
@container (max-width:510px){
  .project-card .project-heading{width:calc(100% - 40px)}

  .project-actions{gap:8px}

}
@media(min-width:1101px){
  .login{min-height:620px}
  .project-card:has(.project-actions .card-arrow) .project-heading{width:min(250px,calc(100% - 310px))}
}

@media(min-width:901px) and (max-width:1100px){.cards{margin-inline:auto;width:calc(800px * var(--s))}}

/* Crop the bottom of the Edadil footage while keeping the interface at its original scale. */
#edadil .project-media{container-type:size;inset-inline:20px}
.project-media .edadil-stage{width:100%;height:calc(min(81.5625cqw + 6.525px,100cqh) - 30px);aspect-ratio:auto}
.project-media .edadil-stage :is(video,.video-preview){object-fit:cover;object-position:top}
#hugly .prev img{width:22px;height:22px}

/* Square Aurus display, centered inside the black mounting panel. */
.project-media .aurus-stage:has(.aurus-square:not([hidden])){
  aspect-ratio:768/490;
  border-radius:12px;
}
.aurus-stage{container-type:size}
.project-media .aurus-stage .aurus-square{
  background:#000;
  padding-block:26cqh;
  object-position:center;
}

@media (min-width:901px){
  .phone-project>.prev{left:20px}
  .phone-project>.next{right:20px}
}

.story-slide{
  position:absolute;inset:0;display:grid;place-items:center;
  padding:0 20px;
}
.story-copy{
  width:min(65.375cqw,523px);
  display:grid;gap:clamp(8px,2cqw,16px);
  max-height:78%;overflow-y:auto;
}
.story-copy h2,.story-copy p{margin:0;font-weight:500;line-height:1.22}
.story-copy h2{font-size:clamp(18px,4.5cqw,36px)}
.story-copy p{font-size:clamp(14px,3cqw,24px);color:rgba(255,255,255,.5)}

@media(max-width:900px){
  .phone-project .story-copy{width:min(65.375cqw,calc(72.25cqw - 74px))}
}
@container(max-width:510px){
  .story-slide{padding-top:64px;padding-bottom:12px}
  .story-copy{max-height:100%}
  .desktop-project .story-copy{width:100%}
}

@media (prefers-reduced-motion:no-preference) {
  .story-slide:not([hidden]) h2 {
    background:linear-gradient(125deg,#fff 34%,#ccd9f2 41%,#6d9ce8 46%,#f7fcff 50%,#9ec7ff 54%,#fff 62%);
    background-size:300% 300%;
    background-clip:text;
    color:transparent;
    animation:story-shimmer 1500ms 460ms linear both;
  }
  @keyframes story-shimmer {
    from {background-position:100% 100%}
    to {background-position:0% 0%}
  }
}

.project-card .card-arrow.next{
  grid-template:100% / 100%;
  overflow:hidden;
}
.project-card .card-arrow.next::before,
.project-card .card-arrow.next img{grid-area:1 / 1}
.project-card .card-arrow.next::before{
  content:"";
  width:100%;height:100%;
  background:rgb(255 255 255 / 14%);
  transform:scaleX(var(--slide-progress,0));
  transform-origin:left center;
  pointer-events:none;
}
.project-card .card-arrow.next img{z-index:1}

.login-contact{color:var(--muted);transition:color 160ms ease}
.login-contact img{opacity:.6;transition:opacity 160ms ease}
.login-contact:is(:hover,:focus-visible){color:#fff}
.login-contact:is(:hover,:focus-visible) img{opacity:1}
@media(prefers-reduced-motion:reduce){
  .login-contact,.login-contact img{transition:none}
}

.sbol-video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}

/* Intro logos flow with the copy, including when the intro becomes compact. */
.intro .brand-row{position:relative;top:auto;left:auto;display:inline-flex;vertical-align:-.12em;scale:1;white-space:nowrap}
.intro .brand{width:1em;height:1em;border-width:.125em;margin-right:-.1875em}
.intro .brand:last-child{margin-right:0}
.intro .brand img{width:1em;height:1em}
.intro .brand .yandex{width:1.2em;height:1.2em}
.intro .brand .sber{width:.94em;height:.94em}
.intro .brand .dots-clip{width:.75em;height:.6875em}
.intro .brand .dots-clip img{width:352.36%;height:100%}
.closing-content{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:523px;display:flex;flex-direction:column;align-items:flex-start;gap:32px}
.closing-message{display:flex;flex-direction:column;gap:16px}
.closing-message h2{font-size:36px;line-height:1.21;font-weight:500}
.closing-message p{font-size:24px;line-height:1.21;color:rgba(255,255,255,.5)}
.closing-contact{font-size:24px;line-height:1.21}
@media(max-width:1100px){.intro .brand-row{display:none}}
.closing-message h2{margin:0}
.intro.is-dimmed .brand-row{scale:1}
/* Let the final card reach the same 20px top inset at the end of scrolling. */
.cards{padding-bottom:max(20px,calc(100dvh - 800px * var(--s) - 20px))}
#about{scroll-margin-top:20px}

/* Mobile uses its own layout, not a scaled desktop canvas. */
@media(max-width:700px){
 .login{min-height:600px;height:100svh}
 .login-content{top:46%;width:min(305px,calc(100% - 32px));gap:36px;transform:translate(-50%,-50%)}
 .identity{gap:28px}
 .identity h1{font-size:22px;line-height:1.25;white-space:normal}
 .password-control input{font-size:18px}
 .password-form p{font-size:18px;line-height:1.35;width:100%;min-height:48px}
 .login-contact{font-size:18px;white-space:nowrap;bottom:max(20px,env(safe-area-inset-bottom))}
 .intro{margin:28px 24px 32px;--expanded-size:clamp(24px,6.2vw,30px);--compact-size:var(--expanded-size)}
 .intro.is-dimmed{opacity:1}
 .intro .eyebrow{font-size:16px;line-height:1.4;margin-bottom:12px}
 .intro .bio{line-height:1.28}
 .intro .availability{display:block;font-size:18px;line-height:1.4;margin-top:12px}
 .intro.is-dimmed .eyebrow{color:rgba(255,255,255,.5)}
 .intro.is-dimmed .availability{color:var(--muted)}
 .cards{width:calc(100% - 24px);margin-inline:12px;gap:16px;padding-top:0;padding-bottom:max(0px,calc(100dvh - var(--last-card-height,620px) - 88px))}
 .card-slot{height:500px;scroll-margin-top:20px}
 .card-slot:has(.phone-project){height:clamp(600px,calc(100svh - 40px),820px)}
 .card{width:100%;height:100%;transform:none;border-radius:16px}
 .project-heading{top:20px;left:20px}
 .project-card .project-heading{width:calc(100% - 168px)}
 .project-logo,.project-logos img{height:40px}
 .project-card .card-arrow{width:44px;height:44px;border-radius:14px}
 .phone-project>.card-arrow{top:18px}
 .phone-project>.prev{left:auto;right:72px}
 .phone-project>.next{right:20px}
 .project-actions{top:18px;right:20px;gap:8px}
 .phone-project .project-media{inset:84px 16px 20px}
 .phone-project .project-media{container-type:size}
 .sbol-video,.local-talent-video{position:absolute;inset:auto;top:50%;left:50%;width:min(100cqh,230cqw);height:min(100cqh,230cqw);max-width:none;transform:translate(-50%,-50%);object-fit:contain}
 .hugly-stage{inset:0;mask-image:none}
 .hugly-video{inset:auto;top:50%;left:50%;width:min(105.8cqh,235cqw);height:min(105.8cqh,235cqw);transform:translate(-50%,-50%);clip-path:inset(0 28.75%)}
 .desktop-project .project-media{inset:84px 16px 20px}
 #edadil .project-media{inset:84px 16px 20px}
 #property-grid .project-media{inset:84px 16px 20px}
 .project-media .edadil-stage{height:auto;aspect-ratio:1280/1044;max-height:100%}
 .project-media .edadil-stage :is(video,.video-preview){object-fit:contain}
 .project-media .aurus-stage{border-radius:12px}
 .story-slide{padding:92px 24px 28px;align-items:center}
 .story-copy,.phone-project .story-copy,.desktop-project .story-copy{width:100%;max-height:100%;gap:18px;overflow-y:auto;overscroll-behavior:contain}
 .story-copy h2{font-size:clamp(24px,6.2vw,30px);line-height:1.22}
 .story-copy p{font-size:18px;line-height:1.4}
 #about{height:auto;min-height:620px}
 #about .closing-card{position:relative;min-height:620px;height:auto;container-type:inline-size}
 .closing-content{position:relative;left:auto;top:auto;transform:none;width:100%;padding:40px 24px;gap:28px;min-height:620px;justify-content:center}
 .closing-message{gap:18px}
 .closing-message h2{font-size:clamp(26px,6.7vw,32px);line-height:1.22}
 .closing-message p{font-size:18px;line-height:1.4}
 .closing-contact{font-size:18px;line-height:22px;min-height:44px;align-items:center}
 .portfolio-contact{position:relative;left:auto;bottom:auto;transform:none;width:fit-content;margin:20px 24px 24px;font-size:18px;line-height:22px}
 .bottom-fade,.top-fade{display:none}
}
@media(max-width:380px){
 .closing-content .portraits{transform:scale(.82);transform-origin:left center;margin-bottom:-24px}
}

/* Mobile welcome notice, matching the Figma sheet. */
.mobile-notice{color-scheme:light;position:fixed;inset:auto 8px 8px;margin:0 auto;border:0;padding:0;width:calc(100% - 16px);max-width:430px;height:min(686px,calc(100dvh - 16px));max-height:none;overflow:hidden;border-radius:36px;background:#fff;color:#000}
.mobile-notice::backdrop{background:rgba(0,0,0,.6)}
.mobile-notice-open{overflow:hidden}
.mobile-notice-content{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(267px,calc(100% - 64px));display:flex;flex-direction:column;gap:44px}
.mobile-notice-art{position:relative;width:100%;aspect-ratio:281/188;overflow:hidden}
.mobile-notice-art img{position:absolute;width:119.57%;height:178.72%;left:-7.47%;top:-36.17%;max-width:none}
.mobile-notice h2{margin:0;font-size:20px;line-height:normal;font-weight:700;text-align:center}
.mobile-notice-glow{position:absolute;left:50%;top:calc(50% - .5px);transform:translate(-50%,-50%);pointer-events:none}
.mobile-notice-edge{position:absolute;top:58px;width:32px;height:448px;object-fit:cover;pointer-events:none}
.mobile-notice-edge.right{right:0}.mobile-notice-edge.left{left:0;transform:rotate(180deg)}
.mobile-notice-label{position:absolute;top:27px;left:50%;transform:translateX(-50%);padding:6px 12px;border-radius:16px;background:rgba(255,255,255,.5);color:rgba(20,7,7,.6);font-size:16px;font-weight:700}
.mobile-notice-proceed{position:absolute;bottom:24px;left:24px;right:24px;min-height:72px;padding:20px 16px;border:0;border-radius:24px;background:#000;color:#fff;font-size:20px;font-weight:500}
.mobile-notice-proceed:focus-visible{outline:2px solid #777;outline-offset:4px}
@media(max-height:600px){.mobile-notice-content{top:47%;gap:20px;width:min(235px,calc(100% - 64px))}.mobile-notice-art{max-height:135px}.mobile-notice-label{top:16px}.mobile-notice-proceed{bottom:16px;min-height:60px}}

@media(max-width:700px){
 /* Fit desktop footage instead of reserving a tall mobile-device canvas. */
 .card-slot:has(.desktop-project){height:calc(104px + (100vw - 56px) * .625)}
 #edadil.card-slot{height:calc(104px + (100vw - 56px) * .815625)}
 .card-slot:has(.desktop-project .story-slide:not([hidden])){height:500px}
}
@media(max-width:700px) and (prefers-reduced-motion:no-preference){
 .card-slot:has(.desktop-project){transition:height 360ms cubic-bezier(.22,.61,.36,1)}
}

@media(max-width:700px){
 /* Text belongs to the page flow; cards never own a vertical scroll area. */
 .card-slot:has(.project-card .story-slide:not([hidden])){height:auto}
 .project-card:has(.story-slide:not([hidden])){position:relative;height:auto;min-height:500px}
 .phone-project:has(.story-slide:not([hidden])){min-height:clamp(600px,calc(100svh - 40px),820px)}
 .project-card .story-slide{position:relative;min-height:500px}
 .phone-project .story-slide{min-height:clamp(600px,calc(100svh - 40px),820px)}
 .project-card .story-copy{max-height:none;overflow:visible;overscroll-behavior:auto}
 .card,.project-media{overflow:clip}
}
@media(max-width:700px){
 #edadil.card-slot:has(.story-slide:not([hidden])){height:auto}
}

/* Keep headers above Safari's composited video surfaces. */
.project-heading{z-index:3;min-height:44px;overflow:visible}
.project-actions,.project-card>.card-arrow{z-index:4}
.video-preview{pointer-events:auto;cursor:pointer}
@media(max-width:700px){
 .project-media{overflow:hidden;isolation:isolate}
 .project-heading{height:44px;transform:translateZ(0)}
}
