/*
 * Event365 — SaaS brand override
 * Plain CSS layered ON TOP of the legacy bootstrap template (style.css).
 * Goal: turn the techy-blue startup look into a refined SaaS aesthetic
 *       (warm cream + bronze gold + warm black, Inter sans-serif).
 *
 * The same brand identity as the outreach email (cream + bronze gold +
 * warm black) but executed for SOFTWARE not wedding stationery.
 * Email keeps Cormorant Garamond. Site uses Inter.
 */

/* ============================================================== */
/* Tokens                                                          */
/* ============================================================== */
:root {
    --ev-bg:        #FDFBF7;   /* warm cream — page bg */
    --ev-bg-soft:   #F7F2E8;   /* slight cream — alternate section */
    --ev-card:      #FFFFFF;
    --ev-ink:       #1A0F0A;   /* warm black — text */
    --ev-ink-soft:  #5A4A3A;   /* warm grey — sub-text */
    --ev-ink-mid:   #3A2E22;
    --ev-gold:      #B8860B;   /* aged bronze gold — accent */
    --ev-gold-hi:   #D4A744;   /* brighter gold — hover */
    --ev-gold-soft: rgba(184, 134, 11, .14);
    --ev-line:      #E8E2D5;   /* warm cream separator */
    --ev-line-soft: rgba(26, 15, 10, .08);
}

/* ============================================================== */
/* Typography — Inter for SaaS confidence                          */
/* ============================================================== */
html, body, p, a, span, li, td, th, button, input, select, textarea, label,
.nav-menu li a, .hero-content, .common-heading, .preview-galley-v1,
.footer-text-block, .copyright-text {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
}

h1, h2, h3, h4, h5, h6,
.hero-title, .title, .common-heading .title, .widget-title {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
    font-weight: 700 !important;
    letter-spacing: -0.02em;
    color: var(--ev-ink) !important;
}

/* Inside textured-dark sections, headings stay light (override the global) */
.ev-textured-dark h1,
.ev-textured-dark h2,
.ev-textured-dark h3,
.ev-textured-dark h4,
.ev-textured-dark h5,
.ev-textured-dark h6,
.ev-textured-dark .title,
.ev-textured-dark .widget-title {
    color: #FBF8F3 !important;
}
/* Allow inline gold accents inside dark headings (italic emphasis words) */
.ev-textured-dark h1 em,
.ev-textured-dark h2 em,
.ev-textured-dark h3 em,
.ev-textured-dark h4 em {
    color: #D4A744 !important;
}
/* Honour inline color override (font-family Georgia + gold) on em inside dark */
.ev-textured-dark em[style*="color"] { color: inherit; }

h1, .hero-title { font-weight: 800 !important; letter-spacing: -0.03em; }

