/*
Theme Name: Ajos Cristóbal Estepa · FTM
Theme URI: https://ajoscristobalestepa.com/
Description: Réplica editable de Ajos Cristóbal Estepa preparada para Flat Theme Manager.
Version: 1.1.0
*/
@import url('assets/source/bootstrap.min.css');
@import url('assets/source/aos.min.css');
@import url('assets/source/navbar.css');
@import url('assets/source/main.css');
@import url('assets/source/responsive.css');
@import url('assets/source/stylesheet.css');
@import url('assets/source/fontawesome.min.css');
:root{--primary-color:#de7900;--ink:#1e2021;--dark:#080808;--cream:#f7f2ea;--max:1140px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:'Open Sans',Arial,sans-serif;font-size:15px;line-height:1.7}h1,h2,h3,h4,h5,h6{font-family:Montserrat,Arial,sans-serif;font-weight:700;line-height:1.18;margin:0 0 1rem;text-transform:uppercase}a{color:inherit}a:hover{color:var(--primary-color)}.container{max-width:var(--max);margin:auto}.site-header{position:absolute;top:25px;left:0;right:0;z-index:20;background:transparent;box-shadow:none}.nav-wrap{max-width:var(--max);height:101px;margin:auto;padding:16px 20px;display:flex;align-items:center;justify-content:space-between}.brand img{width:205px;height:58px;object-fit:contain}.main-nav{display:flex;align-items:center;gap:28px}.main-nav a{font:600 13px Montserrat;text-decoration:none;color:#fff;text-transform:uppercase}.main-nav a:hover,.main-nav .current{color:var(--primary-color)}.menu-toggle{display:none;color:#fff;background:none;border:0;font-size:28px}.hero{min-height:560px}.btn{display:inline-block;background:var(--primary-color);border:2px solid var(--primary-color);color:#fff;padding:11px 24px;text-decoration:none;font:700 12px Montserrat;text-transform:uppercase;transition:.25s}.btn:hover{background:#000;border-color:#000;color:#fff}.eyebrow{font:700 12px Montserrat;color:var(--primary-color);letter-spacing:.14em;margin-bottom:18px}.section{padding:90px 20px}.section.alt{background:var(--cream)}.grid{display:grid;gap:28px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.split{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.split img{width:100%;max-height:560px;object-fit:cover}.icon-card{text-align:center;padding:24px}.icon-card img{height:68px;width:68px;object-fit:contain;margin-bottom:18px}.form-shell{max-width:760px;margin:auto}.wpcf7-form-control{width:100%;padding:14px;border:1px solid #ddd;margin-bottom:15px;font:inherit}.wpcf7-submit{background:#5a2e00!important;color:#fff!important;border:2px solid #5a2e00!important;width:auto!important;font:700 12px Montserrat!important;text-transform:uppercase;cursor:pointer}.map{width:100%;height:390px;border:0}.legal{max-width:900px;margin:auto}.legal h1{font-size:38px}.legal h2{font-size:24px;margin-top:35px}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:none}
.home-hero{height:850px;position:relative;overflow:hidden;background:#111;color:#fff}.home-slide{position:absolute;inset:0;display:flex;align-items:center;background-position:center;background-size:cover;opacity:0;transition:opacity 1s ease}.home-slide.is-active{opacity:1;z-index:1}.home-slide-overlay,.home-contact-overlay,.home-about-overlay{position:absolute;inset:0;background:rgba(0,0,0,.46)}.home-slide-content{position:relative;z-index:2;width:min(var(--max),calc(100% - 40px));margin:auto;padding:90px 0 0}.home-slide-content h1{max-width:900px;font-size:60px;line-height:1.16;color:#fff}.home-slide-content p{max-width:540px;margin:0 0 30px;font-size:18px}.home-social{position:absolute;z-index:4;right:6%;top:38%;display:flex;flex-direction:column;gap:19px}.home-social a{color:#fff;font-size:16px;text-decoration:none}.home-social a:hover{color:var(--primary-color)}.home-slider-dots{position:absolute;z-index:4;left:50%;bottom:34px;display:flex;gap:9px;transform:translateX(-50%)}.home-slider-dots span{width:8px;height:8px;border:1px solid #fff;border-radius:50%}.home-slider-dots span.is-active{background:var(--primary-color);border-color:var(--primary-color)}
.home-about{position:relative;min-height:673px;padding:70px 20px;background-position:center;background-size:cover;color:#fff}.home-about-grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.home-about-copy h2{font-size:48px;max-width:570px;color:#fff}.home-about-copy p{max-width:600px}.home-about-facts{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:30px}.home-about-facts h3{font-size:18px;color:var(--primary-color)}.home-about-image img{width:100%;height:560px;object-fit:cover}
.home-benefits{padding:90px 20px;background:#fff}.home-section-heading{text-align:center;max-width:850px;margin:0 auto 45px}.home-section-heading h2{font-size:48px}.home-section-heading p{max-width:740px;margin:0 auto}.home-benefits-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.home-benefits-copy p{font-size:17px}.home-benefit-list{display:grid;gap:14px;margin:28px 0}.home-benefit-list div{display:flex;align-items:center;gap:14px;font:600 14px Montserrat;text-transform:uppercase}.home-benefit-list i{color:var(--primary-color);width:22px;text-align:center}.home-benefits-image{text-align:center}.home-benefits-image img{width:min(100%,520px);height:360px;object-fit:contain}
.home-values{padding:85px 20px;background:linear-gradient(rgba(0,0,0,.83),rgba(0,0,0,.83)),url('assets/media/ajo-bg-6.jpg') center/cover;color:#fff}.home-values .home-section-heading h2{color:#fff}.home-values-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 60px}.home-value-card{display:grid;grid-template-columns:70px 1fr;gap:20px;padding:25px 0;border-bottom:1px dotted #ffffff77}.home-value-card img{width:60px;height:60px;object-fit:contain}.home-value-card h3{font-size:20px;color:#fff}.home-value-card p{margin:0;color:#ddd}
.home-contact-visual{position:relative;min-height:700px;padding:80px 20px;background-position:center;background-size:cover;color:#fff}.home-contact-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.5fr 1fr;gap:45px;align-items:center}.home-map-wrap{background:#fff;padding:12px}.home-contact-cards{display:grid;gap:22px}.home-contact-cards a{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;padding:25px;background:#fff;color:var(--ink);text-align:center;text-decoration:none}.home-contact-cards a:hover{transform:translateY(-4px)}.home-contact-cards i{font-size:30px;color:var(--primary-color);margin-bottom:12px}.home-contact-cards strong{font:700 21px Montserrat}.home-contact-cards span{font-size:14px;margin-top:6px}.home-form{padding:80px 20px;background:#fff}.home-form h2{text-align:center;font-size:48px}.home-form> .container>p{text-align:center;margin-bottom:35px}
.site-footer{background:#000;color:#fff;padding:55px 20px 20px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.site-footer h3{font-size:16px;color:#fff}.site-footer a{color:var(--primary-color)}.footer-bottom{text-align:center;border-top:1px solid #ffffff33;margin-top:35px;padding-top:18px;font-size:13px}
@media(max-width:800px){.site-header{top:0}.nav-wrap{height:76px}.main-nav{display:none;position:absolute;top:76px;left:0;right:0;background:#fff;padding:18px 22px;flex-direction:column;align-items:flex-start}.main-nav.open{display:flex}.main-nav a{color:#111}.menu-toggle{display:block}.brand img{width:150px}.home-hero{height:700px}.home-slide-content{padding:65px 20px 0}.home-slide-content h1{font-size:38px}.home-social{right:20px;top:43%}.home-about-grid,.home-benefits-grid,.home-contact-grid,.home-values-grid,.grid-2,.grid-3,.split,.footer-grid{grid-template-columns:1fr}.home-about-copy h2,.home-section-heading h2,.home-form h2{font-size:34px}.home-about-image img{height:430px}.home-about-facts{grid-template-columns:1fr}.home-values-grid{gap:0}.home-contact-visual{min-height:900px}.section{padding:60px 18px}}

/* Carrusel: una sola escena visible y controles accesibles */
.home-hero{position:relative;isolation:isolate;overflow:hidden}
.home-slide{position:absolute!important;inset:0!important;display:flex!important;align-items:center!important;visibility:hidden;opacity:0;z-index:0}
.home-slide.is-active{visibility:visible;opacity:1;z-index:2}
.home-slide-content{position:absolute!important;top:50%!important;left:max(20px,calc((100% - var(--max))/2))!important;width:min(820px,calc(100% - 120px))!important;margin:0!important;padding:0!important;transform:translateY(-50%)!important}
.home-slide-content h1{margin-bottom:22px!important}
.home-slider-control{position:absolute;top:50%;z-index:5;width:44px;height:44px;border:1px solid rgba(255,255,255,.65);border-radius:50%;background:rgba(0,0,0,.22);color:#fff;font-size:27px;line-height:1;cursor:pointer;transform:translateY(-50%);transition:.2s}
.home-slider-control:hover{background:var(--primary-color);border-color:var(--primary-color)}
.home-slider-prev{left:28px}.home-slider-next{right:28px}
.home-slider-dots{z-index:5}.home-slider-dot{width:10px;height:10px;padding:0;border:1px solid #fff;border-radius:50%;background:transparent;cursor:pointer}.home-slider-dot.is-active{background:var(--primary-color);border-color:var(--primary-color)}
.home-social .social-glyph{display:grid;place-items:center;width:28px;height:28px;border:1px solid rgba(255,255,255,.75);border-radius:50%;font:700 15px Arial;color:#fff}.home-social a:hover .social-glyph{background:var(--primary-color);border-color:var(--primary-color)}
.home-value-card img{display:block!important;visibility:visible!important;opacity:1!important}
@media(max-width:800px){.home-slide-content{left:20px!important;width:calc(100% - 90px)!important}.home-slider-prev{left:12px}.home-slider-next{right:12px}.home-social{right:14px}}

/* Ajustes finales de fidelidad de portada */
.home-about{transform:none!important;opacity:1!important}
.home-benefits,.home-values,.home-contact-visual,.home-form{transform:none!important}
.benefit-icon{display:block;width:54px;height:54px;object-fit:contain;margin:0 auto 12px}
.home-benefit-list>div{display:flex;align-items:center;gap:14px}
.home-benefit-list>div .benefit-icon{width:38px;height:38px;margin:0}
.contact-icon{display:grid;place-items:center;width:48px;height:48px;margin:0 auto 14px;border:1px solid var(--primary-color);border-radius:50%;color:var(--primary-color);font:700 24px/1 Arial}
.home-form{min-height:681px;padding:0 80px 80px!important}
.home-form .form-shell{max-width:706px;margin:0 auto}
.home-form .eyebrow{height:80px;margin:0;color:transparent}
.home-form h2{margin-bottom:20px}
.home-form .wpcf7-form>p{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:0}
.home-form .wpcf7-form>p>label{display:block;margin:0}
.home-form .wpcf7-form>p>label:nth-of-type(3){grid-column:1/-1}
.home-form .wpcf7-form-control:not(.wpcf7-submit){height:46px;margin:0;border:0;border-bottom:1px solid #d9d2c8;background:#faf8f4;padding:12px 14px;border-radius:0}
.home-form .wpcf7-form textarea.wpcf7-form-control{height:142px;resize:vertical}
.home-form .wpcf7-submit{margin-top:16px;padding:11px 30px}
@media(max-width:800px){.home-form{padding:0 20px 60px!important}.home-form .wpcf7-form>p{grid-template-columns:1fr}.home-form .wpcf7-form>p>label:nth-of-type(3){grid-column:auto}}

.home-slide-content,.home-slide-content h1,.home-slide-content p{color:#fff!important}
.home-slide-content .eyebrow{color:var(--primary-color)!important}

/* Ajustes solicitados: fondos planos, badges naranjas, iconos y formulario */
.home-about{background-image:none!important;background:#fff!important;color:var(--ink)!important}
.home-about-overlay{display:none!important}
.home-about-copy h2,.home-about-copy p{color:var(--ink)!important}
.home-values{background:#fff!important;color:var(--ink)!important}
.home-values .home-section-heading h2,.home-values .home-section-heading p,.home-value-card h3,.home-value-card p{color:var(--ink)!important}
.home-value-card{border-bottom-color:#d8d0c5!important}
.home-benefit-list .benefit-icon{filter:brightness(0) saturate(100%) invert(48%) sepia(99%) saturate(1615%) hue-rotate(5deg) brightness(95%) contrast(102%)}
.home-social .social-glyph{position:relative;font-size:0}
.home-social .social-instagram:before{content:"";width:15px;height:15px;border:2px solid #fff;border-radius:5px}
.home-social .social-instagram:after{content:"";position:absolute;width:4px;height:4px;border:2px solid #fff;border-radius:50%;top:9px;left:9px;box-shadow:6px -6px 0 -1px #fff}
.home-social .social-youtube:before{content:"";width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:11px solid #fff;margin-left:3px}
.home-form .wpcf7-form>p>label:nth-of-type(n+3){grid-column:1/-1}
.home-form .wpcf7-form>p .wpcf7-submit{grid-column:1/-1;justify-self:start;grid-row:auto}
@media(max-width:800px){.home-form .wpcf7-form>p>label:nth-of-type(n+3){grid-column:auto}.home-form .wpcf7-form>p .wpcf7-submit{grid-column:auto}}

/* Cabecera sticky y Font Awesome real */
.site-header{position:sticky!important;top:0!important;left:auto!important;right:auto!important;background:#fff!important;box-shadow:0 2px 14px rgba(0,0,0,.12)!important}
.main-nav a{color:#111!important}.main-nav a:hover,.main-nav .current{color:var(--primary-color)!important}.menu-toggle{color:#111!important}
.home-social .social-glyph{font:normal 18px/1 FontAwesome!important;font-size:18px!important;border:0!important;width:28px;height:28px}
.home-social .social-instagram:before,.home-social .social-instagram:after,.home-social .social-youtube:before{content:none!important}
.site-footer .footer-social{display:flex;gap:16px;margin-top:20px}.site-footer .footer-social a{display:grid;place-items:center;width:32px;height:32px;border:1px solid rgba(255,255,255,.55);border-radius:50%;color:#fff!important;font:normal 16px/1 FontAwesome;text-decoration:none}.site-footer .footer-social a:hover{background:var(--primary-color);border-color:var(--primary-color)}
.site-footer .footer-legal{display:flex;flex-direction:column;gap:5px}.site-footer .footer-bottom a{color:var(--primary-color);text-decoration:none}
@media(max-width:800px){.site-header{position:sticky!important}.main-nav{top:76px}}

/* Iconos sociales SVG, sin dependencia de fuentes */
.home-social .social-glyph{font-size:0!important;color:#fff!important}
.home-social .social-glyph svg{display:block;width:18px;height:18px;fill:currentColor;overflow:visible}
.site-footer .footer-social a{font-size:0!important}
.site-footer .footer-social svg{display:block;width:17px;height:17px;fill:currentColor;overflow:visible}

/* Página Conócenos: réplica de la composición original */
.about-page-hero{height:450px;position:relative;background-position:center;background-size:cover;color:#fff}.about-page-hero-overlay{position:absolute;inset:0;background:rgba(0,0,0,.48)}.about-page-hero-content{position:relative;z-index:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding:0 20px 65px}.about-page-hero-content h1{font-size:50px;color:#fff;margin:0}.about-page-intro{padding:80px 20px;background:#fff}.about-page-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.about-page-intro-copy h2,.about-page-section-heading h2{font-size:42px}.about-page-intro-copy p{font-size:16px;margin-bottom:18px}.about-page-intro-image{height:360px;overflow:hidden}.about-page-intro-image img{width:100%;height:100%;object-fit:cover}.about-page-stats{position:relative;padding:66px 20px;background-position:center;background-size:cover;color:#fff}.about-page-stats-overlay,.about-page-cta-overlay{position:absolute;inset:0;background:rgba(0,0,0,.52)}.about-page-stats-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr);gap:30px;text-align:center}.about-stat strong{display:block;font:700 54px/1 Montserrat;color:#fff}.about-stat span{display:block;margin-top:14px;font:600 12px Montserrat;letter-spacing:.06em}.about-page-strengths{padding:80px 20px;background:#fff}.about-page-section-heading{text-align:center;margin-bottom:45px}.about-page-strength-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:70px;align-items:center}.about-page-products{display:grid;grid-template-columns:1fr 1fr;gap:20px}.about-page-products img{width:100%;height:398px;object-fit:cover}.about-page-feature-list{display:grid;gap:34px}.about-page-feature-list article{display:grid;grid-template-columns:50px 1fr;gap:24px;align-items:start}.about-page-feature-list img{width:40px;height:40px;object-fit:contain}.about-page-feature-list h3{font-size:19px;margin-bottom:8px}.about-page-feature-list p{margin:0}.about-page-cta{position:relative;min-height:280px;padding:60px 20px;background-position:center;background-size:cover;color:#fff}.about-page-cta-content{position:relative;z-index:1;text-align:center}.about-page-cta h2{font-size:36px;color:#fff}.about-page-cta p{font-size:18px;margin-bottom:25px}.about-page-cta .btn{background:var(--primary-color);border-color:var(--primary-color)}
@media(max-width:800px){.about-page-hero{height:380px}.about-page-hero-content h1{font-size:38px}.about-page-intro-grid,.about-page-strength-grid,.about-page-stats-grid{grid-template-columns:1fr}.about-page-stats-grid{gap:36px}.about-page-products img{height:300px}.about-page-intro{padding:60px 20px}}

/* Contraste accesible de Conócenos */
.about-page-hero-content .eyebrow,.about-page-hero-content .eyebrow p{color:var(--primary-color)!important}
.about-page-cta-content p,.about-page-cta-content p *{color:#fff!important}

/* Página Ajos de Montalbán */
.montalban-page-hero{height:450px;position:relative;background-position:center;background-size:cover;color:#fff}.montalban-page-hero-overlay,.montalban-page-cta-overlay{position:absolute;inset:0;background:rgba(0,0,0,.5)}.montalban-page-hero-content{position:relative;z-index:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding:0 20px 65px}.montalban-page-hero-content h1{font-size:50px;color:#fff;margin:0}.montalban-page-story{padding:80px 20px;background:#fff}.montalban-page-story-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.montalban-page-story-copy h2,.montalban-page-section-heading h2{font-size:42px}.montalban-page-story-copy p{font-size:16px;margin-bottom:18px}.montalban-page-story-image{height:360px;overflow:hidden}.montalban-page-story-image img{width:100%;height:100%;object-fit:cover}.montalban-page-features{padding:80px 20px;background:#f7f2ea}.montalban-page-section-heading{text-align:center;margin-bottom:45px}.montalban-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.montalban-feature-card{position:relative;padding:34px 28px 28px;background:#fff;min-height:220px;border-top:3px solid var(--primary-color);box-shadow:0 10px 25px rgba(0,0,0,.06)}.montalban-feature-marker{width:36px;height:5px;background:var(--primary-color);margin-bottom:25px}.montalban-feature-card h3{font-size:20px}.montalban-feature-card p{margin:0}.montalban-page-gallery{padding:80px 20px;background:#fff}.montalban-page-gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;min-height:500px}.montalban-gallery-main img{width:100%;height:500px;object-fit:cover}.montalban-gallery-side{display:grid;grid-template-rows:260px 1fr;gap:22px}.montalban-gallery-side>img{width:100%;height:260px;object-fit:cover}.montalban-feature-list{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:center}.montalban-feature-list article{text-align:center}.montalban-feature-list img{width:40px;height:40px;object-fit:contain;display:block;margin:0 auto 12px}.montalban-feature-list span{font:600 11px Montserrat;text-transform:uppercase}.montalban-page-cta{position:relative;min-height:500px;padding:90px 20px;background-position:center;background-size:cover;color:#fff;display:flex;align-items:center}.montalban-page-cta-content{position:relative;z-index:1;text-align:center}.montalban-page-cta h2{font-size:40px;color:#fff}.montalban-page-cta p{font-size:18px;color:#fff;margin-bottom:25px}.montalban-page-cta .btn{background:var(--primary-color);border-color:var(--primary-color)}
@media(max-width:800px){.montalban-page-hero{height:380px}.montalban-page-hero-content h1{font-size:38px}.montalban-page-story-grid,.montalban-feature-grid,.montalban-page-gallery-grid{grid-template-columns:1fr}.montalban-page-story,.montalban-page-features,.montalban-page-gallery{padding:60px 20px}.montalban-gallery-main img{height:380px}.montalban-gallery-side{grid-template-rows:260px auto}.montalban-page-cta{min-height:380px}.montalban-page-story-copy h2,.montalban-page-section-heading h2{font-size:34px}}

/* Contraste naranja de iconos de características */
.montalban-feature-list img,.about-page-feature-list img{filter:brightness(0) saturate(100%) invert(48%) sepia(99%) saturate(1615%) hue-rotate(5deg) brightness(95%) contrast(102%)!important}
body:has(.contact-page-hero) .site-header{position:absolute!important;top:0;left:0;width:100%;background:transparent!important;box-shadow:none!important;z-index:20}
body:has(.contact-page-hero) .site-header .main-nav a{color:#fff}
body:has(.contact-page-hero) .site-header .brand img{filter:none}
.contact-page-hero{height:500px;margin-top:0}
.contact-page-hero-content{justify-content:center;padding:70px 20px 0}
.contact-page-hero-content h1{font-size:44px;text-transform:none;margin:8px 0}
.contact-page-main{position:relative;z-index:3;margin-top:-128px;padding:0 20px;background:transparent}
.contact-page-main-grid{grid-template-columns:minmax(0,745px) minmax(0,345px);gap:0;align-items:stretch}
.contact-page-form{background:#fff;padding:38px 40px 34px}
.contact-page-form h2{font-size:38px;text-transform:none;margin:0 0 12px}
.contact-page-form .wpcf7-form input:not([type=submit]),.contact-page-form .wpcf7-form textarea{border:0;border-radius:28px;background:#f0f1f6;padding:14px 25px;font-size:14px}
.contact-page-form .wpcf7-form textarea{min-height:150px;border-radius:18px}
.contact-page-info{background:#292929;color:#fff;padding:60px 40px 34px}
.contact-page-info h3{color:#fff;font-size:25px;line-height:1.25;margin:0 0 28px}
.contact-info-line{color:#fff;margin:18px 0}
.contact-info-icon{border:0;color:#fff;width:18px;height:18px;flex-basis:18px}
.contact-page-social{margin:28px 0 20px 36px}
.contact-page-social a{color:#fff}
.contact-page-info>img{margin:12px 0 0 32px}
.contact-page-map{padding-top:62px}
.contact-page-map h4{padding:0 20px 20px;text-transform:none;font-size:25px}
@media(max-width:800px){body:has(.contact-page-hero) .site-header{position:sticky!important;background:#fff!important}body:has(.contact-page-hero) .site-header .main-nav a{color:#333}.contact-page-hero{height:430px}.contact-page-main{margin-top:-70px}.contact-page-main-grid{grid-template-columns:1fr}.contact-page-form{padding:30px 22px}.contact-page-info{padding:40px 22px}.contact-page-info>img{margin-left:0}.contact-page-social{margin-left:0}}
/* Contacto: cabecera sticky y contraste del panel lateral */
body:has(.contact-page-hero) .site-header{position:sticky!important;top:0!important;background:#fff!important;box-shadow:0 2px 12px rgba(0,0,0,.08)!important}
body:has(.contact-page-hero) .site-header .main-nav a{color:#333!important}
.contact-page-info,.contact-page-info h3,.contact-page-info .contact-info-line,.contact-page-info .contact-info-line span,.contact-page-info .contact-info-line strong{color:#fff!important}
.contact-page-info .contact-info-line{opacity:1!important}



/* Página de contacto: réplica visual del original */
.contact-page-hero{position:relative;height:500px;background-position:center;background-size:cover;color:#fff;display:flex;align-items:stretch}
.contact-page-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(27,17,10,.72),rgba(27,17,10,.2))}
.contact-page-hero-content{position:relative;z-index:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding:0 20px 78px}
.contact-page-hero-content .eyebrow{color:var(--primary-color);font-weight:700}
.contact-page-hero-content h1{font-size:60px;color:#fff;margin:8px 0 12px}
.contact-page-hero-content>p:last-child{font-size:18px;color:#fff;margin:0;max-width:620px}
.contact-page-main{padding:78px 20px 82px;background:#fff}
.contact-page-main-grid{display:grid;grid-template-columns:minmax(0,650px) minmax(280px,1fr);gap:72px;align-items:center}
.contact-page-form h2{font-size:42px;margin:0 0 32px;text-transform:uppercase}
.contact-page-form .wpcf7-form>p{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:0}
.contact-page-form .wpcf7-form>p>label{display:block;margin:0}
.contact-page-form .wpcf7-form>p>label:nth-child(3),.contact-page-form .wpcf7-form>p>label:nth-child(4){grid-column:1/-1}
.contact-page-form .wpcf7-form input:not([type=submit]),.contact-page-form .wpcf7-form textarea{width:100%;border:1px solid #dedede;border-radius:0;background:#fff;padding:16px 18px;font:400 15px Montserrat;color:#333}
.contact-page-form .wpcf7-form textarea{min-height:150px;resize:vertical}
.contact-page-form .wpcf7-form .wpcf7-submit{margin-top:8px;grid-column:1/-1}
.contact-page-form .wpcf7-form .wpcf7-not-valid-tip{font-size:11px}
.contact-page-info h3{font-size:25px;margin:0 0 28px;letter-spacing:.02em}
.contact-info-line{display:flex;align-items:center;gap:16px;margin:18px 0;color:#333;text-decoration:none;line-height:1.45}
.contact-info-line strong{font-weight:600}
.contact-info-icon{flex:0 0 35px;width:35px;height:35px;border:1px solid var(--primary-color);border-radius:50%;color:var(--primary-color);display:grid;place-items:center;font-size:17px}
.contact-page-social{display:flex;gap:17px;margin:28px 0 20px 51px}
.contact-page-social a{color:var(--primary-color);display:grid;place-items:center;width:24px;height:24px}
.contact-page-social svg{width:21px;height:21px;fill:currentColor}
.contact-page-info>img{display:block;width:180px;height:180px;object-fit:contain;margin:12px 0 0 48px}
.contact-page-map{padding:0;background:#fff}
.contact-page-map h4{padding:0 20px 22px;margin:0;font-size:25px}
.contact-map{display:block;width:100%;height:500px;border:0}
@media(max-width:800px){.contact-page-hero{height:380px}.contact-page-hero-content{padding-bottom:55px}.contact-page-hero-content h1{font-size:42px}.contact-page-main{padding:60px 20px}.contact-page-main-grid{grid-template-columns:1fr;gap:54px}.contact-page-form h2{font-size:34px}.contact-page-form .wpcf7-form>p{grid-template-columns:1fr}.contact-page-form .wpcf7-form>p>label:nth-child(3),.contact-page-form .wpcf7-form>p>label:nth-child(4){grid-column:auto}.contact-page-social{margin-left:0}.contact-page-info>img{margin-left:0}.contact-page-map h4{padding-top:0}.contact-map{height:360px}}

.footer-funding{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:28px;padding:18px 0 4px;border-top:1px solid rgba(255,255,255,.16)}
.footer-funding img{display:block;width:auto;height:42px;max-width:220px;object-fit:contain}
@media(max-width:800px){.footer-funding{flex-wrap:wrap;gap:16px}.footer-funding img{height:34px;max-width:180px}}
/* El contenido legal debe estar visible desde el primer render */
.legal.reveal,.legal.reveal.is-visible{opacity:1!important;visibility:visible!important;transform:none!important}
.site-language{display:flex;align-items:center;justify-content:center;min-width:42px;margin-left:6px;z-index:25}
.site-language .gtranslate_wrapper{display:flex;align-items:center}
.site-language select{height:30px;min-width:44px;border:1px solid rgba(255,255,255,.7);border-radius:2px;background:rgba(255,255,255,.95);color:#333;font:600 11px Montserrat;padding:2px 5px}
.site-language img{display:block;max-width:28px;height:auto}
.site-language a{display:inline-flex!important;align-items:center;gap:4px;color:inherit!important;text-decoration:none}
@media(max-width:800px){.site-language{margin-left:auto;margin-right:8px}.site-language select{border-color:#d7d7d7;background:#fff}.nav-wrap{gap:8px}.site-language img{max-width:24px}}


