/* Piccolo Zonas SEO Web · V1.2.1 | theme-contained layout and excerpt migration */
/* V1.1.3: only pages generated by Piccolo Web Zonas, never other WP pages */
body.pzw-generated-page #main,
body.pzw-generated-page #content,
body.pzw-generated-page .page-wrapper,
body.pzw-generated-page .page-wrapper .page-inner,
body.pzw-generated-page .page-wrapper .entry-content{
  width:100%!important;max-width:100%!important;
  padding-top:0!important;padding-bottom:0!important;
  margin-top:0!important;margin-bottom:0!important;
}
body.pzw-generated-page .page-wrapper>.row,
body.pzw-generated-page .page-wrapper .row.row-main,
body.pzw-generated-page .page-wrapper .row.row-main>.col,
body.pzw-generated-page .page-wrapper .col-inner{
  width:100%!important;max-width:100%!important;
  margin-left:0!important;margin-right:0!important;
  padding-left:0!important;padding-right:0!important;
  padding-bottom:0!important;
}
body.pzw-generated-page .page-wrapper .entry-content:before,
body.pzw-generated-page .page-wrapper .entry-content:after{display:none!important}
body.pzw-generated-page .entry-content>*:first-child{margin-top:0!important}
body.pzw-generated-page .entry-content>*:last-child{margin-bottom:0!important}
body.pzw-generated-page .entry-content>p:empty{display:none!important}
body.pzw-generated-page .entry-content>.pzw-web{margin:0!important;padding:0!important;display:block}
body.pzw-generated-page .entry-content>.pzw-web>.pzw-section:last-child{margin-bottom:0!important}
/* Avoid an extra gap from Flatsome's default .col padding and row wrapper. */
body.pzw-generated-page .page-wrapper .row .col{padding-bottom:0!important}
body.pzw-generated-page .page-wrapper .row{margin-bottom:0!important}
/* Fallback for legacy templates that output the generated excerpt as a separate paragraph. */
body.pzw-generated-page .page-header .page-description:empty{display:none!important}
@media(max-width:680px){
 body.pzw-generated-page .page-wrapper .row .col,
 body.pzw-generated-page .page-wrapper .col-inner{min-width:0!important}
 body.pzw-generated-page .pzw-web{max-width:100%!important;overflow-x:clip}
}

