@font-face{font-family:Raleway;src:url('../fonts/raleway-latin-400-normal.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Raleway;src:url('../fonts/raleway-latin-700-normal.woff2') format('woff2');font-style:normal;font-weight:700;font-display:swap}
:root{color-scheme:light;--copy-font:'Avenir Next',Avenir,Arial,sans-serif;--heading-font:Raleway,Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-padding-top:160px}
body{margin:0;color:#000;background:#fff;font:300 18px/1.75 var(--copy-font);overflow-x:clip}
h1,h2,h3,p,figure{margin:0}
a{color:inherit}
img{display:block}
h1,h2,h3{font-family:var(--heading-font);font-weight:400}
.layout{width:980px;margin-inline:auto;position:relative}
.skip-link{position:fixed;top:12px;left:12px;z-index:100;padding:10px 16px;background:#fff;transform:translateY(-200%)}
.skip-link:focus{transform:none}
a:focus-visible,button:focus-visible{outline:2px solid #116dff;outline-offset:4px}
.site-header{position:sticky;top:0;z-index:10;background:#fff}
.header-layout{height:149px}
.language-selector{position:absolute;top:3px;left:1px;width:690px;display:flex;justify-content:space-between;font:12px/1.875 var(--heading-font)}
.language-selector a,.language-selector button{display:flex;align-items:center;gap:6px;text-decoration:none;border:0;background:transparent;color:inherit;font:inherit;padding:0}
.language-selector button:disabled{opacity:.55}
.brand{position:absolute;left:1px;top:49px;width:923px;height:56px}
.brand h1{font-size:40px;line-height:1.2;white-space:nowrap}
.app-store-badge{position:absolute;left:877px;top:40px;width:164px;height:63px}
.main-nav{position:absolute;left:128px;bottom:7px;width:732px;display:flex;justify-content:center;gap:20px;font:300 14px/30px var(--copy-font)}
.main-nav a{text-decoration:none}
.main-nav a:hover{text-decoration:underline}
.hero{height:691.40625px}
.hero-title{position:absolute;left:0;top:19px;width:460px;height:35px}
.hero-title h2{font-size:28px;line-height:1.25}
.intro{position:absolute;left:0;top:71px;width:520px}
.intro p{font-size:18px;line-height:1.75em}
.hero-image{position:absolute;left:525px;top:28px;width:633px;height:598px}
.hero-image img{width:100%;height:100%}
.discovery{position:absolute;left:2px;top:620px;width:460px;font-size:20px;line-height:1.67em}
.features{position:relative;height:583px}
.feature-art{display:contents}
.elevator{position:absolute;left:calc((100% * 489 / 980 - 489px) / 2 - 82px);top:5px;width:629px;height:517px}
.pathway{position:absolute;left:calc((100% - 980px) / 2 + 369px);top:28px;width:265px;height:481px}
.feature-heading{position:absolute;left:calc(100% * 489 / 980 + (100% * 491 / 980 - 491px) / 2 + 56px);top:52px;width:401px}
.feature-heading h2{font-size:28px;line-height:1.375}
.feature-description{position:absolute;left:calc(100% * 489 / 980 + (100% * 491 / 980 - 491px) / 2 + 57px);top:171px;width:435px}
.feature-description p{font-size:20px;line-height:1.67em}
.motion-banner{height:827px;width:100%;overflow:hidden}
.motion-banner img{width:1155px;height:827px;object-fit:cover;object-position:50% 50%}
.instructions{height:684.1875px}
.instruction-heading{position:absolute;left:21px;top:56px;width:544px;height:35px}
.instruction-heading h2{font-size:28px;line-height:1.25}
.instruction-cards{position:absolute;left:29px;top:140px;display:grid;grid-template-columns:168px 205px 205px 168px;column-gap:69px}
.step-card h3{font-size:16px;line-height:1.34em;text-align:center}
.step-card:nth-child(2){transform:translateX(5px)}
.step-card:nth-child(3){transform:translateX(6px)}
.step-card:nth-child(4){transform:translateX(-8px)}
.instruction-image{position:absolute;left:-29px;top:303.1875px;width:1031px;height:338px}
.instruction-image img{width:100%;height:auto}
.contact-band{height:163.015625px;background:#ccc;display:flex;align-items:center;justify-content:center;font:400 22px/1.41 var(--heading-font)}
.site-footer{padding:37px 20px 20px;text-align:center;font-family:var(--heading-font)}
.footer-brand{font-size:18px;line-height:28px;margin-bottom:23px}
.footer-brand a{text-decoration:none}
.footer-publisher{font-size:16px;line-height:26px;margin-bottom:44px}
.footer-copyright{font-size:14px;line-height:42px;margin-bottom:19px}
.site-footer nav{font-size:14px;line-height:1.5}
@media(max-width:1279px){
 html{scroll-padding-top:20px}
 .layout{width:min(100% - 48px,780px)}
 .site-header{position:relative}
 .header-layout{height:auto;padding:12px 0 20px;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:16px}
 .language-selector{position:static;width:100%;justify-content:flex-end;gap:24px}
 .brand{position:static;width:100%;height:auto;text-align:center}
 .brand h1{font-size:clamp(24px,4vw,36px);line-height:1.25;white-space:normal}
 .app-store-badge{position:static;flex:none}
 .main-nav{position:static;order:4;width:100%;font-size:16px;gap:28px}
 .hero{height:auto;display:flex;flex-direction:column;gap:24px;padding:12px 0 32px}
 .hero-title,.intro,.hero-image,.discovery{position:static;width:100%;height:auto}
 .hero-title h2{font-size:26px}
 .intro{max-width:600px}
 .intro br{display:none}
 .hero-image{max-width:633px;align-self:center}
 .hero-image img{width:100%;height:auto}
 .features{height:auto;padding:20px 24px 40px;max-width:828px;margin:auto;display:flex;flex-direction:column;gap:24px}
 .feature-art{display:block;position:relative;width:100%;padding-right:18%;margin-bottom:8px}
 .elevator{position:static;width:100%;height:auto}
 .elevator img{width:100%;height:auto}
 .pathway{position:absolute;left:auto;right:0;top:auto;bottom:0;width:34%;height:auto}
 .pathway img{width:100%;height:auto}
 .feature-heading,.feature-description{position:static;width:100%;height:auto}
 .feature-heading h2{font-size:26px}
 .motion-banner{height:auto;width:100%}
 .motion-banner img{width:100%;height:auto;object-fit:contain}
 .instructions{height:auto;padding:32px 0;display:flex;flex-direction:column;gap:28px}
 .instruction-heading,.instruction-image{position:static;width:100%;height:auto}
 .instruction-heading h2{font-size:26px}
 .instruction-cards{position:static;display:grid;grid-template-columns:1fr 1fr;gap:28px}
 .step-card:nth-child(n){transform:none}
 .instruction-image img{width:100%;height:auto}
 .contact-band{height:112px}
}
@media(max-width:479px){.instruction-cards{grid-template-columns:1fr}.intro p{font-size:17px}.feature-description p{font-size:18px}}
/* German copy uses natural height so font fallbacks cannot cause overlapping text. */
.german-page .hero{height:auto;min-height:691.40625px;padding-top:19px;padding-bottom:38px}
.german-page .hero-title,.german-page .intro,.german-page .discovery{position:relative;left:0;top:0}
.german-page .intro{margin-top:17px}
.german-page .discovery{margin-top:12px}
.german-page .feature-description{top:210px}
.german-page .instruction-image{top:335px}
.german-page .instructions{height:716px}
.brand p{font:400 40px/1.2 var(--heading-font);white-space:nowrap}
.contact-layout{position:relative;min-height:1001px;padding-top:60px}
.contact-intro{position:absolute;left:90px;top:60px;width:363px;text-align:center}
.contact-intro h1{font:400 40px/1.35 var(--heading-font);margin-bottom:28px}
.support-address{font-size:15px;line-height:1.875;white-space:nowrap;margin-bottom:37px}
.contact-image-slot{width:423px;height:282px;position:relative;left:-30px}
#contact-draft{position:relative;left:520px;width:460px;color:#373b4d;font:italic 14px/1.4 Georgia,serif}
#contact-help{font:14px/1.5 var(--copy-font);margin-bottom:20px}
#contact-fields{padding:0;border:0;margin:0;min-width:0}
#contact-draft label{display:block;margin-bottom:30px}
.contact-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:10px}
#contact-draft input,#contact-draft textarea{width:100%;margin-top:8px;border:2px solid #373b4d;border-radius:0;padding:12px;background:#fff;color:#000;font:italic 14px/1.4 Georgia,serif}
#contact-draft textarea{height:180px;resize:vertical}
#contact-draft button{width:100%;padding:14px;background:#373b4d;color:white;border:0;font:14px/1.4 Georgia,serif;cursor:pointer}
#contact-draft button:hover{background:#000}
#contact-status,#contact-open-draft{font:15px/1.6 var(--copy-font);margin-top:16px}
#contact-open-draft{display:inline-block}
#contact-open-draft[hidden]{display:none}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:1279px){
 .german-page .hero{padding-top:12px;padding-bottom:32px;min-height:0}
 .german-page .hero-image,.german-page .intro,.german-page .discovery{margin-top:0}
 .german-page .hero-title,.german-page .intro,.german-page .discovery{position:static}
 .german-page .instructions{height:auto}
 .german-page .instruction-image{position:static}
 .brand p{font-size:clamp(24px,4vw,36px);line-height:1.25;white-space:normal}
 .brand h1,.brand p{overflow-wrap:anywhere}
 .contact-layout{padding:28px 0 48px;min-height:0;display:grid;gap:32px}
 .contact-intro,#contact-draft{position:static;width:100%}
 .contact-image-slot{display:none}
 .contact-intro h1{font-size:32px}
 .support-address{font-size:clamp(12px,3.5vw,15px);white-space:normal;overflow-wrap:anywhere;margin-bottom:0}
}
@media(max-width:479px){.contact-two-columns{grid-template-columns:1fr;gap:0}}
/* Supplied English privacy text, kept separate from publishing/legal approval. */
.policy-content{padding:60px 30px 0}
.policy-content h1{font:400 30px/normal var(--heading-font);margin-bottom:20px}
.policy-intro{max-width:800px;margin-bottom:60px}
.policy-content p{font-size:18px;line-height:1.75em}
.policy-row{display:grid;grid-template-columns:130px 633px;gap:11px;min-height:333px;padding:5px 5px 10px;margin-bottom:40px;align-items:start}
.policy-row h2{font:400 20px/1.375 var(--heading-font)}
.policy-row a{overflow-wrap:anywhere}
.contact-image-slot img{width:100%;height:100%;object-fit:cover;object-position:center}
@media(max-width:1279px){
 .policy-content{padding:32px 0 0}
 .policy-row{grid-template-columns:minmax(0,1fr);min-height:0;padding:0;gap:20px;margin-bottom:40px}
 .policy-intro{margin-bottom:40px}
 .policy-content p{font-size:17px}
 .contact-image-slot{display:block;width:min(100%,423px);height:auto;aspect-ratio:423/282;left:0;margin:28px auto 0}
 .contact-image-slot img{height:100%;width:100%}
}
