#landingHome{--ink:#27292c;--paper:#fffaf4;--coral:#f88a58}
#landingHome *{box-sizing:border-box}
html.landing-open{scroll-behavior:smooth;scroll-padding-top:30px}
#landingHome{margin:0;background:var(--coral);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:14px;line-height:1.9}
#landingHome button,#landingHome input{font:inherit}
#landingHome a{color:inherit;text-decoration:none}
#landingHome button{cursor:pointer;color:inherit}
#landingHome button,#landingHome a,#landingHome input,#landingHome summary{ -webkit-tap-highlight-color:transparent}
#landingHome button:focus-visible,#landingHome a:focus-visible,#landingHome input:focus-visible,#landingHome summary:focus-visible{outline:3px solid #4732a3;outline-offset:5px}
#landingHome button{border:0;background:none}
#landingHome img{display:block;max-width:100%}
#landingHome .hero{position:fixed;left:0;top:0;width:43%;height:100svh;padding:48px 3.5%;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;background:radial-gradient(ellipse at 85% 45%,#ffb48980,transparent 65%),#f88a58}
#landingHome .hero:before{content:"";position:absolute;width:900px;height:350px;border:80px solid #ffc09b24;border-radius:50%;transform:rotate(-35deg);left:-270px;top:44%;pointer-events:none}
#landingHome .hero>*{position:relative}
#landingHome .brand{display:block;width:195px}
#landingHome .brand img{width:100%;height:40px;object-fit:contain;object-position:left}
#landingHome .brand span{display:block;letter-spacing:.45em;font-size:9px;margin:7px 0 0 13px}
#landingHome .hero-content{padding:30px 0}
#landingHome h1{font-size:clamp(26px,2.75vw,48px);letter-spacing:-.045em;line-height:1.65;font-weight:750;margin:0 0 21px;white-space:nowrap}
#landingHome .lead{font-size:clamp(11px,1.02vw,15px);line-height:2}
#landingHome .searchbox{display:flex;align-items:center;background:#fffdf9;border-radius:12px;overflow:hidden;margin-top:34px;box-shadow:0 5px 22px #8337140a}
#landingHome .searchbox svg{width:21px;flex:none;margin-left:15px}
#landingHome .searchbox input{width:0;min-width:0;flex:1;padding:18px 10px;background:none;border:0;font-size:11px;outline-offset:-3px}
#landingHome .searchbox button{background:var(--ink);color:white;padding:19px 15px;white-space:nowrap;font-size:12px}
#landingHome .search-note{font-size:10px;letter-spacing:.03em;margin:9px 0 20px}
#landingHome .text-link{padding:0 0 4px;border-bottom:1px solid currentColor;font-size:12px}
#landingHome .text-link span{margin-left:25px}
#landingHome .hero-bottom>p{border-left:1px solid #fff9;padding-left:16px;font-size:12px;letter-spacing:.15em;line-height:2.1}
#landingHome .hero-bottom nav{display:flex;gap:27px;margin-top:30px;font-size:11px}
#landingHome .hero-bottom nav button{padding:0}
#landingHome .edition{position:absolute;right:0;bottom:0;font-size:8px;letter-spacing:.12em;color:#62341e}
#landingHome .menu,#landingHome .mobilemenu{display:none}
#landingHome main{position:relative;margin:24px 24px 24px 43%;background:var(--paper);border-radius:38px;overflow:hidden}
#landingHome .paperhead{display:flex;justify-content:space-between;align-items:center;padding:32px 7% 0;font-size:12px;letter-spacing:.06em}
#landingHome .paperhead button{font-size:10px;border-bottom:1px solid #aaa;padding:0}
#landingHome .visual{padding:12px 0 26px}
#landingHome .collage{height:470px;position:relative;margin:22px 25px 0}
#landingHome .calendar-crop{overflow:hidden;position:relative;aspect-ratio:700/910;background:white;border-radius:12px}
#landingHome .calendar-crop img{width:111.42857%;max-width:none;position:absolute;left:-5.714%;top:-14.505%;}
#landingHome .collage .calendar-crop{position:absolute;width:49%;right:2%;top:28px;transform:rotate(0deg);box-shadow:0 10px 28px #39262416}
#landingHome .ticket-wrap{position:absolute;left:5%;top:16px;width:350px;height:670px;transform:rotate(0deg) scale(.72);transform-origin:top left;filter:drop-shadow(0 12px 12px #493f3920);pointer-events:none}
#landingHome iframe{display:block;width:350px;height:690px;border:0;background:transparent}
#landingHome .caption{font-size:10px;color:#73716f;text-align:center;margin:10px 0 0}
#landingHome .intro{border-top:1px solid #e1dcd6;margin:0 7%;padding:32px 0;color:#65615b;font-size:13px;line-height:2.3}
#landingHome .intro>div{display:flex;gap:24px;font-size:10px;margin-top:20px}
#landingHome .section{padding:65px 7%;scroll-margin-top:12px}
#landingHome .eyebrow{display:block;font-size:10px;letter-spacing:.18em;font-weight:600;margin-bottom:18px}
#landingHome h2{font-size:clamp(25px,2.25vw,35px);font-weight:650;line-height:1.65;letter-spacing:-.035em;margin:0 0 18px}
#landingHome h3{font-size:25px;font-weight:600;line-height:1.7;margin:15px 0}
#landingHome .section>p,#landingHome .nearby>p{font-size:13px;line-height:2;color:#5d5a57}
#landingHome .feature-layout{display:grid;grid-template-columns:46% 1fr;gap:30px;align-items:center;margin-top:38px}
#landingHome .screen{height:340px;overflow:hidden;border-radius:20px;box-shadow:0 10px 25px #25272c10;background:white}
#landingHome .screen img{width:100%}
#landingHome .small-label{font-size:8px;letter-spacing:.12em}
#landingHome .feature-copy ul{list-style:none;padding:0;margin:20px 0;font-size:12px}
#landingHome .feature-copy li{padding:12px 0;border-bottom:1px solid #ddd5cd}
#landingHome .pill{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;border:1px solid #333;border-radius:99px;padding:10px 22px;font-size:12px;line-height:1.6}
#landingHome .nearby{margin-top:55px;padding-top:36px;border-top:1px solid #ddd5cd}
#landingHome .food-crop{height:260px;margin-top:25px;overflow:hidden;border-radius:16px;background:#e9ecde}
#landingHome .food-crop img{width:100%;margin-top:-35%}
#landingHome .plan{background:#e9e3f0;border-radius:36px 36px 0 0}
#landingHome .plan-example{height:660px;margin:35px auto 0;width:350px;filter:drop-shadow(0 12px 18px #564d5d18)}
#landingHome .tags{display:flex;gap:8px;justify-content:center;margin-top:20px}
#landingHome .tags span{font-size:10px;border:1px solid #aea4ba;padding:5px 14px;border-radius:99px}
#landingHome .memory{background:#f5e7e7}
#landingHome .memory-calendar{width:90%;margin:35px auto 28px;box-shadow:0 8px 30px #58423612}
#landingHome .memory-notes{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:25px 0;font-size:12px}
#landingHome .memory-notes b{font-size:13px;font-weight:600}
#landingHome .dark{background:var(--ink);color:white;border-color:var(--ink)}
#landingHome .share{background:#eaf0e7}
#landingHome .steps{display:flex;list-style:none;padding:0;gap:12px;margin:35px 0}
#landingHome .steps li{flex:1;border-top:1px solid #bdc6b9;padding-top:12px;font-size:12px}
#landingHome .steps span{display:block;font-size:10px;letter-spacing:.15em;margin-bottom:12px}
#landingHome .notice{font-size:10px!important;line-height:1.9!important;margin-top:30px}
#landingHome .faq details{border-bottom:1px solid #dcd6d0;padding:19px 0}
#landingHome .faq summary{cursor:pointer;font-size:13px;list-style:none;display:flex;justify-content:space-between;gap:20px}
#landingHome .faq summary:after{content:"+"}
#landingHome .faq details[open] summary:after{content:"−"}
#landingHome .faq details p{font-size:12px;color:#666}
#landingHome .closing{background:#f6bf9e;text-align:center}
#landingHome .closing>p{margin:28px 0 10px;font-size:11px}
#landingHome footer{padding:40px 7%}
#landingHome footer>img{width:155px}
#landingHome footer nav{display:flex;flex-wrap:wrap;gap:12px 20px;margin:28px 0}
#landingHome footer button{padding:0;font-size:10px}
#landingHome footer small{font-size:9px;color:#777;display:flex;justify-content:space-between}
#landingHome footer small span{letter-spacing:.15em}
#landingHome dialog{border:0;border-radius:20px;max-width:440px;width:calc(100% - 40px);padding:40px;background:var(--paper);color:var(--ink)}
#landingHome dialog::backdrop{background:#27292c70}
#landingHome dialog h2{font-size:23px}
#landingHome dialog p{font-size:13px;margin-bottom:25px}
#landingHome .close{position:absolute;right:15px;top:8px;font-size:25px}
#landingHome .sr,#landingHome .skip:not(:focus){position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%)}
@media(min-width:1450px){#landingHome .collage{height:550px}
#landingHome .ticket-wrap{transform:rotate(0deg) scale(.85)}
}
@media(min-width:761px) and (max-width:1100px){#landingHome .hero{padding:35px 2.5%}
#landingHome .brand{width:160px}
#landingHome h1{font-size:27px}
#landingHome .searchbox{flex-wrap:wrap}
#landingHome .searchbox input{padding-right:3px}
#landingHome .searchbox button{width:100%;padding:10px}
#landingHome .edition{display:none}
#landingHome .collage{height:350px;margin-left:15px;margin-right:15px}
#landingHome .ticket-wrap{transform:rotate(0deg) scale(.51)}
#landingHome .paperhead{font-size:10px}
#landingHome .feature-layout{gap:15px}
#landingHome .plan-example{transform:scale(.86);transform-origin:top center;height:575px}
}
@media(max-width:760px){#landingHome{background:var(--paper)}
#landingHome .hero{position:relative;width:100%;height:auto;min-height:590px;padding:26px 24px 32px;overflow:visible}
#landingHome .brand{width:163px}
#landingHome .brand img{height:34px}
#landingHome .brand span{font-size:7px}
#landingHome .menu{display:block;position:absolute;top:29px;right:22px;font-size:22px;padding:0;line-height:1}
#landingHome .mobilemenu:not([hidden]){display:flex;position:absolute;right:20px;top:62px;z-index:5;flex-direction:column;gap:15px;padding:20px;background:var(--paper);border-radius:14px;box-shadow:0 8px 20px #3332}
#landingHome .hero-content{padding:46px 0 20px}
#landingHome h1{font-size:clamp(24px,6.7vw,42px);line-height:1.65;margin-bottom:18px}
#landingHome .lead{font-size:11px;line-height:2}
#landingHome .searchbox{margin-top:25px}
#landingHome .searchbox input{font-size:10px;padding:17px 8px}
#landingHome .searchbox button{padding:18px 11px;font-size:11px}
#landingHome .searchbox svg{width:17px;margin-left:11px}
#landingHome .search-note{font-size:9px;letter-spacing:0}
#landingHome .hero-bottom{margin-top:15px}
#landingHome .hero-bottom>p{margin:0 0 0 auto;width:max-content;font-size:10px}
#landingHome .hero-bottom nav,#landingHome .edition{display:none}
#landingHome main{margin:0;border-radius:28px 28px 0 0;position:relative;margin-top:-24px}
#landingHome .paperhead{padding:25px 24px 0;font-size:11px}
#landingHome .paperhead button{font-size:9px}
#landingHome .collage{height:380px;margin:22px 20px 0}
#landingHome .ticket-wrap{left:5%;top:15px;transform:rotate(0deg) scale(.53)}
#landingHome .collage .calendar-crop{width:53%;right:1%;top:45px}
#landingHome .visual{padding-bottom:25px}
#landingHome .intro{margin:0 24px;padding:27px 0}
#landingHome .intro>div{gap:20px}
#landingHome .section{padding:48px 24px}
#landingHome h2{font-size:26px}
#landingHome .feature-layout{gap:22px}
#landingHome .screen{height:300px}
#landingHome .small-label{font-size:7px}
#landingHome .feature-copy ul{font-size:10px}
#landingHome .feature-copy .pill{padding:9px 14px;gap:10px;font-size:10px}
#landingHome .plan-example{transform:scale(.84);transform-origin:top left;height:570px;width:350px;margin-left:calc((100% - 294px)/2)}
#landingHome .memory-calendar{width:100%}
#landingHome .memory-notes{font-size:11px}
#landingHome .steps li{font-size:11px}
#landingHome .tags{gap:6px}
#landingHome .tags span{padding:5px 9px}
#landingHome .food-crop{height:230px}
#landingHome footer{padding:36px 24px}
}
@media(max-width:360px){#landingHome .hero{padding-left:20px;padding-right:20px}
#landingHome .lead{font-size:10px}
#landingHome .searchbox input{font-size:9px}
#landingHome .searchbox button{font-size:10px;padding:18px 9px}
#landingHome .collage{height:320px}
#landingHome .ticket-wrap{transform:rotate(0deg) scale(.44)}
#landingHome .section{padding-left:20px;padding-right:20px}
#landingHome .plan-example{transform:scale(.76);height:520px;margin-left:calc((100% - 266px)/2)}
#landingHome .intro>div{gap:14px;font-size:9px}
#landingHome .feature-layout{gap:16px}
#landingHome .screen{height:255px}
}
@media(prefers-reduced-motion:reduce){html.landing-open{scroll-behavior:auto}
}
#landingHome .brand img,#landingHome footer>img{filter:brightness(0) saturate(100%);opacity:.9}
@media(max-width:760px){#landingHome .hero{overflow:hidden}
}
#landingHome .brand img,#landingHome footer>img{filter:none;opacity:1;height:auto}
#landingHome .brand{width:210px}
#landingHome .brand span{display:none}
#landingHome .hero-bottom>p{display:none}
#landingHome .auth-bar{display:flex;align-items:center;gap:14px}
#landingHome .paperhead .auth-bar button{font-size:10px;border:0;padding:8px 0;white-space:nowrap}
#landingHome .paperhead .auth-bar .signup{border:1px solid var(--ink);border-radius:99px;padding:7px 12px}
#landingHome .character-break{display:flex;justify-content:center;margin:0 0 26px;position:relative}
#landingHome .character-break img{width:120px;height:120px;object-fit:contain;transform:rotate(-8deg)}
@media(min-width:761px){#landingHome main{width:min(500px,calc(50% - 36px));margin:24px 24px 24px calc(50% + 12px)}
#landingHome .hero{width:50%;padding:48px max(32px,calc((100vw - 1100px)/2))}
#landingHome .hero-content{min-width:0}
#landingHome h1{font-size:clamp(27px,2.7vw,40px)}
#landingHome .hero .lead{font-size:12px}
#landingHome .hero-bottom .edition{display:none}
#landingHome .paperhead{padding:26px 6% 0;font-size:10px}
#landingHome .section{padding:54px 7%}
#landingHome h2{font-size:28px}
#landingHome .collage{height:445px;margin:40px 25px 0}
#landingHome .ticket-wrap{left:2%;top:45px;transform:rotate(-8deg) scale(.64);z-index:2}
#landingHome .collage .calendar-crop{width:58%;right:1%;top:5px;transform:rotate(6deg);z-index:1}
#landingHome .visual{padding-bottom:0}
#landingHome .feature-layout{gap:22px}
#landingHome .plan-example{transform:scale(.9);transform-origin:top center;height:610px}
#landingHome .character-break{margin-top:8px}
}
@media(min-width:761px) and (max-width:1050px){#landingHome .hero{padding-left:25px;padding-right:25px}
#landingHome .brand{width:180px}
#landingHome h1{font-size:27px}
#landingHome .hero .lead{font-size:10px}
#landingHome .paperhead{display:block}
#landingHome .auth-bar{margin-top:12px}
#landingHome .collage{height:360px;margin-left:18px;margin-right:18px}
#landingHome .ticket-wrap{transform:rotate(-8deg) scale(.5);top:40px}
#landingHome .plan-example{transform:scale(.76);transform-origin:top left;height:520px;margin-left:calc((100% - 266px)/2)}
#landingHome .section{padding-left:24px;padding-right:24px}
#landingHome h2{font-size:24px}
}
@media(max-width:760px){#landingHome .hero{min-height:480px;padding-top:98px}
#landingHome .brand{position:fixed;left:20px;top:23px;width:143px;z-index:101}
#landingHome .menu{display:none}
#landingHome .auth-bar{position:fixed;z-index:100;top:0;left:0;width:100%;height:78px;padding:0 18px 0 175px;justify-content:flex-end;gap:12px;background:#f88a58f5;border-bottom:1px solid #c4663220;backdrop-filter:blur(12px)}
#landingHome .paperhead .auth-bar button{font-size:10px}
#landingHome .paperhead .auth-bar .signup{padding:8px 11px;background:var(--ink);color:white}
#landingHome .hero-content{padding:22px 0 36px}
#landingHome .hero-bottom{display:none}
#landingHome .paperhead{padding-top:24px}
#landingHome .collage{height:380px;margin:30px 24px 0}
#landingHome .ticket-wrap{top:45px;left:1%;transform:rotate(-8deg) scale(.53);z-index:2}
#landingHome .collage .calendar-crop{width:60%;right:0;top:10px;transform:rotate(6deg);z-index:1}
#landingHome .visual{padding-bottom:0}
#landingHome .character-break{margin:4px 0 24px}
#landingHome .character-break img{width:110px;height:110px}
html.landing-open{scroll-padding-top:92px}
#landingHome footer>img{width:170px}
}
@media(max-width:360px){#landingHome .brand{left:15px;top:26px;width:116px}
#landingHome .auth-bar{padding-left:140px;padding-right:14px;gap:8px}
#landingHome .paperhead .auth-bar button{font-size:9px}
#landingHome .paperhead .auth-bar .signup{padding:8px 9px}
#landingHome .collage{height:330px;margin-left:20px;margin-right:20px}
#landingHome .ticket-wrap{transform:rotate(-8deg) scale(.44)}
#landingHome .hero{min-height:460px}
}
#landingHome .brand img{filter:brightness(0);opacity:.88}
#landingHome .hero{background:#f88a58}
#landingHome .hero:before{border:0;border-radius:0;inset:auto;left:-15%;top:38%;width:135%;height:280px;background:#fff;mask:url('assets/brand-full.svg') center/contain no-repeat;-webkit-mask:url('assets/brand-full.svg') center/contain no-repeat;opacity:.09;transform:rotate(-18deg)}
#landingHome .hero-content{position:relative}
#landingHome .search-character{position:absolute;width:90px;height:90px;object-fit:contain;right:0;top:-54px;transform:rotate(5deg);pointer-events:none}
@media(min-width:761px){#landingHome .hero{padding:48px 32px;align-items:center}
#landingHome .hero>.brand,#landingHome .hero>.hero-content,#landingHome .hero>.hero-bottom{width:100%;max-width:520px}
#landingHome .hero>.brand{align-self:center}
#landingHome .hero>.brand img{width:210px}
#landingHome .hero-content{padding-top:30px}
#landingHome .search-character{top:-62px;right:5px}
#landingHome .hero:before{top:40%}
#landingHome .visual{padding-bottom:25px}
}
@media(max-width:760px){#landingHome .search-character{width:66px;height:66px;top:-13px;right:0}
#landingHome .hero-content{padding-top:34px}
#landingHome .hero:before{top:160px;height:230px}
#landingHome .visual{padding-bottom:22px}
}
@media(max-width:360px){#landingHome .search-character{width:54px;height:54px;top:-8px}
}
#landingHome .ticket-slider{display:flex;gap:18px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;position:relative;margin:30px -12px 0;padding:10px 12px 12px;overscroll-behavior-x:contain;touch-action:pan-x pan-y}
#landingHome .ticket-slider::-webkit-scrollbar{display:none}
#landingHome .ticket-slide{flex:0 0 min(75%,310px);scroll-snap-align:start;scroll-margin-left:12px;min-width:0}
#landingHome .ticket-fit{width:100%;height:540px;position:relative}
#landingHome .ticket-fit iframe{width:350px;transform-origin:top left;pointer-events:none}
#landingHome .slider-controls{display:flex;align-items:center;justify-content:center;gap:24px;margin:6px 0 14px;font-size:11px}
#landingHome .slider-controls button{width:36px;height:36px;border:1px solid #a69cb2;border-radius:50%;font-size:17px;line-height:1}
#landingHome .slider-controls button:disabled{opacity:.3;cursor:default}
#landingHome .plan .tags{margin-top:0}
#landingHome .ticket-slide{filter:drop-shadow(0 5px 6px #564d5d12)}
#landingHome .search-footer{display:flex;align-items:center;justify-content:space-between;gap:20px}
#landingHome .search-footer .search-character{position:static;width:76px;height:65px;transform:none;flex:none}
#landingHome .search-footer :is(.text-link,.landingarealink){margin-top:0}
@media(max-width:760px){#landingHome .search-footer .search-character{width:65px;height:54px}
}
#landingHome .brand img{filter:brightness(0) invert(1);opacity:1}
#landingHome .hero:before{width:185%;height:440px;left:-42%;top:29%}
#landingHome footer>img{margin-inline:auto}
@media(max-width:760px){#landingHome .auth-bar{height:60px}
#landingHome .brand{top:15px;width:133px}
#landingHome .hero{padding-top:80px}
#landingHome .hero:before{width:190%;height:330px;left:-44%;top:135px}
html.landing-open{scroll-padding-top:74px}
#landingHome .search-footer .search-character{width:76px;height:66px}
}
@media(max-width:360px){#landingHome .brand{top:17px;width:116px}
}
#landingHome .hero:before{mask:none;-webkit-mask:none;left:-30%;top:45%;width:115%;height:32%;border:1px solid #fff3;border-radius:50%;background:transparent;opacity:1;transform:rotate(-28deg)}
#landingHome .hero:after{content:"";position:absolute;width:240px;height:240px;right:-100px;top:15%;border-radius:50%;background:linear-gradient(135deg,#ffd1ad48,#ffd1ad08);pointer-events:none}
#landingHome .hero>.hero-content,#landingHome .hero>.hero-bottom{z-index:1}
#landingHome .hero>.brand{z-index:101}
@media(max-width:760px){#landingHome .hero:before{left:-35%;top:45%;width:140%;height:36%}
#landingHome .hero:after{width:180px;height:180px;right:-55px;top:90px}
#landingHome .hero{overflow-x:clip}
}
#landingHome .find,#landingHome .faq,#landingHome footer{background:#fffaf4}
#landingHome .plan{background:#f8dfca}
#landingHome .memory{background:#fff2e6}
#landingHome .share{background:#f4d2b7}
#landingHome .closing{background:#f1b58e}
#landingHome .food-crop{background:#f5e5d5}
#landingHome .tags span{border-color:#c9a88f}
#landingHome .slider-controls button{border-color:#bf987b}
#landingHome .steps li{border-color:#cead94}
#landingHome ruby{ruby-position:over}
#landingHome rt{font-size:.38em;letter-spacing:.06em;font-weight:500}
#landingHome .intro rt{font-size:.55em}
#landingHome .memory h2{font-size:clamp(21px,1.9vw,28px)}
@media(min-width:761px){#landingHome .collage{height:480px}
}
@media(min-width:761px) and (max-width:1050px){#landingHome .collage{height:390px}
#landingHome .memory h2{font-size:21px}
}
@media(max-width:760px){#landingHome .memory h2{font-size:clamp(20px,5.6vw,28px)}
}
#landingHome{--ink:#171717;--paper:#fffcf8;--coral:#ef8d59}
#landingHome{background:#fbf2e9;color:var(--ink);font-weight:500}
#landingHome .hero-kicker{display:block;font:700 10px/1.5 Arial,sans-serif;letter-spacing:.13em;margin-bottom:20px}
#landingHome .hero:before{border-color:#e7b7985c}
#landingHome .hero:after{background:#f1c9a835}
#landingHome .hero-content{z-index:1}
#landingHome h1{font-weight:800;letter-spacing:-.035em}
#landingHome h2,#landingHome h3{font-weight:750;letter-spacing:-.025em}
#landingHome .section{padding:64px 28px;border-radius:0}
#landingHome .section>p{color:#333;line-height:2.1}
#landingHome .eyebrow{font-family:Arial,sans-serif;font-weight:700;font-size:11px;letter-spacing:.05em;display:flex;align-items:center;gap:8px}
#landingHome .eyebrow:before{content:"";width:8px;height:8px;border:1px solid #171717;background:#f7ad78;border-radius:50%;flex:none}
#landingHome .section>.eyebrow:has(b){display:flex;flex-direction:column;gap:7px;margin-bottom:25px;align-items:flex-start}
#landingHome .section>.eyebrow:has(b):before{display:none}
#landingHome .eyebrow b{font-size:19px;letter-spacing:-.025em;padding:0 0 8px;border-bottom:2px solid #171717;min-width:104px}
#landingHome .eyebrow span{font-size:9px;letter-spacing:.12em;color:#716051}
#landingHome .find{background:#fffdf9}
#landingHome .plan{background:#f7e5d5}
#landingHome .memory{background:#fffaf4}
#landingHome .share{background:#f7e5d5}
#landingHome .faq{background:#fffdf9}
#landingHome .closing{background:#efc29f}
#landingHome .paperhead>span{font-size:12px;font-weight:700;letter-spacing:.09em;margin:auto;border:1px solid #171717;border-radius:20px;padding:3px 15px}
#landingHome .paperhead{justify-content:center;padding-top:35px}
#landingHome .intro{padding:38px 0 44px;color:#222;border-top:1px solid #1b1b1b;margin:0 28px}
#landingHome .intro h2{font-size:25px;margin:15px 0}
#landingHome .intro p{font-size:13px;line-height:2.5}
#landingHome .intro>div{display:flex;flex-direction:column;gap:0;margin-top:28px;border-top:1px solid #242424}
#landingHome .intro>div a{display:flex;align-items:center;gap:14px;padding:15px 0;border-bottom:1px solid #242424;font-size:12px;font-weight:650}
#landingHome .intro>div a b{font-size:17px;font-family:Arial,sans-serif}
#landingHome .intro>div a span{margin-left:auto}
#landingHome .searchbox{border:1.5px solid #171717;border-radius:0;box-shadow:none;background:#fffdf9}
#landingHome .searchbox button{font-weight:700;background:#171717}
#landingHome .searchbox:focus-within{outline:2px solid #ed985e;outline-offset:4px}
#landingHome .text-link{font-weight:650}
#landingHome .pill{border-radius:0;border:1px solid #171717;padding:14px 20px;font-weight:700;justify-content:space-between;min-height:48px;transition:background .18s,color .18s}
#landingHome .dark{background:#171717;color:#fff}
#landingHome .pill:hover,#landingHome .rail-cta:hover{background:#efaa78;color:#171717}
#landingHome .feature-layout{gap:20px;grid-template-columns:46% 1fr}
#landingHome .feature-copy .pill{padding:12px 10px;gap:8px;font-size:11px;width:100%}
#landingHome .screen{border-radius:10px;border:1px solid #ddd2c7;box-shadow:none}
#landingHome .feature-copy li{border-color:#d1c0b0}
#landingHome .small-label{font-size:9px;font-weight:700}
#landingHome .nearby{border-color:#cdb9a8}
#landingHome .food-crop{border-radius:0}
#landingHome .calendar-crop{border-radius:7px}
#landingHome .memory-calendar{box-shadow:0 5px 18px #3a2b1c0c;border:1px solid #e9d8c8}
#landingHome .memory-notes{gap:14px}
#landingHome .memory-notes>p{padding:16px 0;border-top:1px solid #171717;margin:0}
#landingHome .memory .pill{width:100%;justify-content:center}
#landingHome .steps span{font-size:27px;font-weight:800;letter-spacing:-.03em}
#landingHome .steps li{border-top:2px solid #171717;font-weight:650}
#landingHome .notice{color:#6c5a4a}
#landingHome .tags span{border-radius:0;border:0;border-bottom:1px solid #171717;padding:6px 8px;font-weight:600}
#landingHome .slider-controls{gap:22px;margin-top:16px;margin-bottom:22px;font-weight:700}
#landingHome .slider-controls button{border-color:#171717;background:#fffaf4;width:40px;height:40px}
#landingHome .faq details{border-color:#171717;padding:22px 0}
#landingHome .faq summary{font-weight:650;align-items:center}
#landingHome .faq summary:before{content:"Q";font:bold 20px/1 Arial,sans-serif;margin-right:0}
#landingHome .faq summary:after{margin-left:auto;display:grid;place-items:center;border:1px solid #171717;border-radius:50%;width:23px;height:23px;flex:none}
#landingHome .faq details p{padding-left:32px;color:#45403c}
#landingHome .closing .eyebrow{justify-content:center}
#landingHome .closing .pill{min-width:240px}
#landingHome .closing h2{font-size:30px}
#landingHome footer{padding:45px 28px;background:#fffaf4;border-top:1px solid #dfcbbb}
#landingHome footer nav{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:28px 0}
#landingHome footer nav button{text-align:left;border-bottom:1px solid #dccaba;padding:12px 0}
#landingHome footer small{justify-content:center}
#landingHome .service-rail{display:none}
#landingHome .auth-bar .signup{border-radius:0!important}
#landingHome .collage .calendar-crop{box-shadow:0 5px 18px #30201010}
#landingHome .ticket-wrap{filter:drop-shadow(0 8px 8px #30201015)}
@media(min-width:1201px){#landingHome main{width:500px;max-width:500px;margin:110px auto 24px;border-radius:38px 38px 0 0;box-shadow:0 0 28px #38261609;overflow:hidden}
#landingHome .hero{width:calc((100vw - 500px)/2);height:100svh;padding:115px 22px 30px;align-items:center;background:transparent;justify-content:center;overflow:hidden}
#landingHome .hero>.hero-content{width:100%;max-width:300px;padding:0}
#landingHome .hero>.brand{position:fixed;left:24px;top:17px;width:180px;max-width:none;z-index:102}
#landingHome .hero>.brand img{width:180px}
#landingHome .hero h1{font-size:clamp(23px,1.9vw,30px);line-height:1.65}
#landingHome .hero .lead{font-size:11px;line-height:2.1}
#landingHome .hero .searchbox{flex-wrap:wrap;margin-top:28px}
#landingHome .hero .searchbox input{padding:17px 8px}
#landingHome .hero .searchbox button{width:100%;padding:12px}
#landingHome .hero .searchbox svg{margin-left:12px}
#landingHome .hero .search-note{font-size:9px}
#landingHome .hero .search-footer .search-character{display:none}
#landingHome .hero .search-footer{margin-top:24px}
#landingHome .hero-bottom{position:absolute;bottom:28px;left:22px;right:22px;max-width:300px!important;width:auto!important;margin:auto}
#landingHome .hero-bottom nav{justify-content:center;font-size:11px}
#landingHome .hero:before{top:45%;left:-50%;width:145%;height:30%}
#landingHome .hero:after{top:20%;right:-125px}
#landingHome .auth-bar{position:fixed;left:0;top:0;width:100%;height:70px;padding:0 28px;display:flex;align-items:center;justify-content:flex-end;gap:24px;background:#ef8d59;z-index:100;border-bottom:1px solid #b56c3d30}
#landingHome .paperhead .auth-bar button{font-size:12px;border:0;font-weight:700}
#landingHome .paperhead .auth-bar .signup{background:#171717;color:white;padding:10px 22px}
#landingHome .service-rail{display:flex;position:fixed;top:50%;right:0;transform:translateY(-42%);width:calc((100vw - 500px)/2);padding:0 30px;align-items:center;flex-direction:column;gap:18px}
#landingHome .rail-bubble{position:relative;border:2px solid #171717;padding:9px 14px;background:#fffcf8;font:800 14px Arial,sans-serif;box-shadow:3px 3px 0 #eac5a9}
#landingHome .rail-bubble:after{content:"";position:absolute;width:10px;height:10px;background:#fffcf8;border-right:2px solid;border-bottom:2px solid;left:calc(50% - 6px);bottom:-7px;transform:rotate(45deg)}
#landingHome .service-rail>img{width:120px;height:120px;object-fit:contain}
#landingHome .service-rail>p{text-align:center;font-size:13px;font-weight:700;line-height:1.9;margin:0}
#landingHome .rail-cta{background:#171717;color:#fff;padding:14px 18px;display:flex;justify-content:space-between;gap:25px;width:100%;max-width:250px;font-size:12px;font-weight:700}
#landingHome .service-rail nav{width:100%;max-width:250px}
#landingHome .service-rail nav a{display:flex;justify-content:space-between;font-size:11px;font-weight:650;border-bottom:1px solid #d1b9a5;padding:11px 0}
#landingHome .collage{margin-top:35px;height:480px}
#landingHome .section h2{font-size:28px}
#landingHome .memory h2{font-size:25px}

}
@media(min-width:761px) and (max-width:1200px){#landingHome main{width:calc(50% - 24px);max-width:500px;margin:95px 12px 24px calc(50% + 12px);border-radius:28px 28px 0 0}
#landingHome .hero{background:#fbf2e9}
#landingHome .hero>.brand{position:fixed;left:24px;top:17px;width:170px;z-index:102}
#landingHome .hero>.brand img{width:170px}
#landingHome .auth-bar{position:fixed;top:0;left:0;width:100%;height:70px;display:flex;align-items:center;justify-content:flex-end;padding:0 24px;gap:20px;background:#ef8d59;z-index:100}
#landingHome .paperhead .auth-bar .signup{background:#171717;color:#fff;padding:10px 15px}
#landingHome .section{padding:50px 24px}
#landingHome .memory h2{font-size:21px}
#landingHome .paperhead{padding-top:24px}
#landingHome .hero .searchbox{flex-wrap:wrap}
#landingHome .hero .searchbox button{width:100%;padding:12px}
}
@media(max-width:760px){#landingHome{background:#fffaf4}
#landingHome .hero{background:#fbf2e9;padding-bottom:48px;min-height:520px}
#landingHome .hero-content{padding-top:35px;padding-bottom:15px}
#landingHome .hero-kicker{font-size:9px;margin-bottom:14px}
#landingHome .hero h1{font-size:clamp(25px,6.7vw,40px);font-weight:800;line-height:1.65}
#landingHome .hero .lead{font-size:11px}
#landingHome .hero .searchbox{margin-top:28px}
#landingHome .hero .searchbox button{font-size:10px}
#landingHome .hero .search-footer{margin-top:20px}
#landingHome .hero .search-character{width:66px;height:58px}
#landingHome .hero:before{border-color:#e2b49170}
#landingHome .hero:after{background:#f3ddc96b}
#landingHome .auth-bar{background:#ef8d59;backdrop-filter:none;border-bottom:1px solid #be794d30}
#landingHome .brand img{filter:brightness(0) invert(1)}
#landingHome main{margin-top:-18px;border-radius:28px 28px 0 0;max-width:500px;margin-left:auto;margin-right:auto}
#landingHome .paperhead{padding-top:28px}
#landingHome .paperhead>span{font-size:10px}
#landingHome .section{padding:55px 24px}
#landingHome .section h2{font-size:27px}
#landingHome .section.memory h2{font-size:clamp(20px,5.6vw,28px)}
#landingHome .intro>div{gap:0}
#landingHome .intro h2{font-size:24px}
#landingHome .feature-copy .pill{font-size:10px;padding:12px 8px}
#landingHome .feature-layout{gap:18px}
#landingHome .eyebrow b{font-size:18px}
#landingHome .collage{margin-top:32px}
#landingHome .faq summary{font-size:12px;gap:12px}
#landingHome .searchbox{border-width:1px}
#landingHome .closing h2{font-size:29px}

}
@media(prefers-reduced-motion:reduce){#landingHome *{scroll-behavior:auto!important;transition:none!important}
}
@media(min-width:761px){#landingHome .hero>.hero-content{max-width:300px;width:100%}
#landingHome .hero h1{font-size:26px}
}
#landingHome>.brand{position:fixed;z-index:102;left:24px;top:17px;width:180px}
#landingHome>.brand img{width:100%}
@media(max-width:760px){#landingHome>.brand{left:20px;top:15px;width:133px}
}
@media(max-width:360px){#landingHome>.brand{left:15px;top:17px;width:116px}
}
#landingHome .searchbox{border-radius:16px}
#landingHome .searchbox button{border-radius:11px;margin:4px;text-align:center;padding:14px 12px}
#landingHome .pill,#landingHome .feature-copy .pill,#landingHome .memory .pill,#landingHome .rail-cta{border-radius:999px;justify-content:center;text-align:center;gap:0}
#landingHome .auth-bar .signup{border-radius:999px!important}
#landingHome .auth-bar button{text-align:center}
#landingHome .search-footer :is(.text-link,.landingarealink),#landingHome .closing .text-link{border:1px solid currentColor;border-radius:999px;padding:9px 18px;text-align:center;display:inline-flex;align-items:center;justify-content:center}
#landingHome .rail-bubble{border-radius:10px}
#landingHome .close{border-radius:50%}
@media(min-width:761px){#landingHome .hero .searchbox button{width:calc(100% - 8px);padding:12px;border-radius:11px}
}
@media(max-width:760px){#landingHome .hero .searchbox button{padding:14px 10px}
#landingHome .search-footer :is(.text-link,.landingarealink){font-size:11px;padding:8px 15px}
}
#landingHome>.brand{top:19px}
#landingHome>.brand img{height:32px;object-fit:contain;object-position:left}
#landingHome .section.find,#landingHome .section.plan,#landingHome .section.memory{padding:48px 14px 24px;background:#fbf0e6}
#landingHome .section.find:before,#landingHome .section.plan:before,#landingHome .section.memory:before{content:"POINT";display:block;text-align:center;font:900 76px/.85 Arial,sans-serif;letter-spacing:-.055em;color:#ecdccc;margin:0 0 -3px;pointer-events:none}
#landingHome .point-card{position:relative;background:#fffdf9;padding:28px 24px 36px}
#landingHome .point-label{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:24px;font:800 21px/1.2 Arial,sans-serif;letter-spacing:-.025em}
#landingHome .point-label:before,#landingHome .point-label:after{content:"";height:1px;background:#171717;flex:1}
#landingHome .point-label span{white-space:nowrap}
#landingHome .point-card>h2{text-align:center;font-size:25px;line-height:1.65;margin-bottom:20px}
#landingHome .point-card>p{text-align:center;font-size:12px;line-height:2;color:#333}
#landingHome .section.memory .point-card>h2{font-size:23px}
#landingHome .point-card .nearby{margin-top:38px}
#landingHome .point-card .feature-layout{margin-top:32px}
#landingHome .point-card .feature-copy{text-align:left}
#landingHome .point-card .feature-copy .small-label{font-size:8px}
#landingHome .point-card .ticket-slider{margin-top:25px}
#landingHome .point-card .memory-calendar{width:100%}
@media(max-width:760px){#landingHome>.brand{top:18px}
#landingHome>.brand img{height:24px}
#landingHome .section.find,#landingHome .section.plan,#landingHome .section.memory{padding:42px 12px 18px}
#landingHome .point-card{padding:26px 20px 32px}
#landingHome .point-label{font-size:20px;gap:8px}
#landingHome .point-card>h2,#landingHome .section .point-card>h2{font-size:25px}
#landingHome .section.memory .point-card>h2{font-size:clamp(18px,5.2vw,23px)}
#landingHome .point-card>p{font-size:12px}
#landingHome .point-card .feature-layout{gap:14px}
#landingHome .section.find:before,#landingHome .section.plan:before,#landingHome .section.memory:before{font-size:70px}
}
@media(max-width:360px){#landingHome .point-card{padding-inline:16px}
#landingHome .point-card>h2,#landingHome .section .point-card>h2{font-size:23px}
#landingHome .point-card .feature-layout{grid-template-columns:1fr;gap:20px}
#landingHome .point-card .screen{width:75%;height:320px;margin:auto}
#landingHome .point-card .feature-copy{width:100%}
#landingHome .point-card .tags{gap:5px}
#landingHome .point-card .tags span{font-size:9px;padding-inline:4px}
}
#landingHome .section.find:before,#landingHome .section.plan:before,#landingHome .section.memory:before{display:none}
#landingHome .point-card{border-radius:24px}
#landingHome .section.find,#landingHome .section.plan,#landingHome .section.memory{padding-top:28px}
#landingHome .story-character{display:none}
@media(max-width:760px){#landingHome .search-footer .search-character{display:none}
#landingHome .hero{padding-bottom:80px}
#landingHome .story-character{display:block;position:relative;z-index:2;width:80px;height:80px;margin:-48px auto -32px;pointer-events:none}
#landingHome .story-character img{width:100%;height:100%;object-fit:contain}
#landingHome .paperhead{padding-top:58px}
#landingHome .point-card{border-radius:22px}
#landingHome .section.find,#landingHome .section.plan,#landingHome .section.memory{padding-top:24px}
}
#landingHome .section.find,#landingHome .section.plan,#landingHome .section.memory{background:#fd780f}
#landingHome .hero h1{font-size:22px;line-height:1.75;letter-spacing:-.035em}
#landingHome .paperhead{padding-top:20px}
@media(max-width:760px){#landingHome .hero h1{font-size:clamp(19px,5.8vw,29px)}
#landingHome .hero{min-height:0;padding-bottom:84px}
#landingHome .paperhead{padding-top:40px}
}
#landingHome .auth-bar{background:#fd780f}
#landingHome .hero .visual{width:100%;padding:0;margin:22px 0 0}
#landingHome .hero .collage{width:100%;margin:0;position:relative}
#landingHome .hero .ticket-wrap{overflow:hidden}
#landingHome .hero .searchbox{margin-top:20px}
@media(min-width:761px){#landingHome .hero{justify-content:flex-start;overflow-y:auto;padding-top:110px;padding-bottom:40px}
#landingHome .hero>.hero-content{margin-block:auto}
#landingHome .hero-bottom{display:none}
#landingHome .hero .search-footer{margin-top:14px}
#landingHome .hero .search-note{margin-bottom:14px}
#landingHome .paperhead{padding-top:28px}
}
@media(max-width:760px){#landingHome .hero-content{padding-top:24px}
#landingHome .hero .visual{margin-top:22px}
#landingHome .hero .searchbox{margin-top:18px}
#landingHome .hero{padding-bottom:84px}
#landingHome .hero .search-footer{margin-top:14px}
}
#landingHome .hero{background:#fff}
#landingHome .hero:before,#landingHome .hero:after{display:none}
#landingHome .hero h1{text-align:center;position:relative;top:-10px}
#landingHome .hero .search-footer{justify-content:center}
#landingHome .hero .search-footer .search-character{display:none}
#landingHome .paperhead{padding:0}
#landingHome .intro{margin:0;padding:26px 28px 30px;border-top:0;background:#fff0e2}
#landingHome .intro>div{margin-top:22px}
#landingHome .section.find,#landingHome .section.plan,#landingHome .section.memory{padding-top:20px;padding-bottom:12px}
#landingHome .hero>.hero-decor{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
#landingHome .hero-decor i{position:absolute;display:block;animation:hero-drift 9s ease-in-out infinite alternate}
#landingHome .hero-decor .orbit{width:110px;height:110px;border:1px solid #f7be9299;border-radius:50%;left:-56px;top:22%;animation-duration:11s}
#landingHome .hero-decor .disc{width:42px;height:42px;border-radius:50%;background:#fff0e2;right:3%;top:11%;animation-delay:-4s}
#landingHome .hero-decor .spark{width:22px;height:22px;background:#fd780f55;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);left:7%;top:53%;animation-delay:-2s}
#landingHome .hero-decor .ring{width:68px;height:68px;border:12px solid #fff2e8;border-radius:50%;right:-26px;top:67%;animation-duration:12s;animation-delay:-5s}
#landingHome .hero-decor .dash{width:28px;height:7px;background:#f9c59d;border-radius:10px;left:12%;bottom:9%;rotate:-30deg;animation-delay:-6s}
#landingHome .hero-decor .dot{width:9px;height:9px;border-radius:50%;background:#f9c59d;right:16%;top:46%;animation-delay:-3s}
@keyframes hero-drift{from{transform:translateY(-6px) rotate(-8deg)}to{transform:translateY(9px) rotate(10deg)}}
@media(max-width:760px){#landingHome main{margin-top:0;border-radius:0}
#landingHome .story-character{width:100px;height:100px;margin:-50px auto -50px}
#landingHome .paperhead{padding:0}
#landingHome .intro{padding:58px 24px 28px}

}
@media(max-width:360px){#landingHome .point-card{padding-inline:16px}
}
@media(prefers-reduced-motion:reduce){#landingHome .hero-decor i{animation:none}
}
#landingHome main{background:#fff0e2}
#landingHome .section.find{border-radius:32px 32px 0 0;padding-bottom:6px}
#landingHome .section.plan{padding-top:6px;padding-bottom:6px}
#landingHome .section.memory{padding-top:6px}
@media(max-width:760px){#landingHome .section.find{border-radius:30px 30px 0 0}
}
#landingHome .hero h1{color:#fd780f}
#landingHome .hero h1{font-size:19px;letter-spacing:.02em}
#landingHome .hero .search-footer{margin-top:10px}
#landingHome main{border-top-left-radius:30px;border-top-right-radius:30px}
#landingHome .intro{border-radius:30px 30px 0 0}
#landingHome .find .screen,#landingHome .find .food-crop{height:auto;aspect-ratio:auto}
#landingHome .find .screen img,#landingHome .find .food-crop img{width:100%;height:auto;max-width:100%;margin:0;object-fit:contain}
@media(max-width:760px){#landingHome{background:#fff}
}
#landingHome{background:#fff}
#landingHome .hero .ticket-wrap{filter:drop-shadow(0 9px 10px #30201030)}
#landingHome .hero .collage .calendar-crop{box-shadow:0 7px 20px #30201026}
@media(min-width:761px){#landingHome .hero>.hero-content{max-width:342px}
#landingHome .hero .searchbox{flex-wrap:nowrap;border-width:1px;margin-top:18px}
#landingHome .hero .searchbox input{font-size:10px;padding:17px 8px}
#landingHome .hero .searchbox svg{width:17px;margin-left:11px}
#landingHome .hero .searchbox button{width:auto;flex:none;font-size:10px;padding:14px 10px;border-radius:11px}
#landingHome .hero .search-footer :is(.text-link,.landingarealink){font-size:11px;padding:8px 15px}

}
#landingHome .hero .ticket-back{position:absolute;width:350px;height:565px;transform-origin:top left;pointer-events:none;overflow:hidden;filter:drop-shadow(0 5px 5px #3020101c)}
#landingHome .share-transition{background:#fd780f}
#landingHome .faq-transition{background:#f7e5d5}
#landingHome .section.share,#landingHome .section.faq{border-radius:30px 30px 0 0}
#landingHome .footer-x{display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin:0 auto 22px;border:1px solid #d8c6b6;border-radius:50%;color:#171717;transition:background .18s}
#landingHome .footer-x svg{width:19px;height:19px}
#landingHome .footer-x:hover{background:#ffe6d1}
#landingHome .point-card .phone-frame{position:relative;display:flex;flex-direction:column;justify-content:center;height:auto;aspect-ratio:1/2;border:5px solid #303036;border-radius:24px;padding:3px;background:#303036;overflow:hidden;box-shadow:0 0 0 1px #77777d,0 10px 22px #3020101a}
#landingHome .point-card .phone-frame:before,#landingHome .point-card .phone-frame:after{display:none}
#landingHome .point-card .phone-frame img{position:static;display:block;flex:none;width:100%;max-width:100%;height:auto;margin:0;border-radius:16px;object-fit:contain}
#landingHome .point-card .food-crop.phone-frame,#landingHome .point-card .memory-calendar.phone-frame{max-width:300px;margin-left:auto;margin-right:auto}
#landingHome .point-card .screen.phone-frame{border-width:3px;padding:1px;border-radius:16px;box-shadow:0 0 0 1px #77777d,0 8px 18px #3020101a}
#landingHome .point-card .screen.phone-frame img{border-radius:12px}
#landingHome .hero .hero-showcase{margin-top:10px;position:relative;top:-10px}
#landingHome .hero-feature-track{--phone-width:202px;position:relative;display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:12px max(0px,calc((100% - var(--phone-width))/2)) 0;overscroll-behavior-x:contain}
#landingHome .hero-feature-track::-webkit-scrollbar{display:none}
#landingHome .hero-feature-slide{flex:0 0 var(--phone-width);width:var(--phone-width);scroll-snap-align:center;scroll-snap-stop:always}
#landingHome .hero-phone{border:5px solid #303036;border-radius:22px;background:#fffaf4;overflow:hidden;box-shadow:none;aspect-ratio:1/2}
#landingHome .hero-phone>img{display:block;width:100%;height:100%;object-fit:contain;background:#fff}
#landingHome .hero-feature-slide>p{text-align:center;font-size:12px;font-weight:700;margin:10px 0 0}
#landingHome .hero-feature-controls{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:8px;font-size:11px}
#landingHome .hero-feature-controls button{display:grid;place-items:center;width:30px;height:30px;border:1px solid #d7c9be;border-radius:50%;background:#fff;font-size:20px;line-height:1}
#landingHome .hero-feature-controls .hero-autoplay{font-size:11px;margin-left:4px}
#landingHome .hero-ticket-screen{padding:8px;height:100%;display:flex;flex-direction:column;justify-content:center;gap:12px;background:#fff4ed}
#landingHome .hero-ticket-heading{text-align:center;font-size:10px;font-weight:700}
#landingHome .hero-ticket-fit{position:relative;width:100%;pointer-events:none}
#landingHome .hero-ticket-fit iframe{transform-origin:top left}
@media(max-width:360px){#landingHome .hero-feature-track{--phone-width:184px;gap:16px}
}
#landingHome .hero-feature-slide{display:flex;flex-direction:column;align-items:center}
#landingHome .hero-feature-slide>p{order:1;display:inline-flex;align-items:center;justify-content:center;border:1px solid #333;border-radius:999px;padding:5px 14px;margin:14px 0 0;font-size:11px;line-height:1.6;white-space:nowrap;background:#fff}
#landingHome .hero-phone{width:100%;flex:none}
#landingHome .hero .search-footer :is(.text-link,.landingarealink){border-radius:11px;background:#171717;color:#fff;border-color:#171717}
@media(max-width:760px){#landingHome .hero .hero-showcase{width:100vw;margin-left:calc((100% - 100vw)/2)}
#landingHome .hero-feature-track{width:100%}
}
#landingHome .intro p{line-height:2.1}
#landingHome .intro p+p{margin-top:18px}
@media(max-width:360px){#landingHome .intro-break{display:none}
}
#landingHome .point-card .phone-frame{background:linear-gradient(#fff,#fff) content-box,#303036}
#landingHome .hero-letter{animation:hero-letter-reveal 180ms ease-out both;animation-delay:var(--delay)}
@keyframes hero-letter-reveal{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){#landingHome .hero-letter{animation:none}
}
#landingHome .hero h1{color:#171717}
@media(max-width:760px){#landingHome .hero{padding-bottom:69px}
}
#landingHome .hero{background:#fd780f;color:#fff}
#landingHome .hero h1,#landingHome .hero .searchbox{color:#fff}
#landingHome .hero .hero-phone{border-color:#fff}
#landingHome .hero .hero-feature-slide>p{color:#fff;border-color:#fff;background:transparent}
#landingHome .hero .searchbox{background:transparent;border-color:#fff}
#landingHome .hero .searchbox input{color:#fff;background:transparent;caret-color:#fff}
#landingHome .hero .searchbox input::placeholder{color:#fff;opacity:.9}
#landingHome .hero .searchbox button,#landingHome .hero .search-footer :is(.text-link,.landingarealink){background:#fff;color:#171717;border-color:#fff}
#landingHome .hero .searchbox:focus-within{outline-color:#fff}
#landingHome .hero .hero-bottom{color:#fff}
#landingHome .hero .hero-phone{border-color:#303036}
#landingHome .hero .searchbox button,#landingHome .hero .search-footer :is(.text-link,.landingarealink),#landingHome .paperhead .auth-bar .signup,#landingHome button[data-home-action="新規無料登録"]{background:#fff;color:#fd780f;border-color:#fff}
#landingHome .hero-brand{display:block;width:190px;max-width:65%;margin:0 auto 22px}
#landingHome .hero-brand img{display:block;width:100%;height:auto;filter:brightness(0) invert(1)}
#landingHome .hero h1{font-size:18px;letter-spacing:.07em}
#landingHome .hero-brand{width:220px;max-width:72%}
#landingHome .auth-bar button,#landingHome button[data-home-action="ログイン"],#landingHome button[data-home-action="新規無料登録"]{font-weight:800}
#landingHome .hero-brand{width:260px;max-width:100%;position:relative;top:-10px}
#landingHome .paperhead .auth-bar{position:fixed;top:10px;right:18px;left:auto;bottom:auto;width:max-content;max-width:calc(100vw - 36px);height:auto;min-height:0;padding:6px 8px 6px 14px;gap:12px;background:#fff0e2;border:0;border-radius:999px;backdrop-filter:none}
#landingHome .paperhead .auth-bar .signup{padding:10px 15px}
#landingHome main#home-story{border-top-left-radius:36px;border-top-right-radius:36px}
@media(max-width:760px){#landingHome{background:#fd780f}
}
#landingHome .hero-brand{animation:hero-logo-reveal .4s ease-out 1.6s both}
@keyframes hero-logo-reveal{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){#landingHome .hero-brand{animation:none}
}
#landingHome .announcement-bar{position:fixed;inset:0 0 auto;z-index:110;height:36px;display:flex;align-items:center;justify-content:center;gap:12px;padding:0 12px;background:#171717;color:#fff;font-size:11px;line-height:1.4}
#landingHome .announcement-bar>span{font-weight:800;flex:none}
#landingHome .announcement-bar a{color:inherit;text-decoration:none}
#landingHome .announcement-bar a:hover{text-decoration:underline;text-underline-offset:3px}
#landingHome .paperhead .auth-bar{top:46px}
@media(max-width:760px){#landingHome{padding-top:36px}
}
@media(min-width:761px){#landingHome .hero{padding-top:146px}
}
#landingHome #home-contribute{scroll-margin-top:110px}
#landingHome .announcement-bar{position:relative;inset:auto}
#landingHome .announcement-icon{width:16px;height:16px;flex:none;margin-right:-5px}
@media(max-width:760px){#landingHome{padding-top:0}
}
#landingHome .memory .point-card>button.pill{border:1px solid #fd780f}


