/* ATLAS motion: luminous gold, cool ivory, and progressive enhancement.
   All content remains visible without JavaScript. Hero image sizing is untouched. */
:root{
  --atlas-ease:cubic-bezier(.21,.72,.24,1);
  --atlas-shine:rgba(255,231,183,.9);
}

/* A quiet, gold reading-progress line sits above the fixed navigation. */
.atlas-scroll-progress{
  position:fixed;inset:0 0 auto;height:3px;z-index:150;
  background:linear-gradient(90deg,#9b783e,#ebc988,#fff9e8,#dff5ff);
  transform:scaleX(var(--atlas-progress,0));transform-origin:left;
  box-shadow:0 0 16px rgba(232,207,160,.65);pointer-events:none;
}

/* An ivory glass header preserves the dimensions of both contact buttons. */
html.atlas-motion nav.top.atlas-original-nav{
  background:rgba(250,248,244,.96);
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  box-shadow:0 3px 24px rgba(18,22,28,.025);
  transition:background .4s ease,box-shadow .4s ease,border-color .4s ease;
}
html.atlas-motion.atlas-scrolled nav.top.atlas-original-nav{
  background:rgba(250,248,244,.94);
  border-bottom-color:rgba(179,146,95,.4);
  box-shadow:0 8px 30px rgba(18,22,28,.08);
}
html.atlas-motion nav.top.atlas-original-nav .nav-email{
  background:#fff;text-decoration:none;
}
html.atlas-motion nav.top.atlas-original-nav .menu-toggle{
  border:1px solid transparent;
  transition:border-color .3s ease,background .3s ease;
}
html.atlas-motion nav.top.atlas-original-nav .menu-toggle:hover{
  border-color:rgba(179,146,95,.5);background:rgba(179,146,95,.06);
}
html.atlas-motion .menu-toggle span{transition:transform .3s var(--atlas-ease),opacity .2s ease}
html.atlas-motion .menu-open .menu-toggle span:nth-child(1){transform:translateY(6px) rotate(45deg)}
html.atlas-motion .menu-open .menu-toggle span:nth-child(2){opacity:0}
html.atlas-motion .menu-open .menu-toggle span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
html.atlas-motion nav.top.atlas-original-nav.menu-open #expanded-menu{
  animation:atlas-menu-enter .32s var(--atlas-ease) both;
  box-shadow:0 18px 50px rgba(18,22,28,.13),inset 0 1px rgba(255,255,255,.9);
}
@keyframes atlas-menu-enter{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}

