/* Quiet AI/future visual layer. Decoration only; no external assets or pointer interception. */
html.ai-vibe .eyebrow,html.ai-vibe .tag,html.ai-vibe .signal-label{font-family:ui-monospace,SFMono-Regular,"Cascadia Mono",Consolas,monospace;letter-spacing:.12em}
html.ai-vibe .hero .eyebrow::after{content:"";display:inline-block;width:7px;height:14px;margin-inline-start:8px;background:var(--mint);vertical-align:-2px;animation:ai-blink 1.15s steps(2,start) infinite}

html.ai-vibe .hero,html.ai-vibe .dark-section{position:relative;isolation:isolate;overflow:hidden}
html.ai-vibe .hero>.wrap,html.ai-vibe .dark-section>.wrap{position:relative;z-index:2}
html.ai-vibe .ai-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
html.ai-vibe .ai-spot{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:0;transition:opacity .5s ease;background:radial-gradient(460px circle at var(--sx,50%) var(--sy,50%),rgba(255,159,67,.17),transparent 62%)}
html.ai-vibe .ai-on .ai-spot,html.ai-vibe .hero:hover .ai-spot,html.ai-vibe .dark-section:hover .ai-spot{opacity:1}

html.ai-vibe .hero:after,html.ai-vibe .dark-section:after{content:"";position:absolute;inset:-320px;z-index:0;pointer-events:none;opacity:.075;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='320' height='320' viewBox='0 0 320 320' fill='none' stroke='%23fff' stroke-width='1'%3E%3Cpath d='M0 80h90l20 20h60M170 0v60l30 30h120M40 320v-90l30-30h80l20-20M240 320v-60l-30-30h-70M0 250h60l20-20M320 200h-70l-20-20'/%3E%3Cg fill='%23fff'%3E%3Ccircle cx='90' cy='80' r='3'/%3E%3Ccircle cx='170' cy='100' r='3'/%3E%3Ccircle cx='200' cy='90' r='3'/%3E%3Ccircle cx='70' cy='200' r='3'/%3E%3Ccircle cx='150' cy='200' r='3'/%3E%3Ccircle cx='210' cy='230' r='3'/%3E%3C/g%3E%3C/svg%3E") 0 0/320px 320px;animation:ai-drift 80s linear infinite;will-change:transform}

html.ai-vibe .section,html.ai-vibe .proof-strip{position:relative;isolation:isolate}
html.ai-vibe .section>.wrap,html.ai-vibe .proof-strip>.wrap{position:relative;z-index:1}
html.ai-vibe .section:not(.dark-section)::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.5;background:radial-gradient(rgba(21,38,45,.07) 1px,transparent 1.2px) 0 0/28px 28px;-webkit-mask-image:linear-gradient(180deg,#000,transparent 70%);mask-image:linear-gradient(180deg,#000,transparent 70%)}
html.ai-vibe .section:not(.dark-section) .ai-spot{background:radial-gradient(380px circle at var(--sx,50%) var(--sy,50%),rgba(255,159,67,.13),transparent 65%)}

html.ai-vibe .hero h1 em{background:linear-gradient(100deg,#ffe08a 0%,#ff9f43 45%,#ffc267 75%,#ffe08a 100%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:ai-shimmer 9s ease-in-out infinite alternate}

html.ai-vibe .signal-card{transform:perspective(1000px) rotateX(var(--tx,0deg)) rotateY(var(--ty,0deg));transition:transform .25s ease-out,box-shadow .3s;box-shadow:0 30px 80px rgba(0,0,0,.35),0 0 0 1px rgba(255,159,67,.18),0 0 60px rgba(255,159,67,.10)}
html.ai-vibe .trace-point{transition:background-color .5s ease,box-shadow .5s ease}
html.ai-vibe .trace-point.ai-live{background:linear-gradient(90deg,rgba(255,159,67,.13),transparent 85%);box-shadow:inset 3px 0 0 #ff9f43}
html.ai-vibe[dir="rtl"] .trace-point.ai-live{background:linear-gradient(270deg,rgba(255,159,67,.13),transparent 85%);box-shadow:inset -3px 0 0 #ff9f43}

html.ai-vibe .tile:hover,html.ai-vibe .price-card:hover,html.ai-vibe .package-card:hover,html.ai-vibe .choice:hover{box-shadow:0 0 0 1px rgba(255,159,67,.45),0 22px 50px rgba(255,159,67,.14)}
html.ai-vibe .btn.primary{box-shadow:0 0 0 1px rgba(255,209,102,.5),0 10px 30px rgba(255,159,67,.25)}
html.ai-vibe .btn.primary:hover{box-shadow:0 0 0 1px rgba(255,209,102,.7),0 14px 40px rgba(255,159,67,.4)}

@keyframes ai-drift{to{transform:translate3d(320px,320px,0)}}
@keyframes ai-shimmer{to{background-position:100% 0}}
@keyframes ai-blink{to{visibility:hidden}}

html.ai-vibe.ai-calm .hero:after,html.ai-vibe.ai-calm .dark-section:after,html.ai-vibe.ai-calm .hero h1 em,html.ai-vibe.ai-calm .hero .eyebrow::after{animation:none}
html.ai-vibe.ai-calm .signal-card{transform:none}
html.ai-vibe.ai-calm .ai-spot{display:none}
@media (prefers-reduced-motion:reduce){
  html.ai-vibe:not(.ai-motion-on) .hero:after,html.ai-vibe:not(.ai-motion-on) .dark-section:after,html.ai-vibe:not(.ai-motion-on) .hero h1 em,html.ai-vibe:not(.ai-motion-on) .hero .eyebrow::after{animation:none}
  html.ai-vibe:not(.ai-motion-on) .signal-card{transform:none}
  html.ai-vibe:not(.ai-motion-on) .ai-spot{display:none}
  /* An explicit visitor opt-in must beat the legacy global reduced-motion guard. */
  html.ai-vibe.ai-motion-on .hero:after,html.ai-vibe.ai-motion-on .dark-section:after{animation:ai-drift 80s linear infinite!important}
  html.ai-vibe.ai-motion-on .hero h1 em{animation:ai-shimmer 9s ease-in-out infinite alternate!important}
  html.ai-vibe.ai-motion-on .hero .eyebrow::after{animation:ai-blink 1.15s steps(2,start) infinite!important}
}
@media (max-width:760px){html.ai-vibe .ai-spot{display:none}html.ai-vibe .signal-card{transform:none}}
