@font-face{font-family:Plex;src:url('../fonts/plex-sans-regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Plex;src:url('../fonts/plex-sans-medium.woff2') format('woff2');font-weight:500 700;font-display:swap}
:root{color-scheme:light;--paper:#f5f7f8;--white:#fff;--ink:#17242d;--muted:#62727b;--line:#dce4e8;--cyan:#008fb8;--cyan-bright:#42c5e8;--soft-cyan:#e7f6fb;--radius:22px;--content:1160px;font-family:Plex,Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
.studio-dot{color:#008fb8}.server-dot{color:#d32e7b}.w2p-dot{color:#b58c00}.master-dot{color:var(--ink)}.family-tile{background:#17242d;border-color:#17242d;box-shadow:0 17px 42px -20px #152c42a3}.family-tile:after{border-color:#ffffff12}.ecosystem-map:before{background:linear-gradient(90deg,#42c5e8,#e0418b 52%,#f2ca2b)}
.product-dot{display:inline-block;width:.14em;height:.14em;margin-left:.045em;border-radius:50%;background:currentColor;text-indent:-100em;overflow:hidden;vertical-align:baseline}.studio-dot{color:#42c5e8}.server-dot{color:#e0418b}.w2p-dot{color:#f2ca2b}
.feature-tabs::-webkit-scrollbar{display:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:94px}body{margin:0}button,a,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{color:inherit}button:not(:disabled),summary{cursor:pointer}button{border:0}img,svg{display:block;max-width:100%}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--cyan);outline-offset:6px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:500}p{line-height:1.6}::selection{background:#bce8f5;color:var(--ink)}[hidden]{display:none!important}
.skip-link{position:fixed;left:16px;top:-80px;padding:12px 18px;background:var(--ink);color:white;z-index:20;border-radius:8px}.skip-link:focus{top:12px}
.shell{width:min(calc(100% - 80px),var(--content));margin-inline:auto}.brand{display:inline-flex;align-items:center;gap:11px;font-weight:500;letter-spacing:-.045em;font-size:23px}.brand svg{width:29px;height:29px}.brand img{width:29px;height:29px}.site-header{height:92px;display:flex;align-items:center;justify-content:space-between;gap:24px}.header-link{display:inline-flex;align-items:center;gap:9px;font-size:14px;color:var(--muted)}.header-link:hover{color:var(--ink)}.arrow{width:19px;height:19px;flex:none}.eyebrow{font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.dot{color:var(--cyan)}.text-link{background:transparent;padding:0;display:inline-flex;align-items:center;gap:8px;color:var(--cyan);font-size:14px}.text-link:hover{text-decoration:underline;text-underline-offset:5px}.pill{display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border:1px solid var(--line);border-radius:99px;font-size:12px;white-space:nowrap}.pill i{width:5px;height:5px;border-radius:50%;background:var(--cyan)}.button{display:inline-flex;align-items:center;justify-content:center;gap:13px;min-height:48px;padding:12px 21px;border-radius:11px;background:var(--ink);color:#fff;font-size:15px;font-weight:500;transition:background .18s,transform .18s}.button:hover{background:#2b4351;transform:translateY(-2px)}.button-secondary{background:transparent;color:var(--ink);border:1px solid #ccd6dc}.button-secondary:hover{background:#e9f0f3}.button-row{display:flex;gap:14px;flex-wrap:wrap;align-items:center}.site-footer{display:flex;justify-content:space-between;gap:20px;align-items:center;padding-block:25px;color:var(--muted);font-size:12px}.site-footer a:hover{color:var(--ink)}
/* The ecosystem is a single connected figure. */
.ecosystem-page{min-height:100svh;display:flex;flex-direction:column;overflow-x:hidden;background:radial-gradient(ellipse at 50% 55%,#fff 0%,#f5f7f8 64%)}.ecosystem-page main{flex:1;display:flex;flex-direction:column;justify-content:center;padding:30px 0 48px}.ecosystem-intro{text-align:center}.ecosystem-intro h1{font-size:clamp(38px,4.6vw,61px);line-height:1.08;letter-spacing:-.058em}.ecosystem-intro h1 span{display:block}.ecosystem-intro .eyebrow{margin-bottom:20px}.ecosystem-map{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:38px;max-width:1000px;margin:68px auto 0;padding:0 10px}.ecosystem-map:before{content:"";position:absolute;top:79px;left:16%;right:16%;height:1px;background:linear-gradient(90deg,#42c5e8,#e0418b 52%,#f2ca2b)}.product{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:0;padding:8px 16px 20px;background:none;border-radius:25px;transition:transform .25s,background .25s;color:var(--ink);width:100%}.product:hover{transform:translateY(-6px);background:#ffffff78}.app-tile{width:144px;height:144px;border-radius:33px;position:relative;display:grid;place-items:center;background:#fff;box-shadow:0 16px 42px -20px #203c5566,0 1px 3px #1b3d4c18;border:1px solid #dbe5eb;isolation:isolate}.app-tile:after{content:"";position:absolute;inset:6px;border:1px solid #ffffffb3;border-radius:27px;z-index:-1}.app-tile>img{width:100%;height:100%}.family-tile,.studio-tile{background:#17242d;border-color:#17242d;box-shadow:0 17px 42px -20px #152c42a3}.family-tile:after,.studio-tile:after{border-color:#ffffff12}.app-tile>svg{width:82px;height:82px}.product-name{font-size:29px;font-weight:500;letter-spacing:-.045em;margin-top:24px;display:flex;align-items:center;gap:9px}.product-name .mini-arrow{width:20px;height:20px;transition:transform .25s}.product:hover .mini-arrow{transform:translate(3px,-3px)}.product-description{font-size:14px;color:var(--muted);margin-top:7px;line-height:1.5}.product-status{position:absolute;top:0;right:-9px;padding:4px 8px;border-radius:99px;font-size:10px;letter-spacing:.02em;color:var(--muted);background:var(--paper);border:1px solid var(--line)}.home-footnote{margin-top:34px;text-align:center;font-size:12px;color:var(--muted)}
/* Product page. */
.studio-header-wrap{position:sticky;top:0;z-index:10;background:#f5f7f8ed;backdrop-filter:blur(18px);border-bottom:1px solid #dce4e8a3}.studio-header-wrap .site-header{height:74px}.header-nav{display:flex;align-items:center;gap:29px}.header-nav>a{font-size:14px;color:var(--muted)}.header-nav>a:hover{color:var(--ink)}.header-nav .header-link{padding-left:25px;border-left:1px solid var(--line)}.studio-hero{display:grid;grid-template-columns:.9fr 1.15fr;gap:52px;align-items:center;padding-top:86px;padding-bottom:50px}.studio-hero h1{font-size:clamp(43px,5vw,67px);line-height:1.055;letter-spacing:-.06em;margin-top:24px}.studio-hero h1 span{display:block}.hero-copy>p{color:var(--muted);font-size:17px;max-width:410px;margin-top:24px}.hero-copy .button-row{margin-top:31px}.hero-screen{position:relative;min-width:0}.hero-screen:before{content:"";position:absolute;inset:0 -16px -20px 35px;border:1px solid #c5e0ea;border-radius:20px;transform:rotate(3deg);background:#e8f3f7;z-index:-1}.screen-button{padding:0;background:transparent;display:block;width:100%;border-radius:14px;box-shadow:0 26px 55px -25px #183b5259;overflow:hidden}.screen-button>img{width:100%;height:auto}.image-note{font-size:11px;line-height:1.5;color:var(--muted);margin-top:14px}.hero-meta{display:flex;justify-content:space-between;gap:20px;padding:29px 0 36px;border-bottom:1px solid var(--line);font-size:12px;color:var(--muted)}.hero-meta>span{display:flex;align-items:center;gap:7px}.hero-meta svg{width:16px;height:16px}.section{padding-block:86px}.section-heading{display:flex;justify-content:space-between;gap:36px;align-items:end;margin-bottom:36px}.section-heading h2,.editorial-copy h2{font-size:clamp(30px,3.6vw,44px);line-height:1.12;letter-spacing:-.045em}.section-heading .eyebrow{margin-bottom:14px}.section-heading>p{font-size:15px;color:var(--muted);max-width:340px}.feature-tabs{display:flex;gap:7px;overflow:auto;padding:3px 2px 16px;scrollbar-width:none}.feature-tabs button{padding:10px 18px;flex:none;border-radius:9px;background:transparent;color:var(--muted);font-size:14px;border:1px solid transparent;transition:background .2s,color .2s}.feature-tabs button[aria-selected=true]{color:var(--ink);background:#fff;border-color:var(--line);box-shadow:0 3px 9px #19354408}.feature-tabs button:hover{color:var(--ink)}.feature-panel{background:#eaf0f3;border:1px solid #dae4e9;border-radius:22px;padding:38px;display:grid;grid-template-columns:1fr 2.2fr;align-items:center;gap:34px;min-height:422px}.feature-text .eyebrow{color:var(--cyan);font-size:10px;margin-bottom:13px}.feature-text h3{font-size:25px;letter-spacing:-.035em;line-height:1.15;margin-bottom:16px}.feature-text>p{color:#526873;font-size:14px}.feature-text .text-link{margin-top:20px}.feature-image{display:flex;align-items:center;justify-content:center;height:340px;min-width:0}.feature-image button{padding:0;background:transparent;display:flex;align-items:center;justify-content:center;max-height:100%;border-radius:9px;overflow:hidden;box-shadow:0 14px 38px #203c5524}.feature-image img{max-height:340px;object-fit:contain;width:auto;max-width:100%}.section-divider{border:0;border-top:1px solid var(--line);margin:0}.editorial{display:grid;grid-template-columns:.85fr 1.25fr;gap:70px;align-items:center}.editorial-copy .eyebrow{margin-bottom:17px}.editorial-copy>p{margin-top:20px;color:var(--muted);font-size:16px}.fact-list{list-style:none;margin:27px 0 0;padding:0;display:grid;gap:15px}.fact-list li{display:flex;gap:11px;align-items:baseline;font-size:14px}.fact-list li:before{content:"";width:5px;height:5px;flex:none;border-radius:50%;background:var(--cyan);position:relative;top:-2px}.impose-figure{background:#eaf0f3;padding:17px;border:1px solid #dce5e9;border-radius:19px;min-width:0}.impose-figure .screen-button{border-radius:9px;box-shadow:0 7px 23px #17374c1c}.impose-figure figcaption{padding:12px 4px 0;color:var(--muted);font-size:12px}.sticker-section{background:#eaf0f2;border-block:1px solid #dce5e9}.sticker-layout{display:grid;grid-template-columns:1.15fr .9fr;gap:70px;align-items:center}.sticker-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.sticker-pair button{padding:0;background:transparent;border-radius:15px;overflow:hidden;box-shadow:0 11px 28px -17px #17374c66}.sticker-pair img{width:100%;height:auto;aspect-ratio:707/1000;object-fit:cover}.sticker-pair figcaption{font-size:12px;color:var(--muted);margin-top:13px}.sticker-pair figure:last-child{padding-top:33px}.small-features{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.small-feature{padding-top:24px;border-top:1px solid #c4d1d9}.small-feature>span{font-size:12px;color:var(--cyan)}.small-feature h3{margin-top:16px;font-size:22px;line-height:1.2;letter-spacing:-.03em}.small-feature p{margin-top:13px;font-size:14px;color:var(--muted)}.family-section{border:1px solid var(--line);background:var(--white);border-radius:23px;padding:42px 45px;display:flex;justify-content:space-between;gap:30px;align-items:center;margin-bottom:55px}.family-section h2{font-size:29px;letter-spacing:-.04em}.family-section p{margin-top:8px;color:var(--muted);font-size:14px}.family-section .button{flex:none}.studio-page .site-footer{border-top:1px solid var(--line)}
/* Native dialogs keep the future products and image inspection useful on day one. */
.product-dialog{border:1px solid #d9e5eb;border-radius:25px;padding:43px;width:min(480px,calc(100vw - 36px));color:var(--ink);background:#fff;box-shadow:0 35px 100px #102b4566}.product-dialog::backdrop,.lightbox::backdrop{background:#10232eb3;backdrop-filter:blur(6px)}.dialog-close{position:absolute;top:14px;right:14px;width:34px;height:34px;border-radius:50%;background:#edf3f5;color:var(--muted);font-size:22px;display:grid;place-items:center}.product-dialog .eyebrow{margin-top:2px}.product-dialog h2{font-size:36px;letter-spacing:-.05em;margin:16px 0}.product-dialog p{font-size:15px;color:var(--muted)}.product-dialog .text-link{margin-top:27px}.lightbox{border:0;background:#f3f6f7;padding:18px;border-radius:17px;max-width:min(1400px,94vw);max-height:94svh;color:var(--ink)}.lightbox .dialog-close{position:fixed;top:18px;right:18px;background:#fff;z-index:2;box-shadow:0 2px 9px #0002}.lightbox img{width:auto;height:auto;max-width:100%;max-height:calc(90svh - 55px);object-fit:contain;margin:auto}.lightbox figcaption{font-size:12px;color:var(--muted);padding:12px 8px 0;max-width:850px}
@media(min-width:1500px){.ecosystem-page main{padding-bottom:100px}.ecosystem-map{margin-top:85px}}
@media(max-width:900px){.shell{width:calc(100% - 48px)}.studio-hero{grid-template-columns:1fr 1fr;gap:25px;padding-top:65px}.studio-hero h1{font-size:49px}.hero-copy>p{font-size:15px}.section{padding-block:65px}.feature-panel{gap:24px;padding:28px;grid-template-columns:1fr 1.5fr}.editorial,.sticker-layout{gap:35px}.section-heading>p{max-width:280px}.small-features{gap:25px}.family-section{padding:32px}}
@media(max-width:620px){.shell{width:calc(100% - 40px)}.site-header{height:76px}.brand{font-size:21px;gap:8px}.brand svg,.brand img{width:26px;height:26px}.header-link{font-size:12px;gap:5px}.header-link .arrow{width:15px;height:15px}.ecosystem-page main{padding:20px 0 30px;justify-content:flex-start}.ecosystem-intro h1{font-size:40px;line-height:1.07;letter-spacing:-.05em}.ecosystem-intro .eyebrow{display:none}.ecosystem-map{grid-template-columns:1fr;gap:13px;margin-top:35px;padding:0;max-width:380px}.ecosystem-map:before{left:57px;top:45px;bottom:45px;right:auto;height:auto;width:1px;background:linear-gradient(#c3dce6,#42c5e8 50%,#c3dce6)}.product{display:grid;grid-template-columns:92px 1fr;grid-template-rows:auto auto;padding:10px 14px;text-align:left;column-gap:20px;row-gap:0;align-items:center;border-radius:20px;min-height:114px}.product:hover{transform:translateX(3px)}.app-tile{width:88px;height:88px;border-radius:22px;grid-row:1/3;box-shadow:0 10px 23px -13px #203c5559}.app-tile:after{inset:4px;border-radius:18px}.app-tile>svg{width:53px;height:53px}.product-name{font-size:26px;margin-top:9px;align-self:end;justify-content:space-between}.product-name .mini-arrow{width:17px;height:17px}.product-description{font-size:12px;line-height:1.5;margin-top:5px;align-self:start}.product-status{top:-4px;right:-6px;font-size:9px;padding:3px 6px}.site-footer{font-size:11px;padding-block:20px}.home-footnote{margin-top:20px;font-size:11px}.studio-header-wrap .site-header{height:66px}.header-nav{gap:0}.header-nav>a:not(.header-link){display:none}.header-nav .header-link{padding-left:0;border:0}.studio-hero{grid-template-columns:1fr;gap:38px;padding-top:41px;padding-bottom:28px}.studio-hero h1{font-size:46px;line-height:1.06;margin-top:21px}.hero-copy>p{font-size:16px;max-width:360px;margin-top:21px}.hero-copy .button-row{margin-top:24px}.hero-screen:before{inset:0 -5px -10px 20px;transform:rotate(2deg)}.image-note{font-size:10px;margin-top:15px}.hero-meta{flex-wrap:wrap;gap:12px;padding-block:24px}.hero-meta>span{font-size:11px}.section{padding-block:55px}.section-heading{display:block;margin-bottom:25px}.section-heading h2,.editorial-copy h2{font-size:34px;letter-spacing:-.045em}.section-heading>p{font-size:14px;max-width:none;margin-top:18px}.feature-tabs{margin-inline:-2px;gap:3px}.feature-tabs button{padding:9px 12px;font-size:13px}.feature-panel{padding:23px 19px;grid-template-columns:1fr;gap:23px;border-radius:17px;min-height:0}.feature-text h3{font-size:25px;margin-bottom:12px}.feature-text .eyebrow{margin-bottom:10px}.feature-text .text-link{margin-top:15px}.feature-image{height:263px}.feature-image img{max-height:263px}.editorial,.sticker-layout{grid-template-columns:1fr;gap:28px}.editorial-copy>p{font-size:15px;margin-top:17px}.fact-list{margin-top:20px;gap:12px}.impose-figure{padding:10px;border-radius:13px}.impose-figure figcaption{font-size:11px}.sticker-pair{order:2;gap:12px}.sticker-pair figcaption{font-size:11px}.sticker-pair figure:last-child{padding-top:23px}.small-features{grid-template-columns:1fr;gap:29px}.small-feature{padding-top:19px}.small-feature h3{margin-top:11px;font-size:25px}.small-feature p{font-size:15px}.family-section{padding:28px 24px;display:block;margin-bottom:25px;border-radius:18px}.family-section h2{font-size:29px}.family-section .button{margin-top:24px}.product-dialog{padding:35px 26px}.product-dialog h2{font-size:32px}.lightbox{padding:10px;max-width:96vw;border-radius:10px}}
@media(max-width:360px){.shell{width:calc(100% - 32px)}.ecosystem-intro h1{font-size:35px}.product{column-gap:13px;padding-inline:9px;grid-template-columns:82px 1fr}.app-tile{width:80px;height:80px}.ecosystem-map:before{left:49px}.product-name{font-size:23px}.product-description{font-size:11px}.studio-hero h1{font-size:41px}.button{font-size:14px;padding-inline:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media(max-width:620px){.ecosystem-map:before{background:linear-gradient(#42c5e8,#e0418b 52%,#f2ca2b)}.ecosystem-page .site-header>.eyebrow{display:none}}
