/*
Theme Name: CleanPro Launch Template
Theme URI: https://example.com/
Author: Anmanio
Description: A fast, reusable lead-generation theme for residential and commercial cleaning companies.
Version: 1.0.0
Text Domain: cleanpro
*/

:root{--navy:#0b2545;--blue:#1677ff;--aqua:#33d1c6;--ice:#eef9fb;--ink:#102235;--muted:#5e7184;--white:#fff;--line:#dbe8ed;--shadow:0 18px 55px rgba(11,37,69,.12);--radius:22px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65;background:#fff}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}.section{padding:88px 0}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:#087c76;font-size:.79rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.eyebrow:before{content:"";width:28px;height:2px;background:var(--aqua)}h1,h2,h3{font-weight:800;letter-spacing:-.035em;line-height:1.08;margin:0 0 18px}h1{font-size:clamp(2.8rem,6vw,5.3rem)}h2{font-size:clamp(2.1rem,4vw,3.35rem)}h3{font-size:1.35rem}p{margin:0 0 22px}.lead{font-size:1.17rem;color:var(--muted);max-width:650px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 23px;border-radius:999px;background:var(--blue);color:#fff;font-weight:800;box-shadow:0 10px 25px rgba(22,119,255,.25);transition:.2s}.button:hover{transform:translateY(-2px);filter:brightness(.96)}.button.alt{background:#fff;color:var(--navy);box-shadow:none;border:1px solid rgba(11,37,69,.14)}.button.light{background:#fff;color:var(--blue);box-shadow:none}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.93);backdrop-filter:blur(14px);border-bottom:1px solid rgba(219,232,237,.8)}.nav-row{height:78px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:11px;font-size:1.25rem;font-weight:900;color:var(--navy)}.brand-mark{width:41px;height:41px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(135deg,var(--blue),var(--aqua));color:#fff;font-size:1.3rem}.site-nav{display:flex;align-items:center;gap:28px;font-weight:700;font-size:.94rem}.site-nav a:hover{color:var(--blue)}.menu-toggle{display:none;border:0;background:none;font-size:1.6rem}.hero{position:relative;overflow:hidden;padding:100px 0 82px;background:linear-gradient(125deg,#f4fbff 0%,#fff 52%,#e8fbf7 100%)}.hero:after{content:"";position:absolute;width:540px;height:540px;border-radius:50%;background:linear-gradient(135deg,rgba(22,119,255,.13),rgba(51,209,198,.25));right:-170px;top:-180px}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:70px}.hero h1 span{color:var(--blue)}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:32px 0}.proof-row{display:flex;gap:28px;flex-wrap:wrap;color:var(--muted);font-size:.9rem;font-weight:700}.proof-row span:before{content:"✓";color:#079c88;font-weight:900;margin-right:7px}.hero-visual{position:relative;min-height:490px}.clean-card{position:absolute;background:#fff;border-radius:var(--radius);box-shadow:var(--shadow)}.scene{inset:0 28px 35px 35px;overflow:hidden;background:#dff6f8 url("assets/cleaning-hero.png") center/cover no-repeat;border:8px solid #fff}.rating-card{left:0;bottom:4px;padding:17px 21px;font-weight:800}.rating-card b{color:#f5a524;letter-spacing:2px}.booking-card{right:0;top:48px;padding:18px 21px;display:grid;gap:4px}.booking-card small{color:var(--muted)}.stats{padding:26px 0;background:var(--navy);color:#fff}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;text-align:center}.stat strong{display:block;font-size:1.75rem}.stat span{color:#b9cedf;font-size:.9rem}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{padding:30px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;transition:.2s}.card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:transparent}.icon{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;background:var(--ice);font-size:1.6rem;margin-bottom:22px}.card p{color:var(--muted)}.card-link{font-weight:800;color:var(--blue)}.split{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}.feature-art{min-height:470px;border-radius:32px;background:#dff6f8 url("assets/home-cleaning.png") center/cover no-repeat;position:relative;overflow:hidden;box-shadow:var(--shadow)}.commercial-photo{min-height:360px;border-radius:var(--radius);background:#dce8ec url("assets/commercial-cleaning.png") center/cover no-repeat;box-shadow:var(--shadow);margin:35px 0}.checklist{display:grid;gap:15px;margin:28px 0}.checklist div{display:flex;gap:12px;font-weight:700}.checklist div:before{content:"✓";flex:0 0 25px;height:25px;border-radius:50%;background:#dff8f3;color:#087c76;display:grid;place-items:center}.process{background:var(--ice)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;counter-reset:step}.step{position:relative;padding:32px;background:#fff;border-radius:var(--radius)}.step:before{counter-increment:step;content:"0" counter(step);display:block;color:var(--blue);font-size:.85rem;font-weight:900;margin-bottom:30px}.step:not(:last-child):after{content:"→";position:absolute;right:-20px;top:50%;z-index:2;width:40px;height:40px;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center}.testimonial{background:var(--navy);color:#fff}.quote{font-size:clamp(1.4rem,3vw,2.35rem);max-width:880px;line-height:1.4;margin:0 auto 25px;text-align:center}.quote-by{text-align:center;color:#b9cedf}.cta{padding:80px 0}.cta-box{padding:55px;border-radius:32px;background:linear-gradient(120deg,var(--blue),#0caea4);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:35px}.cta-box p{color:#e8ffff;margin:0}.site-footer{background:#071a31;color:#c0d0df;padding:65px 0 25px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:55px;margin-bottom:45px}.site-footer h3{color:#fff;font-size:1rem}.site-footer a{display:block;margin:8px 0}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:23px;font-size:.85rem}.page-hero{padding:80px 0;background:var(--ice);text-align:center}.page-content{padding:70px 0}.page-content .entry{max-width:820px;margin:auto}.entry h2{margin-top:45px}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:55px}.contact-panel{background:var(--navy);color:#fff;border-radius:var(--radius);padding:36px}.contact-panel p{color:#c0d0df}.wpcf7-form input,.wpcf7-form textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:13px 15px;font:inherit}.wpcf7-submit{background:var(--blue)!important;color:#fff;border:0!important;font-weight:800;cursor:pointer}
@media(max-width:850px){.site-nav{display:none}.menu-toggle{display:block}.hero-grid,.split,.contact-grid{grid-template-columns:1fr}.hero-visual{min-height:400px}.cards,.steps{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}.section-head,.cta-box{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr}.hero{padding-top:70px}.step:after{display:none!important}}
@media(max-width:520px){.wrap{width:min(100% - 26px,1160px)}.section{padding:65px 0}.nav-cta{display:none}.hero-visual{min-height:330px}.footer-grid{grid-template-columns:1fr}.cta-box{padding:35px 25px}.stats-grid{gap:18px}.scene{inset:0 10px 30px}.booking-card{right:0}.feature-art{min-height:350px}}

/* Elementor visual-editor compatibility */
.elementor .wrap{width:min(1160px,calc(100% - 40px));margin-inline:auto}.elementor .hero{padding-inline:0}
.elementor .hero-grid,.elementor .split,.elementor .cards,.elementor .steps,.elementor .stats-grid{display:grid}
.elementor .hero-grid{grid-template-columns:1.08fr .92fr}.elementor .split{grid-template-columns:1fr 1fr}.elementor .cards,.elementor .steps{grid-template-columns:repeat(3,1fr)}.elementor .stats-grid{grid-template-columns:repeat(4,1fr)}
.elementor .elementor-widget-heading h1,.elementor .elementor-widget-heading h2,.elementor .elementor-widget-heading h3{font-weight:800;letter-spacing:-.035em;line-height:1.08;margin:0}.elementor .elementor-widget-heading h1{font-size:clamp(2.8rem,6vw,5.3rem)}.elementor .elementor-widget-heading h2{font-size:clamp(2.1rem,4vw,3.35rem)}.elementor .elementor-widget-heading h3{font-size:1.35rem}
.elementor .hero .elementor-widget-heading h1 span{color:var(--blue)}
.elementor .elementor-widget-button .elementor-button{padding:15px 23px;border-radius:999px;background:var(--blue);color:#fff;font-weight:800;box-shadow:0 10px 25px rgba(22,119,255,.25)}
.elementor .hero-actions{display:flex;flex-direction:row;gap:12px;flex-wrap:wrap}.elementor .hero-actions .alt .elementor-button{background:#fff;color:var(--navy);box-shadow:none;border:1px solid rgba(11,37,69,.14)}
.elementor .card-link .elementor-button{padding:0;background:transparent;color:var(--blue);box-shadow:none}
.elementor .elementor-widget-text-editor p:last-child{margin-bottom:0}.elementor .why-section{padding-top:20px}
@media(max-width:850px){.elementor .hero-grid,.elementor .split{grid-template-columns:1fr}.elementor .cards,.elementor .steps{grid-template-columns:1fr}.elementor .stats-grid{grid-template-columns:repeat(2,1fr)}}
