/* Adeo Marketing Webb 2.0 – mobile QA and launch refinement */

/* Prevent horizontal canvas drift without creating a new scrolling container. */
html,body{width:100%;max-width:100%;overflow-x:hidden;overflow-x:clip}
body{position:relative}
img,svg,video,iframe{max-width:100%}
.site-header,.launch-page,.hero,.section{max-width:100vw}

/* Hero signal: full viewport width on desktop and mobile. */
.signal--hero{
  position:relative!important;
  left:50%!important;
  right:auto!important;
  top:auto!important;
  width:100vw!important;
  max-width:none!important;
  margin:28px 0 0 -50vw!important;
  transform:none!important;
  opacity:.72!important;
}

/* Homepage service cards use a clearer Adeo edge. */
.service-grid .service-panel{border-width:1px!important}
.service-grid .service-panel:nth-child(1),
.service-grid .service-panel:nth-child(3){border-color:rgba(255,92,0,.44)!important}
.service-grid .service-panel:nth-child(2){border-color:rgba(201,183,156,.44)!important}
.service-grid .service-panel:hover{border-color:rgba(255,255,255,.28)!important}

/* Four intentional customer logos. */
.client-logo-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}

/* Make parallax perceptible while staying restrained. */
[data-parallax-auto].parallax-ready{
  translate:0 var(--parallax-y,0px)!important;
  will-change:translate;
  transition:translate .05s linear;
}
.case-card__visual img.parallax-ready,
.service-feature__visual img.parallax-ready{scale:1.07!important}
.editorial-media img.parallax-ready{scale:1.035!important}

/* Adeo Cards tilt works the same way on all viewport sizes. */
.product-card,
.launch-card--premium{
  transform:translate3d(var(--card-x,0px),0,0) rotate(var(--card-rotate,-3deg))!important;
  transform-origin:center center!important;
  will-change:transform;
  transition:transform .06s linear!important;
}

