.hero{display:grid;grid-template-columns:1.02fr 1fr;align-items:center;gap:54px;padding-block:45px 90px}
.hero-copy{padding-bottom:20px}
.hero .eyebrow{display:inline-flex;align-items:center;gap:9px;letter-spacing:1.5px;font-size:10px}
.hero .eyebrow:before{content:"";width:6px;height:6px;background:#cb5a44;border-radius:50%}
.hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(58px,6.5vw,91px);line-height:1.015;letter-spacing:-4.5px;margin:0 0 27px}
.hero h1 em{font-style:normal;color:#ab473d}
.hero-description{font-size:16px;line-height:1.85;max-width:420px;margin-bottom:30px}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px 25px}
.hero-footnote{font-size:10px;letter-spacing:.15px;margin:23px 0 0;color:var(--muted)}
.hero-art{position:relative;padding:15px 8px 8px 10px}
.hero-art:before{content:"";position:absolute;z-index:-1;inset:5px 19px 2px 0;background:#eadce5;transform:rotate(-4deg);border-radius:115px 115px 20px 20px}
.hero-image{border-radius:110px 110px 18px 18px;width:100%;aspect-ratio:4/4.7;object-fit:cover;border:8px solid #fffdf8;box-shadow:0 18px 48px #542b3620}
.hero-caption{position:absolute;bottom:32px;left:-22px;background:var(--white);padding:13px 23px;font-family:var(--serif);font-size:20px;transform:rotate(-5deg);box-shadow:0 6px 20px #53233f13}
.hero-sticker{position:absolute;right:-16px;top:28px;border-radius:50%;width:108px;height:108px;background:var(--butter);display:flex;align-items:center;justify-content:center;flex-direction:column;transform:rotate(9deg);box-shadow:0 3px 0 #d2bd66;line-height:1.3}
.hero-sticker b{font-family:var(--serif);font-size:39px;font-weight:400}
.hero-sticker span{font-size:10px;text-align:center;font-weight:700}
.promise-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.promise-inner{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding-block:23px;font-size:11px;font-weight:600;text-align:center}
.promise-inner span:not(:first-child){border-left:1px solid var(--line)}
.intro-section{padding-block:108px 60px;text-align:center}
.intro-section p{max-width:590px;margin:0 auto;font-size:15px;color:#6c5263;line-height:1.85}
.souvenir-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:23px;padding-bottom:108px}
.souvenir{display:flex;flex-direction:column;border:1px solid #dccfcf;border-radius:18px;overflow:hidden;background:var(--white)}
.souvenir-art{height:265px;position:relative;display:flex;align-items:center;justify-content:center;padding:26px;overflow:hidden}
.souvenir-photo .souvenir-art{background:#f3dfab}
.souvenir-audio .souvenir-art{background:#e8deed}
.souvenir-capsule .souvenir-art{background:#f7d4c9}
.film{width:225px;height:176px;background:#372332;border-radius:15px;transform:rotate(-8deg);padding:19px 17px;box-shadow:10px 15px 0 #3c193215;position:relative}
.film-brand{font-size:8px;letter-spacing:1px;color:#f5df80;display:flex;justify-content:space-between;border-bottom:1px solid #75536a;padding-bottom:9px}
.film-middle{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:19px}
.film-lens{border:8px solid #725268;outline:7px solid #211421;width:76px;height:76px;border-radius:50%;background:radial-gradient(circle at 37% 35%,#a3b2bb 0 5%,#404859 9%,#171521 36%,#383a49 40%,#14101b 65%)}
.film-counter{color:var(--butter);font-family:var(--serif);font-size:44px;line-height:1}
.film-counter small{font-family:var(--sans);display:block;font-size:7px;letter-spacing:1px;margin-top:5px;text-align:center}
.film-tag{position:absolute;right:18px;bottom:20px;font-size:9px;transform:rotate(5deg);background:var(--cream);padding:5px 11px;box-shadow:1px 3px 5px #0001}
.tape{background:#fcf8ed;border:2px solid #85617d;border-radius:14px;width:245px;padding:18px 20px;transform:rotate(5deg);box-shadow:9px 12px 0 #53233f14}
.tape-top{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1px;border-bottom:1px solid #bca7ba;padding-bottom:9px}
.tape-name{font-family:var(--serif);font-size:26px;margin:15px 0 12px;line-height:1.15}
.tape-window{background:#58314c;border-radius:40px;height:33px;display:flex;align-items:center;justify-content:space-between;padding:5px 9px}
.tape-window:before,.tape-window:after{content:"";display:block;width:20px;height:20px;border:5px dotted var(--cream);border-radius:50%}
.tape-window span{width:85px;height:9px;background:repeating-linear-gradient(90deg,var(--butter) 0 2px,transparent 2px 7px);border-radius:2px}
.tape-bottom{font-size:8px;letter-spacing:1px;margin-top:12px;text-align:center}
.envelope{width:227px;height:153px;background:#fdf9e9;border:1px solid #dfb59e;transform:rotate(-7deg);position:relative;box-shadow:10px 12px 0 #53233f12;display:flex;align-items:center;justify-content:center}
.envelope:before{content:"";position:absolute;inset:0;background:linear-gradient(32deg,transparent 49.7%,#e3cbbb 50%,transparent 50.6%),linear-gradient(-32deg,transparent 49.7%,#e3cbbb 50%,transparent 50.6%);background-size:100% 78%;background-repeat:no-repeat}
.seal{width:55px;height:55px;border-radius:50%;background:#b44f40;color:var(--cream);display:flex;align-items:center;justify-content:center;font-size:26px;font-family:var(--serif);position:relative;z-index:1;box-shadow:inset 0 0 0 4px #c26151}
.envelope-label{position:absolute;left:22px;bottom:13px;font-size:9px}
.date-stamp{position:absolute;right:21px;top:17px;border:1px solid #be8f7a;font-size:7px;line-height:1.4;padding:4px;text-align:center;transform:rotate(7deg)}
.souvenir-content{padding:28px 28px 29px}
.souvenir-number{font-size:9px;letter-spacing:1.8px;text-transform:uppercase;font-weight:700;display:block;margin-bottom:14px;color:#7e5c70}
.souvenir h3{font-family:var(--serif);font-weight:400;font-size:33px;letter-spacing:-1px;margin-bottom:16px}
.souvenir p{font-size:13px;line-height:1.8;margin-bottom:20px;color:#6c5263}
.souvenir-end{font-size:10px;border-top:1px solid #e3d8d4;padding-top:16px;font-weight:700}
.simple-section{background:var(--plum);color:var(--cream);padding:80px 0 88px}
.simple-layout{display:grid;grid-template-columns:1fr 1fr;gap:110px;align-items:center}
.simple-section .eyebrow{color:#f1ceaa}
.simple-section .section-title{font-size:clamp(39px,4.5vw,63px);margin-bottom:25px}
.simple-copy{font-size:14px;line-height:1.9;color:#e4d3da;margin-bottom:27px;max-width:420px}
.steps{display:flex;flex-direction:column;gap:29px}
.step{display:grid;grid-template-columns:40px 1fr;gap:20px}
.step-number{font-family:var(--serif);font-size:29px;color:var(--butter);line-height:1.3}
.step h3{font-family:var(--serif);font-size:24px;font-weight:400;margin-bottom:8px}
.step p{font-size:12px;line-height:1.85;color:#e0cbd8;margin:0}
.step:not(:last-child){border-bottom:1px solid #8c637b;padding-bottom:27px}
.capsule-section{padding-block:108px;display:grid;grid-template-columns:1fr 1.15fr;gap:95px;align-items:center}
.capsule-section .section-title{font-size:clamp(38px,4.2vw,58px)}
.capsule-copy p{font-size:14px;line-height:1.9;color:#71566b}
.capsule-scene{position:relative;border-radius:24px;background:#eee5ef;padding:43px 37px 34px;min-height:350px}
.letter-paper{padding:35px 30px;background:#fffdf8;transform:rotate(-3deg);box-shadow:0 10px 30px #53233f10}
.letter-paper .eyebrow{font-size:8px;letter-spacing:1px;margin-bottom:23px}
.letter-paper p{font-family:var(--serif);font-size:27px;line-height:1.4;margin:0 0 24px}
.letter-signature{font-size:10px;color:var(--muted)}
.month-chip{display:inline-flex;align-items:center;background:var(--plum);color:var(--cream);border-radius:30px;font-size:10px;padding:10px 17px;position:relative;margin-top:26px;left:12px}
.demo-note{font-size:9px;color:var(--muted);margin-top:12px}
.pilot-section{padding-bottom:100px}
.pilot-box{background:var(--butter);border-radius:24px;display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:60px 64px;position:relative}
.pilot-box h2{font-family:var(--serif);font-size:51px;font-weight:400;letter-spacing:-2px;margin-bottom:20px}
.pilot-box p{font-size:14px;line-height:1.8;max-width:430px}
.pilot-list{list-style:none;padding:0;margin:0 0 26px;display:grid;gap:11px}
.pilot-list li{font-size:12px;display:flex;gap:12px}
.pilot-list li:before{content:"✓";font-size:14px}
.pilot-detail{font-size:10px!important;margin:14px 0 0;color:#68503a}
.faq-section{padding-bottom:100px;display:grid;grid-template-columns:1fr 1.4fr;gap:90px}
.faq-section h2{font-size:43px}
.faq-section details{border-top:1px solid var(--line)}
.faq-section details:last-child{border-bottom:1px solid var(--line)}
.faq-section summary{padding:22px 35px 22px 0;font-size:13px;font-weight:700;cursor:pointer;list-style:none;position:relative;line-height:1.7}
.faq-section summary::-webkit-details-marker{display:none}
.faq-section summary:after{content:"+";position:absolute;right:5px;top:20px;font-size:22px;font-weight:400}
.faq-section details[open] summary:after{content:"−"}
.faq-section details p{font-size:12px;line-height:1.85;color:#6c5263;padding-right:20px;padding-bottom:8px}
@media(min-width:1600px){.hero{padding-top:60px;gap:80px}.hero h1{font-size:94px}}
@media(max-width:1100px){.hero{gap:36px}.hero h1{font-size:67px;letter-spacing:-3px}.hero-art{padding-left:0}.hero-sticker{right:-7px;width:92px;height:92px}.hero-sticker b{font-size:32px}.souvenir-content{padding:24px 21px}.souvenir h3{font-size:29px}.souvenir-art{height:225px;padding:20px}.film,.tape,.envelope{scale:.9}.simple-layout{gap:55px}.capsule-section{gap:50px}.pilot-box{padding:45px;gap:40px}.faq-section{gap:50px}}
@media(max-width:800px){.hero{padding-top:28px;padding-bottom:48px;gap:30px;grid-template-columns:1fr}.hero-copy{padding-bottom:0}.hero h1{font-size:clamp(47px,10.6vw,72px);letter-spacing:-2.6px;max-width:650px;margin-bottom:22px}.hero h1 br{display:none}.hero-description{max-width:100%;font-size:14px;line-height:1.85;margin-bottom:23px}.hero .eyebrow{font-size:9px;margin-bottom:20px}.hero-actions{gap:15px}.hero-actions .text-link{font-size:11px}.hero-footnote{margin-top:16px;font-size:9px}.hero-art{width:100%;max-width:550px;margin:10px auto 0;padding:0 7px}.hero-image{aspect-ratio:1.15;object-position:center 54%;border-radius:75px 75px 12px 12px;border-width:6px}.hero-art:before{border-radius:75px 75px 12px 12px;inset:-6px 15px 0 0}.hero-caption{left:0;bottom:19px;font-size:17px;padding:11px 19px}.hero-sticker{right:3px;top:12px;width:82px;height:82px}.hero-sticker b{font-size:31px}.hero-sticker span{font-size:8px}.promise-inner{grid-template-columns:repeat(2,1fr);gap:17px 12px;font-size:10px;padding-block:22px}.promise-inner span:nth-child(3){border-left:none}.intro-section{padding-block:58px 33px}.intro-section p{font-size:13px;max-width:none}.souvenir-grid{grid-template-columns:1fr;gap:20px;padding-bottom:60px}.souvenir{display:grid;grid-template-columns:.9fr 1.1fr;align-items:stretch}.souvenir-art{height:100%;min-height:235px;padding:10px}.film,.tape,.envelope{scale:.74;flex-shrink:0}.souvenir-content{padding:25px 20px}.souvenir h3{font-size:27px}.souvenir p{font-size:12px}.souvenir-number{font-size:8px}.souvenir-end{font-size:9px}.simple-section{padding-block:55px}.simple-layout{grid-template-columns:1fr;gap:40px}.simple-copy{max-width:none}.step{grid-template-columns:30px 1fr;gap:18px}.capsule-section{grid-template-columns:1fr;gap:28px;padding-block:60px}.capsule-copy p{font-size:13px}.capsule-scene{min-height:auto;padding:30px 25px}.letter-paper{padding:28px}.letter-paper p{font-size:27px}.pilot-section{padding-bottom:60px}.pilot-box{grid-template-columns:1fr;gap:20px;padding:32px 25px}.pilot-box h2{font-size:42px}.pilot-box p{max-width:none;font-size:13px}.pilot-list{gap:12px}.faq-section{grid-template-columns:1fr;gap:20px;padding-bottom:60px}.faq-section h2{font-size:36px}.faq-section summary{font-size:12px}.faq-section details p{padding-right:0}}
@media(max-width:500px){.souvenir{display:flex}.souvenir-art{height:212px;min-height:212px}.film,.tape,.envelope{scale:.95}.souvenir-content{padding:25px}.souvenir h3{font-size:33px}.souvenir p{font-size:13px}.souvenir-number{font-size:9px}.souvenir-end{font-size:10px}.hero h1{font-size:53px}.hero-actions .button{padding-inline:20px;font-size:12px}.hero-actions{gap:10px 20px}.hero-actions .text-link{font-size:11px}.hero-image{aspect-ratio:1.1}.pilot-box .button{width:100%}.letter-paper p{font-size:24px}}
@media(max-width:360px){.hero h1{font-size:46px;letter-spacing:-2px}.hero .eyebrow{letter-spacing:1.1px;font-size:8px}.hero-actions{align-items:flex-start;flex-direction:column;gap:8px}.hero-description{font-size:13px}.hero-caption{font-size:15px}.hero-footnote{font-size:8.5px}.pilot-box{padding:28px 21px}.pilot-box h2{font-size:36px}.letter-paper{padding:24px 21px}}
