.elementor-kit-5{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* Archivo e Inter alojadas en la web (OFL). Antes: Google Fonts */
/* vietnamese */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/archivo-k3kPo8UDI-1M0wlSV9XAw6lQkqWY8Q82sLySOxK-vA.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/archivo-k3kPo8UDI-1M0wlSV9XAw6lQkqWY8Q82sLyTOxK-vA.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/archivo-k3kPo8UDI-1M0wlSV9XAw6lQkqWY8Q82sLydOxI.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/archivo-k3kPo8UDI-1M0wlSV9XAw6lQkqWY8Q82sLySOxK-vA.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/archivo-k3kPo8UDI-1M0wlSV9XAw6lQkqWY8Q82sLyTOxK-vA.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/archivo-k3kPo8UDI-1M0wlSV9XAw6lQkqWY8Q82sLydOxI.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/archivo-k3kPo8UDI-1M0wlSV9XAw6lQkqWY8Q82sLySOxK-vA.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/archivo-k3kPo8UDI-1M0wlSV9XAw6lQkqWY8Q82sLyTOxK-vA.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/archivo-k3kPo8UDI-1M0wlSV9XAw6lQkqWY8Q82sLydOxI.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/inter-UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/inter-UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/inter-UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/inter-UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/inter-UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/inter-UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/inter-UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/inter-UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/inter-UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/inter-UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/inter-UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/inter-UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/inter-UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/inter-UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/inter-UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/inter-UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/inter-UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/inter-UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/inter-UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/inter-UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://valladosciudadreal.es/wp-content/uploads/ct-fonts/inter-UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
* { margin: 0; padding: 0; box-sizing: border-box; }

:root {
  --color-bg: #F4F3EE;
  --color-surface: #E7E6DE;
  --color-text: #1F2622;
  --color-accent: #2F6B4F;
  --color-accent-2: #8A6A3B;
  --color-divider: rgba(31, 38, 34, 0.16);

  --color-neutral-200: #E4E5E0;
  --color-neutral-300: #D2D4CD;
  --color-neutral-400: #B5B9B1;
  --color-neutral-500: #949A92;
  --color-neutral-700: #5B635D;
  --color-neutral-800: #3C433E;

  --color-accent-100: #E3EFE8;
  --color-accent-300: #9FD0B4;
  --color-accent-700: #1F4A36;

  --color-accent-2-100: #F1EBE1;
  --color-accent-2-700: #5E4826;

  --font-heading: 'Archivo', system-ui, sans-serif;
  --font-body: 'Inter', system-ui, sans-serif;

  --radius-sm: 6px;
  --radius-md: 12px;
  --shadow-lg: 0 12px 32px rgba(31, 38, 34, 0.18);
}

html { scroll-behavior: smooth; }
body { background: var(--color-bg); color: var(--color-text); font-family: var(--font-body); }
a { color: var(--color-accent-700); text-decoration: none; }
a:hover { color: var(--color-accent-600, var(--color-accent-700)); }
img, video { max-width: 100%; display: block; }
h1, h2, h3 { font-family: var(--font-heading); font-weight: 600; }

.btn {
  display: inline-block; padding: 13px 24px; border: 1px solid var(--color-accent);
  border-radius: var(--radius-sm); font-weight: 600; font-size: 14.5px;
  color: var(--color-accent-700); background: none; cursor: pointer; transition: background .15s;
}
.btn:hover { background: var(--color-accent-100); }
.btn-invert { border-color: var(--color-accent-300); color: #F4F3EE; }
.btn-invert:hover { background: rgba(159, 208, 180, 0.16); }
.btn-wa { display: inline-flex; align-items: center; gap: 8px; }

/* ---------- HEADER ---------- */
.ct-header{position:sticky;top:0;z-index:100;background:var(--color-bg);border-bottom:1px solid var(--color-divider);font-family:var(--font-body)}
.ct-header-inner{max-width:1280px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:12px 24px;gap:14px}
.ct-logo{display:flex;align-items:center;gap:10px;flex-shrink:0}
.ct-logo-img{width:42px;height:42px;border-radius:50%;object-fit:cover;border:1.5px solid var(--color-accent);flex-shrink:0}
.ct-logo-text{display:flex;flex-direction:column;line-height:1.05}
.ct-logo-text b{font-family:var(--font-heading);font-weight:600;font-size:19px;color:var(--color-text)}
.ct-logo-text span{font-family:var(--font-body);font-weight:500;font-size:10px;letter-spacing:.18em;color:var(--color-accent-700)}
.ct-nav{display:flex;align-items:center;gap:16px;flex:1;flex-wrap:wrap;justify-content:center}
.ct-nav>a{font-size:13.5px;font-weight:500;white-space:nowrap}
.ct-nav>a[aria-current="page"]{font-weight:600}
.ct-nav-servicios{position:relative}
.ct-nav-servicios>button{font-family:var(--font-body);font-size:13.5px;font-weight:500;background:none;border:none;color:var(--color-accent-700);display:flex;align-items:center;gap:5px;cursor:pointer;padding:6px 0;white-space:nowrap}
.ct-mega{position:absolute;top:100%;left:50%;transform:translateX(-50%);padding-top:14px;width:760px;display:none;z-index:50}
.ct-mega-sm{width:320px}
.ct-nav-servicios:hover .ct-mega,.ct-nav-servicios:focus-within .ct-mega{display:block}
.ct-mega-inner{background:var(--color-bg);border:1px solid var(--color-divider);box-shadow:var(--shadow-lg);border-radius:var(--radius-md);display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden}
.ct-mega-inner-sm{grid-template-columns:1fr}
.ct-mega-col{padding:16px 14px;display:flex;flex-direction:column;gap:2px;border-right:1px solid var(--color-divider)}
.ct-mega-col:last-child{border-right:none}
.ct-mega-heading{font-family:var(--font-heading);font-size:14px;color:var(--color-text);margin-bottom:6px}
.ct-mega-col>a{padding:7px 6px;border-radius:var(--radius-sm);font-size:13px;color:var(--color-neutral-700);display:flex;flex-direction:column;gap:2px}
.ct-mega-col>a:hover{background:var(--color-accent-100);color:var(--color-accent-700)}
.ct-mega-all{margin-top:8px;font-weight:600;color:var(--color-accent-700) !important}
.ct-nav-tag{font-family:var(--font-body);font-size:9.5px;letter-spacing:.06em;color:var(--color-accent-700);font-weight:600}
.ct-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
.ct-wa{display:flex;align-items:center;gap:5px;padding:8px 12px;border:1px solid var(--color-divider);border-radius:var(--radius-sm);font-size:13px;font-weight:500;color:var(--color-text)}
.ct-wa:hover{border-color:var(--color-accent);color:var(--color-accent-700)}
.ct-cta{padding:9px 16px;border:1px solid var(--color-accent);border-radius:var(--radius-sm);font-size:13px;font-weight:600;color:var(--color-accent-700)}
.ct-cta:hover{background:var(--color-accent-100)}
.ct-menu-toggle{display:none}
.ct-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:34px;height:34px;cursor:pointer;flex-shrink:0}
.ct-burger span{display:block;width:100%;height:2px;background:var(--color-text)}
@media (max-width:980px){
  .ct-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--color-bg);border-bottom:1px solid var(--color-divider);flex-direction:column;align-items:flex-start;padding:12px 24px 20px;gap:4px;max-height:80vh;overflow-y:auto}
  .ct-nav>a{padding:9px 0;width:100%}
  .ct-nav-servicios{width:100%}
  .ct-nav-servicios>button{width:100%;justify-content:space-between;padding:9px 0}
  /* En movil el submenu va siempre desplegado (acordeon abierto): el patron
     :focus-within con solo CSS no es fiable al tocar y ocultaba enlaces
     como "Lacado de Muebles". */
  .ct-mega{position:static;transform:none;width:100%;padding-top:4px;display:block}
  .ct-nav-servicios:hover .ct-mega,.ct-nav-servicios:focus-within .ct-mega{display:block}
  .ct-nav-servicios>button{pointer-events:none}
  .ct-nav-servicios>button svg{display:none}
  .ct-menu-toggle:checked ~ .ct-nav{display:flex}
  .ct-mega-inner{grid-template-columns:1fr 1fr}
  .ct-mega-inner-sm{grid-template-columns:1fr}
  .ct-mega-inner,.ct-mega-inner-sm{overflow:visible}
  .ct-burger{display:flex}
  .ct-actions .ct-wa span, .ct-actions .ct-wa{padding:8px 10px}
}
@media (max-width:560px){
  .ct-mega{width:100%}
  .ct-mega-inner{grid-template-columns:1fr}
  .ct-logo-text span{display:none}
}

