/*
Theme Name: Velora Premium Block Theme
Theme URI: https://velora.biz
Author: Stealth Agency
Description: Bespoke high-performance Full Site Editing WordPress block theme built specifically for Velora Executive Consulting. Engineered for clean typography, modern block grids, and flawless high-intent enterprise SEO.
Version: 1.0.0
Requires at least: 6.2
Tested up to: 6.5
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: velora-theme
*/

/* -----------------------------------------------
   GRAVITY FORMS — Submit Button
----------------------------------------------- */
.gform_wrapper .gform_footer input[type="submit"],
.gform_wrapper .gform_page_footer input[type="submit"],
.gform_wrapper input.gform_button[type="submit"],
.gform_wrapper button.gform_button,
.gform_wrapper input[type="submit"],
body .gform_wrapper .gform_footer input.button,
body .gform_wrapper .gform_footer input[type="submit"] {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 16px 40px !important;
    background-color: #1A1A1A !important;
    background-image: none !important;
    color: #FFFFFF !important;
    font-family: "Inter", system-ui, sans-serif !important;
    font-size: 11pt !important;
    font-weight: 600 !important;
    letter-spacing: 1px !important;
    border: none !important;
    border-radius: 50px !important;
    cursor: pointer !important;
    transition: background-color 0.2s ease !important;
    text-transform: none !important;
}

/* -----------------------------------------------
   HOMEPAGE HERO — Transformation Light Animation
   Subtle breathing brightness + warm/cool drift +
   vignette pulse. Scoped to .home only so interior
   page heroes stay static.
----------------------------------------------- */
.home .wp-block-cover:first-of-type {
    overflow: hidden;
}

.home .wp-block-cover:first-of-type .wp-block-cover__image-background {
    animation: velora-hero-light 10s linear infinite;
    will-change: filter, transform;
}

/* Vignette — darkens during the dark phase */
.home .wp-block-cover:first-of-type::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: radial-gradient(
        ellipse at center,
        rgba(0, 0, 0, 0) 30%,
        rgba(11, 34, 30, 0.7) 100%
    );
    animation: velora-hero-vignette 10s linear infinite;
    z-index: 1;
}

/* Light sweep / lens flare bar — fires twice per cycle */
.home .wp-block-cover:first-of-type::before {
    content: "";
    position: absolute;
    top: 0;
    left: -60%;
    width: 50%;
    height: 100%;
    pointer-events: none;
    background: linear-gradient(
        100deg,
        rgba(255, 255, 255, 0)    0%,
        rgba(255, 240, 210, 0.25) 25%,
        rgba(255, 250, 230, 0.95) 50%,
        rgba(255, 240, 210, 0.25) 75%,
        rgba(255, 255, 255, 0)    100%
    );
    filter: blur(22px);
    box-shadow: 0 0 120px 40px rgba(255, 240, 210, 0.5);
    animation: velora-hero-sweep 13s linear infinite;
    z-index: 2;
    mix-blend-mode: screen;
}

.home .wp-block-cover:first-of-type .wp-block-cover__inner-container {
    position: relative;
    z-index: 3;
}

/*
   13-second cycle (slower sweeps):
     0–15%   : LIGHT state held
     15–32%  : SWEEP #1 (slow) crosses → flash → DARK
     32–55%  : DARK state held
     55–72%  : SWEEP #2 (slow) crosses → flash → LIGHT
     72–100% : LIGHT state held back to loop
*/

.home .wp-block-cover:first-of-type .wp-block-cover__image-background {
    animation: velora-hero-light 13s linear infinite;
}

.home .wp-block-cover:first-of-type::after {
    animation: velora-hero-vignette 13s linear infinite;
}

@keyframes velora-hero-light {
    /* LIGHT hold */
    0%   { filter: brightness(1.25) contrast(1.1)  saturate(1.2)  hue-rotate(10deg) blur(0px); }
    15%  { filter: brightness(1.25) contrast(1.1)  saturate(1.2)  hue-rotate(10deg) blur(0px); }
    /* Sweep #1 leading */
    20%  { filter: brightness(1.4)  contrast(1.15) saturate(1.25) hue-rotate(8deg)  blur(1px); }
    /* FLASH PEAK — going dark */
    23%  { filter: brightness(1.9)  contrast(1.3)  saturate(1.4)  hue-rotate(5deg)  blur(3px); }
    /* Rapid drop into dark */
    27%  { filter: brightness(0.55) contrast(1.2)  saturate(0.8)  hue-rotate(0deg)  blur(1px); }
    /* DARK settled */
    32%  { filter: brightness(0.45) contrast(1.2)  saturate(0.8)  hue-rotate(0deg)  blur(0px); }
    55%  { filter: brightness(0.45) contrast(1.2)  saturate(0.8)  hue-rotate(0deg)  blur(0px); }
    /* Sweep #2 leading */
    60%  { filter: brightness(0.7)  contrast(1.2)  saturate(0.9)  hue-rotate(3deg)  blur(1px); }
    /* FLASH PEAK — going light */
    63%  { filter: brightness(2.0)  contrast(1.3)  saturate(1.45) hue-rotate(5deg)  blur(3px); }
    /* Rapid settle into light */
    67%  { filter: brightness(1.35) contrast(1.15) saturate(1.25) hue-rotate(8deg)  blur(1px); }
    /* LIGHT settled */
    72%  { filter: brightness(1.25) contrast(1.1)  saturate(1.2)  hue-rotate(10deg) blur(0px); }
    100% { filter: brightness(1.25) contrast(1.1)  saturate(1.2)  hue-rotate(10deg) blur(0px); }
}

@keyframes velora-hero-vignette {
    0%   { opacity: 0.2; }
    15%  { opacity: 0.2; }
    23%  { opacity: 0;   } /* opens up briefly during flash */
    32%  { opacity: 1; }
    55%  { opacity: 1; }
    63%  { opacity: 0;   } /* opens up briefly during second flash */
    72%  { opacity: 0.2; }
    100% { opacity: 0.2; }
}

/*
   Two slower sweeps per cycle, each ~2.2s wide:
   Sweep #1: 15% → 32%
   Sweep #2: 55% → 72%
   Mid-sweep flare peak at 23% and 63%.
*/
@keyframes velora-hero-sweep {
    0%   { left: -60%;  opacity: 0; transform: skewX(-12deg); filter: blur(22px); }
    14%  { left: -60%;  opacity: 0; transform: skewX(-12deg); filter: blur(22px); }
    16%  { opacity: 1; }
    23%  { left: 50%;   opacity: 1; transform: skewX(-12deg); filter: blur(8px); }
    30%  { opacity: 1; }
    33%  { left: 160%;  opacity: 0; transform: skewX(-12deg); filter: blur(22px); }
    54%  { left: -60%;  opacity: 0; transform: skewX(-12deg); filter: blur(22px); }
    56%  { opacity: 1; }
    63%  { left: 50%;   opacity: 1; transform: skewX(-12deg); filter: blur(8px); }
    70%  { opacity: 1; }
    73%  { left: 160%;  opacity: 0; transform: skewX(-12deg); filter: blur(22px); }
    100% { left: 160%;  opacity: 0; transform: skewX(-12deg); filter: blur(22px); }
}

.gform_wrapper .gform_footer input[type="submit"]:hover,
.gform_wrapper .gform_page_footer input[type="submit"]:hover,
.gform_wrapper input.gform_button[type="submit"]:hover,
.gform_wrapper button.gform_button:hover,
body .gform_wrapper .gform_footer input[type="submit"]:hover {
    background-color: #0B221E !important;
}
