@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#182c29;--cream:#f5f3eb;--green:#244d40;--lime:#e4f390;--orange:#fc7952;--line:#d3d7cc}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.6 'DM Sans',Arial,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}h1,h2,h3,.logo{font-family:Manrope,Arial,sans-serif;line-height:1.08;letter-spacing:-.045em}h1{font-size:clamp(48px,6.4vw,91px);font-weight:600;margin:22px 0 26px}h2{font-size:clamp(34px,4.5vw,60px);font-weight:500;margin:15px 0 24px}h3{font-size:27px;font-weight:600}p{margin:0 0 20px}nav{max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:24px 5vw;border-bottom:1px solid var(--line)}.logo{font-size:30px;font-weight:800;text-decoration:none;letter-spacing:-1.6px}.logo span{color:#628757}.links{display:flex;gap:27px;align-items:center;font-size:14px}.links a{text-decoration:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:24px;border:1px solid var(--ink);border-radius:4px;padding:14px 23px;text-decoration:none;font-weight:600;font-size:14px;background:var(--ink);color:white;cursor:pointer}.btn.light{background:var(--lime);color:var(--ink);border-color:var(--lime)}.btn.outline{background:transparent;color:inherit;border-color:currentColor}.wrap{max-width:1280px;margin:auto;padding:0 5vw}.hero{display:grid;grid-template-columns:1.15fr 1fr;gap:5%;padding-top:65px;padding-bottom:65px;align-items:center}.eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:2px;font-weight:700;display:flex;gap:12px;align-items:center}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#5d8152}.intro{max-width:520px;font-size:18px;line-height:1.65}.actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:30px}.textlink{font-size:14px;text-underline-offset:5px}.visual{background:var(--green);color:var(--cream);border-radius:160px 160px 7px 7px;min-height:500px;position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 25px}.visual svg{width:100%;height:330px}.visual-caption{font-size:11px;text-transform:uppercase;letter-spacing:2px;border-top:1px solid #648074;padding-top:18px;width:85%;text-align:center}.tag{position:absolute;right:18px;top:115px;color:var(--ink);background:var(--lime);border-radius:50%;width:100px;height:100px;display:grid;place-content:center;font-size:12px;font-weight:bold;text-align:center;line-height:1.3;transform:rotate(12deg)}.strip{border-block:1px solid var(--line);display:flex;justify-content:space-between;gap:18px;padding:22px 0;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.section{padding-top:95px;padding-bottom:95px}.section-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:end;margin-bottom:45px}.muted{color:#5e7068}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{border:1px solid var(--line);padding:30px;border-radius:6px;display:flex;flex-direction:column}.card .number{font-size:12px;letter-spacing:2px}.card h3{margin:30px 0 18px}.card ul{padding-left:18px;margin:10px 0 25px;font-size:14px}.card .foot{margin-top:auto;border-top:1px solid var(--line);padding-top:20px;font-size:13px}.card.feature{background:var(--lime);border-color:var(--lime)}.dark{background:var(--ink);color:var(--cream)}.dark .muted{color:#bac8bf}.dark .eyebrow{color:var(--lime)}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px}.steps{counter-reset:step}.step{border-top:1px solid #51635c;padding:23px 0;display:grid;grid-template-columns:40px 1fr;gap:15px}.step::before{counter-increment:step;content:'0' counter(step);color:var(--lime);font-size:12px}.step h3{font-size:23px;margin:0 0 10px}.step p{color:#bac8bf;font-size:14px;margin:0}.pill{display:inline-block;border:1px solid var(--line);padding:8px 14px;border-radius:30px;margin:0 6px 9px 0;font-size:13px}.path{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);margin-top:35px}.path div{padding:25px;border-right:1px solid var(--line)}.path div:last-child{border:0}.path strong{display:block;margin-bottom:10px}.path span{font-size:13px;color:#5e7068}.band{background:var(--lime);padding:55px;border-radius:5px;display:flex;justify-content:space-between;align-items:center;gap:40px}.band h2{font-size:40px;margin-top:0}.band p{margin:0;max-width:650px}.faq{max-width:900px;margin:auto}details{border-top:1px solid var(--line);padding:22px 0}summary{cursor:pointer;font-size:18px;font-weight:600}details p{margin:15px 0 0;max-width:800px;color:#5e7068}.contact{display:grid;grid-template-columns:1fr 1fr;gap:70px;background:#e9ebe2;padding:55px;border-radius:6px}label{display:block;font-size:12px;font-weight:700;margin-bottom:16px}input,select,textarea{display:block;width:100%;background:var(--cream);border:1px solid #b9c3b8;padding:12px;color:var(--ink);border-radius:3px;margin-top:6px}textarea{min-height:80px;resize:vertical}.tiny{font-size:12px;color:#5e7068}.notice{border-left:3px solid var(--orange);padding:12px 18px;background:#eee8db;font-size:13px;margin:25px 0}.footer{padding:35px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:12px}.playbook{max-width:1050px;margin:auto;padding:65px 5vw}.playbook h1{font-size:60px}.playbook h2{font-size:34px;margin-top:65px}.playbook h3{font-size:22px}.playbook table{border-collapse:collapse;width:100%;font-size:14px}.playbook td,.playbook th{padding:15px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}.playbook blockquote{margin:25px 0;background:var(--lime);padding:30px;font-size:22px;line-height:1.5}.playbook li{margin:8px 0}:focus-visible{outline:3px solid var(--orange);outline-offset:4px}@media(max-width:800px){.links a:not(.btn){display:none}.hero,.section-heading,.split,.contact{grid-template-columns:1fr;gap:30px}.hero{padding-top:40px}.visual{min-height:390px;border-radius:110px 110px 5px 5px}.visual svg{height:270px}.cards{grid-template-columns:1fr}.strip{flex-wrap:wrap}.section{padding-top:60px;padding-bottom:60px}.path{grid-template-columns:1fr 1fr}.path div{border-bottom:1px solid var(--line)}.band{padding:30px;display:block}.band .btn{margin-top:25px}.contact{padding:27px}.footer{flex-wrap:wrap}.playbook h1{font-size:42px}.playbook table{display:block;overflow:auto}nav{padding:20px 5vw}.links{gap:10px}.links .btn{padding:10px 14px}.tag{top:70px}}@media print{nav,.actions,form,.footer{display:none}body{background:white}.playbook{padding:0}h2,h3{break-after:avoid}tr,blockquote{break-inside:avoid}.playbook h2{margin-top:28px}}

