:root{--paper:#f5f2ea;--green:#3f5a3e;--mauve:#a94c5a;--ink:#1f2a24;--serif:'Lora',Georgia,serif;--sans:'Work Sans',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#121a18;color:var(--paper);font-family:var(--sans);font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:3px solid #d08795;outline-offset:6px}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:var(--paper);color:var(--ink);padding:12px}.skip:focus{top:15px}header{position:absolute;top:0;left:0;width:100%;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:24px 5vw;border-bottom:1px solid #fff3}.brand{display:flex;gap:12px;align-items:center}.brand img{width:40px;height:40px;object-fit:cover;border-radius:50%}.brand span,.wordmark{font-family:var(--serif);font-size:32px;font-weight:500;letter-spacing:-1.5px}nav{display:flex;gap:36px;align-items:center}.story-link{font-size:14px}.button{display:inline-flex;gap:28px;align-items:center;justify-content:center;min-height:54px;padding:13px 24px;border-radius:20px;background:var(--paper);color:var(--ink);font-weight:500;font-size:16px;transition:transform .25s,background .25s}.button:hover{transform:translateY(-3px);background:white}.button span{font-size:23px;line-height:1}.button.small{min-height:46px;padding:10px 19px;font-size:14px;background:#f5f2eaee}.hero{height:100svh;min-height:740px;position:relative;overflow:hidden}.hero-image,.hero-shade,.scene,.scene-shade,.closing-image{position:absolute;inset:0}.hero-image{background:#4c6560 url('assets/morning.jpg') center 52%/cover;transform:scale(1.04)}.hero-shade{background:linear-gradient(90deg,rgba(13,33,30,.65),rgba(13,33,30,.13) 80%),linear-gradient(0deg,#10232070,transparent 50%)}.hero-content{position:relative;padding:clamp(170px,23vh,240px) 7vw 100px;max-width:1050px}.eyebrow{font-size:12px;letter-spacing:2.8px;font-weight:500;margin:0 0 26px;line-height:1.7}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-family:var(--serif);font-weight:400}h1{font-size:clamp(56px,6.8vw,106px);line-height:1.07;letter-spacing:-4px;margin-bottom:30px}em{font-weight:400;color:#e5e0cf}h1 em{white-space:nowrap}.intro{font-size:18px;line-height:1.7;color:#f5f2eae0;margin-bottom:29px}.availability{font-size:12px;margin:16px 0 0;letter-spacing:.1px;opacity:.75}.scroll-cue{position:absolute;bottom:40px;left:7vw;font-size:11px;letter-spacing:2px;display:flex;align-items:center;gap:15px;min-height:44px}.scroll-line{height:40px;width:1px;background:#fff8;animation:scroll-nudge 2.2s ease-in-out infinite;transform-origin:center}.hero-location{position:absolute;right:5vw;bottom:54px;font-size:12px;letter-spacing:1px}.journey{position:relative}.stage{height:100svh;min-height:650px;position:sticky;top:0;overflow:hidden}.scene{background-size:cover;background-position:center;transition:opacity 1.1s;opacity:0;transform:scale(1.045)}.scene-morning{background-image:url('assets/morning.jpg');opacity:1;filter:brightness(.82)}.scene-day{background-image:url('assets/morning.jpg');background-position:center 70%;filter:brightness(1.18) saturate(.65)}.scene-sunset{background-image:url('assets/sunset.jpg');background-position:center 55%}.scene-night{background-image:url('assets/night.jpg')}.scene-shade{background:linear-gradient(90deg,#102320d9 0%,#10232099 42%,#1023201a 75%),linear-gradient(0deg,#10232077,transparent 50%)}.chapters{position:relative;margin-top:-100svh;pointer-events:none}.chapter{height:115svh;min-height:760px;display:flex;align-items:center;padding:100px 7vw;position:relative}.chapter-copy{width:45%;max-width:570px;opacity:.15;transform:translateY(35px);transition:opacity .6s,transform .6s}.chapter.active .chapter-copy,.chapter:first-child .chapter-copy{opacity:1;transform:none}h2{font-size:clamp(42px,4.7vw,72px);line-height:1.13;letter-spacing:-2.5px;margin-bottom:28px}.chapter-copy>p:not(.eyebrow){max-width:420px;font-size:18px;color:#f5f2ead9}.chapter-copy .detail{font-size:14px!important;border-top:1px solid #fff4;padding-top:20px;margin-top:30px;color:#f5f2eab8!important;max-width:380px!important}.phone-wrap{position:absolute;right:12vw;top:50%;transform:translateY(-48%) rotate(3deg);transition:transform 1s;perspective:1000px;width:310px}.phone{height:628px;width:310px;border:7px solid #202625;border-radius:46px;background:#f0eee9;color:#1f2a24;position:relative;overflow:hidden;box-shadow:0 40px 90px #0006,0 0 0 1px #fff5,inset 0 0 0 2px #fff3;transition:background 1.1s,color 1.1s}.island{position:absolute;top:10px;width:85px;height:22px;background:#141a18;border-radius:20px;left:50%;transform:translateX(-50%);z-index:4}.phone-status{padding:13px 24px;display:flex;justify-content:space-between;font-size:10px;font-weight:600}.screen{position:absolute;left:0;right:0;top:49px;bottom:60px;padding:14px 16px;opacity:0;transform:translateY(16px);transition:opacity .6s,transform .8s;overflow:hidden}.screen.active{opacity:1;transform:none}.app-kicker{font-size:8px;letter-spacing:1.5px;font-weight:600;color:#8d636e;margin-bottom:9px}h3{font-size:24px;line-height:1.2;margin-bottom:6px;font-weight:500;letter-spacing:-.6px}.muted{font-size:10px;opacity:.75;margin-bottom:18px}.app-card{border-radius:22px;background:white;padding:16px;margin:14px 0;font-size:10px;transition:background 1s}.app-card p{margin:6px 0;color:#5e6c5f;font-size:10px;line-height:1.6}.card-top{font-size:8px;letter-spacing:.7px;display:flex;justify-content:space-between;color:#50664c;margin-bottom:13px}.card-top span{letter-spacing:0}h4{font-size:20px;line-height:1.2;margin:0 0 5px}.progress{height:6px;background:#e0e5df;border-radius:4px;margin:15px 0 6px;overflow:hidden}.progress i{width:38%;height:100%;background:#607859;display:block;border-radius:4px}.right{text-align:right}.mauve{color:#a94c5a!important}.divider{height:1px;background:#1f2a2410;margin:12px 0}.arrow{float:right;color:#a94c5a}.app-action{padding:15px 7px;background:#3f5a3e;color:white;border-radius:20px;text-align:center;font-size:11px;font-weight:600}.compact{padding:15px}.below{margin-top:20px}.mini-moment{display:flex;gap:10px;font-size:9px;padding:12px;background:white;border-radius:15px}.mini-moment p{font-size:9px;margin:4px 0}.thumb{width:45px;height:45px;border-radius:10px;background:url('assets/morning.jpg') center/cover}.phone-nav{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-around;align-items:center;background:#fff;height:58px;border-top:1px solid #1f2a2410;font-size:20px;color:#5e7059;transition:background 1s}.phone-nav span{text-align:center;line-height:1.1}.phone-nav small{display:block;font-size:7px;margin-top:4px}.phone-nav .nav-check{width:43px;height:43px;border-radius:50%;background:#3f5a3e;color:#fff;padding-top:10px;transform:translateY(-7px);box-shadow:0 0 0 4px #f0eee9}.sample-label{text-align:center;font-size:10px;color:#fff9;margin-top:15px;letter-spacing:.3px}.tabs{display:flex;align-items:center;justify-content:space-around;border-radius:20px;background:white;padding:5px;font-size:10px}.tabs b{background:#3f5a3e;padding:6px 15px;color:white;border-radius:20px}.stop{display:flex;gap:13px;align-items:center;margin:0}.stop h4{font-size:19px}.stop-num{font-size:11px;background:#e8eee5;padding:9px;border-radius:50%;color:#3f5a3e}.stop b{font-size:9px;color:#a94c5a}.tabs+.stop{margin-top:20px}.route-line{height:20px;margin-left:33px;border-left:1px dashed #3f5a3e55}.big-number{font-size:34px;letter-spacing:-1px;font-weight:500;line-height:1.3}.big-number span{font-size:22px;opacity:.5}.money-cols{display:flex;justify-content:space-between;margin-top:18px}.money-cols small{display:block;font-size:7px;letter-spacing:.6px}.money-cols b{font-size:21px;font-weight:500}.chart{height:85px;display:flex;gap:9px;align-items:end;border-bottom:1px solid #ddd;margin-top:13px}.chart i{height:var(--h);flex:1;background:linear-gradient(0deg,#718768 60%,#aeb994 60%,#aeb994 80%,#b97885 80%);border-radius:2px 2px 0 0}.chart-label{display:flex;justify-content:space-between;font-size:8px;opacity:.5;margin-top:5px}.category{font-size:10px;display:flex;justify-content:space-between;margin:9px 7px}.person{display:flex;gap:8px;align-items:center}.person b{font-size:9px}.person p{font-size:9px;margin:1px 0}.avatar{width:29px;height:29px;border-radius:50%;background:#dfe6d9;color:#40583e;display:grid;place-items:center;font-size:11px;flex-shrink:0}.post{padding:12px;margin-top:17px}.stars{color:#aa8b43!important;letter-spacing:2px}.post-photo{height:215px;border-radius:13px;background:url('assets/sunset.jpg') center/cover;margin-top:10px}.reactions{font-size:13px;padding-top:10px;color:#bd7a8a}.reactions span{margin-left:20px}.comment{display:flex;gap:9px;font-size:9px;background:#ffffff15;border-radius:15px;padding:8px}.comment p{margin:3px 0}.blush{background:#eddbe0;color:#995564}.map-visual{height:225px;margin:15px -16px 0;background:linear-gradient(#172b2944,#172b2999),url('assets/morning.jpg') center/cover;position:relative}.map-label{position:absolute;top:18px;left:16px;font-size:8px;letter-spacing:1.5px;color:white}.map-pin{position:absolute;left:55%;top:40%;font-size:45px;color:#efc8d2}.map-city{position:absolute;left:39%;top:69%;font-size:10px;color:white;background:#172b2988;padding:4px 12px;border-radius:20px}.map-tags{display:flex;gap:8px;margin-top:12px}.map-tags span{border:1px solid #84967c55;border-radius:20px;padding:4px 12px}.phone.dark{background:#12161a;color:#d8e0e5}.phone.dark .app-card{background:#1f2622}.phone.dark .app-card p{color:#a8b5a8}.phone.dark .phone-nav{background:#1f2622;color:#a8b5a8}.phone.dark .nav-check{background:#7fa37d;color:#10160f;box-shadow:0 0 0 4px #12161a}.phone.dark .app-kicker{color:#d08795}.phone.dark .card-top{color:#a8b5a8}.chapter-progress{position:absolute;right:4vw;top:30%;height:40%;width:1px;background:#fff3}.chapter-progress i{display:block;width:3px;background:#eee6d0;height:20%;transform:translateX(-1px);transition:height .4s}.closing{min-height:95svh;position:relative;text-align:center;display:flex;flex-direction:column;justify-content:center;overflow:hidden;background:#101c1b}.closing-image{background:linear-gradient(#10201b88,#101c1be8),url('assets/night.jpg') center/cover;opacity:.6}.closing-inner{position:relative;padding:120px 20px 100px}.closing h2{font-size:clamp(48px,6vw,90px)}.closing-inner>p:not(.eyebrow):not(.availability){color:#c9d3c9;font-size:16px;margin-bottom:32px}footer{position:relative;display:flex;align-items:center;justify-content:space-between;padding:25px 5vw;border-top:1px solid #fff2;gap:20px;font-size:12px}footer>span:nth-child(2){letter-spacing:2px}footer a{min-height:44px;display:flex;align-items:center}@media(min-height:950px){.phone-wrap{width:350px}.phone{transform:scale(1.1);transform-origin:center}.sample-label{margin-top:48px}}@media(max-width:900px){.phone-wrap{right:6vw;width:280px}.phone{transform:scale(.9);transform-origin:top left}.sample-label{margin-top:-48px}.chapter-copy{width:46%}h2{font-size:44px}.chapter-copy>p:not(.eyebrow){font-size:16px}header{padding:20px 5vw}.hero-location{display:none}}@media(max-width:650px){header{padding:17px 6vw}.brand span{font-size:27px}.brand img{width:32px;height:32px}.story-link{display:none}.button.small{font-size:12px;min-height:44px;padding:10px 14px;gap:10px}.hero{min-height:720px}.hero-content{padding:180px 7vw 100px}.eyebrow{font-size:10px;letter-spacing:2px;max-width:290px}h1{font-size:53px;letter-spacing:-2.5px}h1 em{white-space:normal}.intro{font-size:16px}.hero-image{background-position:60% center}.hero-shade{background:linear-gradient(90deg,#102320aa,#10232044),linear-gradient(0deg,#10232055,transparent)}.hero-cta{font-size:15px}.availability{font-size:10px}.scroll-cue{font-size:9px}.stage{min-height:760px}.phone-wrap{top:auto;bottom:16px;right:50%;transform:translateX(50%)!important;width:210px;height:438px}.phone{transform:scale(.677);transform-origin:top left}.sample-label{font-size:8px;margin-top:-202px;white-space:nowrap}.chapter{min-height:850px;height:120svh;padding:88px 7vw 470px;align-items:flex-start}.chapters{margin-top:-100svh}.chapter-copy{width:100%;max-width:430px}.chapter .eyebrow{margin-bottom:12px}h2{font-size:35px;letter-spacing:-1.3px;margin-bottom:14px}.chapter-copy>p:not(.eyebrow){font-size:14px;line-height:1.6;max-width:350px}.chapter-copy .detail{display:none}.scene-shade{background:linear-gradient(0deg,#10232033,#102320c9 90%)}.chapter-progress{right:5vw;top:60%;height:25%}.closing-inner{padding:100px 7vw 75px}.closing h2{font-size:46px}.closing .eyebrow{margin-left:auto;margin-right:auto}.closing-inner>p:not(.eyebrow):not(.availability){font-size:14px}footer{flex-wrap:wrap;justify-content:center}footer>span:nth-child(2){width:100%;order:3;font-size:10px}.wordmark{font-size:29px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.hero-image,.scene{transform:none}.phone-wrap{transform:translateY(-48%)}.chapter-copy{transform:none}}
.map-visual{background:#080f15 url('assets/earth.jpg') center/cover}.map-label{z-index:1;text-shadow:0 1px 4px #000}.map-city{background:#172b29bb}.chapter:first-child:not(.active) .chapter-copy{opacity:.15;transform:translateY(35px)}
/* Layouts follow the captured app screens; names and figures are sample data. */
.app-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.app-title-row .avatar{position:absolute;right:16px;top:10px}.app-title-row h3{margin-bottom:5px}.trip-track{height:4px;border-radius:5px;background:#ccd4cc;margin-top:9px}.trip-track i{display:block;width:14%;height:100%;background:#3f5a3e}.following{display:flex;gap:8px;font-size:9px;color:#8a5360}.following span{background:#e6dedf;border-radius:16px;padding:4px 8px}.screen-home .below{margin-top:13px}.screen-home .app-kicker{font-size:9px}.screen-home .muted{margin-bottom:14px}.screen-home .app-card{margin:12px 0}.screen-home .compact{padding:13px}.tabs{font-size:9px;gap:6px;justify-content:space-between;margin-bottom:17px}.tabs b{padding:6px 9px}.mini-button{border-radius:20px;background:#3f5a3e;color:white;padding:7px 10px;font-size:9px;white-space:nowrap}.mini-button.pale{background:#e9dfe2;color:#995b69}.trip-instruction{font-size:10px;line-height:1.6;margin:10px 0}.real-stop{display:grid;grid-template-columns:18px 1fr 30px;gap:7px;padding:13px;margin:12px 0}.real-stop strong{font-size:12px}.real-stop p{font-size:9px;margin:3px 0}.checkmark{height:16px;background:#526b4b;color:white;border-radius:5px;text-align:center;font-size:11px}.nights{text-align:right}.nights b{font-size:13px;display:block}.nights small{font-size:7px;letter-spacing:1px}.real-stop .progress{grid-column:1/-1;margin:7px 0 1px}.stop-actions{display:flex;justify-content:space-between;gap:5px;grid-column:1/-1;font-size:8px;margin-top:9px;white-space:nowrap}.stop-actions b{color:#a94c5a;font-weight:500}.people-heading{font-size:16px;margin:24px 0 12px}.invite-card{padding:14px}.invite-card p{font-size:11px;line-height:1.6}.invite-fields{display:grid;grid-template-columns:1fr 54px;gap:7px;margin-top:16px;font-size:10px}.fake-field{padding:9px 7px;background:#f7faf8;border:1px solid #d5dcd4;border-radius:14px;margin-top:4px;white-space:nowrap;color:#7e8c7e;font-size:9px}.invite-submit{border-radius:14px;background:#a1ae9d;color:#fff;text-align:center;padding:10px;margin:9px 0;font-size:11px;font-weight:500}.invite-card>p:last-child{margin-top:12px}.screen-money .muted{margin-bottom:12px}.screen-money .app-card{margin:12px 0;padding:14px}.screen-money .big-number{font-size:29px}.screen-money .app-kicker{color:#596f53}.screen-money .money-cols{margin-top:9px}.screen-money .money-cols b{font-size:20px}.screen-money .chart{height:70px}.chart-controls{display:flex;align-items:center;justify-content:space-around;font-size:9px;border:1px solid #dfe6dc;border-radius:12px;padding:5px}.chart-controls b{background:#f7faf8;padding:2px 7px;border-radius:6px}.chart-legend{font-size:8px!important;line-height:1.7!important}.screen-checkin .post{margin:12px 0}.screen-checkin .post h4{font-size:18px;margin-top:3px}.screen-checkin .post-photo{height:235px}.post-age{opacity:.5}.real-reactions{display:flex;gap:5px;margin-top:9px;font-size:12px;justify-content:space-between}.real-reactions span{padding:3px;border:1px solid #ffffff12;border-radius:8px}.reaction-help{font-size:8px!important;opacity:.7}.comment-field{height:28px;border:1px solid #52604f;border-radius:9px}.screen-map{top:42px;bottom:58px;padding:0}.screen-map .map-visual{position:absolute;inset:0;height:auto;margin:0;background-size:130% auto;background-repeat:no-repeat;background-position:center 40%;background-color:#0b1015}.map-search{position:absolute;top:8px;right:16px;border:1px solid #ffffff30;border-radius:50%;width:30px;height:30px;text-align:center;color:white;font-size:23px}.map-options{position:absolute;top:48px;right:13px;border:1px solid #ffffff30;border-radius:18px;padding:6px 10px;font-size:10px;color:#d8e0e5}.map-legend{position:absolute;bottom:90px;left:12px;background:#080f18bb;border:1px solid #ffffff20;border-radius:17px;padding:11px 13px;font-size:9px;color:#c6cbd0}.map-legend>span{font-size:10px;letter-spacing:2px;opacity:.6}.map-legend p{margin:6px 0 0}.map-place{position:absolute;bottom:0;left:10px;right:10px;display:flex;align-items:center;justify-content:space-between;padding:13px!important;margin:10px 0!important}.map-place h4{font-size:17px}.map-place p{font-size:9px}.phone.dark .mini-button{background:#7fa37d;color:#10160f}.phone.dark .post-age{color:#a8b5a8}.sample-label{font-size:10px}
@media(max-width:650px){.sample-label{font-size:8px}.hero-image{transform:scale(1.04)!important}}
.phone-nav svg{width:19px;height:19px;display:block;margin:auto}.phone-nav .nav-check svg{width:24px;height:24px}.phone-nav .nav-check{padding-top:9px}
.scene-together{background-image:url('assets/together.jpg');background-position:center 58%}
@media(max-width:650px){.scene-together{background-position:left center}}
@media(max-width:650px){.scene-together{background-position:left center}.stage.is-together .scene-shade{background:linear-gradient(0deg,#10232015,#102320c9 90%)}}

.scene-together{background-size:125% auto;background-position:right 65%}
@media(max-width:650px){.scene-together{background-size:auto 127%;background-position:left 68%}}
@media(max-width:430px){.scene-together{background-position:33% 68%}}

/* Livhold actions: hunter and sage, soft control corners, no decorative arrows. */
.button{gap:0;min-height:56px;padding:14px 27px;border:1px solid #c9d4ba;border-radius:20px;background:#7fa37d;color:#10160f;font-size:15px;font-weight:600;letter-spacing:.01em;box-shadow:0 10px 30px #07191045,inset 0 1px 0 #ffffff70;transition:transform .24s cubic-bezier(.2,.7,.2,1),background .24s,box-shadow .24s}
.button:hover{background:#a8c2a5;transform:translateY(-2px);box-shadow:0 14px 32px #07191059,inset 0 1px 0 #ffffff80}
.button:active{transform:translateY(0) scale(.985);box-shadow:0 5px 16px #07191045}
.button.small{min-height:46px;padding:10px 18px;font-size:13px;background:#c9d4ba;color:#1f2a24;box-shadow:0 5px 18px #07191033}
.button.small:hover{background:#e0e9d8}
.story-link,footer a{text-decoration:underline;text-decoration-color:#d08795;text-decoration-thickness:1px;text-underline-offset:6px}
.closing{background:#111b18}
.closing-image{opacity:1;background:linear-gradient(180deg,#11182752 0%,#211b3275 48%,#071412e8 100%),url('assets/closing-twilight.jpg') center bottom/cover;transform:scale(1.025);filter:saturate(.86) contrast(1.03)}
.closing-inner{text-shadow:0 2px 18px #0a1614a6}
.closing-inner>p:not(.eyebrow):not(.availability){color:#f0f0e8}
.closing .availability{color:#e6e6dd}
footer{background:#0a16145e}
@media(max-width:650px){.button{min-height:52px;padding:13px 22px;font-size:14px}.button.small{min-height:44px;padding:10px 14px;font-size:12px}.closing-image{background-position:50% bottom}}


/* Mauve memory accent and a complete branded footer. */
em{color:#de9ba7;text-shadow:0 2px 18px #33101842}
footer{display:grid;grid-template-columns:minmax(220px,1fr) auto;grid-template-areas:"brand links" "legal legal";align-items:end;padding:34px 5vw 28px;gap:24px 48px;text-align:left;background:#071311c7;border-top:1px solid #d0879538}
.footer-brand{grid-area:brand;display:flex;flex-direction:column;align-items:flex-start;gap:7px}
.footer-tagline{font-size:11px;line-height:1.5;letter-spacing:2.2px;text-transform:lowercase;color:#f5f2eab8}
.footer-links{grid-area:links;display:flex;align-items:center;justify-content:flex-end;gap:32px;font-size:13px}
.footer-links a{min-height:44px;display:flex;align-items:center;text-decoration-color:#de9ba7}
.footer-legal{grid-area:legal;display:flex;justify-content:space-between;gap:20px;padding-top:20px;border-top:1px solid #f5f2ea1c;font-size:11px;letter-spacing:.5px;color:#f5f2ea8f}
@media(max-width:650px){footer{grid-template-columns:1fr;grid-template-areas:"brand" "links" "legal";align-items:start;justify-items:start;padding:32px 7vw 26px;gap:20px}.footer-links{justify-content:flex-start;flex-wrap:wrap;gap:8px 24px}.footer-legal{width:100%;flex-direction:column;gap:4px;padding-top:16px}.footer-tagline{font-size:10px}.wordmark{font-size:31px}}

/* Inviting, tactile calls to action. */
.button{position:relative;isolation:isolate;overflow:hidden;gap:14px;border-radius:999px;border-color:#eff6e6e6;background:linear-gradient(135deg,#dce8d4 0%,#a7c3a2 44%,#7fa37d 100%);box-shadow:0 13px 34px #07191066,0 3px 0 #52724f,inset 0 1px 0 #fff;color:#112016;cursor:pointer;text-shadow:0 1px 0 #ffffff66}
.button::before{content:"";position:absolute;z-index:-1;inset:-2px;background:linear-gradient(105deg,transparent 24%,#ffffff8c 47%,transparent 70%);transform:translateX(-115%);transition:transform .65s ease}
.button::after{content:"›";display:grid;place-items:center;width:31px;height:31px;margin-right:-8px;border-radius:50%;background:#f7faefb8;border:1px solid #fff9;box-shadow:inset 0 1px 0 #fff,0 4px 12px #29412833;font-family:Arial,sans-serif;font-size:25px;font-weight:400;line-height:1;transition:transform .25s ease,background .25s ease}
.button:hover{background:linear-gradient(135deg,#edf3e7 0%,#bad1b5 44%,#8db089 100%);transform:translateY(-3px);box-shadow:0 18px 40px #07191073,0 3px 0 #52724f,inset 0 1px 0 #fff}
.button:hover::before{transform:translateX(115%)}
.button:hover::after{transform:translateX(3px);background:#fff}
.button:active{transform:translateY(1px) scale(.99);box-shadow:0 7px 18px #07191052,0 1px 0 #52724f,inset 0 1px 0 #fff}
.button.small{gap:10px;border-color:#eff6e6e6;background:linear-gradient(135deg,#edf3e7,#b8ceb2);box-shadow:0 9px 24px #07191045,0 2px 0 #627d5f,inset 0 1px 0 #fff}
.button.small::after{width:25px;height:25px;margin-right:-7px;font-size:20px}
.hero-cta,.closing-inner>.button{font-weight:650;letter-spacing:.015em}

.footer-brand-main{display:flex;align-items:center;gap:11px}
.footer-brand-main img{width:36px;height:36px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 1px #ffffff35,0 7px 20px #0005}
@media(max-width:650px){.button{gap:11px}.button::after{width:29px;height:29px}.button.small::after{width:24px;height:24px}.footer-brand-main img{width:34px;height:34px}}

/* Selected direction 01: Soft lift. */
.button{border:0;background:linear-gradient(155deg,#4b6948 0%,#3f5a3e 52%,#2e4933 100%);color:#f5f2ea;box-shadow:0 18px 34px #02090670,0 7px 14px #182d1e80,inset 0 -3px 7px #172d1e73;text-shadow:0 1px 1px #102015cc}
.button::before{content:none}
.button::after{position:relative;z-index:1;flex:0 0 auto;display:flex;align-items:center;justify-content:center;padding:0 0 3px 1px;line-height:1;text-indent:0;background:#6f8e6b;color:#f8f6ef;border:0;box-shadow:0 4px 10px #162b1d80}
.button:hover{filter:none;background:linear-gradient(155deg,#587653 0%,#486645 52%,#35523a 100%);color:#fff;box-shadow:0 22px 40px #02090682,0 9px 18px #162b1d8f,inset 0 -3px 7px #172d1e66}
.button:hover::after{background:#82a07d;color:#fff}
.button:active{transform:translateY(1px) scale(.99);box-shadow:0 9px 18px #02090670,0 3px 8px #162b1d73,inset 0 -2px 5px #172d1e80}
.button.small{background:linear-gradient(155deg,#4b6948 0%,#3f5a3e 52%,#2e4933 100%);color:#f5f2ea;box-shadow:0 12px 24px #02090666,0 5px 10px #162b1d7d,inset 0 -2px 6px #172d1e73}
.button.small:hover{background:linear-gradient(155deg,#587653 0%,#486645 52%,#35523a 100%);color:#fff;box-shadow:0 16px 30px #02090673,0 7px 14px #162b1d85,inset 0 -2px 6px #172d1e66}

/* Four kinds of home, moving through the hero like remembered places. */
.hero-image{background:#263a35;overflow:hidden;transform:scale(1.04)}
.hero-photo{position:absolute;inset:-2%;opacity:0;background-position:center;background-size:cover;filter:saturate(.82) contrast(1.03);transform:scale(1.045) translate3d(0,0,0);transition:opacity 1.65s ease,transform 7s cubic-bezier(.2,.55,.25,1);will-change:opacity,transform}
.hero-photo.is-active{opacity:1;transform:scale(1.085) translate3d(-.7%,-.35%,0)}
.hero-misty-hill{background-image:url('assets/hero-misty-hill.jpg');background-position:center 52%}
.hero-highlands{background-image:url('assets/hero-highlands.jpg');background-position:center 50%}
.hero-sunset-coast{background-image:url('assets/hero-sunset-coast.jpg');background-position:center 54%}
.hero-city-night{background-image:url('assets/hero-city-night.jpg');background-position:center 56%}
.hero-shade{background:linear-gradient(90deg,#0c201ed9 0%,#102320a8 39%,#10232024 78%),linear-gradient(0deg,#0a1715a3 0%,transparent 56%),linear-gradient(180deg,#07131142 0%,transparent 28%)}
.hero-location{padding:7px 11px;border:1px solid #ffffff24;border-radius:999px;background:#07131142;backdrop-filter:blur(8px);text-shadow:0 1px 6px #0009;transition:opacity .4s ease}
@media(max-width:650px){.hero-image{transform:scale(1.04)!important}.hero-photo{inset:-3%;background-position:center}.hero-photo.is-active{transform:scale(1.07) translate3d(-.4%,-.2%,0)}.hero-misty-hill{background-position:48% center}.hero-highlands{background-position:54% center}.hero-sunset-coast{background-position:62% center}.hero-city-night{background-position:55% center}.hero-shade{background:linear-gradient(90deg,#0b1f1dca 0%,#10232078 72%,#1023203d),linear-gradient(0deg,#0a17159e 0%,transparent 60%),linear-gradient(180deg,#07131152 0%,transparent 30%)}}
@media(prefers-reduced-motion:reduce){.hero-photo{opacity:0;transform:none}.hero-photo.is-active{opacity:1;transform:none}}

@keyframes scroll-nudge{0%,100%{transform:translateY(-5px)}50%{transform:translateY(5px)}}

.chapter-caption{position:absolute;left:7vw;top:5vh;font-size:11px;letter-spacing:1.8px;text-transform:uppercase;color:#f5f2eacc;text-shadow:0 1px 6px #0008;transition:opacity .35s ease}
@media(max-width:650px){.chapter-caption{top:22px;left:7vw;font-size:9px;letter-spacing:1.4px}}