/* ---------- FOOTER ---------- */
.ct-footer{position:relative;background:var(--color-text);color:var(--color-neutral-300);font-family:var(--font-body);overflow:hidden}
.ct-footer-bg{position:absolute;inset:0;z-index:0;background-image:url(https://valladosciudadreal.es/wp-content/uploads/2026/11/vallado-perimetral-finca-cultivo.jpg);background-size:cover;background-position:center;filter:grayscale(.3) brightness(.45)}
.ct-footer-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg, rgba(31,38,34,.88), rgba(31,38,34,.96))}
.ct-footer-grid{position:relative;z-index:2;max-width:1280px;margin:0 auto;padding:64px 32px 32px;display:grid;grid-template-columns:1.2fr .9fr 1fr .9fr .9fr;gap:36px}
@media (max-width:900px){.ct-footer-grid{grid-template-columns:1fr 1fr}}
.ct-footer h4{font-family:var(--font-heading);font-weight:600;font-size:15px;color:var(--color-bg);margin:0 0 14px}
.ct-footer-col{display:flex;flex-direction:column;gap:10px;font-size:14px}
.ct-footer a{color:var(--color-neutral-300)}
.ct-footer a:hover{color:var(--color-accent-300)}
.ct-footer-logo{display:flex;align-items:center;gap:10px;margin-bottom:16px}
.ct-footer-logo-img{width:44px;height:44px;border-radius:50%;object-fit:cover;border:1.5px solid var(--color-accent-300)}
.ct-footer-logo b{font-family:var(--font-heading);font-weight:600;font-size:19px;color:var(--color-bg);display:block}
.ct-footer-logo span{font-size:10px;letter-spacing:.18em;color:var(--color-accent-300)}
.ct-footer-bottom-rule{position:relative;z-index:2;max-width:1280px;margin:0 auto;padding:0 32px}
.ct-footer-bottom-rule div{border-top:1px solid rgba(221,210,192,.25)}
.ct-footer-bottom{position:relative;z-index:2;max-width:1280px;margin:0 auto;padding:20px 32px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;font-size:12.5px;color:var(--color-neutral-500)}
.ct-footer-bottom-links{display:flex;gap:20px;flex-wrap:wrap}