/* A bright metallic band travels across headings and the larger wordmark. */
@supports ((-webkit-background-clip:text) or (background-clip:text)){
  html.atlas-motion .display em{
    color:transparent;background-image:linear-gradient(110deg,#806031 10%,#c99b4c 31%,#e5c681 43%,#826133 54%,#bd8f43 69%,#806031 90%);
    background-size:250% 100%;-webkit-background-clip:text;background-clip:text;
    animation:atlas-type-light 5.8s ease-in-out infinite;
  }
  html.atlas-motion :is(.dark,.dark-2,.hero,.mkt-hero,.team-page,.featured-opportunities,.legal-hero) .display em{
    background-image:linear-gradient(110deg,#c5a066 10%,#f5db9e 32%,#fffaf0 44%,#dff4ff 52%,#fff 59%,#d6b379 74%,#c5a066 91%);
  }
  html.atlas-motion nav.top.atlas-original-nav .brand strong{
    color:transparent;background-image:linear-gradient(110deg,#12161c 25%,#12161c 39%,#b38a46 48%,#e7c88a 52%,#12161c 63%,#12161c 85%);
    background-size:250% 100%;-webkit-background-clip:text;background-clip:text;
    animation:atlas-type-light 6.2s ease-in-out infinite;
  }
}
@keyframes atlas-type-light{0%,4%{background-position:0% 50%}93%,100%{background-position:100% 50%}}

/* Reveals are enabled only when the motion controller is ready. */
html.atlas-motion body .atlas-reveal{
  opacity:0;translate:0 42px;scale:.975;
  transition:opacity .9s var(--atlas-ease),translate .9s var(--atlas-ease),scale .9s var(--atlas-ease),transform .4s var(--atlas-ease),border-color .35s ease,box-shadow .35s ease;
}
html.atlas-motion .atlas-reveal.is-visible{
  opacity:1;translate:0 0;scale:1;transition-delay:var(--atlas-delay,0ms),var(--atlas-delay,0ms),var(--atlas-delay,0ms),0ms,0ms,0ms;
}
html.atlas-motion .atlas-reveal:focus-within{opacity:1;translate:0 0;scale:1;transition-delay:0ms}
html.atlas-motion :is(.hero-inner,.hero-copy,.hero-actions,.mkt-hero-inner).atlas-reveal{
  opacity:1;translate:0 0;scale:1;
}
html.atlas-motion .atlas-arrive{animation:atlas-arrive 1.05s var(--atlas-ease) both}
@keyframes atlas-arrive{from{opacity:.7;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}

/* Moving architectural light traces sit above the photo and below all copy.
   Neither pseudo-element changes the photograph's crop, filter, or dimensions. */
html.atlas-motion .hero::before{
  content:"";position:absolute;z-index:1;right:5%;top:30%;width:36%;height:1px;
  background:linear-gradient(90deg,transparent,rgba(226,199,150,.55),rgba(225,246,255,.75),transparent);
  box-shadow:0 0 14px rgba(231,221,193,.18);pointer-events:none;
  animation:atlas-hero-scan 6s ease-in-out infinite;
}
html.atlas-motion .hero::after{
  content:"";position:absolute;z-index:1;right:6%;top:24%;bottom:25%;width:29%;
  background:linear-gradient(90deg,rgba(245,219,165,.78),transparent) left top/80px 1px no-repeat,linear-gradient(180deg,rgba(245,219,165,.78),transparent) left top/1px 80px no-repeat,linear-gradient(270deg,rgba(220,244,255,.72),transparent) right bottom/80px 1px no-repeat,linear-gradient(0deg,rgba(220,244,255,.72),transparent) right bottom/1px 80px no-repeat;
  pointer-events:none;animation:atlas-hero-frame 5.5s ease-in-out infinite alternate;
}
@keyframes atlas-hero-scan{0%,100%{opacity:.16;transform:translateY(0)}50%{opacity:.85;transform:translateY(170px)}}
@keyframes atlas-hero-frame{from{opacity:.3;transform:translateY(-5px)}to{opacity:.85;transform:translateY(5px)}}

/* A diffuse moving halo belongs to the section, never to the photograph. */
html.atlas-motion .atlas-ambient{isolation:isolate}
html.atlas-motion .atlas-ambient::before{
  content:"";position:absolute;z-index:-1;inset:0;overflow:hidden;
  background:radial-gradient(ellipse at 15% 20%,rgba(205,169,105,.22),transparent 52%),radial-gradient(ellipse at 87% 78%,rgba(184,222,240,.11),transparent 50%),linear-gradient(rgba(211,187,144,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(211,187,144,.055) 1px,transparent 1px);
  background-size:auto,auto,84px 84px,84px 84px;
  -webkit-mask-image:linear-gradient(transparent,#000 18%,#000 82%,transparent);mask-image:linear-gradient(transparent,#000 18%,#000 82%,transparent);
  opacity:.7;animation:atlas-ambient-light 6.5s ease-in-out infinite alternate;pointer-events:none;
}
html.atlas-motion .atlas-ambient::after{
  content:"";position:absolute;left:7%;right:7%;top:0;height:2px;
  background:linear-gradient(90deg,transparent,rgba(238,202,137,.75),rgba(228,246,255,.7),transparent);
  box-shadow:0 0 18px rgba(226,197,143,.14);
  opacity:.75;transform:scaleX(.4);transform-origin:center;
  animation:atlas-edge-light 5s ease-in-out infinite alternate;pointer-events:none;
}
@keyframes atlas-ambient-light{from{opacity:.5;transform:translateY(-14px)}to{opacity:1;transform:translateY(14px)}}
@keyframes atlas-edge-light{from{opacity:.35;transform:scaleX(.4)}to{opacity:1;transform:scaleX(1)}}
html.atlas-motion .rule{position:relative;overflow:hidden}
html.atlas-motion .rule::after{
  content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,#fff3d7,transparent);
  transform:translateX(-110%);animation:atlas-rule-light 5s ease-in-out infinite;
}
@keyframes atlas-rule-light{0%,55%{transform:translateX(-110%)}82%,100%{transform:translateX(110%)}}

/* Fine highlights and a pointer-following glow give cards a glass-like edge. */
html.atlas-motion .atlas-gloss{position:relative;isolation:isolate}
html.atlas-motion .atlas-gloss::before{
  content:"";position:absolute;z-index:2;inset:0;pointer-events:none;
  background:radial-gradient(380px circle at var(--atlas-x,50%) var(--atlas-y,40%),rgba(237,204,143,.22),transparent 72%),radial-gradient(140px circle at var(--atlas-x,50%) var(--atlas-y,40%),rgba(216,242,255,.08),transparent 76%);
  opacity:0;transition:opacity .45s ease;
}
html.atlas-motion .atlas-gloss::after{
  content:"";position:absolute;z-index:3;inset:0;pointer-events:none;
  background:linear-gradient(90deg,rgba(230,204,159,.7),transparent) left top/62px 1px no-repeat,linear-gradient(180deg,rgba(230,204,159,.7),transparent) left top/1px 62px no-repeat,linear-gradient(270deg,rgba(230,204,159,.45),transparent) right bottom/44px 1px no-repeat,linear-gradient(0deg,rgba(230,204,159,.45),transparent) right bottom/1px 44px no-repeat;
  opacity:.62;transition:opacity .4s ease;
}
html.atlas-motion .atlas-gloss:focus-within::before,
html.atlas-motion .atlas-gloss:focus-within::after{opacity:1}
html.atlas-motion :is(.sample-deal,.founder-card,.reason,.content-card,.contact-option,.mkt-fact){
  transition:transform .45s var(--atlas-ease),border-color .4s ease,box-shadow .4s ease,background .4s ease;
}
html.atlas-motion .sample-deal{box-shadow:0 8px 35px rgba(0,0,0,.1)}
html.atlas-motion .form-card{box-shadow:0 18px 65px rgba(18,22,28,.09)}
html.atlas-motion .founder-card{background:#000}
html.atlas-motion .founder-card::before{
  background:radial-gradient(320px circle at var(--atlas-x,50%) var(--atlas-y,40%),rgba(222,192,139,.1),transparent 72%);
}
html.atlas-motion .founder-role{box-shadow:0 2px 16px rgba(255,255,255,.07);transition:box-shadow .4s ease}
html.atlas-motion .sample-deal-photo img,
html.atlas-motion .area-photo img{transition:transform 1.25s var(--atlas-ease)}
html.atlas-motion .area-photo span{transition:transform .5s var(--atlas-ease)}
html.atlas-motion .area-photo.atlas-gloss::after{
  background:linear-gradient(90deg,rgba(230,204,159,.7),transparent) left top/62px 1px no-repeat,linear-gradient(180deg,rgba(230,204,159,.7),transparent) left top/1px 62px no-repeat,linear-gradient(180deg,transparent 40%,rgba(0,0,0,.5));
  opacity:1;
}
html.atlas-motion .area-photo.atlas-gloss span{z-index:4}

/* Buttons carry a travelling reflection; their text and hit areas stay fixed. */
html.atlas-motion :is(.btn,.nav-cta,.nav-email){
  position:relative;isolation:isolate;overflow:hidden;
  transition:transform .3s var(--atlas-ease),background .35s ease,color .35s ease,border-color .35s ease,box-shadow .35s ease;
}
html.atlas-motion :is(.btn,.nav-cta,.nav-email)::after{
  content:"";position:absolute;z-index:-1;left:-80%;top:-25%;width:55%;height:150%;
  background:linear-gradient(90deg,transparent,rgba(255,252,237,.57),transparent);
  transform:translateX(0) skewX(-20deg);transition:transform .8s var(--atlas-ease);pointer-events:none;
}
html.atlas-motion .nav-email::after{background:linear-gradient(90deg,transparent,rgba(179,146,95,.13),transparent)}
html.atlas-motion :is(.btn-brass,.nav-cta)::after{animation:atlas-button-light 4.8s var(--atlas-ease) .15s infinite}
html.atlas-motion .nav-cta::after{animation-delay:.3s}
@keyframes atlas-button-light{0%,8%{transform:translateX(0) skewX(-20deg)}65%,100%{transform:translateX(370%) skewX(-20deg)}}
html.atlas-motion :is(.btn,.nav-cta,.nav-email):focus-visible{
  outline:2px solid var(--brass-lt);outline-offset:5px;
  box-shadow:0 0 0 6px rgba(179,146,95,.08),0 8px 24px rgba(179,146,95,.18);
}
html.atlas-motion .f :is(input,select,textarea):focus-visible{
  border-bottom-color:var(--brass-lt);box-shadow:0 4px 12px -8px var(--brass-lt);
}
html.atlas-motion .pocket{transition:border-color .35s ease,box-shadow .35s ease}

@media(hover:hover) and (pointer:fine){
  html.atlas-motion :is(.btn,.nav-cta,.nav-email):hover{transform:translateY(-3px);box-shadow:0 10px 30px rgba(171,130,61,.3),0 0 18px rgba(229,200,148,.12)}
  html.atlas-motion :is(.btn,.nav-cta,.nav-email):hover::after{transform:translateX(370%) skewX(-20deg)}
  html.atlas-motion :is(.sample-deal,.founder-card,.content-card,.contact-option):hover{
    transform:translateY(-10px);border-color:rgba(236,205,151,.85);
    box-shadow:0 24px 48px rgba(0,0,0,.24),0 0 28px rgba(212,176,112,.13);
  }
  html.atlas-motion .reason:hover{transform:translateY(-8px);box-shadow:0 18px 36px rgba(141,112,67,.14),0 0 18px rgba(212,176,112,.08);z-index:2}
  html.atlas-motion .atlas-pointer:is(.sample-deal,.founder-card,.reason,.content-card):hover{
    transform:perspective(1100px) translateY(-10px) rotateX(var(--atlas-tilt-x,0deg)) rotateY(var(--atlas-tilt-y,0deg));
  }
  html.atlas-motion .atlas-gloss:hover::before,
  html.atlas-motion .atlas-gloss:hover::after{opacity:1}
  html.atlas-motion .sample-deal:hover .sample-deal-photo img{transform:scale(1.075)}
  html.atlas-motion .area-photo:hover img{transform:scale(1.085)}
  html.atlas-motion .area-photo:hover span{transform:translateY(-3px)}
  html.atlas-motion .founder-card:hover .founder-role{box-shadow:0 0 24px rgba(238,218,181,.24)}
  html.atlas-motion .pocket:hover{border-color:var(--brass);box-shadow:0 4px 15px rgba(141,112,67,.08)}
}
@media(hover:none),(pointer:coarse){
  html.atlas-motion .atlas-gloss::before{display:none}
  html.atlas-motion body .atlas-reveal{translate:0 28px;scale:.985;transition-duration:.7s}
  html.atlas-motion .atlas-reveal.is-visible{translate:0 0;scale:1}
  html.atlas-motion .hero::after{display:none}
}

/* Offscreen-tab pause, accessibility preference, and clean PDF/print output. */
html.atlas-motion-paused *,html.atlas-motion-paused *::before,html.atlas-motion-paused *::after{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  html.atlas-motion *,html.atlas-motion *::before,html.atlas-motion *::after{animation:none!important;transition:none!important}
  html.atlas-motion .atlas-reveal{opacity:1!important;translate:none!important;scale:none!important;transform:none!important}
  html.atlas-motion .atlas-ambient::before,html.atlas-motion .atlas-ambient::after{animation:none!important;transform:none!important}
  html.atlas-motion :is(.btn,.nav-cta,.nav-email)::after{display:none}
  html.atlas-motion .atlas-gloss::before{display:none}
  html.atlas-motion .hero::before,html.atlas-motion .hero::after{display:none}
  html.atlas-motion :is(.sample-deal,.founder-card,.reason,.content-card,.contact-option,.btn,.nav-cta,.nav-email):hover{transform:none!important}
  html.atlas-motion :is(.sample-deal-photo img,.area-photo img,.area-photo span){transform:none!important}
  .atlas-scroll-progress{display:none}
}
@media print{
  .atlas-scroll-progress{display:none!important}
  html.atlas-motion *,html.atlas-motion *::before,html.atlas-motion *::after{animation:none!important;transition:none!important}
  html.atlas-motion .atlas-reveal{opacity:1!important;translate:none!important;scale:none!important;transform:none!important}
  html.atlas-motion .atlas-gloss::before,html.atlas-motion .atlas-gloss::after,html.atlas-motion .atlas-ambient::before,html.atlas-motion .atlas-ambient::after,html.atlas-motion .hero::before,html.atlas-motion .hero::after,html.atlas-motion :is(.btn,.nav-cta,.nav-email)::after{display:none!important}
  html.atlas-motion .display em,html.atlas-motion nav.top.atlas-original-nav .brand strong{background:none!important;color:inherit!important;-webkit-text-fill-color:currentColor}
}
