/* Studio Céleste — V10: relief, glass and living constellations.
   The galaxy video remains the only photographic page background. */
:root{
  --electric:#9cedff;
  --electric-strong:#62dfff;
  --violet:#a79bff;
  --ink:#030816;
  --panel-deep:rgba(3,10,27,.82);
  --panel-soft:rgba(8,18,42,.68);
  --panel-line:rgba(147,230,255,.26);
  --panel-line-strong:rgba(172,239,255,.64);
  --pointer-x:50%;
  --pointer-y:50%;
}

html{scroll-padding-top:105px}
body{
  color:#edf6ff;
  letter-spacing:.002em;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

/* The supplied galaxy stays the one and only full-page visual backdrop. */
.galaxy-video{
  filter:saturate(1.12) contrast(1.06) brightness(.82);
  transform:scale(1.025);
  transform-origin:center;
  animation:galaxy-drift 32s ease-in-out infinite alternate;
}
@keyframes galaxy-drift{
  from{transform:scale(1.025) rotate(-.18deg)}
  to{transform:scale(1.07) rotate(.18deg)}
}

/* A transparent constellation layer sits above the video and under the content.
   It is intentionally not an image or a repeated logo. */
.constellation-sky{
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
  overflow:hidden;
  opacity:.48;
  mix-blend-mode:screen;
}
.constellation-sky svg{
  width:100%;
  height:100%;
  overflow:visible;
  animation:constellation-drift 26s ease-in-out infinite alternate;
}
.constellation-sky .constellation-path{
  fill:none;
  stroke:rgba(143,229,255,.5);
  stroke-width:1.25;
  stroke-linecap:round;
  stroke-dasharray:3 12;
  stroke-dashoffset:48;
  filter:drop-shadow(0 0 5px rgba(77,211,255,.55));
  animation:constellation-trace 15s linear infinite;
}
.constellation-sky .constellation-path.violet{stroke:rgba(184,165,255,.46);animation-delay:-6s}
.constellation-sky .constellation-star{
  fill:#d9faff;
  filter:drop-shadow(0 0 7px #78dcff);
  transform-box:fill-box;
  transform-origin:center;
  animation:constellation-twinkle 4.6s ease-in-out infinite;
}
.constellation-sky .constellation-star:nth-of-type(2n){animation-delay:-1.8s}
.constellation-sky .constellation-star:nth-of-type(3n){animation-delay:-3.1s}
@keyframes constellation-drift{to{transform:translate3d(1.1%,-.8%,0) scale(1.025)}}
@keyframes constellation-trace{to{stroke-dashoffset:-120}}
@keyframes constellation-twinkle{50%{opacity:.32;transform:scale(.65)}}
body>main,body>header,body>footer{position:relative;z-index:1}

/* Typography: luminous relief without the heavy multiple hard shadows. */
h1,h2,h3,.hero h1{
  color:#f5fbff;
  text-shadow:0 1px 0 rgba(174,238,255,.38),0 3px 11px rgba(0,0,0,.72),0 0 24px rgba(91,211,255,.18);
}
.hero h1,.pricing-heading h1{
  letter-spacing:-.045em;
  background:linear-gradient(110deg,#fff 7%,#dffbff 43%,#a4e9ff 68%,#c3b4ff 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  text-shadow:0 2px 0 rgba(87,154,181,.42),0 16px 36px rgba(0,0,0,.52),0 0 28px rgba(91,211,255,.26);
}
.hero h1 span{background:none!important;-webkit-text-fill-color:#c7f3ff;color:#c7f3ff;text-shadow:0 1px 0 #3e7e9d,0 0 24px rgba(123,223,255,.4)}
.eyebrow{
  display:flex;
  align-items:center;
  gap:9px;
  color:#b9f3ff;
  text-shadow:0 0 15px rgba(104,225,255,.46);
}
.eyebrow::before{
  content:"";
  display:inline-block;
  width:7px;
  height:7px;
  border-radius:99px;
  background:#bff7ff;
  box-shadow:0 0 0 4px rgba(111,221,255,.1),0 0 17px #75e5ff;
  animation:signal-pulse 2.8s ease-in-out infinite;
}
@keyframes signal-pulse{50%{transform:scale(.66);opacity:.52}}
.lead,.local,.intro,.copy p,.about p,.contact p,.service p,.aud p,.note,.journey-copy,.agent-card small,.footer,.links{color:#d9e7f7}

/* Navigation as a glass rail, not a floating rectangle. */
.nav{
  overflow:visible;
  background:linear-gradient(100deg,rgba(2,7,19,.88),rgba(7,16,38,.7) 48%,rgba(3,8,23,.86));
  border-bottom-color:rgba(143,224,255,.2);
  box-shadow:0 12px 42px rgba(0,0,0,.34),inset 0 -1px rgba(255,255,255,.04);
}
.nav::before{
  content:"";
  position:absolute;
  inset:0;
  opacity:.75;
  pointer-events:none;
  background:radial-gradient(440px 70px at 23% 0,rgba(104,219,255,.16),transparent 68%),radial-gradient(340px 58px at 84% 100%,rgba(164,135,255,.14),transparent 72%);
  animation:nav-lights 11s ease-in-out infinite alternate;
}
.nav::after{
  content:"";
  position:absolute;
  right:6vw;
  bottom:-1px;
  left:6vw;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(139,236,255,.05),rgba(183,169,255,.88),rgba(139,236,255,.05),transparent);
  box-shadow:0 0 18px rgba(124,224,255,.72);
}
.navin{position:relative}
@keyframes nav-lights{to{transform:translateX(5%)}}
.site-brand{transition:filter .28s ease,transform .28s ease}
.site-brand:hover{filter:drop-shadow(0 0 14px rgba(136,231,255,.72));transform:translateY(-1px)}
.brand-mark{box-shadow:0 0 20px rgba(101,221,255,.12);transition:transform .55s cubic-bezier(.2,.8,.2,1)}
.site-brand:hover .brand-mark{transform:rotate(10deg) scale(1.06)}
.links>a:not(.btn){
  position:relative;
  padding:8px 1px;
  color:#d4e5f3;
  transition:color .22s ease,text-shadow .22s ease;
}
.links>a:not(.btn)::after{
  content:"";
  position:absolute;
  bottom:2px;
  left:9%;
  width:82%;
  height:1px;
  transform:scaleX(0);
  transform-origin:left;
  background:linear-gradient(90deg,transparent,#aaf2ff,transparent);
  box-shadow:0 0 10px #8fe9ff;
  transition:transform .24s ease;
}
.links>a:not(.btn):hover,.links>a:not(.btn)[aria-current=page]{color:#f4fcff;text-shadow:0 0 16px rgba(131,224,255,.6)}
.links>a:not(.btn):hover::after,.links>a:not(.btn)[aria-current=page]::after{transform:scaleX(1)}

/* Orbital controls: translucent by default, tactile and bright only on intent. */
.btn,.motion-toggle,.price-nav a,.legal-tabs a,.retour{
  --glow-x:50%;
  --glow-y:50%;
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border-color:rgba(143,228,255,.4)!important;
  color:#ecf9ff;
  background:radial-gradient(110px circle at var(--glow-x) var(--glow-y),rgba(129,228,255,.26),transparent 64%),linear-gradient(135deg,rgba(37,102,144,.37),rgba(11,23,52,.72))!important;
  box-shadow:inset 0 1px rgba(255,255,255,.14),inset 0 -10px 22px rgba(0,0,0,.16),0 8px 24px rgba(0,0,0,.2),0 0 0 1px rgba(157,238,255,.04);
  transition:transform .22s cubic-bezier(.2,.8,.2,1),border-color .22s ease,box-shadow .22s ease,filter .22s ease;
}
.btn::before,.motion-toggle::before,.price-nav a::before,.legal-tabs a::before,.retour::before{
  content:"";
  position:absolute;
  inset:-1px;
  z-index:-1;
  opacity:0;
  background:linear-gradient(115deg,transparent 22%,rgba(204,249,255,.75) 46%,transparent 67%);
  transform:translateX(-75%);
  transition:opacity .25s ease,transform .65s ease;
}
.btn.primary{
  color:#031423;
  border-color:rgba(216,251,255,.88)!important;
  background:radial-gradient(140px circle at var(--glow-x) var(--glow-y),rgba(255,255,255,.78),transparent 62%),linear-gradient(125deg,#a7f2ff,#70d9ff 48%,#93a6ff)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.9),inset 0 -12px 22px rgba(19,114,173,.24),0 14px 32px rgba(74,201,255,.27),0 0 25px rgba(129,222,255,.15);
}
@media (hover:hover) and (pointer:fine){
  .btn:hover,.motion-toggle:hover,.price-nav a:hover,.legal-tabs a:hover,.retour:hover{
    color:#fff;
    border-color:var(--panel-line-strong)!important;
    box-shadow:inset 0 1px rgba(255,255,255,.22),0 13px 30px rgba(0,0,0,.34),0 0 28px rgba(103,221,255,.27);
  }
  .btn:hover::before,.motion-toggle:hover::before,.price-nav a:hover::before,.legal-tabs a:hover::before,.retour:hover::before{opacity:.76;transform:translateX(78%)}
  .btn.primary:hover{color:#02101c;filter:saturate(1.08) brightness(1.04);box-shadow:inset 0 1px #fff,0 18px 36px rgba(72,211,255,.42),0 0 37px rgba(148,170,255,.3)}
}
.btn:active,.motion-toggle:active,.price-nav a:active,.legal-tabs a:active,.retour:active{transform:translateY(1px) scale(.985)!important}

/* Local reading surfaces: transparent enough for the galaxy, dark enough for every word. */
.glass,.hero-grid>div:first-child,.head,.copy,.about>div:last-child,.pricing-heading,.pricing-intro,.price-card,.legal-panel{
  --glow-x:50%;
  --glow-y:45%;
  position:relative;
  isolation:isolate;
  border-color:var(--panel-line)!important;
  background:radial-gradient(500px circle at var(--glow-x) var(--glow-y),rgba(75,179,232,.13),transparent 55%),linear-gradient(138deg,rgba(11,26,55,.86),rgba(3,10,27,.78))!important;
  box-shadow:inset 0 1px rgba(232,251,255,.1),inset 0 -22px 38px rgba(0,0,0,.14),0 28px 66px rgba(0,0,0,.38),0 0 0 1px rgba(135,229,255,.035);
  backdrop-filter:blur(15px) saturate(120%);
}
.hero-grid>div:first-child,.head,.copy,.about>div:last-child{border:1px solid rgba(165,223,255,.2)}
.glass::after,.hero-grid>div:first-child::after,.head::after,.copy::after,.about>div:last-child::after,.pricing-heading::after,.price-card::after,.legal-panel::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
  background:linear-gradient(125deg,rgba(255,255,255,.1),transparent 18% 73%,rgba(144,224,255,.08));
  mask-image:linear-gradient(#000,transparent 64%);
}
.service,.aud,.agent-card,.gallery-frame,.price-card{transform-style:preserve-3d}
.service,.aud{
  background:radial-gradient(390px circle at var(--glow-x,50%) var(--glow-y,45%),rgba(98,208,255,.18),transparent 58%),linear-gradient(145deg,rgba(11,27,56,.83),rgba(4,11,28,.73))!important;
}
.service .num,.aud .ico,.price-badge{position:relative;text-shadow:0 0 18px rgba(116,224,255,.45)}
.service h3,.aud h3{position:relative}
.tag{
  color:#d9f6ff;
  border-color:rgba(137,226,255,.28);
  background:linear-gradient(135deg,rgba(74,176,221,.14),rgba(93,84,194,.15));
  box-shadow:inset 0 1px rgba(255,255,255,.07);
}
.head{margin-bottom:48px}
.head,.copy{border-radius:28px}
.pricing-heading,.price-card,.pricing-intro,.price-details{
  border-color:rgba(143,228,255,.28)!important;
}
.pricing-heading{overflow:hidden}
.pricing-heading::before{
  content:"";
  position:absolute;
  width:440px;
  height:440px;
  right:-175px;
  bottom:-280px;
  border:1px solid rgba(146,227,255,.19);
  border-radius:50%;
  box-shadow:0 0 0 32px rgba(93,177,255,.025),0 0 0 70px rgba(120,98,255,.02);
  transform:rotateX(68deg);
  animation:orbital-sweep 17s linear infinite;
}
@keyframes orbital-sweep{to{transform:rotateX(68deg) rotateZ(360deg)}}
.plan-guide p{
  position:relative;
  background:linear-gradient(145deg,rgba(18,47,80,.68),rgba(4,12,31,.7))!important;
  border-color:rgba(143,228,255,.23)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.09),0 14px 25px rgba(0,0,0,.2);
}
.price-notice{background:linear-gradient(130deg,rgba(53,50,60,.79),rgba(18,27,48,.84))!important;border-color:rgba(247,213,140,.44)!important}
.price-card.recommended{
  background:radial-gradient(420px circle at var(--glow-x,50%) var(--glow-y,45%),rgba(118,222,255,.22),transparent 59%),linear-gradient(145deg,rgba(18,53,79,.9),rgba(7,16,39,.83))!important;
  border-color:rgba(155,237,255,.74)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.2),0 26px 58px rgba(0,0,0,.34),0 0 36px rgba(92,211,255,.13)!important;
}
.price-badge{background:linear-gradient(135deg,#d9f9ff,#9ce9ff)!important;box-shadow:0 8px 20px rgba(94,209,255,.24)}

/* 3D interaction is limited to intentional desktop pointer input. */
@media (hover:hover) and (pointer:fine){
  .depth-card.is-tilting{
    will-change:transform;
    transform:perspective(950px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translate3d(0,var(--depth-lift,-5px),10px)!important;
    transition:transform .13s ease-out,border-color .2s ease,box-shadow .22s ease!important;
    border-color:var(--panel-line-strong)!important;
    box-shadow:inset 0 1px rgba(255,255,255,.19),0 31px 68px rgba(0,0,0,.44),0 0 32px rgba(102,221,255,.2)!important;
  }
  .magnetic-control.is-tilting{
    will-change:transform;
    transform:translate3d(var(--move-x,0px),var(--move-y,-2px),0)!important;
  }
  .hero-showcase.is-tilting{
    will-change:transform;
    transform:perspective(1250px) rotateX(var(--tilt-x,0deg)) rotateY(calc(-3deg + var(--tilt-y,0deg))) translate3d(0,-3px,13px)!important;
  }
}
.depth-card:focus-visible,.magnetic-control:focus-visible{border-color:var(--panel-line-strong)!important;box-shadow:0 0 0 3px rgba(136,232,255,.2),0 0 28px rgba(98,219,255,.24)!important}

/* The hero becomes a lit display with actual depth, while keeping the solar video clear. */
.hero-showcase{
  isolation:isolate;
  overflow:visible;
  border-color:rgba(156,234,255,.62)!important;
  border-radius:32px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.1),0 36px 86px rgba(0,0,0,.66),0 0 66px rgba(64,200,255,.18)!important;
  transition:transform .18s ease-out,box-shadow .25s ease,border-color .25s ease;
}
.hero-showcase::before{
  content:"";
  position:absolute;
  z-index:0;
  inset:-11%;
  border-radius:50%;
  border:1px solid rgba(116,223,255,.38);
  transform:rotateX(69deg) rotateZ(-18deg);
  box-shadow:0 0 0 33px rgba(77,184,255,.035),0 0 0 72px rgba(135,104,255,.025),0 0 46px rgba(73,198,255,.23);
  animation:hero-orbit 19s linear infinite;
}
.hero-showcase::after{
  content:"";
  position:absolute;
  z-index:3;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
  box-shadow:inset 1px 1px rgba(255,255,255,.34),inset -18px -24px 36px rgba(3,10,29,.27);
  background:linear-gradient(126deg,rgba(204,250,255,.14),transparent 18% 72%,rgba(118,104,255,.13));
}
.hero-showcase video{position:relative;z-index:1;border-radius:inherit;transform:translateZ(1px)}
@keyframes hero-orbit{to{transform:rotateX(69deg) rotateZ(342deg)}}
.hero-constellation{
  position:absolute;
  z-index:2;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  overflow:hidden;
  opacity:.9;
}
.hero-constellation i{position:absolute;display:block}
.hero-constellation .orbit-track{width:47%;height:31%;border:1px solid rgba(160,238,255,.42);border-radius:50%;transform:rotate(-24deg);animation:hero-track 9s ease-in-out infinite alternate}
.hero-constellation .orbit-track.one{left:-13%;top:7%}
.hero-constellation .orbit-track.two{right:-11%;bottom:4%;border-color:rgba(190,167,255,.33);animation-delay:-4s}
.hero-constellation .orbit-star{width:5px;height:5px;border-radius:50%;background:#e3fbff;box-shadow:0 0 13px #95ecff;animation:hero-star 3.8s ease-in-out infinite}
.hero-constellation .s1{top:18%;right:16%}.hero-constellation .s2{top:76%;left:12%;animation-delay:-1.8s}.hero-constellation .s3{top:28%;left:24%;animation-delay:-2.7s}
@keyframes hero-track{to{transform:rotate(-7deg) scale(1.1)}}
@keyframes hero-star{50%{transform:scale(.45);opacity:.3}}

/* App screens become small interactive consoles, with their own visual accents. */
.game-gallery{--game-accent:rgba(112,225,255,.54)}
.app:nth-of-type(1) .game-gallery{--game-accent:rgba(206,115,255,.66)}
.app:nth-of-type(2) .game-gallery{--game-accent:rgba(68,232,207,.58)}
.app:nth-of-type(3) .game-gallery{--game-accent:rgba(246,199,109,.63)}
.gallery-frame{
  position:relative;
  background:radial-gradient(420px circle at var(--glow-x,50%) var(--glow-y,45%),var(--game-accent),transparent 58%),#050b1b!important;
  border-color:color-mix(in srgb,var(--game-accent) 55%,#c2f6ff 45%)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.15),0 30px 68px rgba(0,0,0,.56),0 0 25px var(--game-accent)!important;
}
.gallery-frame::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(118deg,rgba(255,255,255,.16),transparent 18% 77%,var(--game-accent));
  mix-blend-mode:screen;
  opacity:.45;
}
.gallery-frame img{transition:opacity .22s ease,filter .22s ease,transform .32s ease}
.gallery-frame img.screen-switch{animation:screen-switch .42s cubic-bezier(.2,.8,.2,1)}
@keyframes screen-switch{0%{opacity:.22;transform:translateX(12px) scale(.985);filter:brightness(1.3)}100%{opacity:1;transform:none;filter:none}}
.gallery-controls button{
  position:relative;
  min-width:46px;
  min-height:44px;
  color:#e9f8ff;
  border-color:rgba(154,230,255,.38)!important;
  background:linear-gradient(145deg,rgba(22,51,83,.82),rgba(5,14,31,.9))!important;
  box-shadow:inset 0 1px rgba(255,255,255,.08),0 7px 16px rgba(0,0,0,.23);
  transition:transform .18s ease,filter .18s ease,box-shadow .18s ease;
}
.gallery-controls button[aria-pressed=true]{color:#071124!important;background:linear-gradient(135deg,#e3fbff,#9beaff)!important;border-color:#fff!important;box-shadow:0 0 19px var(--game-accent),inset 0 1px #fff}

/* Agents: two readable roles and an animation that feels like a command center. */
@media(min-width:880px){
  .agents-layout{grid-template-columns:minmax(310px,.77fr) minmax(0,1.23fr);align-items:start;gap:clamp(28px,4vw,58px)}
  .agent-duo{grid-template-columns:1fr;gap:18px;max-width:none}
  .agent-card{display:grid;grid-template-columns:142px 1fr;align-items:stretch;min-height:155px}
  .agent-card img{height:154px;aspect-ratio:auto;align-self:end}
  .agent-card figcaption{align-self:stretch;display:flex;flex-direction:column;justify-content:center}
}
.agent-card{
  --agent-glow:rgba(116,222,255,.16);
  cursor:pointer;
  background:radial-gradient(300px circle at var(--glow-x,50%) var(--glow-y,45%),var(--agent-glow),transparent 62%),linear-gradient(145deg,rgba(15,36,70,.9),rgba(3,10,27,.88))!important;
  border-color:rgba(143,228,255,.3)!important;
}
.agent-card:nth-child(2){--agent-glow:rgba(166,145,255,.22)}
.agent-card::before{content:"";position:absolute;top:15px;right:15px;width:9px;height:9px;border-radius:50%;background:#9beeff;box-shadow:0 0 0 4px rgba(119,224,255,.1),0 0 15px #83e8ff;opacity:.35;transition:opacity .2s ease,transform .2s ease}
.agent-card.is-active{border-color:#c6f5ff!important;box-shadow:inset 0 1px rgba(255,255,255,.22),0 22px 52px rgba(0,0,0,.48),0 0 31px var(--agent-glow)!important}
.agent-card.is-active::before{opacity:1;transform:scale(1.14);animation:agent-online 2.2s ease-in-out infinite}
@keyframes agent-online{50%{box-shadow:0 0 0 7px transparent,0 0 21px #8deeff}}
.journey{position:relative;border-color:rgba(156,234,255,.42)!important;box-shadow:inset 0 1px rgba(255,255,255,.12),0 30px 70px rgba(0,0,0,.56),0 0 32px rgba(85,204,255,.1)!important}
.journey-open{position:relative;overflow:hidden}
.journey-open::after{content:"▶";position:absolute;left:50%;top:50%;width:58px;height:58px;display:grid;place-items:center;border-radius:50%;transform:translate(-50%,-50%) scale(.92);color:#061323;background:rgba(218,250,255,.91);box-shadow:0 0 0 7px rgba(152,229,255,.15),0 0 30px rgba(111,221,255,.72);opacity:0;transition:opacity .2s ease,transform .2s ease}
.journey-open:hover::after,.journey-open:focus-visible::after{opacity:1;transform:translate(-50%,-50%) scale(1)}
.journey-open span{position:absolute;right:16px;bottom:16px;border:1px solid rgba(194,246,255,.52);border-radius:999px;background:rgba(5,14,32,.74);backdrop-filter:blur(8px);box-shadow:0 8px 22px rgba(0,0,0,.3);padding:9px 13px!important;z-index:4}
.agent-flow-text li{position:relative;transition:color .24s ease,opacity .24s ease,text-shadow .24s ease}
html[data-agent-focus=marie] .agent-flow-text li[data-owner=marie],html[data-agent-focus=lucas] .agent-flow-text li[data-owner=lucas]{color:#f0fcff;text-shadow:0 0 16px rgba(117,225,255,.62)}
html[data-agent-focus=marie] .agent-flow-text li[data-owner=lucas],html[data-agent-focus=lucas] .agent-flow-text li[data-owner=marie]{opacity:.52}

/* Prices: a small mission rail, still crystal clear. */
.price-nav{
  position:sticky;
  top:91px;
  z-index:7;
  padding:10px;
  margin-top:26px!important;
  border:1px solid rgba(151,230,255,.2);
  border-radius:999px;
  background:rgba(4,12,30,.75);
  box-shadow:0 16px 30px rgba(0,0,0,.23);
  backdrop-filter:blur(14px);
}
.price-nav a{display:inline-flex;align-items:center;min-height:38px}
.pricing-section{position:relative}
.pricing-section::before{content:"";position:absolute;left:-20px;top:55px;bottom:-55px;width:1px;background:linear-gradient(transparent,rgba(129,224,255,.34) 16%,rgba(170,139,255,.27) 76%,transparent);box-shadow:0 0 10px rgba(95,214,255,.35)}
.pricing-section::after{content:"";position:absolute;left:-25px;top:53px;width:11px;height:11px;border-radius:50%;background:#9beeff;box-shadow:0 0 0 5px rgba(102,213,255,.1),0 0 17px #74dcff}
.price-details{background:linear-gradient(145deg,rgba(8,24,49,.86),rgba(3,10,28,.85))!important;box-shadow:inset 0 1px rgba(255,255,255,.1),0 20px 44px rgba(0,0,0,.34)}

/* Accessible mobile navigation and compact touch targets. */
.nav-toggle{display:none}
.mobile-orbit-menu{display:none}
@media(max-width:950px){
  .nav.menu-ready .links{display:none}
  .nav-toggle{
    display:grid;
    width:44px;
    height:44px;
    place-content:center;
    gap:4px;
    padding:0;
    border:1px solid rgba(159,233,255,.48);
    border-radius:50%;
    color:#eaffff;
    background:radial-gradient(circle at 38% 28%,rgba(152,237,255,.36),transparent 39%),rgba(7,19,44,.86);
    box-shadow:inset 0 1px rgba(255,255,255,.16),0 10px 22px rgba(0,0,0,.32),0 0 20px rgba(104,222,255,.12);
  }
  .nav-toggle span{display:block;width:17px;height:1.5px;background:currentColor;border-radius:99px;transition:transform .2s ease,opacity .2s ease}
  .nav-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(5.5px) rotate(45deg)}
  .nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
  .nav-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-5.5px) rotate(-45deg)}
  .mobile-orbit-menu{
    position:fixed;
    z-index:19;
    top:76px;
    right:14px;
    left:14px;
    display:grid;
    gap:7px;
    padding:13px;
    border:1px solid rgba(157,232,255,.35);
    border-radius:25px;
    background:linear-gradient(145deg,rgba(8,21,49,.94),rgba(3,10,27,.94));
    box-shadow:inset 0 1px rgba(255,255,255,.12),0 26px 58px rgba(0,0,0,.54),0 0 35px rgba(84,207,255,.16);
    backdrop-filter:blur(22px);
    opacity:0;
    pointer-events:none;
    transform:translateY(-12px) scale(.985);
    transition:opacity .22s ease,transform .22s ease;
  }
  .mobile-orbit-menu[data-open=true]{opacity:1;pointer-events:auto;transform:none}
  .mobile-orbit-menu a{min-height:47px;display:flex;align-items:center;padding:11px 14px;border:1px solid rgba(151,229,255,.15);border-radius:15px;color:#e7f6ff;background:rgba(68,145,197,.08);font-weight:700;text-decoration:none}
  .mobile-orbit-menu a:last-child{justify-content:center;margin-top:3px;border-color:rgba(155,231,255,.55);background:linear-gradient(135deg,rgba(107,220,255,.84),rgba(143,150,255,.83));color:#041120}
  .head,.copy,.about>div:last-child{padding:clamp(18px,5vw,25px)}
  .price-nav{top:79px;border-radius:22px;padding:8px;gap:7px}.price-nav a{min-height:44px}.pricing-section::before,.pricing-section::after{display:none}
  .pricing-section{padding-left:0}
}

@media(max-width:650px){
  .galaxy-video{opacity:.72;animation-duration:38s}
  h1,h2,h3,.hero h1{text-shadow:0 1px 0 rgba(174,238,255,.32),0 3px 12px rgba(0,0,0,.72),0 0 16px rgba(91,211,255,.16)}
  .hero h1,.pricing-heading h1{text-shadow:0 1px 0 rgba(87,154,181,.38),0 10px 23px rgba(0,0,0,.55),0 0 20px rgba(91,211,255,.22)}
  .hero-showcase{border-radius:23px;overflow:hidden}.hero-showcase::before{inset:-16%}
  .hero-constellation .orbit-track{opacity:.55}
  .glass,.hero-grid>div:first-child,.head,.copy,.about>div:last-child,.pricing-heading,.pricing-intro,.price-card,.legal-panel{backdrop-filter:blur(10px) saturate(112%)}
  .agent-duo{gap:15px}.agent-card figcaption{padding:13px 15px}.agent-card small{font-size:.78rem}.journey-open span{right:10px;bottom:10px;font-size:.76rem;padding:8px 10px!important}
  .gallery-frame img,.gallery-frame.portrait img{height:min(420px,calc((100vw - 40px) * 1.35))!important}
  .motion-toggle,.legal-tabs a,.retour{min-height:44px;display:inline-flex;align-items:center;justify-content:center}
  .motion-fixed{display:none!important}
  .constellation-sky{opacity:.3}
}
@media(max-width:460px){
  .agent-duo{grid-template-columns:1fr}.agent-card{max-width:330px;margin-inline:auto;width:100%}
  .agent-dialog{width:100vw!important;max-width:none!important;min-height:100dvh;max-height:100dvh!important;margin:0;border-radius:0!important;border-inline:0!important;padding:18px!important}
  .dialog-top{position:sticky;top:-18px;z-index:3;padding:10px 0;background:#071020}
  .agent-dialog .dialog-media{margin-inline:-6px}.agent-dialog video{min-height:auto}
}
@media(max-width:380px){.navin{gap:5px}.brand-name{max-width:130px}.nav-toggle{width:41px;height:41px}.mobile-orbit-menu{top:70px}}

/* V10.1: motion stays on by default; visitors can pause it with the visible control. */
html[data-motion=paused] .galaxy-video,html[data-motion=paused] .constellation-sky *,html[data-motion=paused] .eyebrow::before,html[data-motion=paused] .pricing-heading::before,html[data-motion=paused] .hero-showcase::before,html[data-motion=paused] .hero-constellation *,html[data-motion=paused] .agent-card.is-active::before{animation-play-state:paused!important}

/* V10.2 — Nebula glass: panels borrow the galaxy instead of covering it. */
.glass,.hero-grid>div:first-child,.head,.copy,.about>div:last-child,.pricing-heading,.pricing-intro,.price-card,.legal-panel{
  border-color:rgba(168,233,255,.18)!important;
  background:
    radial-gradient(560px circle at var(--glow-x,50%) var(--glow-y,45%),rgba(85,192,239,.15),transparent 56%),
    linear-gradient(138deg,rgba(8,23,52,.61),rgba(3,10,27,.43))!important;
  box-shadow:inset 0 1px rgba(232,251,255,.12),inset 0 -18px 34px rgba(0,0,0,.10),0 20px 50px rgba(0,0,0,.22),0 0 40px rgba(83,202,255,.06)!important;
  backdrop-filter:blur(8px) saturate(112%);
}
.glass::after,.hero-grid>div:first-child::after,.head::after,.copy::after,.about>div:last-child::after,.pricing-heading::after,.price-card::after,.legal-panel::after{
  opacity:.64;
  background:linear-gradient(125deg,rgba(255,255,255,.12),transparent 19% 73%,rgba(144,224,255,.05));
}
.service,.aud{
  border-color:rgba(159,230,255,.16)!important;
  background:
    radial-gradient(390px circle at var(--glow-x,50%) var(--glow-y,45%),rgba(98,208,255,.16),transparent 59%),
    linear-gradient(145deg,rgba(11,27,56,.57),rgba(4,11,28,.44))!important;
  box-shadow:inset 0 1px rgba(255,255,255,.11),0 18px 42px rgba(0,0,0,.21),0 0 31px rgba(78,200,255,.045)!important;
}
.agent-card{
  border-color:rgba(161,230,255,.22)!important;
  background:
    radial-gradient(300px circle at var(--glow-x,50%) var(--glow-y,45%),var(--agent-glow),transparent 66%),
    linear-gradient(145deg,rgba(15,36,70,.63),rgba(3,10,27,.51))!important;
  box-shadow:inset 0 1px rgba(255,255,255,.12),0 18px 42px rgba(0,0,0,.22)!important;
}
.journey{
  border-color:rgba(164,234,255,.24)!important;
  background:linear-gradient(145deg,rgba(11,30,60,.48),rgba(3,10,27,.35))!important;
  box-shadow:inset 0 1px rgba(255,255,255,.12),0 22px 55px rgba(0,0,0,.27),0 0 35px rgba(85,204,255,.07)!important;
}
.gallery-frame{
  background:
    radial-gradient(420px circle at var(--glow-x,50%) var(--glow-y,45%),var(--game-accent),transparent 61%),
    rgba(4,12,29,.48)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.14),0 22px 56px rgba(0,0,0,.31),0 0 25px color-mix(in srgb,var(--game-accent) 38%,transparent)!important;
}
.phone{border-color:rgba(7,15,31,.73);box-shadow:0 28px 62px rgba(0,0,0,.43),0 0 27px rgba(84,199,255,.06)}
.lead,.local,.intro,.copy p,.about p,.contact p,.service p,.aud p,.note,.journey-copy,.agent-card small,.footer,.links{color:#e4f0fa}

/* V10.3 — near-clear nebula glass, with readability carried by typography. */
.glass,.hero-grid>div:first-child,.head,.copy,.about>div:last-child,.pricing-heading,.pricing-intro,.price-card,.legal-panel{
  border-color:rgba(177,239,255,.12)!important;
  background:
    radial-gradient(620px circle at var(--glow-x,50%) var(--glow-y,45%),rgba(103,199,241,.12),transparent 57%),
    linear-gradient(138deg,rgba(7,21,49,.43),rgba(3,10,27,.24))!important;
  box-shadow:inset 0 1px rgba(232,251,255,.10),inset 0 -15px 30px rgba(0,0,0,.07),0 16px 40px rgba(0,0,0,.15),0 0 32px rgba(83,202,255,.04)!important;
  backdrop-filter:blur(4px) saturate(108%);
}
.service,.aud{
  border-color:rgba(177,239,255,.11)!important;
  background:
    radial-gradient(430px circle at var(--glow-x,50%) var(--glow-y,45%),rgba(91,201,244,.14),transparent 61%),
    linear-gradient(145deg,rgba(10,27,57,.40),rgba(4,11,28,.27))!important;
  box-shadow:inset 0 1px rgba(255,255,255,.09),0 14px 34px rgba(0,0,0,.15)!important;
}
.agent-card{
  border-color:rgba(177,239,255,.15)!important;
  background:
    radial-gradient(330px circle at var(--glow-x,50%) var(--glow-y,45%),var(--agent-glow),transparent 70%),
    linear-gradient(145deg,rgba(14,35,68,.46),rgba(3,10,27,.33))!important;
  box-shadow:inset 0 1px rgba(255,255,255,.11),0 15px 36px rgba(0,0,0,.16)!important;
}
.journey{
  border-color:rgba(177,239,255,.17)!important;
  background:linear-gradient(145deg,rgba(10,30,60,.33),rgba(3,10,27,.20))!important;
  box-shadow:inset 0 1px rgba(255,255,255,.11),0 17px 42px rgba(0,0,0,.19),0 0 26px rgba(85,204,255,.05)!important;
}
.gallery-frame{
  background:
    radial-gradient(440px circle at var(--glow-x,50%) var(--glow-y,45%),var(--game-accent),transparent 65%),
    rgba(4,12,29,.28)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.12),0 18px 43px rgba(0,0,0,.23),0 0 22px color-mix(in srgb,var(--game-accent) 29%,transparent)!important;
}
.hero h1,.pricing-heading h1{ text-shadow:0 2px 0 rgba(87,154,181,.48),0 13px 30px rgba(0,0,0,.74),0 0 26px rgba(91,211,255,.30) }
.lead,.local,.intro,.copy p,.about p,.contact p,.service p,.aud p,.note,.journey-copy,.agent-card small{ text-shadow:0 2px 10px rgba(0,0,0,.78) }


/* V10.4 — clear plexiglas: the galaxy stays visible, only the lettering keeps a subtle anchor. */
.glass,.hero-grid>div:first-child,.head,.copy,.about>div:last-child,.pricing-heading,.pricing-intro,.price-card,.legal-panel{
  border-color:rgba(187,243,255,.20)!important;
  background:
    radial-gradient(760px circle at var(--glow-x,50%) var(--glow-y,45%),rgba(126,218,255,.10),transparent 58%),
    linear-gradient(138deg,rgba(8,22,49,.24),rgba(3,10,27,.10))!important;
  box-shadow:inset 0 1px rgba(248,255,255,.30),inset 0 -1px rgba(112,210,255,.14),0 13px 34px rgba(0,0,0,.12),0 0 24px rgba(90,215,255,.10)!important;
  backdrop-filter:blur(2.5px) saturate(112%);
}
.glass::after,.hero-grid>div:first-child::after,.head::after,.copy::after,.about>div:last-child::after,.pricing-heading::after,.price-card::after,.legal-panel::after{
  opacity:.92;
  background:linear-gradient(119deg,rgba(255,255,255,.20),rgba(215,250,255,.06) 13%,transparent 31% 70%,rgba(126,216,255,.08) 92%,rgba(255,255,255,.13));
}
.service,.aud{
  border-color:rgba(190,242,255,.17)!important;
  background:
    radial-gradient(450px circle at var(--glow-x,50%) var(--glow-y,45%),rgba(119,222,255,.12),transparent 63%),
    linear-gradient(145deg,rgba(10,27,57,.23),rgba(4,11,28,.13))!important;
  box-shadow:inset 0 1px rgba(255,255,255,.22),inset 0 -1px rgba(121,225,255,.11),0 12px 29px rgba(0,0,0,.11),0 0 21px rgba(78,208,255,.07)!important;
  backdrop-filter:blur(2px) saturate(110%);
}
.agent-card{
  border-color:rgba(193,243,255,.21)!important;
  background:
    radial-gradient(340px circle at var(--glow-x,50%) var(--glow-y,45%),var(--agent-glow),transparent 72%),
    linear-gradient(145deg,rgba(14,35,68,.28),rgba(3,10,27,.16))!important;
  box-shadow:inset 0 1px rgba(255,255,255,.24),0 13px 31px rgba(0,0,0,.13),0 0 24px rgba(83,202,255,.08)!important;
  backdrop-filter:blur(2px) saturate(112%);
}
.journey{
  border-color:rgba(195,245,255,.22)!important;
  background:linear-gradient(145deg,rgba(10,30,60,.20),rgba(3,10,27,.11))!important;
  box-shadow:inset 0 1px rgba(255,255,255,.25),inset 0 -1px rgba(94,207,255,.12),0 14px 35px rgba(0,0,0,.14),0 0 28px rgba(85,204,255,.10)!important;
  backdrop-filter:blur(2px) saturate(112%);
}
.gallery-frame{
  background:
    radial-gradient(440px circle at var(--glow-x,50%) var(--glow-y,45%),var(--game-accent),transparent 66%),
    rgba(4,12,29,.17)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.24),inset 0 -1px rgba(120,225,255,.09),0 16px 37px rgba(0,0,0,.17),0 0 24px color-mix(in srgb,var(--game-accent) 33%,transparent)!important;
  backdrop-filter:blur(2px) saturate(110%);
}
/* HERO: brighter orbital layers, with Earth replacing the former generic centre sphere. */
.hero-showcase{
  overflow:visible;
  border-color:rgba(187,243,255,.46)!important;
  background:linear-gradient(145deg,rgba(5,16,40,.10),rgba(1,7,20,.04))!important;
  box-shadow:inset 0 1px rgba(255,255,255,.36),inset 0 -1px rgba(122,220,255,.18),0 26px 62px rgba(0,0,0,.28),0 0 46px rgba(64,208,255,.16)!important;
}
.hero-showcase::after{background:linear-gradient(123deg,rgba(236,255,255,.20),transparent 18% 73%,rgba(126,142,255,.11));box-shadow:inset 1px 1px rgba(255,255,255,.46),inset -12px -18px 28px rgba(3,10,29,.15)}
.hero-constellation{z-index:4;opacity:1;overflow:visible;mix-blend-mode:screen}
.hero-constellation .orbit-track{border-width:1.6px;border-color:rgba(181,245,255,.72);box-shadow:0 0 11px rgba(104,226,255,.32),inset 0 0 10px rgba(91,203,255,.12);animation-duration:7s}
.hero-constellation .orbit-track.one{left:-10%;top:5%;width:54%;height:35%}
.hero-constellation .orbit-track.two{right:-7%;bottom:1%;width:54%;height:36%;border-color:rgba(220,188,255,.62);animation-duration:8.5s}
.hero-constellation .orbit-star{z-index:5;width:7px;height:7px;background:#fff;box-shadow:0 0 5px #fff,0 0 18px #81e7ff;animation-duration:2.8s}
.hero-constellation .s1{top:15%;right:13%}.hero-constellation .s2{top:79%;left:11%}.hero-constellation .s3{top:22%;left:19%}
.hero-constellation .earth{
  position:absolute;z-index:6;left:50%;top:50%;width:27%;aspect-ratio:1;min-width:68px;transform:translate(-50%,-50%);
  border-radius:50%;overflow:hidden;
  background:
    radial-gradient(circle at 31% 23%,rgba(255,255,255,.9),transparent 7%),
    radial-gradient(ellipse 23% 13% at 37% 31%,#93d18a 0 34%,transparent 37%),
    radial-gradient(ellipse 28% 15% at 59% 43%,#74bd75 0 33%,transparent 36%),
    radial-gradient(ellipse 17% 22% at 31% 61%,#b6d57b 0 30%,transparent 33%),
    radial-gradient(ellipse 13% 11% at 68% 67%,#5ebc80 0 35%,transparent 38%),
    radial-gradient(circle at 34% 33%,#3caed8 0 30%,#18629a 57%,#082f64 78%,#021837 100%);
  box-shadow:inset -15px -13px 22px rgba(0,7,26,.68),inset 7px 6px 15px rgba(221,255,255,.36),0 0 0 2px rgba(190,247,255,.62),0 0 20px rgba(88,219,255,.78),0 0 45px rgba(79,177,255,.34);
  animation:earth-turn 13s linear infinite,earth-float 4.2s ease-in-out infinite;
}
.hero-constellation .earth::before{content:"";position:absolute;inset:-12% -28% -12% 14%;background:repeating-linear-gradient(105deg,transparent 0 8px,rgba(237,255,255,.15) 9px 12px,transparent 13px 23px);mix-blend-mode:screen;filter:blur(1px);animation:earth-clouds 11s linear infinite}
.hero-constellation .earth::after{content:"";position:absolute;inset:-13%;border:1px solid rgba(188,245,255,.76);border-radius:50%;box-shadow:0 0 20px rgba(102,225,255,.65)}
.hero-constellation .satellite{position:absolute;z-index:7;width:8px;height:8px;border-radius:50%;background:#fff;box-shadow:0 0 7px #fff,0 0 18px #a8eeff;animation:hero-satellite 6s linear infinite}
.hero-constellation .satellite.a{left:23%;top:31%}.hero-constellation .satellite.b{right:21%;bottom:27%;animation-delay:-2s;background:#d8c9ff}.hero-constellation .satellite.c{left:36%;bottom:15%;animation-delay:-4s;background:#9fffe1}
@keyframes earth-turn{to{filter:hue-rotate(10deg)}}
@keyframes earth-float{50%{transform:translate(-50%,-53%) scale(1.04)}}
@keyframes earth-clouds{to{transform:translateX(29%)}}
@keyframes hero-satellite{0%{transform:scale(.75);opacity:.45}45%{transform:translate(14px,-12px) scale(1.3);opacity:1}100%{transform:translate(0,0) scale(.75);opacity:.45}}
@media(max-width:650px){.hero-constellation .earth{width:31%;min-width:62px}.hero-constellation .orbit-track{opacity:.82!important}.hero-showcase{overflow:hidden}}
