/*
Theme Name: EPPW Child
Template: generatepress
Description: El Paso Pure Water Co. lightweight child theme
Version: 1.0
*/
:root{--navy:#0F4C81;--navy2:#0B3A63;--blue:#4FA8E8;--aqua:#2CC4A7;--gray:#4A5568;--sand:#D9B67A;--soft:#F2F8FD;--soft2:#E4F1FB;--r:18px;--sh:0 8px 28px rgba(15,76,129,.10)}
body{font-family:Inter,system-ui,sans-serif;color:var(--gray);font-size:17px;line-height:1.65;background:#fff;overflow-x:hidden}
h1,h2,h3,h4{font-family:Montserrat,Inter,sans-serif;color:var(--navy);line-height:1.15;margin:0}
h1{font-size:clamp(2.3rem,5vw,3.6rem);font-weight:800;letter-spacing:-.02em}
h2{font-size:clamp(1.8rem,3.4vw,2.6rem);font-weight:800;letter-spacing:-.01em}
h3{font-size:1.2rem;font-weight:700}
p{margin:0}
a{color:var(--navy)}
.site-header{position:sticky;top:0;z-index:50;box-shadow:0 2px 14px rgba(15,76,129,.08)}
.inside-header{max-width:1240px;padding:12px 20px}
.site-logo img,.header-image{max-height:56px;width:auto}
.main-navigation,.main-navigation ul ul{background:transparent}
.main-navigation .main-nav ul li a{font:600 .95rem Montserrat,sans-serif;color:var(--navy);line-height:64px;padding:0 12px}
.main-navigation .main-nav ul li a:hover{color:var(--blue)}
.main-navigation .main-nav ul ul li a{line-height:1.4;padding:12px 16px}
.main-navigation .main-nav ul li.ep-menu-cta a{background:var(--aqua);color:#fff;border-radius:999px;line-height:1;padding:14px 22px;margin-left:8px}
.main-navigation .main-nav ul li.ep-menu-cta a:hover{background:#25ab91;color:#fff}
.main-navigation .main-nav ul li.ep-menu-phone a{color:var(--navy);font-weight:700}
.entry-header,.page .entry-title,.site-footer,.footer-widgets{display:none}
.site.grid-container,.site-content,#primary,#page{max-width:none;width:100%;margin:0;padding:0}
.separate-containers .inside-article,.inside-article{padding:0;background:none;box-shadow:none}
.separate-containers .site-main{margin:0}
.entry-content{margin:0}
.entry-content>*{max-width:none}
.ep-sec{position:relative;padding:96px 20px;background:#fff}
.ep-in{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:24px}
.ep-soft{background:linear-gradient(180deg,var(--soft),var(--soft2))}
.ep-hero{background:linear-gradient(160deg,#fff,#E8F4FC);padding:72px 20px 120px}
.ep-navy{background:linear-gradient(160deg,var(--navy),var(--navy2))}
.ep-dark,.ep-dark h1,.ep-dark h2,.ep-dark h3,.ep-dark p,.ep-dark li{color:#fff}
.ep-c{text-align:center}
.ep-c.ep-in,.ep-in.ep-c{align-items:center}
.ep-g2,.ep-g3,.ep-g4,.ep-g5,.ep-g6,.ep-split{display:grid;gap:24px;align-items:stretch}
.ep-g2{grid-template-columns:repeat(2,1fr)}
.ep-g3{grid-template-columns:repeat(3,1fr)}
.ep-g4{grid-template-columns:repeat(4,1fr)}
.ep-g5{grid-template-columns:repeat(5,1fr);gap:16px}
.ep-split{grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.ep-split.ep-30{grid-template-columns:.8fr 1.6fr;align-items:start}
.ep-col{display:flex;flex-direction:column;gap:16px}
.ep-card{background:#fff;border-radius:var(--r);box-shadow:var(--sh);padding:32px 28px;display:flex;flex-direction:column;gap:12px;text-align:left}
.ep-card p{font-size:.97rem}
.ep-card.ep-center,.ep-card.ep-cc{text-align:center;align-items:center}
.ep-navycard{background:linear-gradient(160deg,var(--navy),var(--navy2))}
.ep-navycard h3,.ep-navycard p,.ep-navycard a{color:#fff}
.ep-badge{align-self:flex-start;background:var(--aqua);color:#fff!important;font:700 .72rem Montserrat;text-transform:uppercase;letter-spacing:.08em;padding:5px 12px;border-radius:99px}
.ep-ico{display:inline-flex;width:56px;height:56px;border-radius:50%;background:var(--soft2);color:var(--navy);align-items:center;justify-content:center;flex:none}
.ep-ico svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ep-dark .ep-ico,.ep-navycard .ep-ico{background:rgba(255,255,255,.14);color:#fff}
.ep-item{display:flex;gap:16px;align-items:flex-start}
.ep-item h3{font-size:1.05rem;margin-bottom:4px}
.ep-item p{font-size:.95rem}
.ep-eyebrow{font:700 .8rem Montserrat;text-transform:uppercase;letter-spacing:.14em;color:var(--blue)}
.ep-lead{font-size:1.18rem}
.ep-hl{color:var(--blue)}
.ep-crumb,.ep-crumb a{font-size:.85rem;color:var(--gray);text-decoration:none}
.ep-img img{width:100%;height:auto;border-radius:var(--r);display:block;object-fit:cover}
.ep-img-hero img{aspect-ratio:5/4}
.ep-img-43 img{aspect-ratio:4/3}
.ep-img-tall img{aspect-ratio:3/4}
.ep-img-sq img{aspect-ratio:1/1}
.wp-block-image{margin:0}
.ep-btns{display:flex;flex-wrap:wrap;gap:12px}
.ep-c .ep-btns,.ep-btns.ep-c{justify-content:center}
.wp-block-button__link{font:700 1rem Montserrat,sans-serif;border-radius:999px;padding:16px 30px;text-decoration:none;transition:.2s}
.ep-btn-primary .wp-block-button__link{background:var(--aqua);color:#fff}
.ep-btn-primary .wp-block-button__link:hover{background:#25ab91;transform:translateY(-2px)}
.ep-btn-outline .wp-block-button__link{background:transparent;color:var(--navy);border:2px solid var(--navy)}
.ep-btn-outline .wp-block-button__link:hover{background:var(--navy);color:#fff}
.ep-btn-outline-w .wp-block-button__link{background:transparent;color:#fff;border:2px solid #fff}
.ep-btn-outline-w .wp-block-button__link:hover{background:#fff;color:var(--navy)}
.ep-btn-link .wp-block-button__link{background:none;color:var(--navy);padding:4px 0;box-shadow:none}
.ep-navycard .ep-btn-link .wp-block-button__link{color:#fff}
.ep-trust{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:8px}
.ep-trust span{display:flex;align-items:center;gap:8px;font-weight:600;color:var(--navy);font-size:.92rem}
.ep-trust svg{width:22px;height:22px;fill:none;stroke:var(--blue);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ep-chips{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.ep-chips .ep-chip{background:var(--soft);border-radius:12px;padding:12px 8px;text-align:center;font:600 .78rem Montserrat;color:var(--navy);display:flex;flex-direction:column;align-items:center;gap:6px}
.ep-chip svg{width:24px;height:24px;fill:none;stroke:var(--blue);stroke-width:1.8}
.ep-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.ep-list li{padding-left:32px;position:relative;font-weight:500}
.ep-list li:before{content:"";position:absolute;left:0;top:3px;width:20px;height:20px;border-radius:50%;background:var(--aqua) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12l4 4 8-8'/%3E%3C/svg%3E") center/70% no-repeat}
.ep-list.ep-2col{grid-template-columns:1fr 1fr}
.ep-stars{color:var(--sand);letter-spacing:3px;font-size:1.2rem}
.ep-quote{font-style:italic}
.ep-note{background:var(--soft);border-left:4px solid var(--blue);padding:16px 20px;border-radius:8px;font-size:.95rem}
.ep-banner{display:flex;align-items:center;gap:24px;justify-content:space-between;background:#fff;border-radius:var(--r);box-shadow:var(--sh);padding:28px 36px;flex-wrap:wrap}
.ep-faq{display:flex;flex-direction:column;gap:12px}
.ep-faq details{background:#fff;border-radius:14px;box-shadow:var(--sh);padding:0}
.ep-faq summary{cursor:pointer;list-style:none;padding:18px 56px 18px 22px;font:700 1.02rem Montserrat;color:var(--navy);position:relative}
.ep-faq summary::-webkit-details-marker{display:none}
.ep-faq summary:after{content:"+";position:absolute;right:22px;top:50%;transform:translateY(-50%);font-size:1.6rem;color:var(--blue)}
.ep-faq details[open] summary:after{content:"−"}
.ep-faq details p{padding:0 22px 20px}
.ep-steps .ep-item{background:#fff;border-radius:var(--r);padding:24px;box-shadow:var(--sh)}
.ep-wt:before,.ep-wb:after{content:"";position:absolute;left:0;right:0;height:56px;pointer-events:none;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 60' preserveAspectRatio='none'%3E%3Cpath d='M0 0H1200V22C1000 62 800 -6 600 26S200 58 0 24Z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 60' preserveAspectRatio='none'%3E%3Cpath d='M0 0H1200V22C1000 62 800 -6 600 26S200 58 0 24Z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat}
.ep-wt:before{top:-1px;background:#fff}
.ep-wb:after{bottom:-1px;background:#fff;transform:scaleY(-1)}
.ep-wb-soft:after{background:var(--soft)}
.ep-wt>.ep-in,.ep-wb>.ep-in{position:relative;z-index:1}
.ep-formsec{padding:120px 20px 100px}
.ep-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ep-form-grid .ep-full,.ep-form-grid .ep-consent{grid-column:1/-1}
.ep-form-grid label{display:block;font:600 .85rem Inter;color:var(--navy);margin-bottom:4px}
.wpcf7 input[type=text],.wpcf7 input[type=email],.wpcf7 input[type=tel],.wpcf7 select{width:100%;border:1.5px solid #cfdcea;border-radius:10px;padding:13px 14px;font:1rem Inter;background:#fff;color:var(--gray)}
.wpcf7 input:focus,.wpcf7 select:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(79,168,232,.25)}
.wpcf7 input[type=submit]{background:var(--aqua);color:#fff;border:0;border-radius:999px;padding:16px 30px;font:700 1rem Montserrat;cursor:pointer;width:100%}
.wpcf7 input[type=submit]:hover{background:#25ab91}
.ep-consent{font-size:.78rem;line-height:1.5;color:var(--gray)}
.ep-formcard,.ep-formcard h3,.ep-formcard p,.ep-formcard label{color:var(--navy)}
.ep-formcard p.ep-consent,.ep-formcard .ep-consent *{color:var(--gray)}
.wpcf7-radio .wpcf7-list-item{margin:0 14px 0 0}
.ep-todo{background:#fff3c4;color:#7a5b00;padding:1px 6px;border-radius:4px;font-size:.85em}
.ep-footer{background:#0B3A63;color:#cfe1f2;padding:72px 20px 96px}
.ep-footer a{color:#cfe1f2;text-decoration:none}.ep-footer a:hover{color:#fff}
.ep-fin{max-width:1200px;margin:0 auto}
.ep-fgrid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr 1.3fr;gap:32px}
.ep-fgrid h4{color:#fff;font-size:1rem;margin-bottom:14px}
.ep-fgrid ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:.93rem}
.ep-fgrid p{font-size:.93rem;margin-top:12px}
.ep-fbottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;border-top:1px solid rgba(255,255,255,.15);margin-top:40px;padding-top:20px;font-size:.85rem}
.ep-fdisc{font-size:.75rem;opacity:.75;margin-top:12px}
.ep-stickybar{display:none}
@media(max-width:900px){
.ep-sec{padding:64px 16px}.ep-hero{padding:48px 16px 96px}
.ep-g3,.ep-g4,.ep-g5,.ep-g6{grid-template-columns:1fr 1fr}
.ep-g2,.ep-split,.ep-split.ep-30{grid-template-columns:1fr;gap:32px}
.ep-fgrid{grid-template-columns:1fr 1fr}
.ep-stickybar{display:grid;grid-template-columns:1fr 1.4fr;position:fixed;left:0;right:0;bottom:0;z-index:60;box-shadow:0 -4px 16px rgba(0,0,0,.15)}
.ep-stickybar a{padding:16px;text-align:center;font:700 .95rem Montserrat;text-decoration:none}
.ep-sb-call{background:var(--navy);color:#fff}.ep-sb-test{background:var(--aqua);color:#fff}
.ep-form-grid{grid-template-columns:1fr}
.ep-banner{padding:24px}
}
@media(max-width:560px){.ep-g3,.ep-g4,.ep-g5,.ep-g6{grid-template-columns:1fr}.ep-fgrid{grid-template-columns:1fr}.ep-list.ep-2col{grid-template-columns:1fr}.ep-chips{grid-template-columns:1fr 1fr}}

.wp-block-group__inner-container{display:contents}
.ep-sec .is-layout-flow>*,.ep-sec .is-layout-flow>*+*{margin-block-start:0;margin-block-end:0}
.wp-block-button.ep-btn-primary .wp-block-button__link{background:var(--aqua);color:#fff}
.wp-block-button.ep-btn-primary .wp-block-button__link:hover{background:#25ab91;color:#fff}
.wp-block-button.ep-btn-outline .wp-block-button__link{background:transparent;color:var(--navy);border:2px solid var(--navy)}
.wp-block-button.ep-btn-outline .wp-block-button__link:hover{background:var(--navy);color:#fff}
.wp-block-button.ep-btn-outline-w .wp-block-button__link{background:transparent;color:#fff;border:2px solid #fff}
.wp-block-button.ep-btn-outline-w .wp-block-button__link:hover{background:#fff;color:var(--navy)}
.wp-block-button.ep-btn-link .wp-block-button__link{background:none;color:var(--navy);padding:4px 0}
.ep-navycard .wp-block-button.ep-btn-link .wp-block-button__link{color:#fff}
.main-title,.site-description{display:none}
.wp-block-buttons.ep-btns{margin:0}

.inside-header{max-width:1240px;display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap}
.main-navigation .inside-navigation{padding:0}
.main-navigation .main-nav>ul{display:flex;align-items:center;flex-wrap:nowrap}
.main-navigation .main-nav ul li a{white-space:nowrap;padding:0 9px;font-size:.9rem}
.site-logo img{max-height:50px}
.site-branding-container,.site-logo{flex:none}
