:root{--orange:#ff6a38;--orange-dark:#dc4b27;--blush:#fff0f2;--pink:#ffc1bd;--pink-deep:#f58f8b;--paper:#fff;--ink:#562923;--muted:#795b56;--blue:#b9dbe0;--denim:#3d6c83;--line:rgba(86,41,35,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--blush);font-family:"DM Sans",sans-serif;line-height:1.55}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}.site-header{position:relative;z-index:10;display:flex;align-items:center;justify-content:space-between;max-width:1240px;margin:0 auto;padding:24px 32px}.brand{display:inline-flex;align-items:center;gap:10px;font:700 18px/1 "Fraunces",serif;text-decoration:none}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border:2px solid var(--ink);border-radius:50%;background:#fff;box-shadow:2px 3px 0 var(--ink)}nav{display:flex;gap:28px}nav a{color:var(--muted);font-size:14px;font-weight:700;text-decoration:none}nav a:hover{color:var(--orange-dark)}
.hero{display:grid;grid-template-columns:1.05fr .95fr;min-height:690px;max-width:1240px;margin:0 auto;padding:72px 32px 90px;align-items:center;overflow:hidden}.eyebrow{margin:0 0 18px;color:var(--orange-dark);font-size:14px;font-weight:800;letter-spacing:.16em}.hero h1,.found h2,.section-heading h2,.pass-one h2,.belief h2,.wall h2,.why h2,.steps h3{font-family:"Fraunces",serif;line-height:1.04}.hero h1{max-width:720px;margin:0;font-size:clamp(58px,7.3vw,104px);letter-spacing:-.045em}.hero h1 em{display:inline-block;color:var(--orange);font-family:"DM Sans",sans-serif;font-style:italic;font-weight:700;letter-spacing:-.035em}.lede{max-width:590px;margin:28px 0;color:var(--muted);font-size:clamp(18px,2vw,22px)}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:36px}.button{display:inline-flex;min-height:54px;align-items:center;justify-content:center;padding:0 24px;border:2px solid var(--ink);border-radius:999px;font-weight:700;text-decoration:none;box-shadow:4px 5px 0 var(--ink);transition:.18s ease}.button:hover{transform:translate(2px,2px);box-shadow:2px 3px 0 var(--ink)}.primary{background:var(--orange);color:#fff}.text-link{font-weight:700;text-underline-offset:5px}.signature{display:flex;align-items:center;gap:6px;margin:36px 0 0 4px;transform:rotate(-4deg)}.signature img{display:block;width:105px;height:auto}.signature span{font-size:22px}.signature.large{margin-top:28px}.signature.large img{width:125px}.signature.large span{font:700 16px "DM Sans",sans-serif}
.pocket-scene{position:relative;min-height:520px}.token{position:absolute;z-index:2;top:3px;left:50%;width:min(330px,66vw);aspect-ratio:1;transform:translateX(-50%) rotate(7deg);border:4px solid var(--ink);border-radius:50%;background:var(--orange);box-shadow:12px 15px 0 rgba(86,41,35,.16);animation:float 5s ease-in-out infinite}.token svg{display:block;width:100%}.pocket{position:absolute;z-index:3;left:5%;right:0;bottom:32px;height:245px;border:4px solid var(--ink);border-radius:22px 22px 90px 90px;background-color:var(--denim);background-image:repeating-linear-gradient(125deg,transparent 0 9px,rgba(255,255,255,.035) 10px 11px);box-shadow:14px 18px 0 var(--pink);transform:rotate(-2deg)}.stitch{position:absolute;inset:14px;border:3px dashed #f1cf96;border-radius:15px 15px 72px 72px;opacity:.8}.pocket-note{position:absolute;z-index:4;right:-10px;bottom:-24px;margin:0;padding:17px 21px;border:2px solid var(--ink);border-radius:22px;background:var(--pink-deep);color:var(--ink);font:700 16px/1.35 "DM Sans",sans-serif;box-shadow:5px 6px 0 var(--ink);transform:rotate(3deg)}.heart-pop{position:absolute;z-index:5;color:var(--orange);font-size:36px;line-height:1;animation:pop 3.7s ease-in-out infinite}.h-one{top:34px;left:7%}.h-two{top:150px;right:0;font-size:25px;animation-delay:.8s}.h-three{top:0;right:17%;font-size:18px;animation-delay:1.5s}@keyframes float{50%{transform:translateX(-50%) translateY(-9px) rotate(4deg)}}@keyframes pop{0%,100%{opacity:.15;transform:scale(.55) translateY(8px)}35%{opacity:1;transform:scale(1.12) translateY(-6px)}55%{transform:scale(1) translateY(-3px)}}
.belief{padding:100px 32px;text-align:center;background:var(--ink);color:#fff}.belief>p:first-child{color:var(--pink);font-size:14px;font-weight:800;letter-spacing:.18em}.belief h2{max-width:850px;margin:25px auto;font-size:clamp(40px,5vw,66px);letter-spacing:-.035em}.belief-note{font-size:19px}.found{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:95px max(32px,calc((100vw - 1176px)/2));border-bottom:2px solid var(--ink);background:var(--pink)}.found h2,.section-heading h2,.pass-one h2,.wall h2,.why h2{margin:0;font-size:clamp(40px,5vw,66px);letter-spacing:-.035em}.found>p{align-self:end;margin:0;font-size:19px}
.how{max-width:1240px;margin:0 auto;padding:120px 32px}.section-heading{max-width:760px;margin-bottom:58px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:stretch}.step-card{position:relative;display:flex;min-height:350px;flex-direction:column;padding:32px;overflow:hidden;border:2px solid var(--ink);border-radius:28px;background:#fff;box-shadow:7px 8px 0 var(--ink);text-decoration:none}.step-card:nth-child(2){background:#ffd9d7}.step-card:nth-child(3){background:#d5eaed}.step-number{position:absolute;top:16px;right:22px;color:rgba(86,41,35,.2);font:700 54px "Fraunces",serif}.mini-icon{margin-top:24px;font-size:48px}.steps h3{margin:24px 0 10px;font-size:34px}.steps p{margin:0;color:var(--muted);font-size:17px}.step-reveal{position:absolute;inset:auto 0 0;display:flex;min-height:115px;align-items:center;padding:26px;background:var(--orange);color:#fff;font-size:18px;font-weight:800;transform:translateY(102%);transition:transform .24s ease}.step-card:hover .step-reveal,.step-card:focus .step-reveal,.step-card:focus-visible .step-reveal{transform:translateY(0)}.hover-hint{margin:30px 0 0;color:var(--muted);font-size:14px;text-align:center}
.pass-one{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center;padding:115px max(32px,calc((100vw - 1176px)/2));background:var(--orange);color:#fff}.eyebrow.light{color:#fff}.message-copy>p{font-size:19px}.come-back{padding:17px 20px;border:2px solid var(--ink);border-radius:22px;background:var(--pink);color:var(--ink);font-weight:700;box-shadow:4px 5px 0 var(--ink)}.message-card{padding:42px;border:3px solid var(--ink);border-radius:25px;background:#fff;color:var(--ink);box-shadow:10px 11px 0 var(--ink);transform:rotate(1deg)}.tiny-label{margin:0 0 16px;color:var(--orange-dark);font-size:14px;font-weight:800;letter-spacing:.15em}blockquote{min-height:132px;margin:0;font:600 clamp(28px,3vw,42px)/1.15 "Fraunces",serif;letter-spacing:-.02em}.message-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:32px;padding-top:25px;border-top:1px solid var(--line)}button{border:0;background:none;color:var(--ink);font:700 14px "DM Sans",sans-serif;cursor:pointer}.shuffle{padding:10px 0}.shuffle span{display:inline-block;margin-right:5px;font-size:20px;transition:transform .3s}.shuffle:hover span{transform:rotate(180deg)}.copy{padding:13px 18px;border:2px solid var(--ink);border-radius:999px;background:var(--pink);box-shadow:3px 3px 0 var(--ink)}.copy:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}.copied{min-height:18px;margin:12px 0 -16px;color:var(--orange-dark);font-size:13px;font-weight:700;text-align:right}
.wall{padding:115px max(32px,calc((100vw - 1176px)/2));background:#fff}.wall-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end;margin-bottom:56px}.wall-heading>p{margin:0;color:var(--muted);font-size:18px}.love-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.love-note{position:relative;display:flex;min-height:260px;flex-direction:column;justify-content:space-between;margin:0;padding:27px;border:2px solid var(--ink);border-radius:25px;box-shadow:5px 6px 0 var(--ink);transition:transform .2s}.love-note:nth-child(even){transform:rotate(1.5deg)}.love-note:nth-child(odd){transform:rotate(-1deg)}.love-note:hover{transform:translateY(-5px) rotate(0)}.love-note span{color:var(--orange);font-size:28px}.love-note p{margin:15px 0;font:700 24px/1.2 "DM Sans",sans-serif}.love-note small{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.coral{background:#ffad9f}.pink{background:#ffd9d7}.blue{background:#d5eaed}.white{background:#fff}.wall-button{margin-top:42px;background:var(--pink)}
.why{display:grid;grid-template-columns:.9fr 1.1fr;gap:75px;align-items:center;padding:115px max(32px,calc((100vw - 1176px)/2));background:var(--pink)}.photo-wrap{position:relative}.photo-wrap img{display:block;width:100%;border:3px solid var(--ink);border-radius:35px;box-shadow:12px 14px 0 var(--orange)}.photo-label{position:absolute;right:-15px;bottom:-18px;padding:13px 18px;border:2px solid var(--ink);border-radius:999px;background:#fff;font-weight:800;box-shadow:4px 5px 0 var(--ink);transform:rotate(-3deg)}.why-copy>p:not(.eyebrow,.signature){font-size:18px}.why h2{margin-bottom:28px}
footer{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:center;padding:38px max(32px,calc((100vw - 1176px)/2));border-top:2px solid var(--ink);background:var(--ink);color:#fff}footer p{margin:0;font-size:13px;text-align:center}.footer-brand{justify-self:start}.footer-signoff{display:flex;align-items:center;justify-self:end;gap:5px}.footer-signoff img{width:78px;height:auto}.footer-signoff span{font-size:18px}:focus-visible{outline:4px solid var(--pink-deep);outline-offset:4px}
@media(max-width:900px){nav a:first-child{display:none}.hero{grid-template-columns:1fr;padding-top:45px}.pocket-scene{margin-top:65px}.found,.pass-one,.why,.wall-heading{grid-template-columns:1fr;gap:40px}.steps{grid-template-columns:1fr}.step-card{min-height:310px}.love-grid{grid-template-columns:repeat(2,1fr)}footer{grid-template-columns:1fr;text-align:center}.footer-brand,.footer-signoff{justify-self:center}}
@media(max-width:560px){.site-header{padding:18px 20px}.brand-mark{width:34px;height:34px}nav{display:none}.hero{padding:52px 20px 80px}.hero h1{font-size:clamp(54px,18vw,76px)}.lede{font-size:18px}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.pocket-scene{min-height:430px}.token{width:255px}.pocket{left:-10px;height:200px}.pocket-note{right:0;font-size:14px}.belief,.found,.how,.pass-one,.wall,.why{padding:82px 20px}.found h2,.section-heading h2,.pass-one h2,.belief h2,.wall h2,.why h2{font-size:41px}.message-card{padding:28px 23px}blockquote{min-height:180px;font-size:29px}.message-actions{align-items:stretch;flex-direction:column}.copy{width:100%}.love-grid{grid-template-columns:1fr}.love-note{min-height:220px}.photo-label{right:8px}.step-reveal{transform:none;position:relative;margin:24px -32px -32px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.token,.heart-pop{animation:none}.step-reveal{transition:none}}