/* ---------- FAQ (native <details>, no JS needed) ---------- */
.faq-item{border-bottom:1px solid var(--color-divider)}
.faq-item summary{list-style:none;padding:22px 4px;display:flex;justify-content:space-between;align-items:center;gap:16px;cursor:pointer;font-family:var(--font-heading);font-size:18px;color:var(--color-text)}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary .chev{flex-shrink:0;transition:transform .15s}
.faq-item[open] summary .chev{transform:rotate(180deg)}
.faq-item p{font-size:15.5px;line-height:1.7;color:var(--color-neutral-700);margin:0 4px 22px;max-width:640px}

/* =========================================================
   COMPONENTES REUTILIZABLES — páginas de servicio y hubs
   ========================================================= */
.container{max-width:1280px;margin:0 auto;padding-left:32px;padding-right:32px}
.sec{padding:100px 0}
.sec-sm{padding:70px 0}
.sec-surface{background:var(--color-surface)}
.sec-dark{background:var(--color-text)}
.sec-dark h2, .sec-dark h3{color:var(--color-bg)}
.sec-dark p{color:var(--color-neutral-300)}
.center{text-align:center}
.eyebrow{display:block;font-size:11px;letter-spacing:.1em;font-weight:600;color:var(--color-accent-700);text-transform:uppercase;margin-bottom:10px}
.eyebrow-2{color:var(--color-accent-2-700)}
.lede{font-size:16.5px;line-height:1.7;color:var(--color-neutral-800);max-width:680px}
.lede-center{margin-left:auto;margin-right:auto}

