@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Staatliches&family=Adelle+Sans+Devanagari:wght@400;500;600&display=swap');
:root{--ink:#182632;--coral:#ef6954;--paper:#f8f8f4;--muted:#536069;--line:#d9dedb;--mint:#dce7de}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit}p{margin:0 0 1.2em}h1,h2,h3{font-family:Manrope,Arial,sans-serif;font-weight:500;line-height:1.13;margin:0;letter-spacing:-.045em}h1{font-size:clamp(3rem,5.1vw,5.9rem)}h2{font-size:clamp(2.3rem,3.5vw,4rem)}h3{font-size:1.5rem}em{font-style:normal;color:var(--coral)}header{height:104px;display:flex;justify-content:space-between;align-items:center;padding:0 5%;border-bottom:1px solid var(--line);background:var(--paper);position:relative;z-index:10}.wordmark{font-family:Manrope,Arial,sans-serif;font-size:2rem;font-weight:800;letter-spacing:-.075em;display:inline-flex;align-items:center}.wordmark span{font-weight:450}.wordmark i{font-size:2.7rem;color:var(--coral);font-style:normal;margin-left:8px;line-height:1}nav{display:flex;align-items:center;gap:32px;font-size:14px;font-weight:550}nav a:hover,nav .active{color:#b23c2b}.nav-contact{border:1px solid var(--ink);border-radius:100px;padding:11px 23px}.menu{display:none}.hero{padding-top:65px}.hero-copy{padding:0 5% 55px}.eyebrow{font-size:12px;font-weight:650;letter-spacing:.13em;margin-bottom:26px}.hero h1{max-width:1100px}.hero-bottom{display:flex;align-items:end;justify-content:space-between;margin-top:32px}.hero-bottom p{max-width:480px;color:var(--muted);margin:0;font-size:17px}.button{display:inline-flex;gap:35px;justify-content:space-between;align-items:center;background:var(--ink);color:white;padding:16px 25px;border-radius:100px;font-weight:550;font-size:15px;transition:background .2s,transform .2s}.button:hover{background:#374b5b;transform:translateY(-2px)}.button span{font-size:21px;line-height:1}.hero-image{height:470px;position:relative;overflow:hidden;margin:0 2%}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center 48%}.image-caption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;padding:65px 3% 25px;color:white;background:linear-gradient(transparent,#101c2aba);font-size:13px}.image-caption span:first-child{letter-spacing:.1em}.ticker{padding:29px 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);font-size:15px;letter-spacing:.09em}.ticker b{color:var(--coral);font-size:26px;line-height:1}.section{padding:100px 7%}.intro{display:grid;grid-template-columns:1.2fr 1fr;gap:12%}.intro-copy{padding-top:44px;color:var(--muted)}.intro-copy .large{font-size:28px;line-height:1.4;color:var(--ink);letter-spacing:-.025em}.text-link{display:inline-block;font-weight:550;border-bottom:1px solid;padding-bottom:5px;margin-top:15px;color:var(--ink)}.services{background:#eef0eb}.section-heading{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:50px}.section-heading>p{max-width:350px;color:var(--muted);margin:0}.service{border-top:1px solid #c9d0c9;padding:28px 0;display:grid;grid-template-columns:50px 1.1fr 1fr 30px;align-items:center;gap:20px;transition:padding .2s}.service:last-child{border-bottom:1px solid #c9d0c9}.service:hover{padding-left:12px}.service p{margin:0;color:var(--muted);font-size:15px}.num{font-size:12px;letter-spacing:.08em;font-weight:500}.arrow{font-size:25px}.venture{display:grid;grid-template-columns:1fr 1fr;background:var(--ink);color:white}.venture-title{background:var(--coral);color:var(--ink);padding:70px 14%;display:flex;flex-direction:column;justify-content:space-between;min-height:510px}.cheer-word{font-weight:750;font-size:clamp(2.3rem,4.4vw,5rem);letter-spacing:-.055em;line-height:1}.cheer-word span{display:block;font-size:13px;letter-spacing:.38em;margin-top:22px}.venture-note{font-size:15px}.venture-copy{padding:70px 12%}.venture-copy h2{margin-bottom:25px}.venture-copy p{color:#c2cbd1}.venture-copy .button{background:var(--paper);color:var(--ink);margin:10px 0 30px}.steps{border-top:1px solid #4a5660;display:flex;gap:20px;justify-content:space-between;padding-top:22px;font-size:12px}.network-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.network-card{background:var(--mint);padding:38px;transition:transform .2s}.network-card:hover{transform:translateY(-4px)}.network-card h3{font-size:clamp(2.5rem,4vw,4.5rem);margin:45px 0 25px}.network-card p{color:#465750}.network-card.dark{background:#263d4b;color:white}.network-card.dark p{color:#cad6dc}.network-brand{display:flex;justify-content:space-between;padding-top:35px;font-size:19px;font-weight:550}.partner-section{padding-top:10px}.partners{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;margin-top:50px}.partner{border-top:1px solid var(--line);padding-top:25px;display:flex;flex-direction:column}.partner h3{margin:24px 0 18px;font-size:23px}.partner p{color:var(--muted);font-size:15px;flex:1}.partner>span:last-child{font-size:14px;text-decoration:underline;text-underline-offset:5px;margin-top:20px}.closing{padding:80px 7%;background:var(--coral)}.closing h2{font-size:clamp(2.8rem,5.3vw,6rem);margin-bottom:35px}.closing.compact{display:flex;align-items:center;justify-content:space-between;gap:30px}.closing.compact h2{font-size:clamp(2.5rem,4vw,4.5rem);margin:0}footer{background:var(--ink);color:white;padding:55px 5% 24px}.footer-top{display:flex;justify-content:space-between;align-items:start;gap:30px}.footer-top p{font-size:20px;line-height:1.4;letter-spacing:-.02em}.footer-top>a:last-child{font-size:15px;border-bottom:1px solid #a3aeb6;padding-bottom:5px}.footer-bottom{border-top:1px solid #46535d;margin-top:48px;padding-top:23px;display:flex;justify-content:space-between;gap:20px;color:#c1cbd3;font-size:12px}.page-hero{padding:80px 7%;border-bottom:1px solid var(--line)}.page-hero h1{max-width:1100px}.page-lead{margin-top:40px;max-width:690px;font-size:20px;color:var(--muted)}.editorial{padding:0 7% 50px}.editorial-row{display:grid;grid-template-columns:1fr 1.3fr;gap:10%;padding:60px 0;border-bottom:1px solid var(--line);scroll-margin-top:30px}.editorial-row h2{font-size:32px;margin-top:22px;letter-spacing:-.03em}.editorial-row p{color:var(--muted);font-size:18px}.editorial-row p:first-child{color:var(--ink);font-size:24px;line-height:1.4}.wide-image{margin:0 7%}.wide-image img{width:100%;max-height:500px;object-fit:cover;display:block}.wide-image figcaption{font-size:12px;padding:12px 0;color:var(--muted)}.contact-hero h1{font-size:clamp(4rem,10vw,10rem)}.coral{color:var(--coral)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;padding:50px 7%;gap:24px}.contact-card{background:var(--ink);color:white;padding:42px;display:block}.contact-card.light{background:var(--mint);color:var(--ink)}.contact-card h2{margin:35px 0 65px}.email{font-size:clamp(1rem,2vw,1.6rem);border-bottom:1px solid;padding-bottom:5px}.address{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-top:45px}.address h2{font-size:32px}.address p{font-size:15px;margin-top:20px}.skip{position:absolute;left:20px;top:-100px;z-index:100;background:white;padding:10px}.skip:focus{top:10px}:focus-visible{outline:3px solid #c74328;outline-offset:5px}img{max-width:100%}
@media(min-width:1600px){body{max-width:1900px;margin:auto}}@media(max-width:1000px){nav{gap:18px}.hero-image{height:390px}.partners{grid-template-columns:1fr 1fr}.service{grid-template-columns:35px 1.1fr 1fr 20px}.service h3{font-size:20px}.venture-title,.venture-copy{padding:50px 9%}.steps{flex-wrap:wrap}.section{padding:75px 6%}.section-heading{gap:25px}.section-heading>p{max-width:260px}.intro{gap:7%}header{height:88px}.wordmark{font-size:1.8rem}}
@media(max-width:760px){header{height:80px;padding:0 6%}.menu{display:flex;align-items:center;gap:15px;background:none;border:1px solid #b6c0c4;border-radius:100px;padding:8px 15px;font-size:14px}nav{display:none;position:absolute;top:80px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:var(--paper);border-bottom:1px solid var(--line);padding:12px 6% 25px;box-shadow:0 10px 20px #18263215}nav.open{display:flex}nav a{padding:15px 0}.nav-contact{text-align:center;margin-top:10px}.hero{padding-top:40px}.hero-copy{padding:0 6% 38px}.hero h1{font-size:clamp(2.5rem,7.6vw,3.7rem);line-height:1.15}.eyebrow{font-size:11px;letter-spacing:.1em;margin-bottom:22px}.hero-bottom{display:block;margin-top:25px}.hero-bottom p{font-size:16px}.hero-bottom .button{margin-top:25px}.hero-image{height:330px;margin:0}.image-caption{padding:45px 6% 20px;gap:20px;font-size:11px}.image-caption span:last-child{max-width:140px;text-align:right}.ticker{font-size:10px;padding:20px 6%;letter-spacing:.03em;gap:10px}.ticker b{font-size:19px}.section{padding:58px 6%}.intro{grid-template-columns:1fr;gap:20px}.intro-copy{padding-top:10px}.intro-copy .large{font-size:24px}.section-heading{display:block;margin-bottom:32px}.section-heading p{max-width:none;margin-top:24px}.service{grid-template-columns:25px 1fr 20px;gap:12px;padding:22px 0}.service h3{font-size:19px;letter-spacing:-.03em}.service p{grid-column:2;font-size:14px}.service .arrow{grid-column:3;grid-row:1}.venture{grid-template-columns:1fr}.venture-title{min-height:300px;padding:35px 6%}.cheer-word{font-size:clamp(3rem,11vw,5rem)}.venture-copy{padding:40px 6%}.venture-copy h2{font-size:36px}.steps{gap:12px}.network-grid{grid-template-columns:1fr}.network-card{padding:28px}.network-card h3{margin-top:35px;font-size:44px}.partners{gap:35px 22px;margin-top:35px}.partner h3{font-size:20px}.partner p{font-size:14px}.partner>span:last-child{font-size:13px}.closing{padding:55px 6%}.closing h2{font-size:clamp(2.5rem,8vw,4rem)}.closing.compact{display:block}.closing.compact h2{margin-bottom:28px}.footer-top{flex-direction:column}.footer-top p{font-size:20px}.footer-bottom{display:grid;grid-template-columns:1fr 1fr;font-size:11px;gap:16px}.page-hero{padding:50px 6%}.page-hero h1{font-size:clamp(2.6rem,9vw,4.3rem)}.page-lead{font-size:18px;margin-top:25px}.editorial{padding:0 6% 25px}.editorial-row{grid-template-columns:1fr;gap:25px;padding:38px 0}.editorial-row h2{font-size:28px;margin-top:12px}.editorial-row p{font-size:17px}.editorial-row p:first-child{font-size:21px}.contact-hero h1{font-size:5rem}.contact-grid{grid-template-columns:1fr;padding:30px 6%}.contact-card{padding:30px}.contact-card h2{margin:25px 0 40px}.email{font-size:21px}.address{grid-template-columns:1fr;gap:30px}.wide-image{margin:0}.wide-image figcaption{padding-left:6%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* EllieMiya: Playful Bloom identity */
:root{--ink:#251a40;--coral:#7455b5;--paper:#fff;--muted:#655973;--line:#e4ddeb;--mint:#caf4f4;--purple:#8872c9;--pink:#fcc8f2;--turquoise:#32c0d3}
body{font-family:'DM Sans',Arial,sans-serif}h1,h2,h3{font-family:'Staatliches','Arial Narrow',Impact,sans-serif;font-weight:400;letter-spacing:.012em;line-height:1.02}h2{font-size:clamp(2.8rem,4.5vw,5rem)}h3{font-size:1.8rem}p{line-height:1.65}header{height:116px;border:0;padding:14px 5%}.wordmark{width:118px;height:86px;display:flex;align-items:center;flex-shrink:0}.wordmark img{width:100%;height:100%;object-fit:contain}.wordmark i{display:none}nav{font-size:14px;gap:28px}nav a:hover,nav .active{color:#6a4aa9}.nav-contact{background:var(--pink);border:0;color:var(--ink);padding:13px 25px}.hero{background:var(--purple);display:grid;grid-template-columns:1.15fr 1fr;gap:5%;padding:66px 5% 70px;border-radius:0 0 72px 0;align-items:center;overflow:hidden}.hero-copy{padding:0}.hero .eyebrow{color:var(--ink);font-weight:700;letter-spacing:.11em}.hero h1{font-size:clamp(4.4rem,7.8vw,8.8rem);line-height:.98;color:white;letter-spacing:.005em}.hero h1 em{color:var(--pink)}.hero-bottom{display:block;margin-top:26px}.hero-bottom p{color:#fff;max-width:440px;font-size:17px;line-height:1.6}.hero-bottom .button{margin-top:25px;background:var(--pink);color:var(--ink)}.button{border:1px solid transparent;font-size:15px;padding:15px 25px;gap:32px;background:var(--ink);color:white;box-shadow:none}.button:hover{background:#4a3273;transform:translateY(-3px)}.hero-bottom .button:hover{background:white}.hero-image{height:510px;width:100%;margin:0;overflow:visible;isolation:isolate;transform:rotate(2deg)}.hero-image>img{height:100%;width:100%;object-fit:cover;object-position:60% center;border:9px solid white;border-radius:160px 160px 22px 22px}.image-caption{border-radius:0 0 20px 20px;bottom:9px;left:9px;right:9px;gap:15px;padding:55px 20px 20px;font-size:11px}.image-caption span:first-child{font-size:10px;max-width:155px}.image-caption span:last-child{max-width:145px;text-align:right}.hero-sticker{position:absolute;z-index:2;right:-14px;top:-27px;width:120px;height:120px;display:flex;align-items:center;justify-content:center;flex-direction:column;background:var(--pink);color:var(--ink);border-radius:50%;font-family:'Staatliches',Impact,sans-serif;font-size:26px;line-height:.95;text-align:center;transform:rotate(10deg);box-shadow:0 5px 0 #251a401a}.hero-sticker span{font-size:19px;margin-top:7px}.ticker{background:var(--turquoise);color:var(--ink);margin-top:0;border:0;padding:24px 6%;font-family:'Staatliches',Impact,sans-serif;font-size:24px;letter-spacing:.07em}.ticker b{color:var(--ink);font-family:Arial;font-size:22px}.section{padding:96px 7%}.intro{gap:10%;grid-template-columns:1.2fr 1fr}.intro h2{font-size:clamp(3rem,4.8vw,5.4rem)}.intro-copy .large{font-weight:550;font-size:28px}.intro-copy{padding-top:42px}.text-link{border-bottom:2px solid var(--turquoise)}.services{background:#f5effb;border-radius:60px 60px 0 0}.section-heading>p{font-size:16px}.service{border-color:#d6cbe6;grid-template-columns:55px 1.1fr 1fr 30px;padding:27px 0}.service h3{font-size:28px}.service .num{background:white;border:1px solid #d6cbe6;width:34px;height:34px;border-radius:50%;display:grid;place-items:center}.service:last-child{border-color:#d6cbe6}.service:hover{color:#6b48a4}.service .arrow{color:#7155ac}.venture{background:var(--ink)}.venture-title{background:var(--turquoise);color:var(--ink);border-radius:0 80px 0 0;padding:65px 12%}.cheer-word{font-family:'DM Sans',Arial,sans-serif;font-weight:750;letter-spacing:-.065em;font-size:clamp(2.5rem,4.7vw,5.5rem)}.cheer-word span{font-family:'DM Sans';letter-spacing:.35em;font-weight:600}.venture-copy{padding:65px 12%}.venture-copy h2{color:var(--pink);font-size:clamp(3rem,4.8vw,5.5rem)}.venture-copy p{color:#eee4f6}.venture-copy .button{background:var(--pink);color:var(--ink)}.steps{border-color:#68567b;color:#ead7f4}.network-card{background:var(--pink);border-radius:30px 30px 75px 30px;padding:38px;color:var(--ink)}.network-card h3{font-size:clamp(3rem,4.9vw,5.5rem)}.network-card p{color:#54425f}.network-card.dark{background:var(--purple);color:white;border-radius:30px 75px 30px 30px}.network-card.dark p{color:white}.network-card .num{font-weight:650}.network-brand{font-size:18px}.partner-section{padding-top:0}.partners{gap:20px}.partner{border:0;border-radius:22px;padding:25px 22px;background:#f4f0fa;transition:transform .2s}.partner:hover{transform:translateY(-5px)}.partner:nth-child(2){background:#dcf6f8}.partner:nth-child(3){background:#ffedf9}.partner:nth-child(4){background:#eaf0fc}.partner h3{font-size:28px}.partner>span:last-child{font-size:13px;text-decoration-thickness:1px}.closing{background:var(--pink);position:relative;padding:75px 7%;border-radius:70px 0 0 0}.closing h2{font-size:clamp(3.2rem,6vw,6.8rem);line-height:1.02}.closing .eyebrow{font-weight:650}.closing.compact h2{max-width:740px;font-size:clamp(3rem,4.5vw,5rem)}footer{background:var(--ink);padding-top:55px}.footer-top .wordmark{width:150px;height:100px}.footer-top p{color:var(--pink);font-size:23px}.footer-bottom{border-color:#655575;color:#e6dced}.page-hero{background:#f4edfa;border:0;border-radius:0 0 70px 0;position:relative;padding:70px 7%}.page-hero h1{font-size:clamp(3.7rem,6.5vw,7.2rem);max-width:1050px;color:#6544a1}.page-hero .eyebrow{color:var(--ink)}.page-lead{max-width:780px;margin-top:30px;font-size:19px;color:#544465}.editorial-row{padding:55px 0;gap:8%;grid-template-columns:1fr 1.5fr}.editorial-row .num{border-radius:50%;background:var(--pink);color:var(--ink);display:grid;place-items:center;width:42px;height:42px;font-size:13px}.editorial-row:nth-child(2n) .num{background:var(--mint)}.editorial-row h2{font-size:38px;letter-spacing:.01em}.editorial-row p{font-size:17px}.editorial-row p:first-child{font-size:24px;font-weight:500;color:#6c49a6}.wide-image{padding-top:35px}.wide-image img{border-radius:28px}.wide-image figcaption{color:var(--muted)}.contact-hero{background:var(--turquoise);border-radius:0 0 70px 0}.contact-hero h1{color:var(--ink);font-size:clamp(5rem,10vw,11rem)}.contact-hero .page-lead{color:#2c4655}.contact-card{border-radius:30px;background:var(--purple);color:white}.contact-card.light{background:var(--pink)}.contact-card h2{font-size:clamp(2.6rem,4vw,4.5rem);margin:35px 0 50px}.contact-card .email{font-size:clamp(1rem,2vw,1.6rem)}.address h2{font-size:40px}.coral{color:#7551b4}:focus-visible{outline-color:#6544a1}footer :focus-visible,.venture :focus-visible{outline-color:var(--pink)}
@media(max-width:1050px){.hero{gap:4%;padding:55px 5%}.hero h1{font-size:7.8vw}.hero-image{height:470px}.hero-sticker{right:-8px;width:105px;height:105px;font-size:23px}.section{padding:75px 6%}.partner-section{padding-top:0}.partners{grid-template-columns:1fr 1fr}.venture-title,.venture-copy{padding:50px 9%}.service h3{font-size:25px}nav{gap:20px}}
@media(max-width:760px){header{height:100px;padding:10px 6%}.wordmark{width:94px;height:75px}nav{top:100px;background:white}.menu{border:0;background:var(--pink);color:var(--ink);padding:10px 17px}.hero{grid-template-columns:1fr;padding:36px 6% 44px;gap:40px;border-radius:0 0 42px 0;overflow:hidden}.hero h1{font-size:clamp(4.1rem,14.5vw,7rem)}.hero .eyebrow{font-size:11px}.hero-bottom{margin-top:20px}.hero-bottom p{font-size:16px;max-width:460px}.hero-bottom .button{margin-top:22px}.hero-image{height:360px;max-width:460px;margin:auto;width:96%;transform:rotate(1.5deg)}.hero-image>img{border-width:7px;border-radius:120px 120px 20px 20px}.hero-sticker{width:98px;height:98px;top:-14px;right:-6px;font-size:23px}.image-caption{bottom:7px;left:7px;right:7px;font-size:10px;padding:40px 14px 15px}.image-caption span:first-child{font-size:9px;max-width:110px}.ticker{font-size:clamp(13px,3.5vw,19px);gap:10px;letter-spacing:.03em;padding:20px 5%}.ticker b{font-size:14px}.section{padding:55px 6%}.intro{grid-template-columns:1fr;gap:20px}.intro h2{font-size:clamp(2.8rem,10vw,4.8rem)}.intro-copy{padding-top:0}.intro-copy .large{font-size:24px}.services{border-radius:35px 35px 0 0}.service{grid-template-columns:34px 1fr 20px;gap:12px;padding:22px 0}.service h3{font-size:24px}.service p{font-size:14px;line-height:1.55}.service .num{width:28px;height:28px;font-size:11px}.section-heading h2{font-size:clamp(2.7rem,9vw,4rem)}.venture-title{min-height:270px;border-radius:0 55px 0 0;padding:35px 6%}.cheer-word{font-size:clamp(3rem,11.5vw,5rem)}.venture-copy{padding:40px 6%}.venture-copy h2{font-size:3.5rem}.network-card{padding:28px;border-radius:24px 24px 55px 24px}.network-card h3{font-size:3.5rem}.network-card.dark{border-radius:24px 55px 24px 24px}.partner-section{padding-top:0}.partners{gap:15px}.partner{padding:22px 17px;border-radius:18px}.partner h3{font-size:25px;margin:18px 0 15px}.partner p{font-size:14px}.partner>span:last-child{font-size:12px}.closing{padding:50px 6%;border-radius:40px 0 0 0}.closing h2{font-size:clamp(2.8rem,10vw,4.5rem)}.closing.compact h2{font-size:2.8rem}.footer-top .wordmark{width:135px;height:93px}.footer-top p{font-size:21px}.page-hero{padding:44px 6%;border-radius:0 0 40px 0}.page-hero h1{font-size:clamp(3rem,11vw,5rem)}.page-lead{font-size:17px;margin-top:22px}.editorial-row{grid-template-columns:1fr;padding:35px 0;gap:22px}.editorial-row h2{font-size:32px;margin-top:15px}.editorial-row p:first-child{font-size:22px}.editorial-row p{font-size:16px}.contact-hero h1{font-size:clamp(4rem,14vw,6rem)}.contact-card{border-radius:24px}.contact-card h2{font-size:2.8rem;margin:25px 0 35px}.contact-card .email{font-size:20px}.address h2{font-size:34px}.wide-image{padding:20px 6% 0}.wide-image img{border-radius:20px}.wide-image figcaption{padding-left:0}}
@media(max-width:370px){.partners{grid-template-columns:1fr}.hero h1{font-size:14vw}.hero-image{height:300px}.ticker{font-size:12px}}

/* Custom EllieMiya arrows: a rounded, rising stroke shared across every link. */
.icon-arrow{display:inline-block;width:1.35rem;height:1.35rem;flex-shrink:0;vertical-align:-.24em;overflow:visible;pointer-events:none;transition:transform .22s cubic-bezier(.2,.7,.3,1)}
.icon-arrow--right{rotate:45deg}
.nav-contact{display:inline-flex;align-items:center;justify-content:center;gap:.7em}
.button>.icon-arrow{width:1.5rem;height:1.5rem}
.text-link>.icon-arrow,.footer-top>a>.icon-arrow,.email>.icon-arrow{margin-left:.35em}
.partner>span:last-child>.icon-arrow{width:1.1em;height:1.1em;margin-left:.2em;vertical-align:-.2em}
.service .arrow{display:flex;align-items:center;justify-content:center;line-height:0}
.service .arrow>.icon-arrow{width:1.75rem;height:1.75rem}
.network-brand{align-items:center;gap:.75rem}
a:is(:hover,:focus-visible) .icon-arrow{transform:translate(2px,-2px)}
a:is(:hover,:focus-visible) .icon-arrow--right{transform:translate(3px,0)}
@media(max-width:760px){.service .arrow>.icon-arrow{width:1.25rem;height:1.25rem}}
@media(prefers-reduced-motion:reduce){.icon-arrow{transition:none}a:is(:hover,:focus-visible) .icon-arrow{transform:none}}

/* Mobile rhythm: one gutter, a calmer type scale and consistent spacing between and within sections. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}
@media(max-width:760px){
:root{--gutter:clamp(20px,5.6vw,32px);--space:clamp(48px,13vw,64px)}
body{font-size:16px;line-height:1.6}
p{margin:0 0 1em;line-height:1.6}
h1,h2,h3{line-height:1.04;letter-spacing:.01em}
h2{font-size:clamp(2.4rem,10vw,3.4rem)}
.eyebrow{font-size:11px;letter-spacing:.12em;line-height:1.4;margin-bottom:16px}
header{height:76px;padding:8px var(--gutter)}
.wordmark{width:78px;height:60px}
nav{top:76px;padding:8px var(--gutter) 20px}nav a{padding:14px 0;font-size:16px}
.menu{min-height:44px;padding:10px 18px}
.hero{padding:32px var(--gutter) var(--space);gap:36px}
.hero h1{font-size:clamp(3.4rem,14vw,5rem);line-height:.98}
.hero-bottom{margin-top:18px}.hero-bottom p{font-size:16px;line-height:1.6}
.hero-bottom .button{margin-top:22px}
.button{min-height:52px;padding:14px 22px;gap:24px}
.hero-image{height:clamp(300px,88vw,380px)}
.image-caption{font-size:11px;line-height:1.35}.image-caption span:first-child{font-size:10px}
.ticker{padding:18px var(--gutter)}
.section{padding:var(--space) var(--gutter)}
.intro{gap:24px}.intro h2{font-size:clamp(2.4rem,10vw,3.4rem)}
.intro-copy .large{font-size:21px;line-height:1.35;margin-bottom:.8em}
.text-link{margin-top:6px;padding:4px 0}
.section-heading{margin-bottom:28px}.section-heading p{margin-top:14px;font-size:16px}
.section-heading h2{font-size:clamp(2.4rem,10vw,3.4rem)}
.section-heading .text-link{margin-top:16px}
.service{padding:20px 0;gap:6px 14px;align-items:start}
.service h3{font-size:clamp(1.4rem,6vw,1.65rem);line-height:1.05}
.service p{font-size:15px;line-height:1.5}
.service .num{margin-top:-2px}.service .arrow{align-self:start}
.venture-title{min-height:220px;padding:32px var(--gutter)}
.cheer-word{font-size:clamp(2.8rem,12vw,4rem)}.cheer-word span{font-size:12px;margin-top:14px}
.venture-copy{padding:var(--space) var(--gutter)}
.venture-copy h2{font-size:clamp(2.6rem,11vw,3.4rem);margin-bottom:18px}
.venture-copy .button{margin:8px 0 28px}
.steps{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;font-size:13px}
.network-grid{gap:16px}
.network-card{padding:24px}
.network-card h3{font-size:clamp(2.5rem,11vw,3.2rem);margin:28px 0 16px}
.network-card p{font-size:15px}.network-brand{padding-top:20px;font-size:17px}
.partners{gap:14px;margin-top:28px}
.partner{padding:22px 20px}
.partner h3{font-size:24px;margin:12px 0 10px}
.partner p{font-size:15px;line-height:1.55}
.partner>span:last-child{font-size:14px;margin-top:14px}
.closing{padding:var(--space) var(--gutter)}
.closing h2{font-size:clamp(2.6rem,11vw,3.6rem);margin-bottom:24px}
.closing.compact h2{font-size:clamp(2.4rem,10vw,3.2rem);margin-bottom:24px}
footer{padding:44px var(--gutter) 24px}
.footer-top{gap:18px}.footer-top .wordmark{width:112px;height:78px}
.footer-top p{font-size:19px;line-height:1.4;margin:0}
.footer-bottom{margin-top:32px;padding-top:20px;font-size:12px;gap:12px 16px;line-height:1.5}
.footer-bottom a{padding:4px 0;overflow-wrap:anywhere}
.page-hero{padding:40px var(--gutter) 44px}
.page-hero h1{font-size:clamp(2.8rem,11.5vw,4rem);line-height:1.02}
.page-hero .button{margin-top:28px}
.page-lead{font-size:17px;line-height:1.6;margin-top:20px}.page-lead p:last-child{margin-bottom:0}
.editorial{padding:0 var(--gutter) 16px}
.editorial-row{padding:36px 0;gap:16px}
.editorial-row .num{width:36px;height:36px;font-size:12px}
.editorial-row h2{font-size:clamp(1.9rem,8vw,2.3rem);margin-top:12px}
.editorial-row p{font-size:16px;line-height:1.6}
.editorial-row p:first-child{font-size:20px;line-height:1.35}
.wide-image{padding:16px var(--gutter) 0}
.contact-hero h1{font-size:clamp(3.6rem,16vw,5.2rem)}
.contact-grid{padding:28px var(--gutter);gap:16px}
.contact-card{padding:26px}
.contact-card h2{font-size:clamp(2.3rem,10vw,3rem);margin:20px 0 28px}
.contact-card .email{font-size:clamp(16px,4.8vw,20px);overflow-wrap:anywhere}
.address{gap:24px;padding-top:var(--space)}.address h2{font-size:30px}.address p{margin-top:12px}
}
@media(max-width:480px){
.partners{grid-template-columns:1fr}
.partner h3{margin-top:10px}
}

/* Ellie & Miya: friendly characters placed beside the content they relate to. */
.friend{display:block;height:auto;pointer-events:none;user-select:none}
.friend-hero{position:absolute;z-index:3;left:-46px;bottom:-34px;width:clamp(170px,17vw,240px);transform:rotate(-2deg)}
.hero .image-caption{padding-left:clamp(150px,15vw,210px)}
.friend-intro{width:clamp(150px,15vw,210px);margin-top:28px}
.services{position:relative}
.friend-peek{position:absolute;bottom:100%;right:9%;width:clamp(110px,11vw,160px);margin-bottom:-3px}
.friend-cheer{width:min(100%,320px);margin:20px 0}
.network-card.dark{position:relative}
.friend-photo{position:absolute;top:20px;right:22px;width:clamp(96px,11vw,150px)}
.closing.has-friend,.page-hero.has-friend{position:relative}
.friend-closing{position:absolute;right:6%;bottom:0;width:clamp(170px,22vw,300px)}
.closing.has-friend{padding-right:max(7%,calc(6% + clamp(170px,22vw,300px)))}
.friend-page{position:absolute;right:6%;bottom:-18px;width:clamp(150px,18vw,250px)}
.page-hero.has-friend{padding-right:max(7%,calc(8% + clamp(150px,18vw,250px)))}
@media(max-width:760px){
.friend-hero{left:-8px;bottom:-24px;width:130px}.hero .image-caption{padding-left:118px}
.friend-intro{width:140px;margin-top:16px}
.friend-peek{width:100px;right:8%}
.friend-photo{width:88px;top:14px;right:14px}
.closing.has-friend,.page-hero.has-friend{padding-right:var(--gutter)}
.friend-closing,.friend-page{position:static;width:190px;margin:0 0 18px auto}
.friend-page{margin:-8px 0 18px auto;width:160px}
}
