
    :root{--pink:#e90288;--hotpink:#ff119b;--ink:#281630;--sub:#685b70;--lav:#f3edf5;--dark:#270c37;--radius:18px;--container:1200px}
    *,*::before,*::after{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;background:#15041f;color:var(--ink);font-family:'Poppins',Arial,sans-serif;font-size:16px;-webkit-font-smoothing:antialiased}
    button,input,textarea,select{font:inherit}
    button,a{-webkit-tap-highlight-color:transparent}
    a{color:inherit;text-decoration:none}
    button{cursor:pointer}
    img{display:block;max-width:100%}
    .container{width:min(var(--container),calc(100% - 48px));margin:0 auto}
    .eyebrow{color:var(--pink);font-weight:600;letter-spacing:2px;font-size:16px;line-height:1.5;margin:0 0 20px;text-transform:uppercase}
    .section-title{font-size:50px;line-height:1.17;letter-spacing:-1.8px;font-weight:700;margin:0}
    .accent{color:var(--pink)}
    .pink-bright{color:var(--hotpink)}
    .body-copy{color:var(--sub);font-size:16px;line-height:1.75;margin:0}
    .btn{border:0;min-height:56px;padding:14px 24px;display:inline-flex;gap:12px;align-items:center;justify-content:center;font-weight:600;font-size:18px;line-height:1.45;border-radius:999px;transition:background .2s,transform .2s,box-shadow .2s;white-space:nowrap}
    .btn:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(233,2,136,.22)}
    .btn:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #ff83d0;outline-offset:3px}
    .btn-primary{background:var(--pink);color:#fff}
    .btn-primary:hover{background:#ce0278}
    .nav-cta{position:relative;isolation:isolate;overflow:hidden;animation:cta-pulse 3.2s ease-in-out infinite}
    .nav-cta::before{content:"";position:absolute;z-index:0;inset:-40% auto -40% -95%;width:58%;transform:skewX(-24deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.08) 20%,rgba(255,255,255,.42) 50%,rgba(255,255,255,.08) 80%,transparent);animation:cta-shine 4.8s ease-in-out infinite;pointer-events:none}
    .nav-cta:hover{animation-play-state:paused;box-shadow:0 0 0 5px rgba(233,2,136,.22),0 12px 28px rgba(233,2,136,.3)}
    @keyframes cta-pulse{0%,100%{box-shadow:0 0 0 0 rgba(233,2,136,.28),0 8px 20px rgba(233,2,136,.12)}50%{box-shadow:0 0 0 7px rgba(233,2,136,0),0 10px 27px rgba(233,2,136,.3)}}
    @keyframes cta-shine{0%,14%{left:-95%}44%,100%{left:160%}}
    .btn-outline{border:1px solid #fff;background:transparent;color:#fff}
    .btn-outline:hover{background:rgba(255,255,255,.12)}
    .btn img{width:20px;height:20px;flex:none}
    .site-header{position:fixed;z-index:90;top:30px;left:50%;transform:translateX(-50%);width:min(1200px,calc(100% - 48px));background:rgba(79,61,89,.64);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-radius:50px;padding:10px 23px;display:flex;justify-content:space-between;align-items:center;min-height:69px;box-shadow:0 8px 30px rgba(20,8,25,.08);transition:top .2s,background .2s}
    .site-header.scrolled{top:12px;background:rgba(35,17,48,.92)}
    .brand{display:inline-flex;align-items:center;flex:none}
    .brand img{width:129px;height:24px;object-fit:contain}
    .header-brand{color:#fff}
    .header-brand img{width:129px;height:24px;object-fit:contain}
    .desktop-nav{display:flex;align-items:center;gap:52px}
    .desktop-nav>a:not(.btn){font-size:16px;font-weight:500;color:#fff;transition:color .2s}
    .desktop-nav>a:not(.btn):hover{color:#ffa3d9}
    .nav-cta{font-size:16px;min-height:49px;padding:12px 21px;gap:15px}
    .menu-toggle{display:none;background:none;border:0;color:#fff;padding:9px}
    .menu-toggle span{display:block;width:24px;height:2px;background:#fff;margin:5px 0;transition:transform .2s}
    .hero{height:100vh;height:100svh;min-height:680px;position:relative;color:#fff;overflow:hidden;background:#120e17}
    .hero::before{content:"";position:absolute;inset:0;background:url("assets/clean-house.png") center center / cover no-repeat}
    .hero::after{content:"";position:absolute;inset:0;background:linear-gradient(68deg,rgba(0,0,0,.60) 43.7%,transparent 58.6%)}
    .hero .container{height:100%;position:relative;z-index:1;display:flex;align-items:center;padding-top:48px}
    .hero-content{max-width:560px}
    .hero .eyebrow{color:#eea6d4;font-size:14px;letter-spacing:2px;margin:0 0 8px}
    .hero h1{font-size:52px;line-height:1.2;letter-spacing:-2.2px;margin:0 0 12px;font-weight:700}
    .hero-description{line-height:1.6;font-size:16px;color:#e9dceb;margin:0;max-width:560px}
    .hero-actions{display:flex;gap:12px;margin-top:32px}
    .hero-actions .btn{flex:1;padding-inline:20px}
    .hero-benefits{display:flex;align-items:center;gap:42px;margin-top:32px}
    .hero-benefit{display:flex;align-items:center;gap:10px;color:#fff;font-size:14px;line-height:1.4;white-space:nowrap}
    .hero-benefit img{width:32px;height:32px;flex:none}
    .hero-float{position:absolute;z-index:2;display:flex;align-items:center;gap:12px;padding:12px;border-radius:12px;background:rgba(37,37,37,.50);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fff;font-size:14px;line-height:1.4;box-shadow:0 7px 20px rgba(0,0,0,.05)}
    .float-icon{flex:none;width:44px;height:44px;border:1px solid #df53a4;background:rgba(167,60,133,.25);border-radius:50%;display:grid;place-items:center}
    .float-icon img{width:24px;height:24px}
    .hero-float strong{display:block;font-weight:700;white-space:nowrap}
    .hero-float small{display:block;font-size:12px;margin-top:4px;white-space:nowrap}
    .hero-float.living{top:141px;left:calc(50% - 31px)}
    .hero-float.energy{top:177px;right:12px}
    .hero-float.security{top:432px;left:calc(50% + 163px)}
    .trust{background:linear-gradient(113deg,#f6f0ff,#faf8fd);padding:80px 24px 87px;text-align:center}
    .trust .eyebrow{margin-bottom:22px}
    .trust .section-title{font-size:50px;white-space:nowrap}
    .trust .body-copy{max-width:744px;margin:12px auto 0}
    .logo-wall{display:flex;flex-direction:column;align-items:center;gap:52px;margin-top:42px}
    .logo-row{display:flex;align-items:center;justify-content:center;gap:100px;min-height:100px;width:100%}
    .logo-row img{width:100px;height:100px;object-fit:contain;flex:none}
    .logo-row--primary img:nth-child(1){width:119px}
    .logo-row--primary img:nth-child(2){width:120px}
    .logo-row--primary img:nth-child(3){width:154px}
    .logo-row--secondary{gap:48px}
    .logo-row--secondary img{width:253px;height:100px}
    .logo-row--secondary img:last-child{width:197px}
    .logo-row--tertiary{gap:72px}
    .logo-row--tertiary img{width:auto;height:116px;max-width:249px}
    .opportunity{padding:100px 0;background:#f3edf5}
    .opportunity-grid{display:grid;grid-template-columns:1fr 1fr;gap:62px;align-items:stretch}
    .opportunity h2{max-width:574px;margin:0 0 16px}
    .opportunity .intro{line-height:1.6;margin-bottom:24px}
    .pain-list{display:grid;gap:20px}
    .pain-card{background:#fff;border:1px solid #eea6d4;border-radius:14px;display:flex;align-items:center;gap:20px;padding:23px 19px}
    .pain-card img{width:72px;height:72px;flex:none}
    .pain-card h3{font-size:22px;line-height:1.34;margin:0 0 6px}
    .pain-card p{font-size:16px;line-height:1.66;color:#705a75;margin:0}
    .takeaway{border-left:6px solid var(--pink);padding:3px 0 3px 12px;margin:26px 0 0;font-size:20px;line-height:1.5;font-weight:600}
    .opportunity-image{border-radius:32px;min-height:740px;overflow:hidden;background:#d7cdd8}
    .opportunity-image img{width:100%;height:100%;object-fit:cover}
    .interactive{height:330vh;height:330svh;position:relative;background:#17101d;color:#fff}
    .interactive-sticky{height:100vh;height:100svh;position:sticky;top:0;overflow:hidden}
    .interactive-bg{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:max(100vw,177.778svh);height:max(100svh,56.25vw);background:#1c1720}
    .interactive-video{width:100%;height:100%;object-fit:fill;display:block}
    .interactive-sticky::before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgba(17,10,29,.76) 0%,rgba(17,10,29,.62) 29%,rgba(17,10,29,.18) 65%,rgba(17,10,29,.12) 100%);pointer-events:none}
    .interactive .container{position:relative;z-index:2;height:100vh;height:100svh;padding-top:100px;padding-bottom:70px}
    .scroll-cue{position:absolute;z-index:5;left:0;bottom:30px;display:flex;flex-direction:column;align-items:center;gap:13px;font-size:12px;font-weight:600;letter-spacing:.19em;text-transform:uppercase;color:#f4ddeb;writing-mode:vertical-rl;pointer-events:none}
    .scroll-cue-track{display:block;position:relative;width:2px;height:56px;border-radius:3px;background:rgba(255,255,255,.35);overflow:hidden}
    .scroll-cue-track::after{content:"";position:absolute;top:-20px;left:0;width:2px;height:22px;background:#f5219d;box-shadow:0 0 9px #f5219d;animation:scroll-cue-drop 1.45s ease-in-out infinite}
    @keyframes scroll-cue-drop{0%{transform:translateY(0);opacity:0}20%{opacity:1}80%{opacity:1}100%{transform:translateY(78px);opacity:0}}
    .scroll-progress{position:absolute;bottom:0;left:0;right:0;height:4px;background:rgba(255,255,255,.22);z-index:6}
    .scroll-progress span{display:block;height:100%;width:0;background:#ec168f;transform-origin:left}
    .interactive-copy{position:relative;z-index:3;max-width:560px;transition:opacity .24s ease,transform .35s ease}
    .interactive.is-switching .interactive-copy{opacity:.55;transform:translateY(6px)}
    .interactive-copy h2{font-size:50px;line-height:1.1;letter-spacing:-1.8px;margin:0 0 20px}
    .interactive-copy p{font-size:16px;line-height:1.6;margin:0;max-width:560px}
    .phone-mockup{position:absolute;z-index:2;left:107px;right:auto;bottom:24px;width:283px;height:min(560px,calc(100svh - 240px));padding:0;display:flex;justify-content:center;align-items:flex-end}
    .phone-mockup img{display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom}
    .phone-mockup img.phone-incoming{position:absolute;inset:0;opacity:0;transform:translateY(14px) scale(.985);transition:opacity .48s ease,transform .58s cubic-bezier(.2,.7,.2,1)}
    .phone-mockup img.phone-incoming.visible{opacity:1;transform:translateY(0) scale(1)}
    .interactive-tabs{position:absolute;right:0;bottom:70px;z-index:5;display:flex;gap:12px;align-items:center;background:rgba(40,22,48,.20);border-radius:50px;padding:8px 12px;backdrop-filter:blur(8px)}
    .interactive-tab{border:1px solid transparent;background:transparent;border-radius:50px;padding:14px 26px;display:inline-flex;align-items:center;gap:12px;font-size:16px;font-weight:600;color:#fff;white-space:nowrap;transition:background .2s}
    .interactive-tab.active{background:linear-gradient(164deg,#dd0783 47%,#770447 109%);border-color:#ef9ad4}
    .interactive-tab img{width:24px;height:24px}
    .home-hotspots{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:max(100vw,177.778svh);height:max(100svh,56.25vw);z-index:4;pointer-events:none}
    .home-hotspot{position:absolute;display:flex;align-items:center;gap:8px;background:rgba(37,37,37,.54);border-radius:12px;padding:8px 16px;box-shadow:0 8px 20px rgba(233,2,136,.40);color:#fff;white-space:nowrap;transition:opacity .3s,transform .4s cubic-bezier(.2,.7,.2,1)}
    .home-hotspot[hidden]{display:none!important}
    .interactive.is-intro .home-hotspot{opacity:0}
    .interactive.is-switching .home-hotspot{opacity:0;transform:translateY(8px) scale(.96)}
    .home-hotspot strong{font-size:16px;font-weight:500;line-height:1.4}
    .home-hotspot small{display:block;font-size:12px;line-height:1.4;margin-top:2px}
    .home-hotspot img{width:27px;height:27px;padding:6px;object-fit:contain;border-radius:50%;background:rgba(167,60,133,.25);border:1px solid #df53a4}
    .home-hotspot.ac{left:48%;top:45.8%}
    .home-hotspot.light{left:55%;top:25%}
    .home-hotspot.curtain{left:74%;top:20.6%}
    .home-hotspot.door{left:auto;right:11%;top:60.1%}
    .interactive .phone-mockup img:not(.phone-incoming){transition:opacity .2s}
    .interactive[data-mode="security"] .home-hotspot.ac{left:46%;top:44.2%}
    .interactive[data-mode="security"] .home-hotspot.light{left:65%;top:26%}
    .interactive[data-mode="security"] .home-hotspot.curtain{left:auto;right:11%;top:60%}
    .interactive[data-mode="energy"] .home-hotspot.ac{left:48.2%;top:45%}
    .interactive[data-mode="energy"] .home-hotspot.light{left:64%;top:15%}
    .interactive[data-mode="energy"] .home-hotspot.curtain{left:auto;right:2%;top:60%}
    .interactive[data-mode="energy"] .home-hotspot.door{left:auto;right:2%;top:49%}
    .case-study{padding:100px 0;background:#f3edf5}
    .case-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;margin-bottom:42px}
    .case-heading .eyebrow{margin-bottom:26px}
    .case-heading .body-copy{max-width:401px;line-height:1.6}
    .case-grid{display:grid;grid-template-columns:573fr 591fr;gap:36px;align-items:stretch}
    .case-image{width:100%;height:440px;min-height:0;overflow:hidden;border-radius:24px}
    .case-image img{width:100%;height:100%;object-fit:cover}
    .case-card{border-radius:18px;background:#fff;padding:31px;height:440px;min-height:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between}
    .case-card .eyebrow{margin-bottom:12px}
    .case-card h3{font-size:52px;letter-spacing:-2px;line-height:1.16;margin:0}
    .case-card .muted{font-size:14px;color:#948999;margin:0;line-height:1.65}
    .metric-row{display:flex;align-items:center;gap:30px;width:100%;padding:18px 0;border-top:1px solid #e4dce8;border-bottom:1px solid #e4dce8}
    .metric-row .metric+ .metric{border-left:1px solid #e4dce8;padding-left:30px}
    .metric strong{display:block;font-size:41px;line-height:1.2;font-weight:600;color:#000;letter-spacing:-1px}
    .metric small{display:block;color:#948999;font-size:14px;line-height:1.65}
    .case-card .btn{font-size:18px;min-height:53px}
    .faq{padding:100px 0 240px;background:#faf8fb}
    .faq-grid{display:grid;grid-template-columns:530px 1fr;gap:86px}
    .faq .eyebrow{margin-bottom:24px}
    .faq .section-title{margin-bottom:24px}
    .faq details{border-top:1px solid #e8dfea;padding:19px 0 20px}
    .faq details:last-child{border-bottom:1px solid #e8dfea}
    .faq summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:18px;font-weight:600;line-height:1.48;cursor:pointer}
    .faq summary::-webkit-details-marker{display:none}
    .faq summary::after{content:"+";color:#a73c85;font-size:23px;font-weight:500;line-height:1;min-width:32px;text-align:center}
    .faq details[open] summary::after{content:"−"}
    .faq details p{font-size:16px;line-height:1.72;color:var(--sub);margin:13px 25px 0 0}
    .contact{background:#270c37;color:#fff;padding:100px 0 200px}
    .contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start}
    .contact .eyebrow{color:#eea6d4;margin-bottom:27px}
    .contact h2{font-size:56px;line-height:1.14;letter-spacing:-2px;margin:0 0 25px}
    .contact-intro{max-width:441px;font-size:16px;line-height:1.75;color:#e0ccea;margin:0 0 42px}
    .value-list{display:grid;gap:32px;max-width:455px}
    .value-item{display:flex;gap:20px;align-items:center}
    .value-item img{width:50px;height:50px;flex:none}
    .value-item strong{display:block;font-size:18px;line-height:1.4}
    .value-item p{font-size:14px;line-height:1.4;color:rgba(255,255,255,.8);margin:8px 0 0}
    .enquiry-form{background:#fff;color:var(--ink);border-radius:18px;padding:40px 34px 38px}
    .enquiry-form h3{font-size:29px;line-height:1.37;margin:0 0 12px}
    .form-intro{font-size:14px;color:#786b7b;line-height:1.6;margin:0 0 20px}
    .fields{display:grid;gap:20px}
    .fields-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
    .field{display:flex;flex-direction:column;gap:8px;min-width:0}
    .field label{font-size:14px;line-height:1.4;font-weight:600}
    .field input,.field select,.field textarea{border:1px solid #dcd3df;background:#faf8fb;border-radius:8px;width:100%;font-size:14px;line-height:1.5;color:var(--ink);padding:13px 14px;min-height:49px;outline-color:#e90288}
    .field select{appearance:none;-webkit-appearance:none;padding-right:48px;background-image:url('assets/8b885.svg');background-repeat:no-repeat;background-size:20px 20px;background-position:right 17px center;cursor:pointer}
    .field textarea{min-height:127px;resize:vertical}
    .field input::placeholder,.field textarea::placeholder{color:#948999}
    .phone-field{display:flex;align-items:center;min-width:0;min-height:49px;border:1px solid #dcd3df;background:#faf8fb;border-radius:8px;overflow:hidden;transition:border-color .2s,box-shadow .2s}
    .phone-field:focus-within{border-color:#e90288;box-shadow:0 0 0 2px rgba(233,2,136,.13)}
    .phone-field .phone-prefix{display:flex;align-items:center;flex:none;gap:8px;font-size:14px;font-weight:600;padding:0 0 0 14px;white-space:nowrap}
    .phone-prefix img{width:20px;height:20px;border-radius:50%;object-fit:cover;flex:none}
    .phone-country-control{position:relative;display:flex;align-items:center;align-self:stretch;flex:none;gap:7px;min-width:114px;padding:0 10px 0 12px;border-right:1px solid #e6dfe8;color:#281630}
    .phone-country-control img{width:23px;height:16px;object-fit:cover;border-radius:2px;box-shadow:0 0 0 1px rgba(40,22,48,.1);flex:none}
    .phone-country-control .phone-flag-fallback{display:none;width:23px;height:16px;align-items:center;justify-content:center;font-size:19px;line-height:16px;flex:none}
    .phone-country-control .phone-dial{font-size:14px;font-weight:600;line-height:1.2;white-space:nowrap}
    .phone-country-control svg{width:12px;height:12px;color:#6f6275;flex:none;margin-left:auto}
    .phone-country-control select{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer;font-size:16px}
    .phone-country-control select:focus-visible{outline:2px solid #6a3977;outline-offset:-2px;border-radius:4px}
    .reveal-target{transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
    .js-motion .reveal-target:not(.is-visible){opacity:0;transform:translateY(34px)}
    .js-motion .reveal-target.is-visible{opacity:1;transform:translateY(0)}
    .js-motion .case-grid .reveal-target:nth-child(2){transition-delay:.1s}
    .js-motion .text-reveal:not(.is-visible){opacity:0;filter:blur(12px);transform:translateY(24px)}
    .js-motion .text-reveal.is-visible{animation:text-blur-reveal .68s cubic-bezier(.2,.8,.2,1) both}
    @keyframes text-blur-reveal{0%{opacity:0;filter:blur(12px);transform:translateY(24px)}45%{opacity:.92;filter:blur(3px)}100%{opacity:1;filter:blur(0);transform:translateY(0)}}
    .js-motion .support-reveal:not(.is-visible){opacity:0;filter:blur(6px);transform:translateY(16px)}
    .js-motion .support-reveal.is-visible{animation:support-reveal-in .52s cubic-bezier(.2,.8,.2,1) both;animation-delay:var(--support-delay,.14s)}
    @keyframes support-reveal-in{from{opacity:0;filter:blur(6px);transform:translateY(16px)}to{opacity:1;filter:blur(0);transform:translateY(0)}}
    .field .phone-field input{flex:1 1 0;min-width:0;width:0;min-height:47px;border:0;border-radius:0;background:transparent;padding:12px 14px 12px 8px;outline:none;box-shadow:none}
    .submit{width:100%;margin-top:20px;font-weight:700}
    .form-consent{display:flex;align-items:flex-start;gap:10px;margin:19px 0 0;color:#56465a;font-size:14px;line-height:1.5;cursor:pointer}
    .form-consent input{width:17px;height:17px;flex:none;margin:3px 0 0;accent-color:#c9188a;cursor:pointer}
    .form-consent input[aria-invalid="true"]{outline:2px solid #c83758;outline-offset:2px}
    .form-note{color:#685b70;font-size:14px;line-height:1.5;margin:12px 0 0}
    .form-status{font-size:14px;color:#705a75;line-height:1.5;margin:9px 0 0}
    .form-status:empty{display:none}
    .form-status.is-error{color:#a72243}
    .form-status a{color:#8e1365;font-weight:700;text-decoration:underline;text-underline-offset:2px}
    .field [aria-invalid="true"]{border-color:#c83758}
    .whatsapp-link{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:56px;margin-top:15px;padding:14px 24px;border:1px solid #a5dda2;border-radius:999px;background:#e6ffda;color:#176b3e;font-size:18px;font-weight:700;line-height:1.45;text-align:center;transition:background .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease}
    .whatsapp-link:hover,.whatsapp-link:focus-visible{background:#d8f6cb;border-color:#63c376;box-shadow:0 8px 22px rgba(23,107,62,.18);transform:translateY(-2px)}
    .whatsapp-link svg{width:18px;height:18px;flex:none}
    .site-footer{position:relative;background:#15041f;color:#dccce2;padding:100px 0 20px}
    .footer-main{display:flex;justify-content:space-between;gap:54px}
    .footer-brand{max-width:330px;flex:none}
    .footer-brand .brand{margin-bottom:15px}
    .footer-brand strong{display:block;font-size:15px;color:#fff;line-height:1.4}
    .footer-brand p{font-size:14px;color:rgba(255,255,255,.5);line-height:1.4}
    .footer-links{display:flex;gap:65px}
    .footer-links h3{font-size:16px;line-height:1.8;margin:0 0 12px;color:#dccce2}
    .footer-links a,.footer-links p{display:block;font-size:14px;line-height:1.8;margin:0 0 4px;color:#dccce2}
    .footer-links a:hover{color:#ff80c5}
    .footer-contact{max-width:333px}
    .contact-line{display:flex;align-items:flex-start;gap:12px;margin-bottom:8px}
    .contact-line img{width:20px;height:20px;flex:none;margin-top:3px}
    .footer-bottom{border-top:1px solid #503a5b;text-align:center;color:#bca9c5;padding-top:12px;margin-top:60px;font-size:14px;line-height:1.6}
    .privacy-settings{border:0;background:none;color:inherit;text-decoration:underline;text-underline-offset:3px;font-size:14px;cursor:pointer;margin-left:12px}
    .tracking-banner{position:fixed;z-index:150;left:50%;bottom:18px;transform:translateX(-50%);width:min(760px,calc(100% - 32px));display:flex;align-items:center;gap:28px;padding:20px 22px;background:#fff;color:#281630;border:1px solid #eaddea;border-radius:18px;box-shadow:0 16px 52px rgba(22,3,30,.26)}
    .tracking-banner[hidden]{display:none}
    .tracking-banner-copy{flex:1;min-width:0}
    .tracking-banner h2{font-size:17px;line-height:1.4;margin:0 0 5px}
    .tracking-banner p{font-size:14px;line-height:1.55;color:#685b70;margin:0}
    .tracking-banner-actions{display:flex;gap:9px;flex:none}
    .tracking-banner button{border-radius:999px;padding:12px 18px;min-height:44px;font-size:14px;font-weight:600;white-space:nowrap}
    .tracking-allow{background:#e90288;color:#fff;border:1px solid #e90288}
    .tracking-reject{background:#fff;color:#281630;border:1px solid #cfc1d5}
    @media(max-width:700px){.tracking-banner{display:block;padding:19px 20px}.tracking-banner-actions{margin-top:14px}.tracking-banner button{flex:1;padding:11px 10px}}
    .final-cta{position:relative;z-index:2;background:#190a23 url("assets/clean-house.png") center / cover no-repeat;color:#fff;border-radius:24px;text-align:center;max-width:1200px;margin:-120px auto 0;padding:50px 30px;overflow:hidden}
    .final-cta::before{content:"";position:absolute;inset:0;background:rgba(20,5,29,.65)}
    .final-cta>*{position:relative}
    .final-cta .eyebrow{color:#eea6d4;margin:0 0 24px}
    .final-cta h2{font-size:50px;line-height:1.17;letter-spacing:-1.8px;margin:0 auto 12px;max-width:950px}
    .final-cta p:not(.eyebrow){font-size:20px;line-height:1.75;max-width:900px;margin:0 auto 24px}
    .final-cta .btn{min-width:338px;min-height:64px}
    @media(max-width:1350px){
      .hero-float.energy{right:2%}
      .hero-float.living{left:57%}
      .hero-float.security{left:68%}
      .trust .section-title{white-space:normal}
      .logo-row{gap:clamp(20px,6vw,100px)}
      .faq-grid{grid-template-columns:43% 1fr;gap:6%}
      .interactive-tab{padding-inline:20px}
    }
    @media(max-width:1100px){
      .section-title,.trust .section-title,.interactive-copy h2{font-size:clamp(34px,4.5vw,50px)}
      .interactive-copy{max-width:48%}
      .phone-mockup{left:9.5%;right:auto}
      .desktop-nav{gap:26px}
      .hero-float{display:none}
      .hero::after{background:linear-gradient(90deg,rgba(0,0,0,.65),rgba(0,0,0,.2) 100%)}
      .hero .container{padding-top:60px}
      .opportunity-grid{gap:32px}
      .opportunity h2{font-size:43px}
      .pain-card h3{font-size:19px}
      .opportunity-image{min-height:710px}
      .case-card{padding:26px}
      .case-card h3{font-size:46px}
      .metric-row{gap:16px}
      .metric-row .metric+.metric{padding-left:16px}
      .metric strong{font-size:32px}
      .contact-grid{gap:38px}
      .contact h2{font-size:47px}
      .footer-main{gap:28px}
      .footer-brand{max-width:240px}
      .footer-links{gap:30px}
      .interactive-tabs{right:0}
    }
    @media(max-width:800px){
      .container{width:min(100% - 40px,600px)}
      .site-header{top:16px;width:calc(100% - 32px);padding:8px 14px;min-height:58px}
      .site-header.scrolled{top:8px}
      .brand img{width:113px;height:auto}
      .menu-toggle{display:block}
      .desktop-nav{display:none;position:absolute;top:calc(100% + 10px);left:0;right:0;border-radius:20px;background:#2d1740;padding:18px;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 12px 26px rgba(20,0,30,.23)}
      .desktop-nav.open{display:flex}
      .desktop-nav>a:not(.btn){padding:12px 10px}
      .desktop-nav .btn{margin-top:10px}
      .hero{min-height:100vh;min-height:100svh;height:auto}
      .hero::before{background-position:62% center}
      .hero::after{background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.35)),linear-gradient(0deg,rgba(0,0,0,.25),transparent)}
      .hero .container{min-height:100vh;min-height:100svh;padding:138px 0 90px;align-items:center}
      .hero h1{font-size:clamp(36px,8vw,52px);letter-spacing:-1.6px}
      .hero-content{max-width:620px}
      .hero-actions{flex-wrap:wrap}
      .hero-actions .btn{flex:1 1 210px}
      .hero-benefits{gap:20px;flex-wrap:wrap}
      .hero-benefit{font-size:12px}
      .hero-benefit img{width:28px;height:28px}
      .trust{padding:75px 0}
      .logo-wall{gap:22px;margin-top:40px}
      .logo-row,.logo-row--secondary,.logo-row--tertiary{gap:16px;flex-wrap:wrap}
      .logo-row img,.logo-row--primary img:nth-child(1),.logo-row--primary img:nth-child(2),.logo-row--primary img:nth-child(3),.logo-row--secondary img,.logo-row--secondary img:last-child,.logo-row--tertiary img{width:clamp(90px,24vw,150px);height:84px;max-width:none}
      .opportunity,.case-study{padding:76px 0}
      .contact{padding:76px 0 180px}
      .opportunity-grid,.case-grid,.contact-grid,.faq-grid{grid-template-columns:1fr}
      .opportunity-image{height:440px;min-height:0}
      .opportunity h2{font-size:40px}
      .opportunity-grid{gap:36px}
      .pain-card{padding:18px}
      .pain-card img{width:58px;height:58px}
      .takeaway{font-size:18px}
      .interactive{height:320svh}
      .interactive .container{width:calc(100% - 48px);height:100svh;padding-top:72px;padding-bottom:40px}
      .interactive-bg{left:calc(50% + 60px);width:1440px;height:801px}
      .interactive-sticky::before{background:linear-gradient(180deg,rgba(17,10,29,.76),rgba(17,10,29,.22) 65%,rgba(17,10,29,.40))}
      .interactive-copy{max-width:100%}
      .interactive-copy h2{font-size:32px}
      .interactive-copy p{max-width:520px}
      .phone-mockup{position:absolute;left:50%;right:auto;bottom:104px;transform:translateX(-50%);width:min(214px,26.8svh);height:min(387px,48.6svh);margin-top:0}
      .home-hotspot{display:none}
      .interactive-tabs{left:50%;right:auto;bottom:40px;transform:translateX(-50%);display:grid;grid-template-columns:1.2fr 1fr 1.05fr;width:calc(100vw - 32px);max-width:358px;gap:6px;padding:8px}
      .interactive-tab{min-width:0;width:100%;justify-content:center;gap:3px;padding:8px 2px;font-size:11px}
      .interactive-tab img{width:18px;height:18px;flex:none}
      .scroll-cue{display:none}
      .case-heading{display:block}
      .case-heading .body-copy{margin-top:20px}
      .case-image{height:340px;min-height:0}
      .case-card{height:auto;min-height:420px}
      .faq{padding:78px 0 190px}
      .faq-grid{gap:34px}
      .faq .section-title{max-width:480px}
      .enquiry-form{padding:29px 22px}
      .contact h2{font-size:42px}
      .footer-main{display:block}
      .footer-links{display:grid;grid-template-columns:1fr 1fr;gap:35px 20px;margin-top:42px}
      .footer-contact{grid-column:1/-1}
      .site-footer{padding-top:75px}
      .final-cta{width:calc(100% - 40px);padding:40px 22px;margin-top:-105px}
      .final-cta h2{font-size:36px;letter-spacing:-1.2px}
      .final-cta p:not(.eyebrow){font-size:16px}
    }
    @media(max-width:480px){
      .eyebrow{font-size:12px;letter-spacing:1.8px}
      .section-title,.trust .section-title{font-size:34px;letter-spacing:-1.1px}
      .hero h1{font-size:39px}
      .hero .eyebrow{font-size:12px}
      .hero-description{font-size:15px}
      .hero-actions{display:grid;grid-template-columns:1fr}
      .hero-actions .btn{width:100%;min-height:54px}
      .hero-benefits{gap:14px 18px}
      .hero-benefit{font-size:12px}
      .logo-row,.logo-row--secondary,.logo-row--tertiary{gap:8px}
      .logo-row img,.logo-row--primary img:nth-child(1),.logo-row--primary img:nth-child(2),.logo-row--primary img:nth-child(3),.logo-row--secondary img,.logo-row--secondary img:last-child,.logo-row--tertiary img{width:calc(33.333% - 10px);height:72px}
      .opportunity h2{font-size:34px}
      .pain-card{gap:14px}
      .pain-card img{width:48px;height:48px}
      .pain-card h3{font-size:17px}
      .pain-card p{font-size:14px}
      .opportunity-image{height:350px}
      .interactive-copy h2{font-size:32px}
      .interactive-copy p{font-size:14px}
      .phone-mockup{width:min(214px,26.8svh)}
      .interactive-tab{font-size:11px;gap:3px;padding:8px 2px}
      .interactive-tab img{width:18px;height:18px}
      .case-card{height:auto;min-height:430px}
      .case-card h3{font-size:45px}
      .metric strong{font-size:29px}
      .metric-row{gap:12px}
      .metric-row .metric+.metric{padding-left:12px}
      .metric small{font-size:11px}
      .faq summary{font-size:16px}
      .fields-two{grid-template-columns:1fr;gap:20px}
      .contact h2{font-size:38px}
      .contact-intro{font-size:15px}
      .value-list{gap:25px}
      .footer-links{grid-template-columns:1fr 1fr}
      .final-cta .btn{min-width:0;width:100%}
      .final-cta h2{font-size:32px}
    }
    @media(max-width:360px){
      .phone-mockup{bottom:94px}
      .interactive-tabs{gap:2px;padding:6px}
      .interactive-tab{font-size:10px;gap:2px;padding:6px 2px}
      .interactive-tab img{width:16px;height:16px}
    }
    @media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:0s!important;animation-duration:0s!important}.js-motion .reveal-target:not(.is-visible),.js-motion .text-reveal:not(.is-visible),.js-motion .support-reveal:not(.is-visible){opacity:1;transform:none;filter:none}}
  

/* INTLIFE Variant A — approved copy review and metrics-first refinement */
.hero-content{max-width:635px}
.hero h1{font-size:clamp(37px,3.55vw,52px);letter-spacing:-1.8px;line-height:1.16}
.hero-actions .btn{font-size:14px;padding:16px 14px;text-align:center;white-space:normal}
.opportunity{padding:100px 0 104px;background:#f5eff7}
.rev-section-heading{max-width:840px;margin-bottom:35px}
.opportunity .rev-section-heading h2{max-width:800px;font-size:clamp(34px,3.9vw,52px);line-height:1.18;margin:12px 0 0;letter-spacing:-1.3px}
.rev-benefit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.rev-benefit-card{display:flex;flex-direction:column;position:relative;overflow:hidden;background:#fff;border:1px solid #e8d8e9;border-radius:22px;padding:30px 32px;min-height:295px;box-shadow:0 12px 36px rgba(52,16,67,.03);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.rev-benefit-card:before{content:"";position:absolute;top:0;left:34px;height:4px;width:48px;background:#e90288;border-radius:0 0 10px 10px}
.rev-benefit-card:hover,.rev-pay-card:hover{transform:translateY(-3px);border-color:#eab8d7;box-shadow:0 15px 34px rgba(80,22,77,.075)}
.rev-card-icon{width:54px;height:54px;border-radius:16px;background:#fbf1f7;border:1px solid #f1dbe9;box-shadow:none;display:grid;place-items:center;margin:0 0 16px;flex:none}
.rev-card-icon img{display:block;width:25px;height:25px;object-fit:contain;filter:brightness(0) saturate(100%) invert(24%) sepia(81%) saturate(3931%) hue-rotate(303deg) brightness(93%) contrast(97%)}
.rev-benefit-index{font-size:13px;font-weight:700;letter-spacing:.09em;color:#b789b4;margin-bottom:14px}
.rev-benefit-card h3{font-size:clamp(22px,2.15vw,27px);letter-spacing:-.5px;line-height:1.27;color:#281630;margin:0 0 12px}
.rev-benefit-card p{font-size:15px;line-height:1.75;color:#685b70;margin:0}
.rev-why-pays{padding:105px 0 108px;background:#fff}
.rev-why-pays h2{font-size:clamp(38px,4.4vw,58px);line-height:1.14;letter-spacing:-1.6px;margin:12px 0 36px;color:#281630}
.rev-pay-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch}
.rev-pay-card{display:flex;flex-direction:column;align-items:flex-start;background:#f9f6fa;border:1px solid #eee7f0;border-radius:19px;padding:28px 26px 27px;min-height:325px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.rev-pay-card:nth-child(1),.rev-pay-card:nth-child(2){background:#f8f0f6}
.rev-pay-card .rev-card-icon{width:50px;height:50px;border-radius:15px;margin-bottom:16px}
.rev-pay-card .rev-card-icon img{width:24px;height:24px}
.rev-pay-card .rev-pay-number{font-size:13px;letter-spacing:.09em;color:#c579a6;font-weight:700;margin-bottom:21px}
.rev-pay-card h3{color:#281630;font-size:clamp(21px,1.85vw,25px);line-height:1.2;letter-spacing:-.55px;margin:0 0 13px;font-weight:700}
.rev-pay-card h3 .rev-pay-metric{display:block;font-size:clamp(42px,3.75vw,53px);line-height:1.05;letter-spacing:-2px;color:#cf1684;margin-bottom:6px;font-weight:700}
.rev-pay-card h3 .rev-pay-headline{display:block;font-size:clamp(20px,1.65vw,24px);line-height:1.2}
.rev-pay-card .rev-pay-estimate{display:inline-flex;align-items:center;border:1px solid #ead4e3;color:#8c607d;background:#fff6fc;font-size:12px;font-weight:650;padding:5px 10px;border-radius:100px;margin:-2px 0 15px}
.rev-pay-card p{font-size:14px;line-height:1.65;color:#675c6f;margin-top:auto}
.rev-pay-footnote{font-size:12px;line-height:1.5;color:#8d8090;margin:19px 0 0}
.case-study .case-heading .body-copy{max-width:450px}
.case-study .case-grid{grid-template-columns:1fr 1.14fr;align-items:stretch}
.case-study .case-image{height:auto;min-height:610px}
.case-study .case-card{height:auto;min-height:610px;gap:20px;justify-content:flex-start;padding:34px}
.case-study .case-card h3{font-size:clamp(27px,2.8vw,39px);letter-spacing:-1.1px;line-height:1.19;margin-bottom:10px}
.case-study .case-card .rev-case-meta{font-size:13px;line-height:1.6;color:#9a778f;margin:0 0 10px}
.case-study .case-card .metric-row{gap:18px;padding:14px 0}
.case-study .case-card .metric-row .metric+.metric{padding-left:18px}
.case-study .case-card .metric strong{font-size:34px}
.case-study .case-card .rev-case-detail{font-size:14px;line-height:1.72;color:#6b5a71;margin:0}
.case-study .case-card .btn{margin-top:auto;font-size:14px;max-width:100%;padding:12px 20px;white-space:normal;text-align:center}
/* App screenshot: slightly larger without overlapping the copy above it */
@media(min-width:801px){.interactive .phone-mockup{width:260px!important;height:min(495px,calc(100svh - 325px))!important;left:clamp(70px,8vw,110px)!important;bottom:30px!important}}
@media(min-width:481px) and (max-width:800px){.interactive .phone-mockup{width:201px!important;height:min(375px,calc(100svh - 365px))!important;bottom:92px!important;left:50%!important}}
@media(max-width:480px){.interactive .phone-mockup{width:186px!important;height:min(350px,calc(100svh - 365px))!important;bottom:90px!important;left:50%!important}}
@media(max-height:620px){.interactive .phone-mockup{height:min(300px,calc(100svh - 345px))!important}}
@media(max-width:1100px){.rev-pay-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rev-pay-card{min-height:270px}}
@media(max-width:800px){.hero .container{padding-top:144px;padding-bottom:80px}.hero h1{font-size:clamp(35px,6vw,47px)}.rev-benefit-card{min-height:0;padding:30px}.case-study .case-grid{grid-template-columns:1fr}.case-study .case-image{height:340px;min-height:0}.case-study .case-card{min-height:0}}
@media(max-width:600px){.rev-benefit-grid,.rev-pay-grid{grid-template-columns:1fr}.opportunity,.rev-why-pays{padding:75px 0}.rev-benefit-card{padding:28px;min-height:0}.rev-pay-card{padding:28px;min-height:0}.rev-pay-card p{margin-top:4px}.rev-pay-card h3 .rev-pay-metric{font-size:45px}.case-study .case-card{padding:27px}.case-study .case-card .metric strong{font-size:28px}.hero h1{font-size:clamp(34px,8vw,40px)}}
/* Elementor Canvas/fullwidth hosts must not constrain the embedded landing. */
body.intlife-landing-active{margin:0;background:#15041f}
body.intlife-landing-active .elementor-widget-shortcode > .elementor-widget-container,body.intlife-landing-active .elementor-shortcode{margin:0;padding:0;width:100%}
body.intlife-landing-active .e-con:has(> .elementor-element .intlife-root){padding:0;max-width:none;gap:0}


/* INTLIFE 1.0.1 — full-bleed inside a WordPress/Elementor page container.
   Content inside the landing retains its normal 1200px max-width. */
body.intlife-landing-active .intlife-root {
  position: relative;
  display: block;
  width: 100vw !important;
  width: 100dvw !important;
  max-width: none !important;
  min-width: 0;
  margin-left: calc(50% - 50vw) !important;
  margin-left: calc(50% - 50dvw) !important;
  margin-right: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50dvw) !important;
}
body.intlife-landing-active .elementor-widget-shortcode,
body.intlife-landing-active .elementor-widget-shortcode > .elementor-widget-container,
body.intlife-landing-active .elementor-shortcode {
  max-width: none;
  min-width: 0;
  padding: 0;
  margin-top: 0;
  margin-bottom: 0;
}
body.intlife-landing-active { overflow-x: clip; }
/* Correct internal header spacing without changing the WordPress page width. */
body.intlife-landing-active .intlife-root .hero-content {max-width:635px}
body.intlife-landing-active .intlife-root .hero h1 {font-size:clamp(36px,3.8vw,52px);line-height:1.16}
@media(max-width:800px){body.intlife-landing-active .intlife-root .hero h1 {font-size:clamp(34px,6.2vw,44px)}}
@media(max-width:480px){body.intlife-landing-active .intlife-root .hero h1 {font-size:clamp(34px,8vw,40px)}}


/* INTLIFE WP / Elementor v1.0.2: explicit typography and color hierarchy.
   Theme/Elementor global typography can otherwise turn unaccented headings
   white or normal-weight, making parts of the approved copy unreadable. */
body.intlife-landing-active .intlife-root {
  color: #281630;
  font-family: 'Poppins', Arial, sans-serif;
}
body.intlife-landing-active .intlife-root h1,
body.intlife-landing-active .intlife-root h2,
body.intlife-landing-active .intlife-root h3,
body.intlife-landing-active .intlife-root .section-title {
  font-family: 'Poppins', Arial, sans-serif !important;
  font-weight: 700 !important;
  text-transform: none;
}
body.intlife-landing-active .intlife-root .opportunity .rev-section-heading h2,
body.intlife-landing-active .intlife-root .trust .section-title,
body.intlife-landing-active .intlife-root .case-study .section-title,
body.intlife-landing-active .intlife-root .faq .section-title,
body.intlife-landing-active .intlife-root .rev-why-pays h2,
body.intlife-landing-active .intlife-root .rev-pay-card h3,
body.intlife-landing-active .intlife-root .rev-benefit-card h3,
body.intlife-landing-active .intlife-root .case-card h3 {
  color:#281630 !important;
}
body.intlife-landing-active .intlife-root .hero h1,
body.intlife-landing-active .intlife-root .interactive-copy h2,
body.intlife-landing-active .intlife-root .contact h2,
body.intlife-landing-active .intlife-root .final-cta h2 {
  color:#fff !important;
}
body.intlife-landing-active .intlife-root h1 .accent,
body.intlife-landing-active .intlife-root h2 .accent,
body.intlife-landing-active .intlife-root .section-title .accent,
body.intlife-landing-active .intlife-root .opportunity .section-title .accent {
  color:#e90288 !important;
}
body.intlife-landing-active .intlife-root h2 .pink-bright,
body.intlife-landing-active .intlife-root .section-title .pink-bright {
  color:#ff119b !important;
}
body.intlife-landing-active .intlife-root .rev-pay-card .rev-pay-metric {
  color:#cf1684 !important;
  font-weight:700 !important;
}
body.intlife-landing-active .intlife-root .faq h2,
body.intlife-landing-active .intlife-root .rev-why-pays h2 {
  letter-spacing: -1.5px;
}
/* Interactive app: reserve the real rendered copy height + comfortable gap.
   JS updates the custom property when Poppins loads, screen changes, and mode switches. */
body.intlife-landing-active .intlife-root .interactive .phone-mockup {
  width:260px !important;
  height:min(495px, max(0px, calc(100svh - var(--intlife-comfort-safe-top, 315px) - 32px))) !important;
  max-height:calc(100svh - var(--intlife-comfort-safe-top, 315px) - 32px) !important;
  bottom:32px !important;
  left:clamp(70px, 8vw, 110px) !important;
}
@media (max-width:800px) {
  body.intlife-landing-active .intlife-root .interactive .phone-mockup {
    left:50% !important;
    width:201px !important;
    height:min(375px, max(0px, calc(100svh - var(--intlife-comfort-safe-top, 245px) - 96px))) !important;
    max-height:calc(100svh - var(--intlife-comfort-safe-top, 245px) - 96px) !important;
    bottom:96px !important;
  }
}
@media (max-width:480px) {
  body.intlife-landing-active .intlife-root .interactive .phone-mockup {
    width:186px !important;
    height:min(350px, max(0px, calc(100svh - var(--intlife-comfort-safe-top, 245px) - 90px))) !important;
    max-height:calc(100svh - var(--intlife-comfort-safe-top, 245px) - 90px) !important;
    bottom:90px !important;
  }
}
/* WP widgets should not add extra top spacing to our first section. */
body.intlife-landing-active .intlife-root,
body.intlife-landing-active .intlife-root > main,
body.intlife-landing-active .intlife-root > main > .hero {
  margin-top:0 !important;
}
