@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:#18333a;--deep:#12343a;--deep-2:#1c4146;--cream:#f7f5ee;--paper:#fffefa;--mint:#c7ddcf;--sage:#8eaea3;--coral:#deab91;--line:#dce5df;--muted:#647875;--shadow:0 24px 70px rgba(16,52,56,.16)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--cream);font-family:'DM Sans','Manrope',Arial,sans-serif;-webkit-font-smoothing:antialiased}
body,button,a{font-size:16px}
a{color:inherit;text-decoration:none}
svg{display:block}
.svg-defs{position:absolute;width:0;height:0;overflow:hidden}
.container{width:min(1200px,calc(100% - 80px));margin-inline:auto}
.skip-link{position:absolute;left:20px;top:-60px;padding:12px 18px;background:#fff;color:var(--ink);z-index:1000}
.skip-link:focus{top:10px}
:focus-visible{outline:3px solid #d99371;outline-offset:4px}
.section-pad{padding-block:125px}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:'Manrope','DM Sans',Arial,sans-serif;letter-spacing:-.055em}
h2{font-size:clamp(42px,4.3vw,68px);line-height:1.12;font-weight:700}
h1 em,h2 em,.manifesto em{font-weight:500;font-style:normal;color:#9fc8b8}
.section-kicker{font-size:12px;letter-spacing:.18em;font-weight:800;color:#47756b;margin-bottom:29px}
.kicker-number{color:#a9bdb4;margin-right:8px}

.site-header{position:absolute;inset:0 0 auto;z-index:10;color:#edf5ed}
.header-inner{height:104px;display:flex;align-items:center;gap:30px;border-bottom:1px solid rgba(230,244,236,.18)}
.wordmark{font-family:'Manrope',Arial,sans-serif;font-size:24px;font-weight:800;letter-spacing:-.075em;white-space:nowrap}
.wordmark span,.accent-dot{color:#a6d5bb}
.desktop-nav{display:flex;gap:37px;margin-left:auto;color:#d7e5dc;font-size:14px;font-weight:600}
.desktop-nav a{transition:color .2s}
.desktop-nav a:hover{color:#fff}
.header-vote{height:43px;padding:0 18px 0 20px;display:inline-flex;align-items:center;gap:17px;border:1px solid #a9cbbc;border-radius:100px;margin-left:18px;font-size:13px;font-weight:700;transition:background .2s,color .2s}
.header-vote:hover{background:#c4ddcc;color:var(--deep)}
.header-vote svg,.button svg{width:17px;height:17px}

.hero{position:relative;min-height:790px;background:radial-gradient(circle at 70% 39%,#28565a 0,transparent 37%),linear-gradient(134deg,#12343a 14%,#0d292f 100%);color:#f8f8ef;overflow:hidden}
.hero:after{content:'';position:absolute;inset:auto 0 0;height:150px;background:linear-gradient(transparent,rgba(6,29,32,.26));pointer-events:none}
.hero-grid{position:relative;z-index:2;min-height:790px;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:40px;padding-top:97px;padding-bottom:85px}
.hero-copy{max-width:660px;padding-bottom:18px}
.eyebrow{display:flex;align-items:center;gap:11px;font-size:11px;font-weight:700;letter-spacing:.15em;color:#bfd5c8;margin-bottom:34px;white-space:nowrap}
.eyebrow-dot{width:7px;height:7px;background:#a8ccb3;border-radius:50%;box-shadow:0 0 0 5px rgba(168,204,179,.12)}
.eyebrow-line{width:23px;height:1px;background:#81aa9e}
.hero h1{font-size:clamp(56px,6.05vw,91px);line-height:1.075;font-weight:700;max-width:740px;margin-bottom:27px}
.hero-lead{max-width:520px;color:#d3e2d9;font-size:18px;line-height:1.75;margin-bottom:34px}
.hero-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}
.button{display:inline-flex;justify-content:center;align-items:center;gap:27px;min-height:60px;padding:0 23px 0 27px;border-radius:100px;font-weight:800;font-size:14px;white-space:nowrap;transition:transform .2s,box-shadow .2s,background .2s}
.button:hover{transform:translateY(-3px)}
.button-primary{background:#bed8c5;color:#12343a;box-shadow:0 11px 28px rgba(0,0,0,.13)}
.button-primary:hover{background:#d2e5d4;box-shadow:0 15px 34px rgba(0,0,0,.18)}
.text-link{font-size:14px;font-weight:700;color:#e7eee7;display:inline-flex;gap:10px;align-items:center;border-bottom:1px solid rgba(231,238,231,.55);padding-bottom:6px}
.text-link span{font-size:20px;line-height:12px}
.concept-note{color:#a7bfb3;font-size:12px;letter-spacing:.02em;margin:22px 0 0}
.hero-orbit{position:absolute;border:1px solid rgba(164,205,185,.13);border-radius:50%;pointer-events:none}
.hero-orbit-one{width:920px;height:920px;right:-120px;top:-300px}
.hero-orbit-two{width:1140px;height:1140px;right:-245px;top:-405px}
.hero-footer{position:absolute;z-index:3;left:50%;transform:translateX(-50%);bottom:30px;display:flex;justify-content:space-between;color:#acc5b7;font-size:10px;letter-spacing:.18em;font-weight:700}
.hero-footer span:last-child{font-size:22px;line-height:12px}

.hero-art{position:relative;height:570px;min-width:0;display:flex;justify-content:center;align-items:center}
.art-halo{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:480px;height:480px;border-radius:50%;background:radial-gradient(circle,#729488 0,rgba(114,148,136,.24) 36%,transparent 69%);filter:blur(5px)}
.art-halo:before,.art-halo:after{content:'';position:absolute;inset:-18px;border:1px solid rgba(196,224,204,.21);border-radius:50%}
.art-halo:after{inset:-70px;border-color:rgba(196,224,204,.12)}
.phone{position:relative;width:268px;height:535px;z-index:2;background:#e4ebe4;border:7px solid #edf2ec;border-radius:39px;box-shadow:18px 32px 50px rgba(2,19,22,.39),inset 0 0 0 2px rgba(32,59,58,.12);transform:rotate(8deg)}
.phone:after{content:'';position:absolute;left:49%;bottom:8px;transform:translateX(-50%);height:4px;width:77px;background:#24413d;border-radius:8px}
.phone-notch{position:absolute;z-index:3;top:7px;left:50%;transform:translateX(-50%);width:74px;height:17px;background:#1b3336;border-radius:0 0 15px 15px}
.phone-screen{height:100%;background:#f6f7f1;border-radius:32px;overflow:hidden;padding:34px 16px 20px;color:#17373a}
.app-top{display:flex;justify-content:space-between;align-items:center;font-family:'Manrope',Arial,sans-serif;font-size:16px;font-weight:800;letter-spacing:-.06em;margin-bottom:22px}
.app-avatar{width:25px;height:25px;border-radius:50%;background:#c5ded0;display:grid;place-items:center;font-size:11px;letter-spacing:0}
.app-greeting{font-size:11px;color:#68847b;font-weight:600}
.app-greeting span{color:#d0926d}
.app-title{font-family:'Manrope',Arial,sans-serif;font-weight:800;font-size:17px;line-height:1.25;letter-spacing:-.04em;margin:4px 0 15px}
.outfit-card{padding:12px;background:#fff;border:1px solid #e3ebe4;border-radius:13px;box-shadow:0 7px 18px rgba(32,74,67,.09)}
.outfit-label{font-size:6.5px;font-weight:800;letter-spacing:.1em;color:#6b8980;margin-bottom:10px}
.outfit-items{height:160px;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 53px;gap:5px}
.clothing-tile{background:#edf3ed;border-radius:6px;display:grid;place-items:center;overflow:hidden}
.clothing-tile svg{width:100%;height:100%}
.top-tile svg{width:77%;height:90%}
.pants-tile{grid-row:1/3;grid-column:2;background:#e4eeeb}
.pants-tile svg{width:72%;height:94%}
.shoe-tile{grid-row:2;grid-column:1;background:#f1ede6}
.shoe-tile svg{width:84%;height:90%}
.outfit-bottom{display:flex;justify-content:space-between;font-size:8px;font-weight:700;margin-top:10px}
.outfit-stars{color:#bd8d72}
.app-tip{display:flex;align-items:center;gap:9px;margin:13px 0 17px;padding:11px;background:#dbece1;border-radius:8px;font-size:8px;line-height:1.4;font-weight:700}
.tip-icon{color:#457869;font-size:17px}
.app-tabbar{display:flex;justify-content:space-around;border-top:1px solid #dce4dc;padding-top:12px;color:#8fa59b;font-size:20px;line-height:1;text-align:center}
.app-tabbar span{display:flex;flex-direction:column;align-items:center;gap:3px}
.app-tabbar small{font-size:6.5px;font-weight:700}
.app-tabbar .selected{color:#1c5b4f}
.floating-card{position:absolute;z-index:4;display:flex;align-items:center;gap:10px;background:#fffefa;color:#22423d;border-radius:12px;padding:11px 14px;box-shadow:var(--shadow);min-width:175px;transform:rotate(-6deg)}
.floating-left{top:107px;left:-25px}
.floating-right{bottom:120px;right:-22px;transform:rotate(5deg)}
.floating-icon{width:34px;height:34px;display:grid;place-items:center;background:#d9e8dc;border-radius:9px;color:#497b68;flex:none}
.floating-icon svg{width:21px;height:21px}
.floating-icon.sparkle{font-size:19px}
.floating-card strong,.floating-card small{display:block}
.floating-card strong{font-size:9px;white-space:nowrap}
.floating-card small{font-size:8px;color:#728780;margin-top:2px}
.orbit-label{position:absolute;color:#bed4c5;font-size:10px;letter-spacing:.04em;white-space:nowrap}
.orbit-label-top{top:38px;right:10px;transform:rotate(11deg)}
.orbit-label-bottom{bottom:34px;left:15px;transform:rotate(-13deg)}
.mini-star{font-size:19px;vertical-align:middle;color:#b6cfb9}

.intro{background:var(--paper)}
.intro-grid{display:grid;grid-template-columns:.29fr .71fr;gap:70px}
.intro .section-kicker{padding-top:15px}
.intro h2{max-width:750px;margin-bottom:28px}
.intro h2 em{color:#71a08e}
.section-lead{max-width:840px;color:#4e6763;font-size:20px;line-height:1.8;margin-bottom:47px}
.intro-points{border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding-top:24px}
.intro-points>div{display:flex;gap:12px;align-items:flex-start}
.intro-points p{font-size:14px;line-height:1.6;font-weight:700;margin:0}
.point-mark{color:#80aa91;font-size:19px;line-height:1}

.how{background:#eff3ed}
.section-heading{max-width:690px;margin-bottom:48px}
.section-heading h2{margin-bottom:17px}
.section-heading h2 em{color:#79a894}
.section-heading p{font-size:17px;color:#657b74;line-height:1.6}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.step-card{position:relative;min-height:354px;padding:29px 30px 31px;background:#fffefa;border:1px solid #e3ebe2;border-radius:17px;overflow:hidden;transition:transform .2s,box-shadow .2s}
.step-card:hover{transform:translateY(-5px);box-shadow:0 15px 35px rgba(24,63,56,.09)}
.step-index{font-family:'Manrope',Arial,sans-serif;font-size:12px;font-weight:800;color:#9baea4}
.step-icon{width:80px;height:80px;border-radius:50%;background:#e9f0e6;display:grid;place-items:center;margin:32px 0 27px;color:#4f8270}
.step-icon svg{width:43px;height:43px}
.step-card:nth-child(2) .step-icon{background:#e4ece7}
.step-card:nth-child(3) .step-icon{background:#f2e9e0;color:#ae7f69}
.step-card h3{font-size:23px;line-height:1.3;margin-bottom:12px}
.step-card p{font-size:14px;line-height:1.7;color:#667c74;max-width:310px;margin-bottom:26px}
.step-line{position:absolute;bottom:0;left:30px;width:65px;height:4px;border-radius:4px 4px 0 0;background:#91baa5}
.step-card:nth-child(3) .step-line{background:#d1a28b}

.feature{background:#193b40;color:#f5f5ec;overflow:hidden}
.feature-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:105px}
.feature-visual{min-height:500px;position:relative;display:grid;place-items:center;background:radial-gradient(circle at 50% 48%,#8ba59a 0,#57766f 35%,#315b56 75%,#284e4d 100%);border-radius:23px;box-shadow:inset 0 0 0 1px rgba(234,249,235,.12)}
.feature-visual:before,.feature-visual:after{content:'';position:absolute;width:370px;height:370px;border:1px solid rgba(243,249,238,.13);border-radius:50%}
.feature-visual:after{width:470px;height:470px}
.visual-caption{position:absolute;left:28px;top:26px;font-size:10px;letter-spacing:.15em;font-weight:700;color:#e6f2e9}
.blazer-frame{position:relative;z-index:2;width:230px;height:275px;display:grid;place-items:center;background:#f0e7dd;border:8px solid rgba(255,255,255,.75);border-radius:16px;box-shadow:0 25px 50px rgba(12,39,37,.32);transform:rotate(-4deg)}
.blazer-frame svg{width:87%;height:91%;filter:drop-shadow(4px 8px 6px rgba(75,53,44,.15))}
.match-card{position:absolute;z-index:3;background:#f9f8ef;color:#1e433e;border-radius:10px;padding:12px 15px;font-size:11px;font-weight:800;white-space:nowrap;box-shadow:0 10px 30px rgba(8,35,34,.22)}
.match-card span{color:#5e9876;font-size:16px;vertical-align:middle;margin-right:4px}
.match-card-left{left:-14px;top:150px;transform:rotate(-5deg)}
.match-card-right{right:-25px;bottom:107px;transform:rotate(5deg)}
.feature-copy .section-kicker{color:#a9cbb8}
.feature-copy h2{margin-bottom:28px}
.feature-copy p{font-size:18px;line-height:1.75;color:#d5e4d9;max-width:525px}
.feature-rule{height:1px;width:100%;max-width:485px;background:rgba(214,232,217,.22);margin:32px 0}
.feature-copy .feature-summary{color:#e8f1e6;font-weight:700;font-size:16px}

.manifesto{padding-block:105px;background:#d6e5d8;position:relative;overflow:hidden}
.manifesto:before,.manifesto:after{content:'';position:absolute;width:280px;height:280px;border:1px solid rgba(58,108,87,.18);border-radius:50%;top:-155px;left:-105px}
.manifesto:after{width:430px;height:430px;top:auto;left:auto;right:-180px;bottom:-280px}
.manifesto-inner{text-align:center;position:relative;z-index:1}
.manifesto-symbol{font-size:44px;color:#5a9174}
.manifesto p{font-family:'Manrope',Arial,sans-serif;font-size:clamp(32px,4.2vw,60px);letter-spacing:-.055em;line-height:1.27;font-weight:700;max-width:950px;margin:17px auto 31px}
.manifesto em{color:#5b8f76}
.manifesto-small{font-size:11px;letter-spacing:.18em;color:#5f806d;font-weight:800}

.vote{background:var(--paper);overflow:hidden}
.vote-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}
.vote-copy h2{max-width:710px;margin-bottom:25px}
.vote-copy h2 em{color:#75a58c}
.vote-copy p{font-size:18px;line-height:1.7;color:#61766d;max-width:560px;margin-bottom:29px}
.button-dark{background:#183c3e;color:#f7f9f2}
.button-dark:hover{background:#2c5953;box-shadow:0 14px 25px rgba(20,61,61,.18)}
.vote-hint{display:block;margin-top:16px;color:#7b8e85;font-size:12px}
.vote-decoration{min-height:380px;display:grid;place-items:center;position:relative}
.vote-decoration:before,.vote-decoration:after{content:'';position:absolute;width:355px;height:355px;border-radius:50%;border:1px solid #d7e4d9}
.vote-decoration:after{width:455px;height:455px;border-color:#e8eee5}
.vote-circle{width:300px;height:300px;border-radius:50%;background:linear-gradient(140deg,#d7e8da,#a8cdb5);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:10px;position:relative;z-index:1;box-shadow:0 20px 50px rgba(36,95,64,.12)}
.vote-circle>span{font-family:'Manrope',Arial,sans-serif;font-weight:800;font-size:44px;letter-spacing:-.075em}
.vote-circle>span span{color:#6aab87}
.vote-circle small{font-size:10px;letter-spacing:.12em;font-weight:800}
.decoration-spark{position:absolute;z-index:2;color:#6f9e80}
.spark-one{top:12px;right:30px;font-size:38px}
.spark-two{bottom:5px;left:40px;font-size:26px}

.supporters{padding-top:100px;padding-bottom:105px;background:#edf2eb}
.supporters-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:37px}
.supporters-heading .section-kicker{margin-bottom:19px}
.supporters-heading h2{font-size:clamp(38px,4vw,57px);margin-bottom:0}
.supporters-heading>p{max-width:240px;font-size:14px;line-height:1.5;color:#7a8d80;margin:0 0 3px}
.logo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.logo-placeholder{min-height:145px;background:#fffefa;border:1px dashed #bfd0c0;border-radius:14px;color:#a0b3a5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:12px;font-weight:700;letter-spacing:.01em}
.logo-plus{font-weight:300;font-size:34px;line-height:1}
.supporters-note{font-size:12px;color:#84978b;margin:17px 0 0}
.site-footer{background:#16363b;color:#c7d9cd}
.footer-inner{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:12px}
.footer-inner .wordmark{color:#fff;font-size:22px}
.footer-inner a:last-child{font-weight:700}
.footer-inner a:last-child:hover{color:#fff}

@media(max-width:1100px){.container{width:min(100% - 60px,1200px)}.hero-grid{grid-template-columns:1fr .8fr;gap:10px}.hero h1{font-size:clamp(55px,6vw,76px)}.floating-left{left:-10px}.floating-right{right:-12px}.feature-grid{gap:60px}.match-card-left{left:-5px}.match-card-right{right:-10px}}
@media(max-width:900px){.desktop-nav{display:none}.header-vote{margin-left:auto}.hero{min-height:auto}.hero-grid{grid-template-columns:1fr;min-height:auto;padding-top:155px;padding-bottom:110px}.hero-copy{max-width:700px}.hero h1{max-width:690px}.hero-art{height:510px;margin-top:10px}.phone{transform:rotate(5deg)}.floating-left{left:calc(50% - 250px)}.floating-right{right:calc(50% - 260px)}.hero-footer{bottom:24px}.intro-grid{grid-template-columns:1fr;gap:10px}.intro .section-kicker{padding-top:0}.feature-grid{gap:30px}.feature-visual{min-height:450px}.match-card{font-size:9px}.vote-decoration{transform:scale(.85);transform-origin:center}.vote-inner{gap:15px}}
@media(max-width:680px){.container{width:calc(100% - 38px)}.section-pad{padding-block:80px}.header-inner{height:78px}.wordmark{font-size:21px}.header-vote{height:39px;font-size:12px;padding:0 13px 0 17px;gap:12px}.hero-grid{padding-top:135px;padding-bottom:75px}.eyebrow{font-size:9px;gap:7px;letter-spacing:.1em;margin-bottom:25px}.eyebrow-line{width:14px}.hero h1{font-size:clamp(47px,11vw,71px);line-height:1.08;margin-bottom:22px}.hero-lead{font-size:16px;line-height:1.65;margin-bottom:27px}.hero-actions{gap:21px}.button{min-height:55px;font-size:13px;padding-inline:20px;gap:18px}.text-link{font-size:13px}.concept-note{font-size:11px}.hero-art{height:445px;margin-top:10px}.phone{transform:rotate(7deg) scale(.77)}.art-halo{width:380px;height:380px}.floating-card{padding:8px 9px;min-width:140px;gap:6px}.floating-card strong{font-size:8px}.floating-card small{font-size:7px}.floating-icon{width:27px;height:27px}.floating-icon svg{width:17px;height:17px}.floating-left{left:0;top:90px}.floating-right{right:0;bottom:77px}.orbit-label-top{top:20px;right:5px}.orbit-label-bottom{bottom:24px;left:0}.hero-footer{font-size:8px;letter-spacing:.1em}.hero-footer span:first-child{max-width:280px}.intro h2,.section-heading h2,.feature h2,.vote h2{font-size:clamp(40px,9vw,56px)}.section-kicker{margin-bottom:20px}.section-lead{font-size:17px;line-height:1.7;margin-bottom:31px}.intro-points{grid-template-columns:1fr;gap:14px}.intro-points p{font-size:14px}.section-heading{margin-bottom:30px}.section-heading p{font-size:15px}.steps{grid-template-columns:1fr;gap:12px}.step-card{min-height:255px;padding:23px 24px 22px}.step-icon{margin:20px 0 16px;width:60px;height:60px}.step-icon svg{width:33px;height:33px}.step-card h3{font-size:22px}.step-card p{max-width:none;margin-bottom:15px}.feature-grid{grid-template-columns:1fr;gap:42px}.feature-visual{min-height:420px}.feature-copy p{font-size:16px}.feature-copy .feature-summary{font-size:15px}.manifesto{padding-block:72px}.manifesto p{font-size:clamp(32px,7.3vw,45px)}.manifesto-small{font-size:9px}.vote-inner{grid-template-columns:1fr}.vote-copy p{font-size:16px}.vote-decoration{min-height:310px;transform:scale(.72);margin:-18px 0 -45px}.supporters{padding-block:75px}.supporters-heading{display:block;margin-bottom:25px}.supporters-heading>p{margin-top:13px;max-width:none}.logo-grid{grid-template-columns:repeat(2,1fr);gap:9px}.logo-placeholder{min-height:110px}.footer-inner{min-height:125px;flex-wrap:wrap;gap:6px;padding-block:25px}.footer-inner .wordmark{width:100%}.footer-inner span{font-size:11px}.footer-inner a:last-child{font-size:11px}}
@media(max-width:390px){.eyebrow{font-size:8px}.hero h1{font-size:44px}.hero-art{height:390px}.phone{transform:rotate(7deg) scale(.69)}.floating-left{left:-7px}.floating-right{right:-8px}.orbit-label{font-size:8px}.feature-visual{min-height:375px}.blazer-frame{transform:rotate(-4deg) scale(.83)}.match-card{font-size:8px;padding:9px}.match-card-left{left:0}.match-card-right{right:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