/* Breadcrumb */
.breadcrumb{font-size:13px;color:var(--color-neutral-700);margin:0 0 18px;display:flex;flex-wrap:wrap;gap:6px}
.breadcrumb a{color:var(--color-neutral-700)}
.breadcrumb a:hover{color:var(--color-accent-700)}
.breadcrumb .current{color:var(--color-text);font-weight:500}

/* Hero de página de servicio */
.hero-service{background:var(--color-surface)}
.hero-service-grid{max-width:1280px;margin:0 auto;padding:48px 32px 0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:56px;align-items:center}
.hero-service h1{font-size:38px;line-height:1.14;margin:0 0 18px}
.hero-service-intro{font-size:16.5px;line-height:1.7;color:var(--color-neutral-800);margin:0 0 26px;max-width:520px}
.hero-service-media{height:420px;border:6px solid var(--color-bg);outline:1px solid var(--color-divider);box-sizing:border-box;overflow:hidden}
.hero-service-media img{width:100%;height:100%;object-fit:cover;}
.cta-row{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:26px}
.badges{display:flex;flex-direction:column;gap:10px}
.badges li{display:flex;align-items:center;gap:9px;color:var(--color-neutral-700);font-size:13.5px;list-style:none}
.badges svg{flex-shrink:0}
.hero-rule{max-width:1280px;margin:0 auto;padding:32px 32px 0}
.hero-rule div{border-top:1px solid var(--color-divider)}
.quicknav{max-width:1280px;margin:0 auto;padding:18px 32px;display:flex;gap:26px;flex-wrap:wrap;font-size:13.5px;font-weight:600;color:var(--color-accent-700)}

/* Grid de pasos (proceso) */
.steps-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--color-divider);border-radius:var(--radius-md);overflow:hidden}
.step-item{padding:32px 26px;border-right:1px solid var(--color-divider);border-bottom:1px solid var(--color-divider)}
.step-num{font-family:var(--font-heading);font-size:34px;color:var(--color-accent-300);font-variant-numeric:tabular-nums;display:block}
.step-item h3{font-size:18px;margin:10px 0 8px}
.step-item p{font-size:14px;line-height:1.6;color:var(--color-neutral-700);margin:0}
@media (max-width:860px){.steps-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.steps-grid{grid-template-columns:1fr}.step-item{border-right:none}}

/* Split 2 columnas con borde (interior/exterior, a domicilio/taller...) */
.split-2{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--color-divider);border-radius:var(--radius-md);background:var(--color-bg);overflow:hidden}
.split-2>div{padding:40px;border-right:1px solid var(--color-divider)}
.split-2>div:last-child{border-right:none}
.split-2 h3{font-size:21px;margin:12px 0 12px}
.split-2 p{font-size:15px;line-height:1.7;color:var(--color-neutral-700);margin:0}
@media (max-width:700px){.split-2{grid-template-columns:1fr}.split-2>div{border-right:none;border-bottom:1px solid var(--color-divider)}}

