.greeting-page h1{font-size:clamp(48px,6.8vw,102px);font-weight:500;line-height:1.05;letter-spacing:-.06em;margin:0 0 28px}.greeting-hero{padding:155px 4.6% 0;text-align:center}.greeting-hero-copy{max-width:1200px;margin:auto}.greeting-lead{font-size:24px;letter-spacing:-.6px;line-height:1.5;margin:0 0 18px}.greeting-intro{font-size:16px;line-height:1.85;color:#777;max-width:640px;margin:0 auto 30px}.greeting-hero-picture{position:relative;margin:60px 0 0;border-radius:22px;overflow:hidden;height:470px;background:#ece8e2}.greeting-hero-picture img{width:100%;height:100%;object-fit:cover;object-position:center 58%}.greeting-hero-picture figcaption{position:absolute;bottom:25px;left:25px;padding:12px 18px;border-radius:30px;background:#fffd;color:#666;font-size:12px;backdrop-filter:blur(12px);max-width:calc(100% - 50px)}.occasion-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 28px}.occasion-card>img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:16px;display:block;background:var(--soft)}.occasion-card>div{padding-top:25px}.occasion-card h3{font-size:25px;font-weight:500;letter-spacing:-.6px;margin:0 0 14px}.occasion-card p{font-size:15px;color:#777;line-height:1.85;margin:0}.occasion-card div>span{display:block;font-size:12px;color:#999;line-height:1.7;margin-top:18px}.occasion-wide{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;padding-top:40px;border-top:1px solid var(--line);margin-top:5px}.occasion-wide>div{padding-top:0}.personal-section{display:grid;grid-template-columns:1fr 1.05fr;gap:75px;padding:90px 6%;align-items:center;background:var(--soft);border-block:1px solid var(--line)}.personal-copy>p{font-size:16px;color:#777;line-height:1.85;max-width:465px}.personal-example{padding:38px;border:1px solid #ddd;border-radius:18px;background:#fff}.small-label{display:block;font-size:10px;letter-spacing:.1em;color:#999;margin-bottom:17px}.personal-example>div>p{font-size:22px;letter-spacing:-.6px;line-height:1.65;margin:0}.personal-example>div:first-child>p{color:#999}.personal-arrow{display:block;font-size:25px;color:#bbb;margin:20px 0}.personal-example .personal-note{font-size:12px;line-height:1.8;color:#999;margin:24px 0 0;padding-top:20px;border-top:1px solid var(--line)}.greeting-steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:35px;padding:0;margin:0}.step-paper{height:190px;border-radius:14px;background:#f0ece5;position:relative;overflow:hidden}.paper-open i{position:absolute;left:25%;right:25%;bottom:28%;height:35%;background:#e0d5c5;border:1px solid #bfb7a8;border-radius:4px}.paper-open i:after{content:'';position:absolute;left:0;right:0;top:-1px;height:60%;background:#efe9dd;clip-path:polygon(0 0,50% 100%,100% 0)}.paper-open span{position:absolute;left:33%;right:33%;height:32%;bottom:45%;background:#fffcf7;border:1px solid #d6cbb9;transform:rotate(-8deg)}.paper-memory i{position:absolute;inset:25% 22%;background:#faf7f0;border:1px solid #d8ccba;transform:rotate(-6deg);box-shadow:13px 12px 0 #e2d6c4}.paper-memory span{position:absolute;left:35%;top:40%;width:50px;height:50px;background:#c8bca5;border-radius:50%}.paper-memory b{position:absolute;left:55%;top:35%;width:1px;height:60px;background:#c8bca5;transform:rotate(25deg)}.paper-wish i{position:absolute;left:20%;right:20%;bottom:30%;height:1px;background:#b6b7a4}.paper-wish span{position:absolute;left:38%;top:25%;width:68px;height:68px;border-radius:50%;background:#d8c5a3;box-shadow:0 0 35px #dfd1b9}.greeting-step-number{display:block;font-size:12px;color:#aaa;margin-top:22px}.greeting-steps h3{font-size:23px;font-weight:500;letter-spacing:-.6px;margin:14px 0}.greeting-steps p{font-size:15px;line-height:1.85;color:#777;margin:0}.greeting-steps small{display:block;font-size:12px;line-height:1.8;color:#999;margin-top:18px}.recipient-section{border-top:1px solid var(--line)}.recipient-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px}.recipient-grid article{padding-top:24px;border-top:1px solid var(--line)}.recipient-symbol{width:65px;height:60px;position:relative;color:#c2b7a5;font-size:46px;line-height:1}.recipient-grid h3{font-size:23px;font-weight:500;letter-spacing:-.6px;margin:18px 0 14px}.recipient-grid p{font-size:14px;line-height:1.85;color:#777;margin:0}.family-symbol i{position:absolute;width:18px;height:18px;border:1px solid #c2b7a5;border-radius:50%}.family-symbol i:first-child{left:5px;top:2px}.family-symbol i:nth-child(2){left:35px;top:2px}.family-symbol i:nth-child(3){left:20px;top:33px;width:14px;height:14px}.family-symbol:after{content:'';position:absolute;top:20px;left:15px;width:25px;height:16px;border:1px solid #c2b7a5;border-top:0}.pair-symbol i{position:absolute;width:33px;height:33px;border:1px solid #c2b7a5;border-radius:50%;left:4px;top:6px}.pair-symbol i:last-child{left:25px}.work-symbol i{position:absolute;width:12px;height:12px;border:1px solid #c2b7a5;border-radius:3px;top:5px;left:2px}.work-symbol i:nth-child(2){left:23px}.work-symbol i:nth-child(3){left:44px}.work-symbol:after{content:'';position:absolute;left:2px;right:9px;top:28px;height:1px;background:#c2b7a5}.visual-section{padding:90px 6%;background:var(--soft);border-block:1px solid var(--line)}.greeting-film-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.greeting-film{aspect-ratio:16/10;margin:0;position:relative;overflow:hidden;border-radius:18px;background:#ddd}.greeting-film video{width:100%;height:100%;object-fit:cover}.greeting-film:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#0009);pointer-events:none}.greeting-film figcaption{position:absolute;left:25px;right:90px;bottom:27px;color:white;font-size:13px;line-height:1.7;z-index:1}.motion-control{position:absolute;bottom:22px;right:22px;z-index:2;width:44px;height:44px;display:grid;place-items:center;border:1px solid #fff7;border-radius:50%;background:#0004;backdrop-filter:blur(12px);padding:0;color:#fff;font-size:19px}.visual-prompts{display:grid;grid-template-columns:1fr 1fr;gap:45px;margin-top:35px}.visual-prompts h3{font-size:21px;font-weight:500;letter-spacing:-.5px;margin:0 0 15px}.visual-prompts p{font-size:17px;line-height:1.85;letter-spacing:-.3px;color:#666;margin:0}.greeting-note{font-size:13px;color:#888;line-height:1.85;max-width:920px;margin-top:28px}.assembly-list{border-top:1px solid var(--line)}.assembly-list article{display:grid;grid-template-columns:65px 1fr;gap:30px;padding:30px 0;border-bottom:1px solid var(--line)}.assembly-list article>span{font-size:32px;color:#ccc;letter-spacing:-1px}.assembly-list h3{font-size:25px;font-weight:500;letter-spacing:-.6px;margin:0 0 15px}.assembly-list p{font-size:15px;line-height:1.85;color:#777;max-width:900px;margin:0}.send-check-section{border-top:1px solid var(--line)}.send-check-list{list-style:none;counter-reset:send;display:grid;grid-template-columns:repeat(3,1fr);gap:35px;padding:0;margin:0}.send-check-list li{counter-increment:send;border-top:1px solid var(--line);padding-top:22px}.send-check-list li:before{content:'0' counter(send);font-size:12px;color:#aaa}.send-check-list h3{font-size:22px;font-weight:500;letter-spacing:-.5px;margin:17px 0 14px}.send-check-list p{font-size:15px;color:#777;line-height:1.85;margin:0}.greeting-faq{padding-top:65px}.greeting-cta{padding:80px 6% 100px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:50px;overflow:hidden}.greeting-cta h2{font-size:clamp(40px,4.6vw,70px)}.greeting-cta p{font-size:17px;line-height:1.8;color:#777;margin:25px 0 30px}.greeting-envelope{flex:0 0 210px;height:160px;position:relative;display:grid;place-items:center}.greeting-envelope i{position:absolute;left:0;right:0;bottom:0;height:125px;border:1px solid #ccc;border-radius:7px;background:#f5f3ef}.greeting-envelope i:after{content:'';position:absolute;inset:0;background:#e9e4da;clip-path:polygon(0 0,50% 60%,100% 0)}.greeting-envelope span{position:absolute;width:130px;height:95px;top:0;background:#fff;border:1px solid #ddd;transform:rotate(-9deg)}.greeting-page .reveal{transition-duration:.6s}.js-motion .greeting-page .reveal:not(.visible){transform:translateY(20px)}
@media(max-width:1050px){.greeting-hero-picture{height:390px}.personal-section{gap:40px}.personal-example{padding:28px}.personal-example>div>p{font-size:20px}.recipient-grid{grid-template-columns:repeat(2,1fr);gap:35px}.greeting-steps{gap:25px}.occasion-wide{gap:30px}.greeting-film-grid{gap:20px}.visual-prompts{gap:30px}.send-check-list{gap:25px}.greeting-cta{padding:70px 5%}.greeting-envelope{flex-basis:170px}}
@media(max-width:760px){.greeting-hero{padding:130px 20px 0}.greeting-page h1{font-size:clamp(32px,7.8vw,58px);letter-spacing:-.055em;line-height:1.1}.greeting-lead{font-size:21px}.greeting-intro{font-size:15px}.greeting-hero-picture{height:290px;border-radius:16px;margin-top:40px}.greeting-hero-picture figcaption{left:18px;bottom:18px;font-size:11px;padding:10px 14px;max-width:calc(100% - 36px)}.occasion-grid{grid-template-columns:1fr;gap:35px}.occasion-card>div{padding-top:20px}.occasion-wide{display:block;grid-column:auto;margin-top:0;padding-top:0;border-top:0}.occasion-wide>div{padding-top:20px}.occasion-card h3{font-size:23px}.personal-section{grid-template-columns:1fr;padding:65px 22px;gap:30px}.personal-copy>p{max-width:none;font-size:15px}.personal-example{padding:25px}.greeting-steps{grid-template-columns:1fr;gap:35px}.step-paper{height:200px}.greeting-steps h3{font-size:22px}.recipient-grid{grid-template-columns:1fr;gap:28px}.recipient-grid p{font-size:15px}.visual-section{padding:65px 22px}.greeting-film-grid{grid-template-columns:1fr;gap:20px}.greeting-film figcaption{left:20px;bottom:24px;right:80px;font-size:12px}.motion-control{width:40px;height:40px;right:18px;bottom:18px}.visual-prompts{grid-template-columns:1fr;gap:30px}.visual-prompts p{font-size:16px}.assembly-list article{grid-template-columns:40px 1fr;gap:20px;padding:25px 0}.assembly-list article>span{font-size:25px}.assembly-list h3{font-size:23px}.send-check-list{grid-template-columns:1fr;gap:30px}.greeting-cta{display:block;padding:65px 22px}.greeting-cta h2{font-size:40px}.greeting-envelope{display:none}}
