/* modern.css - Nature Elite Edition (The Ultimate Masterpiece) */
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;600;700;800&family=Outfit:wght@500;700;900&display=swap');

/* :root {
    --forest: #1b4332;
    --leaf: #4caf50;
    --emerald: #2d6a4f;
    --lime: #95d5b2;
    --bg-nature: #f8faf8;
    --text-main: #1a1a1a;
    --radius-xl: 40px;
    --ease-nature: cubic-bezier(0.2, 0, 0, 1);

    --primary-color: #1b4332;
    --secondary-color: #4caf50;
    --accent-color: #74c69d;
    --bg-color: #f8faf8;
    --text-color: #1a1a1a;
    --header-bg: #ffffff;
    --footer-bg: #080a09;
} */
:root { --radius-xl: 40px; --ease-nature: cubic-bezier(0.2, 0, 0, 1); }

body { font-family: 'Plus Jakarta Sans', sans-serif; background: var(--bg-color); color: var(--text-color); overflow-x: hidden; }
.skip-link { position: fixed; top: 8px; left: 8px; z-index: 1000001; padding: 10px 14px; color: #fff !important; background: #102f22; border-radius: 6px; transform: translateY(-160%); transition: transform .2s ease; }
.skip-link:focus { transform: translateY(0); }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 3px solid #f2bd00 !important; outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }
h1, h2, h3, h4 { font-family: 'Outfit', sans-serif; font-weight: 900; color: var(--text-color); }
.testi-nature h1, .testi-nature h2, .testi-nature h3, .testi-nature h4 { color: #fff !important; }

/* Scroll Progress Nature */
#scroll-progress { position: fixed; top: 0; left: 0; height: 6px; background: linear-gradient(90deg, var(--primary-color), var(--secondary-color), var(--accent-color)); z-index: 10000; width: 0%; }

/* Header Nature */
.header-nature { position: fixed; top: 20px; left: 50%; transform: translateX(-50%); width: 90%; max-width: 1200px; background: var(--header-bg); backdrop-filter: blur(20px); border-radius: 100px; padding: 15px 40px; display: flex; justify-content: space-between; align-items: center; z-index: 9999; border: 1px solid rgba(0,0,0,0.05); box-shadow: 0 20px 40px rgba(0,0,0,0.05); }
.nav-links a { margin: 0 20px; font-weight: 800; font-size: 13px; text-transform: uppercase; color: var(--primary-color); text-decoration: none !important; transition: 0.3s; }
.nav-links a:hover { color: var(--nav-hover); }
/* Hero Immersive */
.hero-nature { height: 100vh; display: flex; align-items: center; position: relative; background-color: var(--hero-bg-color); background-image: var(--hero-bg-image); background-position: center; background-size: cover; background-repeat: no-repeat; overflow: hidden; padding-top: 100px; color: var(--hero-text-color); }
.hero-nature::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(90deg, var(--hero-overlay-start), var(--hero-overlay-end)); opacity: 0.62; z-index: 1; }
.hero-content { z-index: 2; position: relative; }
.hero-title { font-size: clamp(60px, 10vw, 120px); line-height: 0.9; margin-bottom: 30px; letter-spacing: -5px; color: var(--hero-text-color); }
.hero-title span { color: var(--secondary-color); display: block; font-size: 0.4em; letter-spacing: 5px; font-weight: 500; margin-top: 10px; }
.hero-nature .text-muted { color: var(--hero-muted-text-color) !important; }
.btn-nature { background: var(--secondary-color); color: #fff !important; z-index: 2; position: relative; }
.btn-nature:hover { background: var(--button-hover); color: var(--button-hover-contrast-text) !important; }

.parallax-bird { display: none; } /* Hidden as it's now in the background */

/* Buttons Nature */
.btn-nature { background: var(--primary-color); color: #fff !important; padding: 22px 50px; border-radius: 100px; font-weight: 800; font-size: 15px; letter-spacing: 2px; text-transform: uppercase; border: none; box-shadow: 0 20px 40px rgba(0,0,0,0.1); transition: 0.5s var(--ease-nature); }
.btn-nature:hover { transform: translateY(-2px); background: var(--button-hover); color: var(--button-hover-contrast-text) !important; box-shadow: 0 10px 24px rgba(16,44,30,.18); }

/* Species Narrative Sections */
.section-narrative { padding: 150px 0; position: relative; }
.species-card-elite { background: var(--card-bg-color); border-radius: var(--radius-xl); overflow: hidden; position: relative; transition: 0.7s var(--ease-nature); border: 1px solid var(--card-border-color); display: flex; flex-direction: column; }
.species-card-elite:hover { transform: scale(1.02); box-shadow: 0 50px 100px rgba(0,0,0,0.1); }
.species-img-wrap { height: 360px; overflow: hidden; display: flex; align-items: center; justify-content: center; background: var(--card-bg-color); }
.species-img-wrap img { width: 100%; height: 100%; object-fit: contain; padding: 18px; transition: 1s var(--ease-nature); }
.species-card-elite:hover .species-img-wrap img { transform: scale(1.04); }

.species-info { padding: 50px; position: relative; flex-grow: 1; display: flex; flex-direction: column; justify-content: space-between; }
.species-tag { position: absolute; top: -25px; left: 50px; background: var(--accent-color); color: #fff; padding: 10px 30px; border-radius: 50px; font-weight: 800; font-size: 12px; }

/* Testimonials Nature Lux */
.testi-nature { background: var(--primary-color); color: #fff; padding: 150px 0; border-radius: 100px 100px 0 0; position: relative; }
.testi-bubble { background: rgba(255,255,255,0.09); border: 1px solid rgba(255,255,255,0.14); padding: 60px; border-radius: 60px; backdrop-filter: blur(10px); color: #fff; }
.testi-quote { font-size: 30px; font-weight: 600; line-height: 1.4; font-style: italic; color: #fff; opacity: 1; }
.testi-nature .opacity-50, .testi-nature .opacity-75, .testi-nature small { color: rgba(255,255,255,.82) !important; opacity: 1 !important; }
.page-header .opacity-50, .page-header .opacity-75 { color: rgba(255,255,255,.88) !important; opacity: 1 !important; }

.testimonial-carousel .owl-nav { position: absolute; top: 50%; transform: translateY(-50%); width: 100%; display: flex; justify-content: space-between; pointer-events: none; }
.testimonial-carousel .owl-nav button { pointer-events: auto; background: rgba(255,255,255,0.1) !important; color: #fff !important; width: 60px; height: 60px; border-radius: 50%; transition: 0.3s; font-size: 20px !important; }
.testimonial-carousel .owl-nav button:hover { color: var(--secondary-contrast-text) !important; background: var(--secondary-color); transform: translateY(-2px); }
.testimonial-carousel .owl-nav button.owl-prev { margin-left: -80px; }
.testimonial-carousel .owl-nav button.owl-next { margin-right: -80px; }

@media (max-width: 1200px) {
    .testimonial-carousel .owl-nav button.owl-prev { margin-left: -20px; }
    .testimonial-carousel .owl-nav button.owl-next { margin-right: -20px; }
}
@media (max-width: 768px) {
    .testimonial-carousel .owl-nav { display: none; }
}

/* FAQ Elite */
.faq-elite { background: var(--card-bg-color); padding: 150px 0; }
.faq-item-hq { background: var(--bg-color); border-radius: 30px; padding: 30px; margin-bottom: 20px; transition: 0.4s; cursor: pointer; border: 1px solid var(--card-border-color); }
.faq-item-hq:hover { border-color: var(--secondary-color); background: var(--card-bg-color); transform: translateX(10px); }

/* Footer Nature Elite */
.footer-nature { background: var(--footer-bg); color: #fff; padding: 120px 0 60px; border-top: 1px solid rgba(255,255,255,0.05); }
.footer-nature h5 { font-weight: 800; text-transform: uppercase; letter-spacing: 2px; font-size: 14px; color: var(--secondary-color); margin-bottom: 30px; }
.footer-nature p { color: var(--footer-text-color); font-size: 14px; line-height: 1.8; }
.footer-link { color: var(--footer-text-color); text-decoration: none !important; display: block; margin-bottom: 12px; transition: 0.3s; }
.footer-link:hover { color: var(--secondary-color); transform: translateX(5px); }
.footer-logo { filter: brightness(0) invert(1); opacity: 0.9; margin-bottom: 30px; }
.footer-social-btn { width: 45px; height: 45px; border-radius: 50%; background: rgba(255,255,255,0.05); display: inline-flex; align-items: center; justify-content: center; color: #fff; margin-right: 10px; transition: 0.3s; }
.footer-social-btn:hover { color: var(--secondary-contrast-text); background: var(--secondary-color); transform: translateY(-2px); }

/* Custom Lightbox Nature */
#custom-lightbox { background: rgba(255,255,255,0.98) !important; backdrop-filter: blur(30px); }
#lightbox-img { border: 10px solid #fff; box-shadow: 0 50px 100px rgba(0,0,0,0.1); max-width: 600px !important; max-height: 70vh !important; width: 90% !important; object-fit: contain; }
#lightbox-caption { color: var(--primary-color) !important; font-size: 20px !important; margin-top: 20px; }
#close-lightbox { color: var(--primary-color) !important; z-index: 10; }
.light-btn { color: var(--primary-color) !important; z-index: 10; }

@media (max-width: 991px) {
    .header-nature { padding: 10px 20px; width: 95%; top: 10px; }
    .nav-links { display: none; }
    .hero-title { font-size: 45px; letter-spacing: -2px; }
    .parallax-bird { width: 100%; right: -10%; bottom: 0; }
    
    /* Mobile Menu Toggle Styling */
    .mobile-menu-btn { display: block !important; background: var(--primary-color); color: #fff; border: none; padding: 10px 15px; border-radius: 50px; font-weight: 800; font-size: 12px; }

    .testi-quote { font-size: 18px !important; }
    .testi-bubble { padding: 30px !important; border-radius: 30px !important; }
}

/* Mobile Menu Drawer */
.mobile-menu-drawer { position: fixed; top: 0; left: -100%; width: 100%; height: 100%; background: #fff; z-index: 10000; transition: 0.5s cubic-bezier(0.85, 0, 0.15, 1); padding: 40px; display: flex; flex-direction: column; }
.mobile-menu-drawer.active { left: 0; }
.drawer-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 50px; }
#close-mobile { background: none; border: none; font-size: 30px; color: var(--primary-color); }
.drawer-nav { display: flex; flex-direction: column; gap: 25px; }
.drawer-nav a { font-size: 24px; font-weight: 800; color: var(--primary-color); text-decoration: none; text-transform: uppercase; letter-spacing: -1px; }
.drawer-nav a.btn-success { background: var(--secondary-color); color: #fff; padding: 15px; border-radius: 15px; text-align: center; font-size: 18px; margin-top: 20px; }

/* Sticky Header Adjustments */
#sticky-header { transition: 0.3s; }
#sticky-header.sticky { background: rgba(255,255,255,0.95) !important; backdrop-filter: blur(10px); box-shadow: 0 10px 30px rgba(0,0,0,0.05); padding: 10px 0 !important; }

@media (max-width: 991px) {
    .hero-title { font-size: 50px !important; }
    .hero-nature { padding: 100px 0 50px !important; text-align: center; }
    .mobile-menu-btn { display: flex !important; background: none; border: none; font-weight: 800; color: var(--primary-color); align-items: center; gap: 8px; }
}

@media (max-width: 768px) {
    .testi-quote { font-size: 16px !important; }
}

/* Unified gradient navigation */
.header-nature {
    position: fixed !important;
    top: 20px !important;
    background: linear-gradient(115deg, var(--header-bg) 0%, var(--primary-color) 52%, var(--header-gradient-end) 100%) !important;
    border-color: rgba(255,255,255,.16) !important;
    box-shadow: 0 22px 55px rgba(5,37,24,.24) !important;
}
.header-nature .logo {
    display: flex;
    align-items: center;
    padding: 6px 12px;
    border-radius: 999px;
    background: var(--header-logo-bg);
}
.header-nature .nav-links a { color: var(--header-text-color) !important; }
.header-nature .nav-links a:hover { color: var(--accent-color) !important; }
.header-nature .nav-links a.active { color: var(--accent-color) !important; }
.header-nature .cta > a {
    background: var(--header-button-bg) !important;
    color: var(--header-button-text) !important;
    box-shadow: 0 10px 25px rgba(0,0,0,.15);
}
.header-nature .mobile-menu-btn { color: var(--header-text-color) !important; }

@media (max-width: 991px) {
    .header-nature { border-radius: 24px; }
    .header-nature .logo { padding: 4px 9px; }
}

/* Shared public-page language */
.site-header .nav-links a.active { color: var(--accent-color) !important; }
.header-whatsapp { align-items: center; padding: 11px 20px; border-radius: 999px; background: var(--header-button-bg); color: var(--header-button-text) !important; font-weight: 800; text-decoration: none !important; }
.page-header, .hero-page-elite, .ave-hero {
    background: linear-gradient(125deg, var(--hero-overlay-start) 0%, var(--primary-color) 55%, var(--hero-overlay-end) 100%) !important;
    padding: 150px 0 86px !important;
    border-radius: 0 0 72px 72px !important;
    color: var(--hero-text-color);
}
.page-header h1, .hero-page-elite h1, .ave-hero h1 { color: var(--hero-text-color) !important; }
.guide-card, .testimonial-card, .sale-card, .info-card { background: var(--card-bg-color); border-color: var(--card-border-color); box-shadow: 0 22px 60px rgba(11, 51, 36, .07); }

/* Responsive gallery */
body.gallery-open { overflow: hidden; touch-action: none; }
.gallery-lightbox { display: none; position: fixed; inset: 0; z-index: 999999; align-items: center; justify-content: center; padding: 24px; background: rgba(4, 18, 13, .9) !important; backdrop-filter: blur(12px); }
.gallery-dialog { width: min(1080px, 100%); max-height: calc(100svh - 48px); overflow: hidden; border: 1px solid rgba(255,255,255,.14); border-radius: 8px; background: #101713; box-shadow: 0 28px 100px rgba(0,0,0,.55); }
.gallery-toolbar { height: 58px; display: flex; align-items: center; justify-content: space-between; padding: 0 14px 0 20px; border-bottom: 1px solid rgba(255,255,255,.1); color: #fff; }
.gallery-toolbar > div { display: flex; align-items: baseline; gap: 10px; }
.gallery-toolbar strong { font-size: 14px; }
.gallery-toolbar span { color: rgba(255,255,255,.58); font-size: 11px; }
.gallery-stage { width: 100%; margin: 0; padding: 14px; display: flex; flex-direction: column; gap: 10px; }
.gallery-media { position: relative; height: min(68vh, 680px); display: flex; align-items: center; justify-content: center; overflow: hidden; border-radius: 6px; background: #070b09; }
#lightbox-img { width: 100% !important; height: 100% !important; max-width: 100% !important; max-height: 100% !important; object-fit: contain; border: 0; border-radius: 0; box-shadow: none; opacity: 1; transition: opacity .18s ease; }
#lightbox-img.is-changing { opacity: .25; }
.gallery-loading { display: none; position: absolute; inset: 0; z-index: 4; align-items: center; justify-content: center; flex-direction: column; gap: 12px; color: rgba(255,255,255,.76); background: #070b09; }
.gallery-loading.active { display: flex; }
.gallery-loading span { width: 34px; height: 34px; border: 3px solid rgba(255,255,255,.18); border-top-color: var(--secondary-color); border-radius: 50%; animation: gallery-spin .75s linear infinite; }
.gallery-loading small { font-size: 11px; font-weight: 700; }
@keyframes gallery-spin { to { transform: rotate(360deg); } }
#lightbox-caption { min-height: 20px; position: static; margin: 0; color: rgba(255,255,255,.76) !important; font-size: 12px !important; font-weight: 600; text-align: center; }
.gallery-close, .gallery-control { display: grid; place-items: center; border: 1px solid rgba(255,255,255,.15); color: #fff !important; cursor: pointer; }
.gallery-close { width: 38px; height: 38px; border-radius: 50%; background: rgba(255,255,255,.08); font-size: 16px; }
.gallery-control { position: absolute; top: 50%; z-index: 2; width: 46px; height: 58px; border-radius: 6px; transform: translateY(-50%); background: rgba(4,18,13,.7); font-size: 16px; backdrop-filter: blur(8px); }
.gallery-control:hover, .gallery-close:hover { color: var(--secondary-contrast-text) !important; background: var(--secondary-color); }
.gallery-control-prev { left: 12px; }
.gallery-control-next { right: 12px; }
.gallery-thumbnails { display: flex; width: 100%; gap: 7px; padding: 2px 0; overflow-x: auto; scrollbar-width: thin; scroll-snap-type: x proximity; }
.gallery-thumbnails button { flex: 0 0 72px; width: 72px; height: 54px; padding: 2px; overflow: hidden; border: 2px solid transparent; border-radius: 6px; background: #26332c; opacity: .52; cursor: pointer; scroll-snap-align: center; transition: .2s ease; }
.gallery-thumbnails button.active { border-color: var(--secondary-color); opacity: 1; }
.gallery-thumbnails img { width: 100%; height: 100%; object-fit: cover; border-radius: 3px; }
.gallery-grid { grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)) !important; }
.gal-item { width: 100%; padding: 0; border: 0; background: #eaf3ed; aspect-ratio: 1 / 1; height: auto !important; }
.gal-item img { width: 100%; height: 100%; object-fit: cover; }
.open-custom-gallery.is-loading { opacity: .65; cursor: wait; }

@media (max-width: 767px) {
    body { font-size: 15px; }
    .header-nature { top: 10px !important; width: calc(100% - 20px) !important; min-height: 68px; padding: 9px 12px !important; border-radius: 20px !important; }
    .header-nature .logo img { width: 58px; height: auto; }
    .mobile-menu-btn span { display: none; }
    .hero-nature { min-height: 720px; height: 100svh; padding: 120px 18px 60px !important; }
    .hero-title { font-size: clamp(44px, 16vw, 64px) !important; line-height: .94; }
    .section-narrative, .testi-nature, .faq-elite { padding: 76px 0 !important; }
    .section-narrative h2, .faq-elite h2 { font-size: 34px !important; }
    .species-img-wrap { height: 300px !important; }
    .species-info { padding: 34px 24px 26px; }
    .species-tag { left: 24px; }
    .testi-nature { border-radius: 42px 42px 0 0; }
    .page-header, .hero-page-elite, .ave-hero { padding: 120px 16px 58px !important; margin-bottom: 46px !important; border-radius: 0 0 40px 40px !important; }
    .page-header h1, .hero-page-elite h1, .ave-hero h1 { font-size: 38px !important; }
    .guide-card, .info-card { padding: 28px !important; border-radius: 26px !important; }
    .gallery-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 8px !important; }
    .gallery-lightbox { padding: 10px; }
    .gallery-dialog { max-height: calc(100svh - 20px); border-radius: 6px; }
    .gallery-toolbar { height: 52px; padding-left: 14px; }
    .gallery-stage { padding: 8px; }
    .gallery-media { height: calc(100svh - 190px); min-height: 320px; }
    .gallery-control { width: 40px; height: 48px; }
    .gallery-control-prev { left: 6px; }
    .gallery-control-next { right: 6px; }
    .gallery-thumbnails button { flex-basis: 62px; width: 62px; height: 48px; }
    #whatsapp-smart { right: 16px !important; bottom: 16px !important; }
}

/* Navigation refresh */
.header-nature {
    width: min(calc(100% - 40px), 1160px) !important;
    padding: 10px 14px 10px 20px !important;
    border-radius: 28px !important;
    background: linear-gradient(110deg, var(--header-bg), var(--header-gradient-end)) !important;
}
.header-nature .logo { padding: 5px 12px; }
.header-nature .logo img { display: block; max-height: 48px; width: auto; }
.header-nature .nav-links { display: flex; align-items: center; gap: 4px; }
.header-nature .nav-links a {
    margin: 0;
    padding: 11px 15px;
    border-radius: 13px;
    font-size: 12px;
    letter-spacing: .04em;
}
.header-nature .nav-links a:hover,
.header-nature .nav-links a.active { background: var(--header-hover-bg); }
.header-nature .cta > a { min-height: 44px; padding: 0 20px; align-items: center; border-radius: 15px; }

body.menu-open { overflow: hidden; }
.mobile-menu-drawer {
    left: auto;
    right: -100%;
    background: linear-gradient(145deg, var(--header-bg), var(--primary-color) 70%, var(--header-gradient-end));
    color: var(--header-text-color);
    padding: max(26px, env(safe-area-inset-top)) 26px 30px;
}
.mobile-menu-drawer.active { left: auto; right: 0; }
.drawer-header img { padding: 7px 12px; border-radius: 18px; background: var(--header-logo-bg); }
#close-mobile { width: 48px; height: 48px; border-radius: 50%; background: var(--header-hover-bg); color: var(--header-text-color); }
.drawer-nav { gap: 8px; }
.drawer-nav a { padding: 14px 16px; border-radius: 14px; color: var(--header-text-color); font-size: clamp(18px, 6vw, 25px); letter-spacing: -.03em; }
.drawer-nav a:hover { background: var(--header-hover-bg); color: var(--header-text-color); }
.drawer-nav a.btn-success { background: var(--header-button-bg); color: var(--header-button-text); border-radius: 16px; }

@media (max-width: 991px) {
    .header-nature { width: calc(100% - 24px) !important; padding: 9px 10px 9px 14px !important; border-radius: 21px !important; }
    .header-nature .nav-links { display: none !important; }
    .header-nature .mobile-menu-btn {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        gap: 8px;
        min-width: 52px;
        min-height: 48px;
        padding: 0 15px;
        border: 1px solid rgba(255,255,255,.18);
        border-radius: 15px;
        background: var(--header-hover-bg) !important;
        color: var(--header-text-color) !important;
        font-size: 13px;
    }
    .header-nature .mobile-menu-btn i { font-size: 20px; }
    .header-nature .cta > a { display: none !important; }
}

@media (max-width: 420px) {
    .header-nature .logo img { max-height: 42px; }
    .header-nature .mobile-menu-btn span { display: inline; }
    .mobile-menu-drawer { width: 100%; }
}

.footer-signature { width: fit-content; max-width: 100%; margin: 0 auto; display: flex; align-items: center; justify-content: center; gap: 16px; padding: 14px 18px; color: var(--footer-credit-text); background: var(--footer-credit-bg); border: 1px solid var(--card-border-color); border-radius: 24px; box-shadow: 0 14px 38px rgba(26,77,51,.08); }
.footer-signature-mark { flex: 0 0 44px; width: 44px; height: 44px; display: grid; place-items: center; color: #fff; background: linear-gradient(135deg, var(--secondary-color), var(--primary-color)); border-radius: 14px; box-shadow: 0 9px 20px rgba(35,142,82,.22); }
.footer-signature-copy { display: flex; flex-direction: column; align-items: flex-start; text-align: left; line-height: 1.35; }
.footer-signature-copy strong { color: var(--primary-color); font-size: 12px; font-weight: 800; letter-spacing: .025em; }
.footer-signature-copy span { margin-top: 2px; color: var(--footer-credit-text); font-size: 11px; }
.site-credits { display: inline-flex; align-items: center; justify-content: center; gap: 10px; color: var(--footer-credit-text); font-size: 11px; }
.site-credits-badge { padding: 5px 10px; color: #fff; background: linear-gradient(120deg, #35ad6b, #238653); border-radius: 999px; font-size: 10px; font-weight: 900; letter-spacing: .06em; }
.site-credits-divider { flex: 0 0 1px; width: 1px; height: 34px; background: var(--card-border-color); }
.site-credits .fa-heart { margin: 0 3px; color: #e63946; }
.site-credits a { color: var(--primary-color); font-weight: 800; text-decoration: none; }
@media (max-width: 760px) { .footer-signature { width: 100%; flex-wrap: wrap; gap: 12px; padding: 16px; } .footer-signature-copy { flex: 1; } .site-credits { width: 100%; flex-wrap: wrap; padding-top: 12px; border-top: 1px solid #dce9e1; } .site-credits-divider { display: none; } }

/* Header logo and public contrast polish */
.header-nature .logo {
    background: var(--header-logo-bg) !important;
    border: 1px solid rgba(255,255,255,.52);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.85), 0 9px 24px rgba(2,30,18,.16);
}
.header-nature .cta { min-width: 90px; justify-content: flex-end; }
.page-header, .hero-page-elite, .ave-hero { padding-top: 185px !important; }
.page-header h1, .page-header p,
.hero-page-elite h1, .hero-page-elite p,
.ave-hero h1, .ave-hero p { color: var(--hero-text-color) !important; }
.form-dep[style*="primary-color"] h1,
.form-dep[style*="primary-color"] h2,
.form-dep[style*="primary-color"] h3,
.form-dep[style*="primary-color"] p,
.section-elite .glass-card[style*="primary-color"] h1,
.section-elite .glass-card[style*="primary-color"] h2,
.section-elite .glass-card[style*="primary-color"] h3,
.section-elite .glass-card[style*="primary-color"] p { color: #fff !important; }
.form-container, .dep-item, .listing-card, .guide-card, .info-card { color: #244b39; }
.form-container h1, .form-container h2, .form-container h3, .form-container h4,
.dep-item h1, .dep-item h2, .dep-item h3, .dep-item h4,
.listing-card h1, .listing-card h2, .listing-card h3, .listing-card h4 { color: #173d2c !important; }
.input-dep { color: #173d2c; }
.input-dep::placeholder { color: #85978f; opacity: 1; }

.star-rating { display: inline-flex; align-items: center; justify-content: center; gap: 5px; }
.star-rating .star-btn { width: 44px; height: 44px; padding: 0; border: 0; border-radius: 12px; background: transparent; color: #d9dedb; font-size: 30px; line-height: 1; cursor: pointer; transition: color .16s ease, transform .16s ease, background .16s ease; }
.star-rating .star-btn.selected { color: #f2bd00; }
.star-rating .star-btn:hover,
.star-rating .star-btn:focus-visible { outline: none; color: #f2bd00; background: #fff8d9; transform: translateY(-2px) scale(1.06); }

/* Public contrast safeguards */
.section-narrative,
.faq-elite,
.about-band,
.form-container,
.dep-item,
.listing-card,
.guide-card,
.info-card,
.species-card-elite { color: var(--text-color); }
.section-narrative .text-muted,
.faq-elite .text-muted,
.about-band .text-muted,
.form-container .text-muted,
.dep-item .text-muted,
.listing-card .text-muted,
.guide-card .text-muted,
.info-card .text-muted,
.species-card-elite .text-muted,
.filter-bar .text-muted { color: #4c6257 !important; opacity: 1 !important; }
.form-container label,
.form-dep label,
.filter-bar label { color: #294b3b !important; opacity: 1 !important; }
.input-dep,
.filter-select,
.form-container input,
.form-container textarea,
.form-container select { color: #183d2c !important; }
.input-dep::placeholder,
.form-container input::placeholder,
.form-container textarea::placeholder { color: #697e73 !important; opacity: 1; }
.footer-modern { background: var(--footer-bg) !important; color: var(--footer-text-color) !important; border-top-color: rgba(255,255,255,.12) !important; }
.footer-modern h1, .footer-modern h2, .footer-modern h3, .footer-modern h4, .footer-modern h5,
.footer-modern .text-muted { color: var(--footer-text-color) !important; opacity: 1 !important; }
.footer-modern .text-dark { color: var(--secondary-color) !important; }
.footer-modern .border-top { border-color: rgba(255,255,255,.14) !important; }
.badge[style*="background"] { text-shadow: 0 1px 3px rgba(0,0,0,.8); }

@media (max-width: 767px) {
    .page-header, .hero-page-elite, .ave-hero { padding-top: 130px !important; }
    .header-nature .cta { min-width: auto; }
    .form-container { padding: 30px 20px !important; border-radius: 30px !important; }
    .star-rating { gap: 1px; }
    .star-rating .star-btn { width: 42px; height: 44px; font-size: 28px; }
}

/* Automatic public theme contrast */
body,
body.guide-page,
body.species-detail,
.about-page {
    color: var(--page-contrast-text);
    background-color: var(--bg-color);
}

.section-narrative,
.faq-elite,
.about-band:not(.about-band-alt) { color: var(--page-contrast-text); }
.section-narrative h1, .section-narrative h2, .section-narrative h3, .section-narrative h4,
.faq-elite h1, .faq-elite h2, .faq-elite h3, .faq-elite h4,
.about-band:not(.about-band-alt) h1, .about-band:not(.about-band-alt) h2,
.about-band:not(.about-band-alt) h3, .about-band:not(.about-band-alt) h4 {
    color: var(--page-contrast-text) !important;
}
.section-narrative .text-muted,
.faq-elite .text-muted,
.about-band:not(.about-band-alt) .text-muted { color: var(--page-muted-text) !important; }

.species-card-elite,
.faq-item-hq,
.about-band-alt,
.home-sales-band,
.about-fact,
.about-value,
.about-species-item,
.guide-card,
.guide-page .card,
.guide-page .bg-white,
.filter-bar,
.listing-card,
.dep-item,
.form-container,
.info-card,
.glass-card {
    color: var(--surface-contrast-text);
    background-color: var(--card-bg-color);
    border-color: var(--card-border-color);
}

.species-card-elite,
.faq-item-hq,
.about-value,
.about-species-item,
.guide-card,
.filter-bar,
.listing-card,
.dep-item,
.form-container,
.info-card,
.glass-card { border-radius: 8px; }

.species-card-elite h1, .species-card-elite h2, .species-card-elite h3, .species-card-elite h4,
.faq-item-hq h1, .faq-item-hq h2, .faq-item-hq h3, .faq-item-hq h4,
.about-band-alt h1, .about-band-alt h2, .about-band-alt h3, .about-band-alt h4,
.home-sales-band h1, .home-sales-band h2, .home-sales-band h3, .home-sales-band h4,
.about-fact strong, .about-value h3, .about-species-item h3,
.guide-card h1, .guide-card h2, .guide-card h3, .guide-card h4, .guide-card h5,
.guide-page .card h1, .guide-page .card h2, .guide-page .card h3, .guide-page .card h4,
.filter-bar h1, .filter-bar h2, .filter-bar h3, .filter-bar h4,
.listing-card h1, .listing-card h2, .listing-card h3, .listing-card h4,
.dep-item h1, .dep-item h2, .dep-item h3, .dep-item h4, .dep-item h5, .dep-item h6,
.form-container h1, .form-container h2, .form-container h3, .form-container h4,
.info-card h1, .info-card h2, .info-card h3, .info-card h4,
.glass-card h1, .glass-card h2, .glass-card h3, .glass-card h4 {
    color: var(--surface-contrast-text) !important;
}

.species-card-elite p, .species-card-elite li,
.faq-item-hq p, .faq-item-hq li,
.about-band-alt p, .about-band-alt li, .about-band-alt span,
.home-sales-band p, .home-sales-band li, .home-sales-band span,
.about-value p, .about-species-item p,
.guide-card p, .guide-card li, .guide-card div,
.guide-page .card p, .guide-page .card li,
.filter-bar label,
.listing-card p, .listing-card small,
.dep-item p, .dep-item small,
.form-container p, .form-container label,
.info-card p, .info-card li,
.glass-card p {
    color: var(--surface-contrast-text) !important;
}

.species-card-elite .text-muted,
.faq-item-hq .text-muted,
.about-band-alt .text-muted,
.home-sales-band .text-muted,
.guide-card .text-muted,
.guide-page .card .text-muted,
.filter-bar .text-muted,
.listing-card .text-muted,
.dep-item .text-muted,
.form-container .text-muted,
.info-card .text-muted,
.glass-card .text-muted { color: var(--surface-muted-text) !important; opacity: 1 !important; }

.input-dep,
.filter-select,
.form-container input,
.form-container textarea,
.form-container select {
    color: var(--page-contrast-text) !important;
    background-color: var(--bg-color) !important;
    border-color: var(--card-border-color) !important;
    border-radius: 8px;
}
.input-dep::placeholder,
.filter-select::placeholder,
.form-container input::placeholder,
.form-container textarea::placeholder { color: var(--page-muted-text) !important; opacity: 1; }

.header-nature {
    color: var(--header-contrast-text);
    background: var(--header-bg);
}
.header-nature .nav-links a,
.header-nature .mobile-menu-btn { color: var(--header-contrast-text) !important; }
.header-nature .logo { background: var(--header-logo-bg); border-radius: 8px; }

.btn-nature,
.btn-buy { color: var(--primary-contrast-text) !important; }
.btn-whatsapp-v10,
.status-available { color: var(--secondary-contrast-text) !important; }
.guide-page .btn-nature,
.btn-success { color: var(--secondary-contrast-text) !important; }
.badge[style*="background"] { color: #fff !important; text-shadow: 0 1px 3px rgba(0,0,0,.85); }

.footer-modern,
.footer-nature {
    color: var(--footer-contrast-text) !important;
    background: var(--footer-bg) !important;
}
.footer-modern h1, .footer-modern h2, .footer-modern h3, .footer-modern h4, .footer-modern h5,
.footer-modern p, .footer-modern a, .footer-modern .text-muted,
.footer-nature h1, .footer-nature h2, .footer-nature h3, .footer-nature h4, .footer-nature h5,
.footer-nature p, .footer-nature a, .footer-nature .text-muted {
    color: var(--footer-contrast-text) !important;
}
.footer-signature {
    color: var(--footer-credit-contrast-text) !important;
    background: var(--footer-credit-bg) !important;
}
.footer-signature strong, .footer-signature span, .footer-signature a { color: var(--footer-credit-contrast-text) !important; }

.form-dep[style*="primary-color"],
.form-dep[style*="primary-color"] h1,
.form-dep[style*="primary-color"] h2,
.form-dep[style*="primary-color"] h3,
.form-dep[style*="primary-color"] p { color: var(--primary-contrast-text) !important; }

.mobile-menu-drawer { color: #173d2c; background: #fff; }
.mobile-menu-drawer .drawer-nav a,
.mobile-menu-drawer #close-mobile { color: #173d2c !important; }
.mobile-menu-drawer .drawer-nav a.btn-success { color: var(--secondary-contrast-text) !important; }
.btn-nature:hover { color: var(--button-hover-contrast-text) !important; }

/* Shared hero artwork across public pages */
.page-header,
.hero-page-elite,
.ave-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
}
.page-header::before,
.hero-page-elite::before,
.ave-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    background-image: var(--hero-bg-image);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    opacity: .24;
    pointer-events: none;
}
.page-header > .container,
.hero-page-elite > .container,
.ave-hero > .container { position: relative; z-index: 1; }
.page-header::after { display: none !important; }

.testi-nature {
    isolation: isolate;
    overflow: hidden;
    background-color: var(--primary-color);
}
.testi-nature::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    background-image: var(--hero-bg-image);
    background-position: center;
    background-size: cover;
    opacity: .2;
    pointer-events: none;
}
.testi-nature::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(120deg, var(--hero-overlay-start), var(--primary-color), var(--hero-overlay-end));
    opacity: .72;
    pointer-events: none;
}
.testi-nature > .container { position: relative; z-index: 1; }

/* Home conversion flow */
.hero-nature { height: min(860px, 88svh); min-height: 680px; }
.hero-content { max-width: 760px; }
.hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; }
.hero-actions .btn-nature { padding: 18px 28px; border-radius: 8px; letter-spacing: 0; }
.hero-secondary-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 56px;
    padding: 15px 24px;
    color: var(--hero-text-color) !important;
    border: 1px solid currentColor;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 800;
    text-decoration: none !important;
    transition: .25s ease;
}
.hero-secondary-action:hover { color: var(--primary-contrast-text) !important; background: var(--primary-color); border-color: var(--primary-color); transform: translateY(-2px); }

.hero-species-column { position: relative; z-index: 2; }
.hero-species-showcase { width: 100%; max-width: 500px; }
.hero-species-visual { position: relative; width: 100%; height: min(54vh, 520px); min-height: 390px; }
.hero-species-slide {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--hero-text-color) !important;
    opacity: 0;
    visibility: hidden;
    transform: translateY(12px);
    transition: opacity .55s ease, transform .55s ease, visibility .55s ease;
    pointer-events: none;
    text-decoration: none !important;
}
.hero-species-slide.active { opacity: 1; visibility: visible; transform: translateY(0); pointer-events: auto; }
.hero-species-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: drop-shadow(0 28px 32px rgba(0,0,0,.28));
    transition: transform .3s ease;
}
.hero-species-slide span {
    position: absolute;
    left: 50%;
    bottom: 12px;
    min-width: 150px;
    padding: 9px 14px;
    color: var(--header-contrast-text);
    background: var(--header-bg);
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 8px;
    font-size: 12px;
    font-weight: 800;
    text-align: center;
    transform: translateX(-50%);
}
.hero-species-dots { display: flex; align-items: center; justify-content: center; gap: 7px; margin-top: 10px; }
.hero-species-dots button { width: 9px; height: 9px; padding: 0; border: 1px solid var(--hero-text-color); border-radius: 50%; background: transparent; opacity: .65; cursor: pointer; transition: width .2s ease, border-radius .2s ease, opacity .2s ease, background-color .2s ease; }
.hero-species-dots button.active { width: 24px; border-radius: 8px; background: var(--hero-text-color); opacity: 1; }
@media (hover: hover) { .hero-species-slide:hover img { transform: translateY(-4px) scale(1.015); } }

.home-trust-band { padding: 20px 0; color: var(--surface-contrast-text); background: var(--card-bg-color); border-bottom: 1px solid var(--card-border-color); }
.home-trust-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.home-trust-grid > div { min-width: 0; display: flex; align-items: center; gap: 13px; padding: 10px 24px; border-right: 1px solid var(--card-border-color); }
.home-trust-grid > div:last-child { border-right: 0; }
.home-trust-grid i { flex: 0 0 38px; width: 38px; height: 38px; display: grid; place-items: center; color: var(--secondary-color); background: var(--bg-color); border-radius: 8px; }
.home-trust-grid span { min-width: 0; }
.home-trust-grid strong { display: block; color: var(--surface-contrast-text); font-size: 13px; }
.home-trust-grid small { display: block; margin-top: 3px; color: var(--surface-muted-text); font-size: 11px; line-height: 1.4; }

.home-sales-band .home-listing-card { height: 100%; overflow: hidden; color: var(--surface-contrast-text); background: var(--card-bg-color); border: 1px solid var(--card-border-color); border-radius: 8px; box-shadow: 0 14px 35px rgba(18,61,42,.08); }
.home-listing-image { width: 100%; height: 250px; object-fit: cover; background: var(--bg-color); }
.home-listing-card h4 { color: var(--surface-contrast-text) !important; }
.home-listing-card .text-muted { color: var(--surface-muted-text) !important; }
.home-listing-footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.home-listing-price { min-width: 0; color: var(--surface-contrast-text); font-size: 20px; font-weight: 800; white-space: nowrap; }
.home-listing-footer .btn { flex: 0 0 auto; border-radius: 8px; font-weight: 800; }

@media (max-width: 767px) {
    .hero-nature { height: auto; min-height: 640px; }
    .hero-actions { align-items: stretch; flex-direction: column; }
    .hero-actions .btn-nature, .hero-secondary-action { width: 100%; min-height: 54px; padding: 15px 18px; }
    .home-trust-grid { grid-template-columns: 1fr; }
    .home-trust-grid > div { padding: 13px 4px; border-right: 0; border-bottom: 1px solid var(--card-border-color); }
    .home-trust-grid > div:last-child { border-bottom: 0; }
    .home-listing-footer { align-items: stretch; flex-direction: column; }
    .home-listing-footer .btn { width: 100%; }
}

/* Consistent interactive states */
.btn-nature,
.btn-buy,
.btn-success,
.btn-outline-success,
.btn-outline-dark,
.btn-outline-light,
.btn-light,
.btn-whatsapp-v10,
.header-whatsapp,
.hero-secondary-action,
.mobile-menu-btn,
.gallery-close,
.gallery-control {
    transition: color .2s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease !important;
}

@media (hover: hover) {
    body .btn-nature:hover,
    body .btn-buy:hover,
    body .btn-success:hover,
    body .btn-whatsapp-v10:hover,
    body .header-whatsapp:hover {
        color: var(--button-hover-contrast-text) !important;
        background: var(--button-hover) !important;
        border-color: var(--button-hover) !important;
        box-shadow: 0 10px 24px rgba(16,44,30,.18) !important;
        transform: translateY(-2px) !important;
    }
    body .btn-outline-success:hover {
        color: var(--secondary-contrast-text) !important;
        background: var(--secondary-color) !important;
        border-color: var(--secondary-color) !important;
        transform: translateY(-2px) !important;
    }
    body .btn-outline-dark:hover {
        color: var(--primary-contrast-text) !important;
        background: var(--primary-color) !important;
        border-color: var(--primary-color) !important;
        transform: translateY(-2px) !important;
    }
    body .btn-outline-light:hover,
    body .btn-light:hover {
        color: #102c1e !important;
        background: #fff !important;
        border-color: #fff !important;
        transform: translateY(-2px) !important;
    }
    body .hero-secondary-action:hover {
        color: var(--primary-contrast-text) !important;
        background: var(--primary-color) !important;
        border-color: var(--primary-color) !important;
        transform: translateY(-2px) !important;
    }
    .header-nature .nav-links a:hover,
    .header-nature .nav-links a.active {
        color: var(--header-hover-contrast-text) !important;
        background: var(--header-hover-bg) !important;
    }
    .mobile-menu-drawer .drawer-nav a:hover {
        color: #102c1e !important;
        background: #edf6f0 !important;
        transform: none !important;
    }
    .testimonial-carousel .owl-nav button:hover,
    .footer-social-btn:hover {
        color: var(--secondary-contrast-text) !important;
        background: var(--secondary-color) !important;
        transform: translateY(-2px) !important;
    }
    .gallery-close:hover,
    .gallery-control:hover { color: #fff !important; background: #287c50 !important; border-color: #55a979 !important; transform: none !important; }
}

.btn-nature:active,
.btn-buy:active,
.btn-success:active,
.btn-outline-success:active,
.btn-outline-dark:active,
.btn-outline-light:active,
.btn-light:active,
.hero-secondary-action:active { transform: translateY(0) !important; box-shadow: none !important; }

button:disabled,
.btn:disabled,
.btn.disabled { pointer-events: none; opacity: .55; box-shadow: none !important; transform: none !important; }

.header-nature .nav-links a.active {
    color: var(--header-hover-contrast-text) !important;
    background: var(--header-hover-bg) !important;
}
.mobile-menu-drawer #close-mobile { color: #102c1e !important; background: #edf6f0 !important; }

@media (hover: hover) {
    .header-nature .mobile-menu-btn:hover {
        color: var(--header-hover-contrast-text) !important;
        background: var(--header-hover-bg) !important;
    }
    .mobile-menu-drawer #close-mobile:hover { color: #fff !important; background: #287c50 !important; }
    #wa-btn:hover { color: #fff !important; background: #128c45 !important; box-shadow: 0 12px 28px rgba(18,140,69,.3); transform: translateY(-2px); }
}

@media (max-width: 767px) {
    .species-info, .listing-content, .dep-item, .guide-card, .form-container { padding: 22px; }
    .page-header { border-radius: 0 0 28px 28px; }
}

/* ===== Home Premium 2026 ===== */
.home-premium { overflow-x: hidden; }
.site-header { padding-left: clamp(20px,4vw,64px); padding-right: clamp(20px,4vw,64px); }
.header-whatsapp { gap:10px; align-items:center; padding:12px 18px; border-radius:999px; background:#25d366; color:#fff!important; font-weight:800; font-size:13px; text-decoration:none!important; box-shadow:0 10px 25px rgba(37,211,102,.23); transition:.25s ease; }
.header-whatsapp:hover { transform:translateY(-2px); background:#19b957; color:#fff!important; }
.hero-premium { min-height:780px; display:flex; align-items:center; position:relative; isolation:isolate; overflow:hidden; background-position:center; background-size:cover; }
.hero-premium:before { content:""; position:absolute; inset:0; z-index:-2; background:linear-gradient(90deg,rgba(10,37,25,.94) 0%,rgba(20,63,43,.84) 48%,rgba(19,54,40,.42) 100%); }
.hero-premium:after { content:""; position:absolute; inset:auto 0 0; height:180px; z-index:-1; background:linear-gradient(transparent,var(--bg-color)); }
.hero-orb { position:absolute; border-radius:50%; filter:blur(12px); opacity:.24; pointer-events:none; }
.hero-orb-one { width:440px;height:440px;right:-100px;top:-120px;background:var(--secondary-color); }
.hero-orb-two { width:260px;height:260px;left:34%;bottom:-100px;background:#fff;opacity:.08; }
.hero-premium-row { min-height:700px; padding-top:100px; padding-bottom:80px; }
.hero-kicker,.section-eyebrow { display:inline-flex;align-items:center;gap:9px;text-transform:uppercase;letter-spacing:.14em;font-weight:900;font-size:12px; }
.hero-kicker { color:#d9f7e5; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.18); padding:9px 14px; border-radius:999px; margin-bottom:22px; backdrop-filter:blur(10px); }
.hero-premium .hero-title { color:#fff!important; font-size:clamp(46px,5.3vw,78px)!important; line-height:.98!important; letter-spacing:-.055em; max-width:760px; margin-bottom:24px; }
.hero-premium .hero-title span { color:#baf0ce!important; display:block; }
.hero-lead { color:rgba(255,255,255,.82); font-size:18px; line-height:1.75; max-width:620px; font-weight:500; }
.hero-proof-list { list-style:none;padding:0;margin:26px 0 30px;display:flex;flex-wrap:wrap;gap:11px 22px;color:#fff; }
.hero-proof-list li { display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700; }
.hero-proof-list i { color:#72e49d; }
.hero-premium .hero-actions { display:flex;flex-wrap:wrap;gap:12px; }
.hero-premium .btn-nature,.hero-premium .hero-secondary-action,.final-cta .btn-nature,.final-cta .hero-secondary-action { min-height:56px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 24px;border-radius:12px!important; }
.hero-premium .hero-secondary-action { color:#fff!important;border-color:rgba(255,255,255,.4)!important;background:rgba(255,255,255,.08)!important;backdrop-filter:blur(10px); }
.hero-microcopy { color:rgba(255,255,255,.65);font-size:12px;margin-top:18px;display:flex;gap:8px;align-items:center; }
.hero-species-showcase { width:min(100%,430px); position:relative; }
.hero-species-visual { border-radius:32px!important;overflow:hidden;box-shadow:0 35px 80px rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.08);backdrop-filter:blur(16px); }
.hero-species-slide { min-height:530px!important; }
.hero-species-slide img { width:100%;height:530px!important;object-fit:cover; }
.hero-species-slide:after { content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(5,22,14,.92)); }
.hero-species-slide>span { z-index:2!important;left:28px!important;right:28px!important;bottom:28px!important;font-size:28px!important;display:flex!important;align-items:flex-end;justify-content:space-between; }
.hero-species-slide small { font-size:12px;letter-spacing:.06em;text-transform:uppercase;opacity:.85; }
.hero-species-badge { position:absolute;z-index:5;top:-20px;right:-18px;background:#fff;color:#173a28;border-radius:18px;padding:14px 18px;box-shadow:0 18px 35px rgba(0,0,0,.2);transform:rotate(3deg); }
.hero-species-badge span,.hero-species-badge strong { display:block; }.hero-species-badge span{font-size:10px;text-transform:uppercase;letter-spacing:.12em}.hero-species-badge strong{font-size:17px}
.home-trust-band { position:relative;z-index:5;margin-top:-34px;background:transparent!important; }
.home-trust-grid { grid-template-columns:repeat(4,1fr)!important;background:#fff;border:1px solid rgba(25,73,48,.1);border-radius:20px;padding:18px;box-shadow:0 18px 50px rgba(23,61,42,.11); }
.home-trust-grid>div { padding:12px 20px!important;border-right:1px solid #e7efe9; }.home-trust-grid>div:last-child{border-right:0}.home-trust-grid i{font-size:23px!important}.home-trust-grid small{line-height:1.35}
.home-section { padding:110px 0; }
.home-sales-band { background:linear-gradient(180deg,var(--bg-color),#fff); }
.section-heading { max-width:760px;margin:0 auto 52px; }.section-heading.split-heading{max-width:none;display:flex;align-items:end;justify-content:space-between;gap:30px}.section-heading.split-heading>div{max-width:720px}
.section-eyebrow { color:var(--secondary-color);margin-bottom:13px; }.section-heading h2,.why-title,.faq-title { color:var(--surface-contrast-text);font-size:clamp(38px,4.2vw,60px);line-height:1.05;letter-spacing:-.045em;font-weight:900;margin-bottom:18px}.section-heading h2 em{font-style:normal;color:var(--secondary-color)}.section-heading p,.why-intro{color:var(--page-muted-text);font-size:17px;line-height:1.75;margin:0}.section-link{white-space:nowrap;color:var(--primary-color);font-weight:900;text-decoration:none!important;border-bottom:2px solid currentColor;padding-bottom:5px}
.premium-card-row { margin-left:-14px;margin-right:-14px }.premium-card-row>[class*=col-]{padding-left:14px;padding-right:14px}
.home-listing-card,.species-card-elite { border:1px solid rgba(34,74,52,.1)!important;border-radius:24px!important;overflow:hidden;background:#fff!important;box-shadow:0 14px 45px rgba(27,69,45,.08)!important;transition:.35s ease!important; }
.home-listing-card:hover,.species-card-elite:hover { transform:translateY(-9px)!important;box-shadow:0 28px 65px rgba(27,69,45,.15)!important; }
.home-listing-media { height:300px;position:relative;overflow:hidden }.home-listing-image{width:100%;height:100%;object-fit:cover;transition:.55s ease}.home-listing-card:hover .home-listing-image{transform:scale(1.045)}
.listing-status { position:absolute;top:18px;left:18px;padding:8px 12px;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);border-radius:999px;font-weight:800;font-size:11px;color:#176b3d;box-shadow:0 8px 20px rgba(0,0,0,.12) }.listing-status i{font-size:7px;margin-right:5px}
.home-listing-body { padding:26px }.species-pill{display:inline-flex;padding:7px 10px;border-radius:999px;background:color-mix(in srgb,var(--pill-color) 14%,#fff);color:var(--pill-color);font-weight:900;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.home-listing-body h3{font-size:24px;font-weight:900;margin:14px 0 9px}.home-listing-body p{color:#637469;line-height:1.65;min-height:52px}.home-listing-footer{border-top:1px solid #edf1ee;padding-top:18px!important;margin-top:18px!important}.home-listing-footer>div small,.home-listing-footer>div strong{display:block}.home-listing-footer small{font-size:10px;text-transform:uppercase;color:#819087;font-weight:800}.home-listing-footer strong{font-size:23px;color:#173d29}.listing-contact{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff!important;font-size:22px;text-decoration:none!important;box-shadow:0 10px 22px rgba(37,211,102,.25)}
.section-narrative { background:#fff!important }.species-img-wrap{height:330px!important;position:relative}.species-img-wrap img{height:100%!important;object-fit:cover!important;transition:.55s ease}.species-card-elite:hover img{transform:scale(1.045)}.species-img-wrap .species-tag{position:absolute;left:18px;bottom:18px;top:auto!important;color:#fff!important;padding:8px 12px;border-radius:999px;font-size:11px;font-weight:900}.species-info{padding:27px!important}.species-info h3{font-size:27px!important}.species-info p{color:#637469!important;line-height:1.7;min-height:80px}.species-actions{display:flex;gap:10px;align-items:center}.species-primary{flex:1;min-height:48px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;border-radius:11px;background:#173d29;color:#fff!important;font-weight:800;text-decoration:none!important}.species-gallery{width:48px;height:48px;border-radius:11px;border:1px solid #dce8df;background:#f7fbf8;color:#21633f}
.why-section { background:linear-gradient(135deg,#ecf6ef 0%,#f8fbf9 55%,#fff 100%); }.why-title{font-size:clamp(38px,4vw,56px)}.why-intro{margin-bottom:30px}.btn-nature.compact{min-height:50px;padding:0 20px}.why-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.why-grid article{background:rgba(255,255,255,.86);border:1px solid rgba(28,87,52,.1);border-radius:20px;padding:28px;position:relative;box-shadow:0 12px 35px rgba(34,83,54,.07)}.why-grid article>span{position:absolute;right:20px;top:17px;color:#dfeae3;font-size:34px;font-weight:900}.why-grid i{font-size:24px;color:var(--secondary-color);margin-bottom:24px}.why-grid h3{font-size:20px;font-weight:900}.why-grid p{color:#637469;line-height:1.65;margin:0}
.process-section{background:#153d29;color:#fff}.process-section .section-heading h2,.process-section .section-heading p{color:#fff}.process-section .section-heading p{opacity:.7}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.process-grid article{position:relative;padding:28px;border-radius:20px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.11)}.process-grid article>span{position:absolute;top:24px;right:24px;color:rgba(255,255,255,.18);font-size:32px;font-weight:900}.process-icon{width:52px;height:52px;border-radius:15px;background:#fff;color:#17452e;display:grid;place-items:center;font-size:21px;margin-bottom:25px}.process-grid h3{font-size:20px;font-weight:900}.process-grid p{color:rgba(255,255,255,.68);line-height:1.65;margin:0}
.testi-nature.home-section{padding:110px 0!important}.section-heading.light h2,.section-heading.light p{color:#fff}.section-heading.light p{opacity:.75}.testi-bubble{border-radius:24px!important;padding:48px!important;max-width:880px;margin:auto;background:rgba(255,255,255,.96)!important}.quote-mark{font-size:30px;color:var(--secondary-color);margin-bottom:14px}.testi-quote{font-size:22px!important;line-height:1.65!important;color:#294438!important}.testi-stars{font-size:17px;margin:20px 0}.testimonial-author{display:flex;align-items:center;justify-content:center;gap:14px}.testimonial-author img{width:64px!important;height:64px!important;border-radius:50%;object-fit:cover;border:3px solid var(--secondary-color)}.testimonial-author h4{margin:0;font-size:17px;font-weight:900}.testimonial-author small{color:var(--secondary-color);font-weight:800}
.faq-elite{background:#fff!important}.faq-title{margin-bottom:18px}.faq-contact{display:inline-flex;align-items:center;gap:10px;color:#1f8d4f!important;font-weight:900;text-decoration:none!important;margin-top:18px}.faq-item-hq{border:1px solid #e3ece6!important;border-radius:16px!important;padding:0!important;margin-bottom:12px!important;overflow:hidden;box-shadow:none!important;cursor:pointer}.faq-question{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 24px}.faq-question h3{font-size:17px;margin:0;font-weight:850}.faq-question span{width:34px;height:34px;border-radius:50%;background:#edf6f0;display:grid;place-items:center;color:#1d603c;flex:none}.faq-item-hq .collapse p{padding:0 24px 24px;margin:0;color:#637469;line-height:1.75}
.final-cta{padding:0 0 110px;background:#fff}.final-cta-card{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:55px;border-radius:28px;background:linear-gradient(135deg,#173d29,#256545);color:#fff;box-shadow:0 30px 70px rgba(20,60,39,.22);overflow:hidden;position:relative}.final-cta-card:after{content:"";position:absolute;width:360px;height:360px;border-radius:50%;right:-120px;top:-180px;background:rgba(255,255,255,.08)}.final-cta-card>div{position:relative;z-index:1}.final-cta-card h2{font-size:clamp(34px,4vw,52px);font-weight:900;letter-spacing:-.04em;margin:8px 0 13px}.final-cta-card p{color:rgba(255,255,255,.74);font-size:16px;max-width:700px;margin:0}.final-cta-actions{display:flex;flex-direction:column;min-width:240px;gap:10px}.final-cta .hero-secondary-action{color:#fff!important;border:1px solid rgba(255,255,255,.35)!important;background:rgba(255,255,255,.08)!important}
.footer-modern{background:#102c1e!important;color:#fff!important;padding-top:75px!important}.footer-modern .text-muted{color:rgba(255,255,255,.64)!important}.footer-modern h5,.footer-modern .text-dark{color:#fff!important}.footer-modern .border-top{border-color:rgba(255,255,255,.1)!important}.footer-social-btn{width:44px;height:44px;display:inline-grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.09);color:#fff!important}.footer-links{display:grid;gap:9px}.footer-links a{color:rgba(255,255,255,.68)!important;text-decoration:none!important}.footer-links a:hover{color:#fff!important}.footer-contact-card{padding:20px;border-radius:16px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1)}
@media(max-width:991px){.hero-premium{min-height:auto}.hero-premium-row{min-height:auto;padding-top:150px;padding-bottom:120px}.home-trust-grid{grid-template-columns:repeat(2,1fr)!important}.home-trust-grid>div:nth-child(2){border-right:0}.home-trust-grid>div:nth-child(-n+2){border-bottom:1px solid #e7efe9}.process-grid{grid-template-columns:repeat(2,1fr)}.final-cta-card{display:block}.final-cta-actions{margin-top:28px;flex-direction:row;min-width:0}.section-heading.split-heading{display:block}.section-link{display:none}.site-header{padding-left:18px!important;padding-right:18px!important}}
@media(max-width:767px){.hero-premium-row{padding-top:125px;padding-bottom:95px}.hero-premium .hero-title{font-size:46px!important}.hero-lead{font-size:16px}.hero-proof-list{display:grid;gap:9px}.hero-premium .hero-actions{display:grid}.hero-premium .btn-nature,.hero-premium .hero-secondary-action{width:100%}.home-trust-band{margin-top:-24px}.home-trust-grid{grid-template-columns:1fr!important;padding:10px}.home-trust-grid>div{border-right:0!important;border-bottom:1px solid #e7efe9!important;padding:14px!important}.home-trust-grid>div:last-child{border-bottom:0!important}.home-section{padding:78px 0}.section-heading{margin-bottom:38px}.section-heading h2,.why-title,.faq-title{font-size:38px}.home-listing-media,.species-img-wrap{height:285px!important}.why-grid,.process-grid{grid-template-columns:1fr}.why-grid article,.process-grid article{padding:24px}.testi-bubble{padding:30px 22px!important}.testi-quote{font-size:18px!important}.final-cta{padding-bottom:70px}.final-cta-card{padding:34px 24px;border-radius:22px}.final-cta-actions{display:grid}.footer-modern{text-align:center}.footer-links{justify-items:center}}
@media(prefers-reduced-motion:reduce){.home-listing-card,.species-card-elite,.home-listing-image,.species-img-wrap img{transition:none!important}}

/* ===== Paleta Jo Yama Verde Premium + Contraste WCAG 2026 ===== */
:root {
    --gold-detail: #C9A227;
    --gold-detail-dark: #6B5500;
    --whatsapp-bg: #25D366;
    --whatsapp-text: #102C1E;
}
body { color: var(--text-color); background: var(--bg-color); }
p, li, label, .text-muted { color: var(--page-muted-text); }
a { color: var(--primary-color); }
a:hover { color: var(--button-hover); }

/* Header */
.header-nature,
.site-header { background: linear-gradient(115deg, var(--header-bg), var(--header-gradient-end)) !important; }
.header-nature .nav-links a,
.header-nature .mobile-menu-btn { color: #fff !important; }
.header-nature .nav-links a:hover,
.header-nature .nav-links a.active,
.header-nature .mobile-menu-btn:hover {
    color: #102C1E !important;
    background: var(--gold-detail) !important;
}
.header-whatsapp,
body .header-whatsapp:hover {
    color: var(--whatsapp-text) !important;
    background: var(--whatsapp-bg) !important;
    border-color: var(--whatsapp-bg) !important;
}
.header-logo-wrap { background: #fff; }

/* Hero e banners */
.hero-premium:before,
.hero-nature:before {
    background: linear-gradient(90deg, rgba(18,55,42,.96) 0%, rgba(38,89,69,.88) 52%, rgba(47,104,79,.48) 100%) !important;
}
.hero-kicker { color: #fff; background: rgba(16,44,30,.46); border-color: rgba(255,255,255,.34); }
.hero-lead,
.hero-premium .text-muted,
.hero-nature .text-muted { color: #E8F5EE !important; }
.hero-title span { color: #D9F0E3 !important; }
.hero-secondary-action { color: #fff !important; border-color: rgba(255,255,255,.65) !important; }
.hero-secondary-action:hover { color: #102C1E !important; background: #fff !important; border-color: #fff !important; }

/* Botões */
.btn-nature,
.btn-buy,
.btn-success,
.species-primary {
    color: #fff !important;
    background: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
}
.btn-nature:hover,
.btn-buy:hover,
.btn-success:hover,
.species-primary:hover {
    color: #fff !important;
    background: var(--button-hover) !important;
    border-color: var(--button-hover) !important;
}
.btn-outline-success { color: var(--primary-color) !important; border-color: var(--primary-color) !important; }
.btn-outline-success:hover { color: #fff !important; background: var(--primary-color) !important; }

/* Cards, textos e superfícies */
.home-listing-card,
.species-card-elite,
.guide-card,
.testimonial-card,
.sale-card,
.info-card,
.faq-item-hq,
.form-container { color: var(--surface-contrast-text); background: var(--card-bg-color); border-color: var(--card-border-color); }
.home-listing-body p,
.species-info p,
.why-grid p,
.faq-item-hq .collapse p,
.testi-quote,
.home-listing-card .text-muted { color: #4C6257 !important; }
.home-listing-body h3,
.species-info h3,
.faq-question h3,
.home-listing-footer strong { color: #244A3D !important; }
.home-listing-footer small { color: #587064 !important; }

/* Tags e badges: fundo claro + texto escuro */
.species-pill,
.badge-success,
.home-trust-grid i,
.faq-question span {
    color: #2E5E4E !important;
    background: #D9F0E3 !important;
}
.species-tag { color: #102C1E !important; background: var(--gold-detail) !important; }
.listing-status { color: #244A3D !important; background: rgba(255,255,255,.96) !important; }

/* Dourado apenas em detalhes */
.testi-stars,
.quote-mark,
.section-eyebrow,
.why-grid i { color: var(--gold-detail-dark) !important; }
.process-section .section-eyebrow,
.testi-nature .section-eyebrow,
.final-cta .section-eyebrow { color: #F2D76E !important; }

/* WhatsApp com contraste real */
#wa-btn,
.listing-contact,
.btn-whatsapp-v10,
.drawer-nav a.btn-success {
    color: var(--whatsapp-text) !important;
    background: var(--whatsapp-bg) !important;
    border-color: var(--whatsapp-bg) !important;
}
#wa-btn:hover,
.listing-contact:hover,
.btn-whatsapp-v10:hover,
.drawer-nav a.btn-success:hover {
    color: #fff !important;
    background: #128C45 !important;
}

/* Seções escuras */
.process-section,
.testi-nature,
.final-cta-card { background: linear-gradient(135deg, #183B2F, #2E5E4E) !important; }
.process-grid p,
.final-cta-card p,
.section-heading.light p { color: #D8E7DD !important; opacity: 1 !important; }
.process-grid h3,
.final-cta-card h2,
.section-heading.light h2 { color: #fff !important; }
.process-icon { color: #244A3D; background: #D9F0E3; }

/* Rodapé */
.footer-nature,
.footer-modern { color: #fff !important; background: #183B2F !important; }
.footer-nature p,
.footer-link,
.footer-modern .text-muted,
.footer-modern .footer-links a { color: #D8E7DD !important; }
.footer-nature h5 { color: #F2D76E !important; }
.footer-link:hover,
.footer-modern .footer-links a:hover { color: #fff !important; }
.footer-credit,
.footer-credits { color: #AFC8BC !important; background: #102C1E !important; }
.footer-social-btn { color: #fff !important; background: rgba(255,255,255,.12) !important; }
.footer-social-btn:hover { color: #102C1E !important; background: #F2D76E !important; }

/* Formulários e foco acessível */
.form-control,
.input-hq,
select,
textarea { color: #24372E !important; background: #fff !important; border-color: #B9CCC0 !important; }
.form-control::placeholder,
.input-hq::placeholder,
textarea::placeholder { color: #667B70 !important; opacity: 1; }
.form-control:focus,
.input-hq:focus,
select:focus,
textarea:focus,
button:focus-visible,
a:focus-visible {
    outline: 3px solid #C9A227 !important;
    outline-offset: 3px;
    box-shadow: 0 0 0 4px rgba(201,162,39,.24) !important;
}

/* Menu mobile */
.mobile-menu-drawer { color: #24372E; background: #fff; }
.drawer-nav a { color: #244A3D !important; }
.drawer-nav a:hover { color: #102C1E !important; background: #D9F0E3 !important; }
.mobile-menu-drawer #close-mobile { color: #244A3D !important; background: #D9F0E3 !important; }

/* Seleção de texto */
::selection { color: #102C1E; background: #F2D76E; }

/* =========================================================
   HERO 2026.3 — RECORTE CIRCULAR E CONTRASTE REFORÇADO
   ========================================================= */
.home-premium .hero-premium .hero-content,
.home-premium .hero-premium .hero-content * {
    text-shadow: none;
}
.home-premium .hero-premium .hero-title,
.home-premium .hero-premium .hero-lead,
.home-premium .hero-premium .hero-proof-list,
.home-premium .hero-premium .hero-proof-list li,
.home-premium .hero-premium .hero-microcopy {
    color: #ffffff !important;
}
.home-premium .hero-premium .hero-title span {
    color: #c9f7d9 !important;
}
.home-premium .hero-premium .hero-lead {
    opacity: 1 !important;
}
.home-premium .hero-premium .hero-proof-list li {
    opacity: 1 !important;
    font-weight: 700 !important;
}
.home-premium .hero-premium .hero-proof-list i {
    color: #72f0a1 !important;
    background: #123d2c;
    border-radius: 50%;
    box-shadow: 0 0 0 3px rgba(114,240,161,.16);
}
.home-premium .hero-premium .hero-microcopy {
    opacity: .92 !important;
    font-weight: 600;
}
.home-premium .hero-premium .hero-kicker {
    color: #ffffff !important;
    background: rgba(10, 43, 30, .78) !important;
    border-color: rgba(255,255,255,.32) !important;
}

/* Foto circular, sem aparência de card retangular */
.home-premium .hero-species-showcase {
    width: min(100%, 470px) !important;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.home-premium .hero-species-visual {
    width: min(31vw, 440px) !important;
    height: min(31vw, 440px) !important;
    min-width: 380px;
    min-height: 380px !important;
    aspect-ratio: 1 / 1;
    border-radius: 50% !important;
    overflow: hidden !important;
    border: 5px solid rgba(255,255,255,.72) !important;
    background: transparent !important;
    backdrop-filter: none !important;
    box-shadow: 0 30px 75px rgba(4, 25, 17, .42), 0 0 0 14px rgba(255,255,255,.08) !important;
}
.home-premium .hero-species-slide {
    min-height: 100% !important;
    border-radius: 50% !important;
    overflow: hidden !important;
}
.home-premium .hero-species-slide img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    border-radius: 50% !important;
    transform: scale(1.02);
}
.home-premium .hero-species-slide::after {
    inset: 58% 0 0 !important;
    background: linear-gradient(transparent, rgba(4,28,18,.86)) !important;
}
.home-premium .hero-species-slide > span {
    left: 54px !important;
    right: 54px !important;
    bottom: 44px !important;
    color: #ffffff !important;
    text-shadow: 0 2px 8px rgba(0,0,0,.65);
}
.home-premium .hero-species-slide > span small {
    color: #ffffff !important;
}
.home-premium .hero-species-badge {
    top: 4px !important;
    right: -8px !important;
    color: #173a28 !important;
}
.home-premium .hero-species-dots {
    margin-top: 22px !important;
}
.home-premium .hero-species-dots button {
    border-color: #ffffff !important;
    opacity: .9 !important;
}
.home-premium .hero-species-dots button.active {
    background: #ffffff !important;
}

/* Reforço de contraste dos botões do hero */
.home-premium .hero-premium .btn-nature {
    background: #2e7054 !important;
    color: #ffffff !important;
    border: 2px solid #2e7054 !important;
    box-shadow: 0 12px 26px rgba(5,35,24,.30);
}
.home-premium .hero-premium .btn-nature:hover {
    background: #ffffff !important;
    color: #173a28 !important;
    border-color: #ffffff !important;
}
.home-premium .hero-premium .hero-secondary-action {
    background: rgba(10, 43, 30, .68) !important;
    color: #ffffff !important;
    border: 2px solid rgba(255,255,255,.78) !important;
}
.home-premium .hero-premium .hero-secondary-action:hover {
    background: #ffffff !important;
    color: #173a28 !important;
    border-color: #ffffff !important;
}

@media (max-width: 1199px) {
    .home-premium .hero-species-visual {
        min-width: 350px;
        min-height: 350px !important;
        width: 390px !important;
        height: 390px !important;
    }
}

/* =========================================================
   HERO 2026.4 — IMAGEM INTEIRA, SEM RECORTE CIRCULAR
   ========================================================= */
.home-premium .hero-species-showcase {
    width: min(100%, 520px) !important;
}
.home-premium .hero-species-visual {
    width: 100% !important;
    height: min(56vh, 540px) !important;
    min-width: 0 !important;
    min-height: 410px !important;
    aspect-ratio: auto !important;
    border: 0 !important;
    border-radius: 0 !important;
    overflow: visible !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
}
.home-premium .hero-species-slide {
    border-radius: 0 !important;
    overflow: visible !important;
}
.home-premium .hero-species-slide img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
    border-radius: 0 !important;
    transform: none !important;
    filter: drop-shadow(0 28px 34px rgba(4,25,17,.38)) !important;
}
.home-premium .hero-species-slide::after {
    display: none !important;
}
.home-premium .hero-species-slide > span {
    left: 50% !important;
    right: auto !important;
    bottom: 2px !important;
    transform: translateX(-50%) !important;
    color: #ffffff !important;
    background: rgba(16,44,30,.88) !important;
    border: 1px solid rgba(255,255,255,.26) !important;
    border-radius: 10px !important;
    padding: 10px 16px !important;
    text-shadow: none !important;
    backdrop-filter: blur(10px);
}
.home-premium .hero-species-badge {
    top: 18px !important;
    right: 4px !important;
}
@media (hover: hover) {
    .home-premium .hero-species-slide:hover img {
        transform: translateY(-4px) scale(1.01) !important;
    }
}
@media (max-width: 1199px) {
    .home-premium .hero-species-visual {
        width: 100% !important;
        height: 450px !important;
        min-width: 0 !important;
        min-height: 0 !important;
    }
}

/* =========================================================
   CONTRASTE GLOBAL V5 — fundos claros/escuros consistentes
   ========================================================= */
:root {
  --text-on-light: #20352b;
  --muted-on-light: #50655a;
  --text-on-dark: #ffffff;
  --muted-on-dark: #d8e7dd;
  --link-on-dark: #ffffff;
  --focus-ring: #f0cf5b;
}

body { color: var(--text-on-light); }
body, .light-section, .bg-white, .card, .modal-content, .dropdown-menu,
.info-card, .guide-card, .testimonial-card, .sales-card, .content-card {
  color: var(--text-on-light);
}

body .text-muted,
.light-section .text-muted,
.bg-white .text-muted,
.card .text-muted,
.modal-content .text-muted,
.info-card .text-muted,
.guide-card .text-muted,
.testimonial-card .text-muted,
.sales-card .text-muted {
  color: var(--muted-on-light) !important;
}

.footer-modern,
.footer-modern *,
.hero-elite,
.hero-elite *,
.page-header,
.page-header *,
.dark-section,
.dark-section *,
.testimonials-hero,
.testimonials-hero *,
.guide-hero,
.guide-hero *,
.about-hero,
.about-hero *,
.ave-hero,
.ave-hero * {
  color: var(--text-on-dark);
}

.footer-modern .text-muted,
.footer-modern small,
.footer-modern p,
.footer-modern span:not(.footer-signature-mark),
.dark-section .text-muted,
.hero-elite .text-muted,
.page-header .text-muted,
.testimonials-hero .text-muted,
.guide-hero .text-muted,
.about-hero .text-muted,
.ave-hero .text-muted {
  color: var(--muted-on-dark) !important;
}

.footer-modern a,
.footer-modern .footer-links a,
.footer-modern .footer-contact-card a,
.footer-modern h1,
.footer-modern h2,
.footer-modern h3,
.footer-modern h4,
.footer-modern h5,
.footer-modern h6,
.footer-modern strong {
  color: var(--text-on-dark) !important;
}
.footer-modern .footer-links a:hover,
.footer-modern .footer-contact-card a:hover,
.footer-modern .site-credits a:hover { color: #f0cf5b !important; }
.footer-modern .footer-contact-card {
  background: rgba(255,255,255,.08) !important;
  border-color: rgba(255,255,255,.16) !important;
}
.footer-modern .border-top { border-color: rgba(255,255,255,.16) !important; }
.footer-modern .footer-social-btn {
  color: #fff !important;
  border-color: rgba(255,255,255,.25) !important;
  background: rgba(255,255,255,.08) !important;
}
.footer-modern .footer-social-btn:hover { background: #fff !important; color: #183b2f !important; }

.btn-primary, .btn-nature, .listing-contact, .faq-contact {
  color: #fff !important;
}
.btn-warning, .btn-gold, .badge-gold, [style*="background:#c9a227"], [style*="background: #c9a227"] {
  color: #102c1e !important;
}
.btn-light { color: #183b2f !important; }
.btn-outline-light { color: #fff !important; border-color: rgba(255,255,255,.75) !important; }
.btn-outline-light:hover { background: #fff !important; color: #183b2f !important; }

input, textarea, select, .form-control {
  background: #fff;
  color: #20352b;
  border-color: #cddbd2;
}
input::placeholder, textarea::placeholder, .form-control::placeholder { color: #6a7d72; opacity: 1; }
input:focus, textarea:focus, select:focus, .form-control:focus,
a:focus-visible, button:focus-visible {
  outline: 3px solid var(--focus-ring) !important;
  outline-offset: 3px;
}

.mobile-menu-drawer, .mobile-menu-drawer * { color: #20352b; }
.mobile-menu-drawer .drawer-nav a { color: #20352b !important; }
.mobile-menu-drawer .drawer-nav a:hover { color: #183b2f !important; background: #e5f2e9; }

.alert-light, .badge-light { color: #20352b !important; }
.alert-dark, .badge-dark { color: #fff !important; }

/* Utilitários explícitos para novos componentes */
.surface-light { background: #fff; color: var(--text-on-light); }
.surface-light .muted { color: var(--muted-on-light); }
.surface-dark { background: #183b2f; color: var(--text-on-dark); }
.surface-dark .muted { color: var(--muted-on-dark); }

/* Relatos: seção de largura total sem cantos arredondados assimétricos */
.testi-nature,
.testi-nature.home-section{border-radius:0!important;clip-path:none!important}
.testi-nature::before,
.testi-nature::after{border-radius:0!important}
.testi-nature .section-heading.light h2,
.testi-nature .section-heading.light p,
.testi-nature .section-eyebrow{color:#fff!important}
.testi-nature > .container > p.text-center{max-width:720px;margin:28px auto 0!important;padding:24px 28px;border:1px solid rgba(255,255,255,.18);border-radius:18px;background:rgba(255,255,255,.08);color:#f3f8f5!important;font-weight:700;backdrop-filter:blur(8px)}

/* ===== Correção das imagens dos cards de espécies — v6.2 ===== */
.species-img-wrap {
    position: relative;
    overflow: hidden;
    background: #f4f8f5 !important;
}
.species-img-wrap > img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    padding: 12px !important;
    transform-origin: center center;
}
.species-card-elite:hover .species-img-wrap > img {
    transform: scale(1.025) !important;
}
@media (max-width:767px) {
    .species-img-wrap > img { padding: 8px !important; }
}

/* =========================================================
   V6.4 — MENU GLASS + REVISÃO GLOBAL DE CONTRASTE
   ========================================================= */
:root {
    --glass-white: rgba(255,255,255,.14);
    --glass-white-hover: rgba(255,255,255,.23);
    --glass-border: rgba(255,255,255,.24);
    --dark-surface: #173b2e;
    --dark-surface-2: #244f3e;
}

/* Menu público premium: gradiente verde e seleção branca glass */
.header-nature.site-header {
    background:
      radial-gradient(circle at 8% 0%, rgba(255,255,255,.16), transparent 28%),
      linear-gradient(118deg, #173b2e 0%, var(--primary-color) 48%, var(--header-gradient-end) 100%) !important;
    border: 1px solid rgba(255,255,255,.24) !important;
    box-shadow: 0 22px 60px rgba(7,35,25,.28), inset 0 1px 0 rgba(255,255,255,.12) !important;
    backdrop-filter: blur(18px) saturate(135%);
    -webkit-backdrop-filter: blur(18px) saturate(135%);
}
.header-nature.site-header .nav-links {
    display: flex;
    align-items: center;
    gap: 5px;
}
.header-nature.site-header .nav-links a {
    position: relative;
    margin: 0 !important;
    padding: 10px 14px;
    border: 1px solid transparent;
    border-radius: 999px;
    color: rgba(255,255,255,.86) !important;
    line-height: 1;
    transition: background .22s ease, border-color .22s ease, color .22s ease, transform .22s ease, box-shadow .22s ease;
}
.header-nature.site-header .nav-links a::after { display: none !important; }
.header-nature.site-header .nav-links a:hover,
.header-nature.site-header .nav-links a:focus-visible {
    color: #fff !important;
    background: var(--glass-white-hover) !important;
    border-color: var(--glass-border) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 8px 22px rgba(5,28,19,.13);
    transform: translateY(-1px);
}
.header-nature.site-header .nav-links a.active {
    color: #173b2e !important;
    background: rgba(255,255,255,.92) !important;
    border-color: rgba(255,255,255,.95) !important;
    box-shadow: 0 9px 24px rgba(4,27,18,.18), inset 0 1px 0 #fff;
}
.header-nature.site-header .logo {
    background: rgba(255,255,255,.94) !important;
    border: 1px solid rgba(255,255,255,.7);
    box-shadow: 0 8px 22px rgba(4,30,20,.14);
}
.header-nature.site-header .header-whatsapp {
    color: #fff !important;
    background: rgba(255,255,255,.13) !important;
    border: 1px solid rgba(255,255,255,.25) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.14), 0 10px 24px rgba(4,28,19,.15) !important;
    backdrop-filter: blur(10px);
}
.header-nature.site-header .header-whatsapp:hover,
.header-nature.site-header .header-whatsapp:focus-visible {
    color: #173b2e !important;
    background: #fff !important;
    border-color: #fff !important;
}
.header-nature.site-header .mobile-menu-btn {
    color: #fff !important;
    background: rgba(255,255,255,.13) !important;
    border: 1px solid rgba(255,255,255,.24) !important;
    border-radius: 999px;
    padding: 10px 14px;
}
#sticky-header.sticky,
.header-nature.site-header.sticky {
    background:
      radial-gradient(circle at 8% 0%, rgba(255,255,255,.15), transparent 28%),
      linear-gradient(118deg, rgba(23,59,46,.97), rgba(46,94,78,.97), rgba(63,117,95,.97)) !important;
    border-color: rgba(255,255,255,.2) !important;
    box-shadow: 0 16px 42px rgba(5,32,22,.25) !important;
}

/* Fundos escuros conhecidos: texto e ícones claros */
.testi-nature,
.process-section,
.footer-nature,
.footer-modern,
.dark-section,
.surface-dark,
.page-header,
.hero-page-elite,
.ave-hero,
.testimonials-cta,
[class*="hero-dark"],
[class*="cta-dark"] {
    color: #fff !important;
}
.testi-nature :is(h1,h2,h3,h4,h5,h6,p,span,small,li,strong,label,i),
.process-section :is(h1,h2,h3,h4,h5,h6,p,span,small,li,strong,label),
.footer-nature :is(h1,h2,h3,h4,h5,h6,strong),
.footer-modern :is(h1,h2,h3,h4,h5,h6,strong),
.dark-section :is(h1,h2,h3,h4,h5,h6,strong),
.surface-dark :is(h1,h2,h3,h4,h5,h6,strong),
.page-header :is(h1,h2,h3,h4,h5,h6,strong),
.hero-page-elite :is(h1,h2,h3,h4,h5,h6,strong),
.ave-hero :is(h1,h2,h3,h4,h5,h6,strong),
.testimonials-cta :is(h1,h2,h3,h4,h5,h6,strong) { color: #fff !important; }
.testi-nature :is(p,small,.text-muted),
.process-section :is(p,small,.text-muted),
.footer-nature :is(p,small,span,.text-muted),
.footer-modern :is(p,small,span,.text-muted),
.dark-section :is(p,small,.text-muted),
.surface-dark :is(p,small,.text-muted),
.page-header :is(p,small,.text-muted),
.hero-page-elite :is(p,small,.text-muted),
.ave-hero :is(p,small,.text-muted),
.testimonials-cta :is(p,small,.text-muted) { color: #dcebe2 !important; }

/* Superfícies claras conhecidas: texto escuro */
:is(.card,.glass-card-public,.guide-card,.testimonial-card,.sale-card,.info-card,.faq-item-hq,.species-card-elite,.content-card,.modal-content,.dropdown-menu,.surface-light,.bg-white) {
    color: #20352b;
}
:is(.card,.glass-card-public,.guide-card,.testimonial-card,.sale-card,.info-card,.faq-item-hq,.species-card-elite,.content-card,.modal-content,.dropdown-menu,.surface-light,.bg-white) :is(h1,h2,h3,h4,h5,h6,strong,label) {
    color: #20352b;
}
:is(.card,.glass-card-public,.guide-card,.testimonial-card,.sale-card,.info-card,.faq-item-hq,.species-card-elite,.content-card,.modal-content,.dropdown-menu,.surface-light,.bg-white) :is(p,small,.text-muted) {
    color: #52675c !important;
}

/* Links e botões sobre superfícies escuras */
:is(.testi-nature,.process-section,.footer-nature,.footer-modern,.dark-section,.surface-dark,.page-header,.hero-page-elite,.ave-hero,.testimonials-cta) a:not(.btn-warning):not(.btn-light) {
    color: #fff;
}
:is(.testi-nature,.process-section,.footer-nature,.footer-modern,.dark-section,.surface-dark,.page-header,.hero-page-elite,.ave-hero,.testimonials-cta) a:not(.btn-warning):not(.btn-light):hover {
    color: #fff !important;
    opacity: .92;
}

/* Menu mobile segue o novo padrão, com contraste alto */
.mobile-menu-drawer {
    background: linear-gradient(155deg, #f8fbf9, #eaf3ee) !important;
}
.mobile-menu-drawer .drawer-nav a {
    border-radius: 16px;
    padding: 13px 15px;
    color: #20352b !important;
}
.mobile-menu-drawer .drawer-nav a:hover,
.mobile-menu-drawer .drawer-nav a.active {
    color: #173b2e !important;
    background: rgba(255,255,255,.92) !important;
    box-shadow: 0 8px 24px rgba(23,59,46,.09);
}

@media (max-width: 991px) {
    .header-nature.site-header { border-radius: 23px !important; padding: 10px 14px !important; }
}

/* ===== Jo Yama v7 — menu premium glass e auditoria de contraste ===== */
.site-header.header-nature{background:linear-gradient(118deg,rgba(20,70,49,.97),rgba(37,105,73,.95) 52%,rgba(16,53,38,.97));border:1px solid rgba(255,255,255,.13);box-shadow:0 18px 55px rgba(8,38,25,.2);backdrop-filter:blur(22px) saturate(135%)}
.site-header.header-nature:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 20% -40%,rgba(255,255,255,.2),transparent 32%),linear-gradient(90deg,transparent,rgba(255,255,255,.035),transparent);border-radius:inherit}
.site-header .nav-links a{position:relative;color:rgba(255,255,255,.83)!important;border:1px solid transparent;border-radius:13px;padding:10px 14px!important;transition:.22s ease!important;text-shadow:none!important}
.site-header .nav-links a:hover{color:#fff!important;background:rgba(255,255,255,.115)!important;border-color:rgba(255,255,255,.16)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.12);transform:translateY(-1px)}
.site-header .nav-links a.active{color:#153e2c!important;background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(239,250,244,.85))!important;border-color:rgba(255,255,255,.74)!important;box-shadow:0 8px 22px rgba(1,27,15,.15),inset 0 1px 0 #fff!important}
.site-header .nav-links a:after{display:none!important}.site-header .header-whatsapp{background:rgba(255,255,255,.12)!important;color:#fff!important;border:1px solid rgba(255,255,255,.2)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 10px 25px rgba(4,31,19,.12)!important;backdrop-filter:blur(14px)}.site-header .header-whatsapp:hover{background:rgba(255,255,255,.2)!important;color:#fff!important;transform:translateY(-2px)}
.site-header.is-scrolled,.site-header.sticky{background:linear-gradient(118deg,rgba(17,61,43,.94),rgba(34,96,67,.92),rgba(13,47,33,.95))!important;box-shadow:0 14px 40px rgba(4,31,19,.24)!important}
/* Texto seguro por contexto */
.dark-section,.section-dark,.hero-dark,.cta-dark,.footer-dark,.testimonials-section,.process-section,.final-cta{color:#f6fff9}.dark-section h1,.dark-section h2,.dark-section h3,.dark-section h4,.dark-section h5,.dark-section h6,.section-dark h1,.section-dark h2,.section-dark h3,.section-dark h4,.hero-dark h1,.hero-dark h2,.cta-dark h2,.footer-dark h2,.testimonials-section h2,.process-section h2,.final-cta h2{color:#fff!important}.dark-section p,.dark-section li,.dark-section small,.section-dark p,.section-dark li,.hero-dark p,.cta-dark p,.footer-dark p,.testimonials-section p,.process-section p,.final-cta p{color:#d9ebe1!important}
.bg-white,.card,.guide-card,.about-card,.testimonial-card,.sale-card,.faq-card{color:#243b30}.bg-white h1,.bg-white h2,.bg-white h3,.card h1,.card h2,.card h3,.guide-card h2,.about-card h2,.testimonial-card h3,.sale-card h3,.faq-card h3{color:#183729!important}.bg-white p,.card p,.guide-card p,.about-card p,.testimonial-card p,.sale-card p,.faq-card p{color:#526b5f!important}
@media(max-width:991px){.mobile-menu,.mobile-nav,.mobile-menu-panel{background:linear-gradient(160deg,#174c36,#0d3022)!important;color:#fff!important}.mobile-menu a,.mobile-nav a,.mobile-menu-panel a{color:#eaf7ef!important}.mobile-menu a:hover,.mobile-nav a:hover,.mobile-menu-panel a:hover{background:rgba(255,255,255,.11)!important;color:#fff!important}.mobile-menu a.active,.mobile-nav a.active,.mobile-menu-panel a.active{background:rgba(255,255,255,.92)!important;color:#16412e!important}}

/* v7.5 — correção definitiva de contraste dos depoimentos na Home */
.testi-nature .testi-bubble {
    background: rgba(255,255,255,.97) !important;
    border-color: rgba(255,255,255,.72) !important;
    color: #20352b !important;
    box-shadow: 0 24px 70px rgba(7,35,24,.22) !important;
}
.testi-nature .testi-bubble .quote-mark,
.testi-nature .testi-bubble .quote-mark i {
    color: var(--secondary-color) !important;
}
.testi-nature .testi-bubble .testi-quote {
    color: #294438 !important;
    opacity: 1 !important;
}
.testi-nature .testi-bubble .testimonial-author h4,
.testi-nature .testi-bubble .testimonial-author strong {
    color: #183b2f !important;
}
.testi-nature .testi-bubble .testimonial-author small {
    color: #52675c !important;
    opacity: 1 !important;
}
.testi-nature .testi-bubble .testi-stars,
.testi-nature .testi-bubble .testi-stars i {
    color: #b48700 !important;
}

/* Página de relatos: cartões sempre legíveis em qualquer tema configurado */
.testimonials-page .dep-item {
    background: var(--card-bg-color, #fff) !important;
    color: var(--surface-contrast-text, #20352b) !important;
}
.testimonials-page .dep-item .dep-text,
.testimonials-page .dep-item .dep-author strong {
    color: var(--surface-contrast-text, #20352b) !important;
}
.testimonials-page .dep-item .dep-author small {
    color: var(--surface-muted-text, #52675c) !important;
}
.testimonials-page .dep-item .dep-stars,
.testimonials-page .dep-item .dep-stars i {
    color: #9a7200 !important;
}

/* v7.6 — relatos com foto maior e apresentação premium */
.testi-nature .testi-bubble{
    position:relative;
    max-width:960px;
    min-height:390px;
    padding:56px 70px 48px!important;
    border:1px solid rgba(255,255,255,.8)!important;
    border-radius:32px!important;
    overflow:hidden;
}
.testi-nature .testi-bubble:before{
    content:"";
    position:absolute;
    width:190px;
    height:190px;
    right:-72px;
    top:-88px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(201,162,39,.18),rgba(201,162,39,0) 70%);
    pointer-events:none;
}
.testi-nature .testi-bubble .quote-mark{
    width:58px;
    height:58px;
    display:grid;
    place-items:center;
    margin:0 auto 20px;
    border-radius:19px;
    background:#e5f3eb;
    font-size:23px;
}
.testi-nature .testi-bubble .testi-quote{
    max-width:760px;
    margin:0 auto!important;
    font-size:clamp(19px,2vw,24px)!important;
    line-height:1.65!important;
    font-weight:500;
}
.testi-nature .testi-bubble .testi-stars{margin:22px 0 24px!important}
.testi-nature .testi-bubble .testimonial-author{
    gap:18px;
    width:max-content;
    max-width:100%;
    margin:0 auto;
    padding:10px 22px 10px 10px;
    border:1px solid #e2ebe6;
    border-radius:999px;
    background:#f7faf8;
    box-shadow:0 12px 30px rgba(24,59,47,.09);
    text-align:left;
}
.testi-nature .testi-bubble .testimonial-author img{
    width:92px!important;
    height:92px!important;
    border-radius:50%!important;
    border:4px solid #fff!important;
    outline:3px solid rgba(201,162,39,.34);
    box-shadow:0 8px 22px rgba(24,59,47,.18);
}
.testi-nature .testi-bubble .testimonial-author h4{font-size:19px!important;margin-bottom:4px!important}
.testi-nature .testi-bubble .testimonial-author small{display:block;font-size:13px;line-height:1.4}

.testimonials-page .dep-card-grid{gap:28px}
.testimonials-page .dep-item{
    min-height:360px;
    padding:30px;
    border-radius:30px;
    overflow:hidden;
}
.testimonials-page .dep-item:before{
    content:"";
    position:absolute;
    width:150px;
    height:150px;
    top:-85px;
    right:-70px;
    border-radius:50%;
    background:rgba(217,240,227,.72);
    pointer-events:none;
}
.testimonials-page .dep-quote-icon{
    position:relative;
    z-index:1;
    width:54px;
    height:54px;
    border-radius:18px;
    box-shadow:0 9px 22px rgba(24,59,47,.1);
}
.testimonials-page .dep-stars{margin:20px 0 17px;font-size:15px}
.testimonials-page .dep-text{font-size:16.5px;line-height:1.82}
.testimonials-page .dep-author{
    gap:17px;
    margin-top:27px;
    padding-top:24px;
}
.testimonials-page .dep-author img{
    width:86px!important;
    height:86px!important;
    flex:0 0 86px;
    border-radius:24px!important;
    border:4px solid #fff!important;
    outline:2px solid #d9f0e3;
    box-shadow:0 10px 26px rgba(24,59,47,.16);
}
.testimonials-page .dep-author strong{font-size:17px;line-height:1.3}
.testimonials-page .dep-author small{display:block;margin-top:5px;font-size:13px;line-height:1.45}

@media(max-width:767px){
    .testi-nature .testi-bubble{min-height:0;padding:38px 22px 34px!important;border-radius:26px!important}
    .testi-nature .testi-bubble .testi-quote{font-size:18px!important;line-height:1.65!important}
    .testi-nature .testi-bubble .testimonial-author{width:100%;padding:10px 14px 10px 10px;justify-content:flex-start}
    .testi-nature .testi-bubble .testimonial-author img{width:78px!important;height:78px!important;flex:0 0 78px}
    .testimonials-page .dep-item{padding:25px;min-height:0}
    .testimonials-page .dep-author img{width:76px!important;height:76px!important;flex-basis:76px;border-radius:21px!important}
}


/* v7.7 — relatos horizontais com fotografia em destaque */
.testi-nature{
    background:linear-gradient(145deg,#102f24 0%,#183f31 48%,#244f40 100%)!important;
}
.testi-nature:before{
    background:radial-gradient(circle at 18% 30%,rgba(201,162,39,.11),transparent 34%),radial-gradient(circle at 85% 72%,rgba(107,176,139,.12),transparent 38%)!important;
}
.testi-nature .testi-bubble{
    display:grid!important;
    grid-template-columns:minmax(260px,34%) minmax(0,1fr);
    grid-template-areas:"author content";
    align-items:stretch;
    max-width:1080px;
    min-height:430px;
    padding:0!important;
    text-align:left!important;
    background:#eef3ef!important;
    border:1px solid rgba(255,255,255,.16)!important;
    box-shadow:0 30px 85px rgba(2,20,13,.38)!important;
}
.testi-nature .testi-bubble .testimonial-author{
    grid-area:author;
    position:relative;
    display:flex!important;
    flex-direction:column;
    justify-content:flex-end!important;
    align-items:flex-start!important;
    width:100%!important;
    max-width:none!important;
    min-height:430px;
    margin:0!important;
    padding:32px!important;
    border:0!important;
    border-radius:0!important;
    overflow:hidden;
    background:#183b2f!important;
    box-shadow:none!important;
}
.testi-nature .testi-bubble .testimonial-author:before{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    background:linear-gradient(180deg,rgba(7,29,20,.02) 30%,rgba(7,29,20,.88) 100%);
}
.testi-nature .testi-bubble .testimonial-author img{
    position:absolute;
    inset:0;
    width:100%!important;
    height:100%!important;
    border:0!important;
    outline:0!important;
    border-radius:0!important;
    object-fit:cover!important;
    box-shadow:none!important;
}
.testi-nature .testi-bubble .testimonial-author>div{
    position:relative;
    z-index:2;
    padding:17px 19px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:18px;
    background:rgba(12,42,30,.72);
    backdrop-filter:blur(10px);
}
.testi-nature .testi-bubble .testimonial-author h4{color:#fff!important;font-size:21px!important}
.testi-nature .testi-bubble .testimonial-author small{color:#dcebe2!important;font-size:14px!important}
.testi-nature .testi-bubble .quote-mark,
.testi-nature .testi-bubble .testi-quote,
.testi-nature .testi-bubble .testi-stars{grid-area:content}
.testi-nature .testi-bubble .quote-mark{
    align-self:start;
    justify-self:start;
    margin:58px 58px 0!important;
}
.testi-nature .testi-bubble .testi-quote{
    align-self:center;
    margin:108px 58px 84px!important;
    max-width:none;
    font-size:clamp(20px,2.2vw,27px)!important;
}
.testi-nature .testi-bubble .testi-stars{
    align-self:end;
    justify-self:start;
    margin:0 58px 50px!important;
}

.testimonials-page{background:#e3ebe6!important}
.testimonials-page .testimonials-content{background:linear-gradient(180deg,#e1e9e4,#edf2ef)!important}
.testimonials-page .dep-card-grid{grid-template-columns:1fr!important;gap:30px!important;max-width:1120px;margin:0 auto}
.testimonials-page .dep-item{
    display:grid!important;
    grid-template-columns:minmax(290px,36%) minmax(0,1fr);
    grid-template-areas:"photo body";
    min-height:390px!important;
    padding:0!important;
    overflow:hidden!important;
    background:#f8faf8!important;
    border:1px solid #cbd9d0!important;
    border-radius:32px!important;
    box-shadow:0 24px 65px rgba(24,59,47,.14)!important;
}
.testimonials-page .dep-item:hover{transform:translateY(-5px);box-shadow:0 32px 78px rgba(24,59,47,.2)!important}
.testimonials-page .dep-item:before{display:none!important}
.testimonials-page .dep-author{
    grid-area:photo;
    position:relative;
    display:flex!important;
    flex-direction:column;
    align-items:flex-start!important;
    justify-content:flex-end;
    gap:0!important;
    min-height:390px;
    margin:0!important;
    padding:30px!important;
    border:0!important;
    overflow:hidden;
    background:#183b2f;
}
.testimonials-page .dep-author:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,transparent 35%,rgba(8,31,22,.9) 100%)}
.testimonials-page .dep-author img{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover!important;border:0!important;border-radius:0!important;box-shadow:none!important}
.testimonials-page .dep-author>div{position:relative;z-index:2;padding:15px 17px;border:1px solid rgba(255,255,255,.22);border-radius:17px;background:rgba(12,42,30,.76);backdrop-filter:blur(10px)}
.testimonials-page .dep-author strong{color:#fff!important;font-size:19px!important}
.testimonials-page .dep-author small{color:#dbece2!important;font-size:14px!important}
.testimonials-page .dep-quote-icon,
.testimonials-page .dep-stars,
.testimonials-page .dep-text{grid-area:body}
.testimonials-page .dep-quote-icon{align-self:start;justify-self:start;margin:48px 52px 0!important}
.testimonials-page .dep-stars{align-self:end;justify-self:start;margin:0 52px 42px!important}
.testimonials-page .dep-text{align-self:center;margin:105px 52px 82px!important;font-size:clamp(17px,1.8vw,21px)!important;line-height:1.8!important;color:#294438!important}

@media(max-width:767px){
    .testi-nature .testi-bubble,.testimonials-page .dep-item{grid-template-columns:1fr;grid-template-areas:"author" "content";min-height:0!important}
    .testi-nature .testi-bubble .testimonial-author{min-height:330px;padding:22px!important}
    .testi-nature .testi-bubble .quote-mark{margin:32px 30px 0!important}
    .testi-nature .testi-bubble .testi-quote{margin:82px 30px 70px!important}
    .testi-nature .testi-bubble .testi-stars{margin:0 30px 32px!important}
    .testimonials-page .dep-item{grid-template-areas:"photo" "body"}
    .testimonials-page .dep-author{min-height:330px;padding:22px!important}
    .testimonials-page .dep-quote-icon{margin:30px 28px 0!important}
    .testimonials-page .dep-text{margin:84px 28px 68px!important}
    .testimonials-page .dep-stars{margin:0 28px 30px!important}
}

/* v7.8 — relatos mais compactos e com leitura contínua */
.testi-nature .testi-bubble{
    grid-template-areas:
        "author quote"
        "author stars"
        "author text";
    grid-template-rows:auto auto 1fr;
    min-height:410px;
}
.testi-nature .testi-bubble .quote-mark{
    grid-area:quote;
    align-self:end;
    margin:42px 50px 4px!important;
}
.testi-nature .testi-bubble .testi-stars{
    grid-area:stars;
    align-self:start;
    justify-self:start;
    margin:4px 50px 12px!important;
}
.testi-nature .testi-bubble .testi-quote{
    grid-area:text;
    align-self:start;
    margin:0 50px 42px!important;
    font-size:clamp(19px,2vw,25px)!important;
    line-height:1.62!important;
}

.testimonials-page .dep-item{
    grid-template-areas:
        "photo quote"
        "photo stars"
        "photo body";
    grid-template-rows:auto auto 1fr;
    min-height:370px!important;
}
.testimonials-page .dep-quote-icon{
    grid-area:quote;
    align-self:end;
    margin:38px 46px 4px!important;
}
.testimonials-page .dep-stars{
    grid-area:stars;
    align-self:start;
    justify-self:start;
    margin:4px 46px 12px!important;
}
.testimonials-page .dep-text{
    grid-area:body;
    align-self:start;
    margin:0 46px 38px!important;
    font-size:clamp(16.5px,1.65vw,20px)!important;
    line-height:1.68!important;
}

@media(max-width:767px){
    .testi-nature .testi-bubble{
        grid-template-areas:"author" "quote" "stars" "text";
        grid-template-rows:auto auto auto auto;
    }
    .testi-nature .testi-bubble .quote-mark{margin:28px 28px 3px!important}
    .testi-nature .testi-bubble .testi-stars{margin:3px 28px 10px!important}
    .testi-nature .testi-bubble .testi-quote{margin:0 28px 30px!important}
    .testimonials-page .dep-item{
        grid-template-areas:"photo" "quote" "stars" "body";
        grid-template-rows:auto auto auto auto;
    }
    .testimonials-page .dep-quote-icon{margin:26px 26px 3px!important}
    .testimonials-page .dep-stars{margin:3px 26px 10px!important}
    .testimonials-page .dep-text{margin:0 26px 28px!important}
}

/* v7.9 — relatos refinados: Home em destaque e página interna compacta */
.testi-nature .testi-bubble .testimonial-author>div{
    background:rgba(7,35,24,.86)!important;
    border-color:rgba(255,255,255,.34)!important;
    box-shadow:0 12px 30px rgba(0,0,0,.2)!important;
}
.testi-nature .testi-bubble .testimonial-author h4{color:#fff!important}
.testi-nature .testi-bubble .testimonial-author small{color:#e5f2ea!important}

.testimonials-page .dep-card-grid{
    max-width:980px!important;
    gap:20px!important;
}
.testimonials-page .dep-item{
    grid-template-columns:210px minmax(0,1fr)!important;
    grid-template-areas:
        "photo quote"
        "photo stars"
        "photo body"!important;
    min-height:245px!important;
    border-radius:24px!important;
    box-shadow:0 16px 42px rgba(24,59,47,.11)!important;
}
.testimonials-page .dep-item:hover{
    transform:translateY(-3px)!important;
    box-shadow:0 22px 52px rgba(24,59,47,.16)!important;
}
.testimonials-page .dep-author{
    min-height:245px!important;
    padding:18px!important;
}
.testimonials-page .dep-author:before{
    background:linear-gradient(180deg,rgba(7,31,21,.02) 32%,rgba(7,31,21,.88) 100%)!important;
}
.testimonials-page .dep-author>div{
    width:100%;
    padding:12px 13px!important;
    border-radius:14px!important;
    background:rgba(7,35,24,.88)!important;
    border-color:rgba(255,255,255,.32)!important;
    box-shadow:0 10px 24px rgba(0,0,0,.2)!important;
}
.testimonials-page .dep-author strong{
    color:#fff!important;
    font-size:16px!important;
}
.testimonials-page .dep-author small{
    color:#e2f0e7!important;
    font-size:12px!important;
    margin-top:3px!important;
}
.testimonials-page .dep-quote-icon{
    width:42px!important;
    height:42px!important;
    margin:24px 30px 2px!important;
    border-radius:13px!important;
    font-size:16px!important;
}
.testimonials-page .dep-stars{
    margin:3px 30px 9px!important;
    font-size:13px!important;
}
.testimonials-page .dep-text{
    margin:0 30px 24px!important;
    font-size:16px!important;
    line-height:1.58!important;
    color:#294438!important;
}

@media(max-width:767px){
    .testimonials-page .dep-item{
        grid-template-columns:1fr!important;
        grid-template-areas:"photo" "quote" "stars" "body"!important;
        min-height:0!important;
    }
    .testimonials-page .dep-author{min-height:240px!important;padding:16px!important}
    .testimonials-page .dep-quote-icon{margin:22px 22px 2px!important}
    .testimonials-page .dep-stars{margin:3px 22px 8px!important}
    .testimonials-page .dep-text{margin:0 22px 23px!important;font-size:15.5px!important}
}

/* =========================================================
   v8.1 — espécies compactas e expansão progressiva na Home
   ========================================================= */
.home-premium .species-card-compact .species-img-wrap{height:245px!important}
.home-premium .species-card-compact .species-info{padding:20px!important}
.home-premium .species-card-compact .species-info h3{font-size:22px!important;line-height:1.15;margin-bottom:9px!important}
.home-premium .species-card-compact .species-info p{
    min-height:63px!important;
    margin-bottom:17px!important;
    font-size:14px!important;
    line-height:1.5!important;
    display:-webkit-box;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
}
.home-premium .species-card-compact .species-primary{min-height:44px;font-size:13px}
.home-premium .species-card-compact .species-gallery{width:44px;height:44px;flex:0 0 44px}
.home-premium .species-extra-item{display:none}
.home-premium .species-extra-item.is-visible{display:block}
.home-premium .species-expand-actions{display:flex;justify-content:center;margin-top:8px}
.home-premium .species-expand-button{
    min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:10px;
    padding:0 24px;border:1px solid #bcd6c6;border-radius:999px;background:#fff;color:#1d5138;
    font-weight:900;box-shadow:0 12px 30px rgba(28,70,47,.09);transition:.25s ease
}
.home-premium .species-expand-button:hover{background:#eaf5ee;border-color:#83b49a;transform:translateY(-2px)}
@media(max-width:767px){
    .home-premium .species-card-compact .species-img-wrap{height:230px!important}
    .home-premium .species-card-compact .species-info{padding:18px!important}
}

/* =========================================================
   v8.3 — menu mobile premium e respiro final do rodapé
   ========================================================= */
.footer-modern .copy-right_text{padding-bottom:34px!important}
.footer-modern .footer-signature{margin-bottom:18px!important}

.mobile-menu-overlay{
    position:fixed;inset:0;z-index:10020;background:rgba(4,24,16,.56);
    backdrop-filter:blur(5px);opacity:0;visibility:hidden;transition:.28s ease
}
.mobile-menu-overlay.active{opacity:1;visibility:visible}
.mobile-menu-drawer{
    position:fixed!important;inset:0 0 0 auto!important;z-index:10030!important;
    width:min(420px,92vw)!important;height:100dvh!important;padding:0!important;
    display:flex!important;flex-direction:column!important;
    background:linear-gradient(165deg,rgba(250,253,251,.985),rgba(232,244,237,.98))!important;
    border-left:1px solid rgba(255,255,255,.8)!important;
    box-shadow:-28px 0 80px rgba(3,28,17,.28)!important;
    transform:translateX(105%)!important;transition:transform .38s cubic-bezier(.22,.8,.2,1)!important;
    overflow:hidden!important
}
.mobile-menu-drawer.active{transform:translateX(0)!important}
.mobile-menu-drawer:before{content:"";position:absolute;inset:0 0 auto;height:190px;background:radial-gradient(circle at 20% 0,rgba(56,150,96,.18),transparent 55%);pointer-events:none}
.mobile-menu-drawer .drawer-header{
    position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;
    padding:max(20px,env(safe-area-inset-top)) 20px 18px;border-bottom:1px solid rgba(23,79,52,.1)
}
.mobile-menu-drawer .drawer-brand{display:flex;align-items:center;gap:12px;min-width:0;text-decoration:none!important}
.mobile-menu-drawer .drawer-brand-logo{width:58px;height:58px;display:grid;place-items:center;flex:0 0 58px;background:#fff;border:1px solid rgba(31,102,67,.12);border-radius:18px;box-shadow:0 10px 28px rgba(24,78,52,.11)}
.mobile-menu-drawer .drawer-brand-logo img{max-width:48px;max-height:48px;width:auto;height:auto;padding:0!important;background:none!important;border-radius:0!important}
.mobile-menu-drawer .drawer-brand>span:last-child{display:flex;flex-direction:column;min-width:0}
.mobile-menu-drawer .drawer-brand strong{color:#173b2b!important;font-size:15px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mobile-menu-drawer .drawer-brand small{margin-top:4px;color:#668174!important;font-size:10px;letter-spacing:.025em}
.mobile-menu-drawer #close-mobile{width:44px;height:44px;display:grid;place-items:center;flex:0 0 44px;border:1px solid rgba(25,88,57,.12)!important;border-radius:14px!important;background:rgba(255,255,255,.84)!important;color:#244a38!important;font-size:18px!important;box-shadow:0 8px 22px rgba(23,73,49,.08);transition:.22s ease}
.mobile-menu-drawer #close-mobile:hover{background:#dcefe3!important;color:#17432f!important;transform:rotate(4deg)}
.mobile-menu-drawer .drawer-nav{position:relative;display:grid!important;gap:7px!important;padding:18px 18px 12px!important;overflow-y:auto!important;overscroll-behavior:contain}
.mobile-menu-drawer .drawer-nav a{
    min-height:54px;display:grid!important;grid-template-columns:42px 1fr;align-items:center;gap:10px;
    margin:0!important;padding:6px 12px!important;border:1px solid transparent!important;border-radius:16px!important;
    color:#29483a!important;background:transparent!important;font-size:15px!important;font-weight:800!important;letter-spacing:0!important;text-decoration:none!important;transition:.2s ease!important
}
.mobile-menu-drawer .drawer-nav a i{width:38px;height:38px;display:grid;place-items:center;color:#2b7650!important;background:rgba(39,126,81,.09);border-radius:12px;font-size:15px;transition:.2s ease}
.mobile-menu-drawer .drawer-nav a:hover{color:#173b2b!important;background:rgba(255,255,255,.78)!important;border-color:rgba(37,112,72,.11)!important;box-shadow:0 10px 24px rgba(25,73,49,.07)!important;transform:translateX(3px)}
.mobile-menu-drawer .drawer-nav a:hover i{background:#d8eee0;color:#174b32!important}
.mobile-menu-drawer .drawer-nav a.active{color:#fff!important;background:linear-gradient(135deg,#2d8859,#1c6240)!important;border-color:rgba(26,94,61,.25)!important;box-shadow:0 13px 30px rgba(24,92,57,.22)!important}
.mobile-menu-drawer .drawer-nav a.active i{color:#fff!important;background:rgba(255,255,255,.16)}
.mobile-menu-drawer .drawer-footer{margin-top:auto;padding:14px 18px max(18px,env(safe-area-inset-bottom));border-top:1px solid rgba(23,79,52,.1);background:rgba(255,255,255,.45)}
.mobile-menu-drawer .drawer-whatsapp{min-height:68px;display:grid;grid-template-columns:42px 1fr 24px;align-items:center;gap:11px;padding:11px 13px;border-radius:18px;background:linear-gradient(135deg,#25b967,#178c4c)!important;color:#fff!important;text-decoration:none!important;box-shadow:0 14px 34px rgba(24,142,76,.23);transition:.22s ease}
.mobile-menu-drawer .drawer-whatsapp>i:first-child{width:42px;height:42px;display:grid;place-items:center;background:rgba(255,255,255,.16);border-radius:13px;font-size:22px}
.mobile-menu-drawer .drawer-whatsapp span{display:flex;flex-direction:column}.mobile-menu-drawer .drawer-whatsapp strong{color:#fff!important;font-size:14px}.mobile-menu-drawer .drawer-whatsapp small{margin-top:2px;color:rgba(255,255,255,.78)!important;font-size:10px}.mobile-menu-drawer .drawer-whatsapp>i:last-child{color:#fff!important;font-size:13px}
.mobile-menu-drawer .drawer-whatsapp:hover{color:#fff!important;transform:translateY(-2px);box-shadow:0 18px 38px rgba(24,142,76,.3)}
.mobile-menu-drawer .drawer-footer p{margin:10px 2px 0;color:#6b8176!important;font-size:10px;text-align:center}.mobile-menu-drawer .drawer-footer p i{margin-right:4px;color:#39805b!important}
@media(max-width:480px){
    .mobile-menu-drawer{width:100vw!important}
    .mobile-menu-drawer .drawer-header{padding-left:16px;padding-right:16px}
    .mobile-menu-drawer .drawer-nav{padding-left:14px!important;padding-right:14px!important}
    .mobile-menu-drawer .drawer-footer{padding-left:14px;padding-right:14px}
    .footer-modern .copy-right_text{padding-bottom:42px!important}
    .footer-modern .footer-signature{margin-bottom:10px!important}
}

/* ===== Avium Pro v9.0: refinamento visual, galeria editorial e acessibilidade ===== */
:root{--v9-surface:#fff;--v9-ink:#17382b;--v9-muted:#63776c;--v9-line:#dce9e0;--v9-accent:#2f765b;--v9-soft:#edf6f0}
.home-editorial-gallery{overflow:hidden;background:linear-gradient(180deg,#f7faf8 0%,#edf6f0 100%)}
.editorial-gallery-grid{display:grid;grid-template-columns:1.15fr .85fr .85fr;grid-template-rows:260px 260px;gap:16px}
.editorial-gallery-item{position:relative;display:block;overflow:hidden;border-radius:28px;background:linear-gradient(145deg,#e8f3eb,#d8e9dd);box-shadow:0 18px 42px rgba(24,59,47,.10);isolation:isolate}
.editorial-gallery-item-1{grid-row:1/3}.editorial-gallery-item-2{grid-column:2/4}.editorial-gallery-item img{width:100%;height:100%;object-fit:contain;padding:18px;transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .35s ease;filter:drop-shadow(0 18px 18px rgba(20,55,39,.16))}
.editorial-gallery-item:after{content:"";position:absolute;inset:auto 0 0;height:48%;z-index:-0;background:linear-gradient(180deg,transparent,rgba(8,33,21,.74))}
.editorial-gallery-item span{position:absolute;z-index:2;left:20px;right:20px;bottom:18px;display:grid;grid-template-columns:1fr auto;align-items:end;color:#fff}
.editorial-gallery-item span small,.editorial-gallery-item span strong{grid-column:1}.editorial-gallery-item span small{opacity:.78;font-size:11px;text-transform:uppercase;letter-spacing:.1em}.editorial-gallery-item span strong{font-size:20px}.editorial-gallery-item span i{grid-column:2;grid-row:1/3;align-self:center}
.editorial-gallery-item:hover img{transform:scale(1.045) translateY(-4px)}
.species-card-elite{border:1px solid rgba(39,93,70,.10)!important;box-shadow:0 14px 34px rgba(23,56,43,.08)!important;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease!important}
.species-card-elite:hover{transform:translateY(-7px);border-color:rgba(47,118,91,.22)!important;box-shadow:0 24px 52px rgba(23,56,43,.14)!important}
.species-card-elite .species-img-wrap img{transition:transform .45s ease,filter .35s ease}.species-card-elite:hover .species-img-wrap img{transform:scale(1.045);filter:drop-shadow(0 15px 16px rgba(22,60,42,.16))}
.footer-modern{position:relative;overflow:hidden}.footer-modern:before{content:"";position:absolute;right:-120px;top:-160px;width:380px;height:380px;border-radius:50%;background:radial-gradient(circle,rgba(102,180,134,.13),transparent 68%);pointer-events:none}
.footer-contact-card{border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.055);backdrop-filter:blur(8px)}
.footer-location-link{display:inline-flex;align-items:center;gap:8px;margin-top:15px;color:#d8eadf!important;font-size:12px;font-weight:800;text-decoration:none}.footer-location-link:hover{color:#fff!important;text-decoration:none}
:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:3px solid rgba(69,164,117,.42)!important;outline-offset:3px!important}
img{max-width:100%}.home-premium img[loading="lazy"]{content-visibility:auto}
@media(max-width:991px){.editorial-gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:320px 220px 220px}.editorial-gallery-item-1{grid-column:1/3;grid-row:auto}.editorial-gallery-item-2{grid-column:auto}.species-breadcrumb{top:82px}}
@media(max-width:767px){.editorial-gallery-grid{grid-template-columns:1fr;grid-template-rows:none}.editorial-gallery-item,.editorial-gallery-item-1,.editorial-gallery-item-2{grid-column:auto;grid-row:auto;min-height:300px;border-radius:23px}.editorial-gallery-item span strong{font-size:18px}.species-breadcrumb{top:76px;overflow:hidden}.species-breadcrumb .container{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.footer-modern{padding-bottom:32px!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}


/* Fix contraste CTA final */
.final-cta-card .section-eyebrow{color:#A7F3D0 !important;}
.final-cta-card h2{color:#FFFFFF !important;}
.final-cta-card p{color:#E5F3EA !important;opacity:1 !important;}
.final-cta-card .hero-secondary-action{color:#fff !important;border-color:rgba(255,255,255,.35)!important;background:rgba(255,255,255,.08)!important;}


/* v9.3 — contrast hardening: explicit light/dark component tokens */
.final-cta{background:#fff;color:#111827}
.final-cta .section-eyebrow{color:#15803d;background:#dcfce7}
.final-cta h2{color:#111827!important}.final-cta p{color:#4b5563!important}
.final-cta .btn-nature{color:#fff!important}
.final-cta-card{color:#fff;background:linear-gradient(125deg,#183b2f,#2e5e4e)}
.final-cta-card .section-eyebrow{color:#a7f3d0!important;background:rgba(255,255,255,.08)}
.final-cta-card h2{color:#fff!important}.final-cta-card p{color:#e8f5ee!important}
.final-cta-card .hero-secondary-action{color:#fff!important;border-color:rgba(255,255,255,.4)}
.final-cta-card .hero-secondary-action:hover{color:#fff!important;background:rgba(255,255,255,.12)}
.light-surface,.card,.content-card,.form-container{color:#1f2937}
.dark-surface,.page-header,.testimonials-hero,.site-footer{color:#f8fafc}
.dark-surface h1,.dark-surface h2,.dark-surface h3,.page-header h1,.page-header p{color:#fff!important}
