:root{--ink:#251f21;--muted:#585254;--rule:#eae9ea;--green:#4a776b;--paper:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:#f4efec;color:var(--ink);font:400 15px/1.7 Arial,Helvetica,sans-serif}main{background:var(--paper);max-width:1040px;padding:36px;margin:auto}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.025em;line-height:1.23}h1{font-size:48px;max-width:350px;margin:14px 0 20px}h2{font-size:25px;margin:0 0 16px}p{margin:0 0 18px}a{color:var(--green);text-underline-offset:4px;overflow-wrap:anywhere}a:hover{text-decoration-thickness:2px}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid var(--green);outline-offset:4px}.skip{position:absolute;top:-100px;left:10px;padding:10px;background:white;z-index:2}.skip:focus{top:10px}.identity{display:flex;justify-content:space-between;gap:12px;font-size:16px}.identity span{font-size:12px;color:var(--muted)}nav{display:flex;gap:22px;flex-wrap:wrap;border-bottom:1px solid var(--rule);margin:14px 0 30px}nav a{min-height:44px;display:flex;align-items:center;color:var(--muted);text-decoration:none}.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center}.eyebrow{font-size:11px;letter-spacing:.1em;font-weight:600;color:var(--muted);margin:0 0 12px}.intro{color:var(--muted)}.actions{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 0}.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 17px;border:1px solid var(--ink);border-radius:4px;background:var(--ink);color:white;text-decoration:none;font-size:14px;line-height:1.5}.button.secondary{background:white;color:var(--ink)}figure{margin:0}.portrait img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;object-position:50% 45%;display:block;border-radius:24px 24px 4px 4px}figcaption,.caption{font-size:12px;line-height:1.7;color:var(--muted);margin-top:10px}.bridge{margin:38px 0;padding:26px 0;border-block:1px solid var(--rule);font-size:20px;line-height:1.6}.bridge strong,.signature{color:var(--green);font-weight:600}.pathways{display:grid;grid-template-columns:1fr 1fr;gap:36px}.pathways section{min-width:0}.offer-list{list-style:none;padding:0;margin:18px 0}.offer-list li{padding:10px 0}.offer-list strong,.offer-list span{display:block}.offer-list span{color:var(--muted)}.club-mark{display:block;width:100%;max-width:390px;height:auto;margin:0 0 22px}.club-note{color:var(--muted);padding:0 0 8px}.memories{margin-top:40px}.gallery{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x proximity;padding:3px 3px 12px}.gallery button{border:0;background:none;padding:0;flex:none;scroll-snap-align:start}.gallery img{height:230px;width:auto;max-width:85vw;object-fit:contain;display:block;border-radius:12px}#about{padding-top:28px;margin-top:25px;border-top:1px solid var(--rule)}.conversation{padding:26px 0;margin:26px 0;border-block:1px solid var(--rule)}.conversation .caption{margin-bottom:0}footer p{color:var(--muted);margin:4px 0}footer{font-size:14px}dialog{border:0;padding:56px 20px 18px;background:#171516;color:white;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0}dialog::backdrop{background:#171516}#full-photo{display:block;max-width:100%;width:auto;max-height:calc(100dvh - 170px);height:auto;object-fit:contain;margin:auto}.close{position:absolute;right:12px;top:8px;width:44px;height:44px;border:0;background:transparent;color:white;font-size:24px}.viewer-controls{display:flex;justify-content:center;gap:24px;align-items:center;margin-top:10px}.viewer-controls button{background:transparent;color:white;border:1px solid #777;border-radius:4px;width:44px;height:44px}.viewer-controls p{margin:0}.viewer-title{text-align:center;font-size:13px;margin:10px 0 0}body:has(dialog[open]){overflow:hidden}@media(max-width:700px){main{padding:24px}.identity{flex-direction:column;gap:2px}.hero{grid-template-columns:1fr;gap:26px}h1{font-size:36px;max-width:270px}h2{font-size:23px}.portrait img{aspect-ratio:4/3}.pathways{grid-template-columns:1fr;gap:24px}.pathways section+section{border-top:1px solid var(--rule);padding-top:24px}.actions{flex-direction:column;align-items:stretch}.bridge{font-size:18px;margin:28px 0}nav{gap:2px 18px;margin-bottom:26px}.gallery img{height:210px}main{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@font-face{font-family:'Jolynne Emoji';src:url('assets/emoji.ttf') format('truetype');font-display:swap}body{font-family:Arial,Helvetica,'Jolynne Emoji',sans-serif}
