
:root{--ipo-bg:#F7F8F3;--ipo-text:#17351C;--ipo-primary:#173F1B;--ipo-secondary:#245E2A;--ipo-accent:#2F7D32;--ipo-accent2:#63B768;--ipo-muted:#647267;--ipo-muted2:#94A097;--ipo-card:#FFFFFF;--ipo-border:#DDE6DC}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ipo-bg);color:var(--ipo-text);font-family:'Plus Jakarta Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased}
#ipo-advisory-site,#ipo-advisory-site *{box-sizing:border-box}
#ipo-advisory-site h1,#ipo-advisory-site h2,#ipo-advisory-site h3,#ipo-advisory-site p{margin:0}
#ipo-advisory-site a{text-decoration:none;color:inherit}
#ipo-advisory-site button,#ipo-advisory-site input,#ipo-advisory-site select,#ipo-advisory-site textarea{font:inherit}
.ipo-container{width:min(1180px,calc(100% - 40px));margin:0 auto}
.label-tag{font-size:10px;letter-spacing:.35em;font-weight:800;text-transform:uppercase}
.text-accent{color:var(--ipo-accent)}
.section-title{font-size:clamp(34px,5vw,58px);line-height:1.05;font-weight:800;letter-spacing:-.03em;margin-top:12px!important}
.muted{color:var(--ipo-muted)}
.ipo-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;cursor:pointer;border-radius:999px;font-weight:700;transition:.2s ease}
.ipo-btn svg,.text-link svg{width:17px;height:17px}
.ipo-btn-primary{background:linear-gradient(135deg,#2F7D32,#215E26);color:#fff!important;padding:14px 26px}
.ipo-btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(47,125,50,.28)}
.ipo-btn-outline{padding:13px 25px;color:#fff!important;border:1.5px solid rgba(255,255,255,.25);background:transparent}
.ipo-btn-outline:hover{border-color:var(--ipo-accent);background:rgba(47,125,50,.10)}
.card{background:#fff;border:1px solid var(--ipo-border);border-radius:20px}
.icon-box{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;flex:0 0 auto;background:rgba(47,125,50,.10);color:var(--ipo-accent)}
.icon-box svg{width:24px;height:24px;stroke-width:1.9}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}
.reveal.visible{opacity:1;transform:none}.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}.d4{transition-delay:.4s}

.site-header{position:fixed;inset:0 0 auto;z-index:9999;padding:20px 0;transition:all .35s ease}
.site-header.scrolled{padding:11px 0;background:rgba(18,56,23,.96);backdrop-filter:blur(14px);box-shadow:0 10px 35px rgba(0,0,0,.18)}
.header-row{display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:11px;color:#fff!important}
.brand img{width:39px;height:39px;object-fit:cover;border-radius:7px;display:block;box-shadow:0 0 0 1px rgba(255,255,255,.12)}
.brand-name{font-size:18px;font-weight:800;letter-spacing:-.03em}.brand-name span{color:var(--ipo-accent)}
.desktop-nav{display:flex;align-items:center;gap:31px}
.desktop-nav a{color:rgba(255,255,255,.62)!important;font-size:10px;letter-spacing:.3em;font-weight:800;text-transform:uppercase;transition:.2s}
.desktop-nav a:hover{color:var(--ipo-accent)!important}
.hamburger{display:none;width:42px;height:42px;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:rgba(255,255,255,.04);color:#fff;align-items:center;justify-content:center;cursor:pointer}
.hamburger svg{width:21px}
.mobile-menu{display:none;position:fixed;inset:0;z-index:9998;padding-top:95px;background:rgba(10,22,40,.98);backdrop-filter:blur(20px)}
.mobile-menu.open{display:flex}.mobile-menu-inner{margin:auto;display:flex;flex-direction:column;align-items:center;gap:26px;padding-bottom:40px}.mobile-menu a:not(.ipo-btn){color:#fff!important;font-size:24px;font-weight:700}

.hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden;color:#fff;background:radial-gradient(ellipse 80% 60% at 60% 40%,rgba(47,125,50,.09),transparent 60%),radial-gradient(ellipse 60% 80% at 20% 70%,rgba(55,115,60,.16),transparent 60%),linear-gradient(160deg,#123817 0%,#1B4D21 45%,#102F14 100%)}
.hero:before,.contact:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:60px 60px}
.hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:42px;background:linear-gradient(to top,var(--ipo-bg),transparent);pointer-events:none}
.hero-wrap{position:relative;z-index:2;padding:112px 0 30px}
.hero-grid{display:grid;grid-template-columns:1.45fr .8fr;gap:62px;align-items:center}
.eyebrow{display:inline-flex;align-items:center;gap:10px;padding:9px 14px;border-radius:999px;border:1px solid rgba(47,125,50,.20);background:rgba(47,125,50,.06);margin-bottom:28px}
.pulse{width:7px;height:7px;border-radius:50%;background:var(--ipo-accent);box-shadow:0 0 0 5px rgba(47,125,50,.08);animation:pulse 2.5s ease-in-out infinite}
@keyframes pulse{50%{opacity:.45;box-shadow:0 0 0 10px rgba(200,150,90,.03)}}
.hero h1{font-size:clamp(52px,7.6vw,100px);line-height:.91;letter-spacing:-.055em;font-weight:800}
.gold-text{background:linear-gradient(135deg,#63B768,#A6D7A8 50%,#3F9845);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-faded{color:rgba(255,255,255,.38)}
.hero-sub{color:rgba(255,255,255,.61);font-size:18px;line-height:1.75;max-width:610px;margin-top:28px!important;font-weight:500}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}.trust-row{display:flex;flex-wrap:wrap;gap:22px;margin-top:28px}.trust-item{display:flex;align-items:center;gap:8px;color:rgba(255,255,255,.5);font-size:12px;font-weight:600}.trust-item svg{width:18px;color:var(--ipo-accent)}
.hero-cards{display:flex;flex-direction:column;gap:14px}.glass{background:rgba(255,255,255,.045);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.085);border-radius:20px;color:#fff}
.stat-card{padding:22px;display:flex;align-items:center;gap:17px;transition:.3s}.stat-card:hover{background:rgba(255,255,255,.075);border-color:rgba(47,125,50,.30);transform:translateY(-3px)}.stat-card:nth-child(2){margin-left:28px}.stat-icon{background:rgba(47,125,50,.10);border:1px solid rgba(47,125,50,.20);color:var(--ipo-accent)}.stat-value{font-size:21px;font-weight:800;line-height:1}.stat-label{color:rgba(255,255,255,.5);font-size:12px;margin-top:6px}.live-card{padding:20px;margin-left:12px;border-color:rgba(200,150,90,.22)}.live-top{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:10px}.live-dot{width:8px;height:8px;border-radius:50%;background:#4ade80;display:inline-block;animation:pulse 2s infinite}.live-status{color:#4ade80;font-size:11px;display:flex;align-items:center;gap:7px}.live-card p{font-size:11px;color:rgba(255,255,255,.5);margin-top:4px!important}.text-link{display:inline-flex;align-items:center;gap:8px;color:var(--ipo-accent)!important;font-size:13px;font-weight:800;margin-top:10px}.hud{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:34px;padding-top:20px;border-top:1px solid rgba(255,255,255,.06)}.hud strong{display:block;font-size:18px;margin-top:5px}.hud .label-tag{color:rgba(255,255,255,.28)}

.standard{padding:30px 0}.warm{background:linear-gradient(180deg,#F7F8F3,#EEF3EC)}.section-head-split{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:54px}.side-copy{max-width:390px;font-size:15px;line-height:1.75;color:var(--ipo-muted)}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{padding:30px;display:flex;flex-direction:column;gap:22px;transition:.3s}.service-card:hover{transform:translateY(-6px);box-shadow:0 24px 60px rgba(23,63,27,.10);border-color:var(--ipo-accent)}.card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.accent-box{background:var(--ipo-accent);color:#fff}.subtle-box{background:rgba(23,63,27,.05);border:1px solid var(--ipo-border)}.tag{border:1px solid var(--ipo-border);color:var(--ipo-muted);border-radius:999px;padding:5px 10px;font-size:9px;text-transform:uppercase;letter-spacing:.28em;font-weight:800}.service-card h3{font-size:20px;font-weight:800;margin-bottom:10px!important}.service-card p{font-size:14px;color:var(--ipo-muted);line-height:1.75}.service-card ul{list-style:none;margin:0;padding:0;display:grid;gap:9px;flex:1}.service-card li{display:flex;gap:9px;font-size:13px;font-weight:600;color:rgba(10,22,40,.72)}.service-card li svg{width:17px;color:var(--ipo-accent);flex:0 0 auto}.cta-strip{margin-top:40px;padding:27px 30px;border-radius:20px;background:var(--ipo-primary);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:28px}.cta-strip p:first-child{font-weight:800;font-size:18px}.cta-strip p:last-child{color:rgba(255,255,255,.58);font-size:13px;margin-top:5px!important}
.center-head{text-align:center;max-width:670px;margin:0 auto 54px}.center-head .label-tag{display:block;margin-bottom:12px;color:var(--ipo-accent)}.center-head>p:last-child{margin-top:15px!important;color:var(--ipo-muted);line-height:1.7}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:68px}.number-card{padding:29px 20px;text-align:center}.number-card .icon-box{margin:0 auto 15px}.number-card strong{font-size:clamp(26px,4vw,42px);line-height:1;font-weight:800}.number-card p{color:var(--ipo-muted);font-size:13px;font-weight:600;margin-top:10px!important}.diff-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.diff-card{padding:26px;transition:.3s}.diff-card:hover{border-color:rgba(47,125,50,.38);box-shadow:0 15px 34px rgba(23,63,27,.08)}.diff-card .icon-box{width:44px;height:44px;margin-bottom:18px}.diff-card h3{font-size:16px;font-weight:800;margin-bottom:8px!important}.diff-card p{color:var(--ipo-muted);font-size:13px;line-height:1.7}
.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.step-card{padding:26px;border-radius:20px;border:1px solid var(--ipo-border);background:linear-gradient(135deg,rgba(47,125,50,.09),rgba(255,255,255,.3));position:relative}.step-head{display:flex;align-items:center;gap:12px;margin-bottom:20px}.step-head .icon-box{width:48px;height:48px;background:#fff;border:1px solid var(--ipo-border);box-shadow:0 3px 10px rgba(10,22,40,.04)}.step-num{font-size:30px;font-weight:800;color:rgba(23,63,27,.10)}.step-card h3{font-size:17px;font-weight:800;margin-bottom:9px!important}.step-card .desc{color:var(--ipo-muted);font-size:13px;line-height:1.65}.step-card .detail{color:var(--ipo-muted2);font-size:11px;font-style:italic;line-height:1.6;margin-top:11px!important}.step-arrow{position:absolute;right:-13px;top:38px;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid var(--ipo-border);color:var(--ipo-accent);z-index:2}.step-arrow svg{width:13px}.bottom-cta{text-align:center;margin-top:40px}.bottom-cta p{color:var(--ipo-muted);font-size:13px;margin-bottom:18px!important}
.testimonial-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.testimonial-card{padding:22px;transition:.3s}.testimonial-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(23,63,27,.08)}.stars{color:var(--ipo-accent);letter-spacing:2px;font-size:15px}.quote{color:var(--ipo-muted);font-size:12px;line-height:1.65;margin:14px 0 18px!important}.author-info{display:flex;align-items:center;gap:11px}.mini-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#E6EEE5;color:#2F7D32;font-weight:800}

.contact{position:relative;padding:30px 0;overflow:hidden;color:#fff;background:radial-gradient(circle at 90% 10%,rgba(47,125,50,.16),transparent 26%),radial-gradient(circle at 10% 100%,rgba(35,94,42,.50),transparent 32%),linear-gradient(160deg,#123817,#1B4D21 55%,#102F14)}.contact-grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.contact-copy{display:grid;gap:28px}.contact-copy .section-title{color:#fff}.contact-copy>div:first-child>p:last-child{color:rgba(255,255,255,.6);line-height:1.75;margin-top:15px!important;max-width:500px}.contact-details{display:grid;gap:17px}.contact-line{display:flex;gap:13px;align-items:center}.contact-line .icon-box{width:44px;height:44px;background:rgba(200,150,90,.13);border:1px solid rgba(47,125,50,.20)}.contact-line .label-tag{color:rgba(255,255,255,.28);display:block;margin-bottom:3px}.contact-line strong,.contact-line a{font-size:14px;color:#fff!important}.badges{display:grid;grid-template-columns:1fr 1fr;gap:10px}.badge{padding:11px 13px;border-radius:12px;display:flex;align-items:center;gap:8px;color:rgba(255,255,255,.7);font-size:11px;font-weight:600}.badge svg{width:16px;color:var(--ipo-accent)}
.form-card{background:#fff;color:var(--ipo-text);border-radius:25px;padding:34px;box-shadow:0 26px 60px rgba(18,56,23,.20)}.form-card>h3{font-size:20px;font-weight:800}.form-intro{color:var(--ipo-muted);font-size:12px;margin-top:4px!important;margin-bottom:22px!important}
.ipo-cf7-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.ipo-field{display:flex;flex-direction:column;gap:7px}.ipo-full{grid-column:1/-1}.ipo-field label{font-size:12px;font-weight:800}.required{color:#ef4444}.wpcf7-form-control-wrap{display:block;width:100%}.wpcf7 input[type=text],.wpcf7 input[type=tel],.wpcf7 input[type=email],.wpcf7 select,.wpcf7 textarea{width:100%;border:1.5px solid var(--ipo-border);background:#fff;color:var(--ipo-text);border-radius:12px;padding:12px 13px;outline:0;transition:.2s;font-size:13px}.wpcf7 input:focus,.wpcf7 select:focus,.wpcf7 textarea:focus{border-color:var(--ipo-accent);box-shadow:0 0 0 3px rgba(47,125,50,.14)}.ipo-phone-row{display:flex;gap:8px}.ipo-country{border:1.5px solid var(--ipo-border);border-radius:12px;padding:12px;color:var(--ipo-muted);font-size:13px}.ipo-phone-row .wpcf7-form-control-wrap{flex:1}.ipo-submit{width:100%;border:0;border-radius:12px;padding:14px;background:linear-gradient(135deg,#2F7D32,#215E26);color:#fff;font-weight:800;cursor:pointer}.ipo-submit:hover{box-shadow:0 12px 32px rgba(47,125,50,.30)}.ipo-form-note{text-align:center;color:var(--ipo-muted);font-size:10px;margin-top:10px!important}.wpcf7-not-valid-tip{font-size:10px;margin-top:4px}.wpcf7 form .wpcf7-response-output{margin:14px 0 0;border-radius:10px;font-size:12px;padding:10px 12px}.wpcf7-spinner{display:block;margin:10px auto}.ipo-cf7-missing{padding:16px;border-radius:12px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;font-size:13px;line-height:1.6}
.faq-wrap{max-width:840px;margin:0 auto}.faq-list{display:grid;gap:11px}.faq-item{overflow:hidden}.faq-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:18px;border:0;background:#fff;padding:18px 22px;text-align:left;cursor:pointer;color:var(--ipo-text);font-weight:700}.faq-plus{width:28px;height:28px;flex:0 0 auto;border:1px solid var(--ipo-border);border-radius:50%;display:grid;place-items:center;transition:.3s;color:var(--ipo-muted)}.faq-plus svg{width:14px;transition:.3s}.faq-item.open .faq-plus{background:var(--ipo-accent);border-color:var(--ipo-accent);color:#fff}.faq-item.open .faq-plus svg{transform:rotate(45deg)}.faq-answer{max-height:0;overflow:hidden;opacity:0;transition:max-height .35s ease,opacity .25s;background:#fff}.faq-answer p{padding:0 22px 20px;color:var(--ipo-muted);font-size:13px;line-height:1.75}.faq-item.open .faq-answer{max-height:300px;opacity:1}
.ipo-footer{border-top:1px solid var(--ipo-border);padding:52px 0 28px;background:var(--ipo-bg)}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap}.footer-brand{color:var(--ipo-text)!important}.footer-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:22px}.footer-nav a{color:var(--ipo-muted)!important;font-size:12px;font-weight:600}.copyright{color:var(--ipo-muted2);font-size:11px}.disclaimer{max-width:850px;margin:28px auto 0!important;text-align:center;color:var(--ipo-muted2);font-size:10px;line-height:1.7}.content-card{padding:34px}.page-content-wrap{padding-top:130px}

@media(max-width:980px){.desktop-nav,.header-cta{display:none}.hamburger{display:flex}.hero-grid,.contact-grid{grid-template-columns:1fr}.hero-cards{max-width:650px}.services-grid,.diff-grid{grid-template-columns:1fr 1fr}.stats-grid{grid-template-columns:1fr 1fr}.steps-grid{grid-template-columns:1fr 1fr}.step-arrow{display:none}.testimonial-grid{grid-template-columns:1fr 1fr}.hud{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.ipo-container{width:min(100% - 28px,1180px)}.site-header{padding:14px 0}.brand-name{display:none}.hero-wrap{padding-top:110px}.hero h1{font-size:clamp(47px,15vw,70px)}.hero-sub{font-size:15px}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .ipo-btn{width:100%}.stat-card:nth-child(2),.live-card{margin-left:0}.hud{display:none}.standard,.contact{padding:30px 0}.section-head-split{align-items:flex-start;flex-direction:column;margin-bottom:38px}.services-grid,.diff-grid,.steps-grid,.testimonial-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr 1fr}.number-card{padding:22px 12px}.number-card strong{font-size:28px}.cta-strip{align-items:flex-start;flex-direction:column}.badges{grid-template-columns:1fr}.form-card{padding:24px 18px}.ipo-cf7-grid{grid-template-columns:1fr}.ipo-full{grid-column:auto}.footer-main{flex-direction:column}.copyright{text-align:center}.trust-row{gap:14px}}


/* v1.0.2 — real testimonial presentation */
.featured-testimonial{max-width:810px;margin:0 auto;padding:32px;border-radius:22px;background:var(--ipo-primary);color:#fff;position:relative;overflow:hidden}
.featured-testimonial:after{content:"";position:absolute;width:310px;height:310px;right:-110px;top:-160px;background:radial-gradient(circle,rgba(47,125,50,.22),transparent 70%);filter:blur(20px)}
.featured-testimonial .stars{margin-bottom:20px;position:relative;z-index:1}
.featured-testimonial blockquote{margin:0 0 26px;font-size:18px;line-height:1.7;font-weight:600;color:rgba(255,255,255,.9);position:relative;z-index:1}
.featured-author{display:flex;justify-content:space-between;gap:15px;align-items:center;flex-wrap:wrap;position:relative;z-index:1}
.testimonial-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;border:2px solid rgba(47,125,50,.38)}
.featured-role{color:rgba(255,255,255,.5);font-size:12px;margin-top:3px}
.featured-pills{display:flex;gap:8px;flex-wrap:wrap}
.pill{border-radius:999px;padding:8px 12px;font-size:12px;font-weight:800;border:1px solid rgba(47,125,50,.20);background:rgba(200,150,90,.12);color:var(--ipo-accent)}
.pill.dim{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.1);color:rgba(255,255,255,.6);font-weight:600}
.testimonial-dots{display:flex;justify-content:center;gap:7px;margin:17px 0 28px}
.testimonial-dot{width:8px;height:8px;border:0;border-radius:99px;background:var(--ipo-border);padding:0;cursor:pointer;transition:.3s}
.testimonial-dot.active{width:25px;background:var(--ipo-accent)}
.real-testimonials .testimonial-card{appearance:none;width:100%;font-family:inherit;text-align:left;cursor:pointer;color:var(--ipo-text)}
.real-testimonials .testimonial-card.active{border-color:#8eb8ff;box-shadow:0 0 0 1px rgba(83,139,255,.25)}
.real-testimonials .testimonial-card .quote{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:59px}
.real-testimonials .author-info strong{font-size:12px}
.real-testimonials .author-info .muted{font-size:10px;margin-top:2px}
.mini-photo{width:38px;height:38px;border-radius:50%;object-fit:cover;flex:0 0 auto}
@media(max-width:680px){
  .featured-testimonial{padding:24px 20px}
  .featured-testimonial blockquote{font-size:15px}
}


/* v1.0.3 — IPO News green system + tighter 60px total section spacing */
#ipo-advisory-site{
  --ipo-brand-green:#2F7D32;
  --ipo-brand-green-dark:#173F1B;
  --ipo-brand-green-mid:#245E2A;
  --ipo-brand-green-soft:#EAF3E9;
}
.standard,
.contact{
  padding-top:30px;
  padding-bottom:30px;
}
.hero-wrap{
  padding-bottom:30px;
}
.hero:after{
  height:42px;
}
.site-header.scrolled{
  background:rgba(23,63,27,.96);
}
.ipo-btn-primary{
  background:linear-gradient(135deg,#2F7D32,#215E26);
}
.ipo-btn-primary:hover{
  box-shadow:0 12px 32px rgba(47,125,50,.28);
}
.gold-text{
  background:linear-gradient(135deg,#63B768,#B6DEB8 50%,#3F9845);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.hero{
  background:
    radial-gradient(ellipse 80% 60% at 60% 40%,rgba(90,170,95,.10),transparent 60%),
    radial-gradient(ellipse 60% 80% at 20% 70%,rgba(38,104,45,.20),transparent 60%),
    linear-gradient(160deg,#123817 0%,#1B4D21 45%,#102F14 100%);
}
.contact{
  background:
    radial-gradient(circle at 90% 10%,rgba(94,179,99,.16),transparent 26%),
    radial-gradient(circle at 10% 100%,rgba(34,94,42,.50),transparent 32%),
    linear-gradient(160deg,#123817,#1B4D21 55%,#102F14);
}
.eyebrow,
.stat-icon,
.live-card,
.contact-line .icon-box{
  border-color:rgba(99,183,104,.22);
}
.live-dot{background:#75D27A}
.live-status{color:#75D27A}
.service-card:hover,
.diff-card:hover{
  border-color:rgba(47,125,50,.42);
}
.number-card .icon-box,
.diff-card .icon-box{
  background:rgba(47,125,50,.09);
}
.form-card{
  box-shadow:0 26px 60px rgba(18,56,23,.20);
}
.wpcf7 input:focus,
.wpcf7 select:focus,
.wpcf7 textarea:focus{
  border-color:#2F7D32;
  box-shadow:0 0 0 3px rgba(47,125,50,.12);
}
@media(max-width:680px){
  .standard,.contact{padding-top:30px;padding-bottom:30px}
  .hero-wrap{padding-bottom:30px}
}


/* v1.0.5 — based on v1.0.3 green theme, with a more balanced green header/hero */
.site-header.scrolled{
  background:rgba(20,53,24,.96);
}

/* Still fully green-themed, but deeper/desaturated at the top */
.hero{
  background:
    radial-gradient(ellipse 76% 58% at 64% 38%, rgba(83,153,88,.08), transparent 58%),
    radial-gradient(ellipse 58% 76% at 18% 72%, rgba(37,88,43,.14), transparent 60%),
    linear-gradient(160deg,#15371A 0%,#1D4522 48%,#122E16 100%);
}

/* Reduce the amount of bright green in cards and chrome */
.hero .glass{
  background:rgba(255,255,255,.04);
  border-color:rgba(255,255,255,.08);
}
.hero .stat-card:hover{
  background:rgba(255,255,255,.065);
  border-color:rgba(99,183,104,.18);
}
.hero .eyebrow{
  background:rgba(47,125,50,.045);
  border-color:rgba(99,183,104,.15);
}
.hero .stat-icon{
  background:rgba(47,125,50,.075);
  border-color:rgba(99,183,104,.16);
}
.hero .live-card{
  border-color:rgba(99,183,104,.16);
}

/* Keep green accents, but make them more refined */
.hero .ipo-btn-primary,
.site-header .ipo-btn-primary{
  background:linear-gradient(135deg,#337F37,#28692D);
}
.hero .trust-item svg,
.hero .text-link,
.site-header .brand-name span{
  color:#76C77A!important;
}
.gold-text{
  background:linear-gradient(135deg,#6FC875,#A7D9AA 50%,#4EA954);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

/* Slightly softer grid so the header doesn't feel overly saturated */
.hero:before{
  opacity:.45;
}


/* v1.0.6 — reduce green dominance in top hero while keeping green theme overall */
.site-header{
  background:linear-gradient(90deg, rgba(10,22,40,.72), rgba(15,34,22,.62));
}
.site-header.scrolled{
  background:rgba(12,24,32,.96);
  box-shadow:0 10px 35px rgba(0,0,0,.18);
}

.hero{
  background:
    radial-gradient(circle at 15% 18%, rgba(47,125,50,.10), transparent 24%),
    radial-gradient(circle at 85% 22%, rgba(88,160,93,.08), transparent 22%),
    radial-gradient(circle at 80% 80%, rgba(31,78,42,.12), transparent 28%),
    linear-gradient(90deg, rgba(255,255,255,.025) 0, rgba(255,255,255,.025) 1px, transparent 1px, transparent 62px),
    linear-gradient(180deg, rgba(255,255,255,.02) 0, rgba(255,255,255,.02) 1px, transparent 1px, transparent 62px),
    linear-gradient(160deg, #0A1628 0%, #102235 38%, #16341B 72%, #0C1A13 100%);
}

.hero:before{
  opacity:.28;
  background-image:
    linear-gradient(rgba(255,255,255,.02) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.02) 1px, transparent 1px);
}

.hero .glass{
  background:rgba(255,255,255,.05);
  border-color:rgba(255,255,255,.08);
  backdrop-filter:blur(16px);
}
.hero .stat-card:hover{
  background:rgba(255,255,255,.07);
  border-color:rgba(99,183,104,.18);
}
.hero .eyebrow{
  background:rgba(47,125,50,.05);
  border-color:rgba(99,183,104,.14);
}
.hero .stat-icon{
  background:rgba(47,125,50,.07);
  border-color:rgba(99,183,104,.14);
}
.hero .live-card{
  border-color:rgba(99,183,104,.14);
}
.hero .hero-faded{
  color:rgba(255,255,255,.34);
}
.hero .hero-sub{
  color:rgba(255,255,255,.68);
}
.hero .trust-item{
  color:rgba(255,255,255,.62);
}
.hero .label-tag,
.desktop-nav a{
  color:rgba(255,255,255,.70)!important;
}
.desktop-nav a:hover{
  color:#79C67B!important;
}
.site-header .brand-name{
  color:#FFFFFF;
}
.site-header .brand-name span,
.hero .trust-item svg,
.hero .text-link{
  color:#7DCD82!important;
}
.hero .ipo-btn-primary,
.site-header .ipo-btn-primary{
  background:linear-gradient(135deg,#318236,#276A2C);
}
.hero .ipo-btn-primary:hover,
.site-header .ipo-btn-primary:hover{
  box-shadow:0 12px 32px rgba(47,125,50,.26);
}
.gold-text{
  background:linear-gradient(135deg,#82D487,#CBE9CC 48%,#5FB664 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

/* Coverage row and lower hero separators slightly cleaner */
.hud{
  border-top-color:rgba(255,255,255,.06);
}
.hud strong{
  color:#FFFFFF;
}
.hud .label-tag{
  color:rgba(255,255,255,.42)!important;
}


/* v1.0.7 — simplified contact section */
.contact .badges{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.ipo-cf7-simple{
  grid-template-columns:1fr;
}
.ipo-cf7-simple .ipo-full{
  grid-column:1;
}
@media(max-width:680px){
  .contact .badges{grid-template-columns:1fr}
}


/* v1.0.8 — improved USP divider + tighter mobile form */

/* Replace the plain four-column divider with a stronger unified USP strip */
.usp-strip{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:0;
  margin-top:34px;
  padding:0;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:rgba(255,255,255,.035);
  overflow:hidden;
  backdrop-filter:blur(12px);
}
.usp-strip .usp-item{
  min-height:86px;
  display:flex;
  align-items:center;
  gap:13px;
  padding:18px 20px;
  border-right:1px solid rgba(255,255,255,.08);
}
.usp-strip .usp-item:last-child{
  border-right:0;
}
.usp-strip .usp-icon{
  width:38px;
  height:38px;
  border-radius:11px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  background:rgba(99,183,104,.08);
  border:1px solid rgba(99,183,104,.14);
  color:#79C67B;
}
.usp-strip .usp-icon svg{
  width:18px;
  height:18px;
}
.usp-strip .label-tag{
  display:block;
  margin-bottom:5px;
  font-size:8px;
  color:rgba(255,255,255,.40)!important;
  letter-spacing:.28em;
}
.usp-strip strong{
  display:block;
  margin:0;
  color:#fff;
  font-size:14px;
  line-height:1.3;
}

/* Contact form: tighter, cleaner spacing */
.ipo-cf7-grid{
  gap:10px;
}
.ipo-field{
  gap:5px;
}
.form-card .wpcf7 p{
  margin-top:0;
  margin-bottom:0;
}
.wpcf7-form-control-wrap{
  margin:0;
}
.ipo-form-note{
  margin-top:8px!important;
}

/* Footer is now intentionally compact because the long disclaimer paragraph was removed */
.ipo-footer{
  padding-bottom:28px;
}

@media(max-width:980px){
  .usp-strip{
    grid-template-columns:1fr 1fr;
  }
  .usp-strip .usp-item:nth-child(2){
    border-right:0;
  }
  .usp-strip .usp-item:nth-child(-n+2){
    border-bottom:1px solid rgba(255,255,255,.08);
  }
}

@media(max-width:680px){
  .usp-strip{
    grid-template-columns:1fr;
    border-radius:14px;
    margin-top:22px;
  }
  .usp-strip .usp-item,
  .usp-strip .usp-item:nth-child(2){
    min-height:auto;
    padding:12px 14px;
    border-right:0;
    border-bottom:1px solid rgba(255,255,255,.08);
  }
  .usp-strip .usp-item:last-child{
    border-bottom:0;
  }
  .usp-strip .usp-icon{
    width:34px;
    height:34px;
  }
  .usp-strip strong{
    font-size:13px;
  }

  /* Reduce mobile white space around CF7 fields */
  .form-card{
    padding:20px 16px;
  }
  .ipo-cf7-grid{
    gap:7px;
  }
  .ipo-field{
    gap:3px;
  }
  .ipo-field label{
    margin-bottom:2px;
    font-size:11px;
  }
  .wpcf7 input[type=text],
  .wpcf7 input[type=tel],
  .wpcf7 input[type=email],
  .wpcf7 select,
  .wpcf7 textarea{
    padding:10px 11px;
    min-height:42px;
  }
  .ipo-country{
    padding:10px 11px;
  }
  .ipo-phone-row{
    gap:6px;
  }
  .ipo-submit{
    padding:12px;
  }
  .wpcf7 form .wpcf7-response-output{
    margin-top:8px;
  }
  .wpcf7-spinner{
    margin:6px auto;
  }
}


/* v1.0.9 — remove duplicate hero content and simplify structure */
.hero-cards{
  display:flex;
  flex-direction:column;
  gap:16px;
}
.hero-cards .stat-card:nth-child(2),
.hero-cards .stat-card:nth-child(3){
  margin-left:24px;
}
.hero .trust-row{
  display:none !important;
}

/* Bottom strip now has only 2 stronger tabs */
.usp-strip.two-tabs{
  grid-template-columns:repeat(2,minmax(0,1fr));
  max-width:860px;
  margin-left:auto;
  margin-right:auto;
}
.usp-strip.two-tabs .usp-item{
  min-height:82px;
}
.usp-strip.two-tabs .usp-item:first-child{
  border-right:1px solid rgba(255,255,255,.08);
}

/* Right hero stack should not feel oversized now that the extra card is removed */
.hero-cards .stat-card{
  min-height:96px;
}

@media(max-width:980px){
  .hero-cards .stat-card:nth-child(2),
  .hero-cards .stat-card:nth-child(3){
    margin-left:0;
  }
  .usp-strip.two-tabs{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:680px){
  .usp-strip.two-tabs{
    grid-template-columns:1fr;
  }
  .usp-strip.two-tabs .usp-item:first-child{
    border-right:0;
    border-bottom:1px solid rgba(255,255,255,.08);
  }
}


/* v1.1.0 — restore requested IPO Support tab on hero right side */
.hero-cards .keep-support-tab{
  margin-left:12px;
  padding:20px;
  border:1px solid rgba(99,183,104,.14);
}
.hero-cards .keep-support-tab strong{
  display:block;
  margin:10px 0 8px;
  font-size:18px;
  line-height:1.35;
  color:#fff;
}
.hero-cards .keep-support-tab p{
  margin:0 0 10px!important;
  font-size:12px;
  line-height:1.4;
  color:rgba(255,255,255,.62);
}
.hero-cards .live-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.hero-cards .live-status{
  display:flex;
  align-items:center;
  gap:6px;
  font-size:12px;
  color:#79C67B;
}
.hero-cards .live-dot{
  width:8px;
  height:8px;
  border-radius:999px;
  background:#79C67B;
  display:inline-block;
}
@media(max-width:980px){
  .hero-cards .keep-support-tab{
    margin-left:0;
  }
}


/* v1.1.1 — direct Contact Form 7 CTA targeting */
#ipo-contact-form{
  scroll-margin-top:90px;
}
#ipo-contact-form:focus{
  outline:none;
}
.hero-cards .stat-card:nth-child(2),
.hero-cards .stat-card:nth-child(3){
  margin-left:0;
}
.hero-cards{
  gap:16px;
}


/* v1.1.2 verified direct-form targeting */
#ipo-contact-form{
  scroll-margin-top:88px;
}
#ipo-contact-form:focus{
  outline:none;
}


/* v1.1.3 — spacing cleanup, smaller buttons, cleaner approach section */

/* Remove header buttons completely */
.header-cta{
  display:none !important;
}
.mobile-menu .ipo-btn{
  display:none !important;
}

/* Smaller button padding overall */
.ipo-btn-primary{
  padding:10px 18px !important;
}
.ipo-btn-outline{
  padding:10px 18px !important;
}
.hero-actions{
  gap:12px;
  margin-top:24px;
}
.hero-actions .ipo-btn{
  min-height:44px;
}
.cta-strip .ipo-btn,
.bottom-cta .ipo-btn{
  padding:10px 18px !important;
}

/* Equal top-bottom feel across the sections */
.standard,
.contact{
  padding-top:30px !important;
  padding-bottom:30px !important;
}
.hero-wrap{
  padding-bottom:30px !important;
}

/* "Our approach" section — reduce extra spacing */
.center-head{
  margin:0 auto 30px !important;
}
.center-head .label-tag{
  margin-bottom:10px;
}
.center-head > p:last-child{
  margin-top:10px !important;
}

/* 4 top tabs in Why Us — equal padding */
.stats-grid{
  gap:16px;
  margin-bottom:30px !important;
}
.number-card{
  padding:22px !important;
}
.number-card .icon-box{
  margin:0 auto 12px;
}
.number-card p{
  margin-top:8px !important;
}

/* Remaining 4 approach cards — equal padding */
.diff-grid{
  grid-template-columns:repeat(2,1fr);
  gap:16px;
}
.diff-card{
  padding:22px !important;
}
.diff-card .icon-box{
  margin-bottom:14px;
}
.diff-card h3{
  margin-bottom:6px !important;
}

/* Hero bottom 2 tabs — equal padding */
.usp-strip.two-tabs{
  margin-top:28px;
}
.usp-strip.two-tabs .usp-item{
  padding:16px 18px !important;
  min-height:76px;
}
.usp-strip.two-tabs strong{
  line-height:1.25;
}

/* Services cards slightly tighter and balanced */
.service-card{
  padding:24px !important;
  gap:18px;
}
.service-card h3{
  margin-bottom:8px !important;
}
.service-card ul{
  gap:8px;
}

/* Contact section + CF7 — equal inner padding and reduced top feel */
.contact-grid{
  gap:40px;
}
.contact-copy{
  gap:22px;
}
.badges{
  gap:8px;
}
.badge{
  padding:10px 12px;
}
.form-card{
  padding:24px !important;
}
.form-card > h3{
  margin-bottom:10px;
}
.ipo-cf7-grid{
  gap:8px !important;
}
.ipo-field{
  gap:4px !important;
}
.form-card .wpcf7 p{
  margin-top:0;
  margin-bottom:0;
}
.ipo-form-note{
  margin-top:8px !important;
}

/* Mobile balancing */
@media(max-width:980px){
  .diff-grid{
    grid-template-columns:1fr 1fr;
  }
  .contact-grid{
    gap:26px;
  }
}

@media(max-width:680px){
  .hero-actions{
    gap:10px;
    margin-top:20px;
  }
  .hero-actions .ipo-btn{
    min-height:42px;
  }
  .stats-grid{
    grid-template-columns:1fr 1fr;
    gap:12px;
    margin-bottom:22px !important;
  }
  .number-card{
    padding:18px 14px !important;
  }
  .diff-grid{
    grid-template-columns:1fr;
    gap:14px;
  }
  .diff-card{
    padding:18px !important;
  }
  .usp-strip.two-tabs{
    margin-top:20px;
  }
  .usp-strip.two-tabs .usp-item{
    padding:14px 14px !important;
    min-height:auto;
  }
  .service-card{
    padding:20px !important;
  }
  .contact{
    padding-top:24px !important;
    padding-bottom:24px !important;
  }
  .contact-copy{
    gap:18px;
  }
  .form-card{
    padding:18px 16px !important;
  }
  .form-card > h3{
    margin-bottom:8px;
  }
  .ipo-cf7-grid{
    gap:6px !important;
  }
  .ipo-field{
    gap:3px !important;
  }
  .wpcf7 input[type=text],
  .wpcf7 input[type=tel],
  .wpcf7 input[type=email],
  .wpcf7 select,
  .wpcf7 textarea{
    padding:10px 11px;
    min-height:42px;
  }
}


/* v1.1.4 — remove hero secondary button and tighten hero spacing */
.hero-actions{
  gap:0 !important;
  margin-top:18px !important;
}
.hero-actions .ipo-btn{
  width:auto;
}
.hero-copy > p{
  margin-top:14px !important;
}
.hero-copy{
  gap:16px !important;
}
@media(max-width:680px){
  .hero-actions{
    margin-top:14px !important;
  }
}


/* v1.1.5 — optimize hero heading/subtitle/button/USP spacing */
.hero-sub{
  margin-top:18px !important;
  margin-bottom:0 !important;
  padding-bottom:0 !important;
}
.hero-actions{
  margin-top:16px !important;
}

/* Keep spacing from CTA button to the right-side USP/card stack balanced */
.hero-grid{
  row-gap:34px;
}

@media(max-width:980px){
  .hero-grid{
    gap:28px !important;
  }
}

@media(max-width:680px){
  /* Slightly tighter heading-to-subtitle spacing */
  .hero h1{
    margin-bottom:0 !important;
  }
  .hero-sub{
    margin-top:12px !important;
    margin-bottom:0 !important;
    padding-bottom:0 !important;
    line-height:1.55;
  }

  /* CTA sits closer to subtitle */
  .hero-actions{
    margin-top:12px !important;
    margin-bottom:0 !important;
  }

  /* Equal visual spacing between CTA and first USP/card */
  .hero-grid{
    gap:24px !important;
  }

  .hero-cards{
    gap:14px;
  }

  .hero-cards .stat-card,
  .hero-cards .keep-support-tab{
    margin-left:0 !important;
  }
}


/* v1.1.6 — restore CTA only inside mobile menu */
.mobile-menu .mobile-menu-cta{
  display:inline-flex !important;
  padding:10px 18px !important;
  margin-top:8px;
}
@media(min-width:981px){
  .mobile-menu-cta{
    display:none !important;
  }
}


/* v1.1.7 exact pricing page — same supplied content and structure, blended to current theme */
.exact-pricing-page{background:#F5F3ED;color:#0A1628}
.exact-pricing-hero{position:relative;overflow:hidden;padding:112px 0 50px;color:#fff;text-align:center;background:radial-gradient(circle at 82% 22%,rgba(69,136,74,.12),transparent 25%),linear-gradient(160deg,#0A1628 0%,#10233A 55%,#13341A 100%)}
.exact-pricing-hero:before{content:"";position:absolute;inset:0;opacity:.34;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:60px 60px}
.exact-pricing-hero-inner{position:relative;z-index:1}
.exact-pricing-label{color:#76C77A}
.exact-pricing-hero h1{margin-top:16px!important;font-size:clamp(38px,5.5vw,62px);line-height:1.04;letter-spacing:-.04em;font-weight:800}
.exact-pricing-hero h1 span{color:#76C77A}
.exact-pricing-hero p{max-width:690px;margin:18px auto 0!important;color:rgba(255,255,255,.58);line-height:1.65;font-size:14px}
.exact-pricing-body{padding:58px 0 72px;background:linear-gradient(180deg,#F7F6F1,#F0EDE5)}
.exact-pricing-narrow{max-width:760px}
.exact-plan-card{position:relative;overflow:hidden;max-width:640px;margin:0 auto;padding:34px 38px 28px;border-radius:18px;border:1px solid #E2DED4;background:#fff;box-shadow:0 26px 48px rgba(15,34,29,.16)}
.exact-plan-accent{position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,#2F7D32,#66B96A,#2F7D32)}
.exact-plan-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.exact-plan-title-wrap{display:flex;align-items:center;gap:14px}
.exact-plan-doc{color:#2F7D32}.exact-plan-doc svg{width:22px}
.exact-plan-title-wrap .label-tag{display:block;color:#2F7D32;margin-bottom:5px}
.exact-plan-title-wrap h2{font-size:18px;line-height:1.2;font-weight:800}
.exact-popular{flex:0 0 auto;padding:5px 10px;border-radius:999px;background:#2F7D32;color:#fff;font-size:9px;font-weight:800;text-transform:uppercase}
.exact-price-row{display:flex;align-items:flex-end;gap:8px;margin-top:26px}
.exact-price-row strong{font-size:48px;line-height:.9;letter-spacing:-.04em}
.exact-price-row span{margin-bottom:5px;color:#667069;font-size:13px}
.exact-billing{margin-top:10px!important;color:#7C877F;font-size:12px}
.exact-rule{height:1px;margin:25px 0;background:#E7E3DA}
.exact-feature-list{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.exact-feature-list li{display:flex;align-items:flex-start;gap:10px;color:#33443A;font-size:12px;line-height:1.45}
.exact-feature-list li svg{width:17px;height:17px;flex:0 0 auto;padding:3px;border-radius:50%;color:#168C3B;background:#E9F8ED}
.exact-subscribe-btn{margin-top:28px;width:100%;min-height:50px;border-radius:999px;display:flex;align-items:center;justify-content:center;gap:9px;background:#2F7D32;color:#fff!important;font-size:14px;font-weight:800}
.exact-subscribe-btn svg{width:17px}
.exact-pay-note{text-align:center;color:#9A9F9B;font-size:9px;margin-top:13px!important}
.exact-trust-row{margin:22px auto 0;display:flex;justify-content:center;gap:28px;flex-wrap:wrap;color:#748078;font-size:11px}
.exact-trust-row span{display:flex;align-items:center;gap:6px}.exact-trust-row svg{width:15px;color:#2F7D32}
.exact-bank-section{padding-top:94px}.exact-bank-heading{text-align:center}.exact-bank-heading .label-tag{color:#2F7D32}
.exact-bank-heading h2{font-size:25px;margin-top:10px!important}.exact-bank-heading p{margin-top:13px!important;color:#7B837E;font-size:12px;line-height:1.65}
.exact-bank-card{max-width:640px;margin:28px auto 0;overflow:hidden;border-radius:16px;background:#fff;border:1px solid #DED9CE;box-shadow:0 16px 34px rgba(18,42,27,.12)}
.exact-bank-top{display:flex;align-items:center;gap:13px;padding:18px 24px;background:#0A1628;color:#fff}
.exact-bank-icon{color:#76C77A}.exact-bank-icon svg{width:20px}
.exact-bank-top strong{display:block;font-size:13px}.exact-bank-top small{display:block;margin-top:2px;color:rgba(255,255,255,.47);font-size:9px}
.exact-bank-row{min-height:55px;padding:0 24px;display:flex;justify-content:space-between;align-items:center;gap:24px;border-bottom:1px solid #ECE8DF;color:#788078;font-size:11px}
.exact-bank-row strong{color:#0A1628;font-size:11px;text-align:right}
.exact-bank-warning{padding:15px 24px;display:flex;gap:10px;align-items:flex-start;color:#8A5B23;background:#FFF9E9;font-size:9px;line-height:1.5}
.exact-bank-warning svg{width:15px;flex:0 0 auto;color:#C27B22}
.exact-whatsapp-btn{max-width:440px;min-height:48px;padding:10px 22px;margin:24px auto 0;border-radius:999px;display:flex;align-items:center;justify-content:center;gap:9px;background:#20B75A;color:#fff!important;font-size:13px;font-weight:800}
.exact-whatsapp-btn svg{width:18px}.exact-activation-note{text-align:center;color:#89918C;font-size:9px;margin-top:11px!important}
.exact-pricing-help{padding:54px 0;text-align:center;background:#F8F7F2;border-top:1px solid #E9E5DD;border-bottom:1px solid #E9E5DD}
.exact-pricing-help p{color:#7D8580;font-size:13px}.exact-help-actions{display:flex;justify-content:center;gap:14px;margin-top:18px}
.exact-help-primary,.exact-help-secondary{min-width:170px;padding:11px 20px;border-radius:999px;display:inline-flex;justify-content:center;font-size:12px;font-weight:800}
.exact-help-primary{background:#2F7D32;color:#fff!important}.exact-help-secondary{border:1px solid #D6DED4;color:#2F7D32!important;background:#fff}
@media(max-width:680px){
  .desktop-break{display:none}.exact-pricing-hero{padding:90px 0 34px}.exact-pricing-hero h1{font-size:37px}.exact-pricing-hero p{font-size:12px;margin-top:13px!important}
  .exact-pricing-body{padding:28px 0 44px}.exact-plan-card{padding:24px 18px 20px;border-radius:15px}.exact-plan-head{gap:10px}.exact-plan-title-wrap{gap:10px}
  .exact-plan-title-wrap h2{font-size:16px}.exact-popular{font-size:8px;padding:5px 8px}.exact-price-row{margin-top:21px}.exact-price-row strong{font-size:43px}
  .exact-rule{margin:20px 0}.exact-feature-list{gap:10px}.exact-feature-list li{font-size:11px}.exact-subscribe-btn{margin-top:22px;font-size:12px;min-height:46px}
  .exact-trust-row{gap:13px;font-size:9px}.exact-bank-section{padding-top:58px}.exact-bank-heading h2{font-size:23px}.exact-bank-card{margin-top:22px}
  .exact-bank-top,.exact-bank-row,.exact-bank-warning{padding-left:16px;padding-right:16px}.exact-bank-row{min-height:52px}.exact-bank-row strong{max-width:58%}
  .exact-whatsapp-btn{width:100%;font-size:11px}.exact-pricing-help{padding:38px 0}.exact-help-actions{flex-direction:column;align-items:center}
  .exact-help-primary,.exact-help-secondary{width:min(100%,290px)}
}


/* v1.1.8 — Pricing page polish:
   same supplied content, screenshot-inspired hierarchy, current IPOAdvisory navy + green UI */

/* ---------- Hero ---------- */
.exact-pricing-hero{
  padding:104px 0 56px !important;
  min-height:300px;
  display:flex;
  align-items:center;
  background:
    radial-gradient(900px 340px at 72% 18%,rgba(67,141,73,.13),transparent 65%),
    radial-gradient(700px 280px at 18% 75%,rgba(42,102,50,.08),transparent 66%),
    linear-gradient(155deg,#091828 0%,#10243A 52%,#12341A 100%) !important;
}
.exact-pricing-hero:before{
  opacity:.42 !important;
  background-size:64px 64px !important;
}
.exact-pricing-hero-inner{
  max-width:980px;
}
.exact-pricing-label{
  color:#78C97D !important;
  letter-spacing:.42em !important;
}
.exact-pricing-hero h1{
  margin-top:14px!important;
  font-size:clamp(42px,5.2vw,68px) !important;
  letter-spacing:-.045em !important;
}
.exact-pricing-hero h1 span{
  color:#80D186 !important;
}
.exact-pricing-hero p{
  max-width:720px !important;
  margin-top:17px!important;
  color:rgba(255,255,255,.62) !important;
  font-size:14px !important;
}

/* ---------- Overall pricing canvas ---------- */
.exact-pricing-body{
  position:relative;
  isolation:isolate;
  padding:72px 0 88px !important;
  overflow:hidden;
  background:
    linear-gradient(180deg,#F8F8F3 0%,#F1F3EC 45%,#F5F4EE 100%) !important;
}
.pricing-soft-glow{
  position:absolute;
  z-index:-1;
  border-radius:50%;
  filter:blur(80px);
  opacity:.4;
}
.pricing-soft-glow-a{
  width:420px;height:420px;
  left:-220px;top:190px;
  background:rgba(47,125,50,.09);
}
.pricing-soft-glow-b{
  width:460px;height:460px;
  right:-260px;top:720px;
  background:rgba(10,22,40,.06);
}
.exact-pricing-narrow{
  max-width:820px !important;
}

/* ---------- Main subscription card ---------- */
.exact-plan-card{
  max-width:650px !important;
  padding:38px 42px 30px !important;
  border-radius:20px !important;
  border:1px solid #DEE6DC !important;
  box-shadow:
    0 28px 55px rgba(18,50,27,.12),
    0 8px 18px rgba(10,22,40,.06) !important;
}
.exact-plan-accent{
  height:5px !important;
  background:linear-gradient(90deg,#2F7D32 0%,#78C97D 48%,#2F7D32 100%) !important;
}
.exact-plan-title-wrap .label-tag{
  color:#3A8C3F !important;
}
.exact-plan-doc{
  width:42px;height:42px;
  display:grid;place-items:center;
  border-radius:12px;
  color:#2F7D32 !important;
  background:#EFF6EE;
  border:1px solid #DCEADB;
}
.exact-plan-doc svg{width:20px!important}
.exact-plan-title-wrap h2{
  font-size:19px!important;
}
.exact-popular{
  padding:6px 11px!important;
  background:#2F7D32 !important;
  letter-spacing:.08em;
}
.exact-price-row{
  margin-top:28px!important;
}
.exact-price-row strong{
  font-size:52px!important;
}
.exact-billing{
  margin-top:8px!important;
}
.exact-rule{
  margin:24px 0!important;
}
.exact-feature-list{
  gap:11px!important;
}
.exact-feature-list li{
  color:#34473A!important;
  font-size:12px!important;
}
.exact-feature-list li svg{
  background:#E9F8ED!important;
  color:#1F9846!important;
}
.exact-subscribe-btn{
  min-height:52px!important;
  margin-top:30px!important;
  background:linear-gradient(135deg,#318236,#245E2A)!important;
  box-shadow:0 10px 24px rgba(47,125,50,.18);
  transition:transform .2s ease,box-shadow .2s ease;
}
.exact-subscribe-btn:hover{
  transform:translateY(-2px);
  box-shadow:0 15px 30px rgba(47,125,50,.24);
}
.exact-pay-note{
  margin-top:12px!important;
}

/* ---------- Compact trust row ---------- */
.exact-trust-row{
  max-width:610px;
  margin-top:22px!important;
  padding:0 8px;
  gap:24px!important;
}
.exact-trust-row span{
  color:#718078!important;
  font-size:10px!important;
}
.exact-trust-row svg{
  color:#319144!important;
}

/* ---------- How to pay / bank section ---------- */
.exact-bank-section{
  padding-top:88px!important;
}
.exact-bank-heading{
  max-width:600px;
  margin:0 auto;
}
.exact-bank-heading .label-tag{
  color:#3A8C3F!important;
  letter-spacing:.38em!important;
}
.exact-bank-heading h2{
  margin-top:9px!important;
  font-size:29px!important;
  letter-spacing:-.025em;
}
.exact-bank-heading p{
  max-width:560px;
  margin:12px auto 0!important;
  color:#77817A!important;
}
.exact-bank-card{
  max-width:650px!important;
  margin-top:27px!important;
  border-radius:18px!important;
  border-color:#DCE4DA!important;
  box-shadow:
    0 18px 34px rgba(18,50,27,.09),
    0 5px 14px rgba(10,22,40,.04)!important;
}
.exact-bank-top{
  padding:18px 22px!important;
  background:linear-gradient(135deg,#0A1628,#11293C)!important;
}
.exact-bank-icon{
  width:38px;height:38px;
  display:grid;place-items:center;
  border-radius:11px;
  background:rgba(120,201,125,.10);
  border:1px solid rgba(120,201,125,.15);
}
.exact-bank-row{
  min-height:56px!important;
  padding:0 22px!important;
  background:#fff;
}
.exact-bank-row:nth-child(even){
  background:#FBFCFA;
}
.exact-bank-warning{
  padding:14px 22px!important;
  color:#786128!important;
  background:#FFFBEF!important;
}
.exact-whatsapp-btn{
  max-width:470px!important;
  min-height:50px!important;
  margin-top:24px!important;
  background:linear-gradient(135deg,#1DB954,#169849)!important;
  box-shadow:0 10px 24px rgba(29,185,84,.17);
}
.exact-activation-note{
  margin-top:10px!important;
}

/* ---------- Bottom pre-subscription CTA ---------- */
.exact-pricing-help{
  position:relative;
  overflow:hidden;
  padding:52px 0!important;
  background:#F9F8F4!important;
}
.pricing-help-glow{
  position:absolute;
  width:420px;height:180px;
  left:50%;top:50%;
  transform:translate(-50%,-50%);
  background:radial-gradient(circle,rgba(47,125,50,.055),transparent 68%);
  pointer-events:none;
}
.exact-pricing-help > .ipo-container{
  position:relative;
  z-index:1;
}
.exact-pricing-help p{
  color:#7A857E!important;
}
.exact-help-actions{
  margin-top:16px!important;
}
.exact-help-primary{
  background:#2F7D32!important;
}
.exact-help-secondary{
  color:#53635A!important;
  border-color:#DCE5DA!important;
}

/* ---------- Footer relation ---------- */
.exact-pricing-page + .ipo-footer{
  border-top:0;
}

/* ---------- Mobile ---------- */
@media(max-width:680px){
  .exact-pricing-hero{
    min-height:auto;
    padding:86px 0 36px!important;
  }
  .exact-pricing-label{
    font-size:9px;
  }
  .exact-pricing-hero h1{
    font-size:36px!important;
    line-height:1.07!important;
  }
  .exact-pricing-hero p{
    margin-top:12px!important;
    font-size:12px!important;
  }

  .exact-pricing-body{
    padding:28px 0 46px!important;
  }
  .exact-plan-card{
    padding:22px 17px 19px!important;
    border-radius:16px!important;
  }
  .exact-plan-head{
    gap:8px!important;
  }
  .exact-plan-doc{
    width:38px;height:38px;
  }
  .exact-plan-title-wrap{
    gap:9px!important;
  }
  .exact-plan-title-wrap h2{
    font-size:15px!important;
  }
  .exact-popular{
    font-size:7px!important;
    padding:5px 7px!important;
  }
  .exact-price-row{
    margin-top:20px!important;
  }
  .exact-price-row strong{
    font-size:44px!important;
  }
  .exact-rule{
    margin:18px 0!important;
  }
  .exact-feature-list{
    gap:9px!important;
  }
  .exact-feature-list li{
    font-size:10.8px!important;
  }
  .exact-subscribe-btn{
    min-height:46px!important;
    margin-top:21px!important;
    font-size:12px!important;
  }
  .exact-trust-row{
    display:grid!important;
    grid-template-columns:1fr 1fr;
    gap:10px 12px!important;
    justify-items:start;
    max-width:100%;
    padding:0 4px;
  }
  .exact-trust-row span:last-child{
    grid-column:1/-1;
  }

  .exact-bank-section{
    padding-top:50px!important;
  }
  .exact-bank-heading h2{
    font-size:24px!important;
  }
  .exact-bank-heading p{
    font-size:11px!important;
  }
  .exact-bank-card{
    border-radius:15px!important;
    margin-top:20px!important;
  }
  .exact-bank-top{
    padding:15px 14px!important;
  }
  .exact-bank-row{
    padding:0 14px!important;
    min-height:50px!important;
    gap:12px!important;
  }
  .exact-bank-warning{
    padding:12px 14px!important;
  }
  .exact-whatsapp-btn{
    width:100%!important;
    min-height:46px!important;
    font-size:10.8px!important;
    padding:9px 12px!important;
  }

  .exact-pricing-help{
    padding:34px 0!important;
  }
  .exact-help-actions{
    gap:9px!important;
  }
}


/* v1.1.9 — homepage pricing CTA inspired by supplied reference */
.home-pricing-cta-section{
  padding:30px 0;
  background:
    linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px),
    linear-gradient(155deg,#081726,#0C1D2D 62%,#102B1A);
  background-size:64px 64px,64px 64px,auto;
}
.home-pricing-cta{
  min-height:150px;
  padding:28px 34px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.045);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
.home-pricing-cta-copy{
  display:flex;
  align-items:center;
  gap:22px;
  min-width:0;
}
.home-pricing-cta-icon{
  width:54px;
  height:54px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  color:#76C77A;
}
.home-pricing-cta-icon svg{
  width:36px;
  height:36px;
  stroke-width:1.7;
}
.home-pricing-cta h2{
  color:#fff;
  font-size:25px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:-.025em;
}
.home-pricing-cta p{
  margin-top:8px!important;
  color:rgba(255,255,255,.50);
  font-size:15px;
  line-height:1.5;
}
.home-pricing-cta-actions{
  display:flex;
  align-items:center;
  gap:14px;
  flex:0 0 auto;
}
.home-pricing-btn{
  min-height:48px;
  padding:11px 24px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  white-space:nowrap;
  font-size:13px;
  font-weight:800;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.home-pricing-btn.primary{
  min-width:250px;
  background:linear-gradient(135deg,#318236,#245E2A);
  color:#fff!important;
  box-shadow:0 10px 24px rgba(47,125,50,.16);
}
.home-pricing-btn.secondary{
  min-width:180px;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.25);
  background:transparent;
}
.home-pricing-btn:hover{
  transform:translateY(-2px);
}
.home-pricing-btn.primary:hover{
  box-shadow:0 14px 28px rgba(47,125,50,.23);
}
.home-pricing-btn.secondary:hover{
  border-color:rgba(118,199,122,.55);
  background:rgba(118,199,122,.06);
}

@media(max-width:980px){
  .home-pricing-cta{
    flex-direction:column;
    align-items:flex-start;
  }
  .home-pricing-cta-actions{
    width:100%;
  }
  .home-pricing-btn{
    flex:1;
  }
}

@media(max-width:680px){
  .home-pricing-cta-section{
    padding:24px 0;
  }
  .home-pricing-cta{
    min-height:auto;
    padding:20px 16px;
    gap:20px;
    border-radius:16px;
  }
  .home-pricing-cta-copy{
    align-items:flex-start;
    gap:13px;
  }
  .home-pricing-cta-icon{
    width:38px;
    height:38px;
  }
  .home-pricing-cta-icon svg{
    width:27px;
    height:27px;
  }
  .home-pricing-cta h2{
    font-size:20px;
  }
  .home-pricing-cta p{
    margin-top:5px!important;
    font-size:12px;
  }
  .home-pricing-cta-actions{
    flex-direction:column;
    gap:9px;
  }
  .home-pricing-btn{
    width:100%;
    min-width:0!important;
    min-height:44px;
    padding:10px 16px;
    font-size:12px;
  }
}


/* v1.2.0 — Past Performance page */
.past-performance-page{background:#F6F7F2;color:#0A1628}
.past-hero{position:relative;overflow:hidden;padding:104px 0 54px;text-align:center;color:#fff;background:radial-gradient(900px 340px at 75% 22%,rgba(80,149,83,.12),transparent 62%),radial-gradient(700px 280px at 15% 78%,rgba(47,125,50,.08),transparent 66%),linear-gradient(155deg,#091828 0%,#10243A 52%,#12341A 100%)}
.past-hero:before{content:"";position:absolute;inset:0;opacity:.36;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.026) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.026) 1px,transparent 1px);background-size:64px 64px}
.past-hero-inner{position:relative;z-index:1}
.past-hero-label{color:#78C97D}
.past-hero h1{margin-top:14px!important;font-size:clamp(42px,5.3vw,68px);line-height:1.03;letter-spacing:-.045em;font-weight:800}
.past-hero h1 span{color:#80D186}
.past-hero p{max-width:760px;margin:16px auto 0!important;color:rgba(255,255,255,.62);font-size:14px;line-height:1.7}
.past-hero-metrics{max-width:960px;margin:30px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.past-metric-card{padding:18px 20px;border-radius:18px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(10px)}
.past-metric-card strong{display:block;font-size:28px;line-height:1;font-weight:800;color:#fff}
.past-metric-card span{display:block;margin-top:8px;color:rgba(255,255,255,.55);font-size:12px}
.past-table-section{padding:68px 0 78px;background:linear-gradient(180deg,#F7F8F3 0%,#F0F3EB 48%,#F7F6F1 100%)}
.past-section-head{text-align:center;max-width:700px;margin:0 auto 28px}
.past-section-head h2{margin-top:10px!important;font-size:clamp(30px,4vw,46px);line-height:1.1;letter-spacing:-.03em;font-weight:800}
.past-section-head p{margin-top:10px!important;color:#67736D;font-size:13px;line-height:1.7}
.past-table-wrap{overflow:auto;border:1px solid #DCE4DA;border-radius:20px;background:#fff;box-shadow:0 18px 38px rgba(18,50,27,.08),0 5px 14px rgba(10,22,40,.04)}
.past-table{width:100%;border-collapse:separate;border-spacing:0;min-width:1120px}
.past-table thead th{position:sticky;top:0;z-index:1;padding:16px 16px;background:#EEF4ED;color:#33443A;border-bottom:1px solid #DCE4DA;font-size:11px;font-weight:800;text-align:left}
.past-table tbody td{padding:16px 16px;border-bottom:1px solid #EDF1EB;color:#55635C;font-size:12px;line-height:1.5;vertical-align:top}
.past-table tbody tr:nth-child(even) td{background:#FBFCFA}
.past-table tbody tr:last-child td{border-bottom:0}
.past-table .company-cell{color:#0A1628;font-weight:800;min-width:190px}
.past-table .notes-cell{min-width:220px}
.pill-gain{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:5px 10px;border-radius:999px;background:#EAF7EC;color:#207D33;font-size:11px;font-weight:800;white-space:nowrap}
.gain-strong{color:#157a38;font-weight:800}
.past-mobile-cards{display:none}
.past-mobile-card{padding:20px 16px;border-radius:16px;border:1px solid #DCE4DA;background:#fff;box-shadow:0 14px 28px rgba(18,50,27,.07)}
.past-mobile-card + .past-mobile-card{margin-top:14px}
.past-mobile-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.past-mobile-card-top .label-tag{color:#3A8C3F}
.past-mobile-card-top h3{margin-top:6px!important;font-size:18px;line-height:1.2;font-weight:800}
.past-mobile-grid{margin-top:18px;display:grid;grid-template-columns:1fr 1fr;gap:12px 14px}
.past-mobile-grid div{padding:12px;border-radius:12px;background:#F8FAF7;border:1px solid #E7EEE4}
.past-mobile-grid span,.past-mobile-note span{display:block;color:#7A847E;font-size:10px;font-weight:700;margin-bottom:6px}
.past-mobile-grid strong{display:block;color:#0A1628;font-size:12px;line-height:1.45}
.past-mobile-note{margin-top:14px;padding:12px;border-radius:12px;background:#FBFCFA;border:1px solid #E7EEE4}
.past-mobile-note p{color:#46544C;font-size:12px;line-height:1.55}
.past-footnote{max-width:820px;margin:18px auto 0;text-align:center}
.past-footnote p{color:#7D8781;font-size:11px;line-height:1.65}
.past-bottom-cta{padding:0 0 54px;background:#F7F6F1}
.past-bottom-card{padding:28px 30px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-radius:22px;color:#fff;background:radial-gradient(circle at 88% 20%,rgba(99,183,104,.13),transparent 25%),linear-gradient(145deg,#0D202D,#16391C)}
.past-bottom-card .label-tag{color:#79C67B}
.past-bottom-card h2{margin-top:7px!important;font-size:28px;line-height:1.15}
.past-bottom-card p{margin-top:6px!important;color:rgba(255,255,255,.58);font-size:12px}
.past-bottom-actions{display:flex;align-items:center;gap:12px;flex:0 0 auto}
.past-bottom-actions .ipo-btn{min-width:170px;justify-content:center}
@media(max-width:980px){.past-hero-metrics{grid-template-columns:1fr;max-width:640px}.past-bottom-card{flex-direction:column;align-items:flex-start}.past-bottom-actions{width:100%}.past-bottom-actions .ipo-btn{flex:1}}
@media(max-width:680px){.past-hero{padding:88px 0 34px}.past-hero h1{font-size:38px;line-height:1.06}.past-hero p{margin-top:12px!important;font-size:12px}.past-hero-metrics{margin-top:20px;gap:10px}.past-metric-card{padding:14px 14px;border-radius:14px}.past-metric-card strong{font-size:22px}.past-metric-card span{margin-top:5px;font-size:11px}.past-table-section{padding:30px 0 46px}.past-section-head{margin-bottom:20px}.past-section-head h2{font-size:28px}.past-section-head p{font-size:12px}.past-table-wrap{display:none}.past-mobile-cards{display:block}.past-mobile-grid{grid-template-columns:1fr;gap:10px}.past-footnote{margin-top:14px}.past-footnote p{font-size:10px}.past-bottom-cta{padding:0 0 38px}.past-bottom-card{padding:22px 18px;border-radius:16px}.past-bottom-card h2{font-size:23px}.past-bottom-card p{font-size:11px}.past-bottom-actions{flex-direction:column;gap:10px}.past-bottom-actions .ipo-btn{width:100%;min-width:0}}


/* v1.2.1 — homepage Past Performance CTA + mobile fixes */
.home-performance-cta-section{
  padding:30px 0;
  background:#F6F7F2;
}
.home-performance-cta{
  padding:24px 28px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  border-radius:20px;
  border:1px solid #DCE4DA;
  background:#FFFFFF;
  box-shadow:0 14px 32px rgba(18,50,27,.07);
}
.home-performance-copy{
  display:flex;
  align-items:center;
  gap:18px;
  min-width:0;
}
.home-performance-icon{
  width:50px;
  height:50px;
  border-radius:14px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  background:#EEF6ED;
  border:1px solid #DCEADB;
  color:#2F7D32;
}
.home-performance-icon svg{
  width:24px;
  height:24px;
}
.home-performance-copy .label-tag{
  color:#3A8C3F;
}
.home-performance-copy h2{
  margin-top:6px!important;
  font-size:23px;
  line-height:1.2;
  letter-spacing:-.02em;
}
.home-performance-copy p{
  margin-top:6px!important;
  color:#6D7971;
  font-size:12px;
  line-height:1.55;
}
.home-performance-btn{
  min-height:46px;
  padding:10px 20px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  flex:0 0 auto;
  background:linear-gradient(135deg,#318236,#245E2A);
  color:#fff!important;
  font-size:12px;
  font-weight:800;
}
.home-performance-btn svg{
  width:16px;
  height:16px;
}

/* Explicit mobile visibility for Past Performance content */
@media(max-width:680px){
  .past-performance-page{
    display:block!important;
    visibility:visible!important;
  }
  .past-table-section{
    display:block!important;
  }
  .past-mobile-cards{
    display:block!important;
    visibility:visible!important;
  }
  .past-table-wrap{
    display:none!important;
  }
  .past-mobile-card{
    display:block!important;
  }

  .home-performance-cta-section{
    padding:24px 0;
  }
  .home-performance-cta{
    padding:18px 16px;
    flex-direction:column;
    align-items:stretch;
    gap:16px;
    border-radius:16px;
  }
  .home-performance-copy{
    align-items:flex-start;
    gap:12px;
  }
  .home-performance-icon{
    width:40px;
    height:40px;
    border-radius:12px;
  }
  .home-performance-icon svg{
    width:20px;
    height:20px;
  }
  .home-performance-copy h2{
    font-size:19px;
  }
  .home-performance-copy p{
    font-size:11px;
  }
  .home-performance-btn{
    width:100%;
    min-height:44px;
  }
}


/* v1.2.2 — mobile menu hard fix */
@media(max-width:980px){
  .hamburger{
    display:flex !important;
    position:relative;
    z-index:10001;
  }
  .mobile-menu{
    display:none !important;
    position:fixed;
    inset:0;
    z-index:10000;
    padding:84px 20px 28px;
    background:rgba(8,22,35,.985);
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
    overflow-y:auto;
  }
  .mobile-menu.open{
    display:flex !important;
  }
  .mobile-menu-inner{
    width:100%;
    min-height:calc(100vh - 112px);
    margin:0;
    padding:24px 0 38px;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    justify-content:flex-start;
    gap:8px;
  }
  .mobile-menu a:not(.ipo-btn){
    width:100%;
    padding:14px 16px;
    border-radius:12px;
    color:#fff !important;
    font-size:18px !important;
    font-weight:700;
    text-align:left;
  }
  .mobile-menu .mobile-menu-cta{
    display:flex !important;
    width:100%;
    min-height:46px;
    margin-top:10px;
    justify-content:center;
  }
}


/* v1.2.3 — Pricing payment proof CF7 */
.pricing-payment-proof-card{
  max-width:650px;
  margin:26px auto 0;
  padding:24px;
  border-radius:18px;
  border:1px solid #DCE4DA;
  background:#FFFFFF;
  box-shadow:0 16px 32px rgba(18,50,27,.08);
}
.pricing-payment-proof-head{
  display:flex;
  align-items:flex-start;
  gap:14px;
  margin-bottom:20px;
}
.pricing-payment-proof-icon{
  width:42px;
  height:42px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:#EEF6ED;
  border:1px solid #DCEADB;
  color:#2F7D32;
}
.pricing-payment-proof-icon svg{
  width:20px;
  height:20px;
}
.pricing-payment-proof-head .label-tag{
  color:#3A8C3F;
}
.pricing-payment-proof-head h3{
  margin-top:5px!important;
  font-size:20px;
  line-height:1.2;
}
.pricing-payment-proof-head p{
  margin-top:5px!important;
  color:#717D75;
  font-size:11px;
  line-height:1.55;
}
.ipo-payment-cf7{
  display:grid;
  gap:11px;
}
.ipo-payment-field{
  display:grid;
  gap:5px;
}
.ipo-payment-field label{
  color:#15271B;
  font-size:11px;
  font-weight:800;
}
.ipo-payment-cf7 input[type="text"],
.ipo-payment-cf7 input[type="tel"]{
  width:100%;
  min-height:46px;
  padding:10px 12px;
  border:1px solid #D8E2D6;
  border-radius:12px;
  background:#fff;
  color:#0A1628;
}
.ipo-payment-cf7 input[type="file"]{
  width:100%;
  padding:11px;
  border:1px dashed #BDD1BC;
  border-radius:12px;
  background:#F8FBF7;
  color:#415047;
  font-size:11px;
}
.ipo-upload-box small{
  display:block;
  margin-top:6px;
  color:#879087;
  font-size:9px;
  line-height:1.45;
}
.ipo-payment-submit{
  width:100%;
  min-height:48px;
  margin-top:2px;
  border:0;
  border-radius:999px;
  background:linear-gradient(135deg,#318236,#245E2A);
  color:#fff;
  font-size:12px;
  font-weight:800;
  cursor:pointer;
}
.ipo-payment-note{
  margin-top:8px!important;
  text-align:center;
  color:#8A938C;
  font-size:9px;
}
.pricing-payment-cf7 .wpcf7-spinner{
  display:block;
  margin:8px auto 0;
}
.pricing-payment-cf7 .wpcf7-response-output{
  margin:12px 0 0!important;
  padding:10px 12px!important;
  border-radius:10px;
  font-size:10px;
}

/* Contact form now only Name + Mobile */
#ipo-contact-form .ipo-cf7-grid{
  gap:8px!important;
}

@media(max-width:680px){
  .pricing-payment-proof-card{
    margin-top:20px;
    padding:17px 14px;
    border-radius:15px;
  }
  .pricing-payment-proof-head{
    gap:10px;
    margin-bottom:16px;
  }
  .pricing-payment-proof-icon{
    width:38px;
    height:38px;
  }
  .pricing-payment-proof-head h3{
    font-size:17px;
  }
  .ipo-payment-cf7{
    gap:8px;
  }
  .ipo-payment-cf7 input[type="text"],
  .ipo-payment-cf7 input[type="tel"]{
    min-height:42px;
    padding:9px 10px;
  }
  .ipo-payment-cf7 input[type="file"]{
    padding:9px;
  }
  .ipo-payment-submit{
    min-height:44px;
  }
}


/* v1.2.4 — Past Performance category tabs */
.performance-tabs{
  max-width:920px;
  margin:0 auto 26px;
  padding:6px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:6px;
  border:1px solid #DCE4DA;
  border-radius:16px;
  background:#FFFFFF;
  box-shadow:0 10px 26px rgba(18,50,27,.05);
}
.performance-tab{
  min-height:46px;
  padding:9px 12px;
  border:0;
  border-radius:11px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  background:transparent;
  color:#5E6C63;
  font-size:11px;
  font-weight:800;
  cursor:pointer;
  transition:.2s ease;
}
.performance-tab span{
  min-width:23px;
  height:23px;
  padding:0 6px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#EEF2EC;
  color:#718078;
  font-size:9px;
}
.performance-tab.active{
  color:#FFFFFF;
  background:linear-gradient(135deg,#318236,#245E2A);
  box-shadow:0 8px 18px rgba(47,125,50,.16);
}
.performance-tab.active span{
  background:rgba(255,255,255,.15);
  color:#FFFFFF;
}
.performance-panel{
  display:none;
}
.performance-panel.active{
  display:block;
}
.performance-category-head{
  margin:0 0 15px;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
}
.performance-category-head .label-tag{
  color:#3A8C3F;
}
.performance-category-head h3{
  margin-top:6px!important;
  font-size:22px;
  line-height:1.2;
  letter-spacing:-.02em;
}
.performance-count{
  flex:0 0 auto;
  padding:7px 11px;
  border-radius:999px;
  background:#EAF7EC;
  color:#207D33;
  font-size:10px;
  font-weight:800;
}

/* GST pricing emphasis */
.exact-price-row span{
  max-width:140px;
  line-height:1.35;
}
.exact-billing{
  color:#52705A!important;
  font-weight:700;
}

@media(max-width:680px){
  .performance-tabs{
    display:flex;
    gap:7px;
    padding:5px;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    border-radius:14px;
    margin-bottom:20px;
  }
  .performance-tabs::-webkit-scrollbar{
    display:none;
  }
  .performance-tab{
    flex:0 0 auto;
    min-width:135px;
    min-height:42px;
    padding:8px 10px;
  }
  .performance-category-head{
    align-items:center;
    margin-bottom:13px;
  }
  .performance-category-head h3{
    font-size:18px;
  }
  .performance-count{
    font-size:9px;
  }
}


/* v1.2.5 — Past Performance cleanup */
.past-hero-metrics{
  max-width:360px !important;
  grid-template-columns:1fr !important;
}
.performance-category-head{
  align-items:flex-start !important;
}


/* v1.2.6 — remove category tab count badges */
.performance-tab{
  gap:0 !important;
}
.performance-tab > span{
  display:none !important;
}


/* v1.2.7 — UTI field + clickable support details */
.ipo-payment-field .optional{
  color:#8A938C;
  font-size:9px;
  font-weight:600;
}
.contact-link{
  color:inherit !important;
  text-decoration:none;
}
.contact-link:hover{
  color:#2F7D32 !important;
  text-decoration:underline;
}


/* v1.2.8 — Dedicated Contact Us page */
.contact-us-page{
  background:#F6F7F2;
  color:#0A1628;
}
.contact-us-hero{
  position:relative;
  overflow:hidden;
  padding:104px 0 52px;
  text-align:center;
  color:#fff;
  background:
    radial-gradient(850px 330px at 78% 18%,rgba(76,148,82,.13),transparent 62%),
    radial-gradient(650px 270px at 15% 82%,rgba(47,125,50,.08),transparent 64%),
    linear-gradient(155deg,#091828 0%,#10243A 52%,#12341A 100%);
}
.contact-us-hero:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.36;
  background-image:
    linear-gradient(rgba(255,255,255,.026) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.026) 1px,transparent 1px);
  background-size:64px 64px;
}
.contact-us-hero-inner{
  position:relative;
  z-index:1;
  max-width:820px;
}
.contact-us-label{
  color:#78C97D;
}
.contact-us-hero h1{
  margin-top:14px!important;
  font-size:clamp(42px,5.3vw,68px);
  line-height:1.03;
  letter-spacing:-.045em;
  font-weight:800;
}
.contact-us-hero h1 span{
  color:#80D186;
}
.contact-us-hero p{
  max-width:700px;
  margin:16px auto 0!important;
  color:rgba(255,255,255,.62);
  font-size:14px;
  line-height:1.7;
}

.contact-us-main{
  padding:62px 0 70px;
  background:linear-gradient(180deg,#F7F8F3,#EFF3EC);
}
.contact-us-grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:28px;
  align-items:start;
}
.contact-us-section-head{
  margin-bottom:22px;
}
.contact-us-section-head h2{
  margin-top:8px!important;
  font-size:36px;
  line-height:1.1;
  letter-spacing:-.03em;
}
.contact-us-section-head p{
  max-width:500px;
  margin-top:9px!important;
  color:#69766E;
  font-size:12px;
  line-height:1.65;
}
.contact-info-cards{
  display:grid;
  gap:12px;
}
.contact-info-card{
  position:relative;
  padding:16px 48px 16px 16px;
  display:flex;
  align-items:flex-start;
  gap:13px;
  border:1px solid #DCE4DA;
  border-radius:16px;
  background:#fff;
  color:#0A1628!important;
  box-shadow:0 10px 25px rgba(18,50,27,.05);
  transition:.2s ease;
}
.contact-info-card:hover{
  transform:translateY(-2px);
  border-color:#BFD4BE;
  box-shadow:0 14px 30px rgba(18,50,27,.08);
}
.contact-info-icon{
  width:42px;
  height:42px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:#EEF6ED;
  border:1px solid #DCEADB;
  color:#2F7D32;
}
.contact-info-icon svg{
  width:19px;
  height:19px;
}
.contact-info-card div > span{
  display:block;
  margin-bottom:4px;
  color:#7C8780;
  font-size:9px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.contact-info-card strong{
  display:block;
  color:#0A1628;
  font-size:13px;
  line-height:1.5;
}
.contact-info-card small{
  display:block;
  margin-top:5px;
  color:#8A938D;
  font-size:9px;
}
.contact-info-arrow{
  position:absolute;
  top:18px;
  right:16px;
  width:16px;
  color:#95A19A;
}
.contact-us-support-note{
  margin-top:16px;
  padding:15px 16px;
  display:flex;
  gap:11px;
  border-radius:14px;
  background:#EAF6EC;
  border:1px solid #D5E9D8;
}
.contact-us-support-note > span{
  color:#2F7D32;
}
.contact-us-support-note svg{
  width:18px;
}
.contact-us-support-note strong{
  display:block;
  font-size:11px;
}
.contact-us-support-note p{
  margin-top:4px!important;
  color:#627268;
  font-size:10px;
  line-height:1.5;
}

.contact-us-form-card{
  padding:26px;
  border:1px solid #DCE4DA;
  border-radius:20px;
  background:#fff;
  box-shadow:0 20px 42px rgba(18,50,27,.08);
}
.contact-us-form-head{
  display:flex;
  align-items:flex-start;
  gap:13px;
  margin-bottom:22px;
}
.contact-form-icon{
  width:44px;
  height:44px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  border-radius:13px;
  background:#EEF6ED;
  border:1px solid #DCEADB;
  color:#2F7D32;
}
.contact-form-icon svg{
  width:21px;
}
.contact-us-form-head .label-tag{
  color:#3A8C3F;
}
.contact-us-form-head h2{
  margin-top:5px!important;
  font-size:24px;
  line-height:1.2;
}
.contact-us-form-head p{
  margin-top:5px!important;
  color:#717D75;
  font-size:11px;
}

.ipo-contact-page-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.ipo-contact-page-full{
  grid-column:1/-1;
}
.ipo-contact-page-field{
  display:grid;
  gap:5px;
}
.ipo-contact-page-field label{
  color:#15271B;
  font-size:11px;
  font-weight:800;
}
.ipo-contact-page-field input[type="text"],
.ipo-contact-page-field input[type="tel"],
.ipo-contact-page-field input[type="email"],
.ipo-contact-page-field textarea{
  width:100%;
  border:1px solid #D8E2D6;
  border-radius:12px;
  background:#fff;
  color:#0A1628;
  font-size:12px;
  outline:none;
  transition:border-color .2s ease,box-shadow .2s ease;
}
.ipo-contact-page-field input[type="text"],
.ipo-contact-page-field input[type="tel"],
.ipo-contact-page-field input[type="email"]{
  min-height:46px;
  padding:10px 12px;
}
.ipo-contact-page-field textarea{
  min-height:125px;
  padding:11px 12px;
  resize:vertical;
}
.ipo-contact-page-field input:focus,
.ipo-contact-page-field textarea:focus{
  border-color:#7EB581;
  box-shadow:0 0 0 3px rgba(47,125,50,.08);
}
.ipo-contact-consent{
  padding:11px 12px;
  border:1px solid #E0E7DE;
  border-radius:12px;
  background:#F9FBF8;
  color:#5D6A62;
  font-size:10px;
  line-height:1.55;
}
.ipo-contact-consent .wpcf7-list-item{
  margin:0;
}
.ipo-contact-consent label{
  display:flex;
  align-items:flex-start;
  gap:8px;
}
.ipo-contact-consent input[type="checkbox"]{
  margin-top:3px;
  flex:0 0 auto;
}
.ipo-contact-consent a{
  color:#2F7D32!important;
  text-decoration:underline;
}
.ipo-contact-page-submit{
  width:100%;
  min-height:48px;
  border:0;
  border-radius:999px;
  background:linear-gradient(135deg,#318236,#245E2A);
  color:#fff;
  font-size:12px;
  font-weight:800;
  cursor:pointer;
}
.ipo-contact-page-note{
  margin-top:8px!important;
  text-align:center;
  color:#8A938C;
  font-size:9px;
}
.contact-us-cf7-wrap .wpcf7-response-output{
  margin:12px 0 0!important;
  padding:10px 12px!important;
  border-radius:10px;
  font-size:10px;
}

.contact-us-bottom{
  padding:0 0 52px;
  background:#F7F6F1;
}
.contact-us-bottom-card{
  padding:26px 28px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  border-radius:20px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 20%,rgba(99,183,104,.13),transparent 25%),
    linear-gradient(145deg,#0D202D,#16391C);
}
.contact-us-bottom-card .label-tag{
  color:#79C67B;
}
.contact-us-bottom-card h2{
  margin-top:6px!important;
  font-size:26px;
  line-height:1.15;
}
.contact-us-bottom-card p{
  margin-top:5px!important;
  color:rgba(255,255,255,.58);
  font-size:11px;
}

@media(max-width:980px){
  .contact-us-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:680px){
  .contact-us-hero{
    padding:88px 0 34px;
  }
  .contact-us-hero h1{
    font-size:38px;
  }
  .contact-us-hero p{
    margin-top:12px!important;
    font-size:12px;
  }
  .contact-us-main{
    padding:30px 0 42px;
  }
  .contact-us-section-head h2{
    font-size:28px;
  }
  .contact-us-form-card{
    padding:18px 14px;
    border-radius:16px;
  }
  .ipo-contact-page-grid{
    grid-template-columns:1fr;
    gap:9px;
  }
  .ipo-contact-page-full{
    grid-column:auto;
  }
  .contact-info-card{
    padding:14px 42px 14px 13px;
  }
  .contact-us-bottom{
    padding-bottom:36px;
  }
  .contact-us-bottom-card{
    padding:20px 17px;
    flex-direction:column;
    align-items:flex-start;
  }
  .contact-us-bottom-card .ipo-btn{
    width:100%;
    justify-content:center;
  }
}

/* v1.2.9 — Privacy Policy & Terms */
.legal-page{background:#F6F7F2;color:#0A1628}
.legal-hero{position:relative;overflow:hidden;padding:102px 0 48px;text-align:center;color:#fff;background:radial-gradient(820px 310px at 78% 20%,rgba(76,148,82,.12),transparent 62%),linear-gradient(155deg,#091828 0%,#10243A 52%,#12341A 100%)}
.legal-hero:before{content:"";position:absolute;inset:0;opacity:.35;background-image:linear-gradient(rgba(255,255,255,.026) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.026) 1px,transparent 1px);background-size:64px 64px}
.legal-hero-inner{position:relative;z-index:1;max-width:820px}
.legal-label{color:#78C97D}.legal-hero h1{margin-top:13px!important;font-size:clamp(42px,5vw,64px);line-height:1.04;letter-spacing:-.045em;font-weight:800}.legal-hero h1 span{color:#80D186}
.legal-hero p{max-width:680px;margin:14px auto 0!important;color:rgba(255,255,255,.62);font-size:13px;line-height:1.7}.legal-meta{margin-top:17px;color:rgba(255,255,255,.42);font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.legal-main{padding:52px 0 66px;background:linear-gradient(180deg,#F7F8F3,#F0F3EC)}
.legal-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:24px;align-items:start}
.legal-sidebar{position:sticky;top:92px}.legal-sidebar-card{padding:18px;border:1px solid #DCE4DA;border-radius:16px;background:#fff;box-shadow:0 10px 26px rgba(18,50,27,.05)}
.legal-sidebar-card .label-tag{color:#3A8C3F}.legal-sidebar-card nav{margin-top:12px;display:grid;gap:3px}.legal-sidebar-card nav a{padding:8px 9px;border-radius:9px;color:#66736B!important;font-size:10px;font-weight:700}.legal-sidebar-card nav a:hover{background:#EEF6ED;color:#2F7D32!important}
.legal-content-card{padding:30px 34px;border:1px solid #DCE4DA;border-radius:20px;background:#fff;box-shadow:0 18px 40px rgba(18,50,27,.07)}
.legal-content-card section{padding:0 0 28px;margin:0 0 28px;border-bottom:1px solid #E8EEE6;scroll-margin-top:100px}.legal-content-card section:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.legal-section-no{display:inline-flex;margin-bottom:8px;color:#3A8C3F;font-size:9px;font-weight:800;letter-spacing:.18em}.legal-content-card h2{font-size:23px;line-height:1.2;letter-spacing:-.02em}
.legal-content-card p{margin-top:10px!important;color:#5E6C63;font-size:12px;line-height:1.75}.legal-content-card ul{margin:12px 0 0;padding-left:19px;display:grid;gap:7px;color:#5E6C63;font-size:12px;line-height:1.65}
.legal-contact-block{padding:20px!important;border:1px solid #D5E8D7!important;border-radius:15px;background:#F2F8F1}.legal-contact-lines{margin-top:13px;display:grid;gap:8px}.legal-contact-lines a{display:flex;align-items:center;gap:8px;color:#2F7D32!important;font-size:11px;font-weight:700}.legal-contact-lines svg{width:15px;height:15px}
@media(max-width:900px){.legal-layout{grid-template-columns:1fr}.legal-sidebar{position:static}.legal-sidebar-card nav{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.legal-hero{padding:86px 0 32px}.legal-hero h1{font-size:38px}.legal-main{padding:28px 0 40px}.legal-content-card{padding:20px 15px;border-radius:16px}.legal-content-card h2{font-size:20px}.legal-content-card p,.legal-content-card ul{font-size:11px}}


/* v1.3.0 — legal pages + consent fixes */
.ipo-contact-consent{
  padding:12px 13px !important;
  background:#F6FAF5 !important;
  border-color:#D7E6D5 !important;
}
.ipo-contact-consent .wpcf7-list-item{
  margin:0 !important;
}
.ipo-contact-consent .wpcf7-list-item > label{
  display:flex !important;
  align-items:flex-start !important;
  gap:9px !important;
  cursor:pointer;
}
.ipo-contact-consent input[type="checkbox"]{
  width:16px;
  height:16px;
  margin:2px 0 0 !important;
  accent-color:#2F7D32;
}
.ipo-contact-consent .wpcf7-list-item-label{
  color:#59675E;
  font-size:10.5px;
  line-height:1.6;
}
.ipo-contact-consent a{
  color:#2F7D32 !important;
  font-weight:700;
  text-decoration:underline;
  text-underline-offset:2px;
}


/* v1.3.1 — mobile navigation and footer links hard fix */
@media(max-width:980px){
  #ipoMobileMenu.mobile-menu{
    display:none !important;
    position:fixed !important;
    inset:0 !important;
    z-index:99999 !important;
    width:100vw !important;
    height:100dvh !important;
    padding:78px 18px 18px !important;
    overflow-y:auto !important;
    overscroll-behavior:contain;
    background:rgba(7,20,33,.99) !important;
  }

  #ipoMobileMenu.mobile-menu.open{
    display:block !important;
  }

  #ipoMobileMenu .mobile-menu-inner{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    width:100% !important;
    min-height:0 !important;
    height:auto !important;
    padding:14px 0 28px !important;
    margin:0 !important;
    gap:4px !important;
    overflow:visible !important;
  }

  #ipoMobileMenu .mobile-menu-inner > a:not(.ipo-btn){
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    width:100% !important;
    flex:0 0 auto !important;
    padding:13px 14px !important;
    border-radius:10px;
    color:#fff !important;
    font-size:17px !important;
    line-height:1.25 !important;
    font-weight:700 !important;
  }

  #ipoMobileMenu .mobile-menu-inner > a[href*="/contact-us/"]{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
  }

  #ipoMobileMenu .mobile-menu-cta{
    display:flex !important;
    flex:0 0 auto !important;
    width:100% !important;
    margin-top:10px !important;
    justify-content:center !important;
  }
}

/* Footer links should remain clickable and wrap cleanly on every page */
.ipo-footer .footer-nav a{
  position:relative;
  z-index:2;
  pointer-events:auto !important;
}
@media(max-width:680px){
  .ipo-footer .footer-nav{
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    gap:10px 16px !important;
  }
  .ipo-footer .footer-nav a{
    display:inline-flex !important;
    padding:4px 0 !important;
  }
}


/* v1.3.2 — conversion-focused homepage hero lead form */
.hero-grid{
  align-items:center;
}
.hero-lead-wrap{
  width:100%;
  max-width:470px;
  margin-left:auto;
}
.hero-lead-card{
  padding:24px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.065);
  box-shadow:0 26px 56px rgba(0,0,0,.18);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}
.hero-lead-top{
  display:flex;
  align-items:flex-start;
  gap:13px;
  margin-bottom:18px;
}
.hero-lead-icon{
  width:44px;
  height:44px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  border-radius:13px;
  color:#79C67B;
  background:rgba(121,198,123,.10);
  border:1px solid rgba(121,198,123,.18);
}
.hero-lead-icon svg{
  width:21px;
  height:21px;
}
.hero-lead-top h2{
  margin-top:5px!important;
  color:#fff;
  font-size:24px;
  line-height:1.16;
  letter-spacing:-.025em;
}
.hero-lead-top p{
  margin-top:6px!important;
  color:rgba(255,255,255,.58);
  font-size:11px;
  line-height:1.55;
}
.ipo-hero-lead-fields{
  display:grid;
  gap:10px;
}
.ipo-hero-lead-field{
  display:grid;
  gap:5px;
}
.ipo-hero-lead-field label{
  color:rgba(255,255,255,.78);
  font-size:10px;
  font-weight:800;
}
.ipo-hero-lead-field input[type="text"],
.ipo-hero-lead-field input[type="tel"]{
  width:100%;
  min-height:46px;
  padding:10px 12px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:12px;
  background:rgba(255,255,255,.96);
  color:#0A1628;
  font-size:12px;
  outline:none;
}
.hero-phone-row{
  min-height:46px;
  overflow:hidden;
  border-radius:12px;
  background:rgba(255,255,255,.96);
}
.hero-phone-row .ipo-country{
  color:#536058;
  background:#EDF2EC;
  border-right:1px solid #DCE4DA;
}
.hero-phone-row input[type="tel"]{
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
}
.ipo-hero-consent{
  padding:9px 10px;
  border-radius:10px;
  background:rgba(0,0,0,.12);
  border:1px solid rgba(255,255,255,.07);
}
.ipo-hero-consent .wpcf7-list-item{
  margin:0;
}
.ipo-hero-consent label{
  display:flex;
  align-items:flex-start;
  gap:7px;
  cursor:pointer;
}
.ipo-hero-consent input[type="checkbox"]{
  width:14px;
  height:14px;
  margin:2px 0 0;
  flex:0 0 auto;
  accent-color:#2F7D32;
}
.ipo-hero-consent .wpcf7-list-item-label{
  color:rgba(255,255,255,.58);
  font-size:8.8px;
  line-height:1.5;
}
.ipo-hero-consent a{
  color:#83D087!important;
  text-decoration:underline;
}
.ipo-hero-submit{
  width:100%;
  min-height:48px;
  border:0;
  border-radius:999px;
  background:linear-gradient(135deg,#3B913F,#28652D);
  color:#fff;
  font-size:12px;
  font-weight:800;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(32,115,45,.22);
}
.ipo-hero-form-note{
  margin-top:7px!important;
  text-align:center;
  color:rgba(255,255,255,.40);
  font-size:8.5px;
}
.hero-lead-form .wpcf7-spinner{
  display:block;
  margin:7px auto 0;
}
.hero-lead-form .wpcf7-response-output{
  margin:9px 0 0!important;
  padding:8px 10px!important;
  border-radius:9px;
  color:#fff;
  font-size:9px;
}
.hero-lead-trust{
  margin-top:15px;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.08);
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:7px;
}
.hero-lead-trust span{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  color:rgba(255,255,255,.55);
  font-size:8.5px;
  text-align:center;
}
.hero-lead-trust svg{
  width:13px;
  height:13px;
  color:#79C67B;
  flex:0 0 auto;
}

@media(max-width:980px){
  .hero-lead-wrap{
    max-width:620px;
    margin:0 auto;
  }
}
@media(max-width:680px){
  .hero-grid{
    gap:22px!important;
  }
  .hero-lead-card{
    padding:18px 14px;
    border-radius:17px;
  }
  .hero-lead-top{
    gap:10px;
    margin-bottom:15px;
  }
  .hero-lead-icon{
    width:38px;
    height:38px;
  }
  .hero-lead-icon svg{
    width:18px;
    height:18px;
  }
  .hero-lead-top h2{
    font-size:20px;
  }
  .hero-lead-top p{
    font-size:10px;
  }
  .ipo-hero-lead-fields{
    gap:8px;
  }
  .ipo-hero-lead-field input[type="text"],
  .ipo-hero-lead-field input[type="tel"],
  .hero-phone-row{
    min-height:43px;
  }
  .ipo-hero-submit{
    min-height:45px;
    font-size:11px;
  }
  .hero-lead-trust{
    grid-template-columns:1fr;
    gap:6px;
  }
  .hero-lead-trust span{
    justify-content:flex-start;
    font-size:9px;
  }
}


/* v1.3.4 — homepage rendering safety */
.no-js .reveal,
body:not(.js-ready) #ipo-advisory-site .reveal{
  opacity:1;
  transform:none;
}


/* v1.3.6 — tighter spacing under hero lead form button */
.ipo-hero-submit-wrap{
  padding-bottom:0 !important;
  margin-bottom:0 !important;
}
.ipo-hero-submit{
  margin-bottom:0 !important;
}
.ipo-hero-form-note{
  margin-top:10px !important;
  margin-bottom:0 !important;
  padding:0 !important;
}
.hero-lead-form{
  padding-bottom:0 !important;
}
.hero-lead-card{
  padding-bottom:16px !important;
}

@media(max-width:680px){
  .ipo-hero-form-note{
    margin-top:10px !important;
  }
  .hero-lead-card{
    padding-bottom:14px !important;
  }
}


/* v1.3.7 — hero spacing + simplified testimonial slider */

/* Keep only a 10px visual gap below the hero submit button. */
.ipo-hero-submit-wrap{
  position:relative !important;
}
.ipo-hero-submit-wrap > p,
.ipo-hero-submit-wrap p{
  margin:0 !important;
}
.ipo-hero-form-note{
  display:block !important;
  margin:10px 0 0 !important;
  padding:0 !important;
  line-height:1.35 !important;
}
.hero-lead-form .wpcf7-spinner{
  position:absolute !important;
  right:14px !important;
  top:12px !important;
  margin:0 !important;
}
.hero-lead-card{
  padding-bottom:14px !important;
}

/* Featured testimonial is now the only testimonial presentation. */
#ipoTestimonialGrid{
  display:none !important;
}
.featured-testimonial{
  touch-action:pan-y !important;
  cursor:grab;
  user-select:none;
  transition:opacity .18s ease, transform .18s ease;
}
.featured-testimonial.is-dragging{
  cursor:grabbing;
}
.featured-testimonial.testimonial-changing{
  opacity:.72;
  transform:translateX(4px);
}
.featured-testimonial .stars,
#testimonials .stars{
  color:#F4C430 !important;
  text-shadow:0 1px 0 rgba(0,0,0,.08);
}
.testimonial-dots{
  margin:14px 0 0 !important;
}
.testimonial-dot{
  background:#C9D5C7 !important;
}
.testimonial-dot.active{
  background:#F4C430 !important;
}

@media(max-width:680px){
  .hero-lead-card{
    padding-bottom:12px !important;
  }
  .ipo-hero-form-note{
    margin-top:10px !important;
  }
}


/* v1.3.8 */
.pricing-payment-cf7 .wpcf7-not-valid-tip{margin-top:6px;color:#C93E3E;font-size:10px;font-weight:700}.pricing-payment-cf7 .wpcf7-response-output{border-color:#D9B22F!important}
.ipo-lead-popup{position:fixed;inset:0;z-index:120000;display:none;align-items:center;justify-content:center;padding:18px}.ipo-lead-popup.open{display:flex}.ipo-lead-popup-backdrop{position:absolute;inset:0;background:rgba(4,15,24,.72);backdrop-filter:blur(7px)}
.ipo-lead-popup-card{position:relative;z-index:1;width:min(470px,100%);max-height:calc(100dvh - 32px);overflow-y:auto;padding:24px;border:1px solid #DCE4DA;border-radius:22px;background:#fff;box-shadow:0 30px 80px rgba(0,0,0,.28)}
.ipo-lead-popup-close{position:absolute;top:12px;right:12px;width:34px;height:34px;display:grid;place-items:center;border:1px solid #E0E7DE;border-radius:10px;background:#F7F9F6;color:#607067;cursor:pointer}.ipo-lead-popup-close svg{width:17px;height:17px}
.ipo-popup-head{display:flex;gap:12px;align-items:flex-start;padding-right:30px;margin-bottom:18px}.ipo-popup-icon{width:42px;height:42px;flex:0 0 auto;display:grid;place-items:center;border-radius:12px;background:#EEF6ED;border:1px solid #DCEADB;color:#2F7D32}.ipo-popup-head .label-tag{color:#3A8C3F}.ipo-popup-head h2{margin-top:5px!important;font-size:23px;line-height:1.17}.ipo-popup-head p{margin-top:6px!important;color:#6D7971;font-size:10.5px;line-height:1.55}
.ipo-popup-lead-fields{display:grid;gap:10px}.ipo-popup-field{display:grid;gap:5px}.ipo-popup-field label{color:#17281D;font-size:10px;font-weight:800}.ipo-popup-field input[type=text],.ipo-popup-field input[type=tel]{width:100%;min-height:45px;padding:10px 12px;border:1px solid #D8E2D6;border-radius:12px;background:#fff;color:#0A1628}.popup-phone-row{min-height:45px;overflow:hidden;border:1px solid #D8E2D6;border-radius:12px}.popup-phone-row input[type=tel]{border:0!important;border-radius:0!important}
.ipo-popup-consent{padding:9px 10px;border:1px solid #E0E7DE;border-radius:10px;background:#F8FAF7}.ipo-popup-consent .wpcf7-list-item{margin:0}.ipo-popup-consent label{display:flex;align-items:flex-start;gap:7px;cursor:pointer}.ipo-popup-consent input[type=checkbox]{width:14px;height:14px;margin:2px 0 0;accent-color:#2F7D32}.ipo-popup-consent .wpcf7-list-item-label{color:#627067;font-size:8.7px;line-height:1.5}.ipo-popup-consent a{color:#2F7D32!important;font-weight:700;text-decoration:underline}
.ipo-popup-submit{width:100%;min-height:47px;border:0;border-radius:999px;background:linear-gradient(135deg,#318236,#245E2A);color:#fff;font-size:11.5px;font-weight:800;cursor:pointer}.ipo-popup-note{margin:7px 0 0!important;text-align:center;color:#8A938C;font-size:8.5px}.ipo-popup-cf7 .wpcf7-response-output{margin:9px 0 0!important;padding:8px 10px!important;border-radius:9px;font-size:9px}body.lead-popup-open{overflow:hidden}
@media(max-width:680px){.ipo-lead-popup{padding:12px}.ipo-lead-popup-card{padding:20px 14px 16px;border-radius:17px}.ipo-popup-head h2{font-size:20px}}


/* v1.4.0 — specific payment screenshot validation */
.pricing-payment-cf7 .wpcf7-not-valid-tip{
  display:block !important;
  margin-top:7px !important;
  color:#C43B3B !important;
  font-size:10px !important;
  font-weight:700 !important;
}
.pricing-payment-cf7 form.invalid .wpcf7-response-output{
  border-color:#D9B22F !important;
  color:#26342B !important;
}


/* v1.4.2 — post-submit thank-you state */
.ipo-thank-you-state{
  padding:28px 22px;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  border:1px solid #D6E8D5;
  border-radius:18px;
  background:linear-gradient(180deg,#FAFCF9,#F0F7EF);
}
.ipo-thank-you-icon{
  width:58px;
  height:58px;
  margin-bottom:13px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#E5F5E6;
  border:1px solid #CBE5CD;
  color:#2F8737;
  box-shadow:0 10px 24px rgba(47,135,55,.12);
}
.ipo-thank-you-icon svg{width:28px;height:28px}
.ipo-thank-you-state .label-tag{
  margin-bottom:8px;
  color:#2F8737;
}
.ipo-thank-you-state h3{
  max-width:520px;
  margin:0!important;
  color:#0A1628;
  font-size:24px;
  line-height:1.2;
  letter-spacing:-.025em;
}
.ipo-thank-you-state p{
  max-width:500px;
  margin:9px auto 0!important;
  color:#647168;
  font-size:11px;
  line-height:1.65;
}
.ipo-thank-you-meta{
  margin-top:17px;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:8px;
}
.ipo-thank-you-meta span{
  padding:7px 10px;
  display:inline-flex;
  align-items:center;
  gap:5px;
  border:1px solid #DCE8DA;
  border-radius:999px;
  background:#fff;
  color:#66746B;
  font-size:9px;
  font-weight:700;
}
.ipo-thank-you-meta svg{
  width:13px;
  height:13px;
  color:#2F8737;
}
.ipo-lead-popup .ipo-thank-you-state{
  min-height:280px;
  justify-content:center;
  border:0;
  background:transparent;
}
@media(max-width:680px){
  .ipo-thank-you-state{padding:24px 14px}
  .ipo-thank-you-icon{width:52px;height:52px}
  .ipo-thank-you-state h3{font-size:20px}
  .ipo-thank-you-meta{flex-direction:column;align-items:center}
}


/* v1.4.3 — popup form polish */
.ipo-lead-popup{
  padding:20px;
}
.ipo-lead-popup-card{
  width:min(520px,100%);
  max-height:calc(100dvh - 40px);
  padding:28px;
  border:1px solid #DBE5D9;
  border-radius:24px;
  background:linear-gradient(180deg,#FFFFFF 0%,#FBFCFB 100%);
  box-shadow:0 28px 90px rgba(7,20,14,.30);
}
.ipo-lead-popup-close{
  top:14px;
  right:14px;
  width:38px;
  height:38px;
  border-radius:12px;
  background:#F4F7F3;
  color:#5F6F66;
}
.ipo-lead-popup-close:hover{
  background:#EDF3EB;
}
.ipo-popup-head{
  gap:14px;
  padding-right:44px;
  margin-bottom:20px;
}
.ipo-popup-icon{
  width:46px;
  height:46px;
  border-radius:14px;
  background:#ECF6EA;
  border:1px solid #D4E7D1;
  box-shadow:0 8px 20px rgba(47,125,50,.08);
}
.ipo-popup-head h2{
  margin-top:2px!important;
  font-size:26px;
  line-height:1.15;
  letter-spacing:-.02em;
  color:#0D1B2A;
}
.ipo-popup-head p{
  margin-top:7px!important;
  color:#65736A;
  font-size:13px;
  line-height:1.6;
}
.ipo-popup-cf7 .wpcf7{
  margin:0;
}
.ipo-popup-cf7 form{
  display:block;
}
.ipo-popup-lead-fields{
  display:grid;
  gap:14px;
}
.ipo-popup-field{
  display:grid;
  gap:7px;
}
.ipo-popup-field label{
  color:#122317;
  font-size:12px;
  line-height:1.35;
  font-weight:800;
}
.ipo-popup-field .required{
  color:#D84A4A;
}
.ipo-popup-field input[type=text],
.ipo-popup-field input[type=tel]{
  width:100%;
  min-height:52px;
  padding:14px 15px;
  border:1px solid #D6E1D4;
  border-radius:14px;
  background:#FFFFFF;
  color:#0A1628;
  font-size:15px;
  line-height:1.4;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6);
  transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.ipo-popup-field input[type=text]::placeholder,
.ipo-popup-field input[type=tel]::placeholder{
  color:#8B968F;
}
.ipo-popup-field input[type=text]:focus,
.ipo-popup-field input[type=tel]:focus{
  outline:none;
  border-color:#2F7D32;
  box-shadow:0 0 0 4px rgba(47,125,50,.10);
  background:#FFFFFF;
}
.ipo-phone-row.popup-phone-row{
  display:flex;
  align-items:center;
  min-height:52px;
  overflow:hidden;
  border:1px solid #D6E1D4;
  border-radius:14px;
  background:#FFFFFF;
  transition:border-color .2s ease, box-shadow .2s ease;
}
.ipo-phone-row.popup-phone-row:focus-within{
  border-color:#2F7D32;
  box-shadow:0 0 0 4px rgba(47,125,50,.10);
}
.ipo-phone-row.popup-phone-row .ipo-country{
  min-width:64px;
  height:52px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-right:1px solid #D6E1D4;
  background:#F6F9F5;
  color:#596861;
  font-weight:700;
  font-size:15px;
}
.ipo-phone-row.popup-phone-row input[type=tel]{
  min-height:52px;
  padding:14px 15px;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:transparent;
}
.ipo-popup-consent{
  padding:12px 14px;
  border:1px solid #E0E8DE;
  border-radius:14px;
  background:#F7FAF7;
}
.ipo-popup-consent label{
  display:flex;
  align-items:flex-start;
  gap:10px;
  cursor:pointer;
}
.ipo-popup-consent input[type=checkbox]{
  width:16px;
  height:16px;
  margin:2px 0 0;
  flex:0 0 auto;
  accent-color:#2F7D32;
}
.ipo-popup-consent .wpcf7-list-item-label{
  color:#607066;
  font-size:11px;
  line-height:1.6;
}
.ipo-popup-consent a{
  color:#2F7D32!important;
  font-weight:700;
  text-decoration:none;
}
.ipo-popup-consent a:hover{
  text-decoration:underline;
}
.ipo-popup-submit-wrap{
  margin-top:2px;
}
.ipo-popup-submit{
  width:100%;
  min-height:54px;
  padding:14px 18px;
  border:0;
  border-radius:999px;
  background:linear-gradient(135deg,#348B38 0%,#2C7B30 100%);
  color:#FFFFFF;
  font-size:16px;
  font-weight:800;
  line-height:1.2;
  letter-spacing:-.01em;
  cursor:pointer;
  box-shadow:0 18px 34px rgba(47,125,50,.20);
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.ipo-popup-submit:hover{
  transform:translateY(-1px);
  box-shadow:0 20px 36px rgba(47,125,50,.24);
  filter:saturate(1.02);
}
.ipo-popup-submit:active{
  transform:translateY(0);
}
.ipo-popup-cf7 .wpcf7-spinner{
  margin:10px auto 0;
  display:block;
}
.ipo-popup-cf7 .wpcf7-not-valid-tip{
  display:block;
  margin-top:3px;
  color:#C53F3F;
  font-size:11px;
  font-weight:700;
}
.ipo-popup-cf7 .wpcf7-response-output{
  margin:12px 0 0!important;
  padding:10px 12px!important;
  border-radius:12px;
  font-size:11px;
  line-height:1.55;
}
.ipo-popup-cf7 .wpcf7 form.invalid .wpcf7-response-output,
.ipo-popup-cf7 .wpcf7 form.unaccepted .wpcf7-response-output,
.ipo-popup-cf7 .wpcf7 form.failed .wpcf7-response-output{
  border:1px solid #E7D28A!important;
  background:#FFF8E6;
  color:#5D4A15;
}
.ipo-popup-cf7 .wpcf7 form.sent .wpcf7-response-output{
  border:1px solid #B8DEBB!important;
  background:#EFF8F0;
  color:#1F5E25;
}
.ipo-popup-cf7 .ipo-thank-you-state{
  margin-top:4px;
  padding:26px 22px;
}
.ipo-popup-cf7 .ipo-thank-you-state h3{
  font-size:23px;
}
.ipo-popup-cf7 .ipo-thank-you-state p{
  font-size:12px;
}

@media (max-width: 767px){
  .ipo-lead-popup{
    padding:14px;
    align-items:flex-start;
  }
  .ipo-lead-popup-card{
    width:100%;
    max-height:calc(100dvh - 28px);
    margin-top:10px;
    padding:20px 18px 18px;
    border-radius:20px;
  }
  .ipo-lead-popup-close{
    top:12px;
    right:12px;
    width:36px;
    height:36px;
  }
  .ipo-popup-head{
    gap:12px;
    padding-right:40px;
    margin-bottom:16px;
  }
  .ipo-popup-icon{
    width:42px;
    height:42px;
  }
  .ipo-popup-head h2{
    font-size:22px;
  }
  .ipo-popup-head p{
    font-size:12px;
  }
  .ipo-popup-lead-fields{
    gap:12px;
  }
  .ipo-popup-field label{
    font-size:11px;
  }
  .ipo-popup-field input[type=text],
  .ipo-popup-field input[type=tel],
  .ipo-phone-row.popup-phone-row,
  .ipo-phone-row.popup-phone-row .ipo-country{
    min-height:50px;
  }
  .ipo-popup-submit{
    min-height:52px;
    font-size:15px;
  }
  .ipo-popup-consent{
    padding:11px 12px;
  }
  .ipo-popup-consent .wpcf7-list-item-label{
    font-size:10.5px;
  }
  .ipo-popup-cf7 .ipo-thank-you-state{
    padding:22px 16px;
  }
  .ipo-popup-cf7 .ipo-thank-you-state h3{
    font-size:20px;
  }
}


/* v1.4.4 — popup matched to homepage hero form: compact, minimal, premium */
.ipo-lead-popup{
  padding:14px !important;
  align-items:center !important;
}
.ipo-lead-popup-backdrop{
  background:rgba(4,14,24,.74) !important;
  backdrop-filter:blur(5px) !important;
  -webkit-backdrop-filter:blur(5px) !important;
}
.ipo-lead-popup-card{
  width:min(430px,100%) !important;
  max-height:calc(100dvh - 28px) !important;
  padding:19px !important;
  border:1px solid rgba(255,255,255,.12) !important;
  border-radius:18px !important;
  background:linear-gradient(145deg,#102635 0%,#15341E 100%) !important;
  box-shadow:0 24px 65px rgba(0,0,0,.32) !important;
  color:#fff !important;
}
.ipo-lead-popup-close{
  top:10px !important;
  right:10px !important;
  width:32px !important;
  height:32px !important;
  border:1px solid rgba(255,255,255,.12) !important;
  border-radius:10px !important;
  background:rgba(255,255,255,.06) !important;
  color:rgba(255,255,255,.72) !important;
}
.ipo-popup-head{
  gap:10px !important;
  padding-right:34px !important;
  margin-bottom:14px !important;
}
.ipo-popup-icon{
  width:38px !important;
  height:38px !important;
  border-radius:11px !important;
  background:rgba(121,198,123,.10) !important;
  border:1px solid rgba(121,198,123,.18) !important;
  color:#79C67B !important;
  box-shadow:none !important;
}
.ipo-popup-icon svg{
  width:18px !important;
  height:18px !important;
}
.ipo-popup-head h2{
  margin:1px 0 0 !important;
  color:#fff !important;
  font-size:20px !important;
  line-height:1.18 !important;
  letter-spacing:-.02em !important;
}
.ipo-popup-head p{
  margin:5px 0 0 !important;
  color:rgba(255,255,255,.58) !important;
  font-size:10px !important;
  line-height:1.5 !important;
}
.ipo-popup-lead-fields{
  gap:9px !important;
}
.ipo-popup-field{
  gap:5px !important;
}
.ipo-popup-field label{
  color:rgba(255,255,255,.78) !important;
  font-size:10px !important;
  line-height:1.3 !important;
  font-weight:800 !important;
}
.ipo-popup-field input[type=text],
.ipo-popup-field input[type=tel]{
  min-height:44px !important;
  padding:10px 12px !important;
  border:1px solid rgba(255,255,255,.12) !important;
  border-radius:11px !important;
  background:rgba(255,255,255,.96) !important;
  color:#0A1628 !important;
  font-size:12px !important;
  box-shadow:none !important;
}
.ipo-popup-field input[type=text]:focus,
.ipo-popup-field input[type=tel]:focus{
  border-color:#78B97D !important;
  box-shadow:0 0 0 3px rgba(121,198,123,.12) !important;
}
.ipo-phone-row.popup-phone-row{
  min-height:44px !important;
  border:0 !important;
  border-radius:11px !important;
  background:rgba(255,255,255,.96) !important;
  box-shadow:none !important;
}
.ipo-phone-row.popup-phone-row:focus-within{
  box-shadow:0 0 0 3px rgba(121,198,123,.12) !important;
}
.ipo-phone-row.popup-phone-row .ipo-country{
  min-width:56px !important;
  height:44px !important;
  min-height:44px !important;
  border-right:1px solid #DCE4DA !important;
  background:#EDF2EC !important;
  color:#536058 !important;
  font-size:12px !important;
  font-weight:600 !important;
}
.ipo-phone-row.popup-phone-row input[type=tel]{
  min-height:44px !important;
  padding:10px 12px !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
.ipo-popup-consent{
  padding:8px 9px !important;
  border:1px solid rgba(255,255,255,.07) !important;
  border-radius:10px !important;
  background:rgba(0,0,0,.12) !important;
}
.ipo-popup-consent label{
  gap:7px !important;
}
.ipo-popup-consent input[type=checkbox]{
  width:14px !important;
  height:14px !important;
  margin:2px 0 0 !important;
  accent-color:#4FA954 !important;
}
.ipo-popup-consent .wpcf7-list-item-label{
  color:rgba(255,255,255,.58) !important;
  font-size:8.7px !important;
  line-height:1.48 !important;
}
.ipo-popup-consent a{
  color:#83D087 !important;
  font-weight:700 !important;
  text-decoration:underline !important;
}
.ipo-popup-submit-wrap{
  margin:0 !important;
}
.ipo-popup-submit{
  min-height:46px !important;
  padding:11px 16px !important;
  border-radius:999px !important;
  background:linear-gradient(135deg,#3B913F,#28652D) !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:800 !important;
  box-shadow:0 10px 24px rgba(32,115,45,.22) !important;
  transform:none !important;
}
.ipo-popup-cf7 .wpcf7-spinner{
  margin:6px auto 0 !important;
}
.ipo-popup-cf7 .wpcf7-not-valid-tip{
  margin-top:4px !important;
  color:#FF9B9B !important;
  font-size:9px !important;
}
.ipo-popup-cf7 .wpcf7-response-output{
  margin:7px 0 0 !important;
  padding:7px 9px !important;
  border-radius:9px !important;
  color:#fff !important;
  background:rgba(0,0,0,.12) !important;
  font-size:9px !important;
  line-height:1.45 !important;
}
.ipo-popup-cf7 .wpcf7 form.invalid .wpcf7-response-output,
.ipo-popup-cf7 .wpcf7 form.unaccepted .wpcf7-response-output,
.ipo-popup-cf7 .wpcf7 form.failed .wpcf7-response-output{
  border:1px solid rgba(255,206,92,.42) !important;
  background:rgba(255,190,55,.08) !important;
  color:#FFE2A0 !important;
}
.ipo-popup-cf7 .ipo-thank-you-state{
  padding:20px 12px !important;
  border:1px solid rgba(121,198,123,.16) !important;
  background:rgba(255,255,255,.05) !important;
}
.ipo-popup-cf7 .ipo-thank-you-state h3{
  color:#fff !important;
  font-size:19px !important;
}
.ipo-popup-cf7 .ipo-thank-you-state p{
  color:rgba(255,255,255,.62) !important;
  font-size:10px !important;
}
.ipo-popup-cf7 .ipo-thank-you-meta span{
  background:rgba(255,255,255,.06) !important;
  border-color:rgba(255,255,255,.10) !important;
  color:rgba(255,255,255,.60) !important;
}

@media(max-width:680px){
  .ipo-lead-popup{
    padding:10px !important;
    align-items:center !important;
  }
  .ipo-lead-popup-card{
    width:100% !important;
    margin:0 !important;
    padding:16px 13px !important;
    border-radius:16px !important;
  }
  .ipo-popup-head{
    margin-bottom:12px !important;
  }
  .ipo-popup-head h2{
    font-size:18px !important;
  }
  .ipo-popup-head p{
    font-size:9.5px !important;
  }
  .ipo-popup-lead-fields{
    gap:8px !important;
  }
  .ipo-popup-field input[type=text],
  .ipo-popup-field input[type=tel],
  .ipo-phone-row.popup-phone-row,
  .ipo-phone-row.popup-phone-row .ipo-country{
    min-height:42px !important;
    height:42px !important;
  }
  .ipo-popup-submit{
    min-height:44px !important;
    font-size:11px !important;
  }
}


/* v1.4.5 — revert popup UI/UX to the clean v1.3.9 look */
.ipo-lead-popup{
  position:fixed !important;
  inset:0 !important;
  z-index:120000 !important;
  display:none;
  align-items:center;
  justify-content:center;
  padding:18px !important;
}
.ipo-lead-popup.open{display:flex !important;}
.ipo-lead-popup-backdrop{
  position:absolute;
  inset:0;
  background:rgba(4,15,24,.72);
  backdrop-filter:blur(7px);
  -webkit-backdrop-filter:blur(7px);
}
.ipo-lead-popup-card{
  position:relative;
  z-index:1;
  width:min(470px,100%) !important;
  max-height:calc(100dvh - 32px) !important;
  overflow-y:auto;
  padding:24px !important;
  border:1px solid #DCE4DA !important;
  border-radius:22px !important;
  background:#FFFFFF !important;
  box-shadow:0 30px 80px rgba(0,0,0,.28) !important;
}
.ipo-lead-popup-close{
  position:absolute;
  top:12px;
  right:12px;
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border:1px solid #E0E7DE;
  border-radius:10px;
  background:#F7F9F6;
  color:#607067;
  cursor:pointer;
}
.ipo-lead-popup-close svg{width:17px;height:17px;}
.ipo-popup-head{
  display:flex;
  gap:12px;
  align-items:flex-start;
  padding-right:30px;
  margin-bottom:18px;
}
.ipo-popup-icon{
  width:42px;
  height:42px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:#EEF6ED;
  border:1px solid #DCEADB;
  color:#2F7D32;
}
.ipo-popup-icon svg{width:20px;height:20px;}
.ipo-popup-head h2{
  margin:5px 0 0 !important;
  font-size:23px !important;
  line-height:1.17 !important;
  letter-spacing:0 !important;
  color:#0A1628 !important;
}
.ipo-popup-head p{
  margin:6px 0 0 !important;
  color:#6D7971 !important;
  font-size:10.5px !important;
  line-height:1.55 !important;
}
.ipo-popup-cf7 .wpcf7{margin:0 !important;}
.ipo-popup-cf7 form{display:block;}
.ipo-popup-lead-fields{display:grid;gap:10px !important;}
.ipo-popup-field{display:grid;gap:5px !important;}
.ipo-popup-field label{
  color:#17281D;
  font-size:10px !important;
  font-weight:800;
  line-height:1.4;
}
.ipo-popup-field .required{color:#C93E3E;}
.ipo-popup-field input[type=text],
.ipo-popup-field input[type=tel]{
  width:100%;
  min-height:45px !important;
  padding:10px 12px !important;
  border:1px solid #D8E2D6 !important;
  border-radius:12px !important;
  background:#FFFFFF !important;
  color:#0A1628;
  font-size:13px !important;
  line-height:1.4;
  box-shadow:none !important;
}
.ipo-popup-field input[type=text]::placeholder,
.ipo-popup-field input[type=tel]::placeholder{color:#8A938C;}
.popup-phone-row,
.ipo-phone-row.popup-phone-row{
  display:flex;
  align-items:stretch;
  min-height:45px !important;
  overflow:hidden;
  border:1px solid #D8E2D6 !important;
  border-radius:12px !important;
  background:#FFFFFF;
}
.ipo-phone-row.popup-phone-row .ipo-country{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0 12px;
  min-width:56px;
  border-right:1px solid #D8E2D6;
  background:#F8FAF7;
  color:#607067;
  font-size:12px;
  font-weight:700;
}
.popup-phone-row input[type=tel],
.ipo-phone-row.popup-phone-row input[type=tel]{
  border:0 !important;
  border-radius:0 !important;
  min-height:43px !important;
  padding:10px 12px !important;
  box-shadow:none !important;
  background:transparent !important;
}
.ipo-popup-consent{
  padding:9px 10px !important;
  border:1px solid #E0E7DE !important;
  border-radius:10px !important;
  background:#F8FAF7 !important;
}
.ipo-popup-consent .wpcf7-list-item{margin:0 !important;}
.ipo-popup-consent label{
  display:flex;
  align-items:flex-start;
  gap:7px;
  cursor:pointer;
}
.ipo-popup-consent input[type=checkbox]{
  width:14px;
  height:14px;
  margin:2px 0 0;
  accent-color:#2F7D32;
}
.ipo-popup-consent .wpcf7-list-item-label{
  color:#627067;
  font-size:8.7px !important;
  line-height:1.5 !important;
}
.ipo-popup-consent a{
  color:#2F7D32 !important;
  font-weight:700;
  text-decoration:underline;
}
.ipo-popup-submit-wrap{margin-top:0 !important;}
.ipo-popup-submit{
  width:100%;
  min-height:47px !important;
  border:0;
  border-radius:999px;
  background:linear-gradient(135deg,#318236,#245E2A) !important;
  color:#FFFFFF;
  font-size:11.5px !important;
  font-weight:800;
  line-height:1.2;
  cursor:pointer;
  box-shadow:none !important;
}
.ipo-popup-submit:hover{filter:brightness(1.02);transform:none !important;}
.ipo-popup-cf7 .wpcf7-spinner{margin:8px auto 0 !important;display:block;}
.ipo-popup-cf7 .wpcf7-not-valid-tip{
  display:block;
  margin-top:4px;
  color:#C43B3B;
  font-size:9px !important;
  font-weight:700;
}
.ipo-popup-cf7 .wpcf7-response-output{
  margin:9px 0 0 !important;
  padding:8px 10px !important;
  border-radius:9px !important;
  font-size:9px !important;
  line-height:1.5;
}
body.lead-popup-open{overflow:hidden;}

/* Keep thank-you state clean and compact inside v1.3.9 popup look */
.ipo-popup-cf7 .ipo-thank-you-state{
  margin-top:2px;
  padding:22px 16px;
  border-radius:16px;
}
.ipo-popup-cf7 .ipo-thank-you-icon{
  width:52px;
  height:52px;
  margin-bottom:11px;
}
.ipo-popup-cf7 .ipo-thank-you-state .label-tag{margin-bottom:7px;}
.ipo-popup-cf7 .ipo-thank-you-state h3{font-size:20px !important;}
.ipo-popup-cf7 .ipo-thank-you-state p{font-size:10px !important;line-height:1.6 !important;}
.ipo-popup-cf7 .ipo-thank-you-meta{margin-top:14px;gap:8px;}
.ipo-popup-cf7 .ipo-thank-you-meta span{font-size:9px;padding:7px 10px;}

@media(max-width:680px){
  .ipo-lead-popup{padding:12px !important;}
  .ipo-lead-popup-card{
    width:min(470px,100%) !important;
    padding:20px 14px 16px !important;
    border-radius:17px !important;
    max-height:calc(100dvh - 24px) !important;
  }
  .ipo-popup-head h2{font-size:20px !important;}
  .ipo-popup-head p{font-size:10px !important;}
  .ipo-popup-field input[type=text],
  .ipo-popup-field input[type=tel],
  .popup-phone-row,
  .ipo-phone-row.popup-phone-row{min-height:43px !important;}
  .ipo-phone-row.popup-phone-row .ipo-country{font-size:11px;min-width:52px;}
  .ipo-popup-submit{min-height:45px !important;font-size:11px !important;}
  .ipo-popup-consent .wpcf7-list-item-label{font-size:8.4px !important;}
}


/* v1.4.6 — compact popup rebuild; mobile first */
.ipo-lead-popup{
  padding:16px !important;
}
.ipo-lead-popup-backdrop{
  background:rgba(6,18,28,.48) !important;
  backdrop-filter:blur(3px) !important;
  -webkit-backdrop-filter:blur(3px) !important;
}
.ipo-lead-popup-card{
  width:min(390px,100%) !important;
  max-height:min(600px,calc(100dvh - 40px)) !important;
  padding:18px !important;
  border-radius:18px !important;
  overflow-y:auto !important;
  background:#FFFFFF !important;
  border:1px solid #DCE4DA !important;
  box-shadow:0 20px 55px rgba(0,0,0,.22) !important;
}
.ipo-lead-popup-close{
  top:10px !important;
  right:10px !important;
  width:30px !important;
  height:30px !important;
  border-radius:9px !important;
}
.ipo-lead-popup-close svg{
  width:15px !important;
  height:15px !important;
}
.ipo-popup-head{
  display:block !important;
  padding:0 34px 0 0 !important;
  margin:0 0 13px !important;
}
.ipo-popup-head h2{
  margin:0 !important;
  color:#0A1628 !important;
  font-size:20px !important;
  line-height:1.18 !important;
  letter-spacing:-.02em !important;
}
.ipo-popup-head p{
  margin:5px 0 0 !important;
  color:#6B776F !important;
  font-size:10px !important;
  line-height:1.5 !important;
}
.ipo-popup-lead-fields{
  gap:8px !important;
}
.ipo-popup-field{
  gap:4px !important;
}
.ipo-popup-field label{
  font-size:9.5px !important;
}
.ipo-popup-field input[type=text],
.ipo-popup-field input[type=tel]{
  min-height:40px !important;
  padding:8px 10px !important;
  border-radius:10px !important;
  font-size:12px !important;
}
.popup-phone-row,
.ipo-phone-row.popup-phone-row{
  min-height:40px !important;
  border-radius:10px !important;
}
.ipo-phone-row.popup-phone-row .ipo-country{
  min-width:48px !important;
  padding:0 9px !important;
  font-size:10.5px !important;
}
.popup-phone-row input[type=tel],
.ipo-phone-row.popup-phone-row input[type=tel]{
  min-height:38px !important;
  padding:8px 10px !important;
  font-size:12px !important;
}
.ipo-popup-consent{
  padding:7px 8px !important;
  border-radius:9px !important;
}
.ipo-popup-consent label{
  gap:6px !important;
}
.ipo-popup-consent input[type=checkbox]{
  width:13px !important;
  height:13px !important;
}
.ipo-popup-consent .wpcf7-list-item-label{
  font-size:7.8px !important;
  line-height:1.45 !important;
}
.ipo-popup-submit{
  min-height:41px !important;
  font-size:10.5px !important;
}
.ipo-popup-cf7 .wpcf7-spinner{
  margin:5px auto 0 !important;
}
.ipo-popup-cf7 .wpcf7-not-valid-tip{
  margin-top:3px !important;
  font-size:8px !important;
}
.ipo-popup-cf7 .wpcf7-response-output{
  margin:6px 0 0 !important;
  padding:7px 8px !important;
  font-size:8px !important;
}

/* compact thank-you view */
.ipo-popup-cf7 .ipo-thank-you-state{
  padding:18px 12px !important;
  border-radius:14px !important;
}
.ipo-popup-cf7 .ipo-thank-you-icon{
  width:44px !important;
  height:44px !important;
  margin-bottom:9px !important;
}
.ipo-popup-cf7 .ipo-thank-you-icon svg{
  width:22px !important;
  height:22px !important;
}
.ipo-popup-cf7 .ipo-thank-you-state .label-tag{
  margin-bottom:5px !important;
  font-size:7.5px !important;
}
.ipo-popup-cf7 .ipo-thank-you-state h3{
  font-size:17px !important;
  line-height:1.2 !important;
}
.ipo-popup-cf7 .ipo-thank-you-state p{
  margin-top:7px !important;
  font-size:9px !important;
  line-height:1.5 !important;
}
.ipo-popup-cf7 .ipo-thank-you-meta{
  margin-top:10px !important;
  gap:5px !important;
}
.ipo-popup-cf7 .ipo-thank-you-meta span{
  padding:5px 7px !important;
  font-size:7.5px !important;
}

/* Mobile: keep the modal visibly smaller than the screen */
@media(max-width:680px){
  .ipo-lead-popup{
    align-items:center !important;
    justify-content:center !important;
    padding:18px !important;
  }
  .ipo-lead-popup-card{
    width:min(330px,calc(100vw - 36px)) !important;
    max-height:78dvh !important;
    padding:14px !important;
    border-radius:16px !important;
  }
  .ipo-lead-popup-close{
    top:8px !important;
    right:8px !important;
    width:28px !important;
    height:28px !important;
  }
  .ipo-popup-head{
    padding-right:30px !important;
    margin-bottom:10px !important;
  }
  .ipo-popup-head h2{
    font-size:17px !important;
  }
  .ipo-popup-head p{
    margin-top:4px !important;
    font-size:8.8px !important;
  }
  .ipo-popup-lead-fields{
    gap:7px !important;
  }
  .ipo-popup-field label{
    font-size:8.8px !important;
  }
  .ipo-popup-field input[type=text],
  .ipo-popup-field input[type=tel],
  .popup-phone-row,
  .ipo-phone-row.popup-phone-row{
    min-height:38px !important;
  }
  .ipo-phone-row.popup-phone-row .ipo-country{
    min-width:46px !important;
    font-size:9.8px !important;
  }
  .popup-phone-row input[type=tel],
  .ipo-phone-row.popup-phone-row input[type=tel]{
    min-height:36px !important;
  }
  .ipo-popup-consent{
    padding:6px 7px !important;
  }
  .ipo-popup-consent .wpcf7-list-item-label{
    font-size:7.2px !important;
  }
  .ipo-popup-submit{
    min-height:39px !important;
    font-size:10px !important;
  }
}


/* v1.4.7 — popup rebuilt to match the home-page lead form more closely */
.ipo-lead-popup{
  position:fixed;
  inset:0;
  z-index:120000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:16px;
}
.ipo-lead-popup.open{display:flex}
.ipo-lead-popup-backdrop{
  position:absolute;
  inset:0;
  background:rgba(4,15,24,.58)!important;
  backdrop-filter:blur(4px)!important;
  -webkit-backdrop-filter:blur(4px)!important;
}
.ipo-lead-popup-card{
  position:relative;
  z-index:1;
  width:min(430px,100%);
  max-height:calc(100dvh - 32px);
  overflow-y:auto;
  padding:18px 16px 16px;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.12)!important;
  background:linear-gradient(160deg,rgba(10,22,40,.985),rgba(14,31,45,.975))!important;
  box-shadow:0 24px 64px rgba(0,0,0,.34)!important;
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}
.ipo-lead-popup-close{
  position:absolute;
  top:10px;
  right:10px;
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.10)!important;
  background:rgba(255,255,255,.08)!important;
  color:rgba(255,255,255,.74)!important;
  cursor:pointer;
}
.ipo-lead-popup-close:hover{background:rgba(255,255,255,.12)!important;color:#fff!important}
.ipo-lead-popup-close svg{width:15px;height:15px}

.ipo-popup-head{
  display:block!important;
  margin:0 0 12px!important;
  padding:0 34px 0 0!important;
}
.ipo-popup-head h2{
  margin:0!important;
  color:#FFFFFF!important;
  font-size:22px!important;
  line-height:1.18!important;
  letter-spacing:-.025em!important;
}
.ipo-popup-head p{
  margin:5px 0 0!important;
  color:rgba(255,255,255,.64)!important;
  font-size:10.5px!important;
  line-height:1.55!important;
}

/* match popup form to hero form */
.ipo-popup-cf7 .ipo-hero-lead-fields{
  display:grid;
  gap:8px!important;
}
.ipo-popup-cf7 .ipo-hero-lead-field{
  display:grid;
  gap:5px!important;
}
.ipo-popup-cf7 .ipo-hero-lead-field label{
  display:block!important;
  color:rgba(255,255,255,.82)!important;
  font-size:11px!important;
  font-weight:800!important;
  line-height:1.25!important;
}
.ipo-popup-cf7 .ipo-hero-lead-field .required{color:#9BE49E}
.ipo-popup-cf7 .ipo-hero-lead-field input[type="text"],
.ipo-popup-cf7 .ipo-hero-lead-field input[type="tel"]{
  width:100%!important;
  min-height:42px!important;
  padding:10px 12px!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.97)!important;
  color:#0A1628!important;
  font-size:13px!important;
  line-height:1.3!important;
  outline:none!important;
  box-shadow:none!important;
}
.ipo-popup-cf7 .ipo-hero-lead-field input::placeholder{color:#6F7A73!important;opacity:1}
.ipo-popup-cf7 .hero-phone-row,
.ipo-popup-cf7 .popup-phone-row{
  min-height:42px!important;
  overflow:hidden!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.97)!important;
}
.ipo-popup-cf7 .popup-phone-row .ipo-country,
.ipo-popup-cf7 .hero-phone-row .ipo-country{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:52px!important;
  padding:0 10px!important;
  color:#536058!important;
  background:#EDF2EC!important;
  border-right:1px solid #DCE4DA!important;
  font-size:10.5px!important;
  font-weight:700!important;
}
.ipo-popup-cf7 .popup-phone-row input[type="tel"],
.ipo-popup-cf7 .hero-phone-row input[type="tel"]{
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  min-height:40px!important;
}

.ipo-popup-cf7 .ipo-hero-consent,
.ipo-popup-cf7 .ipo-popup-consent-box{
  margin:0!important;
  padding:8px 10px!important;
  border-radius:10px!important;
  background:rgba(255,255,255,.06)!important;
  border:1px solid rgba(255,255,255,.08)!important;
}
.ipo-popup-cf7 .ipo-hero-consent .wpcf7-list-item,
.ipo-popup-cf7 .ipo-popup-consent-box .wpcf7-list-item{margin:0!important}
.ipo-popup-cf7 .ipo-hero-consent label,
.ipo-popup-cf7 .ipo-popup-consent-box label{
  display:flex!important;
  align-items:flex-start!important;
  gap:7px!important;
  cursor:pointer!important;
}
.ipo-popup-cf7 .ipo-hero-consent input[type="checkbox"],
.ipo-popup-cf7 .ipo-popup-consent-box input[type="checkbox"]{
  width:14px!important;
  height:14px!important;
  margin:2px 0 0!important;
  flex:0 0 auto!important;
  accent-color:#2F7D32!important;
}
.ipo-popup-cf7 .ipo-hero-consent .wpcf7-list-item-label,
.ipo-popup-cf7 .ipo-popup-consent-box .wpcf7-list-item-label{
  color:rgba(255,255,255,.68)!important;
  font-size:9.2px!important;
  line-height:1.48!important;
}
.ipo-popup-cf7 .ipo-hero-consent a,
.ipo-popup-cf7 .ipo-popup-consent-box a{
  color:#9BE49E!important;
  text-decoration:underline!important;
}

.ipo-popup-cf7 .ipo-hero-submit-wrap,
.ipo-popup-cf7 .ipo-popup-submit-wrap{
  position:relative!important;
  margin:0!important;
  padding:0!important;
}
.ipo-popup-cf7 .ipo-hero-submit,
.ipo-popup-cf7 .ipo-popup-home-submit{
  width:100%!important;
  min-height:44px!important;
  margin:0!important;
  padding:0 16px!important;
  border:0!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,#3B913F,#28652D)!important;
  color:#FFFFFF!important;
  font-size:11px!important;
  font-weight:800!important;
  letter-spacing:.01em!important;
  cursor:pointer!important;
  box-shadow:0 10px 24px rgba(32,115,45,.22)!important;
}
.ipo-popup-cf7 .ipo-hero-submit:hover,
.ipo-popup-cf7 .ipo-popup-home-submit:hover{filter:brightness(1.03)}

.ipo-popup-cf7 .wpcf7-spinner{
  display:block!important;
  margin:6px auto 0!important;
}
.ipo-popup-cf7 .wpcf7-not-valid-tip{
  margin-top:3px!important;
  color:#FFD0D0!important;
  font-size:8.6px!important;
  line-height:1.35!important;
  font-weight:700!important;
}
.ipo-popup-cf7 .wpcf7 form .wpcf7-response-output,
.ipo-popup-cf7 .wpcf7-response-output{
  margin:7px 0 0!important;
  padding:8px 10px!important;
  border-radius:10px!important;
  background:rgba(255,255,255,.08)!important;
  color:#FFFFFF!important;
  font-size:8.8px!important;
  line-height:1.45!important;
}

/* popup thank-you state */
.ipo-lead-popup .ipo-thank-you-state{
  min-height:auto!important;
  padding:14px 2px 4px!important;
  justify-content:center!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
}
.ipo-lead-popup .ipo-thank-you-icon{
  width:50px!important;
  height:50px!important;
  margin-bottom:11px!important;
  background:rgba(121,198,123,.12)!important;
  border:1px solid rgba(121,198,123,.28)!important;
  color:#8FDD93!important;
  box-shadow:none!important;
}
.ipo-lead-popup .ipo-thank-you-icon svg{width:24px!important;height:24px!important}
.ipo-lead-popup .ipo-thank-you-state .label-tag{
  margin-bottom:7px!important;
  color:#9BE49E!important;
}
.ipo-lead-popup .ipo-thank-you-state h3{
  color:#FFFFFF!important;
  font-size:20px!important;
  line-height:1.22!important;
}
.ipo-lead-popup .ipo-thank-you-state p{
  margin-top:8px!important;
  color:rgba(255,255,255,.68)!important;
  font-size:10px!important;
  line-height:1.55!important;
}
.ipo-lead-popup .ipo-thank-you-meta{
  margin-top:12px!important;
  gap:6px!important;
}
.ipo-lead-popup .ipo-thank-you-meta span{
  padding:6px 9px!important;
  background:rgba(255,255,255,.07)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  color:rgba(255,255,255,.74)!important;
  font-size:8px!important;
}
.ipo-lead-popup .ipo-thank-you-meta svg{color:#9BE49E!important}

@media(max-width:680px){
  .ipo-lead-popup{
    padding:14px!important;
  }
  .ipo-lead-popup-card{
    width:min(340px,calc(100vw - 28px))!important;
    max-height:calc(100dvh - 28px)!important;
    padding:15px 13px 14px!important;
    border-radius:18px!important;
  }
  .ipo-lead-popup-close{
    top:8px!important;
    right:8px!important;
    width:28px!important;
    height:28px!important;
  }
  .ipo-popup-head{
    padding-right:30px!important;
    margin-bottom:10px!important;
  }
  .ipo-popup-head h2{
    font-size:19px!important;
  }
  .ipo-popup-head p{
    font-size:9.5px!important;
  }
  .ipo-popup-cf7 .ipo-hero-lead-fields{gap:7px!important}
  .ipo-popup-cf7 .ipo-hero-lead-field{gap:4px!important}
  .ipo-popup-cf7 .ipo-hero-lead-field label{font-size:10px!important}
  .ipo-popup-cf7 .ipo-hero-lead-field input[type="text"],
  .ipo-popup-cf7 .ipo-hero-lead-field input[type="tel"]{
    min-height:39px!important;
    padding:9px 11px!important;
    font-size:12px!important;
  }
  .ipo-popup-cf7 .hero-phone-row,
  .ipo-popup-cf7 .popup-phone-row{min-height:39px!important}
  .ipo-popup-cf7 .popup-phone-row .ipo-country,
  .ipo-popup-cf7 .hero-phone-row .ipo-country{
    min-width:48px!important;
    font-size:10px!important;
  }
  .ipo-popup-cf7 .popup-phone-row input[type="tel"],
  .ipo-popup-cf7 .hero-phone-row input[type="tel"]{min-height:37px!important}
  .ipo-popup-cf7 .ipo-hero-consent,
  .ipo-popup-cf7 .ipo-popup-consent-box{padding:7px 9px!important}
  .ipo-popup-cf7 .ipo-hero-consent .wpcf7-list-item-label,
  .ipo-popup-cf7 .ipo-popup-consent-box .wpcf7-list-item-label{
    font-size:8.5px!important;
    line-height:1.42!important;
  }
  .ipo-popup-cf7 .ipo-hero-submit,
  .ipo-popup-cf7 .ipo-popup-home-submit{
    min-height:41px!important;
    font-size:10.5px!important;
  }
  .ipo-lead-popup .ipo-thank-you-state{padding:10px 0 2px!important}
  .ipo-lead-popup .ipo-thank-you-state h3{font-size:18px!important}
  .ipo-lead-popup .ipo-thank-you-state p{font-size:9.4px!important}
  .ipo-lead-popup .ipo-thank-you-meta{flex-direction:column!important;align-items:center!important}
}


/* v1.4.8 — white popup + mobile field visibility fix */
.ipo-lead-popup{
  padding:14px!important;
}
.ipo-lead-popup-backdrop{
  background:rgba(8,18,28,.50)!important;
  backdrop-filter:blur(3px)!important;
  -webkit-backdrop-filter:blur(3px)!important;
}
.ipo-lead-popup-card{
  width:min(420px,calc(100vw - 28px))!important;
  max-height:calc(100dvh - 28px)!important;
  overflow-y:auto!important;
  padding:16px 14px 12px!important;
  border-radius:18px!important;
  background:#FFFFFF!important;
  border:1px solid #DDE5DA!important;
  box-shadow:0 22px 58px rgba(0,0,0,.24)!important;
  color:#0A1628!important;
}
.ipo-lead-popup-close{
  top:8px!important;
  right:8px!important;
  width:28px!important;
  height:28px!important;
  border:1px solid #E2E8E0!important;
  background:#F6F8F5!important;
  color:#59665F!important;
}
.ipo-popup-head{
  margin:0 0 10px!important;
  padding:0 32px 0 0!important;
}
.ipo-popup-head h2{
  margin:0!important;
  color:#0A1628!important;
  font-size:20px!important;
  line-height:1.18!important;
}
.ipo-popup-head p{
  margin:4px 0 0!important;
  color:#68746C!important;
  font-size:10px!important;
  line-height:1.45!important;
}

.ipo-popup-cf7,
.ipo-popup-cf7 .wpcf7,
.ipo-popup-cf7 form{
  margin:0!important;
  padding:0!important;
}
.ipo-popup-cf7 .ipo-hero-lead-fields{
  display:grid!important;
  gap:7px!important;
  margin:0!important;
  padding:0!important;
}
.ipo-popup-cf7 .ipo-hero-lead-field{
  display:grid!important;
  gap:4px!important;
  margin:0!important;
}
.ipo-popup-cf7 .ipo-hero-lead-field label{
  display:block!important;
  margin:0!important;
  color:#18241C!important;
  font-size:10.5px!important;
  font-weight:800!important;
  line-height:1.25!important;
}
.ipo-popup-cf7 .ipo-hero-lead-field .required{color:#D64B4B!important}

.ipo-popup-cf7 .ipo-hero-lead-field input[type="text"],
.ipo-popup-cf7 .ipo-hero-lead-field input[type="tel"]{
  display:block!important;
  box-sizing:border-box!important;
  width:100%!important;
  height:40px!important;
  min-height:40px!important;
  margin:0!important;
  padding:8px 10px!important;
  border:1px solid #D7E0D5!important;
  border-radius:10px!important;
  background:#FFFFFF!important;
  color:#0A1628!important;
  -webkit-text-fill-color:#0A1628!important;
  font-size:12px!important;
  line-height:1.2!important;
  opacity:1!important;
  visibility:visible!important;
}
.ipo-popup-cf7 .ipo-hero-lead-field input::placeholder{
  color:#7C8880!important;
  -webkit-text-fill-color:#7C8880!important;
  opacity:1!important;
}

.ipo-popup-cf7 .hero-phone-row,
.ipo-popup-cf7 .popup-phone-row{
  display:flex!important;
  align-items:stretch!important;
  width:100%!important;
  height:40px!important;
  min-height:40px!important;
  margin:0!important;
  overflow:hidden!important;
  border:1px solid #D7E0D5!important;
  border-radius:10px!important;
  background:#FFFFFF!important;
  box-sizing:border-box!important;
}
.ipo-popup-cf7 .hero-phone-row .ipo-country,
.ipo-popup-cf7 .popup-phone-row .ipo-country{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 48px!important;
  width:48px!important;
  min-width:48px!important;
  margin:0!important;
  padding:0!important;
  border-right:1px solid #D7E0D5!important;
  background:#F1F5EF!important;
  color:#4D5B52!important;
  font-size:10.5px!important;
  font-weight:800!important;
  line-height:40px!important;
  opacity:1!important;
  visibility:visible!important;
}
.ipo-popup-cf7 .hero-phone-row .wpcf7-form-control-wrap,
.ipo-popup-cf7 .popup-phone-row .wpcf7-form-control-wrap{
  display:flex!important;
  flex:1 1 auto!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
}
.ipo-popup-cf7 .hero-phone-row input[type="tel"],
.ipo-popup-cf7 .popup-phone-row input[type="tel"]{
  display:block!important;
  flex:1 1 auto!important;
  width:100%!important;
  min-width:0!important;
  height:38px!important;
  min-height:38px!important;
  margin:0!important;
  padding:8px 10px!important;
  border:0!important;
  border-radius:0!important;
  background:#FFFFFF!important;
  color:#0A1628!important;
  -webkit-text-fill-color:#0A1628!important;
  font-size:12px!important;
  opacity:1!important;
  visibility:visible!important;
  box-shadow:none!important;
}

.ipo-popup-cf7 .ipo-hero-consent,
.ipo-popup-cf7 .ipo-popup-consent-box{
  margin:0!important;
  padding:7px 8px!important;
  border:1px solid #E0E7DE!important;
  border-radius:9px!important;
  background:#F7F9F6!important;
}
.ipo-popup-cf7 .ipo-hero-consent label,
.ipo-popup-cf7 .ipo-popup-consent-box label{
  display:flex!important;
  align-items:flex-start!important;
  gap:6px!important;
  margin:0!important;
}
.ipo-popup-cf7 .ipo-hero-consent input[type="checkbox"],
.ipo-popup-cf7 .ipo-popup-consent-box input[type="checkbox"]{
  width:13px!important;
  height:13px!important;
  margin:1px 0 0!important;
  flex:0 0 13px!important;
  accent-color:#2F7D32!important;
}
.ipo-popup-cf7 .ipo-hero-consent .wpcf7-list-item-label,
.ipo-popup-cf7 .ipo-popup-consent-box .wpcf7-list-item-label{
  color:#59675E!important;
  -webkit-text-fill-color:#59675E!important;
  font-size:8.4px!important;
  line-height:1.42!important;
  opacity:1!important;
  visibility:visible!important;
}
.ipo-popup-cf7 .ipo-hero-consent a,
.ipo-popup-cf7 .ipo-popup-consent-box a{
  color:#2F7D32!important;
  -webkit-text-fill-color:#2F7D32!important;
  font-weight:700!important;
  text-decoration:underline!important;
}

.ipo-popup-cf7 .ipo-hero-submit-wrap,
.ipo-popup-cf7 .ipo-popup-submit-wrap{
  position:relative!important;
  margin:0!important;
  padding:0!important;
  min-height:0!important;
}
.ipo-popup-cf7 .ipo-hero-submit,
.ipo-popup-cf7 .ipo-popup-home-submit{
  display:block!important;
  width:100%!important;
  height:42px!important;
  min-height:42px!important;
  margin:0!important;
  padding:0 14px!important;
  border:0!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,#3B913F,#28652D)!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
  font-size:10.5px!important;
  line-height:42px!important;
  font-weight:800!important;
  box-shadow:0 8px 20px rgba(32,115,45,.18)!important;
}
.ipo-popup-cf7 .wpcf7-spinner{
  position:absolute!important;
  right:10px!important;
  top:10px!important;
  margin:0!important;
}
.ipo-popup-cf7 .wpcf7-response-output{
  margin:6px 0 0!important;
  padding:6px 8px!important;
  font-size:8.5px!important;
  line-height:1.4!important;
}

/* remove excess space below the popup CTA */
.ipo-popup-cf7 .wpcf7 p,
.ipo-popup-cf7 .wpcf7-form > p{
  margin:0!important;
  padding:0!important;
}
.ipo-lead-popup-card:after{display:none!important}

/* clean white thank-you state */
.ipo-lead-popup .ipo-thank-you-state{
  min-height:auto!important;
  padding:16px 6px 4px!important;
  background:#FFFFFF!important;
  border:0!important;
  color:#0A1628!important;
}
.ipo-lead-popup .ipo-thank-you-icon{
  width:46px!important;
  height:46px!important;
  margin-bottom:10px!important;
  background:#EAF6EA!important;
  border:1px solid #CFE6CF!important;
  color:#2F8737!important;
}
.ipo-lead-popup .ipo-thank-you-state .label-tag{color:#2F8737!important}
.ipo-lead-popup .ipo-thank-you-state h3{
  color:#0A1628!important;
  font-size:19px!important;
}
.ipo-lead-popup .ipo-thank-you-state p{
  color:#66736B!important;
  font-size:9.5px!important;
}
.ipo-lead-popup .ipo-thank-you-meta span{
  background:#F7FAF7!important;
  border:1px solid #DFE8DD!important;
  color:#5D6A62!important;
}

@media(max-width:680px){
  .ipo-lead-popup{padding:12px!important}
  .ipo-lead-popup-card{
    width:calc(100vw - 24px)!important;
    max-width:344px!important;
    max-height:calc(100dvh - 24px)!important;
    padding:14px 12px 10px!important;
    border-radius:16px!important;
  }
  .ipo-popup-head{margin-bottom:9px!important}
  .ipo-popup-head h2{font-size:18px!important}
  .ipo-popup-head p{font-size:9.2px!important}
  .ipo-popup-cf7 .ipo-hero-lead-fields{gap:6px!important}
  .ipo-popup-cf7 .ipo-hero-lead-field label{font-size:10px!important}
  .ipo-popup-cf7 .ipo-hero-lead-field input[type="text"],
  .ipo-popup-cf7 .ipo-hero-lead-field input[type="tel"]{
    height:38px!important;
    min-height:38px!important;
    padding:7px 9px!important;
    font-size:11.5px!important;
  }
  .ipo-popup-cf7 .hero-phone-row,
  .ipo-popup-cf7 .popup-phone-row{
    height:38px!important;
    min-height:38px!important;
  }
  .ipo-popup-cf7 .hero-phone-row .ipo-country,
  .ipo-popup-cf7 .popup-phone-row .ipo-country{
    flex-basis:46px!important;
    width:46px!important;
    min-width:46px!important;
    line-height:38px!important;
    font-size:10px!important;
  }
  .ipo-popup-cf7 .hero-phone-row input[type="tel"],
  .ipo-popup-cf7 .popup-phone-row input[type="tel"]{
    height:36px!important;
    min-height:36px!important;
    padding:7px 9px!important;
    font-size:11.5px!important;
  }
  .ipo-popup-cf7 .ipo-hero-consent,
  .ipo-popup-cf7 .ipo-popup-consent-box{padding:6px 7px!important}
  .ipo-popup-cf7 .ipo-hero-consent .wpcf7-list-item-label,
  .ipo-popup-cf7 .ipo-popup-consent-box .wpcf7-list-item-label{
    font-size:8px!important;
    line-height:1.38!important;
  }
  .ipo-popup-cf7 .ipo-hero-submit,
  .ipo-popup-cf7 .ipo-popup-home-submit{
    height:40px!important;
    min-height:40px!important;
    line-height:40px!important;
    font-size:10px!important;
  }
}


/* ============================================================
   v1.4.9 — FINAL MOBILE POPUP RESET
   Simple white form, ~60% mobile viewport height, robust tel input
   ============================================================ */
#ipoLeadPopup{
  position:fixed !important;
  inset:0 !important;
  z-index:120000 !important;
  display:none;
  align-items:center !important;
  justify-content:center !important;
  padding:16px !important;
}
#ipoLeadPopup.open{display:flex !important;}

#ipoLeadPopup .ipo-lead-popup-backdrop{
  position:absolute !important;
  inset:0 !important;
  background:rgba(6,18,28,.52) !important;
  backdrop-filter:blur(3px) !important;
  -webkit-backdrop-filter:blur(3px) !important;
}

#ipoLeadPopup .ipo-lead-popup-card{
  position:relative !important;
  z-index:1 !important;
  box-sizing:border-box !important;
  width:min(392px,calc(100vw - 32px)) !important;
  max-height:72dvh !important;
  overflow-y:auto !important;
  margin:0 !important;
  padding:18px 16px 12px !important;
  border:1px solid #DEE5DC !important;
  border-radius:18px !important;
  background:#FFFFFF !important;
  color:#142018 !important;
  box-shadow:0 22px 60px rgba(0,0,0,.24) !important;
}

#ipoLeadPopup .ipo-lead-popup-close{
  position:absolute !important;
  top:9px !important;
  right:9px !important;
  width:30px !important;
  height:30px !important;
  display:grid !important;
  place-items:center !important;
  margin:0 !important;
  padding:0 !important;
  border:1px solid #E0E6DE !important;
  border-radius:9px !important;
  background:#F6F8F5 !important;
  color:#536158 !important;
  cursor:pointer !important;
}
#ipoLeadPopup .ipo-lead-popup-close svg{
  width:15px !important;
  height:15px !important;
}

#ipoLeadPopup .ipo-popup-head{
  display:block !important;
  margin:0 0 13px !important;
  padding:0 34px 0 0 !important;
}
#ipoLeadPopup .ipo-popup-head h2{
  margin:0 !important;
  color:#102019 !important;
  -webkit-text-fill-color:#102019 !important;
  font-size:22px !important;
  font-weight:800 !important;
  line-height:1.18 !important;
  letter-spacing:-.025em !important;
}
#ipoLeadPopup .ipo-popup-head p{
  margin:5px 0 0 !important;
  color:#657269 !important;
  -webkit-text-fill-color:#657269 !important;
  font-size:11.5px !important;
  font-weight:500 !important;
  line-height:1.5 !important;
}

#ipoLeadPopup .ipo-popup-cf7,
#ipoLeadPopup .ipo-popup-cf7 .wpcf7,
#ipoLeadPopup .ipo-popup-cf7 form,
#ipoLeadPopup .ipo-popup-form-fields{
  box-sizing:border-box !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
}

#ipoLeadPopup .ipo-popup-form-fields{
  display:grid !important;
  gap:10px !important;
}

#ipoLeadPopup .ipo-popup-form-field{
  display:grid !important;
  gap:5px !important;
  margin:0 !important;
  padding:0 !important;
}

#ipoLeadPopup .ipo-popup-form-field label{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  color:#1B2A20 !important;
  -webkit-text-fill-color:#1B2A20 !important;
  font-size:11.5px !important;
  font-weight:800 !important;
  line-height:1.3 !important;
}
#ipoLeadPopup .ipo-popup-form-field .required{
  color:#D64A4A !important;
  -webkit-text-fill-color:#D64A4A !important;
}

#ipoLeadPopup .ipo-popup-form-field .wpcf7-form-control-wrap{
  display:block !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
}

#ipoLeadPopup .ipo-popup-form-field input[type="text"],
#ipoLeadPopup .ipo-popup-form-field input[type="tel"]{
  display:block !important;
  box-sizing:border-box !important;
  width:100% !important;
  height:42px !important;
  min-height:42px !important;
  max-height:42px !important;
  margin:0 !important;
  padding:9px 11px !important;
  border:1px solid #D6DFD3 !important;
  border-radius:10px !important;
  background:#FFFFFF !important;
  color:#102019 !important;
  -webkit-text-fill-color:#102019 !important;
  caret-color:#102019 !important;
  font-family:inherit !important;
  font-size:13px !important;
  font-weight:500 !important;
  line-height:1.2 !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  appearance:auto !important;
  -webkit-appearance:none !important;
  outline:none !important;
  box-shadow:none !important;
}
#ipoLeadPopup .ipo-popup-form-field input[type="text"]:focus,
#ipoLeadPopup .ipo-popup-form-field input[type="tel"]:focus{
  border-color:#559A59 !important;
  box-shadow:0 0 0 3px rgba(47,125,50,.10) !important;
}
#ipoLeadPopup .ipo-popup-form-field input::placeholder{
  color:#7C8780 !important;
  -webkit-text-fill-color:#7C8780 !important;
  opacity:1 !important;
}

/* The phone field is intentionally a normal full-width TEL input.
   No nested prefix wrapper = no blocked/collapsed mobile input. */
#ipoLeadPopup input[name="popup-phone"]{
  display:block !important;
  position:relative !important;
  z-index:2 !important;
  width:100% !important;
  pointer-events:auto !important;
  user-select:text !important;
  -webkit-user-select:text !important;
}

#ipoLeadPopup .ipo-popup-form-consent{
  margin:0 !important;
  padding:8px 9px !important;
  border:1px solid #E0E7DE !important;
  border-radius:9px !important;
  background:#F7F9F6 !important;
}
#ipoLeadPopup .ipo-popup-form-consent .wpcf7-list-item{
  display:block !important;
  margin:0 !important;
}
#ipoLeadPopup .ipo-popup-form-consent label{
  display:flex !important;
  align-items:flex-start !important;
  gap:7px !important;
  margin:0 !important;
  padding:0 !important;
}
#ipoLeadPopup .ipo-popup-form-consent input[type="checkbox"]{
  width:14px !important;
  height:14px !important;
  min-width:14px !important;
  margin:2px 0 0 !important;
  padding:0 !important;
  flex:0 0 14px !important;
  accent-color:#2F7D32 !important;
  pointer-events:auto !important;
}
#ipoLeadPopup .ipo-popup-form-consent .wpcf7-list-item-label{
  display:block !important;
  color:#55635A !important;
  -webkit-text-fill-color:#55635A !important;
  font-size:9.5px !important;
  font-weight:500 !important;
  line-height:1.45 !important;
  opacity:1 !important;
}
#ipoLeadPopup .ipo-popup-form-consent a{
  color:#2F7D32 !important;
  -webkit-text-fill-color:#2F7D32 !important;
  font-weight:700 !important;
  text-decoration:underline !important;
}

#ipoLeadPopup .ipo-popup-form-submit{
  position:relative !important;
  margin:0 !important;
  padding:0 !important;
}
#ipoLeadPopup .ipo-popup-submit-final{
  display:block !important;
  box-sizing:border-box !important;
  width:100% !important;
  height:43px !important;
  min-height:43px !important;
  margin:0 !important;
  padding:0 12px !important;
  border:0 !important;
  border-radius:999px !important;
  background:linear-gradient(135deg,#3B913F,#28652D) !important;
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  font-family:inherit !important;
  font-size:11px !important;
  font-weight:800 !important;
  line-height:43px !important;
  text-align:center !important;
  cursor:pointer !important;
  box-shadow:0 8px 20px rgba(32,115,45,.18) !important;
}

#ipoLeadPopup .wpcf7-spinner{
  position:absolute !important;
  right:9px !important;
  top:9px !important;
  margin:0 !important;
}
#ipoLeadPopup .wpcf7-not-valid-tip{
  display:block !important;
  margin:3px 0 0 !important;
  padding:0 !important;
  color:#C63F3F !important;
  -webkit-text-fill-color:#C63F3F !important;
  font-size:9px !important;
  line-height:1.35 !important;
  font-weight:700 !important;
}
#ipoLeadPopup .wpcf7-response-output{
  margin:7px 0 0 !important;
  padding:7px 8px !important;
  border-radius:9px !important;
  color:#38443C !important;
  -webkit-text-fill-color:#38443C !important;
  font-size:9px !important;
  line-height:1.4 !important;
}

/* Prevent Contact Form 7 paragraph wrappers from creating bottom gaps. */
#ipoLeadPopup .wpcf7 p,
#ipoLeadPopup .wpcf7-form > p,
#ipoLeadPopup .ipo-popup-form-submit p{
  margin:0 !important;
  padding:0 !important;
}

/* Thank-you state: same compact white-card visual */
#ipoLeadPopup .ipo-thank-you-state{
  min-height:0 !important;
  margin:0 !important;
  padding:16px 4px 3px !important;
  border:0 !important;
  border-radius:0 !important;
  background:#FFFFFF !important;
}
#ipoLeadPopup .ipo-thank-you-icon{
  width:48px !important;
  height:48px !important;
  margin-bottom:10px !important;
  background:#EAF6EA !important;
  border:1px solid #CFE6CF !important;
  color:#2F8737 !important;
  box-shadow:none !important;
}
#ipoLeadPopup .ipo-thank-you-icon svg{
  width:23px !important;
  height:23px !important;
}
#ipoLeadPopup .ipo-thank-you-state .label-tag{
  margin-bottom:6px !important;
  color:#2F8737 !important;
}
#ipoLeadPopup .ipo-thank-you-state h3{
  color:#102019 !important;
  -webkit-text-fill-color:#102019 !important;
  font-size:19px !important;
  line-height:1.2 !important;
}
#ipoLeadPopup .ipo-thank-you-state p{
  margin-top:7px !important;
  color:#66736B !important;
  -webkit-text-fill-color:#66736B !important;
  font-size:10px !important;
  line-height:1.5 !important;
}
#ipoLeadPopup .ipo-thank-you-meta{
  margin-top:11px !important;
  gap:6px !important;
}
#ipoLeadPopup .ipo-thank-you-meta span{
  padding:6px 8px !important;
  background:#F7FAF7 !important;
  border:1px solid #DFE8DD !important;
  color:#5D6A62 !important;
  font-size:8px !important;
}

/* MOBILE: target roughly 60% of viewport height, readable text, tight padding */
@media(max-width:680px){
  #ipoLeadPopup{
    padding:14px !important;
  }
  #ipoLeadPopup .ipo-lead-popup-card{
    width:min(352px,calc(100vw - 28px)) !important;
    max-height:60dvh !important;
    padding:15px 13px 10px !important;
    border-radius:16px !important;
  }
  #ipoLeadPopup .ipo-popup-head{
    margin-bottom:10px !important;
    padding-right:31px !important;
  }
  #ipoLeadPopup .ipo-popup-head h2{
    font-size:20px !important;
  }
  #ipoLeadPopup .ipo-popup-head p{
    font-size:10.5px !important;
  }
  #ipoLeadPopup .ipo-popup-form-fields{
    gap:8px !important;
  }
  #ipoLeadPopup .ipo-popup-form-field{
    gap:4px !important;
  }
  #ipoLeadPopup .ipo-popup-form-field label{
    font-size:11px !important;
  }
  #ipoLeadPopup .ipo-popup-form-field input[type="text"],
  #ipoLeadPopup .ipo-popup-form-field input[type="tel"]{
    height:40px !important;
    min-height:40px !important;
    max-height:40px !important;
    padding:8px 10px !important;
    font-size:12.5px !important;
  }
  #ipoLeadPopup .ipo-popup-form-consent{
    padding:7px 8px !important;
  }
  #ipoLeadPopup .ipo-popup-form-consent .wpcf7-list-item-label{
    font-size:9px !important;
    line-height:1.4 !important;
  }
  #ipoLeadPopup .ipo-popup-submit-final{
    height:41px !important;
    min-height:41px !important;
    line-height:41px !important;
    font-size:10.5px !important;
  }
}


/* v1.5.0 — final readability pass after mobile render/input testing */
@media(max-width:680px){
  #ipoLeadPopup .ipo-popup-head h2{
    font-size:20px !important;
    font-weight:800 !important;
  }
  #ipoLeadPopup .ipo-popup-head p{
    font-size:10.8px !important;
  }
  #ipoLeadPopup .ipo-popup-form-field label{
    font-size:11.2px !important;
  }
  #ipoLeadPopup .ipo-popup-form-field input[type="text"],
  #ipoLeadPopup .ipo-popup-form-field input[type="tel"]{
    font-size:12.8px !important;
  }
  #ipoLeadPopup .ipo-popup-form-consent .wpcf7-list-item-label{
    font-size:9.6px !important;
    line-height:1.42 !important;
  }
  #ipoLeadPopup .ipo-popup-submit-final{
    font-size:11px !important;
  }
}


/* v1.5.1 — one lead form reused in hero, footer and popup */
.footer-lead-card{
  margin:0 0 26px;
  padding:20px;
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  gap:24px;
  align-items:center;
  border:1px solid rgba(255,255,255,.09);
  border-radius:20px;
  background:rgba(255,255,255,.045);
}
.footer-lead-copy h3{
  margin:6px 0 0!important;
  color:#fff;
  font-size:22px;
  line-height:1.2;
}
.footer-lead-copy p{
  margin:6px 0 0!important;
  color:rgba(255,255,255,.58);
  font-size:10px;
  line-height:1.55;
}
.footer-lead-form .ipo-hero-lead-fields{gap:8px}
.footer-lead-form .ipo-hero-lead-field label{color:rgba(255,255,255,.78)}
.footer-lead-form .ipo-hero-lead-field input[type="text"],
.footer-lead-form .ipo-hero-lead-field input[type="tel"]{min-height:43px}
.footer-lead-form .hero-phone-row{min-height:43px}
.footer-lead-form .ipo-hero-submit{min-height:44px;font-size:11px}
.footer-lead-form .ipo-hero-form-note{margin-top:7px!important}
.footer-lead-form .wpcf7-not-valid-tip{
  margin-top:4px;
  color:#ffd0d0;
  font-size:9px;
  font-weight:700;
}

#ipoLeadPopup .wpcf7-not-valid-tip,
.hero-lead-form .wpcf7-not-valid-tip{
  display:block;
}

@media(max-width:760px){
  .footer-lead-card{
    grid-template-columns:1fr;
    gap:14px;
    padding:16px 14px;
    border-radius:17px;
  }
  .footer-lead-copy h3{font-size:19px}
  .footer-lead-copy p{font-size:9.5px}
}


/* v1.5.2 — one canonical lead form; direct mobile field everywhere */
.ipo-single-lead-fields .ipo-hero-lead-field input[name="lead-phone"],
.ipo-single-lead-fields .ipo-hero-lead-field input[name="lead-name"]{
  display:block !important;
  box-sizing:border-box !important;
  width:100% !important;
  min-height:46px !important;
  margin:0 !important;
  padding:10px 12px !important;
  border:1px solid rgba(255,255,255,.12) !important;
  border-radius:12px !important;
  background:rgba(255,255,255,.97) !important;
  color:#0A1628 !important;
  -webkit-text-fill-color:#0A1628 !important;
  caret-color:#0A1628 !important;
  font-size:12px !important;
  line-height:1.3 !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  touch-action:manipulation !important;
  user-select:text !important;
  -webkit-user-select:text !important;
  outline:none !important;
  box-shadow:none !important;
  -webkit-appearance:none !important;
  appearance:none !important;
}
.ipo-single-lead-fields .ipo-hero-lead-field input[name="lead-phone"]:focus,
.ipo-single-lead-fields .ipo-hero-lead-field input[name="lead-name"]:focus{
  border-color:#6AAA6D !important;
  box-shadow:0 0 0 3px rgba(47,125,50,.10) !important;
}
.ipo-single-lead-fields .ipo-hero-lead-field input::placeholder{
  color:#717B74 !important;
  -webkit-text-fill-color:#717B74 !important;
  opacity:1 !important;
}

/* Popup gets the same form but white-card text treatment */
#ipoLeadPopup .ipo-single-lead-fields .ipo-hero-lead-field label{
  color:#1B2A20 !important;
  -webkit-text-fill-color:#1B2A20 !important;
}
#ipoLeadPopup .ipo-single-lead-fields .ipo-hero-lead-field input[name="lead-phone"],
#ipoLeadPopup .ipo-single-lead-fields .ipo-hero-lead-field input[name="lead-name"]{
  min-height:40px !important;
  height:40px !important;
  max-height:40px !important;
  padding:8px 10px !important;
  border:1px solid #D6DFD3 !important;
  background:#FFFFFF !important;
  color:#102019 !important;
  -webkit-text-fill-color:#102019 !important;
  caret-color:#102019 !important;
  font-size:12.8px !important;
}
#ipoLeadPopup .ipo-single-lead-fields .ipo-hero-consent{
  background:#F7F9F6 !important;
  border:1px solid #E0E7DE !important;
}
#ipoLeadPopup .ipo-single-lead-fields .ipo-hero-consent .wpcf7-list-item-label{
  color:#55635A !important;
  -webkit-text-fill-color:#55635A !important;
}
#ipoLeadPopup .ipo-single-lead-fields .ipo-hero-consent a{
  color:#2F7D32 !important;
  -webkit-text-fill-color:#2F7D32 !important;
}
#ipoLeadPopup .ipo-single-lead-fields .ipo-hero-form-note{
  color:#7A857E !important;
  -webkit-text-fill-color:#7A857E !important;
  font-size:8.8px !important;
}

/* Footer direct phone field */
.footer-lead-form .ipo-single-lead-fields input[name="lead-phone"],
.footer-lead-form .ipo-single-lead-fields input[name="lead-name"]{
  min-height:43px !important;
}

@media(max-width:680px){
  #ipoLeadPopup .ipo-single-lead-fields .ipo-hero-lead-field input[name="lead-phone"],
  #ipoLeadPopup .ipo-single-lead-fields .ipo-hero-lead-field input[name="lead-name"]{
    min-height:40px !important;
    height:40px !important;
    max-height:40px !important;
    padding:8px 10px !important;
    font-size:13px !important;
  }
}


/* v1.5.3 — one canonical lead form across the full website */
.form-card .ipo-single-lead-fields .ipo-hero-lead-field label,
.contact-us-cf7-wrap .ipo-single-lead-fields .ipo-hero-lead-field label,
.footer-lead-form .ipo-single-lead-fields .ipo-hero-lead-field label{
  color:#243129 !important;
}
.form-card .ipo-single-lead-fields input[name="lead-name"],
.form-card .ipo-single-lead-fields input[name="lead-phone"],
.contact-us-cf7-wrap .ipo-single-lead-fields input[name="lead-name"],
.contact-us-cf7-wrap .ipo-single-lead-fields input[name="lead-phone"],
.footer-lead-form .ipo-single-lead-fields input[name="lead-name"],
.footer-lead-form .ipo-single-lead-fields input[name="lead-phone"]{
  border-color:#D6DFD3 !important;
  background:#FFFFFF !important;
  color:#102019 !important;
  -webkit-text-fill-color:#102019 !important;
}
.form-card .ipo-single-lead-fields .ipo-hero-consent,
.contact-us-cf7-wrap .ipo-single-lead-fields .ipo-hero-consent,
.footer-lead-form .ipo-single-lead-fields .ipo-hero-consent{
  background:#F7F9F6 !important;
  border-color:#E0E7DE !important;
}
.form-card .ipo-single-lead-fields .ipo-hero-consent .wpcf7-list-item-label,
.contact-us-cf7-wrap .ipo-single-lead-fields .ipo-hero-consent .wpcf7-list-item-label,
.footer-lead-form .ipo-single-lead-fields .ipo-hero-consent .wpcf7-list-item-label{
  color:#55635A !important;
}
.form-card .ipo-single-lead-fields .ipo-hero-consent a,
.contact-us-cf7-wrap .ipo-single-lead-fields .ipo-hero-consent a,
.footer-lead-form .ipo-single-lead-fields .ipo-hero-consent a{
  color:#2F7D32 !important;
}
.form-card .ipo-single-lead-fields .ipo-hero-form-note,
.contact-us-cf7-wrap .ipo-single-lead-fields .ipo-hero-form-note,
.footer-lead-form .ipo-single-lead-fields .ipo-hero-form-note{
  color:#7A857E !important;
}
.ipo-single-lead-fields .wpcf7-not-valid-tip{
  display:block;
  margin-top:4px;
  color:#C43B3B;
  font-size:9px;
  font-weight:700;
}


/* v1.5.4 — unique mobile number only */
.ipo-single-lead-fields .wpcf7-not-valid-tip{
  color:#C43737 !important;
  font-weight:800 !important;
}
