/* Cleaning Pros shared stylesheet: home and privacy pages. */
/* Design tokens */
:root{--bg:#e7e9f8;--bg-soft:#eff0fd;--ink:#272143;--muted:#58536d;--violet:#7462c5;--violet-dark:#46368b;--lilac:#d0b9f5;--pink:#f6b5cf;--green:#1b5833;--white:#fff;--line:rgba(85,58,139,.17);--font-display:'Lexend Zetta',sans-serif;--font-body:'Lexend',sans-serif;--s1:.25rem;--s2:.5rem;--s3:.75rem;--s4:1rem;--s6:1.5rem;--s8:2rem;--s12:3rem;--s16:4rem;--s24:6rem;--s32:8rem;--r-sm:.75rem;--r-md:1.5rem;--r-lg:2.5rem;--shadow-1:0 7px 20px rgba(99,61,175,.09),0 2px 5px rgba(120,75,182,.04);--shadow-2:0 24px 55px rgba(94,64,176,.13),0 5px 17px rgba(128,77,199,.08);--shadow-3:0 40px 85px rgba(90,52,163,.2),0 9px 28px rgba(153,88,205,.09);--ease:cubic-bezier(.2,.8,.2,1);--header-z:10}
/* Reset */
*,*::before,*::after{box-sizing:border-box}html{font-size:clamp(16px,.55vw + 11px,22px);scroll-behavior:smooth;overflow-x:clip}body{margin:0;overflow-x:clip;background:var(--bg);color:var(--ink);font-family:var(--font-body);line-height:1.7}button,a{font:inherit}a{color:inherit}img,svg{display:block;max-width:100%}::selection{background:var(--pink);color:var(--ink)}:focus-visible{outline:3px solid var(--violet-dark);outline-offset:4px}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-thumb{background:#a798cc;border-radius:1rem}html{scrollbar-color:#a798cc transparent;scrollbar-width:thin}
/* Base typography */
h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--font-display);font-weight:800;line-height:1.2;letter-spacing:-.065em;text-wrap:balance}h2{font-size:clamp(1.6rem,3.7vw,3.1rem)}h3{font-size:clamp(1.1rem,1.7vw,1.4rem);letter-spacing:-.045em}p{font-size:1rem;text-wrap:pretty}small{font-size:.875rem}.eyebrow{font-size:.8125rem;font-weight:700;letter-spacing:.19em;text-transform:uppercase;color:var(--violet-dark)}
/* Layout and container */
.container{width:min(100% - 40px,1360px);margin-inline:auto}.section{padding-block:clamp(4rem,10vw,8rem);position:relative}.section-heading{max-width:950px;margin-bottom:var(--s12)}.section-heading p{max-width:680px;color:var(--muted);margin-top:var(--s6)}.section-heading--right{margin-left:auto;text-align:right}.section-heading--right p{margin-left:auto}
/* Components */
.skip-link{position:fixed;z-index:100;top:0;left:var(--s4);transform:translateY(-150%);background:white;padding:var(--s3)}.skip-link:focus{transform:none}.site-header{position:relative;z-index:var(--header-z);padding:var(--s4) 20px 0}.site-header__pill{margin:auto;width:min(100%,1350px);display:flex;align-items:center;justify-content:space-between;gap:var(--s3);padding:var(--s2) var(--s3);border:1px solid rgba(255,255,255,.7);border-radius:999px;background:rgba(255,255,255,.54);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow-1)}.brand{display:inline-flex;align-items:center;gap:var(--s3);min-width:0;text-decoration:none;font-weight:700;white-space:nowrap}.brand img{flex:none;width:38px;height:38px;object-fit:contain;border-radius:var(--r-sm)}.brand span{overflow:hidden;text-overflow:ellipsis;font-size:1rem}.nav-button{display:inline-flex;align-items:center;gap:var(--s2);padding:var(--s2) var(--s4);min-height:44px;text-decoration:none;font-weight:700;border:1px solid var(--line);border-radius:999px;white-space:nowrap;background:rgba(255,255,255,.6);font-size:.875rem;transition:transform .2s var(--ease),background .2s var(--ease)}.nav-button:hover{transform:translateY(-2px);background:white}.nav-button[aria-current]{background:var(--violet-dark);color:white}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--s4);min-height:48px;padding:.875rem 1.75rem;border-radius:999px;text-decoration:none;font-size:.875rem;font-weight:700;position:relative;overflow:hidden;border:1px solid var(--line);transition:transform .2s var(--ease),box-shadow .2s var(--ease)}.button::after{content:'';position:absolute;inset:-100% auto -100% -60%;width:40%;transform:rotate(25deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent);transition:left .5s var(--ease)}.button:hover{transform:translateY(-3px);box-shadow:var(--shadow-2)}.button:hover::after{left:130%}.button--primary{background:linear-gradient(120deg,var(--violet-dark),var(--violet),#aa75d7);color:white;box-shadow:var(--shadow-1)}.button--ghost{background:rgba(255,255,255,.5)}.button--light{background:#fff;color:var(--violet-dark)}.progress-line{position:fixed;z-index:15;top:16%;bottom:16%;right:4px;width:3px;border-radius:999px;background:rgba(115,86,176,.13);pointer-events:none}.progress-line span{display:block;height:0;background:var(--violet-dark);border-radius:999px}.back-top{position:fixed;z-index:15;right:var(--s6);bottom:var(--s6);width:48px;height:48px;border:1px solid var(--line);border-radius:50%;background:white;box-shadow:var(--shadow-2);color:var(--ink);cursor:pointer;opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .2s var(--ease),transform .2s var(--ease)}.back-top.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.site-footer{padding:var(--s16) 0 var(--s8);border-top:1px solid var(--line);background:#d9dcf1}.footer__inner{display:flex;justify-content:space-between;gap:var(--s8)}.footer__inner p{max-width:360px;color:var(--muted);margin-top:var(--s4)}.footer__right{display:flex;flex-direction:column;align-items:flex-end;text-align:right;gap:var(--s2);max-width:380px;font-size:.875rem}.footer__right a{font-weight:700;text-underline-offset:5px}.footer__right small{color:var(--muted)}
/* Page sections */
.hero{height:100vh;height:100svh;height:100dvh;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);position:relative;isolation:isolate;background:radial-gradient(ellipse 52% 48% at 78% 65%,rgba(220,142,224,.24),transparent 90%),var(--bg)}.hero__body{min-height:0;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:calc(var(--hs,1)*min(3svh,32px));padding-block:calc(var(--hs,1)*min(3svh,32px))}.hero__copy{min-width:0;align-self:center;position:relative;z-index:1}.hero__copy h1{font-size:calc(var(--hs,1)*clamp(1.85rem,min(5vw,9svh),6.5rem));margin:.35em 0 .25em;line-height:1.13}.hero__copy p{font-size:calc(var(--hs,1)*clamp(1rem,min(1.4vw,2.6svh),1.25rem));max-width:36ch;line-height:1.5;margin-bottom:calc(var(--hs,1)*min(3svh,32px))}.hero__actions{display:flex;flex-wrap:wrap;gap:var(--s3)}.hero__guide{display:block;width:2px;height:calc(var(--hs,1)*min(8svh,75px));margin-top:var(--s6);background:linear-gradient(var(--violet),transparent)}.hero__art{height:calc(var(--hs,1)*min(46svh,600px));max-height:100%;min-height:0;display:flex;flex-direction:column;justify-content:space-between;position:relative}.hero__art-caption{font-size:.8125rem;letter-spacing:.12em;font-weight:700;color:var(--violet-dark)}.hero__art-caption--bottom{text-align:right}.ribbon-scene{flex:1;min-height:0;position:relative;perspective:1000px;overflow:clip;border-radius:var(--r-lg);background:radial-gradient(ellipse at 55% 75%,rgba(178,100,221,.28),transparent 55%);transform-style:flat}.ribbon-scene__horizon{position:absolute;inset:auto 3% 4%;height:50%;border-radius:50%;background:radial-gradient(ellipse at center,rgba(247,170,221,.62),transparent 66%);filter:blur(24px);animation:breathe 8s ease-in-out infinite}.ribbon-scene__shape{position:absolute;left:13%;top:12%;width:76%;height:76%;border-radius:48% 52% 55% 45%;border:clamp(15px,3.4vw,55px) solid transparent;box-shadow:inset 5px 7px 16px rgba(255,255,255,.65),10px 24px 34px rgba(112,62,175,.15);-webkit-mask:linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0);transform:rotateX(47deg) rotateY(-24deg) rotateZ(-35deg);animation:drift 13s ease-in-out infinite alternate}.ribbon-scene__shape--one{border-top-color:#ad82dc;border-left-color:#bc95ed;border-right-color:#eec6e6;border-bottom-color:#edb6d4}.ribbon-scene__shape--two{top:20%;left:26%;width:60%;height:64%;border-width:clamp(12px,2.8vw,45px);border-top-color:#e7abdf;border-right-color:#b9a4ee;border-bottom-color:#907ad9;border-left-color:#e8bedf;transform:rotateX(44deg) rotateY(20deg) rotateZ(35deg);animation-delay:-4s}.ribbon-scene__shape--three{top:32%;left:22%;width:48%;height:50%;border-width:clamp(10px,2vw,32px);border-top-color:#f4c4dd;border-left-color:#a999e1;border-right-color:#d4a6e9;border-bottom-color:#a676cf;transform:rotateX(58deg) rotateY(-20deg) rotateZ(-18deg);animation-delay:-8s}.fact-strip{display:flex;align-items:center;justify-content:space-between;gap:var(--s8);border-bottom:2px solid var(--violet);padding:var(--s8) 0}.fact-strip strong{font-family:var(--font-display);letter-spacing:-.07em;font-size:clamp(1.65rem,4.8vw,4.5rem);line-height:1.2}.fact-strip span{max-width:350px;font-size:1.1rem}.about__story{margin-top:var(--s12);display:grid;grid-template-columns:1fr 1fr;gap:var(--s8)}.about__story h2{grid-row:span 2}.about__story p{max-width:650px;color:var(--muted)}.section--features{background:#e0dff5}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s6);padding-bottom:var(--s16)}.feature-card{position:relative;min-width:0;padding:var(--s8);min-height:290px;border:1px solid rgba(255,255,255,.85);border-radius:var(--r-md);background:linear-gradient(145deg,rgba(255,255,255,.76),rgba(237,230,251,.6));box-shadow:var(--shadow-2);transform:translateY(var(--offset,0px));transition:box-shadow .2s var(--ease),transform .2s var(--ease);transform-style:preserve-3d}.feature-card:nth-child(3n+2){--offset:28px}.feature-card:nth-child(3n){--offset:56px}.feature-card:hover{box-shadow:var(--shadow-3);transform:translateY(calc(var(--offset,0px) - 4px))}.feature-card__no{display:flex;align-items:center;justify-content:space-between;color:var(--violet-dark);font-weight:700;margin-bottom:var(--s8)}.feature-card svg{width:35px;height:35px;fill:none;stroke:currentColor;stroke-width:1.5}.feature-card svg circle{stroke:var(--violet)}.feature-card h3{max-width:20ch}.feature-card p{font-size:.95rem;line-height:1.65;color:var(--muted)}.section--steps{background:var(--bg-soft)}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;padding-bottom:var(--s12)}.step-card{position:relative;padding:var(--s8);min-height:285px;border:1px solid rgba(132,98,203,.24);border-radius:var(--r-md);background:#fff;box-shadow:var(--shadow-1);margin-right:-15px}.step-card:nth-child(2){transform:translateY(35px)}.step-card:nth-child(3){transform:translateY(70px)}.step-card:nth-child(4){transform:translateY(105px)}.step-card span{display:block;font-size:2rem;font-weight:700;color:var(--violet);font-variant-numeric:tabular-nums}.step-card h3{margin-top:var(--s6)}.step-card p{font-size:.95rem;color:var(--muted)}.section--trust{background:#544292;color:white}.trust__inner{display:flex;gap:var(--s16);align-items:center;justify-content:space-between}.section--trust .eyebrow{color:#ead5ff}.section--trust h2{max-width:850px}.section--trust p{max-width:660px;color:#eee5ff}.trust__chips{display:flex;flex-wrap:wrap;gap:var(--s3);max-width:430px}.trust__chips span{border:1px solid rgba(255,255,255,.4);background:rgba(255,255,255,.13);border-radius:999px;padding:var(--s3) var(--s4);font-size:.875rem}.cta__inner{display:flex;gap:var(--s16);align-items:center}.cta__inner>div:last-child{max-width:850px}.cta__inner p{max-width:650px;color:var(--muted)}.cta__stamp{width:clamp(165px,23vw,320px);height:clamp(165px,23vw,320px);border-radius:50%;border:2px dashed var(--violet);outline:1px solid var(--violet);outline-offset:-15px;box-shadow:var(--shadow-2);display:grid;place-items:center;transform:rotate(-15deg);flex:none;background:radial-gradient(circle at 30% 20%,#fff,#d3cbef)}.cta__stamp span{text-align:center;line-height:1.5;font-weight:700;font-size:1.3rem;letter-spacing:.1em;color:var(--violet-dark)}
/* Privacy: solid reading surface, glow only at border */
.privacy-main{padding:var(--s16) 20px var(--s32);min-height:70svh}.legal-shell{width:min(100%,760px);margin:auto}.legal__heading{display:flex;justify-content:space-between;gap:var(--s8);align-items:end;border-left:5px solid var(--violet);padding-left:var(--s6);margin-bottom:var(--s8)}.legal__heading h1{font-size:clamp(2rem,5vw,3.4rem);margin:var(--s2) 0}.legal__app,.legal__meta{font-size:.875rem;color:var(--muted)}.legal__meta{text-align:right}.legal{border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s8);background:#f7f6ff;box-shadow:var(--shadow-2)}.legal__section{padding:var(--s4) 0 var(--s6);border-bottom:1px solid var(--line)}.legal__section:last-child{border-bottom:0;padding-bottom:0}.legal h2{font-family:var(--font-body);letter-spacing:-.035em;font-weight:700;font-size:1.3rem;margin:var(--s3) 0 var(--s4)}.legal p,.legal li{font-size:1rem;line-height:1.75;color:#353047}.legal p{margin-bottom:var(--s4)}.legal ul{padding-left:var(--s6);margin:0 0 var(--s4)}.legal li{padding-left:var(--s1);margin-bottom:var(--s2)}
/* Utilities */
.reveal{opacity:1}.js-motion .reveal:not(.is-revealed){opacity:0;translate:0 20px}.js-motion .reveal{transition:opacity .65s ease,translate .65s var(--ease)}
/* Responsive */
@media(min-width:768px){.container{width:min(100% - 64px,1360px)}}@media(min-width:1280px){.container{width:min(100% - 96px,1360px)}}
@media(max-width:1023px){.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-card:nth-child(n){--offset:0px}.feature-card:nth-child(even){--offset:24px}.steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s6);padding-bottom:0}.step-card{margin:0;min-height:0}.step-card:nth-child(n){transform:none}.trust__inner{flex-direction:column;align-items:flex-start}.trust__chips{max-width:100%}}
@media(max-width:767px){.hero__body{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);gap:var(--s2)}.hero__copy h1{font-size:calc(var(--hs,1)*clamp(1.5rem,min(8vw,7svh),3rem));margin:.3em 0}.hero__copy p{font-size:calc(var(--hs,1)*clamp(.9rem,2.6svh,1rem));line-height:1.4;max-width:42ch}.hero__art{height:calc(var(--hs,1)*min(27svh,270px));width:100%;max-width:540px;margin:auto}.hero__guide{display:none}.hero__art-caption{font-size:.75rem}.about__story{display:block}.fact-strip{align-items:start;flex-direction:column;gap:var(--s4)}.feature-grid{grid-template-columns:1fr;padding:0}.feature-card:nth-child(n){--offset:0px;min-height:0}.steps{grid-template-columns:1fr}.section-heading--right{text-align:left}.section-heading--right p{margin-left:0}.cta__inner{flex-direction:column;align-items:flex-start;gap:var(--s8)}.footer__inner{flex-direction:column}.footer__right{align-items:flex-start;text-align:left}.legal__heading{display:block}.legal__meta{text-align:left;margin-top:var(--s3)}.legal{padding:var(--s6)}.privacy-main{padding-top:var(--s12)}}
@media(max-width:480px){.brand{gap:var(--s2)}.brand span{font-size:.875rem}.brand img{width:34px;height:34px}.nav-button{padding:var(--s2) var(--s3);font-size:.8125rem}.site-header{padding:var(--s2) 12px 0}.hero__actions{gap:var(--s2)}.hero__actions .button{padding:var(--s3) var(--s4)}.hero__copy .eyebrow{font-size:.7rem}.hero__art-caption{display:none}.hero__art{height:calc(var(--hs,1)*min(28svh,240px))}.legal h2{font-size:1.15rem}}
@media(max-height:600px){.hero__body{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);grid-template-rows:1fr}.hero__copy h1{font-size:calc(var(--hs,1)*min(5.8svh,4rem));line-height:1.07}.hero__copy p{font-size:calc(var(--hs,1)*min(2.9svh,1rem));margin-bottom:var(--s2)}.hero__art{height:calc(var(--hs,1)*36svh)}.hero__guide,.hero__art-caption{display:none}.hero__actions .button{padding:var(--s2) var(--s4)}}
@media(max-height:420px){.hero__body{grid-template-columns:1fr}.hero__art{display:none}.hero__copy h1{font-size:calc(var(--hs,1)*min(8svh,3.5rem))}}
.hero--compact .hero__guide,.hero--compact .hero__actions .button--ghost,.hero--compact .hero__art-caption{display:none}
/* Motion and reduced motion */
@keyframes drift{to{transform:rotateX(50deg) rotateY(10deg) rotateZ(28deg) translate3d(4%,3%,0)}}@keyframes breathe{50%{opacity:.63;transform:scale(1.12)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none;transition:none;scroll-behavior:auto}.js-motion .reveal:not(.is-revealed){opacity:1;translate:none}}
/* Print */
@media print{.site-header,.site-footer,.progress-line,.back-top,.hero__art{display:none}.privacy-main{padding:0}.legal{box-shadow:none;border:0;padding:0}body{background:white;color:black}}
