@font-face{font-family:Inter;src:url('assets/fonts/inter-regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url('assets/fonts/inter-medium.woff2') format('woff2');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:Inter;src:url('assets/fonts/inter-semibold.woff2') format('woff2');font-style:normal;font-weight:600 900;font-display:swap}
:root{color-scheme:light;--paper:#fff;--ink:#080808;--muted:#6c6c6c;--heading-muted:#767676;--panel:#fafafa;--line:#e9e9e9;--nav:#e1eee8;--nav-ink:#20755f;--blue:#52b4e9;--blue-light:#a9e1fa;--blue-ink:#0b3248;--jade:#20755f;--jade-hover:#185e4c;--on-jade:#fff;--jade-light:#e1eee8;--feature-blue:#2795d0;--context-blue:#ecf6fc;--halo-blue:#e1f4fe;--halo-jade:#e5f0eb;--brand-blue:#9cbcd0;--night:#101411;--on-night:#fff;--night-muted:#bcc6c0;--focus:#20755f;--radius:28px;--shadow:0 2px 3px rgb(0 0 0 / .05),0 14px 28px rgb(0 0 0 / .06);--motion-arrival:800ms;--motion-card:420ms;--motion-state:220ms;--motion-stagger:60ms;--ease:cubic-bezier(.16,1,.3,1);--ease-out:cubic-bezier(0.23,1,0.32,1);--motion-press:100ms;--motion-release:160ms;--motion-menu:180ms;--type-caption:.75rem;--type-label:.8125rem;--type-control:.875rem;--type-small:.9375rem;--type-body:1rem;--type-card-mobile:1.0625rem;--type-card:1.125rem;--type-quote:1.3125rem;--type-benefit:1.375rem;--type-benefit-mobile:1.5rem;--type-detail-mobile:1.5625rem;--type-detail:1.625rem;--type-section-mobile:1.75rem;--type-section:2rem;--type-hero-compact:2.125rem;--type-hero-mobile:2.5rem;--type-hero:3rem;--nav-shadow:0 4px 20px rgb(18 62 49 / .08);--button-primary-shadow:inset 0 3px 7px rgb(255 255 255 / .12),inset 0 0 0 1px rgb(255 255 255 / .18),var(--shadow);--button-secondary-shadow:inset 0 0 0 1px rgb(0 0 0 / .09),inset 0 10px 10px var(--paper),var(--shadow);--button-hover-shadow:inset 0 3px 7px rgb(255 255 255 / .12),0 5px 9px rgb(0 0 0 / .05),0 17px 30px rgb(0 0 0 / .09);--device-shell:linear-gradient(120deg,#8a8a8a 0%,#d8d8d8 5%,#292929 11%,#111 65%,#9a9a9a 94%,#292929 100%);--device-shadow:inset 0 0 0 1px #dedede,inset 0 0 0 3px #353535,0 10px 20px rgb(0 0 0 / .12);--device-key:#777;--device-screen:#f6f6f4;--device-ink:#111;--device-island:#070707;--device-lens:#18201c;}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:120px;scrollbar-color:var(--brand-blue) var(--panel)}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,sans-serif;font-size:var(--type-body);font-weight:500;line-height:1.6;letter-spacing:0;overflow-x:clip}
::selection{background:var(--jade-light);color:var(--ink)}
a{color:inherit;text-decoration:none;text-underline-offset:5px}
button{font:inherit;cursor:pointer}
button,a,summary{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:3px solid var(--focus);outline-offset:5px}
.navigation :focus-visible{outline-color:var(--focus)}
.choice-dark :focus-visible{outline-color:var(--jade-light)}
img{max-width:100%;display:block}
p,h1,h2,h3,figure{margin:0}
h1,h2,h3{font-weight:600;line-height:1.2;text-wrap:balance}
h1,h2{letter-spacing:-.04em}
h2{font-size:var(--type-section)}
h3{font-size:var(--type-card);letter-spacing:-.025em}
h1 span,h2 span{color:var(--heading-muted)}
.icon{width:24px;height:24px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.icon-sprite{position:absolute;width:0;height:0;overflow:hidden}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.skip-link{position:fixed;top:8px;left:8px;z-index:100;padding:12px 20px;border-radius:12px;background:var(--jade);color:var(--paper);transform:translateY(-150%)}
.skip-link:focus{transform:translateY(0)}
.site-header{position:fixed;z-index:20;top:20px;left:20px;right:20px;pointer-events:none}
 .navigation{width:min(100%,50rem);min-height:54px;margin:auto;padding:8px 10px;display:flex;align-items:center;gap:20px;border-radius:20px;background:var(--nav);color:var(--nav-ink);box-shadow:var(--nav-shadow);pointer-events:auto}
.brand-link{padding:2px 4px;flex-shrink:0;display:flex;align-items:center;min-height:44px}
.brand-link img{width:155px;height:auto}
.nav-links{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:20px;flex:1;font-size:var(--type-small);letter-spacing:0}
.nav-links>a:not(.button){display:flex;align-items:center;min-width:44px;min-height:44px;transition:color .2s}
.nav-links>a:not(.button):hover{color:var(--jade-hover)}
.menu-toggle{display:none;background:transparent;border:0;color:inherit;width:44px;height:44px;padding:10px}
.button{min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:11px 18px;border-radius:14px;font-weight:600;letter-spacing:-.01em;font-size:var(--type-body);line-height:1.2;transition:transform var(--motion-release) var(--ease-out),box-shadow .2s var(--ease),background-color .15s;white-space:normal;text-align:center;max-width:100%}
.button-primary{background:var(--jade);color:var(--on-jade);box-shadow:var(--button-primary-shadow)}
.button-secondary{background:var(--panel);color:var(--ink);box-shadow:var(--button-secondary-shadow)}
@media(hover:hover) and (pointer:fine){.button:hover{transform:translateY(-2px);box-shadow:var(--button-hover-shadow)}.button-primary:hover{background:var(--jade-hover)}}
.button:active{transform:translateY(1px) scale(.98);transition-duration:var(--motion-press),.2s,.15s}
.button:focus-visible{transform:none}
.button .icon{width:20px;height:20px}
.nav-cta{min-height:44px;padding:9px 16px;font-size:var(--type-small);border-radius:12px;margin-left:auto}
.actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px}
.hero{padding-top:136px;overflow:hidden}
.hero-copy{max-width:540px;margin:auto;text-align:center;padding:0 20px}
.partner{display:flex;justify-content:center;align-items:center;gap:12px;margin-bottom:32px;font-size:var(--type-label);line-height:1.45;text-align:left;color:var(--muted);letter-spacing:-.02em}
.partner img{width:46px;height:46px}
.partner strong{font-weight:600;color:var(--ink)}
h1{font-size:var(--type-hero);line-height:1.2}
.hero-description{margin:24px auto 32px;max-width:460px;color:var(--muted);font-size:var(--type-body);line-height:1.6;letter-spacing:0}
.hero-art{margin:68px auto 0;text-align:center;width:min(100%,920px)}
.hero-phones{position:relative;height:650px;max-width:750px;margin:auto;overflow:hidden}
.phone-plane{position:absolute;inset:0;pointer-events:none}
.plane-back{transform:translateY(0)}
.plane-front{transform:translateY(0);z-index:2}
.hero-phones::after{position:absolute;content:'';left:-25px;right:-25px;bottom:-1px;height:220px;z-index:4;background:linear-gradient(transparent,var(--paper) 90%);pointer-events:none}
.phone{position:relative;width:300px;max-width:none;border-radius:46px;padding:8px;background:var(--device-shell);box-shadow:var(--device-shadow);flex-shrink:0}
.phone::before{content:'';position:absolute;left:-2px;top:108px;width:3px;height:35px;background:var(--device-key);border-radius:2px;box-shadow:0 46px 0 var(--device-key)}
.phone-screen{background:var(--device-screen);border:5px solid var(--device-ink);border-radius:38px;overflow:hidden}
.phone-screen>img{width:100%;height:auto}
.phone-status{position:relative;display:flex;align-items:center;justify-content:space-between;height:38px;padding:7px 16px 4px;color:var(--device-ink);font-size:10px;font-weight:600;letter-spacing:0}
.island{position:absolute;left:50%;top:7px;transform:translateX(-50%);width:82px;height:23px;background:var(--device-island);border-radius:20px}
.island::after{content:'';position:absolute;right:8px;top:7px;width:8px;height:8px;border-radius:50%;background:var(--device-lens)}
.status-bars{display:flex;align-items:center;gap:5px}
.status-bars .icon{width:10px;height:10px;stroke-width:2.8}
.status-bars i{display:block;width:12px;height:6px;background:var(--device-ink);border-radius:2px}
.phone-back{position:absolute;left:100px;top:40px;width:315px;transform:rotate(-12deg)}
.phone-front{position:absolute;right:95px;top:24px;width:315px;z-index:2;transform:rotate(6deg)}
.hero-art figcaption{position:relative;z-index:5;font-size:var(--type-label);color:var(--muted);margin-top:0}
.section{padding:100px 24px}
.section-heading{text-align:center;margin:0 auto 50px;max-width:700px}

.section-description{font-size:var(--type-body);color:var(--muted);max-width:500px;margin:20px auto 0;text-align:center}
.challenge{padding:130px 20px 120px;text-align:center}
.challenge h2{font-size:var(--type-detail);line-height:1.4;max-width:630px;margin:auto}
.benefit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;width:min(100%,1000px);margin:auto}
.benefit{position:relative;background:var(--panel);border-radius:var(--radius);padding:30px 30px 0;overflow:hidden}
.benefit-copy h3{font-size:var(--type-body);margin-bottom:15px}
.benefit-line{font-size:var(--type-benefit);line-height:1.35;color:var(--ink);margin-bottom:14px;letter-spacing:-.035em}
.benefit-copy>p:last-child{color:var(--muted);font-size:var(--type-small);line-height:1.6}
.benefit-device{height:340px;overflow:hidden;margin:34px -15px 0;position:relative}
.benefit-device::after{content:'';position:absolute;bottom:0;left:0;right:0;height:100px;background:linear-gradient(transparent,var(--panel))}
.benefit-device .phone{margin:auto;width:250px;border-radius:38px;padding:6px}
.benefit-device .phone-screen{border-radius:32px;border-width:4px}
.benefit-device .phone-status{height:32px;font-size:8px;padding:5px 12px}
.benefit-device .island{width:68px;height:20px;top:5px}
.source-note{padding:12px 0 24px;font-size:var(--type-label);color:var(--muted);text-align:center}
.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;width:min(100%,900px);margin:auto}
.feature{background:var(--panel);border-radius:var(--radius);padding:34px 30px;min-height:210px}
.feature>.icon{color:var(--feature-blue);width:32px;height:32px;margin-bottom:20px;stroke-width:1.8}
.feature h3{font-size:var(--type-body);margin-bottom:12px}
.feature p{color:var(--muted);font-size:var(--type-small);line-height:1.6}
.loop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;width:min(100%,800px);margin:auto;text-align:center}
.loop-visual{height:155px;display:flex;justify-content:center;align-items:center;margin-bottom:26px}
.loop-visual>.icon{width:75px;height:75px;stroke-width:1.25}
.loop-blue{color:var(--blue);background:radial-gradient(ellipse at center,var(--halo-blue),transparent 65%)}
.loop-jade{color:var(--jade);background:radial-gradient(ellipse at center,var(--halo-jade),transparent 65%)}
.loop-brand img{width:100px;height:100px}
.loop-grid h3{font-size:var(--type-body);margin-bottom:12px}
.loop-grid p{color:var(--muted);font-size:var(--type-small);max-width:260px;margin:auto}
.context-section{text-align:center}
.context-orbit{position:relative;width:440px;max-width:100%;height:300px;margin:0 auto 45px}
.orbit-ring{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:1px solid var(--line);border-radius:50%;width:290px;height:230px}
.ring-two{width:400px;height:290px}
.orbit-mascot{position:absolute;top:75px;left:50%;transform:translateX(-50%);width:140px;height:140px}
.context-icon{position:absolute;width:64px;height:64px;border-radius:16px;background:var(--panel);box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center;color:var(--jade)}
.context-icon .icon{width:30px;height:30px}
.context-work{left:30px;top:48px;transform:rotate(-12deg)}
.context-talk{right:34px;top:38px;transform:rotate(8deg);color:var(--blue-ink);background:var(--context-blue)}
.context-travel{left:58px;bottom:18px;transform:rotate(5deg);color:var(--blue-ink);background:var(--context-blue)}
.context-learn{right:36px;bottom:36px;transform:rotate(-8deg)}
.orbit-sphere{position:absolute;width:80px;height:80px;right:3px;top:150px;opacity:.45}
.practice-demo{width:min(100%,820px);margin:auto;display:grid;grid-template-columns:300px minmax(0,1fr);align-items:start;gap:70px}
.demo-visual{position:relative;text-align:center;padding-bottom:40px}
.demo-phone{width:265px;margin:auto;transform:none}
.demo-copy{min-width:0}
.demo-source{display:block;margin-top:30px;font-size:var(--type-label);color:var(--muted)}
.practice-tabs{display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid var(--line);padding-bottom:8px;margin-bottom:32px}
.practice-tabs button{background:transparent;border:0;color:var(--muted);padding:10px 7px;min-height:44px;font-size:var(--type-label);border-radius:8px;white-space:nowrap}
.practice-tabs button[aria-selected=true]{background:var(--jade-light);color:var(--jade)}
#practice-panel{min-height:320px}
#practice-panel h3{font-size:var(--type-detail);line-height:1.3;margin-bottom:18px}
#practice-panel>p{color:var(--muted)}
#practice-panel .example-label{font-size:var(--type-label);margin-top:28px;margin-bottom:12px}
#practice-panel .example{color:var(--ink);font-size:var(--type-quote);letter-spacing:0;margin-bottom:8px}
#practice-panel .example-translation{font-size:var(--type-control);line-height:1.6}
.text-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--jade);margin-top:24px;font-size:var(--type-small);font-weight:600}
.text-link:hover{text-decoration:underline}
.text-link .icon{width:18px;height:18px}
.mode-choices{margin:80px 0}
.choice{padding:65px max(24px,calc((100% - 740px)/2));position:relative;overflow:hidden;min-height:410px}
.choice-light{background:var(--panel)}
.choice-dark{background:var(--ink);color:var(--on-night);min-height:440px}
.choice-content{width:350px;max-width:100%;position:relative;z-index:2}
.choice h3{font-size:var(--type-detail);line-height:1.3;margin-bottom:20px}
.choice p{font-size:var(--type-small);color:var(--muted);line-height:1.7;max-width:320px}
.choice ul{padding:0;margin:28px 0;list-style:none;font-size:var(--type-control)}
.choice li{display:flex;align-items:center;gap:9px;margin:8px 0}
.choice li .icon{width:16px;height:16px;color:var(--jade)}
.choice .actions{justify-content:flex-start}
.choice-dark p{color:var(--night-muted)}
.choice-dark li .icon{color:var(--brand-blue)}
.choice-mascot{position:absolute;right:max(40px,calc((100% - 700px)/2));top:calc(50% - 90px);width:180px;height:180px}
.choice-device{position:absolute;right:max(30px,calc((100% - 730px)/2));top:90px;transform:rotate(9deg)}
.choice-device .phone{width:230px;border-radius:34px}
.choice-device .phone-screen{border-radius:27px}
.choice-device .island{width:60px;height:18px}
.choice-device .phone-status{height:28px;padding:5px 10px;font-size:8px}
.faq-list{width:min(100%,620px);margin:auto}
.faq-list details{border-bottom:1px solid var(--line)}
.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;padding:22px 0;font-size:var(--type-body);min-height:66px}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:hover{color:var(--jade)}
.faq-list summary .icon{width:20px;height:20px;color:var(--muted);transition:transform .2s var(--ease)}
.faq-list details[open] summary .icon{transform:rotate(45deg)}
.faq-list details>p{padding:0 38px 24px 0;color:var(--muted);font-size:var(--type-small)}
.start-section{padding-top:130px;padding-bottom:150px;text-align:center}
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;max-width:800px;margin:0 auto 45px;padding:0;list-style:none;text-align:left;counter-reset:steps}
.steps li>span{width:32px;height:32px;display:grid;place-items:center;background:var(--panel);color:var(--jade);border-radius:50%;font-size:var(--type-label);margin-bottom:18px}
.steps h3{font-size:var(--type-small);margin-bottom:10px}
.steps p{font-size:var(--type-control);color:var(--muted);line-height:1.6}
.start-note{font-size:var(--type-caption);color:var(--muted);margin-top:20px}
.site-footer{padding:60px 24px 24px;border-top:1px solid var(--line)}
.footer-main{display:grid;grid-template-columns:1fr 130px 150px;gap:60px;width:min(100%,900px);margin:auto}
.footer-brand>a{display:inline-flex;align-items:center;min-height:44px}
.footer-brand img{width:170px;height:auto;min-height:32px}
.footer-brand p{font-size:var(--type-label);color:var(--muted);margin-top:18px;line-height:1.6}
.footer-links h2{font-size:var(--type-label);margin-bottom:18px;letter-spacing:-.02em}
.footer-links a{font-size:var(--type-label);display:flex;align-items:center;min-height:44px;color:var(--muted)}
.footer-links a:hover{color:var(--jade);text-decoration:underline}
.footer-bottom{max-width:900px;margin:60px auto 0;display:flex;justify-content:space-between;color:var(--muted);font-size:var(--type-label)}
@media(min-width:810px) and (max-width:1199px){.benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:660px}.benefit:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;align-items:center;padding-top:0}.benefit:last-child .benefit-copy{max-width:260px}.benefit:last-child .source-note{grid-column:1/-1}.benefit:last-child .benefit-device{margin-top:30px;height:320px}.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:600px}.practice-demo{gap:40px;max-width:760px}.section{padding-top:90px;padding-bottom:90px}}
@media(max-width:809px){html{scroll-padding-top:100px}.site-header{top:20px;left:20px;right:20px}.navigation{position:relative;max-width:500px;padding:6px 10px;flex-wrap:wrap;gap:0;min-height:55px;border-radius:20px}.brand-link img{width:145px}.js .menu-toggle{display:block;margin-left:auto}.nav-links{display:flex;flex:0 0 100%;flex-direction:column;align-items:stretch;gap:4px;padding:15px 10px 10px;font-size:var(--type-card-mobile)}.js .nav-links{position:absolute;top:100%;left:0;right:0;background:var(--nav);color:var(--nav-ink);border-radius:20px;opacity:0;transform:translateY(-8px);transform-origin:top right;visibility:hidden;pointer-events:none;transition:opacity var(--motion-menu) var(--ease-out),transform var(--motion-menu) var(--ease-out),visibility 0s var(--motion-menu)}.js .navigation.is-open .nav-links{opacity:1;transform:translateY(0);visibility:visible;pointer-events:auto;transition-delay:0s}.js .navigation[data-instant] .nav-links{transition:none}html:not(.js) .site-header{position:relative}html:not(.js) .hero{padding-top:60px}html:not(.js) .practice-tabs{display:none}.nav-links>a:not(.button){min-height:44px}.nav-cta{width:100%;margin-top:12px;min-height:44px}.hero{padding-top:120px}.hero-copy{max-width:500px;padding:0 20px}.partner{margin-bottom:32px}.partner img{width:42px;height:42px}h1{font-size:var(--type-hero-mobile);line-height:1.2}.hero-description{margin:24px auto 32px;max-width:400px}.actions{gap:10px}.button{font-size:var(--type-control);padding:12px 14px;min-height:48px}.button .icon{width:18px;height:18px}.button-primary>.icon:last-child{display:none}.hero-art{margin-top:76px}.hero-phones{width:100%;height:510px;max-width:500px}.phone-back{left:calc(50% - 75px);top:20px;transform:rotate(5deg);width:245px}.phone-front{left:calc(50% - 163px);right:auto;top:40px;transform:rotate(-6deg);width:255px}.hero-phones::after{height:170px}.hero-art figcaption{max-width:300px;margin:auto;font-size:var(--type-label)}.section{padding:75px 20px}.section-heading{margin-bottom:35px}h2{font-size:var(--type-section-mobile)}.challenge{padding-top:105px;padding-bottom:90px}.challenge h2{font-size:var(--type-benefit-mobile);line-height:1.4}.challenge h2 br{display:none}.benefit-grid{grid-template-columns:1fr;max-width:390px;gap:24px}.benefit{padding:30px 28px 0}.benefit-device{height:340px;margin-top:30px}.benefit-device .phone{width:260px}.benefit-line{font-size:var(--type-benefit-mobile)}.feature-grid{grid-template-columns:1fr;max-width:390px;gap:16px}.feature{padding:30px;min-height:0}.feature>.icon{margin-bottom:16px}.feature h3{font-size:var(--type-card-mobile)}.loop-grid{grid-template-columns:1fr;gap:42px;max-width:350px}.loop-visual{height:105px;margin-bottom:18px}.loop-grid h3{font-size:var(--type-card)}.loop-grid p{max-width:290px}.context-orbit{width:350px;height:280px;margin-bottom:35px}.ring-one{width:240px;height:210px}.ring-two{width:330px;height:265px}.orbit-mascot{width:120px;height:120px;top:75px}.context-icon{width:55px;height:55px}.context-work{left:10px}.context-talk{right:12px;top:28px}.context-travel{left:35px;bottom:20px}.context-learn{right:20px;bottom:26px}.orbit-sphere{width:60px;height:60px;right:0;top:136px}.practice-demo{grid-template-columns:1fr;gap:25px;max-width:390px}.demo-visual{order:2;margin-top:20px;padding-bottom:0}.demo-phone{width:250px;transform:none}.practice-tabs{justify-content:space-between;gap:2px;margin-bottom:26px}.practice-tabs button{font-size:var(--type-caption);padding:10px 8px}#practice-panel{min-height:270px}#practice-panel h3{font-size:var(--type-detail-mobile)}.mode-choices{margin:35px 0}.choice{padding:50px 24px;min-height:580px}.choice-content{width:350px;margin:auto}.choice h3{font-size:var(--type-detail)}.choice-mascot{width:130px;height:130px;top:auto;bottom:30px;right:calc(50% - 65px)}.choice-dark{min-height:680px}.choice-device{top:400px;right:calc(50% - 95px)}.choice-device .phone{width:190px;border-radius:28px;padding:6px}.choice-device .phone-screen{border-radius:22px;border-width:3px}.choice-device .phone-status{height:26px;font-size:7px}.choice-device .island{width:55px;height:17px;top:5px}.faq-list summary{font-size:var(--type-small);padding:20px 0}.faq-list details>p{font-size:var(--type-control);padding-right:15px}.start-section{padding-top:90px;padding-bottom:90px}.steps{grid-template-columns:repeat(2,minmax(0,1fr));max-width:380px;gap:30px 25px;margin-bottom:35px}.steps li>span{margin-bottom:12px}.site-footer{padding:45px 24px 25px}.footer-main{grid-template-columns:1fr 1fr;max-width:450px;gap:35px 20px}.footer-brand{grid-column:1/-1}.footer-links a{min-height:44px}.footer-bottom{margin-top:40px;gap:20px}}
@media(max-width:359px){h1{font-size:var(--type-hero-compact)}.hero-copy{padding:0 16px}.button{font-size:var(--type-caption);gap:6px;padding:12px 10px}.actions{gap:8px}.hero-phones{height:460px}.phone-back{width:210px;left:calc(50% - 70px)}.phone-front{width:220px;left:calc(50% - 143px)}.context-orbit{height:240px}.ring-two{width:280px;height:230px}.context-icon{width:45px;height:45px}.orbit-mascot{width:105px;height:105px;top:62px}.context-icon .icon{width:25px;height:25px}.orbit-sphere{display:none}.practice-tabs button{padding:10px 5px;font-size:var(--type-caption)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:box-shadow .15s}.button:hover,.button:active{transform:none}.faq-list summary .icon{transition:none}.phone-plane{transform:none!important}.js .nav-links{transform:none;transition:opacity 120ms var(--ease-out),visibility 0s 120ms}.js .navigation.is-open .nav-links{transform:none;transition-delay:0s}.js .navigation[data-instant] .nav-links{transition:none}}

/* Apple Design follow-up: text scales without detaching content from artwork. */
p,h1,h2,h3{overflow-wrap:break-word}
h1,h2{hyphens:auto}
.keyboard-nav{scroll-behavior:auto}
.keyboard-nav .faq-list summary .icon,.faq-list summary:focus-visible .icon{transition:none}
@media(max-width:809px){.choice-mascot{position:relative;top:auto;bottom:auto;right:auto;margin:40px auto 0}.choice-device{position:relative;top:auto;right:auto;width:190px;height:280px;margin:40px auto -50px}.footer-bottom{flex-wrap:wrap}.js .nav-links{max-height:calc(100dvh - 110px);overflow-y:auto;overscroll-behavior:contain}.practice-tabs button{white-space:normal;flex:1 1 auto}}
@media(prefers-contrast:more){.navigation,.nav-links,.button,.feature,.benefit,.practice-tabs button[aria-selected=true]{outline:1px solid currentColor;outline-offset:-1px}:focus-visible{outline:3px solid var(--focus);outline-offset:5px}.choice-dark :focus-visible{outline-color:var(--jade-light)}}
@media(forced-colors:active){.navigation,.button,.feature,.benefit,.practice-tabs button[aria-selected=true]{outline:1px solid CanvasText}.button:focus-visible,a:focus-visible,summary:focus-visible,[role=tab]:focus-visible{outline:3px solid Highlight;outline-offset:5px}.phone{forced-color-adjust:none}}

/* Desktop layout: shared content width; copy and product evidence read together. */
@media(min-width:810px){
  :root{--content-wide:1200px;--content-detail:1000px;--desktop-gutter:40px}
  .section{padding-left:var(--desktop-gutter);padding-right:var(--desktop-gutter)}
  .navigation{width:min(100%,var(--content-wide))}
  .benefit-grid,.feature-grid{width:min(100%,var(--content-wide));max-width:var(--content-wide)}
  .loop-grid{width:min(100%,var(--content-detail))}
  .practice-demo{width:min(100%,var(--content-detail));max-width:var(--content-detail);grid-template-columns:minmax(0,1fr) 340px;gap:80px}
  .demo-phone{width:300px}
  .demo-visual{padding-bottom:0}
  .choice{padding-left:max(var(--desktop-gutter),calc((100% - var(--content-detail))/2));padding-right:max(var(--desktop-gutter),calc((100% - var(--content-detail))/2))}
  .choice-content{width:420px}
  .choice p{max-width:400px}
  .choice-mascot{right:max(80px,calc((100% - 860px)/2))}
  .choice-device{right:max(60px,calc((100% - 900px)/2))}
  .faq-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:80px;max-width:calc(var(--content-wide) + 2 * var(--desktop-gutter));margin:auto}
  .faq-section .section-heading{margin:0;text-align:left}
  .faq-list{width:100%;max-width:none}
  .steps{max-width:var(--content-detail)}
  .footer-main{width:min(100%,var(--content-wide))}
  .footer-bottom{max-width:var(--content-wide)}
}
@media(min-width:1000px){
  .benefit-grid,.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .benefit:last-child{grid-column:auto;padding-top:30px}
  .benefit:last-child .benefit-copy{max-width:none}
  .benefit:last-child .benefit-device{height:340px;margin-top:34px}
}
/* Shared content tracks keep product screens and captions on one baseline,
   even when a card's description or source label wraps onto another line. */