/* Chips (maderas, colores, municipios...) */
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chip{padding:9px 18px;border:1px solid var(--color-divider);border-radius:999px;font-size:14px;color:var(--color-neutral-800)}
.chip-link{padding:8px 16px;border:1px solid var(--color-accent);border-radius:999px;font-size:14px;font-weight:600;color:var(--color-accent-700);display:inline-block}
.chip-link:hover{background:var(--color-accent-100)}
.chips-center{justify-content:center}

/* Listas con check */
.check-list{display:flex;flex-direction:column;gap:12px;list-style:none;padding:0;margin:0}
.check-list li{display:flex;align-items:flex-start;gap:10px;font-size:15px;line-height:1.6;color:var(--color-neutral-800)}
.check-list svg{flex-shrink:0;margin-top:3px}

/* Tarjetas de servicio (home / hub de servicios) */
.services-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:28px}
@media (max-width:860px){.services-grid{grid-template-columns:1fr}}
.service-card{border:1px solid var(--color-divider);border-radius:var(--radius-md);padding:24px;flex:1;display:flex;flex-direction:column;gap:8px}
.service-card h3{font-size:19px;margin:0}
.service-card h3 a{color:inherit}
.service-card p{font-size:14.5px;line-height:1.6;color:var(--color-neutral-700);margin:0}
.service-card-link{margin-top:8px;font-weight:600;font-size:14.5px}
.service-card-list{display:flex;flex-direction:column;gap:20px}
.service-block{border:1px solid var(--color-divider);border-radius:var(--radius-md);padding:36px;margin-bottom:22px}
.service-block h2{font-size:26px;margin:0 0 6px}
.service-block-links{display:flex;flex-direction:column;gap:10px;margin-top:18px}
.service-block-links a{font-size:15px;font-weight:600}
.service-block-links a span{font-weight:400;color:var(--color-neutral-700);display:block;font-size:13.5px;margin-top:2px}

/* Precio */
.price-block{max-width:820px;margin:0 auto;padding:0 32px;text-align:center}
.price-table{width:100%;border-collapse:collapse;margin:24px 0;font-size:15px}
.price-table th,.price-table td{padding:14px 16px;border-bottom:1px solid var(--color-divider);text-align:left}
.price-table th{font-family:var(--font-heading);font-weight:600;color:var(--color-neutral-700);font-size:13px;text-transform:uppercase;letter-spacing:.04em}
.price-table td:last-child,.price-table th:last-child{text-align:right;font-weight:600;color:var(--color-accent-700)}

/* CTA final */
.cta-final{max-width:700px;margin:0 auto;padding:0 32px;text-align:center}
.cta-final h2{margin:0 0 16px}
.cta-final p{margin:0 0 26px}
.cta-final .cta-row{justify-content:center;margin-bottom:0}

/* Galería antes/después */
.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px}
.gallery-card{border:1px solid var(--color-divider);border-radius:var(--radius-md);overflow:hidden;background:var(--color-bg)}
.gallery-media{display:grid;grid-template-columns:1fr 1fr;height:220px}
.gallery-media img{width:100%;height:100%;object-fit:cover}
.gallery-tag{position:absolute;top:10px;left:10px;padding:4px 10px;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;color:#F4F3EE}
.gallery-media-item{position:relative;height:100%}
.tag-antes{background:rgba(31,38,34,.8)}
.tag-despues{background:rgba(131,59,27,.85)}
.gallery-body{padding:22px}
.gallery-body h3{font-size:16.5px;margin:0 0 8px}
.gallery-body p{font-size:13.5px;line-height:1.6;color:var(--color-neutral-700);margin:0}
.gallery-body a{font-size:13px;font-weight:600;display:inline-block;margin-top:10px}

/* Filtros de servicio */
.filter-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:44px}

