/* Terry.ism v23 — cinematic landscape continuity */

body:not(.has-media){
  position:relative;
  isolation:isolate;
  background:#15191d!important;
}
body:not(.has-media)::before,
body:not(.has-media)::after{
  content:"";
  position:fixed;
  inset:-32px;
  z-index:0;
  pointer-events:none;
}
body:not(.has-media)::before{
  background-image:var(--landing-scene,url('./assets/intro/australia-melbourne-river.webp'));
  background-position:var(--landing-position,50% 50%);
  background-size:cover;
  background-repeat:no-repeat;
  filter:saturate(1.06) brightness(.9);
  transform:scale(1.08);
}
body:not(.has-media)::after{
  background:
    radial-gradient(circle at 50% 34%,rgba(255,255,255,.28),transparent 38%),
    linear-gradient(180deg,rgba(8,11,15,.1),rgba(8,11,15,.28));
}
body:not(.has-media) .site-app-root{position:relative;z-index:1;min-height:100dvh}
body:not(.has-media) .app-header{
  background:rgba(255,255,255,.78)!important;
  border-bottom-color:rgba(255,255,255,.45)!important;
  box-shadow:0 8px 30px rgba(10,13,18,.08)!important;
  backdrop-filter:blur(22px) saturate(1.1)!important;
}
body:not(.has-media) .upload-card{
  overflow:hidden;
  border:1px solid rgba(255,255,255,.58)!important;
  background:rgba(255,255,255,.76)!important;
  box-shadow:0 28px 80px rgba(7,10,15,.28)!important;
  backdrop-filter:blur(24px) saturate(1.06);
}
body:not(.has-media) .hero-upload-section{background:transparent!important}
body:not(.has-media) .hero-dropzone{
  border-color:rgba(43,50,59,.16)!important;
  background:rgba(255,255,255,.64)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7)!important;
  backdrop-filter:blur(12px);
}
body:not(.has-media) .hero-dropzone:hover,
body:not(.has-media) .hero-dropzone:focus-visible{
  border-color:rgba(42,49,58,.34)!important;
  background:rgba(255,255,255,.8)!important;
}
.dropzone-camera-icon{
  width:108px!important;
  height:66px!important;
  flex:0 0 108px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.dropzone-brand-mark{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  filter:drop-shadow(0 10px 16px rgba(12,15,19,.12));
}
.dropzone-security-footer .security-item>svg{display:none}
.sample-demo-btn>svg:first-child{display:none}
body:not(.has-media) .sample-demo-card{
  border-color:rgba(255,255,255,.45)!important;
  background:rgba(255,255,255,.58)!important;
  backdrop-filter:blur(12px);
}
body:not(.has-media) .app-footer{
  border:1px solid rgba(255,255,255,.18)!important;
  background:rgba(16,20,26,.72)!important;
  box-shadow:0 18px 46px rgba(8,11,15,.22)!important;
  backdrop-filter:blur(18px);
}
body:not(.has-media) .footer-email-link{color:#f3b05d!important}

.site-intro-background{
  filter:saturate(1.06) brightness(.9)!important;
  transform:scale(1.1) translate3d(0,0,0)!important;
}
.site-intro::before{
  background:radial-gradient(ellipse 68% 58% at 50% 50%,rgba(255,255,255,.04),rgba(4,7,11,.18) 58%,rgba(4,7,11,.55) 100%)!important;
}
.site-intro-mark{width:205px!important;max-width:58vw!important}
.site-intro-mark::before{opacity:.75!important;filter:blur(12px)!important}
.site-intro.is-active .site-intro-mark{animation:introScenicReveal .58s cubic-bezier(.2,.8,.2,1) .03s both,introShutterRecoilV150 .22s ease 1.15s both!important}
.site-intro.is-active .site-intro-logo-base{animation:introLogoSpringV150 .42s ease-out .04s both!important}
.site-intro.is-active .site-intro-lens-window{animation:introLensSpringV150 .58s cubic-bezier(.2,.8,.2,1) .06s forwards!important}
.site-intro.is-active .site-intro-glint-v115{animation:introGlintV150 .34s ease-out .72s both!important}
.site-intro.is-active .site-intro-flash{animation:introShutterFlash .24s ease-out 1.15s both!important}
.site-intro.is-exiting{
  transition:opacity .22s cubic-bezier(.2,.8,.2,1),visibility .22s ease!important;
}
@keyframes introScenicReveal{0%{opacity:0;transform:scale(.9)}100%{opacity:1;transform:scale(1)}}

@media(max-width:720px){
  body:not(.has-media)::before{
    background-position:var(--landing-mobile-position,50% 50%);
    filter:saturate(1.04) brightness(.86);
    transform:scale(1.12);
  }
  body:not(.has-media)::after{
    background:linear-gradient(180deg,rgba(10,13,18,.08),rgba(10,13,18,.3));
  }
  body:not(.has-media) .app-main{margin-top:18px!important}
  body:not(.has-media) .upload-card{background:rgba(255,255,255,.78)!important}
  .dropzone-camera-icon{width:92px!important;height:56px!important;flex-basis:92px!important}
  .site-intro.is-mobile-intro .site-intro-background{
    filter:saturate(1.04) brightness(.88)!important;
    transform:scale(1.12)!important;
  }
  .site-intro.is-mobile-intro .site-intro-mark{width:min(190px,55vw)!important;max-width:none!important}
}

@media(max-height:540px) and (orientation:landscape){
  .site-intro.is-mobile-intro .site-intro-mark{width:min(150px,24vw)!important}
}

@media(prefers-reduced-motion:reduce){
  body:not(.has-media)::before,.site-intro-background{transition:none!important;animation:none!important}
}