body {
    background: var(--ev-bg) !important;
    color: var(--ev-ink) !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* ============================================================== */
/* Header — clean white with subtle gold accent                    */
/* ============================================================== */
.template-header {
    background: #FFFFFF !important;
    border-bottom: 1px solid var(--ev-line);
}
.template-header.sticky-on { background: #FFFFFFee !important; backdrop-filter: blur(10px); }

.nav-menu li a {
    color: var(--ev-ink) !important;
    font-weight: 500 !important;
    font-size: 14px !important;
    letter-spacing: 0 !important;
    transition: color .15s;
}
.nav-menu li a:hover { color: var(--ev-gold) !important; }
.nav-menu li.active > a { color: var(--ev-gold) !important; }
.nav-menu li a::before,
.nav-menu li a::after { background-color: var(--ev-gold) !important; }

/* Mega-menu links use gold instead of blue */
.event-mega-menu { border-top-color: var(--ev-gold) !important; }
.niche-col-title { color: var(--ev-gold) !important; border-bottom-color: var(--ev-line) !important; }
.niche-link i { color: var(--ev-gold) !important; }
.niche-link:hover { color: var(--ev-gold) !important; background: var(--ev-gold-soft) !important; }
.niche-footer-link { color: var(--ev-gold) !important; }
.features-col h6 { color: var(--ev-gold) !important; border-bottom-color: var(--ev-line) !important; }
.feature-link-v2 i { color: var(--ev-gold) !important; background: var(--ev-gold-soft) !important; }
.feature-link-v2:hover { background: var(--ev-gold-soft) !important; }
.feature-link-v2 strong { color: var(--ev-ink) !important; }
.feature-link-v2 span { color: var(--ev-ink-soft) !important; }

/* ============================================================== */
/* Buttons — SaaS modern: warm black solid + gold ghost            */
/* ============================================================== */
.template-btn,
a.template-btn,
button.template-btn {
    background: var(--ev-ink) !important;
    color: #FFFFFF !important;
    border: 1px solid var(--ev-ink) !important;
    border-radius: 10px !important;
    padding: 14px 28px !important;
    font-family: 'Inter', sans-serif !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    box-shadow: 0 2px 12px rgba(26, 15, 10, .15) !important;
    transition: all .18s ease !important;
    position: relative;
    overflow: hidden;
}
.template-btn:hover,
a.template-btn:hover {
    background: var(--ev-gold) !important;
    border-color: var(--ev-gold) !important;
    color: var(--ev-ink) !important;
    box-shadow: 0 6px 22px rgba(184, 134, 11, .35) !important;
    transform: translateY(-1px);
}
.template-btn i, a.template-btn i { transition: transform .18s; }
.template-btn:hover i, a.template-btn:hover i { transform: translateX(4px); }

.template-btn.bordered-btn,
a.template-btn.bordered-btn {
    background: transparent !important;
    color: var(--ev-ink) !important;
    border: 1px solid var(--ev-ink) !important;
    box-shadow: none !important;
}
.template-btn.bordered-btn:hover,
a.template-btn.bordered-btn:hover {
    background: var(--ev-ink) !important;
    color: #FFFFFF !important;
    border-color: var(--ev-ink) !important;
}

/* Language switcher dropdown — open/close via .open class toggled in JS */
.ev-lang-switcher > ul { display: none !important; }
.ev-lang-switcher.open > ul { display: block !important; }
.ev-lang-switcher > a:hover { border-color: var(--ev-gold) !important; color: var(--ev-gold) !important; }
.ev-lang-switcher > ul a:hover { background: var(--ev-gold-soft) !important; color: var(--ev-gold) !important; }

/* Hero — keep the legacy template's look (user preference).
   We only soften the dashboard screenshot's shadow. */
.hero-area-v1 .hero-img {
    padding: 0 16px;
}
.hero-area-v1 .hero-img img {
    border-radius: 14px;
    box-shadow: 0 24px 60px rgba(26, 15, 10, .15);
    max-width: 100% !important;
    width: auto !important;
    height: auto !important;
    display: inline-block;
}

/* Mobile: extra padding + remove the overflow */
@media (max-width: 768px) {
    .hero-area-v1 .hero-img {
        padding: 0 20px;
        margin-top: 30px;
    }
    .hero-area-v1 .hero-img img {
        max-width: calc(100vw - 40px) !important;
        border-radius: 10px;
        box-shadow: 0 12px 30px rgba(26, 15, 10, .18);
    }
    /* Stop the floating animation on mobile (otherwise the image bobs off-screen edges) */
    .hero-area-v1 .hero-img.animate-float-bob-y {
        animation: none !important;
    }
    /* Also cap the hero-title size */
    .hero-area-v1 .hero-content .hero-title {
        font-size: 42px !important;
        line-height: 1.1 !important;
    }
}

/* ============================================================== */
/* Section headings (tagline-boxed)                                */
/* ============================================================== */
.common-heading .tagline,
.tagline-boxed .tagline {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    background: transparent !important;
    color: var(--ev-gold) !important;
    padding: 0 !important;
    border-radius: 0 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 3px !important;
    text-transform: uppercase;
    margin-bottom: 16px !important;
}
.common-heading .tagline::before {
    content: '✦';
    color: var(--ev-gold);
    font-size: 10px;
}

.common-heading .title,
section h2.title {
    font-size: clamp(28px, 4vw, 44px) !important;
    line-height: 1.15 !important;
    color: var(--ev-ink) !important;
    margin: 0 0 16px !important;
}

/* ============================================================== */
/* Sections — cream by default, BUT respect inline backgrounds.    */
/* Critical: never !important-override a section that has its own  */
/* inline style="background:..." (would hide white text on dark).  */
/* ============================================================== */
section:not([style*="background"]) { background: var(--ev-bg); }
.core-feature:not([style*="background"]),
.data-analysis-section:not([style*="background"]),
.niche-area:not([style*="background"]) { background: var(--ev-bg); }

/* ============================================================== */
/* Image boxes / feature cards — clean white, gold hover           */
/* ============================================================== */
.image-box {
    background: var(--ev-card) !important;
    border: 1px solid var(--ev-line) !important;
    border-radius: 14px !important;
    padding: 26px 24px !important;
    transition: all .2s !important;
}
.image-box:hover, .image-box.active {
    border-color: var(--ev-gold) !important;
    box-shadow: 0 16px 36px rgba(184, 134, 11, .12) !important;
    transform: translateY(-2px);
}
.image-box .box-link {
    background: var(--ev-gold-soft) !important;
    color: var(--ev-gold) !important;
    border: 1px solid transparent !important;
    width: 36px !important; height: 36px !important;
    border-radius: 50% !important;
    display: inline-flex !important;
    align-items: center; justify-content: center;
    transition: all .15s;
}
.image-box:hover .box-link, .image-box.active .box-link {
    background: var(--ev-gold) !important;
    color: var(--ev-ink) !important;
}
.image-box .title { color: var(--ev-ink) !important; font-weight: 600 !important; font-size: 16px !important; line-height: 1.4 !important; }

/* ============================================================== */
/* Check list bullets — gold                                       */
/* ============================================================== */
.check-list li {
    color: var(--ev-ink) !important;
    padding-left: 30px !important;
    position: relative;
    margin-bottom: 12px !important;
    line-height: 1.55;
}
.check-list li::before {
    content: '✓' !important;
    background: var(--ev-gold) !important;
    color: var(--ev-card) !important;
    width: 20px !important; height: 20px !important;
    border-radius: 50% !important;
    display: inline-flex !important;
    align-items: center; justify-content: center;
    font-size: 11px !important;
    font-weight: 700;
    position: absolute;
    left: 0; top: 3px;
}

/* ============================================================== */
/* "Numbers" / stats section — warm black instead of blue gradient */
/* ============================================================== */
.numbers-section,
section[style*="linear-gradient(135deg,#0a1f44"],
section[style*="linear-gradient(135deg,#0066FF"] {
    background: var(--ev-ink) !important;
}
.numbers-section .title, .numbers-section h2 {
    color: var(--ev-bg) !important;
}
.numbers-section .tagline {
    color: var(--ev-gold-hi) !important;
    background: transparent !important;
}

/* ============================================================== */
/* Footer — warm dark with gold accents                            */
/* ============================================================== */
footer.footer-1, .footer-area, footer {
    background: var(--ev-ink) !important;
    color: var(--ev-bg) !important;
}
footer p, footer li, footer a { color: rgba(253, 251, 247, .80) !important; }
footer a:hover { color: var(--ev-gold-hi) !important; }
footer h2, footer h3, footer h4, footer h5, footer .widget-title {
    color: var(--ev-bg) !important;
    font-weight: 600 !important;
    letter-spacing: 0;
}
footer .social-links a {
    background: rgba(184, 134, 11, .18) !important;
    color: var(--ev-gold-hi) !important;
    border: 1px solid rgba(184, 134, 11, .35);
    width: 38px !important; height: 38px !important;
    line-height: 36px !important;
    border-radius: 50% !important;
    display: inline-flex !important;
    align-items: center; justify-content: center;
    transition: all .15s;
}
footer .social-links a:hover {
    background: var(--ev-gold) !important;
    color: var(--ev-ink) !important;
    border-color: var(--ev-gold);
}

/* ============================================================== */
/* Misc overrides — remove residual blue                           */
/* ============================================================== */
a { color: var(--ev-gold); }
a:hover { color: var(--ev-gold-hi); }

/* Niche/Tipo de Eventos hero / Profissionais hero overrides */
.page-title-area[style*="linear-gradient"] {
    background: var(--ev-ink) !important;
}
.page-title-area[style*="linear-gradient"] h1 { color: var(--ev-bg) !important; }
.page-title-area[style*="linear-gradient"] p { color: rgba(253, 251, 247, .85) !important; }
.page-title-area[style*="linear-gradient"] .template-btn {
    background: var(--ev-gold) !important;
    color: var(--ev-ink) !important;
    border-color: var(--ev-gold) !important;
}
.page-title-area[style*="linear-gradient"] .template-btn:hover {
    background: var(--ev-gold-hi) !important;
    border-color: var(--ev-gold-hi) !important;
}

/* Tag chips inside niche/profissional pages */
[style*="background:rgba(255,255,255,.15)"] {
    background: rgba(184, 134, 11, .18) !important;
    border: 1px solid rgba(184, 134, 11, .35);
    color: var(--ev-gold-hi) !important;
}

/* Why / Features cards inside niche pages */
[style*="background:rgba(0,102,255"] { background: var(--ev-gold-soft) !important; }
[style*="color:#0066FF"] { color: var(--ev-gold) !important; }

/* ============================================================== */
/* FAQ Accordion — refined bronze-gold elegant                      */
/* ============================================================== */
.accordion { --bs-accordion-border-color: transparent; }
.accordion-item {
    background: #FFFFFF !important;
    border: 1px solid var(--ev-line) !important;
    border-radius: 12px !important;
    margin-bottom: 14px !important;
    overflow: hidden;
    transition: border-color .2s, box-shadow .2s;
}
.accordion-item:hover { border-color: rgba(184,134,11,.45) !important; }
.accordion-item:first-of-type, .accordion-item:last-of-type {
    border-radius: 12px !important;
}
.accordion-button {
    font-family: 'Inter', sans-serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    color: var(--ev-ink) !important;
    background: #FFFFFF !important;
    padding: 22px 28px !important;
    line-height: 1.4 !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 12px !important;
    transition: all .2s;
}
.accordion-button:hover { color: var(--ev-gold) !important; }
.accordion-button:not(.collapsed) {
    color: var(--ev-gold) !important;
    background: rgba(184,134,11,.04) !important;
    box-shadow: none !important;
    border-bottom: 1px solid var(--ev-line) !important;
    border-radius: 12px 12px 0 0 !important;
}
.accordion-button:focus,
.accordion-button:focus-visible {
    outline: none !important;
    box-shadow: none !important;
    border-color: transparent !important;
}
.accordion-button::after {
    /* Replace default Bootstrap chevron with a gold + */
    width: 28px !important;
    height: 28px !important;
    background-image: none !important;
    background: rgba(184,134,11,.10) !important;
    border-radius: 50% !important;
    position: relative;
    flex-shrink: 0;
    transition: all .25s !important;
}
.accordion-button::before {
    content: '+';
    position: absolute;
    right: 35px;
    top: 50%;
    transform: translateY(-50%);
    font-family: Georgia, serif;
    font-size: 22px;
    color: var(--ev-gold);
    font-weight: 300;
    line-height: 1;
    pointer-events: none;
    transition: transform .25s;
    z-index: 1;
}
.accordion-button:not(.collapsed)::before {
    content: '−';
    transform: translateY(-50%) rotate(0deg);
}
.accordion-body {
    padding: 22px 28px 26px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 15px !important;
    line-height: 1.7 !important;
    color: var(--ev-ink-soft) !important;
    background: #FFFFFF !important;
    word-wrap: break-word;
    overflow-wrap: break-word;
}
.accordion-body p:last-child { margin-bottom: 0; }
/* Constrain accordion to container so text doesn't overflow */
.accordion-collapse, .accordion-body { max-width: 100%; }
.accordion-body * { max-width: 100%; }

/* CTAs at the bottom of pages with gradient */
section[style*="background:#f8f9fc"] { background: var(--ev-bg-soft) !important; }

/* ============================================================== */
/* Override legacy "white text" sections that no longer have dark bg */
/* ============================================================== */
.heading-white .title,
.heading-white h2,
.heading-white h1 {
    color: var(--ev-ink) !important;
}
.heading-white .tagline {
    color: var(--ev-gold) !important;
}
.heading-white p {
    color: var(--ev-ink-soft) !important;
}

/* Restore the WHITE inside textured-dark sections — overrides the rule above */
.ev-textured-dark .heading-white .title,
.ev-textured-dark .heading-white h1,
.ev-textured-dark .heading-white h2,
.ev-textured-dark .heading-white h3 {
    color: #FBF8F3 !important;
}
.ev-textured-dark .heading-white .tagline {
    color: #D4A744 !important;
}
.ev-textured-dark .heading-white p {
    color: rgba(251, 248, 243, .78) !important;
}

/* CARDS inside dark sections — cards have light bg so headings stay DARK */
.ev-textured-dark .ev-fancy-feat h1,
.ev-textured-dark .ev-fancy-feat h2,
.ev-textured-dark .ev-fancy-feat h3,
.ev-textured-dark .ev-fancy-feat h4,
.ev-textured-dark .ev-fancy-feat h5,
.ev-textured-dark .ev-fancy-feat .title {
    color: #1A0F0A !important;
}
.ev-textured-dark .ev-fancy-feat p {
    color: #5A4A3A !important;
}

/* Fancy icon boxes that had white text on dark — now show dark on cream */
.fancy-icon-box.boxes-white-version,
.fancy-icon-boxes-v1.boxes-white-version .fancy-icon-box,
.boxes-white-version .fancy-icon-box {
    background: var(--ev-card) !important;
    border: 1px solid var(--ev-line) !important;
    border-radius: 14px !important;
    padding: 28px 24px !important;
    transition: all .2s;
}
.fancy-icon-box .title,
.fancy-icon-box h4,
.fancy-icon-box h4 a,
.fancy-icon-box .box-content .title,
.fancy-icon-box .box-content .title a {
    color: var(--ev-ink) !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}
.fancy-icon-box .title a:hover,
.fancy-icon-box h4 a:hover {
    color: var(--ev-gold) !important;
}
.fancy-icon-box .box-content p,
.fancy-icon-box p {
    color: var(--ev-ink-soft) !important;
    line-height: 1.6 !important;
}
.fancy-icon-box:hover {
    border-color: var(--ev-gold) !important;
    box-shadow: 0 12px 32px rgba(184, 134, 11, .12) !important;
    transform: translateY(-2px);
}

/* Generic: any element with class hinting "white" text should be dark on cream */
.text-white-version, .light-content {
    color: var(--ev-ink) !important;
}
.text-white-version .title,
.text-white-version h2,
.text-white-version h3,
.text-white-version h4 {
    color: var(--ev-ink) !important;
}

/* Iconic-box style — used in service pages */
.iconic-box .title,
.iconic-box h4,
.iconic-box h4 a {
    color: var(--ev-ink) !important;
}
.iconic-box p {
    color: var(--ev-ink-soft) !important;
}

/* ────────────────────────────────────────────────────────────────────────
   Override the legacy multi-coloured icon-gradient-* circles on every
   .iconic-box card so they match the Cartier palette: gold ring on cream
   background, bronze icon. Replaces the purple/pink/teal/orange
   gradients carried over from the original template. */
.iconic-boxes-v1 .iconic-box .icon,
.iconic-boxes-v1 .iconic-box .icon.icon-gradient-1,
.iconic-boxes-v1 .iconic-box .icon.icon-gradient-2,
.iconic-boxes-v1 .iconic-box .icon.icon-gradient-3,
.iconic-boxes-v1 .iconic-box .icon.icon-gradient-4,
.iconic-boxes-v1 .iconic-box .icon.icon-gradient-5,
.iconic-boxes-v1 .iconic-box .icon.icon-gradient-6,
.iconic-boxes-v2 .iconic-box .icon {
    background: #FBF7EE !important;              /* warm cream */
    background-image: none !important;
    border: 1px solid #B8860B !important;        /* bronze ring */
    box-shadow: 0 0 0 5px rgba(184,134,11,.06) !important;
    color: #B8860B !important;
    border-radius: 50% !important;
    transition: all .25s ease;
}
.iconic-boxes-v1 .iconic-box .icon i,
.iconic-boxes-v1 .iconic-box .icon.icon-gradient-1 i,
.iconic-boxes-v1 .iconic-box .icon.icon-gradient-2 i,
.iconic-boxes-v1 .iconic-box .icon.icon-gradient-3 i,
.iconic-boxes-v1 .iconic-box .icon.icon-gradient-4 i,
.iconic-boxes-v1 .iconic-box .icon.icon-gradient-5 i,
.iconic-boxes-v1 .iconic-box .icon.icon-gradient-6 i,
.iconic-boxes-v2 .iconic-box .icon i {
    color: #B8860B !important;
    background: transparent !important;
    -webkit-background-clip: initial !important;
    background-clip: initial !important;
    -webkit-text-fill-color: #B8860B !important;
}
.iconic-boxes-v1 .iconic-box:hover .icon {
    background: #B8860B !important;
    color: #FBF8F3 !important;
}
.iconic-boxes-v1 .iconic-box:hover .icon i {
    color: #FBF8F3 !important;
    -webkit-text-fill-color: #FBF8F3 !important;
}

/* The .iconic-box itself: Cartier white card on cream */
.iconic-boxes-v1 .iconic-box {
    background: #FFFFFF;
    border: 1px solid #E8E2D5;
    border-radius: 14px;
    padding: 36px 26px 28px;
    transition: all .25s ease;
    position: relative;
    overflow: hidden;
}
.iconic-boxes-v1 .iconic-box::before {
    content: "";
    position: absolute;
    top: 0; left: 0; right: 0; height: 2px;
    background: linear-gradient(90deg, transparent 0%, #B8860B 50%, transparent 100%);
}
.iconic-boxes-v1 .iconic-box:hover {
    border-color: #B8860B;
    transform: translateY(-3px);
    box-shadow: 0 18px 40px rgba(184,134,11,.12);
}

/* Service pages tagline + headings (when on cream bg) */
section .common-heading.tagline-boxed.heading-white {
    color: var(--ev-ink) !important;
}

/* Preloader spinner color */
#preloader { background: var(--ev-bg) !important; }
.preloader-icon-wrapper .indicator path { stroke: var(--ev-gold) !important; }
.preloader-icon-wrapper .indicator { color: var(--ev-gold) !important; }

/* ====================================================================== */
/* MOTION HELPERS — aurora/blobs/reveal classes available for non-hero use */
/* (Hero deliberately untouched — user prefers the original look)          */
/* ====================================================================== */

/* ── Aurora — warm radial mesh (cream + gold + amber, no blues) ───── */
.ev-aurora {
    position: absolute;
    inset: -30%;
    pointer-events: none;
    background:
        radial-gradient(circle at 22% 28%, rgba(212, 167, 68, 0.55), transparent 42%),
        radial-gradient(circle at 78% 22%, rgba(255, 215, 122, 0.45), transparent 48%),
        radial-gradient(circle at 65% 78%, rgba(184, 134, 11, 0.35), transparent 55%),
        radial-gradient(circle at 30% 82%, rgba(255, 239, 168, 0.40), transparent 50%);
    filter: blur(80px);
    mix-blend-mode: multiply;
    opacity: 0.65;
    will-change: transform, opacity;
}
.ev-aurora-2 {
    position: absolute;
    inset: -20%;
    pointer-events: none;
    background:
        conic-gradient(
            from 220deg at 50% 50%,
            transparent 0deg,
            rgba(212, 167, 68, 0.22) 50deg,
            rgba(184, 134, 11, 0.18) 110deg,
            transparent 180deg,
            rgba(245, 215, 122, 0.16) 240deg,
            rgba(255, 239, 168, 0.14) 300deg,
            transparent 360deg
        );
    filter: blur(60px);
    mix-blend-mode: multiply;
    opacity: 0.55;
}
@keyframes ev-aurora-spin {
    0%   { transform: rotate(0deg) scale(1.02); }
    50%  { transform: rotate(180deg) scale(1.16); }
    100% { transform: rotate(360deg) scale(1.02); }
}
@keyframes ev-aurora-spin-rev {
    0%   { transform: rotate(0deg) scale(1.05); }
    50%  { transform: rotate(-180deg) scale(0.92); }
    100% { transform: rotate(-360deg) scale(1.05); }
}
@keyframes ev-aurora-breathe {
    0%, 100% { opacity: 0.55; }
    50%      { opacity: 0.85; }
}
.ev-aurora-anim {
    animation: ev-aurora-spin 70s linear infinite, ev-aurora-breathe 9s ease-in-out infinite;
}
.ev-aurora-2-anim { animation: ev-aurora-spin-rev 110s linear infinite; }

/* ── Floating blobs (3 of them, subtle warm) ──────────────────────── */
.ev-blob {
    position: absolute;
    border-radius: 50%;
    filter: blur(60px);
    opacity: 0.35;
    pointer-events: none;
    mix-blend-mode: multiply;
}
.ev-blob-a { background: radial-gradient(circle, rgba(212,167,68,.7), transparent 70%); width: 380px; height: 380px; top: -80px; left: -40px; }
.ev-blob-b { background: radial-gradient(circle, rgba(255,215,122,.55), transparent 70%); width: 480px; height: 480px; top: 30%; right: -100px; }
.ev-blob-c { background: radial-gradient(circle, rgba(184,134,11,.50), transparent 70%); width: 320px; height: 320px; bottom: -60px; left: 40%; }

@keyframes ev-blob-a-anim { 0%,100%{transform:translate(0,0) scale(1)} 33%{transform:translate(40px,-30px) scale(1.08)} 66%{transform:translate(-25px,25px) scale(.95)} }
@keyframes ev-blob-b-anim { 0%,100%{transform:translate(0,0) scale(1)} 33%{transform:translate(-35px,20px) scale(1.05)} 66%{transform:translate(20px,-30px) scale(.92)} }
@keyframes ev-blob-c-anim { 0%,100%{transform:translate(0,0) scale(1)} 50%{transform:translate(15px,-15px) scale(1.15)} }
.ev-blob-a { animation: ev-blob-a-anim 18s ease-in-out infinite; }
.ev-blob-b { animation: ev-blob-b-anim 22s ease-in-out infinite; }
.ev-blob-c { animation: ev-blob-c-anim 14s ease-in-out infinite; }

/* Hero "365" / ev-hero-bang — only fires for the explicit ev-hero-bang
   class. The legacy .hero-title span on the homepage keeps its template style. */
.ev-hero-bang {
    position: relative;
    display: inline-block;
    color: var(--ev-gold) !important;
    font-style: italic !important;
    font-weight: 900 !important;
    transform-origin: 50% 100%;
}

/* ── Word reveal on load (Apple-signature) ───────────────────────── */
@keyframes ev-word-reveal {
    from { opacity: 0; transform: translateY(28px); filter: blur(8px); }
    to   { opacity: 1; transform: translateY(0); filter: blur(0); }
}
.ev-reveal-word {
    display: inline-block;
    animation: ev-word-reveal .9s cubic-bezier(.2,.7,.3,1) both;
}

/* Scroll-driven reveal — modern browsers (Chrome/Safari 116+) */
@supports (animation-timeline: view()) {
    @keyframes ev-reveal-up {
        from { opacity: 0; transform: translateY(34px); }
        to   { opacity: 1; transform: translateY(0); }
    }
    .ev-reveal-up {
        animation: ev-reveal-up linear both;
        animation-timeline: view();
        animation-range: entry 0% cover 30%;
    }
}

/* (Hero kept in its original template style — no overrides.) */

/* Number count-up style (for stats) */
@property --ev-num { syntax: "<integer>"; initial-value: 0; inherits: false; }
@supports (animation-timeline: view()) {
    @keyframes ev-count-110 { to { --ev-num: 110; } }
    @keyframes ev-count-87  { to { --ev-num: 87; } }
    .ev-count-110, .ev-count-87 {
        animation-timeline: view();
        animation-range: entry 0% cover 40%;
    }
    .ev-count-110 { animation-name: ev-count-110; counter-reset: n var(--ev-num); }
    .ev-count-87  { animation-name: ev-count-87;  counter-reset: n var(--ev-num); }
    .ev-count-110::after, .ev-count-87::after { content: counter(n); }
}

/* Section reveal helper — apply class to fade up on scroll */
.ev-fade-in { opacity: 0; transform: translateY(20px); transition: all .9s cubic-bezier(.2,.7,.3,1); }
.ev-fade-in.in-view { opacity: 1; transform: translateY(0); }

/* Blog card hover refinement */
.ev-blog-card { box-shadow: 0 1px 0 rgba(184,134,11,.04); }
.ev-blog-card:hover {
    border-color: #B8860B !important;
    box-shadow: 0 18px 40px rgba(184, 134, 11, .14), 0 0 0 1px rgba(184, 134, 11, .18);
    transform: translateY(-4px);
}
.ev-blog-card:hover .ev-blog-readmore { gap: 14px !important; }
.ev-blog-card:hover .ev-blog-readmore span { transform: translateX(4px); }

/* Testimonial card hover refinement */
.ev-testimonial > div { box-shadow: 0 1px 0 rgba(184,134,11,.04); }
.ev-testimonial:hover > div {
    border-color: #B8860B !important;
    box-shadow: 0 22px 48px rgba(184, 134, 11, .14), 0 0 0 1px rgba(184, 134, 11, .18);
    transform: translateY(-4px);
}

/* Service feature card hover refinement */
.ev-svc-card { box-shadow: 0 1px 0 rgba(184,134,11,.04); }
.ev-svc-card:hover {
    border-color: #B8860B !important;
    box-shadow: 0 20px 44px rgba(184, 134, 11, .14), 0 0 0 1px rgba(184, 134, 11, .18) !important;
    transform: translateY(-4px);
}
.ev-svc-card:hover div[style*="border:1px solid #B8860B"] {
    background: #B8860B !important;
    color: #FBF8F3 !important;
}
.ev-svc-card:hover .ev-svc-link { gap: 14px !important; }
.ev-svc-card:hover .ev-svc-link span:last-child { transform: translateX(6px); }

/* "Veja também" related cards — Cartier editorial */
.ev-related-card { box-shadow: 0 1px 0 rgba(184,134,11,.04); }
.ev-related-card:hover {
    border-color: #B8860B !important;
    box-shadow: 0 18px 40px rgba(184, 134, 11, .14), 0 0 0 1px rgba(184, 134, 11, .18) !important;
    transform: translateY(-3px);
}
.ev-related-card:hover .ev-related-link { gap: 16px !important; }
.ev-related-card:hover .ev-related-link span:last-child { transform: rotate(180deg); }

/* ============================================================== */
/* Textured dark sections — Cartier editorial layered ornaments    */
/* ============================================================== */
.ev-textured-dark {
    position: relative;
    overflow: hidden;
    /* !important is required because section:not([style*="background"]) earlier
       in this file forces var(--ev-bg) — when the inline style has no
       background, that rule wins over the class. Lock dark here. */
    background-color: #1A0F0A !important;
    background-image:
        radial-gradient(circle at 8% 12%, rgba(212,167,68,.18) 0%, transparent 32%),
        radial-gradient(circle at 92% 88%, rgba(184,134,11,.16) 0%, transparent 32%),
        repeating-linear-gradient(135deg, transparent 0, transparent 38px, rgba(184,134,11,.04) 38px, rgba(184,134,11,.04) 39px) !important;
    color: #FBF8F3;
}
.ev-textured-dark > * { position: relative; z-index: 2; }
.ev-textured-dark::before,
.ev-textured-dark::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent 0%, #A88410 25%, #F5D77A 50%, #A88410 75%, transparent 100%);
    z-index: 1;
    pointer-events: none;
}
.ev-textured-dark::before { top: 0; }
.ev-textured-dark::after  { bottom: 0; }

/* Corner ornaments (✦) — added via .ev-corners child */
.ev-textured-dark .ev-corners {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 1;
}
.ev-textured-dark .ev-corners::before,
.ev-textured-dark .ev-corners::after {
    color: #D4A744;
    font-size: 14px;
    opacity: .5;
    position: absolute;
}
.ev-textured-dark .ev-corners::before {
    content: '✦ ' '\A' ' ✦';
    /* fallback if pseudo content doesn't support \A: use the .ev-stars span */
}
/* Use four corner stars via dedicated span placeholders */
.ev-corner-tl, .ev-corner-tr, .ev-corner-bl, .ev-corner-br {
    position: absolute;
    color: #D4A744;
    font-size: 14px;
    opacity: .5;
    z-index: 1;
}
.ev-corner-tl { top: 36px; left: 36px; }
.ev-corner-tr { top: 36px; right: 36px; }
.ev-corner-bl { bottom: 36px; left: 36px; }
.ev-corner-br { bottom: 36px; right: 36px; }

/* Optional giant serif watermark (decorator child div) */
.ev-watermark {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-family: Georgia, 'Times New Roman', serif;
    font-style: italic;
    color: #FBF8F3;
    opacity: .025;
    font-weight: 400;
    line-height: 1;
    pointer-events: none;
    letter-spacing: -.04em;
    z-index: 0;
    white-space: nowrap;
}

/* Light-cream textured section (mirror of dark, for FBF7EE backgrounds) */
.ev-textured-cream {
    position: relative;
    overflow: hidden;
    background-color: #FDFBF7;
    background-image:
        radial-gradient(circle at 12% 18%, rgba(184,134,11,.06) 0%, transparent 32%),
        radial-gradient(circle at 88% 82%, rgba(184,134,11,.05) 0%, transparent 32%),
        repeating-linear-gradient(135deg, transparent 0, transparent 38px, rgba(184,134,11,.02) 38px, rgba(184,134,11,.02) 39px);
}
.ev-textured-cream > * { position: relative; z-index: 2; }
.ev-textured-cream::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent 0%, rgba(184,134,11,.30) 50%, transparent 100%);
    z-index: 1;
}

