:root { --teal:#03c5b3; --ink:#182c2b; --muted:#60706e; --line:#e1e7e5; --mint:#edf7f3; scroll-behavior:smooth; scroll-padding-top:100px; }
* { box-sizing:border-box; letter-spacing:0; }
body { margin:0; background:#fff; color:var(--ink); font:16px/1.6 Arial,sans-serif; }
a { color:inherit; text-decoration:none; }
button, input, select { font:inherit; }
button, a, summary, select { -webkit-tap-highlight-color:transparent; outline-offset:5px; }
button { cursor:pointer; }
img { display:block; max-width:100%; object-fit:cover; }
h1, h2, h3, p { margin:0; }
h2 { font-size:38px; line-height:1.2; font-weight:700; }
h3 { font-size:21px; line-height:1.4; }
:focus-visible { outline:3px solid #00887d; }
.wrap { width:min(1240px,calc(100% - 80px)); margin-inline:auto; }
.skip-link { position:fixed; inset-block-start:10px; inset-inline-start:20px; z-index:30; padding:12px; background:#fff; clip-path:inset(100%); }
.skip-link:focus { clip-path:none; }
.site-header { background:#fff; position:relative; z-index:10; border-bottom:1px solid var(--line); }
.header-inner { min-height:88px; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.brand { display:inline-flex; align-items:center; gap:7px; font-size:33px; font-weight:800; line-height:1; }
.brand img { width:70px; height:70px; object-fit:contain; }
.brand-dot { color:var(--teal); }
.main-nav { display:flex; gap:28px; font-size:14px; font-weight:600; }
.main-nav a:hover, .text-link:hover, .footer-top a:hover { color:#00887d; }
.header-actions { display:flex; align-items:center; gap:26px; }
.download-link { display:flex; align-items:center; gap:10px; font-weight:700; font-size:14px; }
.language-picker { position:relative; font-size:13px; }
.language-picker summary { display:flex; align-items:center; gap:7px; cursor:pointer; list-style:none; }
.language-picker summary::-webkit-details-marker { display:none; }
.language-menu { position:absolute; inset-block-start:36px; inset-inline-end:0; min-width:142px; background:white; border:1px solid var(--line); padding:8px; box-shadow:0 8px 25px #182c2b15; border-radius:6px; }
.language-menu a { display:block; padding:8px 12px; }
.language-menu a[aria-current], .language-menu a:hover { background:var(--mint); }
.menu-toggle { display:none; width:40px; height:40px; border:1px solid var(--line); border-radius:4px; background:#fff; }
.hero { position:relative; isolation:isolate; min-height:570px; height:calc(100svh - 230px); max-height:730px; background:#eeefec; overflow:hidden; }
.hero-image { position:absolute; inset:0; width:100%; height:100%; object-position:center; z-index:-1; }
.hero-inner { height:100%; display:flex; align-items:center; }
.hero-copy { width:53%; max-width:640px; padding-block:55px 70px; }
.eyebrow { display:flex; align-items:center; gap:10px; font-size:12px; text-transform:uppercase; font-weight:700; line-height:1.5; margin-bottom:16px; }
.small-line { width:23px; height:2px; background:#00887d; }
.hero h1 { font-size:96px; line-height:1.05; margin-bottom:6px; font-weight:800; }
.hero h1 span { color:#009c8f; }
.hero-statement { font-size:37px; line-height:1.25; font-weight:700; max-width:480px; margin-bottom:20px; }
.hero-description { font-size:16px; color:#425451; max-width:400px; margin-bottom:30px; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:16px; min-height:52px; padding:13px 22px; font-size:14px; font-weight:700; border-radius:4px; border:1px solid transparent; line-height:1.5; flex-shrink:0; text-align:center; }
.button-primary { background:var(--teal); color:#123c36; }
.button-primary:hover { background:#00af9f; }
.button-dark { background:var(--ink); color:#fff; }
.button-dark:hover { background:#304c48; }
.hero-note { display:flex; align-items:center; gap:8px; font-size:12px; margin-top:18px; color:#53645f; }
.hero-scroll { position:absolute; bottom:24px; inset-inline-start:calc((100% - min(1240px,100% - 80px))/2); display:flex; gap:12px; align-items:center; font-size:11px; font-weight:700; text-transform:uppercase; }
.benefit-strip { border-bottom:1px solid var(--line); background:#fff; }
.benefit-grid { min-height:82px; display:grid; grid-template-columns:repeat(3,1fr); gap:30px; }
.benefit-grid>div { display:flex; align-items:center; justify-content:center; gap:14px; font-size:14px; font-weight:600; }
.benefit-grid i { font-size:24px; color:#00887d; }
.section { padding-block:86px; }
.section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:36px; margin-bottom:36px; }
.section-heading .eyebrow { color:#00887d; margin-bottom:10px; }
.text-link { display:inline-flex; align-items:center; gap:13px; font-size:14px; font-weight:700; white-space:nowrap; }
.category-stories { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:25px; }
.category-photo { position:relative; aspect-ratio:4/3; overflow:hidden; border-radius:6px; background:#edf0ee; }
.category-photo img { width:100%; height:100%; }
.category-caption { padding-block:18px; }
.category-caption p { font-size:14px; color:var(--muted); margin-top:5px; }
.category-list { display:flex; gap:0; flex-wrap:wrap; list-style:none; border-top:1px solid var(--line); margin:22px 0 0; padding:20px 0 0; }
.category-list li { font-size:13px; padding:9px 18px; border-inline-end:1px solid var(--line); margin-block:5px; }
.category-list li:first-child { padding-inline-start:0; }
.how-section { background:#f5f7f6; }
.section-intro { font-size:15px; color:var(--muted); max-width:360px; }
.steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:56px; margin-top:50px; }
.step { border-top:1px solid #bccdc7; padding-top:24px; }
.step-top { display:flex; align-items:center; justify-content:space-between; margin-bottom:34px; }
.step-number { font-size:34px; color:#899993; font-weight:400; }
.step-top i { font-size:23px; color:#00887d; }
.step p { font-size:15px; color:var(--muted); margin-top:12px; }
.app-section { background:var(--mint); overflow:hidden; }
.app-inner { display:grid; grid-template-columns:1fr 1fr; align-items:stretch; gap:65px; }
.app-copy { padding-block:76px; max-width:480px; }
.app-copy h2 { font-size:44px; max-width:450px; margin-bottom:23px; }
.app-copy>p:not(.eyebrow) { color:var(--muted); }
.app-benefits { padding:0; list-style:none; margin-block:25px 32px; }
.app-benefits li { display:flex; align-items:center; gap:12px; font-size:14px; margin-block:10px; }
.app-benefits i { color:#00887d; font-size:12px; }
.store-links { display:flex; gap:12px; flex-wrap:wrap; }
.store-links img { height:46px; width:auto; max-width:160px; object-fit:contain; }
.app-photo { position:relative; min-height:500px; align-self:stretch; }
.app-photo>img { width:100%; height:100%; object-position:60% center; position:absolute; inset:0; }
.photo-label { position:absolute; bottom:32px; inset-inline-start:25px; background:#fff; padding:18px 25px; max-width:calc(100% - 50px); box-shadow:0 4px 24px #0001; border-radius:4px; }
.photo-label>span { font-size:24px; font-weight:800; }
.photo-label p { font-size:13px; margin-top:3px; }
.provider-section { background:#fff3d7; padding-block:55px; }
.provider-inner { display:flex; align-items:center; gap:32px; }
.provider-symbol { width:90px; height:90px; display:grid; place-items:center; border:1px solid #dbcfac; border-radius:50%; font-size:31px; flex-shrink:0; }
.provider-copy { flex:1; }
.provider-copy h2 { font-size:30px; margin-bottom:9px; }
.provider-copy p:not(.eyebrow) { color:#665f4c; font-size:14px; max-width:540px; }
.provider-copy .eyebrow { margin-bottom:8px; }
.provider-inner>.store-links { flex-shrink:0; max-width:330px; }
.faq-inner { display:grid; grid-template-columns:1fr 1.3fr; gap:90px; }
.faq-inner h2 { max-width:310px; margin-bottom:28px; }
.faq-inner .eyebrow { color:#00887d; }
.faq-list { border-top:1px solid var(--line); }
.faq-list details { border-bottom:1px solid var(--line); padding-block:23px; }
.faq-list summary { list-style:none; display:flex; align-items:center; justify-content:space-between; gap:25px; font-weight:600; cursor:pointer; font-size:15px; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary i { font-size:12px; transition:transform .2s; color:#00887d; }
.faq-list details[open] i { transform:rotate(45deg); }
.faq-list details p { color:var(--muted); font-size:14px; padding-top:15px; max-width:560px; }
.site-footer { background:#183832; color:#e6efeb; padding-top:62px; }
.footer-top { display:grid; grid-template-columns:2fr 1fr 1fr; gap:70px; padding-bottom:58px; }
.footer-brand .brand { color:#fff; font-size:39px; margin-bottom:20px; }
.footer-brand p { max-width:290px; font-size:14px; color:#b7cbc4; margin-bottom:18px; }
.footer-top h3 { font-size:14px; color:#fff; margin-bottom:20px; }
.footer-top>div:not(.footer-brand)>a { display:block; color:#b7cbc4; font-size:13px; margin-block:11px; }
.footer-brand>a:not(.brand) { font-size:13px; }
.footer-bottom { border-top:1px solid #3a554e; display:flex; align-items:center; justify-content:space-between; gap:20px; padding-block:22px; font-size:12px; color:#b7cbc4; }
.footer-bottom>div { display:flex; gap:25px; }
.cookie-banner { position:fixed; z-index:20; inset-inline:25px; bottom:20px; padding:20px 25px; background:#fff; box-shadow:0 4px 35px #182c2b30; border:1px solid var(--line); border-radius:6px; display:flex; align-items:center; gap:24px; max-width:960px; margin-inline:auto; font-size:13px; }
.cookie-banner[hidden] { display:none; }
.cookie-banner a { color:#00887d; text-decoration:underline; }
.cookie-banner p { margin-top:4px; color:var(--muted); }
[dir=rtl] .arrow { transform:rotate(180deg); }
[dir=rtl] .hero-image { transform:scaleX(-1); }
@media(min-width:1700px) {
    .hero { max-height:840px; min-height:680px; }
    .hero-copy { max-width:620px; }
    .hero-image { object-position:center 46%; }
}
@media(max-width:1100px) {
    .wrap { width:calc(100% - 56px); }
    .main-nav { gap:18px; }
    .header-inner { gap:20px; }
    .header-actions { gap:15px; }
    .hero { min-height:590px; height:calc(100svh - 150px); }
    .hero h1 { font-size:80px; }
    .hero-statement { font-size:32px; }
    .hero-copy { width:56%; }
    .hero-image { object-position:55% center; }
    .hero-scroll { inset-inline-start:28px; }
    .section { padding-block:65px; }
    .app-inner { gap:35px; }
    .app-copy h2 { font-size:37px; }
    .provider-inner { gap:24px; }
    .faq-inner { gap:50px; }
    .provider-symbol { width:65px; height:65px; font-size:25px; }
    .provider-copy h2 { font-size:26px; }
}
@media(max-width:850px) {
    .header-inner { min-height:76px; }
    .main-nav { display:none; position:absolute; inset-inline:0; top:76px; padding:22px 28px; background:#fff; border-bottom:1px solid var(--line); box-shadow:0 10px 20px #182c2b12; flex-direction:column; gap:22px; }
    .main-nav.is-open { display:flex; }
    .menu-toggle { display:inline-grid; place-items:center; }
    .brand { font-size:29px; }
    .brand img { width:62px; height:62px; }
    .hero-copy { width:58%; }
    .hero h1 { font-size:72px; }
    .hero-statement { font-size:29px; }
    .hero-description { font-size:15px; }
    .hero-image { object-position:53% center; }
    .benefit-grid { gap:18px; }
    .benefit-grid>div { font-size:12px; gap:9px; }
    .benefit-grid i { font-size:20px; }
    h2 { font-size:32px; }
    .section-heading { gap:20px; }
    .category-stories { gap:18px; }
    .category-caption h3 { font-size:19px; }
    .steps { gap:28px; }
    .app-inner { gap:25px; }
    .app-copy { padding-block:50px; }
    .app-copy h2 { font-size:32px; }
    .app-photo { min-height:460px; }
    .provider-inner { flex-wrap:wrap; }
    .provider-copy { flex-basis:calc(100% - 100px); }
    .provider-inner>.store-links { margin-inline-start:89px; }
    .faq-inner { grid-template-columns:1fr 1.4fr; gap:30px; }
    .footer-top { gap:35px; }
}
@media(max-width:600px) {
    .wrap { width:calc(100% - 36px); }
    .header-inner { min-height:72px; gap:10px; }
    .brand { font-size:27px; gap:3px; }
    .brand img { width:58px; height:58px; }
    .header-actions { gap:13px; }
    .download-link { font-size:12px; gap:5px; }
    .download-link i { display:none; }
    .language-picker { font-size:12px; }
    .language-picker summary { gap:4px; }
    .language-picker summary>i:last-child { display:none; }
    .menu-toggle { width:34px; height:34px; }
    .main-nav { top:72px; }
    .hero { height:auto; min-height:0; max-height:none; }
    .hero-image { top:auto; bottom:0; height:auto; object-fit:contain; }
    .hero-inner { min-height:0; align-items:flex-start; }
    .hero-copy { width:100%; max-width:420px; padding-block:34px 230px; }
    .hero h1 { font-size:64px; }
    .hero-statement { font-size:28px; max-width:340px; }
    .hero-description { max-width:320px; margin-bottom:24px; font-size:15px; }
    .hero .eyebrow { font-size:11px; }
    .hero-scroll { display:none; }
    .hero-note { font-size:11px; }
    .benefit-grid { grid-template-columns:1fr; gap:0; padding-block:9px; min-height:0; }
    .benefit-grid>div { justify-content:flex-start; padding-block:9px; font-size:12px; }
    .benefit-grid i { width:26px; text-align:center; font-size:19px; }
    .section { padding-block:48px; }
    h2 { font-size:29px; }
    .eyebrow { font-size:11px; }
    .section-heading { align-items:flex-start; flex-direction:column; gap:14px; margin-bottom:25px; }
    .text-link { font-size:13px; }
    .category-stories { grid-template-columns:1fr; gap:19px; }
    .category-photo { aspect-ratio:16/10; }
    .category-caption { padding-block:14px; }
    .category-caption h3 { font-size:22px; }
    .category-caption p { font-size:14px; }
    .category-list { margin-top:12px; padding-top:14px; }
    .category-list li { padding:8px 12px; font-size:12px; }
    .steps { grid-template-columns:1fr; gap:28px; margin-top:25px; }
    .step { padding-top:16px; }
    .step-top { margin-bottom:12px; }
    .step-number { font-size:27px; }
    .step h3 { font-size:21px; }
    .step p { margin-top:7px; }
    .app-inner { grid-template-columns:1fr; gap:0; }
    .app-copy { padding-block:46px 35px; max-width:none; }
    .app-copy h2 { font-size:32px; }
    .app-photo { min-height:0; aspect-ratio:4/3; margin-inline:-18px; }
    .app-photo>img { object-position:center; }
    .photo-label { bottom:20px; inset-inline-start:18px; padding:12px 18px; }
    .photo-label>span { font-size:21px; }
    .photo-label p { font-size:12px; }
    .provider-inner { gap:20px; }
    .provider-symbol { width:49px; height:49px; font-size:20px; }
    .provider-copy { flex-basis:calc(100% - 70px); }
    .provider-copy h2 { font-size:25px; }
    .provider-inner>.store-links { margin-inline-start:0; width:100%; }
    .store-links { gap:10px; }
    .store-links img { height:40px; max-width:136px; }
    .faq-inner { grid-template-columns:1fr; gap:25px; }
    .faq-inner h2 { max-width:none; margin-bottom:16px; }
    .faq-list details { padding-block:20px; }
    .faq-list summary { font-size:14px; }
    .site-footer { padding-top:44px; }
    .footer-top { grid-template-columns:1fr 1fr; gap:30px 18px; padding-bottom:35px; }
    .footer-brand { grid-column:1/-1; }
    .footer-brand p { max-width:320px; }
    .footer-top h3 { margin-bottom:14px; }
    .footer-bottom { align-items:flex-start; flex-direction:column; gap:14px; font-size:11px; }
    .footer-bottom>div { gap:20px; }
    .cookie-banner { inset-inline:12px; bottom:12px; padding:17px; flex-direction:column; align-items:stretch; gap:12px; max-height:45svh; overflow:auto; }
}
@media(prefers-reduced-motion:reduce) {
    :root { scroll-behavior:auto; }
    *, *:before, *:after { transition:none!important; }
}