.pzw-web{--pzw-bg:#071413;--pzw-deep:#08100f;--pzw-ink:#152c2b;--pzw-teal:#0f7b60;--pzw-mint:#75e2b9;--pzw-soft:#e5f4ed;--pzw-line:#dce9e3;display:block;width:100%;max-width:100%;overflow:clip;box-sizing:border-box;color:var(--pzw-ink);font-family:Montserrat,Manrope,"Open Sans",Arial,sans-serif;font-size:16px;line-height:1.67}
.pzw-web *, .pzw-web *::before, .pzw-web *::after{box-sizing:border-box}
.pzw-web .pzw-container{width:min(1140px,calc(100% - 42px));margin-inline:auto;max-width:100%;padding:0}
.pzw-web section{margin:0;padding:0;border:0}
.pzw-web h1,.pzw-web h2,.pzw-web h3{font-family:Montserrat,Manrope,Arial,sans-serif;letter-spacing:-.025em;text-wrap:balance}
.pzw-web h1{font-size:clamp(2.45rem,5.4vw,4.9rem);line-height:1.06;font-weight:950;color:#fff;margin:0 0 22px}
.pzw-web h2{font-size:clamp(1.8rem,3.7vw,2.85rem);line-height:1.14;font-weight:850;color:#143330;margin:0 0 22px}
.pzw-web h3{font-size:1.18rem;line-height:1.3;font-weight:800;color:#133b32;margin:0 0 11px}
.pzw-web p{font-size:clamp(15px,1.25vw,17px);color:#51645f;line-height:1.78;margin:0 0 17px;max-width:940px}
.pzw-web a{text-decoration:none;transition:background .17s ease,border-color .17s ease,transform .17s ease}
.pzw-web .pzw-overline,.pzw-web .pzw-kicker{font-size:11px;line-height:1.3;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:var(--pzw-teal);display:inline-block;margin-bottom:14px}
.pzw-web .pzw-hero{background:radial-gradient(circle at 85% 30%,rgba(58,200,148,.27),transparent 34%),linear-gradient(118deg,#071313,#0d2d27 70%,#0b4434);padding:74px 0 78px;color:#fff}
.pzw-web .pzw-hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.8fr);gap:38px;align-items:center}
.pzw-web .pzw-kicker{color:#86ebbf}
.pzw-web .pzw-lead{color:#d3e7df;font-size:clamp(16px,1.65vw,20px);line-height:1.73;max-width:730px}
.pzw-web .pzw-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:28px}
.pzw-web .pzw-btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:14px 22px;border-radius:10px;border:1px solid transparent;font-size:14px;font-weight:850;line-height:1.25;text-align:center;color:#fff!important}
.pzw-web .pzw-btn:hover{transform:translateY(-2px)}
.pzw-web .pzw-btn-primary{background:#18a878;color:#fff!important;box-shadow:0 7px 19px rgba(6,36,27,.22)}
.pzw-web .pzw-btn-primary:hover{background:#0c8764}
.pzw-web .pzw-btn-ghost{border-color:rgba(255,255,255,.38);background:rgba(255,255,255,.07);color:#fff!important}
.pzw-web .pzw-btn-ghost:hover{background:rgba(255,255,255,.16)}
.pzw-web .pzw-smallproof{color:#afd1c2;font-size:12px;font-weight:700;letter-spacing:.05em;margin-top:25px}
.pzw-web .pzw-visual{background:linear-gradient(135deg,rgba(255,255,255,.13),rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.25);border-radius:22px;min-height:280px;padding:18px;box-shadow:0 20px 45px rgba(0,0,0,.22);min-width:0}
.pzw-web .pzw-visual img{width:100%;height:280px;object-fit:contain;display:block;border-radius:12px}
.pzw-web .pzw-visual-window{background:#f3fcf8;min-height:250px;border-radius:14px;padding:20px 22px;transform:rotate(-2deg);box-shadow:0 9px 22px rgba(0,0,0,.16)}
.pzw-web .pzw-ui-dots{font-size:12px;letter-spacing:6px;color:#72afa0;margin-bottom:26px}
.pzw-web .pzw-mock-title{height:20px;background:#23483f;width:86%;border-radius:7px;margin:0 0 12px}
.pzw-web .pzw-mock-title.short{height:14px;width:60%;background:#aacabd}
.pzw-web .pzw-mock-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin:30px 0}
.pzw-web .pzw-mock-grid i{display:block;min-height:69px;background:linear-gradient(140deg,#dceee7,#a1d6be);border-radius:10px}
.pzw-web .pzw-mock-cta{background:#147f5e;color:#fff;border-radius:7px;padding:11px;text-align:center;font-size:10px;font-weight:900;letter-spacing:.04em}
.pzw-web .pzw-strip{background:#091a17;color:#c6e7db;padding:13px 0;font-size:13px;letter-spacing:.015em;font-weight:750}
.pzw-web .pzw-strip span{color:#2ac592;margin:0 13px}
.pzw-web .pzw-section{padding:70px 0;background:#fff}
.pzw-web .pzw-panel-section{background:#f3f8f6}
.pzw-web .pzw-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:34px}
.pzw-web .pzw-card{padding:26px;border:1px solid #d7e6df;border-radius:16px;background:#fff;min-width:0;box-shadow:0 7px 24px rgba(20,70,51,.05)}
.pzw-web .pzw-card p{font-size:15px;line-height:1.7;margin:0;color:#64736d}
.pzw-web .pzw-trade{background:linear-gradient(140deg,#f7fcf9,#fff);border-top:3px solid #45b998}
.pzw-web .pzw-localnote{padding:18px 22px;border-left:4px solid #139774;background:#ecf9f2;border-radius:0 12px 12px 0;color:#24493e;margin:22px 0}
.pzw-web .pzw-mid-cta{background:linear-gradient(114deg,#0b392f,#0d7056);color:#fff}
.pzw-web .pzw-mid-cta h2,.pzw-web .pzw-final h2{color:#fff}
.pzw-web .pzw-mid-cta p,.pzw-web .pzw-final p{color:#d3ebe0}
.pzw-web .pzw-mid-cta .pzw-overline,.pzw-web .pzw-final .pzw-overline{color:#8eebc3}
.pzw-web .pzw-case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:24px}
.pzw-web .pzw-case{display:flex;flex-direction:column;min-width:0;gap:22px;border:1px solid #d4e3db;background:#f5faf7;border-radius:14px;padding:24px;color:#144d3f!important}
.pzw-web .pzw-case span{font-size:12px;font-weight:850;color:#0d8966}
.pzw-web .pzw-image-band{background:#edf5f0;padding:16px 0 38px}
.pzw-web .pzw-image-band img{max-width:100%;max-height:420px;object-fit:contain;margin:auto;border-radius:14px;display:block}
.pzw-web .pzw-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;margin-top:26px}
.pzw-web .pzw-steps article{padding:23px 25px;background:#fff;border:1px solid #dae8e1;border-radius:12px}
.pzw-web .pzw-steps b{display:block;color:#0a8061;font-size:17px;margin-bottom:7px}
.pzw-web .pzw-steps p{font-size:15px;margin:0}
.pzw-web .pzw-faqs{display:grid;gap:10px;margin-top:26px}
.pzw-web .pzw-faq{background:#f7faf8;border:1px solid #dceae3;border-radius:11px;padding:0;overflow:hidden}
.pzw-web .pzw-faq summary{padding:17px 22px;cursor:pointer;font-weight:800;color:#153b32;line-height:1.5}
.pzw-web .pzw-faq p{margin:0;padding:0 22px 21px;font-size:15px}
.pzw-web .pzw-near{background:#f5f9f6}
.pzw-web .pzw-near-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:24px 0}
.pzw-web .pzw-near-grid a{display:flex;justify-content:space-between;align-items:center;gap:15px;background:#fff;color:#164c3d;padding:15px 17px;border-radius:9px;border:1px solid #d6e3dd;font-size:14px;font-weight:750;min-width:0}
.pzw-web .pzw-near-grid a:hover{background:#eaf8f0;border-color:#28aa85}
.pzw-web .pzw-text-link{margin-top:26px}.pzw-web .pzw-text-link a{font-weight:850;color:#0b8d67;text-decoration:underline;text-underline-offset:4px}
.pzw-web .pzw-final{background:radial-gradient(circle at 80% 20%,rgba(66,210,153,.2),transparent 45%),linear-gradient(130deg,#051b16,#123a30);color:#fff}
.pzw-web .pzw-phone{font-size:14px;margin-top:20px}.pzw-web .pzw-phone a{color:#b9f4dc}
@media(max-width:950px){.pzw-web .pzw-hero-grid{grid-template-columns:1fr}.pzw-web .pzw-visual{max-width:580px}.pzw-web .pzw-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.pzw-web .pzw-container{width:calc(100% - 28px)}.pzw-web .pzw-hero{padding:46px 0}.pzw-web h1{font-size:clamp(2.15rem,9.3vw,3.45rem);line-height:1.08;font-weight:950;overflow-wrap:anywhere}.pzw-web h2{font-size:clamp(1.72rem,7.5vw,2.45rem);line-height:1.12;overflow-wrap:anywhere}.pzw-web .pzw-section{padding:50px 0}.pzw-web .pzw-btn{width:100%;min-height:52px}.pzw-web .pzw-actions{flex-direction:column;align-items:stretch}.pzw-web .pzw-card-grid,.pzw-web .pzw-case-grid,.pzw-web .pzw-steps,.pzw-web .pzw-near-grid{grid-template-columns:1fr}.pzw-web .pzw-strip{line-height:1.9}.pzw-web .pzw-strip span{margin:0 5px}.pzw-web .pzw-visual{min-height:auto;padding:12px}.pzw-web .pzw-visual-window{transform:none;min-height:225px}.pzw-web .pzw-card{padding:22px}.pzw-web .pzw-faq summary{padding:16px}.pzw-web .pzw-faq p{padding:0 16px 20px}.pzw-web .pzw-smallproof{line-height:1.65}}
.pzw-web .pzw-near-pending{display:block;padding:15px 17px;background:#edf1ee;color:#65776f;border:1px solid #dfe9e2;border-radius:9px;font-size:14px;font-weight:650}

/* V1.1.4 - Official WhatsApp glyph in primary budget CTAs */
.pzw-web .pzw-btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:10px}
.pzw-web .pzw-wa-icon{display:inline-block;flex:0 0 20px;width:20px;height:20px;color:#fff;vertical-align:middle}
.pzw-web .pzw-btn-primary span{display:inline-block;line-height:1.25}
@media(max-width:680px){.pzw-web .pzw-btn-primary{gap:10px}.pzw-web .pzw-wa-icon{width:21px;height:21px;flex-basis:21px}}
