/* Mobile app promotion. Screenshots retain their complete original framing. */
.app-home .eyebrow,.app-page .eyebrow{color:#a9402a}
.app-home{background:#e1efe9;padding-block:64px;overflow:hidden}
.app-home-inner{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:70px}
.app-home-copy{max-width:570px}
.home .app-home h2{font-size:clamp(32px,3.5vw,46px);line-height:1.14;margin:0 0 22px;letter-spacing:-1.7px}
.app-home h2 span{color:#347467}
.app-home-copy>p:not(.eyebrow){font-size:17px;line-height:1.8;max-width:490px;margin:0 0 24px;color:#34585c}
.app-status-list{list-style:none;margin:26px 0;padding:0;display:flex;gap:12px 24px;flex-wrap:wrap;font-size:12px;line-height:1.5}
.app-status-list li{display:flex;flex-direction:column;gap:3px}
.app-status-list strong{font-size:13px}
.app-status-list span{color:#536c6f}
.app-status-list li+li{border-left:1px solid #9fbdb5;padding-left:24px}
.app-button{display:inline-flex;align-items:center;justify-content:center;gap:13px;padding:15px 23px;min-height:52px;border:1px solid transparent;border-radius:30px;font-size:14px;font-weight:800;line-height:1.45;text-align:center;transition:background .2s,transform .2s}
.app-button svg{flex:0 0 21px;width:21px;height:21px;stroke-width:1.9}
.app-button-dark{background:var(--ink);color:#fff}
.app-button-dark:hover{background:#245963;transform:translateY(-2px)}
.app-button-light{background:#fff8ed;color:var(--ink)}
.app-button-light:hover{background:#f6c85f;transform:translateY(-2px)}
.app-text-link{font-size:14px;font-weight:800;min-height:48px;display:inline-flex;align-items:center;gap:10px;text-decoration:none}
.app-text-link>span:first-child{text-decoration:underline;text-underline-offset:5px}
.app-text-link:hover{color:#9f3925}
.app-phone{width:280px;max-width:100%;border:6px solid #143d46;border-radius:35px;background:#fffdf8;overflow:hidden;box-shadow:0 14px 34px #143d4617;line-height:0}
.app-phone img{display:block;width:100%;height:auto;aspect-ratio:1206/2622}
.app-home-visual{height:440px;position:relative;width:440px;max-width:100%;justify-self:center}
.app-home-visual::before{content:"";position:absolute;inset:25px -5px 25px 0;border-radius:50%;background:#c4e0d5}
.app-home-visual .app-phone{position:absolute;border-width:5px;border-radius:28px}
.app-phone-secondary{width:195px;left:8px;top:28px;transform:rotate(-8deg)}
.app-phone-primary{width:230px;right:8px;top:-5px;transform:rotate(7deg)}
.app-visual-note{position:absolute;bottom:1px;left:15px;display:inline-flex;align-items:center;gap:9px;border:1px solid #d1ded7;padding:11px 17px;border-radius:25px;background:#fffdf8;font-size:12px;font-weight:800;transform:rotate(-3deg)}
.app-visual-note svg{color:#b8462c;width:20px;height:20px}
.app-page h1,.app-page h2,.app-page h3{color:var(--ink);font-weight:850}
.app-page h2{font-size:clamp(30px,3.5vw,44px);line-height:1.2;letter-spacing:-1.5px;margin:0 0 20px}
.app-page h3{line-height:1.3;letter-spacing:-.5px}
.app-hero{background:#fbf4e9;padding-block:30px 65px;overflow:hidden}
.app-hero-inner{display:grid;grid-template-columns:1.2fr 1fr;gap:65px;align-items:center}
.app-back{display:inline-block;margin:0 0 48px;font-size:12px;font-weight:700;color:#536c6f;padding:9px 0}
.app-back:hover{text-decoration:underline;text-underline-offset:4px}
.app-hero h1{font-size:clamp(44px,5vw,70px);line-height:1.08;letter-spacing:-3px;margin:0 0 24px}
.app-hero h1 span{color:#ad412b}
.app-lead{font-size:18px;line-height:1.85;max-width:550px;margin:0 0 18px;color:#4c6367}
.app-promise{font-weight:800;font-size:14px;margin:0 0 28px}
.app-hero-actions{display:flex;gap:12px 22px;align-items:center;flex-wrap:wrap}
.app-hero .app-status-list{margin:28px 0 0}
.app-hero-visual{position:relative;padding:35px 0 15px;display:flex;align-items:center;justify-content:center}
.app-hero-orbit{position:absolute;width:440px;height:440px;max-width:115%;border-radius:50%;background:#b9ded5;left:50%;top:50%;transform:translate(-50%,-50%)}
.app-hero-visual .app-phone{position:relative;transform:rotate(3deg)}
.app-floating-tag{position:absolute;display:flex;align-items:center;gap:10px;padding:13px 17px;border-radius:24px;font-size:12px;font-weight:800;box-shadow:0 6px 18px #143d460d;line-height:1.4}
.app-floating-tag svg{width:20px;height:20px;flex:0 0 20px;stroke-width:1.9}
.app-tag-calendar{background:#f6c85f;left:-20px;top:115px;transform:rotate(-5deg)}
.app-tag-heart{background:#fffdf8;right:-10px;bottom:70px;transform:rotate(4deg);border:1px solid #dbe1db}
.app-tag-heart svg{color:#ad412b}
.app-features{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;padding-block:66px}
.app-feature-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;background:#e1efe9;border-radius:15px;flex:0 0 48px}
.app-feature-icon svg{width:25px;height:25px;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.app-feature:nth-child(2) .app-feature-icon{background:#fff0c8}
.app-feature:nth-child(3) .app-feature-icon{background:#ffe1d6}
.app-feature:nth-child(4) .app-feature-icon{background:#e8e0f0}
.app-feature h2{font-size:18px;line-height:1.4;letter-spacing:-.5px;margin:18px 0 10px}
.app-feature p{font-size:14px;line-height:1.8;color:#536b6f;margin:0}
.app-preview{padding-block:70px;background:#f4f5ef;scroll-margin-top:24px}
.app-section-heading{max-width:750px;margin:0 auto 44px;text-align:center}
.app-section-heading>.eyebrow{justify-content:center}
.app-section-heading>p:not(.eyebrow){color:#536b6f;font-size:16px;line-height:1.8;margin:0}
.app-section-heading h2>span{color:#b8462c}
.app-screens{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;max-width:1050px;margin-inline:auto}
.app-screen-card{margin:0;min-width:0}
.app-screen-link{display:flex;flex-direction:column;align-items:center;gap:14px;border-radius:36px;padding:12px 6px;transition:background .2s;width:100%;font:inherit}
.app-screen-link:disabled{cursor:default}
.app-screen-link:disabled .app-screen-zoom{visibility:hidden}
.app-screen-link:hover{background:#e4eae1}
.app-screen-link .app-phone{width:290px;border-width:5px;border-radius:30px;box-shadow:0 8px 18px #143d4612}
.app-screen-zoom{font-size:11px;font-weight:750;color:#536b6f}
.app-screen-zoom span{font-size:16px;margin-left:4px}
.app-screen-card figcaption{position:relative;padding:23px 0 0 45px}
.app-screen-number{position:absolute;left:0;top:25px;color:#607876;font-size:12px;letter-spacing:.08em;font-weight:800}
.app-screen-card h3{font-size:19px;margin:0 0 9px}
.app-screen-card p{font-size:14px;line-height:1.8;color:#536b6f;margin:0}
.app-captures-note{text-align:center;font-size:12px;color:#596f72;margin:35px 0 0}
.app-availability{padding-block:75px;scroll-margin-top:24px}
.app-release-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:1000px;margin-inline:auto}
.app-release-card{border:1px solid #dce3dc;border-radius:25px;padding:30px;background:#fff}
.app-release-heading{display:flex;align-items:center;gap:13px;flex-wrap:wrap}
.app-release-heading h3{font-size:23px;margin:0}
.app-release-card:nth-child(2) .app-feature-icon{background:#fff0c8}
.app-release-status{display:inline-block;border:1px solid #dbe4dc;border-radius:20px;padding:5px 11px;font-size:11px;font-weight:800;line-height:1.5;background:#f5f7f1}
.app-release-status.is-available{background:#dcefe4;border-color:#b4dac3;color:#235c38}
.app-release-card>p{color:#536b6f;line-height:1.8;font-size:15px;margin:20px 0 0}
.app-release-card .app-release-wait{font-size:12px;border-top:1px solid #e7ebe5;padding-top:18px;margin-top:22px;color:#536b6f}
.app-release-card .app-button{margin-top:24px}
.app-web{background:#143d46;color:#fff8ed;padding-block:65px}
.app-web-inner{display:flex;align-items:center;justify-content:space-between;gap:60px;max-width:1000px}
.app-web-copy{max-width:620px}
.app-page .app-web h2{color:#fff8ed}
.app-web .eyebrow{color:#b9ded5}
.app-web-copy>p:not(.eyebrow){font-size:16px;line-height:1.8;color:#d4e3dd;margin:0 0 26px;max-width:580px}
.app-qr{flex:0 0 204px;padding:20px 20px 16px;background:#fffdf8;border-radius:24px;color:var(--ink);text-align:center}
.app-qr a{display:block;line-height:0;border-radius:3px}
.app-qr img{display:block;width:164px;height:164px;max-width:100%}
.app-qr p{font-size:12px;font-weight:800;line-height:1.6;margin:14px 0 0}
body.app-preview-open{overflow:hidden}
dialog.app-lightbox{padding:0;border:0;background:transparent;width:min(460px,calc(100% - 32px));max-width:none;max-height:calc(100dvh - 28px);overflow:visible;border-radius:25px;box-shadow:0 20px 80px #001c2844}
.app-lightbox::backdrop{background:#0c2931d9;backdrop-filter:blur(5px)}
.app-lightbox-panel{background:#fffdf8;border-radius:25px;padding:12px 16px 10px}
.app-lightbox-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px}
.app-page .app-lightbox h2{font-size:18px;letter-spacing:-.3px;line-height:1.4;margin:0}
.app-lightbox-close{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border-radius:50%;background:#edf2ec}
.app-lightbox-close:hover,.app-lightbox-controls button:hover{background:#dcebe2}
.app-lightbox-close svg{width:22px;height:22px;stroke-width:2;stroke-linecap:round}
.app-lightbox-content{display:flex;justify-content:center;align-items:center;min-height:120px}
.app-lightbox-image{display:block;width:auto;height:auto;max-height:calc(100dvh - 166px);max-width:100%;border:1px solid #dfe5dd;border-radius:15px;object-fit:contain}
.app-lightbox-message{font-size:13px;color:#536b6f;padding:25px 12px;text-align:center}
.app-lightbox-controls{display:flex;align-items:center;justify-content:center;gap:24px;padding-top:7px}
.app-lightbox-controls button{display:grid;place-items:center;min-width:44px;min-height:44px;background:#edf2ec;border-radius:50%;font-size:22px;line-height:1}
.app-lightbox-controls>span{font-size:12px;min-width:40px;text-align:center;font-weight:800}
@media(max-width:1100px){
    .app-home-inner{gap:35px;grid-template-columns:1.1fr 1fr}
    .app-home-visual{width:365px;height:405px}
    .app-home-visual .app-phone-primary{width:205px;right:0}
    .app-home-visual .app-phone-secondary{width:170px;left:0}
    .app-hero-inner{gap:25px;grid-template-columns:1.15fr 1fr}
    .app-hero h1{font-size:56px}
    .app-tag-calendar{left:-14px;font-size:11px;padding:12px}
    .app-tag-heart{right:-12px;font-size:11px;padding:12px}
    .app-features{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px}
    .app-screens{gap:22px}
    .app-release-heading .app-release-status{margin-left:61px}
}
@media(max-width:740px){
    .app-home{padding-block:44px 35px}
    .app-home-inner{grid-template-columns:1fr;gap:30px}
    .home .app-home h2{font-size:33px;letter-spacing:-1px}
    .app-home-copy>p:not(.eyebrow){font-size:15px;line-height:1.8}
    .app-home-visual{width:330px;height:365px}
    .app-home-visual .app-phone-primary{width:185px;right:8px;top:0}
    .app-home-visual .app-phone-secondary{width:155px;left:9px;top:25px}
    .app-visual-note{left:4px;font-size:10px;padding:10px 13px;bottom:0}
    .app-status-list{gap:12px 20px;margin:22px 0}
    .app-status-list li+li{padding-left:20px}
    .app-button{padding:14px 19px;font-size:13px;min-height:50px}
    .app-hero{padding-block:16px 35px}
    .app-hero-inner{grid-template-columns:1fr;gap:24px}
    .app-back{margin-bottom:25px}
    .app-hero h1{font-size:clamp(39px,10.7vw,58px);letter-spacing:-1.8px}
    .app-lead{font-size:16px;line-height:1.8}
    .app-promise{font-size:13px}
    .app-hero-actions{gap:10px 20px}
    .app-text-link{font-size:13px}
    .app-hero-visual{width:min(100%,390px);margin-inline:auto;padding-block:18px 15px}
    .app-hero-visual .app-phone{width:235px;border-width:5px;border-radius:30px}
    .app-hero-orbit{width:340px;height:340px;max-width:100%}
    .app-tag-calendar{left:0;top:75px;max-width:235px;font-size:10px;padding:11px 12px;gap:7px}
    .app-tag-heart{right:0;bottom:55px;max-width:235px;font-size:10px;padding:11px 12px;gap:7px}
    .app-floating-tag svg{width:17px;height:17px;flex-basis:17px}
    .app-features{padding-block:42px;gap:28px 20px}
    .app-feature h2{font-size:16px;margin-top:14px;line-height:1.45}
    .app-feature p{font-size:13px;line-height:1.75}
    .app-feature-icon{width:43px;height:43px;flex-basis:43px;border-radius:13px}
    .app-page h2{font-size:30px;letter-spacing:-1px}
    .app-feature h2{font-size:16px;letter-spacing:-.3px}
    .app-preview{padding-block:45px}
    .app-section-heading{margin-bottom:30px}
    .app-section-heading>p:not(.eyebrow){font-size:14px}
    .app-section-heading>.eyebrow{font-size:10px;line-height:1.7}
    .app-screen-card figcaption{padding:19px 0 0 34px}
    .app-screen-number{top:21px;font-size:11px}
    .app-screen-card h3{font-size:17px}
    .app-screen-card p{font-size:13px}
    .app-availability{padding-block:45px}
    .app-release-grid{grid-template-columns:1fr;gap:18px}
    .app-release-card{padding:25px}
    .app-release-heading h3{font-size:21px}
    .app-release-heading .app-release-status{margin-left:56px}
    .app-release-card>p{font-size:14px}
    .app-web{padding-block:45px}
    .app-web-inner{display:block}
    .app-web-copy>p:not(.eyebrow){font-size:14px}
    .app-qr{display:none}
}
@media(max-width:600px){
    .app-screens{grid-template-columns:1fr;gap:40px;max-width:330px}
    .app-screen-link .app-phone{width:260px}
    .app-screen-card figcaption{padding-inline:42px 10px}
    .app-screen-number{left:7px}
}
@media(max-width:360px){
    .app-home-visual{width:275px;height:330px}
    .app-home-visual .app-phone-primary{width:165px;right:3px}
    .app-home-visual .app-phone-secondary{width:135px;left:3px}
    .app-home .app-status-list{font-size:11px;gap:12px 15px}
    .app-home .app-status-list li+li{padding-left:15px}
    .app-release-heading .app-release-status{margin-left:0}
    .app-hero-actions>.app-button{width:100%;padding-inline:12px}
    .app-hero-actions>.app-text-link{margin-inline:auto}
}
@media(prefers-reduced-motion:reduce){
    html:has(.app-page){scroll-behavior:auto}
    .app-button,.app-screen-link{transition:none}
    .app-button:hover{transform:none}
}