html.landing-open body{margin:0;padding:0;background:#fff}
#landingHome{overflow:visible;isolation:isolate}
html:not(.landing-open) #landingHome{display:none}
#landingHome .landingarealink{margin:0;font-weight:650;font-size:11px}
#landingHome footer nav a{text-align:left;border-bottom:1px solid #dccaba;padding:12px 0;font-size:10px}
#landingHome .paperhead{height:auto;position:static;background:transparent;border:0;box-shadow:none}
#landingHome .hero .hero-brand img{content:normal}
@media(max-width:760px){html.landing-open body{background:#fd780f}}

/* Isolate the homepage from the application flex layout. */
#landingHome main{display:block;flex:none}

/* Fixed notice and stable first paint on Safari. */
#landingHome .announcement-bar{position:fixed;inset:0 0 auto}
#landingHome .paperhead .auth-bar{top:46px}
@media(max-width:760px){#landingHome{padding-top:36px}}
#landingHome .home-sample-ticket{display:block;width:350px;transform-origin:top left;pointer-events:none}

/* Keep the search field free of the generic purple focus outline. */
#landingHome .searchbox input:focus,#landingHome .searchbox input:focus-visible{outline:none}

@font-face{font-family:HomeNumbers;src:url("/home-assets/Barlow-Bold.ttf") format("truetype");font-weight:700;font-display:swap}
#landingHome .point-number,#landingHome .intro>div a b,#landingHome .steps span{font-family:HomeNumbers,Arial,sans-serif;font-weight:700;letter-spacing:.025em}
#landingHome .section.find{padding-top:14px}
#landingHome .search-rail{display:none}
html.landing-open body,#landingHome{background:#fff}
@media(max-width:760px){#landingHome .section.find{padding-top:12px}}
@media(min-width:761px){
 #landingHome .home-page{width:500px;max-width:100%;margin:0 auto;background:#fd780f}
 #landingHome .hero{position:relative;inset:auto;width:100%;height:auto;min-height:0;padding:130px 24px 69px;overflow:hidden;display:block;background:#fd780f}
 #landingHome .hero>.hero-content{width:100%;max-width:none;padding:0}
 #landingHome .hero .hero-showcase{width:500px;margin-left:-24px}
 #landingHome main{width:100%;max-width:none;margin:0;border-radius:30px 30px 0 0;box-shadow:none}
 #landingHome .search-rail{position:fixed;left:0;top:50%;transform:translateY(-50%);width:calc((100% - 500px)/2);padding:0 clamp(12px,2vw,28px);display:flex;flex-direction:column;align-items:center;gap:14px;z-index:5}
 #landingHome .search-rail a{display:flex;align-items:center;justify-content:center;width:100%;max-width:280px;min-height:50px;padding:12px 8px;background:#fff;color:#fd780f;border:1px solid #fff;border-radius:11px;text-align:center;font-weight:750;font-size:clamp(10px,1vw,13px)}
 #landingHome .service-rail{color:#fff}
 #landingHome .rail-bubble{color:#171717}
 #landingHome .service-rail nav a{border-color:#ffffff70}
}

@media(min-width:761px){#landingHome .service-rail{color:#171717}#landingHome .service-rail nav a{border-color:#d1b9a5}#landingHome .search-rail a,#landingHome .service-rail .rail-cta{border:1px solid #fd780f}}

/* Display-only ticket strip extends to the POINT card edges. */
#landingHome .plan .point-card{--ticket-inset:24px}
#landingHome .point-card .ticket-slider{margin-inline:calc(-1 * var(--ticket-inset));padding:0;overflow:hidden;pointer-events:none;user-select:none;touch-action:pan-y}
#landingHome .ticket-slide{scroll-margin-left:0}
@media(max-width:760px){#landingHome .plan .point-card{--ticket-inset:20px}}
@media(max-width:360px){#landingHome .plan .point-card{--ticket-inset:16px}}

#landingHome .paperhead .auth-bar{padding-block:4px}
#landingHome .paperhead .auth-bar button:is(button,.signup){padding-block:6px;min-height:0;line-height:1.5}

#landingHome .paperhead .auth-bar{padding-right:4px}
#landingHome .hero .hero-showcase{top:0;margin-top:24px}

#landingHome .paperhead .auth-bar{right:13px}
#landingHome .hero .searchbox button{font-size:14px;line-height:1.5}

#landingHome .home-page{background:#fd780f}

/* Venue search UI. */

#landingHome .hero .venue-search-mock{margin-top:22px;text-align:left}
#landingHome .hero .search-label{display:block;color:#fff;font-size:12px;font-weight:700;line-height:1.6;margin:0 0 9px 3px;letter-spacing:.04em}
#landingHome .hero .venue-search-mock .searchbox{display:flex;align-items:center;flex-wrap:nowrap;gap:0;margin:0;padding:0;background:#fff;border:0;border-radius:11px;overflow:hidden;box-shadow:0 4px 0 #bb510b18;color:#242424;min-height:60px}
#landingHome .hero .venue-search-mock .searchbox svg{flex:0 0 19px;width:19px;height:19px;margin:0 9px 0 14px;color:#8c827a}
#landingHome .hero .venue-search-mock .searchbox input{flex:1;min-width:0;width:0;padding:10px 0;font-size:16px;line-height:1.5;color:#242424;background:#fff;caret-color:#fd780f;border:0;outline:none;letter-spacing:0}
#landingHome .hero .venue-search-mock .searchbox input::placeholder{color:#8b827a;opacity:1;font-size:13px}
#landingHome .hero .venue-search-mock .searchbox button{flex:0 0 66px;width:66px;align-self:stretch;min-height:60px;margin:0;padding:10px 8px;border:0;border-radius:0;background:#242424;color:#fff;font-size:15px;font-weight:800;line-height:1.5;text-align:center}
#landingHome .hero .venue-search-mock .searchbox:focus-within{outline:none}
#landingHome .hero .venue-search-mock .searchbox button:focus-visible{outline:2px solid #fd780f;outline-offset:-4px}
#landingHome .hero .search-footer{margin-top:13px}
#landingHome .hero .search-footer .text-link{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 19px;background:#fff;color:#fd780f;border:1px solid #fff;border-radius:11px;font-size:12px;font-weight:700;box-shadow:none}
@media(max-width:360px){#landingHome .hero .venue-search-mock .searchbox svg{margin-left:4px;margin-right:6px}#landingHome .hero .venue-search-mock .searchbox button{flex-basis:58px;width:58px}#landingHome .hero .venue-search-mock .searchbox input::placeholder{font-size:12px}}

#landingHome .hero-feature-slide>p>a{display:inline-block;padding:5px 14px;margin:-5px -14px;border-radius:inherit;color:inherit;text-decoration:none}
#landingHome .nearby{scroll-margin-top:100px}

#landingHome .hero .search-modes{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}
#landingHome .hero .search-modes :is(.search-mode,.landingarealink){width:100%;display:flex;align-items:center;justify-content:center;min-height:36px;padding:6px 6px;border:1px solid #fff;border-radius:11px;background:transparent;color:#fff;font-size:12px;line-height:1.6;font-weight:750;letter-spacing:0;text-align:center}
#landingHome .hero .search-modes .search-mode.active{position:relative;background:#fff;color:#fd780f}
#landingHome .hero .search-modes .search-mode.active::after{content:"";position:absolute;left:50%;bottom:-5px;width:12px;height:12px;background:#fff;border-radius:2px;transform:translateX(-50%) rotate(45deg);pointer-events:none}
#landingHome .hero .search-modes :is(.search-mode,.landingarealink):focus-visible{outline:2px solid #fff;outline-offset:3px}

@media(max-width:760px){#landingHome .hero-content{padding-top:19px}}
@media(min-width:761px){#landingHome .hero{padding-top:125px}}

#landingHome .closing :is(.pill,.text-link){box-sizing:border-box;width:240px;max-width:100%;min-height:48px;padding:14px 20px;border-width:1px;font-size:12px;line-height:1.6;display:inline-flex;align-items:center;justify-content:center}


/* One ticket motif, shared line weight and cream palette; only position and scale vary. */
#landingHome .hero{isolation:isolate;background-image:none}
@media(min-width:761px){html.landing-open body,#landingHome{background-color:#fffcf7;background-image:none}}

/* Feature previews and section transitions. */
#landingHome .latest-feature{margin-top:40px;text-align:center}
#landingHome .latest-feature h3,#landingHome .memory-panel h3{font-size:18px;line-height:1.65;letter-spacing:0;margin:0 0 12px;font-weight:700}
#landingHome .latest-feature>p,#landingHome .memory-panel>p{font-size:12px;line-height:2;margin:0 0 24px;color:#333}
#landingHome .latest-screen{display:block;width:min(100%,280px);margin:26px auto 0;border:1px solid #e9d8c8;box-shadow:0 5px 18px #3a2b1c0c;overflow:hidden}
#landingHome .latest-screen img{display:block;width:100%;height:auto}
/* Match the screen's native ratio; the frame clips its own rounded corners. */
#landingHome .hero .hero-phone,
#landingHome .point-card .phone-frame,
#landingHome .point-card .screen.phone-frame{display:block;aspect-ratio:auto;height:auto;padding:0}
#landingHome .hero .hero-phone>img,
#landingHome .point-card .phone-frame img,
#landingHome .point-card .screen.phone-frame img{display:block;width:100%;height:auto;max-width:100%;margin:0;border-radius:0;object-fit:contain}
#landingHome .memory-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;background:#eeebe5;padding:4px;border-radius:11px;margin:28px 0}
#landingHome .memory-tabs button{display:grid;place-items:center;min-width:0;min-height:44px;border:0;border-radius:8px;background:transparent;color:#555;font:inherit;font-size:12px;font-weight:700;padding:8px 2px;cursor:pointer;letter-spacing:0}
#landingHome .memory-tabs button[aria-selected=true]{background:#252525;color:#fff}
#landingHome .memory-tabs button:hover:not([aria-selected=true]){background:#ddd9d3;color:#252525}
#landingHome .memory-tabs button:focus-visible{outline:2px solid #252525;outline-offset:2px}
#landingHome .memory-panel[hidden]{display:none!important}
#landingHome .memory-panel{text-align:center}
#landingHome .memory-panels{min-height:760px}
#landingHome .memory-notes p{font-size:12px;line-height:1.9}
#landingHome .sample-note{font-size:10px!important;color:#68615a!important;margin:16px 0 0!important}
#landingHome .account-preview .point-card{padding-top:32px}
#landingHome .account-preview .eyebrow{display:block;text-align:center;margin:0 0 18px}
#landingHome .account-preview .eyebrow::before{content:none;display:none}
#landingHome .story-character img{filter:drop-shadow(0 8px 5px rgb(50 25 10 / 24%))}
/* Rounded boundaries show the color of the section immediately above. */
#landingHome .account-transition{background:#fd780f}
#landingHome .account-preview{background:#fff0e2;border-radius:30px 30px 0 0}
#landingHome .share-transition{background:#fff0e2}
#landingHome #home-contribute{background:#242424;color:#fffaf4;border-radius:30px 30px 0 0}
#landingHome #home-contribute h2{color:#fffaf4}
#landingHome #home-contribute>p{color:#f2ece5}
#landingHome #home-contribute .notice{color:#d4cec7}
#landingHome #home-contribute .steps li{border-color:#aaa39d}
#landingHome #home-contribute .eyebrow::before{background:transparent;border-color:#fffaf4}
#landingHome .faq-transition{background:#242424}
#landingHome .closing-transition{background:#fffdf9}
#landingHome .section.closing{border-radius:30px 30px 0 0}
#landingHome .footer-transition{background:#efc29f}
#landingHome .footer-transition>footer{border-radius:30px 30px 0 0}
@media(max-width:360px){#landingHome .memory-tabs button{font-size:11px}#landingHome .memory-panel h3{font-size:16px}#landingHome .memory-panels{min-height:710px}}
@media(prefers-reduced-motion:reduce){#landingHome .memory-panel{animation:none!important;transition:none!important}}