/* Override legacy red title-tag (the "Agendamento de Eventos" coral strokes) */
.hero-area-v1 .hero-content .title-tag {
    color: #B8860B !important;
    background-color: transparent !important;
}
.hero-area-v1 .hero-content .title-tag span {
    background-color: transparent !important;
    color: #B8860B !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* HERO "365" — coral → bronze gold + gold hand-drawn circle */
.hero-area-v1 .hero-content .hero-title span {
    color: #B8860B !important;
}
.hero-area-v1 .hero-content .hero-title span::after {
    /* SVG hand-drawn ellipse in bronze gold, replaces the legacy blue PNG */
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 280 110' fill='none'><ellipse cx='140' cy='55' rx='128' ry='42' stroke='%23B8860B' stroke-width='3.5' stroke-linecap='round' stroke-dasharray='1 0' transform='rotate(-3 140 55)' opacity='0.95'/><ellipse cx='142' cy='56' rx='122' ry='38' stroke='%23D4A744' stroke-width='2' stroke-linecap='round' transform='rotate(2 142 56)' opacity='0.7'/></svg>") !important;
}

/* Niche tile (homepage 18 niches grid) — refined hover */
.ev-niche-tile { box-shadow: 0 1px 0 rgba(184,134,11,.04); }
.ev-niche-tile:hover {
    border-color: #B8860B !important;
    box-shadow: 0 16px 36px rgba(184, 134, 11, .14), 0 0 0 1px rgba(184, 134, 11, .18) !important;
    transform: translateY(-4px);
}
.ev-niche-tile:hover .ev-niche-tile-icon {
    background: #B8860B !important;
    color: #FBF8F3 !important;
    transform: rotate(-6deg);
}

/* Fancy feature card (homepage "Pensado de raiz") — Cartier editorial */
.ev-fancy-feat {
    box-shadow: 0 1px 0 rgba(184,134,11,.04);
    transition: all .25s;
}
.ev-fancy-feat:hover {
    border-color: #B8860B !important;
    box-shadow: 0 20px 44px rgba(184, 134, 11, .16), 0 0 0 1px rgba(184, 134, 11, .22) !important;
    transform: translateY(-5px);
}
.ev-fancy-feat:hover .ev-fancy-icon {
    background: #B8860B !important;
    color: #FBF8F3 !important;
    transform: rotate(-4deg) scale(1.05);
}
.ev-fancy-feat:hover .ev-fancy-numeral { opacity: .22 !important; }
.ev-fancy-feat:hover .ev-fancy-link { gap: 16px !important; }
.ev-fancy-feat:hover .ev-fancy-link span:last-child { transform: translateX(6px); }

/* Niche card (tipos-de-eventos) — refined Cartier */
.ev-niche-card { box-shadow: 0 1px 0 rgba(184,134,11,.04); }
.ev-niche-card:hover {
    border-color: #B8860B !important;
    box-shadow: 0 18px 40px rgba(184, 134, 11, .14), 0 0 0 1px rgba(184, 134, 11, .18) !important;
    transform: translateY(-3px);
}
.ev-niche-card:hover .ev-niche-icon {
    background: #B8860B !important;
    color: #FBF8F3 !important;
}
.ev-niche-card:hover .ev-niche-link { gap: 14px !important; }
.ev-niche-card:hover .ev-niche-link span:last-child { transform: translateX(4px); }

/* ============================================================== */
/* PAGINATION — theme it to bronze gold (override Bootstrap)        */
/* ============================================================== */
.pagination {
    gap: 6px;
    flex-wrap: wrap;
    align-items: center;
}
.pagination .page-item .page-link,
.pagination .page-link {
    border: 1px solid var(--ev-line) !important;
    background: #fff !important;
    color: var(--ev-ink) !important;
    border-radius: 8px !important;
    padding: 8px 14px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 13.5px !important;
    font-weight: 500 !important;
    transition: all .15s;
    min-width: 38px;
    text-align: center;
}
.pagination .page-item .page-link:hover {
    border-color: var(--ev-gold) !important;
    color: var(--ev-gold) !important;
    background: var(--ev-gold-soft) !important;
}
.pagination .page-item.active .page-link,
.pagination .page-item .page-link.active {
    background: var(--ev-ink) !important;
    color: var(--ev-bg) !important;
    border-color: var(--ev-ink) !important;
    font-weight: 600 !important;
}
.pagination .page-item.disabled .page-link {
    color: var(--ev-ink-soft) !important;
    background: var(--ev-bg-soft) !important;
    opacity: .55;
}
/* Default Laravel pagination wrapper (when not using bootstrap classes) */
nav[role="navigation"][aria-label*="agination"] svg { display: none; }
nav[role="navigation"] p.text-sm,
nav[role="navigation"] .relative.inline-flex.items-center {
    font-family: 'Inter', sans-serif;
    color: var(--ev-ink-soft);
}

/* "Showing X to Y of Z results" → translate via CSS pseudo-element where possible */
nav[role="navigation"] p.text-sm.text-gray-700 {
    color: var(--ev-ink-soft) !important;
}

/* ============================================================== */
/* LOGO — render bigger + recolor coral red → bronze gold via filter */
/* ============================================================== */
.brand-logo img,
.template-header .brand-logo img {
    height: auto !important;
    max-height: 56px !important;
    width: auto !important;
    image-rendering: -webkit-optimize-contrast;
    /* Hue-rotate shifts coral red (~10°) to bronze gold (~40°);
       saturate desaturates the vivid red into a muted gold tone;
       slight darken keeps it readable. Wine-glass blacks unaffected
       (hue-rotate has no effect on achromatic pixels). */
    filter: hue-rotate(32deg) saturate(0.58) brightness(0.92) contrast(1.06) !important;
}
.footer-area .brand-logo img, footer .brand-logo img {
    max-height: 60px !important;
    filter: hue-rotate(32deg) saturate(0.58) brightness(0.92) contrast(1.06) !important;
}
/* Preloader logo also gets the same treatment */
.preloader img, #preloader img {
    filter: hue-rotate(32deg) saturate(0.58) brightness(0.92) contrast(1.06);
}

/* ============================================================== */
/* Cards padding + spacing — consistent breathing across pages      */
/* ============================================================== */
.row[style*="row-gap"] > [class*="col-"] > div[style*="background:#fff"],
.row[style*="row-gap"] > [class*="col-"] > div[style*="background:#FFFFFF"] {
    padding: 36px 32px !important;
}
/* Hero buttons spacing */
.page-title-area .template-btn { padding: 16px 32px !important; }
/* Trial CTA from niche page — also use warm aesthetic */
section[style*="background:#1A0F0A"] .template-btn[style*="background:#B8860B"] {
    background: #B8860B !important;
    color: #1A0F0A !important;
    font-weight: 700 !important;
    border-color: #B8860B !important;
}
