/*
Theme Name: Fontaneros Pucón - CVALL
Theme URI: https://www.fontanerospucon.cl/
Author: CVALL
Description: Tema base ligero y compatible con WPBakery para Fontaneros Pucón.
Version: 1.2.0
License: GPL-2.0-or-later
Text Domain: cvall
*/

/* ======================================================
   01. VARIABLES
====================================================== */

:root {
    --cvall-site-width: 1400px;
    --cvall-space-desktop: 32px;
    --cvall-space-tablet: 24px;
    --cvall-space-mobile: 16px;

    --cvall-header-height: 90px;
    --cvall-header-height-tablet: 78px;
    --cvall-header-height-mobile: 68px;

    --font-title: 'Poppins', sans-serif;
    --font-ui: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
}

/* ======================================================
   02. RESET / BASE
====================================================== */

*, *::before, *::after {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    padding: 0;
    color: #333;
    background: #f5f5f5;
    font-family: var(--font-ui);
    font-size: 16px;
    line-height: 1.75;
    overflow-x: hidden;
}

img {
    max-width: 100%;
    height: auto;
}

button,
input,
textarea,
select {
    font: inherit;
}

a {
    transition: color .25s ease, opacity .25s ease, transform .25s ease;
}

p {
    margin-top: 0;
}

h1, h2, h3, h4, h5, h6 {
    margin-top: 0;
    margin-bottom: .65em;
    font-family: var(--font-title) !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    letter-spacing: -.5px;
    color: #111 !important;
}

h1 { font-size: clamp(28px, 3vw, 40px) !important; }
h2 { font-size: clamp(26px, 2.5vw, 35px) !important; }
h3 { font-size: clamp(22px, 2vw, 28px) !important; }
h4 { font-size: clamp(24px, 2.5vw, 34px) !important; }
h5 { font-size: clamp(20px, 2vw, 28px) !important; }
h6 { font-size: clamp(18px, 1.5vw, 22px) !important; }

/* ======================================================
   03. LAYOUT
====================================================== */

.container {
    width: 100%;
    max-width: var(--cvall-site-width);
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--cvall-space-desktop);
    padding-right: var(--cvall-space-desktop);
}

.home-page {
    position: relative;
    padding-top: 0;
    overflow: hidden;
}

.home-page > section > .cvall-inner {
    width: 100%;
    max-width: var(--cvall-site-width);
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--cvall-space-desktop);
    padding-right: var(--cvall-space-desktop);
}

.cvall-section {
    max-width: var(--cvall-site-width);
    margin: 0 auto;
    padding-top: 80px;
    padding-bottom: 80px;
}

.cvall-block {
    margin-bottom: 30px;
    padding: 60px;
    background: #fff;
    border-radius: 28px;
}

.cvall-grid-2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: center;
}

/* ======================================================
   04. WPBAKERY
====================================================== */

/* Evita márgenes inesperados del tema dentro de filas WPBakery. */
.wpb_content_element {
    margin-bottom: 20px;
}

.vc_row,
.vc_row-fluid {
    position: relative;
}

/* Las imágenes de WPBakery conservan el estilo visual del tema. */
.wpb_single_image img {
    height: auto;
    max-width: 100%;
    vertical-align: top;
    border-radius: 18px;
    box-shadow: 0 10px 30px rgba(0,0,0,.12), 0 4px 10px rgba(0,0,0,.08);
    transition: transform .35s ease, box-shadow .35s ease;
}

.wpb_single_image a:hover img {
    transform: translateY(-2px);
    box-shadow: 0 15px 35px rgba(0,0,0,.15), 0 5px 12px rgba(0,0,0,.08);
}

#sinborder img,
#sinborder .vc_single_image-wrapper img {
    border-radius: 0 !important;
}

/* ======================================================
   05. RESPONSIVE
====================================================== */

@media (max-width: 900px) {
    .home-page > section > .cvall-inner,
    .container {
        padding-left: var(--cvall-space-tablet);
        padding-right: var(--cvall-space-tablet);
    }

    .cvall-section {
        padding-top: 64px;
        padding-bottom: 64px;
    }
}

@media (max-width: 778px) {
	
	#salto { height:5px !important; }
	
    .cvall-block {
        padding: 25px;
        border-radius: 18px;
    }

    .cvall-grid-2 {
        grid-template-columns: 1fr;
        gap: 30px;
    }
}

@media (max-width: 480px) {
    .home-page > section > .cvall-inner,
    .container {
        padding-left: var(--cvall-space-mobile);
        padding-right: var(--cvall-space-mobile);
    }
}
