/* Page-native composition: two unmodified app captures, a responsive passport
   detail and original collection artwork. No flattened App Store banners. */
:root { color-scheme:light; --ink:#17191d; --muted:#62666d; --blue:#006fe5; --line:#e5e8ed; --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:30px; }
body { margin:0; background:#fff; color:var(--ink); font:17px/1.55 var(--sans); -webkit-font-smoothing:antialiased; }
h1,h2,p,figure { margin:0; }
h1,h2 { font-weight:600; line-height:1.06; letter-spacing:-.045em; }
h1 span,h2 span:not(.wordmark) { color:var(--blue); }
h2 { font-size:clamp(36px,3.6vw,50px); }
p { color:var(--muted); }
a { color:inherit; text-decoration:none; }
a:hover { text-decoration:underline; text-underline-offset:5px; }
img { display:block; max-width:100%; height:auto; }
a:focus-visible,summary:focus-visible { outline:3px solid var(--blue); outline-offset:5px; }
.page-width { width:calc(100% - 96px); max-width:1180px; margin-inline:auto; }
.skip-link { position:absolute; top:-100px; left:20px; padding:12px; background:var(--ink); color:white; z-index:5; }
.skip-link:focus { top:12px; }
.site-header { height:94px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.brand { display:flex; align-items:center; gap:11px; }
.brand span,.wordmark { font-family:Georgia,serif; font-weight:400; letter-spacing:-.038em; }
.brand span { font-size:31px; }
.brand img { border-radius:9px; }
.brand:hover { text-decoration:none; }
.site-header nav { display:flex; gap:30px; font-size:14px; }
.site-header nav a { padding-block:14px; }
.get-app { padding:10px 21px; border-radius:12px; background:#17202a; color:white; font-size:14px; font-weight:600; }
.hero { display:grid; grid-template-columns:1fr 1.04fr; grid-template-areas:"copy product"; grid-template-rows:auto; align-items:center; gap:30px 45px; padding:32px 0 64px; }
.hero-copy { grid-area:copy; align-self:center; padding-bottom:0; }
.eyebrow { font-size:15px; font-weight:500; color:var(--ink); margin-bottom:22px; }
h1 { font-size:clamp(48px,5.1vw,73px); letter-spacing:-.052em; }
.intro { font-size:20px; line-height:1.55; margin-top:25px; }
.app-store { display:inline-block; border-radius:9px; }
.app-store img { width:156px; height:52px; }
.hero .app-store { margin-top:30px; }
.availability { font-size:13px; margin-top:12px; }
.region-note { grid-area:note; align-self:start; margin-bottom:72px; max-width:300px; }
.region-note strong { font-size:15px; font-weight:600; }
.region-note p { font-size:15px; margin-top:4px; }
.hero-product { grid-area:product; position:relative; width:100%; padding:0 18px 0 0; }
.phone { width:300px; margin-left:auto; border:6px solid #25262a; border-radius:45px; overflow:hidden; box-shadow:0 0 0 1px #aaa,0 24px 38px -22px #192b4440; }
.phone img { width:100%; }
.passport-card { position:absolute; width:290px; left:0; bottom:86px; border-radius:22px; background:#fff; box-shadow:0 12px 50px #192b441c,0 1px 6px #192b440d; }
.passenger { padding:23px 25px 0; display:flex; flex-direction:column; gap:2px; }
.passenger span { font-size:13px; color:var(--muted); }
.passenger strong { font:600 16px/1.5 ui-monospace,"SFMono-Regular",monospace; }
.passport-progress { display:flex; flex-direction:column; padding:22px 25px 24px; }
.passport-progress>strong { font:700 54px/.98 ui-monospace,"SFMono-Regular",monospace; letter-spacing:-1px; }
.passport-progress strong span { font-size:37px; letter-spacing:0; display:inline-block; margin-left:5px; }
.passport-progress>span { font-size:13px; color:var(--muted); margin-top:5px; }
.passport-stats { border-top:1px dashed #d7dbe1; padding:17px 25px 22px; display:flex; justify-content:space-between; gap:12px; }
.passport-stats div { display:flex; flex-direction:column; gap:3px; }
.passport-stats span { font-size:11px; color:var(--muted); }
.passport-stats strong { font:600 20px/1.2 ui-monospace,"SFMono-Regular",monospace; }
.hero-product>figcaption { text-align:right; font-size:11px; margin-top:19px; color:#70747b; }
.collections-section { border-top:1px solid var(--line); display:grid; grid-template-columns:.8fr 1.2fr; gap:50px; align-items:center; padding-block:65px 75px; }
.collection-copy p { margin-top:20px; font-size:18px; line-height:1.6; }
.badge-shelf { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; align-items:center; }
.badge-art { padding:6px; background:transparent; filter:drop-shadow(0 8px 8px #25324614); }
.badge-art img { width:100%; aspect-ratio:1; object-fit:cover; clip-path:polygon(50% 1%,94% 25%,94% 75%,50% 99%,6% 75%,6% 25%); }
.badge-rome .badge-art img { clip-path:inset(3% 4% 3% 4% round 25% 25% 38% 38%); }
.badge figcaption { text-align:center; font-size:14px; font-weight:500; margin-top:14px; }
.badge figcaption span { display:block; font-weight:400; font-size:11px; color:var(--muted); margin-top:3px; }
.photo-section { background:#f5f7fa; }
.photo-layout { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:95px; padding-block:66px; }
.photo-visual { justify-self:center; width:280px; }
.photo-screen { border-radius:30px; overflow:hidden; background:white; box-shadow:0 18px 40px -22px #192b4440,0 0 0 1px #1a263309; }
.photo-screen img { width:100%; }
.photo-visual figcaption { font-size:11px; margin-top:18px; text-align:center; color:var(--muted); }
.photo-copy>p:not(.eyebrow) { font-size:19px; max-width:360px; margin-top:24px; }
.photo-points { padding:0; margin:30px 0 0; list-style:none; }
.photo-points li+li { margin-top:19px; }
.photo-points strong,.photo-points span { display:block; font-size:15px; }
.photo-points strong { font-weight:600; }
.photo-points span { color:var(--muted); margin-top:3px; }
.premium-section { border-bottom:1px solid var(--line); display:grid; grid-template-columns:1.3fr 1fr; gap:60px; align-items:center; padding-block:36px; }
.premium-section h2 { font-size:21px; letter-spacing:-.02em; }
.premium-section .wordmark { font-size:31px; margin-right:8px; }
.premium-section p { font-size:16px; margin-top:13px; max-width:490px; }
.premium-section .premium-note { justify-self:end; margin:0; font-size:14px; }
.questions { display:grid; grid-template-columns:1fr 1.4fr; gap:65px; padding-block:65px; }
.questions h2 { font-size:30px; letter-spacing:-.035em; }
.question-list details { border-bottom:1px solid var(--line); padding:20px 0; }
.question-list details:first-child { padding-top:0; }
summary { cursor:pointer; list-style:none; display:flex; justify-content:space-between; gap:20px; font-size:16px; font-weight:500; }
summary::-webkit-details-marker { display:none; }
summary::after { content:'+'; font-size:22px; font-weight:400; }
details[open] summary::after { content:'−'; }
details p { font-size:16px; margin-top:16px; padding-right:24px; }
.download-section { display:flex; align-items:center; justify-content:space-between; gap:28px; padding:12px 0 55px; }
.download-copy { display:flex; align-items:center; gap:18px; }
.download-copy>img { border-radius:12px; }
.download-section h2 { font-size:34px; }
.site-footer { border-top:1px solid var(--line); display:flex; justify-content:space-between; gap:20px; padding-block:27px; font-size:13px; color:var(--muted); }
.site-footer>div { display:flex; gap:26px; }
@media(max-width:1050px) {
 .page-width { width:calc(100% - 56px); }
 .hero { gap:20px; }
 h1 { font-size:53px; }
 .phone { width:270px; }
 .passport-card { width:250px; bottom:68px; }
 .passenger { padding:20px 20px 0; }
 .passport-progress { padding:18px 20px 20px; }
 .passport-stats { padding:16px 20px 18px; }
 .hero-product { padding-right:0; }
 .intro { font-size:18px; }
 .collections-section { gap:25px; }
 .badge-shelf { gap:8px; }
 .photo-layout { gap:50px; }
 .questions { gap:40px; }
}
@media(max-width:760px) {
 .page-width { width:calc(100% - 40px); }
 .site-header { height:80px; }
 .site-header nav { display:none; }
 .brand span { font-size:29px; }
 .brand img { width:33px; height:33px; }
 .get-app { font-size:13px; padding:10px 18px; }
 .hero { grid-template-columns:1fr; grid-template-areas:"copy" "product"; grid-template-rows:auto; padding:28px 0 35px; gap:28px; }
 .hero-copy { padding:0; }
 .eyebrow { font-size:14px; margin-bottom:17px; }
 h1 { font-size:clamp(42px,10.8vw,62px); }
 .intro { font-size:17px; margin-top:20px; }
 .hero .app-store { margin-top:24px; }
 .availability { font-size:12px; }
 .region-note { margin:0; max-width:350px; }
 .region-note strong,.region-note p { font-size:13px; }
 .hero-product { max-width:440px; justify-self:center; }
 .phone { width:245px; margin-right:0; border-radius:37px; border-width:5px; }
 .passport-card { width:218px; left:0; bottom:63px; border-radius:18px; }
 .passenger { padding:17px 18px 0; }
 .passenger span { font-size:11px; }
 .passenger strong { font-size:13px; }
 .passport-progress { padding:17px 18px 19px; }
 .passport-progress>strong { font-size:45px; }
 .passport-progress strong span { font-size:30px; }
 .passport-progress>span { font-size:11px; }
 .passport-stats { padding:14px 18px 17px; gap:8px; }
 .passport-stats span { font-size:10px; }
 .passport-stats strong { font-size:17px; }
 .hero-product>figcaption { font-size:10px; }
 .collections-section { grid-template-columns:1fr; gap:25px; padding-block:40px; }
 h2 { font-size:clamp(34px,8.5vw,46px); }
 .collection-copy h2 br { display:none; }
 .collection-copy p { font-size:16px; margin-top:15px; }
 .badge-shelf { gap:8px; }
 .badge-art { padding:0; }
 .badge figcaption { font-size:12px; margin-top:10px; }
 .badge figcaption span { font-size:10px; }
 .photo-layout { grid-template-columns:1fr; gap:30px; padding-block:44px; }
 .photo-copy { grid-row:1; }
 .photo-copy>p:not(.eyebrow) { font-size:17px; margin-top:20px; }
 .photo-points { margin-top:23px; }
 .photo-points strong,.photo-points span { font-size:14px; }
 .photo-visual { width:260px; max-width:100%; }
 .premium-section { grid-template-columns:1fr; gap:20px; padding-block:30px; }
 .premium-section .premium-note { justify-self:start; }
 .questions { grid-template-columns:1fr; gap:28px; padding-block:40px; }
 .questions h2 { font-size:29px; }
 summary { min-height:36px; }
 .download-section { flex-direction:column; align-items:flex-start; padding:10px 0 40px; }
 .download-copy { gap:12px; }
 .download-copy>img { width:40px; height:40px; }
 .download-section h2 { font-size:27px; }
 .site-footer { font-size:12px; gap:10px; }
 .site-footer>div { gap:16px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }

.hero-wordmark { font-family:Georgia,serif; font-size:32px; font-weight:400; letter-spacing:-.038em; line-height:1.2; color:#777d86; margin-bottom:22px; }
@media(max-width:760px) { .hero-wordmark { font-size:28px; margin-bottom:17px; } }

/* Separate feature details surround the map at different visual weights. */
.hero { grid-template-columns:.86fr 1.14fr; gap:30px; }
.hero-product { padding:18px 65px 32px 0; }
.hero-product .phone { width:290px; }
.hero-product .passport-card { width:260px; bottom:75px; z-index:2; }
.feature-float { position:absolute; z-index:3; display:block; background:#fff; border:1px solid #e9edf280; border-radius:19px; box-shadow:0 12px 38px #192b4412,0 2px 7px #192b4408; }
.feature-float[href]:hover { text-decoration:none; box-shadow:0 14px 38px #192b4420; }
.float-label { display:flex; justify-content:space-between; align-items:center; gap:12px; font-size:12px; font-weight:500; color:var(--muted); }
.float-label>span { color:#8a929c; }
.photo-float { left:0; top:42px; width:225px; padding:18px; }
.photo-float>strong { display:block; font-size:16px; font-weight:600; letter-spacing:-.025em; margin-top:9px; }
.found-places { display:flex; gap:17px; font-size:13px; margin-top:15px; }
.collection-float { right:0; top:225px; width:147px; padding:14px; text-align:center; }
.collection-float>img { width:93px; height:93px; margin:13px auto 9px; object-fit:cover; clip-path:polygon(50% 1%,94% 25%,94% 75%,50% 99%,6% 75%,6% 25%); }
.collection-float>strong { display:block; font-size:14px; font-weight:600; }
.float-detail { display:block; margin-top:2px; font-size:11px; color:var(--muted); }
.colour-float { right:18px; bottom:0; width:174px; padding:16px 18px; }
.colour-swatches { display:flex; gap:10px; margin-top:13px; }
.colour-swatches i { display:block; width:24px; height:24px; border-radius:50%; background:#68aff5; }
.colour-swatches i:nth-child(2) { background:#71bc96; }
.colour-swatches i:nth-child(3) { background:#ac9ee7; }
.colour-swatches i:nth-child(4) { background:#f2ad6f; }
@media(min-width:761px) and (max-width:1050px) {
 .hero { grid-template-columns:.9fr 1.1fr; gap:24px; }
 .hero-product { padding-right:38px; }
 .hero-product .phone { width:250px; }
 .hero-product .passport-card { width:220px; bottom:60px; }
 .photo-float { width:190px; padding:14px; top:30px; }
 .photo-float>strong { font-size:14px; }
 .collection-float { width:125px; padding:12px; top:195px; }
 .collection-float>img { width:78px; height:78px; }
 .colour-float { right:0; width:156px; padding:14px; }
 .colour-swatches { gap:9px; }
 .colour-swatches i { width:23px; height:23px; }
}
@media(max-width:760px) {
 .hero { grid-template-columns:1fr; gap:34px; }
 .hero-product { padding:20px 40px 35px 0; max-width:430px; }
 .hero-product .phone { width:232px; }
 .hero-product .passport-card { width:196px; bottom:70px; }
 .hero-product .passenger { padding:15px 15px 0; }
 .hero-product .passport-progress { padding:15px; }
 .hero-product .passport-stats { padding:13px 15px 16px; gap:5px; }
 .hero-product .passport-stats span { font-size:9px; }
 .photo-float { width:182px; padding:14px; top:5px; }
 .float-label { font-size:11px; gap:5px; }
 .photo-float>strong { font-size:13px; margin-top:8px; }
 .found-places { font-size:11px; gap:12px; margin-top:11px; }
 .collection-float { width:112px; padding:12px; top:183px; }
 .collection-float>img { width:75px; height:75px; margin:10px auto 7px; }
 .collection-float>strong { font-size:12px; }
 .float-detail { font-size:10px; }
 .colour-float { right:0; width:148px; padding:13px 14px; }
 .colour-swatches { gap:9px; margin-top:11px; }
 .colour-swatches i { width:22px; height:22px; }
}
@media(max-width:360px) {
 .hero-product { padding-right:23px; }
 .hero-product .phone { width:215px; }
 .hero-product .passport-card { width:177px; bottom:55px; }
 .hero-product .passport-stats { padding-inline:12px; }
 .photo-float { width:163px; padding:12px; }
 .photo-float>strong { font-size:12px; }
 .collection-float { width:99px; padding:10px; top:160px; }
 .collection-float>img { width:65px; height:65px; }
 .colour-float { width:137px; }
 .colour-swatches { gap:7px; }
 .colour-swatches i { width:21px; height:21px; }
}

/* A larger selection of the app's original badges, without category labels. */
.collections-section { grid-template-columns:.75fr 1.25fr; gap:65px; }
.badge-shelf { grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px 14px; }
.badge-shelf .badge-art { padding:0; }
.badge-shelf .badge-wonder img { clip-path:inset(3% 4% 3% 4% round 25% 25% 38% 38%); }
.badge-shelf .badge:nth-child(4n+2),.badge-shelf .badge:nth-child(4n+4) { transform:translateY(14px); }
@media(max-width:1050px) and (min-width:761px) {
 .collections-section { gap:35px; }
 .badge-shelf { gap:16px 9px; }
}
@media(max-width:760px) {
 .collections-section { grid-template-columns:1fr; gap:30px; padding-bottom:55px; }
 .badge-shelf { grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px 12px; }
 .badge-shelf .badge:nth-child(n) { transform:none; }
 .badge-shelf .badge:nth-child(3n+2) { transform:translateY(10px); }
}
/* Compact badge composition with a clear centre and smaller outer details. */
.collections-section { grid-template-columns:.9fr 1.1fr; gap:50px; padding-block:55px; }
.badge-shelf { display:block; position:relative; width:100%; max-width:520px; aspect-ratio:520 / 365; justify-self:center; }
.badge-shelf .badge:nth-child(n) { position:absolute; width:var(--size); left:var(--x); top:var(--y); transform:rotate(var(--angle,0deg)); }
.badge-shelf .badge:nth-child(1) { --size:20%; --x:2%; --y:27%; --angle:-9deg; }
.badge-shelf .badge:nth-child(2) { --size:24%; --x:23%; --y:22%; --angle:-4deg; z-index:2; }
.badge-shelf .badge:nth-child(3) { --size:19%; --x:53%; --y:2%; --angle:7deg; }
.badge-shelf .badge:nth-child(4) { --size:16%; --x:78%; --y:14%; --angle:9deg; }
.badge-shelf .badge:nth-child(5) { --size:15%; --x:13%; --y:3%; --angle:-8deg; }
.badge-shelf .badge:nth-child(6) { --size:23%; --x:48%; --y:32%; --angle:5deg; z-index:2; }
.badge-shelf .badge:nth-child(7) { --size:20%; --x:69%; --y:54%; --angle:-5deg; }
.badge-shelf .badge:nth-child(8) { --size:15%; --x:84%; --y:37%; --angle:8deg; }
.badge-shelf .badge:nth-child(9) { --size:16%; --x:2%; --y:67%; --angle:-8deg; }
.badge-shelf .badge:nth-child(10) { --size:19%; --x:24%; --y:62%; --angle:6deg; }
.badge-shelf .badge:nth-child(11) { --size:14%; --x:36%; --y:0%; --angle:4deg; }
.badge-shelf .badge:nth-child(12) { --size:15%; --x:48%; --y:77%; --angle:-7deg; }
@media(max-width:1050px) and (min-width:761px) { .collections-section { gap:30px; } }
@media(max-width:760px) {
 .collections-section { grid-template-columns:1fr; gap:28px; padding-block:40px; }
 .badge-shelf { max-width:430px; }
}

/* Travel-led hero: places and memories lead; the app becomes a small detail. */
.travel-hero { grid-template-columns:.95fr 1.05fr; grid-template-areas:"copy journey"; gap:45px; padding-block:55px 75px; }
.travel-hero .hero-copy { align-self:center; }
.travel-hero h1 { font-size:clamp(48px,5vw,70px); }
.travel-hero .intro { font-size:19px; line-height:1.7; max-width:410px; margin-top:28px; }
.travel-hero .app-store { margin-top:30px; }
.travel-hero .app-store img { width:140px; height:auto; }
.travel-composition { grid-area:journey; position:relative; height:600px; }
.travel-postcard { position:absolute; background:#fff; padding:10px; box-shadow:0 12px 32px #26374918,0 1px 5px #2637490c; }
.landscape-card { width:81%; right:0; top:15px; transform:rotate(4deg); }
.landscape-card>img { width:100%; aspect-ratio:1.18; object-fit:cover; }
.travel-postcard figcaption { padding:13px 7px 8px; font-size:14px; font-weight:500; line-height:1.4; }
.travel-postcard figcaption span { display:block; color:var(--muted); font-size:11px; font-weight:400; margin-top:4px; }
.city-card { width:43%; left:0; bottom:16px; transform:rotate(-7deg); z-index:2; }
.city-card>img { width:100%; aspect-ratio:1.15; object-fit:cover; }
.city-card figcaption { font-size:13px; }
.travel-map { position:absolute; width:29%; right:6%; bottom:3px; padding:6px 6px 12px; border-radius:17px; background:white; box-shadow:0 7px 24px #26374918; transform:rotate(5deg); }
.travel-map-crop { position:relative; aspect-ratio:.85; border-radius:12px; overflow:hidden; }
.travel-map-crop img { position:absolute; width:100%; top:-18%; }
.travel-map>span { display:block; text-align:center; font-size:10px; color:var(--muted); margin-top:9px; }
@media(max-width:1050px) and (min-width:761px) {
 .travel-hero { gap:30px; }
 .travel-hero h1 { font-size:52px; }
 .travel-composition { height:500px; }
 .landscape-card { width:88%; }
 .city-card { width:48%; bottom:35px; }
 .travel-map { width:32%; bottom:12px; }
}
@media(max-width:760px) {
 .travel-hero { grid-template-columns:1fr; grid-template-areas:"copy" "journey"; padding-block:28px 38px; gap:32px; }
 .travel-hero h1 { font-size:clamp(42px,10.7vw,64px); }
 .travel-hero .intro { font-size:17px; line-height:1.65; margin-top:22px; max-width:370px; }
 .travel-hero .app-store { margin-top:25px; }
 .travel-composition { width:100%; max-width:440px; height:auto; aspect-ratio:350 / 410; justify-self:center; }
 .landscape-card { width:81%; top:8px; right:3%; padding:7px; }
 .travel-postcard figcaption { font-size:11px; padding:9px 4px 5px; }
 .travel-postcard figcaption span { font-size:9px; }
 .city-card { width:46%; left:1%; bottom:8px; padding:7px; }
 .travel-map { right:6%; bottom:0; width:30%; }
 .travel-map>span { font-size:8px; }
}

/* An open landscape carries the travel mood; real product UI sits above it. */
.site-header { position:absolute; top:22px; left:0; right:0; z-index:5; height:72px; padding:0; background:transparent; backdrop-filter:none; -webkit-backdrop-filter:none; border:0; border-radius:0; }
.scenic-hero { position:relative; isolation:isolate; overflow:hidden; background:#dbe9f3; }
.scenic-hero::before { content:""; position:absolute; inset:0; z-index:-2; background:url('/setent-assets/coastal-dawn.png') center 60% / cover no-repeat; }
.scenic-hero::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(0deg,#fff 0%,#ffffff00 22%),linear-gradient(90deg,#f6f9fddd 0%,#f8f9fc9c 42%,#f6f9fc18 76%); }
.scenic-layout { display:grid; grid-template-columns:1fr 1.05fr; align-items:center; gap:45px; padding-top:124px; padding-bottom:100px; min-height:0; }
.scenic-hero .hero-copy { padding-bottom:30px; }
.scenic-hero .hero-wordmark { color:#fff; }
.scenic-hero h1 { font-size:clamp(52px,5.4vw,77px); color:#12263d; }
.scenic-hero h1 span { color:#1766bd; }
.scenic-hero .intro { font-size:20px; color:#415264; max-width:415px; line-height:1.65; margin-top:27px; }
.scenic-hero .app-store { margin-top:29px; }
.scenic-product { position:relative; height:635px; }
.scenic-phone { width:295px; margin:0 28px 0 auto; transform:rotate(9deg); border-radius:44px; box-shadow:0 0 0 1px #9c9fa4,15px 28px 55px -18px #20374955; }
.scenic-passport { width:258px; left:53px; bottom:108px; transform:rotate(-5deg); z-index:2; box-shadow:0 16px 40px #19314922; }
.collections-section { border-top:0; }
@media(max-width:1050px) and (min-width:761px) {
 .scenic-layout { gap:25px; min-height:800px; padding-bottom:70px; }
 .scenic-hero h1 { font-size:56px; }
 .scenic-product { height:560px; }
 .scenic-phone { width:260px; margin-right:10px; }
 .scenic-passport { width:224px; left:28px; bottom:75px; }
}
@media(max-width:760px) {
 .site-header { top:15px; height:62px; padding-inline:0; border-radius:0; }
 .scenic-layout { grid-template-columns:1fr; gap:38px; padding-top:106px; padding-bottom:55px; min-height:0; }
 .scenic-hero .hero-copy { padding:0; }
 .scenic-hero h1 { font-size:clamp(42px,10.7vw,62px); }
 .scenic-hero .intro { font-size:17px; max-width:370px; margin-top:22px; }
 .scenic-hero .app-store { margin-top:25px; }
 .scenic-hero::before { background-position:65% center; }
 .scenic-hero::after { background:linear-gradient(0deg,#fff 0%,#ffffff00 22%,#edf5fbaa 65%,#edf5fbe0 100%); }
 .scenic-product { width:100%; max-width:410px; justify-self:center; height:525px; }
 .scenic-phone { width:230px; margin:0 29px 0 auto; border-radius:36px; border-width:5px; transform:rotate(7deg); }
 .scenic-passport { width:200px; left:16px; bottom:111px; transform:rotate(-5deg); }
}
@media(max-width:360px) {
 .scenic-product { height:484px; }
 .scenic-phone { width:211px; margin-right:22px; }
 .scenic-passport { width:180px; left:8px; bottom:96px; }
 .scenic-passport .passport-stats { gap:5px; padding-inline:13px; }
 .scenic-passport .passport-stats span { font-size:9px; }
}
.scenic-layout { grid-template-areas:"copy scene"; }
.scenic-product { grid-area:scene; }
@media(max-width:760px) { .scenic-layout { grid-template-areas:"copy" "scene"; } }
/* Soft, abstract light replaces the literal landscape. */
.scenic-hero { background:#f4f7fc; }
.scenic-hero::before {
 inset:-12%;
 background:
  radial-gradient(ellipse at 78% 26%,#b3cff3 0%,#b3cff300 44%),
  radial-gradient(ellipse at 77% 80%,#e2daf3 0%,#e2daf300 43%),
  radial-gradient(ellipse at 25% 82%,#f5dfcb 0%,#f5dfcb00 40%),
  radial-gradient(ellipse at 13% 13%,#dce9f8 0%,#dce9f800 48%);
 filter:blur(55px);
}
.scenic-hero::after {
 background:linear-gradient(0deg,#fff 0%,#ffffff00 27%),linear-gradient(90deg,#ffffff65 0%,#ffffff00 65%);
}
@media(max-width:760px) {
 .scenic-hero::before { filter:blur(38px); }
 .scenic-hero::after { background:linear-gradient(0deg,#fff 0%,#ffffff00 23%),linear-gradient(180deg,#ffffff50 0%,#ffffff00 65%); }
}

/* Layered metal chassis, glass and hardware details around the real capture. */
.scenic-phone.iphone-device {
 position:relative; overflow:visible; padding:6px; border:2px solid #b8babd; border-radius:46px;
 background:linear-gradient(110deg,#54585d,#141517 20%,#26292d 78%,#777b80);
 transform:perspective(1100px) rotateY(-15deg) rotateX(3deg) rotateZ(7deg) scale(.88); transform-origin:50% 100%;
 box-shadow:inset 0 0 0 1px #090a0b,1px 0 0 #e3e4e5,3px 1px 0 #777b80,6px 2px 0 #3a3d41,8px 3px 0 #919498,9px 3px 1px #c2c4c7,20px 30px 45px -15px #17294150;
}
.device-glass { position:relative; overflow:hidden; border-radius:37px; background:#000; }
.device-glass>img { width:100%; }
.device-glass::after { content:""; position:absolute; inset:0; pointer-events:none; border-radius:inherit; box-shadow:inset 0 0 0 1px #ffffff26; background:linear-gradient(118deg,#ffffff0d 0%,#ffffff00 36%); }
.dynamic-island { position:absolute; width:27%; height:3.4%; top:1.7%; left:36.5%; border-radius:30px; background:#070709; box-shadow:inset 0 0 0 1px #202126; z-index:2; }
.dynamic-island i { position:absolute; right:9%; top:28%; height:44%; aspect-ratio:1; border-radius:50%; background:radial-gradient(circle at 35% 35%,#152d48,#07090f 60%); box-shadow:0 0 0 1px #11141b; }
.home-indicator { position:absolute; width:33%; height:4px; border-radius:3px; background:#202329; bottom:7px; left:33.5%; opacity:.75; }
.device-button { position:absolute; left:-5px; width:3px; border-radius:2px 0 0 2px; background:linear-gradient(90deg,#8b8f94,#30343a); box-shadow:-1px 0 0 #bfc1c5; }
.action-button { top:14%; height:3.7%; }
.volume-up { top:21%; height:7%; }
.volume-down { top:30%; height:7%; }
.power-button { left:auto; right:-10px; top:24%; height:11%; width:3px; border-radius:0 2px 2px 0; }
.camera-button { left:auto; right:-10px; top:64%; height:7%; width:3px; border-radius:0 2px 2px 0; background:#51545a; }
@media(max-width:760px) {
 .scenic-phone.iphone-device { padding:5px; border-width:1.5px; border-radius:37px; transform:perspective(900px) rotateY(-12deg) rotateX(2deg) rotateZ(6deg) scale(.88); }
 .device-glass { border-radius:30px; }
 .home-indicator { height:3px; bottom:5px; }
}
@media(max-width:360px) { .scenic-phone.iphone-device { border-radius:34px; } .device-glass { border-radius:27px; } }

/* Boarding pass: transparent tear notches and the app's passenger identity. */
.scenic-passport { background:transparent; box-shadow:none; filter:drop-shadow(0 16px 20px #19314922); }
.ticket-upper { position:relative; background:#fff; border-radius:22px 22px 0 0; -webkit-mask:radial-gradient(circle at 0 100%,transparent 9px,#000 9.5px),radial-gradient(circle at 100% 100%,transparent 9px,#000 9.5px); mask:radial-gradient(circle at 0 100%,transparent 9px,#000 9.5px),radial-gradient(circle at 100% 100%,transparent 9px,#000 9.5px); -webkit-mask-composite:source-in; mask-composite:intersect; }
.ticket-upper::after { content:""; position:absolute; left:19px; right:19px; bottom:0; border-bottom:1px dashed #bbc2cc; }
.scenic-passport .passport-stats { background:#fff; border-top:0; border-radius:0 0 22px 22px; -webkit-mask:radial-gradient(circle at 0 0,transparent 9px,#000 9.5px),radial-gradient(circle at 100% 0,transparent 9px,#000 9.5px); mask:radial-gradient(circle at 0 0,transparent 9px,#000 9.5px),radial-gradient(circle at 100% 0,transparent 9px,#000 9.5px); -webkit-mask-composite:source-in; mask-composite:intersect; }
.scenic-passport .passenger { flex-direction:row; align-items:center; gap:11px; }
.passenger-avatar { width:40px; height:40px; border-radius:50%; object-fit:cover; flex:none; }
.passenger-identity { display:flex; flex-direction:column; gap:2px; min-width:0; }
.scenic-passport .passenger strong { font-size:14px; white-space:nowrap; }
@media(max-width:760px) {
 .scenic-passport .passenger { gap:8px; }
 .passenger-avatar { width:32px; height:32px; }
 .scenic-passport .passenger strong { font-size:12px; }
 .ticket-upper { border-radius:18px 18px 0 0; }
 .scenic-passport .passport-stats { border-radius:0 0 18px 18px; }
}

.travel-memory { position:absolute; z-index:1; width:238px; left:76px; top:auto; bottom:150px; margin:0; padding:7px 7px 20px; border-radius:3px; background:#fffefa; box-shadow:0 8px 24px #26374a26; transform:rotate(4deg); }
.travel-memory img { display:block; width:100%; height:auto; aspect-ratio:1; object-fit:cover; }
@media(max-width:1050px) and (min-width:761px) { .travel-memory { width:206px; left:48px; top:auto; bottom:124px; } }
@media(max-width:760px) { .travel-memory { width:186px; left:32px; top:auto; bottom:143px; padding:5px 5px 16px; transform:rotate(4deg); } }
@media(max-width:360px) { .travel-memory { width:168px; left:20px; top:auto; bottom:124px; } }

/* Balance the smaller phone with the overlapping ticket stack. */
.scenic-phone.iphone-device { left:-45px; top:-32px; }
@media(max-width:1050px) and (min-width:761px) { .scenic-phone.iphone-device { left:-22px; top:-26px; } }
@media(max-width:760px) { .scenic-phone.iphone-device { left:-10px; top:-26px; } }

.scenic-hero h1 { font-size:clamp(48px,4.3vw,62px); }
.scenic-hero .hero-copy .app-store { margin-top:34px; }
@media(max-width:1050px) and (min-width:761px) { .scenic-hero h1 { font-size:46px; } }
@media(max-width:760px) { .scenic-hero h1 { font-size:clamp(34px,8.8vw,54px); } .scenic-hero .hero-copy .app-store { margin-top:28px; } }


.header-wordmark { font:400 40px/1 Georgia,"Times New Roman",serif; letter-spacing:-2px; color:#111; }
.scenic-product { isolation:isolate; }
.flight-sketch { position:absolute; inset:0; width:100%; height:100%; overflow:visible; z-index:-1; pointer-events:none; stroke:#fff; stroke-width:2.3; stroke-linecap:round; stroke-linejoin:round; }
.flight-sketch>path { stroke-dasharray:9 7 5 7; }
@media(max-width:760px) { .header-wordmark { font-size:35px; } .flight-sketch { stroke-width:2.8; } }

.app-rating { display:flex; align-items:center; gap:9px; margin-top:14px; color:#68717d; font-size:12px; line-height:1.4; }
.rating-stars { color:#d4942e; font-size:15px; letter-spacing:1px; }
.app-rating strong { color:#253344; font-weight:600; }

.site-header .get-app { transition:background .15s ease; }
.site-header .get-app:hover { background:#2c3947; }
.app-rating { width:156px; margin-top:19px; gap:5px; justify-content:center; color:#fff; }
.rating-center { display:flex; flex-direction:column; align-items:center; gap:2px; }
.app-rating .rating-stars { color:#fff; font-size:12px; letter-spacing:1px; line-height:1; }
.app-rating strong { color:#fff; font-size:27px; line-height:1.1; font-weight:600; letter-spacing:-.7px; }
.rating-caption { font-size:9px; white-space:nowrap; }
.rating-laurel { width:23px; height:56px; flex:none; }
.rating-laurel-right { transform:scaleX(-1); }

/* Give the download and rating distinct breathing room and readable contrast. */
.scenic-hero .hero-copy .app-store { margin-top:48px; }
.app-rating { margin-top:30px; color:#35516f; }
.app-rating .rating-stars, .app-rating strong { color:#35516f; }
.rating-caption { color:#52677d; font-size:10px; }
@media(max-width:760px) { .scenic-hero .hero-copy .app-store { margin-top:38px; } .app-rating { margin-top:26px; } }

.photo-import { overflow:hidden; padding:65px 0 25px; background:linear-gradient(#fff 0%,#f1f5fa 74%,#fff 100%); }
.import-copy { text-align:center; position:relative; z-index:3; }
.import-copy h2 { font-size:clamp(36px,4.2vw,60px); }
.import-copy p { font-size:18px; line-height:1.6; margin-top:24px; }
.import-scene { position:relative; width:800px; max-width:100%; height:560px; margin:35px auto 0; }
.import-scene::before { content:""; position:absolute; width:62%; height:75px; left:19%; bottom:57px; border-radius:50%; background:#233a572a; filter:blur(25px); }
.import-phone { position:absolute; width:238px; left:50%; top:360px; padding:7px; border:2px solid #a1a6ad; border-radius:43px; background:#17191d; transform:translate(-50%,-50%) perspective(1100px) rotateX(57deg) rotateZ(-70deg); box-shadow:1px 2px 0 #cbd0d5,3px 5px 0 #777e86,5px 8px 0 #b9bec4,7px 12px 0 #363c43,15px 25px 30px #263e5b2b; }
.import-screen { position:relative; border-radius:34px; overflow:hidden; }
.import-screen>img { width:100%; }
.import-port { position:absolute; width:35px; height:4px; border-radius:4px; background:#0d0f12; bottom:-8px; left:calc(50% - 17px); }
.import-photo { position:absolute; padding:7px 7px 19px; background:#fff; border-radius:3px; box-shadow:0 14px 28px #20364d24,0 1px 4px #20364d12; }
.import-photo img { width:100%; height:100%; object-fit:cover; }
.import-photo-sea { width:218px; height:182px; left:105px; top:142px; transform:rotate(-19deg); z-index:2; }
.import-photo-rome { width:181px; height:228px; left:310px; top:22px; transform:rotate(-5deg); z-index:3; }
.import-photo-mountains { width:202px; height:204px; left:485px; top:113px; transform:rotate(16deg); z-index:2; }
@media(max-width:760px) {
 .photo-import { padding:35px 0 0; }
 .import-copy h2 { font-size:clamp(31px,8vw,45px); }
 .import-copy p { font-size:16px; margin-top:20px; }
 .import-scene { width:360px; height:390px; margin-top:30px; }
 .import-phone { width:158px; top:264px; padding:5px; border-radius:31px; }
 .import-screen { border-radius:24px; }
 .import-photo { padding:4px 4px 12px; }
 .import-photo-sea { width:121px; height:110px; left:7px; top:115px; }
 .import-photo-rome { width:124px; height:155px; left:110px; top:12px; }
 .import-photo-mountains { width:126px; height:136px; left:220px; top:87px; }
 .import-scene::before { bottom:26px; }
}
@media(max-width:360px) { .import-scene { transform:scale(.88); transform-origin:top center; margin-bottom:-45px; width:350px; max-width:none; left:50%; margin-left:-175px; } }

/* One still composition, with a low-angle device and curled photographs. */
.import-still { width:min(900px,100%); margin:35px auto 0; }
.import-still img { display:block; width:100%; height:auto; }
@media(max-width:760px) { .import-still { width:calc(100% + 28px); max-width:none; margin:28px -14px 20px; } }

/* A fixed hover area prevents the moving cards from losing the pointer. */
.ticket-hover-zone { position:absolute; z-index:3; left:30px; bottom:90px; width:300px; height:330px; pointer-events:none; }
.scenic-passport, .travel-memory { transition:transform 600ms cubic-bezier(.22,1,.36,1); }
@media (hover:hover) and (pointer:fine) {
 .ticket-hover-zone { pointer-events:auto; }
 .scenic-product:has(.ticket-hover-zone:hover) .scenic-passport { transform:translate(-14px,5px) rotate(-8deg); }
 .scenic-product:has(.ticket-hover-zone:hover) .travel-memory { transform:translate(24px,-26px) rotate(10deg); }
}
@media(max-width:1050px) and (min-width:761px) { .ticket-hover-zone {left:10px;bottom:60px;width:270px;height:300px;} }
@media(max-width:760px) { .ticket-hover-zone {left:0;bottom:95px;width:240px;height:270px;} }
@media(prefers-reduced-motion:reduce) { .scenic-passport, .travel-memory { transition:none; } }
.rating-row { display:flex; align-items:center; gap:20px; margin-top:30px; }
.rating-row .app-rating { flex-shrink:0; margin-top:0; }
.future-awards { position:relative; width:230px; height:90px; color:#71869d; }
.future-awards svg { width:100%;height:100%;overflow:visible; }
.future-awards path { stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.future-awards span { position:absolute; left:116px;top:32px; width:130px; font:italic 15px/1.2 "Bradley Hand", "Segoe Print", cursive; transform:rotate(-7deg); }
@media(max-width:760px) { .rating-row { margin-top:26px;gap:8px; } .future-awards {width:180px;} .future-awards span {left:90px;top:36px;font-size:13px;width:110px;} }

.future-awards span { top:52px; }
@media(max-width:760px) { .future-awards span { top:53px; } }

.future-awards span { left:142px;top:32px;transform:rotate(-5deg);width:136px; }
@media(max-width:760px) { .future-awards span {left:108px;top:35px;font-size:12px;width:108px;} }
@media(max-width:760px) { .future-awards {width:150px;flex-shrink:0;} .future-awards span {left:90px;top:36px;font-size:11.5px;width:108px;} }

.future-awards span {left:156px;}
@media(max-width:760px) { .future-awards span {left:101px;width:100px;} }

.future-awards { display:flex;align-items:center;width:170px;height:70px; }
.future-awards span { position:static;width:auto; font-size:15px; }
@media(max-width:760px) { .future-awards {width:150px;} .future-awards span {width:auto;font-size:13px;} }
.future-awards {flex-direction:column;align-items:flex-start;justify-content:center;gap:8px;}
.future-awards::before {content:"";display:block;width:28px;height:1.5px;background:currentColor;transform:rotate(-5deg);border-radius:100%;}

/* A quiet transfer from the photo library to the travel map. */
.photo-import {padding-bottom:65px;background:#fff;}
.photo-transfer {display:flex;align-items:center;width:min(620px,100%);margin:54px auto 35px;gap:28px;min-height:190px;}
.transfer-app {flex:0 0 104px;display:flex;flex-direction:column;align-items:center;gap:18px;}
.transfer-app>span {font-size:14px;color:#7c8490;letter-spacing:.01em;}
.photos-app-icon,.transfer-setent-icon {width:104px;height:104px;border-radius:24px;box-shadow:0 8px 24px #1b355210;}
.photos-app-icon {background:#fff;border:1px solid #eceef1;padding:10px;}
.photos-app-icon svg {width:100%;height:100%;}
.transfer-flow {flex:1;min-width:0;overflow:visible;margin-top:-36px;}
.transfer-trails {stroke:#dae5f0;stroke-width:1;opacity:.7;}
.import-particle {offset-path:var(--route);offset-distance:0%;fill:var(--tint);animation:photo-transfer 6s linear var(--delay) infinite;}
@keyframes photo-transfer {0% {offset-distance:0%;opacity:0;fill:var(--tint);} 12% {opacity:.8;} 62% {fill:#76b6ef;} 88% {opacity:.8;} 100% {offset-distance:100%;opacity:0;fill:#0789ff;}}
@media(prefers-reduced-motion:reduce) {.import-particle {animation:none;offset-distance:50%;opacity:.65;fill:#76b6ef;}}
@media(max-width:760px) {.photo-import {padding-bottom:35px;}.photo-transfer {gap:12px;margin:32px auto 12px;min-height:150px;}.transfer-app {flex-basis:70px;gap:12px;}.photos-app-icon,.transfer-setent-icon {width:70px;height:70px;border-radius:17px;}.photos-app-icon {padding:7px;}.transfer-app>span {font-size:12px;}.transfer-flow {margin-top:-27px;}}

img.photos-app-icon {display:block;padding:0;border:0;background:none;box-shadow:none;border-radius:0;transform:scale(1.22);}

/* Equal feature panels on desktop, a natural reading order on mobile. */
.feature-pair {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-block:28px 80px;}
.feature-pair>section {min-width:0;padding:40px 34px 28px;border-radius:28px;background:#f5f7fa;min-height:560px;overflow:hidden;}
.feature-pair .photo-import>.page-width {width:100%;height:100%;display:flex;flex-direction:column;}
.feature-pair .import-copy,.feature-pair .collection-copy {text-align:left;}
.feature-pair h2 {font-size:36px;line-height:1.1;letter-spacing:-1.5px;}
.feature-pair p {font-size:16px;line-height:1.5;margin-top:18px;}
.feature-pair .photo-transfer {width:100%;margin:auto 0 0;min-height:285px;gap:20px;}
.feature-pair .transfer-app {flex-basis:84px;}
.feature-pair .photos-app-icon,.feature-pair .transfer-setent-icon {width:84px;height:84px;border-radius:20px;}
.feature-pair img.photos-app-icon {border-radius:0;}
.feature-pair .collections-section {display:flex;flex-direction:column;align-items:stretch;gap:24px;background:#f8f7f4;}
.feature-pair .badge-shelf {width:100%;max-width:390px;flex-shrink:0;margin:auto auto 0;}
@media(min-width:761px) and (max-width:1050px) {.feature-pair>section {padding:30px 24px 24px;min-height:510px;}.feature-pair h2 {font-size:30px;}.feature-pair .photo-transfer {gap:12px;}.feature-pair .transfer-app {flex-basis:64px;}.feature-pair .photos-app-icon,.feature-pair .transfer-setent-icon {width:64px;height:64px;border-radius:16px;}}
@media(max-width:760px) {.feature-pair {grid-template-columns:1fr;gap:20px;margin-block:20px 45px;}.feature-pair>section {padding:30px 24px 24px;border-radius:24px;min-height:0;}.feature-pair h2 {font-size:30px;letter-spacing:-1.2px;}.feature-pair .photo-transfer {margin:26px 0 0;min-height:170px;gap:12px;}.feature-pair .transfer-app {flex-basis:64px;}.feature-pair .photos-app-icon,.feature-pair .transfer-setent-icon {width:64px;height:64px;border-radius:16px;}.feature-pair .badge-shelf {margin-top:15px;}.feature-pair .collection-copy h2 br {display:block;}}


.feature-pair .import-copy p {max-width:390px;}
/* Center each feature as one composition. */
.feature-pair>section {padding:42px 32px 34px;min-height:520px;}
.feature-pair .import-copy,.feature-pair .collection-copy {text-align:center;}
.feature-pair .import-copy p {margin-inline:auto;}
.feature-pair .photo-transfer {width:min(360px,100%);min-height:230px;margin:32px auto 0;gap:16px;}
.feature-pair .collections-section {gap:0;}
.feature-pair .badge-shelf {max-width:330px;margin:32px auto 0;}
@media(max-width:760px) {.feature-pair>section {padding:32px 22px 24px;min-height:0;}.feature-pair .photo-transfer {width:min(280px,100%);min-height:180px;margin-top:24px;gap:12px;}.feature-pair .badge-shelf {max-width:290px;margin-top:28px;}}

.magic-word {position:relative;display:inline-block;}
.magic-note {position:absolute;top:calc(100% + 7px);left:50%;width:max-content;color:#71869d;font:italic 14px/1.2 "Bradley Hand", "Segoe Print", cursive;transform:translateX(-50%) rotate(-5deg);white-space:nowrap;}
@media(max-width:760px) {.magic-note {font-size:13px;}}

.feature-pair .photo-transfer {width:min(280px,100%);gap:12px;}
.import-particle {fill:#65a9ed;animation:photo-transfer-fast 3s linear var(--delay) infinite;}
@keyframes photo-transfer-fast {0% {offset-distance:0%;opacity:0;} 12% {opacity:.85;} 88% {opacity:.85;} 100% {offset-distance:100%;opacity:0;}}
@media(max-width:760px) {.feature-pair .photo-transfer {width:min(230px,100%);gap:10px;}}
@media(prefers-reduced-motion:reduce) {.import-particle {animation:none;offset-distance:50%;opacity:.65;}}

.transfer-stream {position:relative;flex:1;min-width:0;height:24px;margin-top:-36px;}
.transfer-stream::before {content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:linear-gradient(90deg,transparent,#80b5ed55 30%,#80b5ed55 70%,transparent);}
.transfer-stream i {position:absolute;top:50%;left:0;width:5px;height:5px;border-radius:50%;background:#529ce6;transform:translate(-50%,-50%);opacity:0;animation:transfer-dot 2.7s cubic-bezier(.4,0,.6,1) infinite;}
.transfer-stream i:nth-child(2) {animation-delay:-.9s;}
.transfer-stream i:nth-child(3) {animation-delay:-1.8s;}
@keyframes transfer-dot {0% {left:0;opacity:0;} 18% {opacity:.8;} 78% {opacity:.8;} 100% {left:100%;opacity:0;}}
@media(max-width:760px) {.transfer-stream {margin-top:-27px;}}
@media(prefers-reduced-motion:reduce) {.transfer-stream i {animation:none;left:50%;opacity:.65;}.transfer-stream i:nth-child(2) {left:25%;}.transfer-stream i:nth-child(3) {left:75%;}}

.transfer-sketch {display:block;flex:1;min-width:0;overflow:visible;margin-top:-36px;color:#7e9bb8;}
.transfer-sketch path {stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;}
@media(max-width:760px) {.transfer-sketch {margin-top:-27px;}}
.feature-pair .transfer-app {flex-basis:64px;}
.feature-pair .photos-app-icon,.feature-pair .transfer-setent-icon {width:64px;height:64px;border-radius:16px;}
.feature-pair img.photos-app-icon {border-radius:0;}
@media(max-width:760px) {
 .feature-pair .transfer-app {flex-basis:48px;}
 .feature-pair .photos-app-icon,.feature-pair .transfer-setent-icon {width:48px;height:48px;border-radius:12px;}
 .feature-pair img.photos-app-icon {border-radius:0;}
 .feature-pair .photo-transfer {width:min(200px,100%);}
}
.feature-pair .photo-transfer {width:min(210px,100%);gap:8px;}
@media(max-width:760px) {.feature-pair .photo-transfer {width:min(164px,100%);gap:7px;}}

.badge-shelf .badge:nth-child(n) {transform:none;}
.badge-art .app-badge {display:block;width:100%;height:auto;overflow:visible;}
.badge-shelf .badge-art {filter:drop-shadow(0 3px 4px #2532460c);}

.feature-pair .badge-shelf {display:flex;align-items:center;gap:8px;width:100%;max-width:none;height:230px;aspect-ratio:auto;margin:32px auto 0;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#cdd4dd transparent;}
.badge-shelf .badge:nth-child(n) {position:relative;flex:0 0 76px;width:76px;left:auto;top:auto;transform:none;margin:0;}
.badge-shelf:focus-visible {outline:2px solid #7bb5ed;outline-offset:5px;border-radius:8px;}
@media(max-width:760px) {.feature-pair .badge-shelf {height:180px;margin-top:24px;}.badge-shelf .badge:nth-child(n) {flex-basis:64px;width:64px;}}

.feature-pair .badge-shelf {width:min(210px,100%);justify-content:space-between;gap:9px;overflow:visible;}
.badge-shelf .badge:nth-child(n) {flex:0 0 64px;width:64px;}
.badge-shelf .badge:nth-child(n+4) {display:none;}
@media(max-width:760px) {.feature-pair .badge-shelf {width:min(164px,100%);gap:10px;}.badge-shelf .badge:nth-child(n) {flex-basis:48px;width:48px;}}
.feature-pair .badge-shelf {
 -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 15%,#000 85%,transparent 100%);
 mask-image:linear-gradient(to right,transparent 0%,#000 15%,#000 85%,transparent 100%);
}
.feature-pair .badge-shelf {justify-content:center;gap:4px;overflow:hidden;}
.badge-shelf .badge:nth-child(n) {flex:0 0 89px;width:89px;}
@media(max-width:760px) {.badge-shelf .badge:nth-child(n) {flex-basis:67px;width:67px;}}
/* Shared proportions for the two compact feature compositions. */
.feature-pair {gap:20px;}
.feature-pair>section {min-height:0;padding:34px 28px 30px;border-radius:26px;}
.feature-pair .photo-import>.page-width {height:auto;}
.feature-pair h2 {font-size:32px;line-height:1.15;letter-spacing:-1.25px;}
.feature-pair p {font-size:15px;line-height:1.5;margin-top:14px;}
.feature-pair .photo-transfer,.feature-pair .badge-shelf {height:112px;min-height:112px;margin:24px auto 0;}
.feature-pair .badge-shelf {padding-bottom:34px;box-sizing:border-box;}
.feature-pair .transfer-app {gap:12px;}
.transfer-sketch {margin-top:-30px;}
@media(max-width:760px) {
 .feature-pair {gap:16px;}
 .feature-pair>section {padding:28px 22px 24px;border-radius:22px;}
 .feature-pair h2 {font-size:28px;letter-spacing:-1px;}
 .feature-pair p {font-size:14px;margin-top:12px;}
 .feature-pair .photo-transfer,.feature-pair .badge-shelf {height:96px;min-height:96px;margin-top:20px;}
 .feature-pair .badge-shelf {padding-bottom:27px;}
 .transfer-sketch {margin-top:-27px;}
}

.feature-pair {grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.feature-pair>section {padding:32px 22px 26px;}
.feature-pair h2 {font-size:28px;letter-spacing:-1px;}
.feature-pair p {font-size:14px;line-height:1.5;}
.region-copy {text-align:center;}
.feature-pair .regions-feature {background:#f2f7f5;}
.region-miniature {width:170px;height:112px;margin:24px auto 0;font-size:12px;color:#344b45;}
.region-country {display:block;color:#84928d;font-size:10px;margin-bottom:6px;letter-spacing:.04em;}
.region-miniature>div {display:flex;align-items:center;justify-content:space-between;padding:5px 0;border-bottom:1px solid #dfe8e4;}
.region-miniature>div:last-child {border:0;}
.region-check {font-size:11px;background:#deeee6;color:#55846b;border-radius:50%;width:17px;height:17px;display:grid;place-items:center;}
@media(min-width:761px) and (max-width:1050px) {.feature-pair {gap:12px;}.feature-pair>section {padding:26px 14px 22px;}.feature-pair h2 {font-size:24px;}.feature-pair p {font-size:12px;}}
@media(max-width:760px) {.feature-pair {grid-template-columns:1fr;gap:16px;}.feature-pair>section {padding:28px 22px 24px;}.feature-pair h2 {font-size:28px;}.region-miniature {height:96px;margin-top:20px;}.region-miniature>div {padding:3px 0;}}
/* A single, centered closing invitation. */
.download-section {flex-direction:column;align-items:center;justify-content:center;gap:28px;padding:76px 0 88px;text-align:center;}
.download-copy {flex-direction:column;align-items:center;gap:22px;}
.download-copy>img {width:44px;height:44px;border-radius:11px;}
.download-section h2 {font-size:46px;line-height:1.1;letter-spacing:-1.8px;font-weight:600;}
.download-section .app-store {margin:0;}
.site-footer {padding-block:26px 30px;}
@media(max-width:760px) {.download-section {padding:48px 0 58px;gap:24px;}.download-copy {gap:18px;}.download-copy>img {width:40px;height:40px;border-radius:10px;}.download-section h2 {font-size:34px;letter-spacing:-1.1px;}}

.hero-copy .hero-description {max-width:440px;font-size:17px;line-height:1.55;color:#526479;margin-top:24px;}
.scenic-hero .hero-copy .hero-description+.app-store {margin-top:28px;}
.site-footer>div {flex-wrap:wrap;}
.about-page .site-header {position:relative;inset:auto;}
.about-content {width:min(760px,calc(100% - 48px));margin:80px auto 100px;}
.about-eyebrow {font-size:11px;letter-spacing:.15em;color:#748296;margin-bottom:22px;}
.about-content h1 {font-size:clamp(38px,5vw,62px);line-height:1.05;letter-spacing:-.055em;}
.about-content h1 span {color:#2464ba;}
.about-lead {font-size:20px;line-height:1.65;margin-top:28px;color:#536071;}
.about-index {display:flex;flex-wrap:wrap;gap:12px 24px;margin:34px 0 54px;font-size:14px;color:#2464ba;}
.about-content section {padding:32px 0;border-top:1px solid #e7ebef;scroll-margin-top:28px;}
.about-content h2 {font-size:27px;line-height:1.2;letter-spacing:-.025em;}
.about-content section p {font-size:17px;line-height:1.7;color:#596575;margin-top:16px;}
.about-download {display:inline-block;margin-top:24px;color:#2464ba;font-size:16px;}
@media(max-width:760px) {.hero-copy .hero-description {font-size:15px;margin-top:20px;max-width:340px;}.about-content {margin:42px auto 58px;}.about-lead {font-size:18px;}.about-content h2 {font-size:24px;}.about-content section p {font-size:16px;}.site-footer {flex-wrap:wrap;row-gap:16px;}}

.faq-group h2 {color:#728093;font-size:13px;letter-spacing:.07em;text-transform:uppercase;margin-bottom:28px;}
.faq-answer {margin:0 0 30px;scroll-margin-top:28px;}
.faq-answer:last-child {margin-bottom:0;}
.faq-answer h3 {font-size:23px;line-height:1.3;letter-spacing:-.025em;font-weight:600;}
.about-content .faq-answer p {margin-top:10px;}
.faq-answer a,.faq-more a {color:#2464ba;text-decoration:underline;text-underline-offset:3px;}
.faq-more {margin-top:24px;color:#596575;font-size:15px;line-height:1.6;}
@media(max-width:760px) {.faq-answer h3 {font-size:21px;}.faq-group h2 {font-size:12px;}}

.site-header nav a {color:#667383;transition:color .15s ease;}
.site-header nav a:hover,.site-header nav a[aria-current="page"] {color:#18212b;}
@media(max-width:760px) {
 .site-header {display:grid;grid-template-columns:1fr auto;height:auto;row-gap:8px;padding-top:10px;}
 .site-header .brand {grid-column:1;grid-row:1;}
 .site-header .get-app {grid-column:2;grid-row:1;}
 .site-header nav {display:flex;grid-column:1 / -1;grid-row:2;justify-content:center;gap:26px;font-size:13px;}
 .site-header nav a {padding:12px 0;}
 .scenic-layout {padding-top:154px;}
 .about-page .site-header {padding-top:24px;}
 .about-content {margin-top:34px;}
}

/* An open, editorial treatment for About and Help. */
.about-page {position:relative;isolation:isolate;}
.about-page::before {content:"";position:absolute;z-index:-1;pointer-events:none;inset:0 0 auto;height:680px;background:radial-gradient(ellipse at 82% 9%,#dce9f9a8,transparent 60%),radial-gradient(ellipse at 4% 22%,#f4eae382,transparent 55%),linear-gradient(#f7faff85,#fff);}
.about-content {width:min(900px,calc(100% - 64px));margin-top:76px;}
.editorial-intro {position:relative;padding:8px 0 18px;}
.editorial-intro h1 {max-width:680px;font-size:clamp(40px,5.2vw,68px);}
.editorial-intro .about-lead {max-width:630px;font-size:19px;line-height:1.65;}
.editorial-route {position:absolute;width:170px;height:170px;right:-10px;top:24px;stroke:#7a9bc0;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;opacity:.6;}
.about-index {counter-reset:topic;gap:18px 30px;margin:30px 0 22px;padding:22px 0 26px;border-top:1px solid #c8d6e45c;}
.about-index a {display:flex;align-items:center;gap:8px;color:#42556b;font-size:13px;transition:color .2s;}
.about-index a::before {counter-increment:topic;content:counter(topic,decimal-leading-zero);font-size:10px;font-variant-numeric:tabular-nums;color:#91a7bd;}
.about-index a:hover {color:#087cff;}
.about-content>section {padding:38px 0;}
.about-content>section p {max-width:730px;}
.about-content>section:not(.faq-group) h2 {color:#24364b;}
.faq-page .faq-group h2 {display:flex;align-items:center;gap:12px;color:#5076a1;font-size:12px;letter-spacing:.08em;}
.faq-group h2::before {content:"";width:20px;height:1px;background:#8cb0d5;}
.faq-answer {margin-bottom:32px;}
.faq-answer h3 {font-size:22px;color:#253449;}
.faq-more {padding:24px 0;border-top:1px solid #e7ebef;}
.about-page .site-header nav a[aria-current="page"] {text-decoration:underline;text-decoration-color:#86abd2;text-underline-offset:7px;text-decoration-thickness:2px;}
@media(max-width:1050px) {.editorial-route {width:120px;height:120px;top:10px;right:0;opacity:.4;}.editorial-intro h1 {max-width:75%;}.editorial-intro .about-lead {max-width:85%;}}
@media(max-width:760px) {.about-content {width:calc(100% - 48px);margin-top:30px;}.about-page::before {height:570px;}.editorial-intro {padding-top:8px;}.editorial-intro h1 {font-size:40px;max-width:100%;}.editorial-intro .about-lead {font-size:17px;max-width:100%;margin-top:24px;}.editorial-route {position:relative;display:block;margin:10px 0 -12px auto;width:78px;height:70px;top:auto;right:auto;opacity:.65;}.about-index {gap:18px 22px;margin:20px 0 10px;padding:20px 0;}.about-index a {font-size:12px;}.about-content>section {padding:30px 0;}.faq-answer h3 {font-size:20px;}}

.privacy-content {max-width:820px;}
.privacy-content .updated {font-size:14px;color:#7a8796;margin-top:24px;}
.policy-language {display:inline-block;font-size:13px;color:#5076a1;margin-top:12px;}
.privacy-content>.editorial-intro {padding-bottom:38px;border-bottom:1px solid #dce4ed;margin-bottom:32px;}
.privacy-content>p,.privacy-content li {font-size:17px;line-height:1.75;color:#596575;margin-top:16px;}
.privacy-content h3 {font-size:25px;line-height:1.3;letter-spacing:-.03em;color:#253449;border-top:1px solid #e7ebef;padding-top:32px;margin-top:38px;scroll-margin-top:24px;}
.privacy-content>p a,.privacy-content li a {color:#2464ba;text-decoration:underline;text-underline-offset:3px;}
.privacy-content ul {padding-left:24px;margin:20px 0;}
.privacy-content strong {color:#344359;font-weight:600;}
@media(max-width:760px) {.site-header {display:flex;}.scenic-layout {padding-top:106px;}.privacy-content>p,.privacy-content li {font-size:16px;}.privacy-content h3 {font-size:22px;}.privacy-content .editorial-intro h1 {font-size:40px;}}
/* Mobile homepage only; desktop hero remains unchanged. */
@media(max-width:760px) {
 .scenic-layout {padding-top:104px;padding-bottom:24px;gap:18px;}
 .scenic-hero .hero-copy {display:grid;grid-template-columns:1fr 1fr;column-gap:18px;align-items:center;text-align:center;}
 .scenic-hero .hero-copy h1 {grid-column:1 / -1;font-size:clamp(33px,8.7vw,39px);line-height:1.08;letter-spacing:-1.55px;}
 .scenic-hero .hero-copy .hero-description {grid-column:1 / -1;max-width:315px;margin:20px auto 0;font-size:15px;line-height:1.55;}
 .scenic-hero .hero-copy .hero-description+.app-store {justify-self:end;margin-top:24px;}
 .scenic-hero .hero-copy .rating-row {justify-self:start;justify-content:center;margin-top:24px;gap:0;}
 .scenic-hero .rating-row .app-rating {width:126px;gap:4px;}
 .scenic-hero .rating-laurel {width:20px;height:48px;}
 .scenic-hero .app-rating strong {font-size:24px;}
 .scenic-hero .rating-stars {font-size:10px;}
 .scenic-hero .rating-caption {font-size:9px;}
 .scenic-hero .future-awards {display:none;}
 .scenic-product {height:480px;max-width:370px;}
 .scenic-phone.iphone-device {top:-48px;left:-3px;}
 .scenic-passport {width:180px;left:13px;bottom:105px;}
 .travel-memory {width:169px;left:31px;bottom:140px;}
 .scenic-product .flight-sketch {transform:translateY(-20px);}
 .site-footer {align-items:center;justify-content:center;padding-block:22px;gap:12px;text-align:center;}
 .site-footer>div {justify-content:center;gap:22px;}
}
@media(max-width:360px) {
 .scenic-hero .hero-copy {column-gap:12px;}
 .scenic-hero .hero-copy .app-store img {width:144px;height:48px;}
 .scenic-hero .rating-row .app-rating {width:116px;}
 .scenic-product {height:448px;}
 .scenic-passport {width:166px;left:4px;bottom:96px;}
 .travel-memory {width:156px;left:20px;bottom:129px;}
}
@media(max-width:760px) {
 .scenic-layout {grid-template-columns:1fr 1fr;grid-template-areas:"headline headline" "scene scene" "description description" "download rating";column-gap:18px;row-gap:0;}
 .scenic-hero .hero-copy {display:contents;}
 .scenic-hero .hero-copy h1 {grid-area:headline;text-align:center;margin:0;}
 .scenic-product {grid-area:scene;height:448px;margin-top:12px;}
 .scenic-hero .hero-copy .hero-description {grid-area:description;text-align:center;margin-top:0;}
 .scenic-hero .hero-copy .hero-description+.app-store {grid-area:download;}
 .scenic-hero .hero-copy .rating-row {grid-area:rating;}
 .scenic-phone.iphone-device {width:215px;top:-43px;}
 .scenic-passport {bottom:84px;}
 .travel-memory {bottom:119px;}
}
@media(max-width:360px) {.scenic-product {height:420px;}.scenic-phone.iphone-device {width:200px;}.scenic-passport {bottom:78px;}.travel-memory {bottom:111px;}}
@media(max-width:760px) {
 .scenic-hero .hero-copy .rating-row {justify-self:end;}
}

@media(min-width:761px) {
 .hero-actions {display:flex;align-items:center;gap:32px;margin-top:32px;}
 .scenic-hero .hero-copy .hero-actions .app-store {margin:0;flex-shrink:0;}
 .hero-actions .rating-row {margin:0;gap:16px;}
 .hero-actions .app-rating {width:140px;}
 .hero-actions .future-awards {width:130px;flex-shrink:0;}
 .hero-actions .future-awards span {font-size:13px;}
}
@media(min-width:761px) and (max-width:1050px) {.hero-actions {gap:20px;flex-wrap:wrap;row-gap:18px;}}
@media(max-width:760px) {
 .hero-actions {display:contents;}
 .scenic-hero .hero-copy .hero-actions .app-store {grid-area:download;justify-self:end;margin-top:24px;}
}
.rating-laurel {color:#65686c;}
@media(min-width:761px) {
 .scenic-layout {padding-top:104px;padding-bottom:22px;min-height:0;}
 .scenic-hero .scenic-product {--desktop-scene-scale:1;transform:scale(var(--desktop-scene-scale));transform-origin:50% 0;margin-bottom:calc(635px * (var(--desktop-scene-scale) - 1));}
 body:not(.about-page) .site-footer {padding-block:18px;}
}
@media(min-width:1051px) and (max-height:900px) {.scenic-hero .scenic-product {--desktop-scene-scale:.96;}}
@media(min-width:1051px) and (max-height:800px) {.scenic-hero .scenic-product {--desktop-scene-scale:.90;}}
@media(min-width:1051px) and (max-height:700px) {.scenic-hero .scenic-product {--desktop-scene-scale:.79;}.scenic-layout {padding-top:92px;padding-bottom:16px;}}
@media(min-width:761px) and (max-width:1050px) {.scenic-hero .scenic-product {margin-bottom:calc(560px * (var(--desktop-scene-scale) - 1));}}
@media(min-width:761px) and (max-width:1050px) and (max-height:800px) {.scenic-hero .scenic-product {--desktop-scene-scale:.85;}}
.scenic-hero .rating-row,
.scenic-hero .rating-laurel,
.scenic-hero .app-rating,
.scenic-hero .app-rating .rating-stars,
.scenic-hero .app-rating strong,
.scenic-hero .rating-caption,
.scenic-hero .future-awards,
.scenic-hero .future-awards span {color:#65686c;}

@media(min-width:1051px) and (min-height:701px) and (max-height:760px) {.scenic-hero .scenic-product {--desktop-scene-scale:.85;}}
@media(min-width:761px) {
 .scenic-hero .hero-copy .hero-description {margin-top:36px;}
 .scenic-hero .hero-actions {margin-top:44px;}
}
@media(max-width:760px) {
 .scenic-hero .hero-copy h1 {text-align:left;}
 .scenic-hero .hero-copy .hero-description {text-align:left;justify-self:start;margin-inline:0;max-width:100%;}
}

/* Mobile download and footer alignment. */
@media(max-width:760px) {
 .scenic-hero .hero-copy .hero-description {font-size:14px;line-height:1.65;color:#596b80;}
 .scenic-hero .hero-copy .hero-description span {display:block;}
 .scenic-hero .hero-copy .hero-actions .app-store {justify-self:start;}
 .site-footer {display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:14px;text-align:left;padding-top:24px;padding-bottom:max(24px,env(safe-area-inset-bottom));}
 .site-footer>div {order:-1;width:100%;display:flex;justify-content:space-between;gap:12px;flex-wrap:nowrap;}
 .site-footer>div a {display:inline-flex;align-items:center;min-height:44px;font-size:13px;}
 .site-footer>span {font-size:12px;color:#8b9199;}
}

/* Keep the mobile download action above the product composition. */
@media(max-width:760px) {
 .scenic-layout {grid-template-areas:"headline headline" "download download" "scene scene";}
 .scenic-hero .hero-copy .hero-actions .app-store {margin-top:24px;}
 .scenic-hero .hero-copy .rating-row {display:none;}
 .scenic-hero .scenic-product {margin-top:24px;}
}

@media(max-width:760px) { .scenic-hero .hero-copy .hero-description {display:none;} }
