/* Native typography, quiet surfaces, photography in the foreground. */
:root{color-scheme:dark;--background:#08090b;--surface:#101114;--text:#f5f5f7;--secondary:#a4a4ae;--quiet:#909099;--line:#26262c;--max-width:1120px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body{margin:0;background:var(--background);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;cursor:pointer}
button,a,summary{-webkit-tap-highlight-color:transparent}
button,summary{touch-action:manipulation}
a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--text);outline-offset:6px}
::selection{background:#514464;color:white}
[hidden]{display:none!important}
h1,h2,h3,p,figure{margin:0}
h1,h2{text-wrap:balance}
#main:focus{outline:none}
.container{width:min(var(--max-width),calc(100% - 80px));margin-inline:auto}
.skip-link{position:fixed;z-index:100;top:12px;left:16px;padding:12px 20px;border-radius:24px;background:white;color:black;transform:translateY(-150%)}
.skip-link:focus{transform:translateY(0)}
.site-header{position:sticky;top:0;z-index:20;border-bottom:1px solid #ffffff0d;background:#08090bf2;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.nav{min-height:72px;display:flex;align-items:center;gap:36px}
.brand{display:flex;align-items:center;gap:9px;flex-shrink:0}
.brand-icon{width:29.16px;height:29.16px;object-fit:contain}
.wordmark{width:113.4px;height:auto}
.nav-links{margin-left:auto;display:flex;gap:30px;align-items:center;font-size:13px;color:var(--secondary)}
.nav-links a{display:inline-flex;align-items:center;min-height:44px;padding:12px 0;transition:color .2s}
.nav-links a:hover{color:white}
.button{display:inline-flex;justify-content:center;align-items:center;min-height:52px;padding:14px 25px;border-radius:100px;border:1px solid transparent;background:var(--text);color:#111114;font-size:14px;font-weight:600;line-height:1.35;transition:background .2s,transform .2s;white-space:nowrap}
.button:hover{background:#dcdce1;transform:translateY(-2px)}
.button:disabled{cursor:default;opacity:1;transform:none;color:#55555f;background:var(--text)}
.store-badge{display:inline-block;padding:12px;border-radius:12px}
.store-badge img{height:48px;width:auto;max-width:100%}
.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.15em;font-weight:600;line-height:1.6;color:var(--secondary)}
.hero{text-align:center;padding-top:64px}
.hero-eyebrow{display:flex;align-items:center;justify-content:center;gap:9px;margin-bottom:23px}
.status-dot{width:5px;height:5px;background:#aaaab5;border-radius:50%}
h1{font-size:clamp(44px,5.8vw,74px);font-weight:650;letter-spacing:-.055em;line-height:1.075}
h1 span,h2 span{color:var(--secondary)}
.hero h1 .hero-subject{display:inline-block;color:var(--text)}
.hero-description{max-width:570px;margin-inline:auto;color:var(--secondary);font-size:18px;line-height:1.55;margin-top:23px;letter-spacing:-.015em}
.hero-actions{display:flex;flex-direction:column;gap:4px;justify-content:center;align-items:center;margin-top:27px}
.text-link{font-size:13px;display:inline-flex;gap:10px;align-items:center;min-height:44px;color:#d3d3da}
.text-link:hover{text-decoration:underline;text-underline-offset:5px}
.text-link span{font-size:17px}
.section{padding-block:94px}
h2{font-size:clamp(35px,4.25vw,53px);font-weight:600;line-height:1.1;letter-spacing:-.045em}
.section-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:65px;margin-bottom:40px}
.section-intro h2,.center-intro h2,.privacy-layout h2,.faq-section h2{margin-top:17px}
.section-number{margin-right:11px;color:var(--quiet);font-variant-numeric:tabular-nums;letter-spacing:.02em}
.section-description{width:320px;flex-shrink:0;font-size:16px;line-height:1.65;color:var(--secondary);padding-bottom:3px}
.product-stage{margin-top:26px;border:1px solid #ffffff12;border-radius:14px;overflow:hidden;background:#0e0f12}
.capture-placeholder{display:flex;align-items:center;justify-content:center;flex-direction:column;background:#0d0e11;gap:14px;min-height:160px;padding:24px;text-align:center}
.capture-placeholder>svg{width:34px;height:34px;fill:none;stroke:#73747f;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
.capture-placeholder>span{color:#b5b5bf;font-size:13px}
.capture-placeholder>small{font-size:11px;color:var(--quiet);margin-top:-7px}
.product-stage figcaption{border-top:1px solid #ffffff0c;padding:13px 22px;color:var(--quiet);font-size:11px;text-align:center}
.product-image{width:100%;height:auto;object-fit:contain;background:#050506}
.capture-open{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in}
.capture-open:focus-visible{outline:none;filter:brightness(1.12)}
body.lightbox-open{overflow:hidden}
.image-lightbox{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:64px 24px 24px;border:0;background:transparent;color:var(--text)}
.image-lightbox[open]{display:grid;grid-template-rows:minmax(0,1fr)}
.image-lightbox::backdrop{background:#181026d9;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.image-lightbox-content{display:flex;align-items:center;justify-content:center;min-width:0;min-height:0}
.image-lightbox-content img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}
.image-lightbox-close{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:#ffffff14;line-height:1}
.hero .product-stage{margin-top:36px;box-shadow:0 24px 70px #0004;text-align:left}
.editor-capture{width:100%}
.feature-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px}
.feature-icon{width:28px;height:28px;stroke:#b6b6c0;fill:none;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;margin-bottom:18px}
h3{font-size:19px;font-weight:550;letter-spacing:-.025em;line-height:1.35}
.feature-row p{font-size:14px;color:var(--secondary);line-height:1.7;margin-top:11px}
.view-section,.privacy-section{background:var(--surface);border-block:1px solid #ffffff07}
.center-intro{text-align:center}
.center-intro>p:last-child{font-size:16px;color:var(--secondary);line-height:1.65;margin-top:21px}
.capture-frame{overflow:hidden;border:1px solid #ffffff0f;border-radius:12px;background:#08090b}
.quiet-note{color:var(--quiet);font-size:12px;line-height:1.7}
.view-section .quiet-note{text-align:center;margin-top:32px}
.privacy-section{padding-block:52px}
.privacy-layout{display:grid;grid-template-columns:140px minmax(0,1fr) auto;gap:36px;align-items:center;max-width:1120px}
.privacy-layout h2{font-size:clamp(30px,3vw,40px);margin-top:0}
.privacy-art{display:flex;flex-direction:column;align-items:center;justify-content:center}
.privacy-art img{width:140px;height:auto}
.privacy-description{font-size:15px;line-height:1.7;color:var(--secondary);margin-top:16px;max-width:650px}
.faq-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.65fr);gap:70px}
.faq-list{border-top:1px solid var(--line)}
details{border-bottom:1px solid var(--line)}
summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;padding:23px 0;font-size:15px;font-weight:500;line-height:1.5}
summary::-webkit-details-marker{display:none}
summary span{font-size:22px;line-height:1;color:var(--quiet);transition:transform .2s}
details[open] summary span{transform:rotate(45deg)}
details>div{padding:0 35px 24px 0;color:var(--secondary);font-size:14px;line-height:1.8}
details p+p{margin-top:14px}
.site-footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:24px;padding-block:28px;color:var(--quiet);font-size:11px;line-height:1.5}
.footer-brand img{width:101.25px;height:auto}
.site-footer>a:last-child{display:flex;gap:10px;align-items:center;min-height:44px}
.site-footer>a:last-child:hover{color:var(--text)}
@media(max-width:1000px){
  .container{width:calc(100% - 56px)}.nav{gap:24px}.nav-links{gap:21px}
  .section-intro{gap:40px}.section-description{width:270px}.privacy-layout{gap:36px}.faq-section{gap:45px}.feature-row{gap:28px}
}
@media(max-width:760px){
  html{scroll-padding-top:76px}.container{width:calc(100% - 40px)}
  .nav{min-height:60px;gap:0 12px;flex-wrap:wrap;padding-block:8px}.brand{gap:5px}.brand-icon{width:23.49px;height:23.49px}.wordmark{width:90.72px}.nav-links{display:flex;justify-content:space-between;gap:8px;margin-left:auto;font-size:12px}.nav-links a{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:10px 4px}
  .hero{padding-top:36px}.hero-eyebrow{font-size:9px;letter-spacing:.12em;margin-bottom:20px}
  h1{font-size:clamp(37px,6.9vw,52px);letter-spacing:-.05em}.hero-description{font-size:16px;margin-top:22px}.hero-description br{display:none}
  .hero-actions{gap:20px;margin-top:25px}.button{font-size:13px;min-height:49px;padding:13px 21px}.text-link{font-size:12px}
  .section{padding-block:58px}.section-intro{display:block;margin-bottom:26px}.section-description{width:auto;max-width:480px;margin-top:22px;font-size:15px}
  h2{font-size:37px}.section-intro h2,.center-intro h2{margin-top:15px}.product-stage{margin-top:23px}.capture-placeholder{min-height:140px;padding:22px}
  .feature-row{gap:27px;grid-template-columns:1fr;padding-top:28px;margin-top:30px}
  .feature-row article{display:grid;grid-template-columns:30px minmax(0,1fr);column-gap:18px}.feature-icon{grid-row:1/3;margin:2px 0 0}.feature-row h3{font-size:18px}.feature-row p{font-size:14px;margin-top:8px}
  .center-intro>p:last-child{font-size:15px}.view-section .quiet-note{margin-top:28px}
  .privacy-section{padding-block:38px}.privacy-layout{grid-template-columns:72px minmax(0,1fr);gap:22px}.privacy-art img{width:72px}.privacy-description{font-size:15px}
  .faq-section{grid-template-columns:minmax(0,1fr);gap:30px}.faq-section h2{margin-top:12px}summary{font-size:14px;padding:22px 0}details>div{font-size:13px;padding-right:10px}
  .site-footer{flex-wrap:wrap;gap:20px;padding-block:25px}.site-footer p{order:3;width:100%;font-size:10px}.footer-brand img{width:90.72px}
}
@media(max-width:540px){.hero h1 .hero-subject{display:block}.hero h1>br{display:none}.hero-actions{flex-direction:column;gap:7px}.hero-actions>.button{min-width:200px}}
@media(max-width:400px){
  .container{width:calc(100% - 32px)}.brand-icon{width:19.44px;height:19.44px}.wordmark{width:76.14px}.hero h1{font-size:clamp(32px,9.5vw,37px)}.hero-description{font-size:15px}
}
/* Keep full-size tap targets on the narrowest phones. */
@media(max-width:359px){html{scroll-padding-top:112px}.nav{padding-block:4px}.nav-links{width:100%;margin-left:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.button:hover{transform:none}}
.help-intro{font-size:14px;line-height:1.7;color:var(--secondary);margin-top:22px;max-width:290px}
.help-links{display:flex;flex-direction:column;align-items:flex-start;margin-top:18px;gap:2px}
.help-links a,.footer-links a{display:inline-flex;align-items:center;min-height:44px}
.help-links a{font-size:13px;color:#d3d3da}
.help-links a:hover,.footer-links a:hover{text-decoration:underline;text-underline-offset:4px;color:var(--text)}
.start-steps{margin:0 0 14px;padding-left:20px}
.start-steps li{padding-left:5px;margin-bottom:14px}
.start-steps strong{font-weight:550;color:var(--text)}
.compatibility-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:24px}
.compatibility-grid h3{font-size:18px;color:var(--text)}
.compatibility-grid dl{margin:18px 0}
.compatibility-grid dt{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--text);margin-top:18px;font-weight:600}
.compatibility-grid dd{margin:5px 0 0;font-size:13px;line-height:1.7}
.guide-note{font-size:12px;line-height:1.7;color:var(--quiet)}
.guide-bottom{border-top:1px solid var(--line);padding-top:18px;margin-top:24px}
.guide-bottom a{color:var(--text);text-decoration:underline;text-underline-offset:3px}
.footer-links{display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px}
.privacy-document{max-width:760px;padding-block:72px 80px}
.document-intro{margin-bottom:48px}
.document-intro h1{font-size:clamp(40px,5vw,64px);margin-top:20px;text-wrap:balance}
.document-lead{font-size:20px;line-height:1.6;color:var(--secondary);margin-top:24px;max-width:600px}
.document-intro .quiet-note{margin-top:22px}
.privacy-document section{border-top:1px solid var(--line);padding-block:30px}
.privacy-document h2{font-size:27px;letter-spacing:-.025em;line-height:1.25}
.privacy-document section p{font-size:16px;line-height:1.8;color:var(--secondary);margin-top:18px}
.privacy-document section a{color:var(--text);text-decoration:underline;text-underline-offset:4px}
.document-back{margin-top:16px}
@media(max-width:760px){.privacy-document{padding-block:44px 60px}.document-intro{margin-bottom:32px}.document-lead{font-size:17px}.privacy-document h2{font-size:24px}.privacy-document section p{font-size:15px}.help-links{flex-direction:row;flex-wrap:wrap;gap:4px 20px}.help-intro{max-width:400px}.footer-links{gap:4px 18px}}
@media(max-width:540px){.compatibility-grid{grid-template-columns:minmax(0,1fr);gap:22px}.compatibility-grid section+section{border-top:1px solid var(--line);padding-top:22px}.footer-links{width:100%}}
/* Contact form: explicit labels, quiet validation, no hidden collection. */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.contact-document{max-width:680px}
.contact-document .document-intro{margin-bottom:32px}
.contact-availability{color:var(--secondary);font-size:14px;line-height:1.7;padding:18px 20px;background:var(--surface);border:1px solid var(--line);border-radius:12px;margin-bottom:28px}
#contact-form fieldset{padding:0;margin:0;border:0;min-width:0}
.contact-field{margin-bottom:24px}
.contact-field label{display:block;font-size:14px;font-weight:550;margin-bottom:10px}
.contact-field input,.contact-field textarea{display:block;width:100%;border:1px solid #50505a;border-radius:10px;background:var(--surface);color:var(--text);padding:13px 15px;font:inherit;font-size:16px;line-height:1.6}
.contact-field textarea{resize:vertical;min-height:150px}
.contact-field input:focus-visible,.contact-field textarea:focus-visible{outline:2px solid var(--text);outline-offset:3px}
.contact-field [aria-invalid=true]{border-color:#ffb4b4}
.field-hint,.contact-note,.contact-help{font-size:12px;line-height:1.7;color:var(--secondary);margin-top:8px}
.field-error{color:#ffb4b4;font-size:13px;line-height:1.6;margin-top:8px}
.contact-note{margin-bottom:22px}
.contact-note a,.contact-help a{color:var(--text);text-decoration:underline;text-underline-offset:3px}
.contact-status{font-size:14px;line-height:1.7;margin-top:22px;color:var(--text)}
.contact-status:empty{margin:0}
.contact-help{border-top:1px solid var(--line);padding-top:24px;margin-top:28px}
#contact-form fieldset:disabled input,#contact-form fieldset:disabled textarea{color:var(--secondary);cursor:not-allowed}
@media(max-width:540px){.contact-document .document-intro h1{font-size:40px}.contact-document{padding-top:36px}}

main img{-webkit-user-drag:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}

/* Avoid image tint when a selection begins in surrounding text. */
main img::selection{background:transparent;color:inherit}
main img::-moz-selection{background:transparent;color:inherit}

/* Page copy is not selectable; editable form content remains selectable. */
body,body *{-webkit-user-select:none;user-select:none}
input,textarea,[contenteditable="true"],[contenteditable="true"] *{-webkit-user-select:text;user-select:text}
::selection{background:transparent;color:inherit}
input::selection,textarea::selection,[contenteditable="true"]::selection,[contenteditable="true"] *::selection{background:#514464;color:white}
.brand,.footer-brand{-webkit-user-drag:none;-webkit-touch-callout:none}
.brand{cursor:pointer}
.brand{min-height:44px}
.brand img,.footer-brand img{pointer-events:none;-webkit-user-drag:none;-webkit-touch-callout:none}

/* One availability message and one viewing/editing example. */
.store-status{font-size:14px;line-height:1.6;font-weight:550;color:#d3d3da}
.download-button{min-width:184px;gap:12px;box-shadow:inset 0 1px 0 #fff9,0 6px 24px #0003}
.download-button:disabled{color:#18181c;background:linear-gradient(180deg,#fff,#dddde5);border-color:#ffffff30}
.download-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.hero-actions .download-button{margin-top:10px;margin-bottom:6px}
.privacy-download{justify-self:end}
.view-capture{max-width:960px;margin:36px auto 0}
.mode-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;margin-top:30px;padding-top:28px;border-top:1px solid var(--line)}
.mode-features h3{font-size:21px}
.mode-features p{font-size:14px;line-height:1.75;color:var(--secondary);margin-top:12px;max-width:470px}
.viewing-modes{max-width:960px;margin-inline:auto}
.editor-examples{gap:28px;margin-top:0;padding-top:0;border-top:0}
.editor-examples article{display:flex;flex-direction:column}
.editor-examples p{padding-bottom:24px}
.editor-examples .capture-frame{margin-top:auto}
.photo-examples{margin-top:36px}
@media(max-width:760px){.mode-features{grid-template-columns:minmax(0,1fr);gap:26px;padding-top:24px;margin-top:26px}.mode-features h3{font-size:19px}.mode-features p{max-width:none;margin-top:9px}.editor-examples{margin-top:0;padding-top:0;gap:28px}.editor-examples p{padding-bottom:20px}}
@media(max-width:760px){.view-capture,.photo-examples{margin-top:30px}.privacy-layout h2{font-size:30px;margin-top:0}.privacy-description{font-size:14px}.feature-row{padding-top:0;margin-top:0}}
@media(max-width:540px){.privacy-layout{grid-template-columns:minmax(0,1fr)}.privacy-art{display:none}}
@media(max-width:760px){.privacy-download{grid-column:2;justify-self:start}.privacy-art{grid-row:1/3;align-self:start}}
@media(max-width:540px){.privacy-download{grid-column:1}}

/* Standalone 404 page. */
.download-section{text-align:center;border-top:1px solid var(--line);padding-block:72px 86px}
.download-logo{margin:0 auto 21px;object-fit:contain}
.download-section>p:not(.eyebrow){font-size:16px;color:var(--secondary);line-height:1.6;margin-top:23px}
.download-section>.button{margin-top:28px}
@media(max-width:760px){.download-section{padding-block:60px}.download-section>p:not(.eyebrow){font-size:14px}}