/* Formulario simple */
.form-simple{display:flex;flex-direction:column;gap:16px}
.form-simple input,.form-simple select,.form-simple textarea{background:none;border:none;border-bottom:1px solid rgba(247,241,232,.35);padding:10px 2px;color:var(--color-bg);font-family:var(--font-body);font-size:15px}
.form-simple select{background:var(--color-text)}
.form-simple label.file-label{display:flex;flex-direction:column;gap:6px;font-size:13.5px;color:var(--color-neutral-300)}
.form-simple input[type=file]{font-size:13.5px;color:var(--color-neutral-300);border:1px dashed rgba(247,241,232,.35);border-radius:var(--radius-sm);padding:10px}
.form-simple .consent{display:flex;align-items:flex-start;gap:8px;font-size:13px;color:var(--color-neutral-300)}
.form-simple .consent input{width:auto}

/* Blog índice */
.blog-cat{margin-bottom:52px}
.blog-cat h2{font-size:24px;margin:0 0 20px}
.blog-list{display:flex;flex-direction:column;gap:6px;list-style:none;padding:0}
.blog-list li{padding:14px 0;border-bottom:1px solid var(--color-divider)}
.blog-list h3{font-size:16px;font-weight:600;margin:0 0 4px;color:var(--color-text)}
.blog-list p{font-size:14px;color:var(--color-neutral-700);margin:0}
.blog-soon{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--color-neutral-500);font-weight:600;margin-left:8px}

/* Legal */
.legal-body{max-width:760px;margin:0 auto;padding:70px 32px 110px}
.legal-body h2{font-size:22px;margin:34px 0 12px}
.legal-body p, .legal-body li{font-size:15px;line-height:1.75;color:var(--color-neutral-800)}
.legal-body ul{padding-left:20px;margin:0 0 16px}

/* Responsive section grids */
@media (max-width: 860px) {
  .hero-service-grid, .split-2, .ct-services-grid, .ct-restauracion-grid, .ct-video-grid, .ct-como-grid, .ct-cta-grid {
    grid-template-columns: 1fr !important;
  }
  .hero-service-media{height:300px}
}

/* ---------- Ajustes de la plantilla ---------- */
.ct-mega{width:640px}
.ct-mega-inner{grid-template-columns:repeat(3,1fr)}
.ct-logo-mark{width:42px;height:42px;border-radius:50%;border:1.5px solid var(--color-accent);display:flex;align-items:center;justify-content:center;color:var(--color-accent-700);flex-shrink:0}
.ct-footer-logo span b{font-family:var(--font-heading)}
.ct-table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.55;background:var(--color-bg);border:1px solid var(--color-divider);border-radius:var(--radius-md);overflow:hidden}
.ct-table th,.ct-table td{padding:14px 16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--color-divider)}
.ct-table th{font-family:var(--font-heading);font-weight:600;background:var(--color-surface)}
.ct-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.ct-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.ct-photo-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius-sm)}
.ct-photo-grid figcaption{font-size:13px;color:var(--color-neutral-700);margin-top:6px}
.ct-types{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.ct-types>div{border:1px solid var(--color-divider);border-radius:var(--radius-md);padding:26px;background:var(--color-bg)}
.ct-types h3{font-size:19px;margin:0 0 10px}
.ct-types p{font-size:15px;line-height:1.6;color:var(--color-neutral-700);margin:0}
@media (max-width:960px){.ct-types{grid-template-columns:1fr 1fr}.ct-photo-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.ct-types,.ct-photo-grid{grid-template-columns:1fr}}
@media (max-width:560px){.ct-actions .ct-cta{display:none}.ct-actions .ct-wa{padding:8px 10px;font-size:12.5px}.ct-logo-text span{display:none}}
@media (max-width:560px){.ct-header-inner{padding:10px 16px;gap:10px}.ct-logo-mark{width:36px;height:36px}.ct-logo-text b{font-size:17px}}

/* --- Ajustes para WordPress + Elementor (ancho completo, sin huecos) --- */
.elementor-widget-html{width:100%}
.ct-logo img{height:48px;width:auto;display:block}
.ct-footer-logo img{height:52px;width:auto;display:block}
@media (max-width:560px){.ct-logo img{height:34px}}
.faq-item summary h3{font-family:var(--font-heading);color:var(--color-text)}/* End custom CSS */