:root{--cream:#f4f0e5;--ink:#243d30;--orange:#c85635;--muted:#686f61;--line:#cdd0bf}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid var(--orange);outline-offset:6px}.skip{position:absolute;left:20px;top:-100px;background:var(--cream);padding:15px;z-index:100}.skip:focus{top:10px}header{max-width:1440px;margin:auto;padding:25px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{font-family:Georgia,serif;font-size:46px;letter-spacing:-4px;font-weight:bold;line-height:1}.wordmark span{font-family:Arial,sans-serif;color:var(--orange);font-size:30px;margin-left:8px;vertical-align:top;letter-spacing:0}nav{display:flex;gap:32px;font-size:13px}nav a:hover{text-decoration:underline;text-underline-offset:6px}.header-note,.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.7px}.hero{max-width:1440px;margin:auto;padding:78px 7% 76px;display:grid;grid-template-columns:1.05fr 1fr;gap:50px;align-items:center}.eyebrow{margin:0 0 25px}.dot{display:inline-block;width:7px;height:7px;background:var(--orange);border-radius:50%;margin-right:8px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400}h1{font-size:clamp(64px,6.6vw,100px);letter-spacing:-5px;line-height:.99;margin-bottom:30px}em{font-weight:400;color:var(--orange)}.lead{font-size:15px;line-height:1.8;color:var(--muted);margin-bottom:28px}.hero-actions{display:flex;align-items:center;gap:24px}.button{display:inline-flex;gap:34px;align-items:center;background:var(--ink);color:var(--cream);padding:18px 22px;font-size:12px;border-radius:3px}.button:hover{background:#365540}.button span{font-size:22px;line-height:1}.pat{cursor:pointer;background:none;border:0;border-bottom:1px solid var(--ink);padding:10px 0;font-size:12px;white-space:nowrap}.pat span{font-size:21px;padding-left:7px}.pat-status{font-size:11px;margin:17px 0 0;color:var(--muted);min-height:18px}.portrait{position:relative;max-width:480px;padding:10px 10px 25px}.portrait:before{content:'';position:absolute;inset:45px -20px 28px 20px;border-radius:48% 48% 5px 5px;background:#e0e3cc;transform:rotate(7deg)}.photo-frame{position:relative;padding:12px 12px 0;background:#fffcf4;transform:rotate(3deg);box-shadow:0 10px 24px #253e3014}.photo-frame>img{display:block;width:100%;height:440px;object-fit:cover;object-position:50% 43%}.photo-label{display:block;padding:17px 0;font-size:9px;letter-spacing:1.3px;text-align:center}.stamp{position:absolute;right:-35px;bottom:50px;background:var(--orange);color:#fff5df;width:123px;height:123px;border-radius:50%;transform:rotate(-13deg);display:flex;align-items:center;justify-content:center;flex-direction:column;border:1px dashed #fff8;outline:7px solid var(--orange)}.stamp>span{font-size:8px;letter-spacing:2px}.stamp strong{font-family:Georgia,serif;font-size:24px;text-align:center;line-height:.95;margin:9px 0;font-weight:400}.handwritten{position:relative;display:block;margin:23px 0 0 -22px;font-family:Georgia,serif;font-style:italic;font-size:15px;transform:rotate(-5deg)}.ticker{background:var(--ink);color:var(--cream);display:flex;align-items:center;justify-content:space-around;gap:32px;padding:22px;overflow:hidden;white-space:nowrap;font-size:10px;letter-spacing:2px}.ticker i{color:#d5a17c;font-size:24px;font-style:normal;line-height:1}.about{max-width:1300px;margin:auto;padding:95px 6%;display:grid;grid-template-columns:.5fr 1.5fr 1fr;gap:45px;align-items:start}.about>.eyebrow{padding-top:12px}h2{font-size:clamp(40px,4.5vw,62px);line-height:1.07;letter-spacing:-2px;margin-bottom:26px}.about p:not(.eyebrow){font-size:14px;line-height:1.8;max-width:400px;color:var(--muted)}.note{background:#e7e8d6;padding:30px;transform:rotate(-4deg);text-align:center;align-self:center}.note>span{color:var(--orange);font-size:40px}.note p:not(.eyebrow){font-family:Georgia,serif;font-size:23px;color:var(--ink);line-height:1.35;margin:14px 0 22px}.note small{font-size:8px;letter-spacing:1.6px}.album{max-width:1300px;margin:auto;padding:30px 6% 90px}.album-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:32px}.album-heading h2{margin-bottom:0}.album-heading>p{font-size:12px;line-height:1.8;color:var(--muted)}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.photo-card{cursor:pointer;background:none;border:0;padding:0;text-align:left}.image-wrap{overflow:hidden;position:relative;background:#ddd}.image-wrap img{display:block;width:100%;height:330px;object-fit:cover;transition:transform .35s}.photo-card:nth-child(2) img{object-position:35% 50%}.photo-card:hover img{transform:scale(1.04)}.expand{position:absolute;bottom:12px;right:12px;background:var(--cream);border-radius:50%;width:32px;height:32px;display:grid;place-items:center}.caption{padding:20px 0}.caption>span{font-size:8px;letter-spacing:1.5px;color:var(--muted)}h3{font-size:21px;margin:10px 0 0;letter-spacing:-.4px}.signoff{position:relative;overflow:hidden;background:#e3e6d3;padding:65px 8%;text-align:center}.signoff h2{font-size:clamp(50px,6vw,85px)}.signoff>a{font-size:11px;border-bottom:1px solid var(--ink);padding-bottom:5px}.giant-star{position:absolute;right:9%;bottom:40px;font-size:140px;color:var(--orange);transform:rotate(-10deg)}footer{padding:35px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px}footer .wordmark{font-size:32px}footer .wordmark span{font-size:20px}footer p{font-size:11px;color:var(--muted);margin:0}footer>span{font-size:8px;letter-spacing:1.3px}dialog{padding:20px;background:var(--cream);border:0;max-width:min(90vw,900px);max-height:92vh;overflow:auto}dialog::backdrop{background:#102117de}dialog img{display:block;max-width:100%;max-height:75vh;margin:auto;object-fit:contain}dialog p{font-family:Georgia,serif;font-size:20px;margin:18px 35px 0 0}.close{position:absolute;top:25px;right:25px;border:0;border-radius:50%;width:40px;height:40px;background:var(--cream);font-size:28px;cursor:pointer}@media(min-width:1600px){.hero{padding-left:100px;padding-right:100px}}@media(max-width:1000px){.header-note{display:none}.hero{gap:24px;padding:60px 6%}.photo-frame>img{height:390px}.stamp{right:-5px;width:100px;height:100px}.stamp strong{font-size:20px}h1{font-size:68px}.hero-actions{gap:15px}.button{gap:15px}.about{grid-template-columns:1.5fr 1fr}.about>.eyebrow{grid-column:1/-1;margin-bottom:0}.image-wrap img{height:270px}.giant-star{right:2%;font-size:95px}}@media(max-width:650px){header{padding:20px 6%}.wordmark{font-size:40px}nav{gap:20px;font-size:11px}.hero{grid-template-columns:1fr;padding:45px 7% 50px;gap:42px}h1{font-size:74px;letter-spacing:-4px}.lead{font-size:14px}.hero-actions{gap:25px}.button{padding:17px 20px}.portrait{width:95%;max-width:400px;margin:auto}.photo-frame>img{height:365px}.stamp{right:-10px;bottom:45px;width:110px;height:110px}.stamp strong{font-size:23px}.handwritten{margin-left:0;font-size:13px}.ticker{justify-content:start;gap:24px;padding:19px;font-size:9px}.about{grid-template-columns:1fr;padding:55px 7%;gap:24px}.about>.eyebrow{margin-bottom:0}.about h2{font-size:47px}.note{max-width:300px;width:90%;justify-self:center;margin:10px 0}.album{padding:25px 7% 50px}.album-heading{display:block;margin-bottom:30px}.album-heading>p{margin:18px 0 0}.album-heading h2{font-size:43px}.photo-grid{grid-template-columns:1fr;gap:18px}.image-wrap img{height:380px}.caption{padding:18px 0}.signoff{padding:55px 7% 75px}.signoff h2{font-size:52px}.giant-star{right:-20px;bottom:0;font-size:90px;opacity:.5}footer{flex-wrap:wrap;padding:28px 7%}footer p{max-width:210px;line-height:1.5}footer>span{width:100%;text-align:center;border-top:1px solid var(--line);padding-top:22px;margin-top:5px}.desktop{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
@media(max-width:650px){h1{font-size:clamp(56px,17vw,68px);letter-spacing:-3.5px}.hero{overflow:hidden}}