@media(min-width:810px){
  .benefit-grid{grid-auto-rows:auto;row-gap:20px}
  .benefit{display:grid;grid-row:span 3;grid-template-rows:subgrid;grid-template-columns:minmax(0,1fr);row-gap:0;min-width:0}
}
@media(max-width:809px){
  .practice-demo{grid-template-columns:minmax(0,1fr)}
}
@media(min-width:810px) and (max-width:999px){
  .benefit:last-child{grid-row:span 2;grid-template-rows:auto auto;row-gap:0}
}
@media(min-width:1000px){
  .benefit:last-child{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch}
  .benefit:last-child .source-note{grid-column:auto}
}
@media(min-width:1200px){
  .hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:center;gap:40px;max-width:1280px;margin:auto;padding:136px 40px 0}
  .hero-copy{max-width:540px;margin:0;text-align:left;padding:0}
  .partner,.hero .actions{justify-content:flex-start}
  .hero-description{margin-left:0;margin-right:0}
  .hero-art{width:100%;margin:0;min-width:0}
  .hero-phones{height:610px;width:100%;overflow:visible;clip-path:inset(0 -80px)}
  .phone-back{left:28px;top:50px;width:290px}
  .phone-front{right:22px;top:30px;width:290px}
  .practice-section{padding-top:80px}
}
@media(min-width:810px) and (max-width:999px){
  .practice-demo{grid-template-columns:minmax(0,1fr) 280px;gap:40px}
  .demo-phone{width:265px}
  .faq-section{gap:40px}
}

/* Immediate press feedback for state controls, without spatial motion. */
.menu-toggle,.practice-tabs button{transition:background-color 150ms var(--ease-out),color 150ms var(--ease-out)}
.menu-toggle:active,.practice-tabs button:active{background:var(--jade);color:var(--on-jade);transition:none}
.menu-toggle{border-radius:12px}