/* Premium launch page: darker, cleaner and more anticipatory. */
.launch-page--premium{
  position:relative;
  isolation:isolate;
  min-height:100svh;
  padding:calc(var(--header) + 70px) 0 clamp(82px,10vw,140px);
  overflow:hidden;
  background:
    radial-gradient(circle at 84% 25%,rgba(37,120,255,.075),transparent 28rem),
    radial-gradient(circle at 12% 78%,rgba(255,92,0,.065),transparent 30rem),
    #0a0a0b;
}
.launch-gridline{
  position:absolute;
  inset:0;
  z-index:-2;
  opacity:.16;
  background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(to bottom,transparent 0,#000 18%,#000 78%,transparent 100%);
}
.launch-shell--premium{position:relative;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(300px,.92fr);gap:clamp(46px,8vw,118px);align-items:center}
.launch-kicker{margin:0 0 14px!important;color:#fff!important;font-size:clamp(1rem,1.4vw,1.16rem)!important;font-weight:700;letter-spacing:.01em}
.launch-copy h1{max-width:920px!important;line-height:1.02!important;letter-spacing:-.012em!important}
.launch-lead{max-width:680px!important;margin-top:24px!important;line-height:1.7!important}
.launch-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}
.launch-chips span{display:inline-flex;align-items:center;min-height:38px;padding:8px 13px;border:1px solid rgba(201,183,156,.24);border-radius:999px;background:#101012;color:rgba(250,250,251,.72);font-size:.76rem;font-weight:650}
.launch-form-card--clean{max-width:680px;margin-top:34px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:none!important;overflow:visible!important}
.launch-form-label{margin:0 0 11px;color:var(--adeo-stone);font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em}
.launch-form-card--clean .newsletter-form__row{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:10px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important}
.launch-form-card--clean .newsletter-form__row input{min-height:56px!important;width:100%;padding:0 17px!important;border:1px solid rgba(255,255,255,.13)!important;border-radius:14px!important;background:#111114!important;color:#fff!important;box-shadow:none!important}
.launch-form-card--clean .newsletter-form__row button{min-height:56px;padding:0 22px;border:0;border-radius:14px;background:#fff;color:#0a0a0b;font-weight:750;white-space:nowrap}
.launch-form-card--clean .newsletter-form__consent{margin-top:12px!important;color:rgba(250,250,251,.46)!important}
.launch-form-card--clean .newsletter-form__consent input{flex:0 0 auto!important;width:16px!important;height:16px!important;margin-top:2px!important;appearance:auto!important;box-shadow:none!important;background:transparent!important}
.launch-fineprint{margin:10px 0 0!important}
.launch-visual{position:relative;display:grid;place-items:center;min-height:520px}
.launch-visual__orbit{position:absolute;width:min(42vw,520px);aspect-ratio:1;border:1px solid rgba(201,183,156,.13);border-radius:50%;box-shadow:0 0 0 44px rgba(255,255,255,.012),0 0 0 88px rgba(255,255,255,.008);animation:adeo-launch-orbit 16s linear infinite}
.launch-visual__orbit:before{content:"";position:absolute;width:9px;height:9px;left:50%;top:-5px;border-radius:50%;background:#ff6b18;box-shadow:0 0 24px rgba(255,92,0,.65)}
@keyframes adeo-launch-orbit{to{rotate:360deg}}
.launch-card--premium{position:relative;z-index:2;width:min(100%,480px);padding:26px!important;border:1px solid rgba(255,255,255,.13)!important;border-radius:32px!important;background:linear-gradient(145deg,#151518,#0d0d0f)!important;box-shadow:0 34px 110px rgba(0,0,0,.48)!important}
.launch-card__status{display:inline-flex!important;margin:0 0 28px!important;padding:7px 10px;border:1px solid rgba(255,92,0,.28);border-radius:999px;background:rgba(255,92,0,.07);color:#ff8b47!important;font-size:.67rem!important;font-weight:800;letter-spacing:.14em}
.launch-card--premium img{width:100%;height:auto}
.launch-card__footer{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:24px;padding-top:18px;border-top:1px solid rgba(255,255,255,.08);color:rgba(250,250,251,.55);font-size:.78rem}
.launch-visual__note{position:absolute;right:2%;bottom:3%;margin:0;color:rgba(250,250,251,.34);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}

/* Services image crop for the premium editorial photo. */
.service-feature__visual--brand img{object-fit:cover!important;object-position:center 48%!important}

@media(max-width:859px){
  /* Opaque mobile menu: no content should bleed through. */
  .primary-nav,
  .primary-nav.is-open{
    background:linear-gradient(180deg,#151517,#0d0d0f)!important;
    border-color:rgba(255,255,255,.12)!important;
    box-shadow:0 28px 90px rgba(0,0,0,.72)!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  .primary-nav__list{grid-template-columns:1fr 1fr!important;gap:8px!important}
  .primary-nav__list li a,
  .primary-nav__list li.is-mobile-secondary a{
    min-height:54px!important;
    display:flex!important;
    align-items:center!important;
    padding:11px 12px!important;
    border:1px solid rgba(255,255,255,.08)!important;
    border-radius:15px!important;
    background:#19191c!important;
    color:rgba(250,250,251,.9)!important;
    font-size:.9rem!important;
    font-weight:650!important;
  }
  .primary-nav__list li.is-mobile-secondary a{color:rgba(250,250,251,.7)!important;background:#141416!important}
  body.menu-open .mobile-sticky-contact{opacity:0!important;transform:translateY(calc(100% + 30px))!important;pointer-events:none!important}

  .client-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .signal--hero{margin-top:24px!important}

  .launch-page--premium{padding-top:calc(var(--header) + 54px);padding-bottom:88px}
  .launch-shell--premium{grid-template-columns:1fr;gap:50px}
  .launch-copy h1{font-size:clamp(2.8rem,11.5vw,4.7rem)!important;line-height:1.045!important}
  .launch-lead{font-size:1rem!important}
  .launch-form-card--clean .newsletter-form__row{grid-template-columns:1fr!important}
  .launch-form-card--clean .newsletter-form__row button{width:100%}
  .launch-visual{min-height:420px;padding:12px 0 20px}
  .launch-visual__orbit{width:min(84vw,420px);opacity:.72}
  .launch-card--premium{width:min(86vw,420px);padding:22px!important}
  .launch-visual__note{right:6%;bottom:0}

  /* Keep the same Adeo Cards motion language on mobile. */
  .product-object{overflow:visible!important}
  .product-card{width:min(84vw,410px)!important}
}

@media(max-width:520px){
  .primary-nav{left:10px!important;right:10px!important;padding:10px!important}
  .primary-nav__list li a,.primary-nav__list li.is-mobile-secondary a{font-size:.84rem!important;padding-inline:10px!important}
  .signal--hero{width:100vw!important;margin-left:-50vw!important}
  .launch-page--premium{padding-top:calc(var(--header) + 38px)}
  .launch-chips{gap:6px}
  .launch-chips span{font-size:.7rem;min-height:34px;padding:7px 10px}
  .launch-form-card--clean{margin-top:28px!important}
  .launch-visual{min-height:360px}
  .launch-visual__orbit{width:82vw;box-shadow:0 0 0 28px rgba(255,255,255,.01)}
  .launch-card--premium{width:82vw;border-radius:26px!important}
  .launch-card__status{margin-bottom:22px!important}
}

@media(prefers-reduced-motion:reduce){
  .launch-visual__orbit{animation:none!important}
  [data-parallax-auto].parallax-ready{translate:0 0!important;transition:none!important}
  .product-card,.launch-card--premium{transition:none!important}
}
