:root{color-scheme:dark;--bg:#141416;--surface:#202023;--line:#343438;--text:#f5f5f7;--muted:#a5a5ad;--accent:#ff942f;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--bg);color:var(--text);font-size:1rem;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:5px}header{position:sticky;top:0;z-index:10;background:#141416ed;border-bottom:1px solid #ffffff0b;backdrop-filter:blur(18px)}.topbar{max-width:1320px;margin:auto;min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:12px 40px}.brand{font-size:1.1875rem;font-weight:650;letter-spacing:-.5px;display:flex;align-items:center;gap:10px}.brand img{border-radius:8px}.topbar>div{display:flex;gap:32px;font-size:0.875rem;color:#c6c6cb}.topbar a:hover,footer a:hover{color:var(--accent)}.project-label{font-size:0.75rem;color:var(--muted)}.hero{max-width:1320px;margin:auto;padding:86px 40px 110px;text-align:center}.eyebrow{font-size:0.75rem;letter-spacing:2px;font-weight:650;color:var(--accent)}.eyebrow span{display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%;margin:0 8px 2px 0}h1{font-size:clamp(3rem,6.2vw,5.125rem);line-height:1.05;letter-spacing:-4px;font-weight:650;margin:26px 0}h1 span{color:#a3a3ac}.hero>p{font-size:1.1875rem;line-height:1.6;color:#aaaab2;margin:0}.tour-link{display:inline-flex;gap:22px;align-items:center;color:var(--accent);font-size:0.9375rem;margin:27px 0 36px}.hero-image{padding:0;border:0;background:#000;display:block;width:100%;border-radius:22px;overflow:hidden;transition:transform .25s}.hero-image:hover{transform:translateY(-3px)}.hero-image img{display:block;width:100%;height:auto}.hero-caption{display:flex;justify-content:space-between;font-size:0.75rem;color:#7e7e87;margin:17px 6px}.explore{border-top:1px solid var(--line);max-width:1320px;margin:auto;padding:84px 40px 110px}.section-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:54px}h2{font-size:clamp(2.25rem,4.2vw,3.5rem);font-weight:600;line-height:1.08;letter-spacing:-2px;margin:20px 0 0}.section-intro>p{max-width:340px;color:var(--muted);font-size:1.0625rem;line-height:1.6;margin:0 0 4px}.tour-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:36px}aside{border-right:1px solid var(--line);padding-right:22px}aside h3{font-size:0.6875rem;text-transform:uppercase;letter-spacing:1.5px;color:#777780;margin:24px 12px 10px}aside h3:first-child{margin-top:0}.section-button{display:flex;width:100%;border:0;background:transparent;color:#aaaab3;text-align:left;align-items:center;gap:12px;padding:10px 12px;font-size:0.875rem;border-radius:8px;margin:2px 0;line-height:1.3}.section-button:hover{background:#ffffff05;color:#fff}.section-button[aria-pressed=true]{color:var(--accent);background:#ff942f12}.nav-dot{width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.5;flex:none}.section-button[aria-pressed=true] .nav-dot{opacity:1}.feature-label{font-size:0.75rem;color:var(--accent);margin:0 0 15px}.feature-title{font-size:2rem;line-height:1.15;font-weight:600;letter-spacing:-1px;margin:0 0 15px}.feature-description{font-size:1rem;line-height:1.65;color:var(--muted);max-width:720px;margin:0 0 28px}.screen-button{display:block;width:100%;padding:0;background:#000;border:1px solid #333338;border-radius:15px;overflow:hidden;cursor:zoom-in}.screen-button img{width:100%;height:auto;display:block}.screen-meta{display:flex;justify-content:space-between;gap:16px;margin:16px 0 22px;align-items:center;font-size:0.8125rem;color:#a5a5ad}.enlarge{background:none;border:0;color:var(--accent);font-size:0.8125rem;padding:5px 0}.thumbnails{display:flex;gap:14px;flex-wrap:wrap}.thumbnail{border:1px solid #38383d;border-radius:9px;padding:4px;background:transparent;color:var(--muted);width:150px;text-align:left}.thumbnail img{display:block;width:100%;border-radius:5px}.thumbnail span{display:block;font-size:0.75rem;line-height:1.4;padding:9px 5px 6px}.thumbnail[aria-pressed=true]{border-color:var(--accent);color:#f5f5f7;background:#ff942f08}.description-only{margin-top:44px;padding:30px 0;border-top:1px solid var(--line);color:var(--muted);font-size:0.875rem}.mobile-picker{display:none}.craft{background:#1b1b1e;padding:100px max(40px,calc((100vw - 1240px)/2));border-top:1px solid var(--line)}.craft-lead{font-size:1.1875rem;color:var(--muted);margin:24px 0 58px}.craft-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:48px}.detail-number{color:var(--accent);font-size:0.75rem;font-variant-numeric:tabular-nums}.craft h3{font-size:1.375rem;font-weight:550;letter-spacing:-.5px;margin:20px 0 12px}.craft article p{font-size:1rem;line-height:1.7;color:var(--muted);margin:0}footer{max-width:1320px;padding:42px 40px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}footer p,footer>a:last-child{font-size:0.75rem;color:var(--muted)}dialog{width:96vw;max-width:1800px;max-height:94vh;padding:0;background:#18181b;color:var(--text);border:1px solid #49494e;border-radius:16px}dialog::backdrop{background:#000d;backdrop-filter:blur(12px)}.dialog-bar,.dialog-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 22px}.dialog-bar p{font-size:0.875rem;margin:0}.dialog-bar button,.dialog-bottom button{border:0;background:#ffffff0a;border-radius:8px;padding:10px 14px;color:var(--text);font-size:0.875rem}.dialog-bottom span{font-size:0.8125rem;color:var(--muted)}.dialog-bottom button:disabled{opacity:.3;cursor:default}.zoom-scroll{max-height:calc(94vh - 140px);overflow:auto;background:#000}.zoom-scroll img{display:block;width:100%;height:auto}.skip{position:fixed;left:20px;top:-100px;z-index:20;background:var(--accent);color:#171719;padding:12px}.skip:focus{top:12px}@media(min-width:1500px){.tour-layout{grid-template-columns:210px minmax(0,1fr)}}@media(max-width:800px){.topbar{padding:15px 22px;min-height:66px}.project-label{display:none}.topbar>div{gap:20px;font-size:0.75rem}.hero{padding:65px 20px 65px}h1{letter-spacing:-2.4px}.hero>p{font-size:1.0625rem}.hero-caption{font-size:0.6875rem;gap:12px}.hero-image{border-radius:12px}.explore{padding:56px 22px 70px}.section-intro{display:block;margin-bottom:35px}.section-intro>p{margin-top:25px;max-width:440px}.tour-layout{display:block}aside{display:none}.mobile-picker{display:grid;gap:9px;margin-bottom:32px}.mobile-picker label{font-size:0.75rem;color:var(--muted)}select{padding:14px;background:#222225;border:1px solid #414146;border-radius:9px;color:var(--text);width:100%}.feature-title{font-size:1.75rem}.thumbnail{width:calc((100% - 28px)/3)}.thumbnail span{font-size:0.75rem}.craft{padding:65px 24px}.craft-grid{grid-template-columns:1fr;gap:35px}.craft-grid article{border-top:1px solid var(--line);padding-top:24px}.craft-lead{margin-bottom:35px}footer{flex-wrap:wrap;padding:32px 24px}footer p{order:3;width:100%;margin:0}.zoom-scroll img{width:auto;min-width:100%;max-width:none;height:65vh}.dialog-bar,.dialog-bottom{padding:12px}.dialog-bar p{max-width:70%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}@media(max-width:400px){.brand{font-size:1rem}.topbar>div{gap:12px}.topbar{padding:12px 16px}.hero-caption{flex-direction:column}.thumbnail{width:calc((100% - 14px)/2)}}
.thumbnail img{height:auto}.topbar{flex-wrap:wrap}.topbar>div{flex-wrap:wrap}.screen-meta{flex-wrap:wrap}.dialog-bar p{overflow-wrap:anywhere}

/* Overview previews share the viewer width and preserve the original capture ratio. */
#feature[data-section="overview"] .thumbnails{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}
#feature[data-section="overview"] .thumbnail{width:100%;min-width:0;padding:6px}
#feature[data-section="overview"] .thumbnail img{width:100%;height:auto;aspect-ratio:2850 / 2040;object-fit:contain}
#feature[data-section="overview"] .thumbnail span{font-size:.875rem;padding:12px 8px;line-height:1.45;overflow-wrap:anywhere}
@media(min-width:801px) and (max-width:1100px){#feature[data-section="overview"] .thumbnails{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){#feature[data-section="overview"] .thumbnails{grid-template-columns:1fr;gap:18px}}
/* Match the complete Overview card heights, including wrapped captions. */
#feature[data-section="overview"] .thumbnails{align-items:stretch}
#feature[data-section="overview"] .thumbnail{display:flex;flex-direction:column;justify-content:flex-start}
#feature[data-section="overview"] .thumbnail span{flex:1;min-height:4.5em;display:flex;align-items:center}
.ios-section,.capabilities{max-width:1320px;margin:auto;padding:90px 40px 110px;border-top:1px solid var(--line)}
.ios-tabs{display:flex;gap:8px;flex-wrap:wrap;padding:6px;background:#202023;border:1px solid var(--line);border-radius:14px;width:fit-content;margin-bottom:42px}
.ios-tabs button{border:0;background:transparent;color:var(--muted);padding:12px 24px;border-radius:9px;font-size:.9375rem}
.ios-tabs button[aria-pressed=true]{color:var(--accent);background:#ff942f14}
.ios-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:30px;margin-bottom:35px}
.ios-heading h3{font-size:2rem;letter-spacing:-1px;font-weight:600;margin:0 0 14px}
.ios-heading p{max-width:700px;color:var(--muted);line-height:1.65;margin:0}
#ios-count{color:var(--muted);font-size:.8125rem;white-space:nowrap;padding-top:10px}
.ios-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px;align-items:start}
.ios-shot{margin:0;min-width:0;max-width:360px;width:100%;justify-self:center}
.ios-shot button{display:block;padding:0;width:100%;border:1px solid #38383d;background:#000;border-radius:24px;overflow:hidden;cursor:zoom-in}
.ios-shot img{display:block;width:100%;height:auto;aspect-ratio:1206 / 2622;object-fit:contain}
.ios-shot figcaption{display:flex;justify-content:space-between;gap:12px;padding:17px 4px;font-size:.875rem;line-height:1.5;color:#c6c6cb}
.ios-shot figcaption span:last-child{color:var(--accent)}
.highlights{display:grid;grid-template-columns:1fr 1fr;column-gap:64px}
.highlights article{padding:30px 0;border-top:1px solid var(--line)}
.highlights h3{font-size:1.3125rem;font-weight:550;letter-spacing:-.3px;margin:13px 0}
.highlights p{color:var(--muted);line-height:1.7;margin:0;max-width:530px}
.platform-tag{font-size:.6875rem;letter-spacing:1px;text-transform:uppercase;color:var(--accent)}
.engine-heading{border-top:1px solid var(--line);margin-top:65px;padding-top:40px;display:flex;justify-content:space-between;gap:30px;align-items:baseline}
.engine-heading h3{font-size:1.625rem;margin:0}.engine-heading p{max-width:510px;color:var(--muted);font-size:.875rem;line-height:1.6}
#engine-details details{border-bottom:1px solid var(--line);padding:22px 0}
#engine-details summary{font-size:1.0625rem;cursor:pointer;padding-right:20px;line-height:1.5}
#engine-details summary::marker{color:var(--accent)}
#engine-details details p{color:var(--muted);max-width:950px;line-height:1.8;margin:16px 0 0}
dialog.portrait{max-width:650px}.portrait .zoom-scroll img{width:auto;height:auto;max-height:calc(94vh - 150px);max-width:100%;min-width:0;margin:auto;object-fit:contain}
@media(max-width:1000px){.ios-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}}
@media(max-width:600px){.ios-section,.capabilities{padding:60px 22px}.ios-gallery{grid-template-columns:1fr;gap:32px}.ios-tabs{width:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.ios-tabs button{padding:12px 6px}.ios-heading{display:block}.ios-heading h3{font-size:1.75rem}#ios-count{display:block;margin-top:16px}.highlights{grid-template-columns:1fr}.engine-heading{display:block}.portrait .zoom-scroll img{max-height:none;width:100%;height:auto}.ios-shot{max-width:360px}}

/* Consistent product casing and a clearer heading hierarchy. */
.eyebrow{letter-spacing:1px;text-transform:none}
#engine-details summary{font-weight:600}
.highlights h3,.craft h3{font-weight:600}
/* Hide the top 144px status band without altering the source captures. */
.ios-shot img{margin-top:-11.9403%}
dialog.portrait{max-width:480px}
.portrait .zoom-scroll img{width:100%;height:auto;max-height:none;max-width:100%;min-width:0;margin:-11.9403% 0 0}

/* Shared heading and description tracks keep paired features aligned. */
.highlights{row-gap:0}
.highlights article{display:grid;grid-template-rows:subgrid;grid-row:span 2;row-gap:14px;align-content:start}
.highlights h3{position:relative;margin:0;padding-left:22px;line-height:1.4}
.highlights h3::before{content:"";position:absolute;left:0;top:.52em;width:7px;height:7px;border-radius:50%;background:var(--accent)}
.highlights p{padding-left:22px;max-width:none}
@supports not (grid-template-rows:subgrid){.highlights article{display:block}.highlights h3{min-height:2.8em;margin-bottom:14px}}
@media(max-width:600px){.highlights article{display:block}.highlights h3{min-height:0;margin-bottom:14px}}

/* Align both hero labels on one centered, intrinsic-width column. */
.hero{display:grid;grid-template-columns:minmax(0,1fr) max-content minmax(0,1fr)}
.hero>*{grid-column:1 / -1;min-width:0}
.hero>.eyebrow,.hero>.tour-link{grid-column:2;justify-self:start}
.hero>.tour-link{font-weight:650;gap:8px}

/* A restrained frosted orange surround for authentic app captures. */
.hero-image,.screen-button,.ios-shot button{
 background:radial-gradient(ellipse at 20% 0%,#ffad6330,transparent 65%),linear-gradient(135deg,#ff942f14,#ff942f06);
 border:1px solid #ffb16b30;
 box-shadow:inset 0 1px 0 #ffe0c018,0 14px 40px #00000018;
 backdrop-filter:blur(20px);
 -webkit-backdrop-filter:blur(20px);
 padding:clamp(10px,1.6vw,22px);
}
.hero-image{width:96%;justify-self:center;border-radius:24px}
.screen-button{width:96%;margin-inline:auto;border-radius:20px}
.hero-image img,.screen-button img{border-radius:12px}
.ios-shot button{padding:12px;border-radius:28px}
.ios-shot{max-width:344px}
.ios-crop{display:block;overflow:hidden;border-radius:18px}
.ios-shot button img{margin-top:-11.9403%}
.thumbnail{background:linear-gradient(135deg,#ff942f12,#ff942f04);border-color:#ffb16b25;padding:7px}
@media(max-width:600px){.hero-image,.screen-button{width:100%;padding:9px;border-radius:16px}.hero-image img,.screen-button img{border-radius:8px}.ios-shot button{padding:10px}}

/* Cropped image files need only a thin glass bezel. */
.hero-image,.screen-button,.ios-shot button{padding:5px;background-color:#30251d;border-radius:17px}
.thumbnail{padding:4px}
.ios-shot button{border-radius:23px}
.hero-image img,.screen-button img{border-radius:12px;clip-path:none;mix-blend-mode:normal}
.ios-shot img,.thumbnail img,.zoom-scroll img{mix-blend-mode:normal}

html.pointer-input :is(button,a,select):focus-visible{outline:none}

/* Match the captured Mac window curve; transparent corners reveal the glass. */
.hero-image,.screen-button{border-radius:calc(2.5% + 5px) / calc(3.6% + 5px)}
.hero-image img,.screen-button img,.thumbnail img{border-radius:0}
.thumbnail{border-radius:10px}

.hero>.eyebrow{font-size:1.0625rem;font-weight:650}
.hero>.tour-link{font-size:.9375rem;font-weight:650}

/* Follow the screenshot corner curve with a consistent 5px surround. */
.hero-image,.screen-button{border-radius:calc(2.5% + 6px) / calc(3.6% + 6px)}
.ios-shot button{border-radius:24px}
.ios-crop{border-radius:18px}
/* Align the CTA text with the platform text, after its decorative dot. */
.hero>.eyebrow{display:flex;align-items:center;gap:10px}
.hero>.eyebrow span{flex:none;margin:0;width:6px;height:6px}
.hero>.tour-link{margin-left:16px}

/* A little breathing room; outer curves track the actual image radius. */
.hero-image,.screen-button,.ios-shot button{padding:12px}
.hero-image,.screen-button{border-radius:var(--frame-radius,36px)}
.ios-shot button{border-radius:31px}
@media(max-width:600px){.hero-image,.screen-button,.ios-shot button{padding:10px}.ios-shot button{border-radius:29px}}
