/* Preserve the eye; fade the low reflection smoothly before the frame ends. */
.hero-art .eye-float>img,.hero-art .eye-float>.glass-video{-webkit-mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.04) 6%,rgba(0,0,0,.3) 13%,#000 27%,#000 61%,rgba(0,0,0,.83) 69%,rgba(0,0,0,.48) 78%,rgba(0,0,0,.16) 87%,rgba(0,0,0,.025) 94%,transparent 98%);mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.04) 6%,rgba(0,0,0,.3) 13%,#000 27%,#000 61%,rgba(0,0,0,.83) 69%,rgba(0,0,0,.48) 78%,rgba(0,0,0,.16) 87%,rgba(0,0,0,.025) 94%,transparent 98%)}
.site-atmosphere{background:radial-gradient(ellipse at 70% 20%,#15102055,transparent 45%),#030305}
.galaxy-star{position:absolute;display:block;width:var(--size);height:var(--size);border-radius:50%;background:#c4a0f5;box-shadow:0 0 5px #a66de780;opacity:.35;animation:galaxy-twinkle var(--duration) ease-in-out var(--delay) infinite alternate}
@keyframes galaxy-twinkle{from{opacity:.15;transform:scale(.8)}to{opacity:.65;transform:scale(1.1)}}
.galaxy-meteor{position:absolute;display:block;width:110px;height:1px;background:linear-gradient(90deg,transparent,#b885ef80,#e8d7ff);border-radius:50%;box-shadow:0 0 6px #ae7ef855;opacity:0;animation:galaxy-shoot 19s linear infinite;transform:rotate(32deg)}
.meteor-0{top:14%;left:8%;animation-delay:-3s}
.meteor-1{top:42%;left:48%;animation-duration:27s;animation-delay:-14s}
.meteor-2{top:72%;left:20%;animation-duration:23s;animation-delay:-8s}
@keyframes galaxy-shoot{0%,84%{opacity:0;transform:translate3d(-80px,-50px,0) rotate(32deg)}86%{opacity:.7}92%,100%{opacity:0;transform:translate3d(340px,212px,0) rotate(32deg)}}
.paused .galaxy-star,.paused .galaxy-meteor{animation-play-state:paused!important}
.specialties::before{opacity:.29;inset:-25% -10%;filter:blur(20px)}
.specialties::after{opacity:.19;inset:-40% -10%;filter:blur(22px)}
/* Each symbol occupies the same square, on the same centre line. */
.services .card .service-watermark,.services .card:nth-child(2) .service-watermark,.services .card:nth-child(3) .service-watermark,.services .card:nth-child(4) .service-watermark{left:50%;right:auto!important;top:44px;width:170px;height:170px;transform:translateX(-50%);font-size:initial;line-height:1}
.services .service-watermark svg{display:block;width:100%;height:100%;filter:drop-shadow(0 0 14px #ffffff0c)}
.services .service-icon{margin-inline:auto;display:flex;width:44px;height:44px;padding:8px;box-sizing:border-box}
.services .service-icon svg{display:block;width:28px;height:28px;flex-shrink:0}
#tarifs .price-card>p:not(.setup-fee){margin:6px 0 10px;min-height:0}
#tarifs .price-card .price{margin:10px 0 4px}
#tarifs .price-card .setup-fee{font-size:12px;line-height:1.65;color:#c4bacf;margin:0 0 18px;padding-bottom:16px;border-bottom:1px solid #ffffff12}
.setup-fee strong{color:#e1c9ff;font-weight:600}
.setup-fee span{display:block;font-size:11px;color:#8f879d;margin-top:3px}
#tarifs .price-card,.custom-quote-card{transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
@media(hover:hover){#tarifs .price-card:hover,#tarifs .price-card.featured:hover,.custom-quote-card:hover{transform:translateY(-5px) scale(1.012);border-color:#d4b3ff99;box-shadow:0 0 30px #ad7be523,inset 0 1px 0 #e4ceff22}}
#tarifs .price-card:focus-within,.custom-quote-card:focus-within{border-color:#d4b3ff99;box-shadow:0 0 30px #ad7be523}
#faq .faq-branch-open{stroke:#edd4ff;stroke-width:1.8;opacity:1;filter:drop-shadow(0 0 4px #c18cf5) drop-shadow(0 0 8px #a46de380)}
@media(max-width:760px){.services .card .service-watermark,.services .card:nth-child(2) .service-watermark,.services .card:nth-child(3) .service-watermark,.services .card:nth-child(4) .service-watermark{width:140px;height:140px;top:54px}.galaxy-star:nth-of-type(3n){display:none}.galaxy-meteor{width:70px}}
@media(prefers-reduced-motion:reduce){.galaxy-star{animation:none;opacity:.3}.galaxy-meteor{display:none}#tarifs .price-card:hover,.custom-quote-card:hover{transform:none}}
