/* Theme Name: Pixora Child
Template: pixora */

/* ================================================================
   CRAVANI — Child Theme CSS v5.0 — Hero GUARANTEED
   ================================================================ */

/* ---- GLOBAL ---- */
html, body { overflow-x: hidden !important; }
*, *::before, *::after { box-sizing: border-box; }
img { max-width: 100%; height: auto; }

/* ---- DARK BG ---- */
body, .pixora-dark, .bf-dark { background-color: #0a0a0a !important; color: #fff; }

/* ================================================================
   LOGO — Real white transparent PNG (no filter hack)
   ================================================================ */
.tp-logo img, .px-header-logo img, .tp-offcanvas-logo img,
header .tp-header-logo img, .site-logo img, .custom-logo {
    background: transparent !important;
    max-width: clamp(90px,10vw,140px);
    width: auto; height: auto; display: block;
}
.tp-logo, .tp-header-logo, .px-header-logo, .tp-offcanvas-logo, .tp-logo a {
    background: transparent !important; display: inline-flex; align-items: center;
}
.tp-footer-logo img, footer .tp-logo img { max-width: 130px; background: transparent !important; }

/* ================================================================
   HEADER
   ================================================================ */
.px-header-area, .tp-header-area, .tp-pixora-default-header {
    position: fixed !important; top:0; left:0; right:0; z-index:9999;
    width:100%; background:transparent !important;
    transition: background .3s ease, backdrop-filter .3s ease;
}
.header-sticky, .px-header-area.headroom--not-top {
    background: rgba(10,10,10,.95) !important; backdrop-filter: blur(10px);
}
.px-main-menu nav > ul > li > a, .tp-main-menu nav > ul > li > a { color:#fff !important; }

/* ================================================================
   *** HERO — ABSOLUTE GUARANTEE ***
   ================================================================ */
/* Target the actual first Elementor container (hero) */
.elementor-element-bc7bc2e,
[data-id="bc7bc2e"],
.cravani-creative-hero,
.elementor-17713 > .elementor-inner > .elementor-section:first-child,
.elementor-17713 > .e-con:first-child {
    min-height: 100vh !important;
}

/* Force ALL homepage elements visible — kill entrance animations */
.elementor-17713 .elementor-invisible,
.elementor-17713 .animated,
.elementor-17713 .wow,
.elementor-17713 [data-animation],
.elementor-17713 [class*="fadeIn"],
.elementor-17713 [class*="slideIn"],
.elementor-17713 [class*="tp-fade"],
.elementor-17713 [class*="tp-move"],
.elementor-17713 [data-wow-delay],
body.home .elementor-invisible {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    animation-duration: 0.001s !important;
}

/* Hero content must be white and readable */
.elementor-element-bc7bc2e h1, .elementor-element-bc7bc2e h2, .elementor-element-bc7bc2e h3,
.elementor-element-bc7bc2e p, .elementor-element-bc7bc2e span, .elementor-element-bc7bc2e a,
[data-id="bc7bc2e"] h1, [data-id="bc7bc2e"] h2, [data-id="bc7bc2e"] p,
[data-id="bc7bc2e"] span, [data-id="bc7bc2e"] a {
    color: #fff !important; opacity: 1 !important; visibility: visible !important;
}

/* Hero typography */
.tp-hero-title, .tp-hero-title h1, .tp-hero-title h2,
[class*="hero"] h1, [class*="hero"] h2 {
    font-size: clamp(2rem,6vw,8rem); line-height: 1.02;
    font-weight: 800; color: #fff !important;
}

/* Text slider / ticker */
.px-text-slider-wrap, .px-text-slider-item, .px-text-slider-item span,
.swiper-slide .px-text-slider-item { color: #fff !important; opacity: 1 !important; }

/* Page area */
.tp-page-area { padding-top: 0 !important; min-height: 100vh; }

/* ================================================================
   CRAVANI STATIC HERO CLASS (user-defined)
   ================================================================ */
.cravani-creative-hero {
    min-height: 100vh !important;
    display: flex !important;
    align-items: center !important;
    background: #0a0a0a !important;
    color: #fff !important;
    overflow: visible !important;
}

/* ================================================================
   CONTAINERS
   ================================================================ */
.elementor-container, .container { max-width:1320px; margin-inline:auto; padding-inline:20px; }
.elementor-section, .e-con.e-parent { width:100% !important; max-width:100% !important; }
.e-con, .e-con-inner { overflow: visible !important; }

/* ================================================================
   OFFCANVAS
   ================================================================ */
.tp-offcanvas-area { background:#0a0a0a !important; color:#fff; z-index:99999; }
.tp-offcanvas-area a, .tp-offcanvas-area li a, .tp-mobile-menu > ul > li > a { color:#fff !important; }
.tp-offcanvas-bar span, .tp-menu-bar span { background:#fff !important; }

/* ================================================================
   DARK THEME
   ================================================================ */
.pixora-dark p, .bf-dark p, body p { color:rgba(255,255,255,.8); }
h1,h2,h3,h4,h5,h6 { color:#fff; }
.pixora-dark h1,.pixora-dark h2,.pixora-dark h3,
.pixora-dark h4,.pixora-dark h5,.pixora-dark h6 { color:#fff; }

/* ================================================================
   FOOTER
   ================================================================ */
footer, .tp-footer-area { background:#0a0a0a !important; }
footer p, footer a, .tp-footer-area p, .tp-footer-area a { color:rgba(255,255,255,.7); }
footer a:hover, .tp-footer-area a:hover { color:#fff; }

/* ================================================================
   TABLET 768-991
   ================================================================ */
@media (min-width:768px) and (max-width:991px){
    .tp-logo img, .px-header-logo img { max-width:110px; }
    .elementor-container, .container { padding-inline:16px; }
}

/* ================================================================
   MOBILE < 768
   ================================================================ */
@media (max-width:767px){
    .tp-logo img, .px-header-logo img, .site-logo img { max-width:100px; }
    .elementor-container, .container { padding-inline:15px; }
    .tp-hero-title h1, .tp-hero-title h2, [class*="hero"] h1, [class*="hero"] h2 {
        font-size: clamp(1.75rem,7vw,3.5rem); line-height:1.1;
    }
}

/* ================================================================
   SMALL MOBILE <= 390
   ================================================================ */
@media (max-width:390px){
    .tp-logo img, .px-header-logo img { max-width:90px; }
    .tp-hero-title h1, .tp-hero-title h2, [class*="hero"] h1, [class*="hero"] h2 {
        font-size: clamp(1.5rem,8vw,3rem);
    }
}

/* ================================================================
   SCROLLBAR / PRELOADER
   ================================================================ */
::-webkit-scrollbar{width:5px;}::-webkit-scrollbar-track{background:#111;}
::-webkit-scrollbar-thumb{background:#333;border-radius:3px;}
#tp-preloader,.tp-preloader,[id*="preloader"],[class*="preloader"]{background:#0a0a0a;}

/* CRAVANI — End CSS v5.0 */