/* Effi brand family: monochrome ES identity */
:root{--ink:#202020;--cream:#fff;--green:#202020;--lime:#ebebeb;--orange:#777;--line:#d7d7d7}
.logo{display:inline-flex;align-items:center;line-height:1}.logo img{display:block;width:99px;height:67px;object-fit:contain}nav{padding-top:15px;padding-bottom:15px}.muted,.tiny{color:#626262}.dot{background:#202020}.visual.brand-hero{background:#202020;border-radius:0;min-height:520px;padding:36px;color:#fff;justify-content:space-between}.brand-hero .eyebrow{font-size:9px;letter-spacing:2px;color:#bdbdbd}.hero-mark{display:block;width:85%;max-width:380px;height:auto;margin:30px 0}.brand-services{display:flex;width:85%;justify-content:space-between;font-size:9px;letter-spacing:2px;color:#ccc;margin:0 0 24px}.visual-caption{font-size:9px;letter-spacing:1.2px;border-color:#666;width:100%;color:#bdbdbd}.card.feature{background:#efefef;border-color:#d7d7d7}.card,.band,.contact,.btn{border-radius:0}.dark .eyebrow{color:#d8d8d8}.dark .muted,.step p{color:#c3c3c3}.step::before{color:#ddd}.step{border-color:#5c5c5c}.path span,details p{color:#626262}.contact{background:#f1f1f1}input,select,textarea{border-color:#bcbcbc}.notice{background:#f1f1f1;border-left-color:#202020}.dark .btn.light{background:#fff;border-color:#fff}.band{background:#efefef}.logo span{color:#202020}.footer{align-items:center}.playbook blockquote{background:#efefef}@media(max-width:800px){.logo img{width:78px;height:53px}.visual.brand-hero{min-height:420px;padding:28px}.hero-mark{max-width:300px}.visual-caption{font-size:8px}.brand-hero .eyebrow{font-size:8px}}

.brand-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.brand-grid article{padding:35px 22px;border-right:1px solid var(--line)}.brand-grid article:first-child{padding-left:0}.brand-grid article:last-child{border-right:0}.brand-grid h3{font-size:25px;min-height:56px;margin:0 0 18px}.brand-grid p{font-size:12px;color:#626262;margin:0}@media(max-width:800px){.brand-grid{grid-template-columns:1fr 1fr}.brand-grid article{padding:25px 15px!important;border-bottom:1px solid var(--line)}.brand-grid article:nth-child(2n){border-right:0}.brand-grid h3{font-size:22px}}

.client-logos{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:36px}.client-logos>div{min-height:155px;display:flex;align-items:center;justify-content:center;padding:30px;border:1px solid #e3e3e3;background:#fff}.client-logos img{width:100%;height:72px;object-fit:contain}.client-logos img.valli{width:82px;height:82px}.client-logos>div.brand-dark{background:#202020;border-color:#202020}@media(max-width:800px){.client-logos{grid-template-columns:1fr 1fr;gap:12px}.client-logos>div{padding:22px;min-height:125px}}

.client-logos{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.client-logos>div{min-height:145px;padding:23px}.client-logos img{height:78px}.client-logos img.valli{height:78px;width:82px}@media(max-width:1000px){.client-logos{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:600px){.client-logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.client-logos>div{padding:18px;min-height:120px}}

.form-actions{display:flex;gap:12px;flex-wrap:wrap}.contact .tiny a{display:inline-block;margin-top:10px;font-size:17px;text-underline-offset:4px}.footer a{text-underline-offset:3px}
/* EffiTeam: the shared home for the Effi brand family. */
.et-logo img{width:125px;height:75px;object-fit:contain}.team-hero{border:1px solid #ddd;min-height:520px;padding:30px;display:flex;align-items:center;flex-direction:column;justify-content:space-between}.team-hero>.eyebrow{font-size:9px;letter-spacing:2px}.team-hero>img{width:100%;height:360px;object-fit:contain}.team-caption{width:100%;text-align:center;border-top:1px solid #ddd;padding-top:20px;font-size:9px;letter-spacing:1.4px}.brand-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.brand-card{border:1px solid #ddd;display:flex;flex-direction:column}.brand-image{height:215px;padding:30px;border-bottom:1px solid #ddd;display:flex;align-items:center;justify-content:center}.brand-image img{width:100%;height:155px;object-fit:contain}.brand-image .e3-img{clip-path:inset(0 0 0 2%)}.brand-body{padding:28px;flex:1;display:flex;flex-direction:column}.brand-body .eyebrow{font-size:9px;letter-spacing:1.2px}.brand-body h3{margin:22px 0 18px;font-size:36px}.brand-body p{font-size:15px;color:#626262}.brand-body ul{font-size:13px;padding-left:18px;margin:0 0 30px;line-height:1.9}.brand-body .btn{margin-top:auto}.connection-list article{border-top:1px solid #666;padding:24px 0}.connection-list article>span{font-size:10px;letter-spacing:1.5px;color:#bbb}.connection-list h3{font-size:27px;margin:16px 0}.connection-list p{color:#c3c3c3;font-size:15px}.routing{border-top:1px solid #ddd}.routing a{display:flex;justify-content:space-between;align-items:center;gap:25px;text-decoration:none;padding:29px 0;border-bottom:1px solid #ddd}.routing span{font-size:24px;letter-spacing:-.6px}.routing strong{font-size:13px;white-space:nowrap}.routing a:hover strong{text-decoration:underline;text-underline-offset:5px}.team-contact{background:#202020;color:white;padding:55px;display:grid;grid-template-columns:1fr 1fr;gap:60px}.team-contact>.eyebrow{color:#ddd}.brand-contacts a{display:flex;flex-direction:column;padding:24px 0;border-top:1px solid #666;text-decoration:none;gap:8px}.brand-contacts strong{font-size:24px;font-weight:500}.brand-contacts span{font-size:15px;color:#ddd}.brand-contacts a:hover span{text-decoration:underline;text-underline-offset:4px}@media(max-width:900px){.brand-cards{grid-template-columns:1fr}.brand-card{display:grid;grid-template-columns:1fr 1.7fr}.brand-image{height:100%;border-bottom:0;border-right:1px solid #ddd}.brand-body .btn{align-self:start}}@media(max-width:600px){.et-logo img{width:95px;height:60px}.team-hero{min-height:390px;padding:24px}.team-hero>img{height:270px}.team-caption{font-size:8px;letter-spacing:.6px}.brand-card{display:flex}.brand-image{height:190px;border-right:0;border-bottom:1px solid #ddd}.brand-body{padding:25px}.team-contact{grid-template-columns:1fr;padding:28px;gap:30px}.routing a{align-items:start;flex-direction:column;gap:12px}.routing span{font-size:23px}}

.client-name{font-family:Manrope,Arial,sans-serif;font-weight:600;font-size:22px;text-align:center;line-height:1.25;letter-spacing:-.6px}.client-logos img{max-width:100%}.client-logos>div{overflow:hidden}@media(max-width:600px){.client-name{font-size:18px}}

.emblem-client a{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;gap:8px}.emblem-client img{height:70px;width:90px}.emblem-client span{font-size:12px;text-align:center}

.cleaning-detail{display:grid;grid-template-columns:1fr 1fr;gap:70px}.cleaning-detail h3{font-size:30px}.cleaning-detail p{color:#626262}.cleaning-services{padding:0;margin:0;list-style:none;border-top:1px solid #ddd}.cleaning-services li{padding:20px 0;border-bottom:1px solid #ddd}.cleaning-services strong{display:block;font-size:17px;font-weight:600}.cleaning-services span{display:block;margin-top:6px;font-size:14px;color:#626262}@media(max-width:800px){.cleaning-detail{grid-template-columns:1fr;gap:30px}}
/* EffiClean: focused property and workplace service pages. */
.hero h1{font-size:clamp(45px,5.5vw,77px)}.clean-hero{min-height:540px}.property-note{border:1px solid #626262;padding:25px}.building-illustration svg{display:block;width:100%;height:250px}.property-logo{background:white;padding:22px;display:flex;align-items:center;justify-content:space-between;gap:25px}.property-logo img{width:150px;height:50px;object-fit:contain}.property-logo span{font-size:11px;color:#626262;max-width:125px}.care-services{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #ddd;border-bottom:1px solid #ddd}.care-services article{padding:30px 22px;border-right:1px solid #ddd}.care-services article:first-child{padding-left:0}.care-services article:last-child{border:0}.care-services article>span{font-size:11px;letter-spacing:2px}.care-services h3{font-size:25px;min-height:55px;margin-top:30px}.care-services p{font-size:14px;color:#626262}.process-panel{display:grid;grid-template-columns:1fr 1fr;gap:60px;background:#efefef;padding:55px}.process-list article{display:flex;gap:25px;padding:24px 0;border-top:1px solid #ccc}.process-list article>span{font-size:11px;padding-top:6px}.process-list h3{font-size:23px;margin:0 0 12px}.process-list p{font-size:14px;color:#626262;margin:0}.clean-contact{margin:30px 0}.clean-contact a{display:block;font-size:20px;margin:10px 0;text-underline-offset:4px}.clean-contact p{font-size:14px;color:#626262}.family-link{border-top:1px solid #ddd;padding-top:30px;padding-bottom:40px;display:flex;align-items:center;justify-content:space-between;gap:25px}.family-link span{font-size:10px;letter-spacing:1.5px}.family-link p{font-size:14px;margin:0}.family-link a{font-size:14px;text-underline-offset:5px}@media(max-width:800px){.clean-hero{min-height:420px}.care-services{grid-template-columns:1fr 1fr}.care-services article{padding:22px!important;border-bottom:1px solid #ddd}.care-services article:nth-child(2n){border-right:0}.care-services h3{font-size:23px}.process-panel{grid-template-columns:1fr;gap:30px;padding:28px}.family-link{align-items:start;flex-direction:column;gap:12px}.property-logo{gap:15px}.property-logo img{width:130px}.hero h1{font-size:clamp(45px,9vw,65px)}}
