/*
Theme Name: Anasu Hampers Coming Soon
Theme URI: https://anasuhampers.com/
Author: SARSNA SOLUTIONS
Author URI: https://sarsna.com/
Description: Colourful coming-soon landing page with animated gradient text, floating bubbles, butterflies and sparkles.
Version: 1.0.0
Requires at least: 5.8
Tested up to: 6.8
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: anasu-hampers-coming-soon
*/
:root { --ink:#39274f; }
* { box-sizing:border-box; }
html,body { margin:0; min-height:100%; }
body {
  min-height:100vh; overflow:hidden; display:grid; place-items:center;
  font-family: "Poppins", "Trebuchet MS", Arial, sans-serif; color:var(--ink);
  background:linear-gradient(135deg,#fff0f7 0%,#f0f4ff 38%,#e6fff7 72%,#fff8dc 100%);
}
.scene { position:relative; isolation:isolate; width:100%; min-height:100vh; display:grid; place-items:center; padding:28px 18px 72px; overflow:hidden; }
.glow { position:absolute; width:min(78vw,680px); aspect-ratio:1; border-radius:50%; background:radial-gradient(circle,rgba(255,255,255,.94),rgba(255,255,255,.28) 58%,transparent 72%); z-index:-1; }
.content { text-align:center; width:min(900px,100%); animation:rise 1.1s ease both; }
.eyebrow { margin:0 0 15px; font-size:clamp(.75rem,2vw,.95rem); font-weight:800; letter-spacing:.32em; text-transform:uppercase; color:#9866b5; }
h1.brand-title { margin:0; font-size:clamp(2.7rem,9vw,6.7rem); line-height:1.04; font-weight:900; letter-spacing:-.055em; background:linear-gradient(90deg,#ff4d9d,#9b5de5,#4776e6,#17bfa3,#ff9f43,#ff4d9d); background-size:300% auto; -webkit-background-clip:text; background-clip:text; color:transparent; animation:rainbow 7s linear infinite; filter:drop-shadow(0 7px 0 rgba(255,255,255,.55)); }
.rule { width:100px; height:5px; margin:25px auto 22px; border-radius:99px; background:linear-gradient(90deg,#ff6eaa,#a56bff,#55d8bd); }
.coming { margin:0; font-size:clamp(1.6rem,5vw,3.2rem); font-weight:800; color:#59416e; }
.coming span { display:inline-block; animation:pulse 2s ease-in-out infinite; }
.subtitle { margin:15px auto 0; max-width:530px; font-size:clamp(.95rem,2.5vw,1.15rem); line-height:1.7; color:#786786; }
.site-credit { position:absolute; bottom:24px; left:12px; right:12px; text-align:center; font-size:.72rem; font-weight:700; letter-spacing:.13em; color:#8a7799; text-transform:uppercase; }
.site-credit strong { color:#7951a7; }
.bubble { position:absolute; bottom:-100px; width:var(--size); height:var(--size); left:var(--left); border-radius:50%; border:1px solid rgba(255,255,255,.85); background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.95),rgba(255,255,255,.16) 40%,rgba(173,134,255,.14) 75%); box-shadow:inset -5px -7px 12px rgba(160,125,255,.12),0 0 18px rgba(255,255,255,.5); animation:floatUp var(--duration) linear var(--delay) infinite; z-index:-1; pointer-events:none; }
.butterfly { position:absolute; left:var(--left); top:var(--top); font-size:var(--size); animation:fly var(--duration) ease-in-out var(--delay) infinite alternate; filter:drop-shadow(0 4px 4px rgba(121,81,167,.15)); user-select:none; pointer-events:none; }
.sparkle { position:absolute; color:#fff; font-size:var(--size); text-shadow:0 0 12px #e2a2ff; animation:twinkle var(--duration) ease-in-out var(--delay) infinite alternate; pointer-events:none; }
@keyframes rainbow { to { background-position:300% center; } }
@keyframes rise { from { opacity:0; transform:translateY(22px) scale(.98); } to { opacity:1; transform:translateY(0) scale(1); } }
@keyframes pulse { 0%,100% { transform:scale(1); } 50% { transform:scale(1.045); color:#a052b7; } }
@keyframes floatUp { 0% { transform:translate3d(0,0,0) rotate(0); opacity:0; } 12% { opacity:.75; } 85% { opacity:.55; } 100% { transform:translate3d(35px,-120vh,0) rotate(240deg); opacity:0; } }
@keyframes fly { 0% { transform:translate(0,0) rotate(-12deg) scale(.9); } 45% { transform:translate(32px,-28px) rotate(12deg) scale(1.08); } 100% { transform:translate(-24px,25px) rotate(-8deg) scale(.96); } }
@keyframes twinkle { from { opacity:.25; transform:scale(.7) rotate(0); } to { opacity:1; transform:scale(1.25) rotate(25deg); } }
@media (max-width:600px) { .eyebrow { letter-spacing:.18em; } .site-credit { font-size:.62rem; letter-spacing:.08em; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; scroll-behavior:auto !important; } }
