:root{--background:#f8f6f0;--foreground:#172e36;--primary:#254c50;--primary-foreground:#fff;--border:#cccfc7;--input:#9baba8;--ring:#ad542f;--card:#fff;--card-foreground:#172e36;--muted:#efede5;--muted-foreground:#526264;--radius:.25rem}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--background);color:var(--foreground);font:16px/1.6 Arial,Helvetica,sans-serif}a{color:inherit}button,input,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #b75930;outline-offset:4px}button:disabled{opacity:.55;cursor:wait}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,serif;font-weight:400}h2{font-size:clamp(2.5rem,4.5vw,4rem);line-height:1.1;letter-spacing:-.035em;margin-bottom:24px}h3{font-size:1.55rem;line-height:1.2}p{color:#4b5c5e}header{max-width:1320px;padding:28px 48px;margin:auto;display:flex;justify-content:space-between;gap:30px;align-items:center;border-bottom:1px solid #ccd1ca}.brand{text-decoration:none;font-size:.75rem;letter-spacing:.13em;line-height:1.5}.brand strong{display:block;font-size:1.1rem}nav{display:flex;gap:32px;font-size:.9rem}nav a{text-decoration:none}.hero{max-width:1280px;display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:center;margin:auto;padding:65px 48px 70px}.eyebrow{font-size:.76rem;letter-spacing:.15em;font-weight:700;color:#8d482d;margin-bottom:25px}h1{font-size:clamp(3.6rem,6.6vw,6.2rem);line-height:1.01;letter-spacing:-.055em;margin-bottom:26px}h1 em{color:#346166}.dates{font-size:.76rem;letter-spacing:.12em;margin-bottom:28px}.intro{font:1.4rem/1.45 Georgia,serif;color:#263d43;margin-bottom:16px}.description{max-width:460px;margin-bottom:26px}.button{cursor:pointer;background:#244e51;color:white;border:0;padding:14px 22px;text-decoration:none;display:inline-block;font-size:.95rem}.button:hover{background:#183b3e}.text-link{display:block;margin-top:17px;text-underline-offset:5px;font-size:.9rem}.hero figure{margin:0;padding:12px 25px 0;transform:rotate(2deg)}.photo-mat{background:#fff;padding:18px;box-shadow:0 16px 40px #172e3620;border:1px solid #deddd5}.hero img{display:block;width:100%;height:390px;object-fit:contain;background:#edeae2}.photo-mat small{display:block;font-size:.65rem;letter-spacing:.15em;color:#706f67;margin-top:15px}.photo-mat span{font:1.05rem Georgia,serif}.hero figcaption{font-size:.75rem;margin-top:14px;color:#61716f;text-align:center}.teams{background:#193d41;color:white;display:grid;grid-template-columns:repeat(4,1fr);gap:30px;padding:30px max(48px,calc((100vw - 1184px)/2));align-items:center}.teams>span{font-size:.7rem;letter-spacing:.13em;color:#bcd0cb;line-height:1.9}.teams>div{font:1.2rem Georgia,serif}.teams small{display:block;font: .8rem Arial,sans-serif;color:#c1d0c8;margin-top:10px}.section{max-width:1280px;margin:auto;padding:80px 48px}.section-heading{display:flex;justify-content:space-between;gap:50px;align-items:center;margin-bottom:45px}.section-heading>p{max-width:410px}.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}.timeline article{border-top:2px solid #b8c5bb;padding-top:22px}.year{font-size:.8rem;letter-spacing:.08em;font-weight:700;color:#925134;display:block;margin-bottom:20px}.timeline p{font-size:.95rem}.totals{border-block:1px solid #c9cfc7;display:flex;align-items:center;justify-content:space-between;padding:26px 0;margin-top:34px;gap:25px}.totals>span{font-size:.75rem;letter-spacing:.1em;max-width:140px}.totals strong{display:block;font:2.7rem/1.2 Georgia,serif}.totals small{font-size:.8rem;color:#546563}.source{font-size:.75rem;margin:15px 0 0}.remembrance{background:#e8ebe2;padding:65px max(48px,calc((100vw - 1184px)/2));display:grid;grid-template-columns:1fr 1fr;gap:0 75px}.remembrance .eyebrow{grid-column:1/-1}.remembrance h2{font-style:italic}.guestbook-layout{display:grid;grid-template-columns:1fr 1fr;gap:65px}.memory-list{display:grid;align-content:start;gap:25px}.empty-note{padding:30px 0;border-block:1px solid #b7c1ba}.empty-note h3{margin-bottom:10px}.empty-note p{margin-bottom:0}.memory-card{padding:26px;background:#fff;border:1px solid #d8dcd4}.memory-card p{white-space:pre-wrap;overflow-wrap:anywhere}.memory-card img{max-width:100%;max-height:420px;object-fit:contain;margin-bottom:15px}.memory-card h3{font-size:1.2rem;margin:0}.memory-card small{color:#5a6d6b}.memory-form{background:#fff;padding:32px;border:1px solid #d5d9d0}.memory-form h3{font-size:1.75rem;margin-bottom:8px}.memory-form>p{font-size:.9rem}.field{display:block;margin-top:20px;font-size:.9rem;font-weight:600}.field small{font-weight:400;color:#62716c}input:not([type=checkbox]),textarea{display:block;width:100%;border:1px solid #aebbb5;background:#fafbf7;border-radius:2px;padding:11px 12px;margin-top:8px;color:#172e36}textarea{min-height:150px;resize:vertical}.consent{display:flex;align-items:flex-start;gap:12px;font-size:.82rem;margin:22px 0}.consent button{margin-top:4px}.form-message{margin-top:16px;font-size:.9rem}.error{color:#98321e}.success{color:#245846}.actions{display:flex;gap:12px;margin-top:20px;flex-wrap:wrap}.secondary-button{background:transparent;border:1px solid #849e97;color:#254c50;padding:10px 16px;cursor:pointer}footer{border-top:1px solid #cbd1c8;padding:32px max(48px,calc((100vw - 1184px)/2));display:flex;justify-content:space-between;gap:24px;font-size:.8rem}footer strong{font:1.1rem Georgia,serif;display:block}footer span{display:block;margin-top:4px;color:#61716b}.review{max-width:950px}.review-list{display:grid;gap:24px}.trap{display:none}
@media(max-width:850px){header{padding:22px 24px}nav{gap:16px}.hero{padding:45px 24px;gap:25px}.hero figure{padding:0}.hero img{height:310px}.teams{padding:25px 24px;gap:18px}.teams>div{font-size:1rem}.section{padding:58px 24px}.timeline{grid-template-columns:1fr 1fr}.remembrance{padding:45px 24px;gap:24px}.guestbook-layout{gap:28px}.memory-form{padding:24px}footer{padding:28px 24px}}@media(max-width:600px){header{align-items:flex-start}nav{gap:6px;flex-direction:column;align-items:flex-end;font-size:.8rem}.hero{grid-template-columns:1fr;gap:35px;padding-top:38px}h1{font-size:4.2rem}.hero figure{max-width:350px;width:90%;margin:auto}.hero img{height:330px}.teams{grid-template-columns:1fr 1fr;gap:22px}.section-heading{display:block;margin-bottom:30px}.timeline{gap:24px}.timeline h3{font-size:1.3rem}.totals{flex-wrap:wrap}.totals>span{flex-basis:100%;max-width:none}.totals strong{font-size:2rem}.remembrance{grid-template-columns:1fr;gap:0}.guestbook-layout{grid-template-columns:1fr;gap:35px}.eyebrow{letter-spacing:.1em}footer{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Family photographs, paired at the top and collected in the baseball album. */
.hero{grid-template-columns:1fr 1.2fr;gap:45px}
.hero-portraits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start;min-width:0}
.hero .hero-portraits figure{padding:0;width:100%;max-width:none;margin:0;transform:rotate(-2deg)}
.hero .hero-portraits figure:nth-child(2){transform:rotate(2deg);margin-top:40px}
.portrait-mat{padding:10px;background:white;box-shadow:0 12px 28px #172e361c;border:1px solid #deddd5}
.hero .hero-portraits img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:center 25%;background:#e7e7e1}
.hero .hero-portraits figcaption{margin:0;padding:14px 2px 9px;text-align:left;color:#263d43}
.portrait-mat small{display:block;font-size:.7rem;letter-spacing:.08em;color:#61716b}
.portrait-mat span{font:1.2rem/1.5 Georgia,serif}
.portrait-note{grid-column:1/-1;text-align:center;font:italic 1.1rem Georgia,serif;margin:8px 0 0;color:#5b6d67}
.baseball-album{border-top:1px solid #d0d6cc}
.baseball-collage{display:grid;grid-template-columns:1.25fr 1fr;gap:55px;align-items:start;max-width:940px;margin:15px auto 20px;padding:10px}
.album-photo{margin:0;background:white;padding:15px;box-shadow:0 12px 28px #172e3614;border:1px solid #deddd5;transform:rotate(-1.5deg)}
.album-photo:nth-child(even){transform:rotate(2deg);margin-top:75px}
.album-photo>a{display:block}.album-photo img{display:block;width:100%;height:auto}.album-photo figcaption{padding:18px 6px 8px}.album-photo strong{display:block;font:1.4rem/1.3 Georgia,serif}.album-photo span{display:block;font-size:.8rem;color:#61716b;margin-top:7px}
@media(max-width:1000px){.hero{grid-template-columns:1fr;gap:45px}.hero>div:first-child{max-width:680px}.hero-portraits{max-width:680px;width:100%;margin:auto}.hero .hero-portraits img{aspect-ratio:3/4}.baseball-collage{gap:30px}}
@media(max-width:600px){.hero-portraits{gap:12px}.portrait-mat{padding:7px}.hero .hero-portraits figure:nth-child(2){margin-top:24px}.hero .hero-portraits figcaption{padding:11px 2px 5px}.portrait-mat small{font-size:.65rem;letter-spacing:.02em}.portrait-mat span{font-size:1rem}.portrait-note{font-size:1rem}.baseball-collage{gap:22px;padding:5px;grid-template-columns:1fr}.album-photo{max-width:400px;width:94%;margin:auto}.album-photo:nth-child(even){width:80%;margin:0 auto 5px}.album-photo strong{font-size:1.25rem}}
/* The expanded family collection keeps every original image uncropped. */
.baseball-collage{display:block;columns:3;column-gap:28px;max-width:1120px;padding:10px 8px;margin:15px auto 20px}
.baseball-collage .album-photo{display:inline-block;break-inside:avoid;width:100%;max-width:none;margin:8px 0 24px;padding:11px;transform:rotate(-1deg)}
.baseball-collage .album-photo:nth-child(even){margin-top:8px;transform:rotate(1deg)}
.baseball-collage .album-photo:nth-child(3n){transform:rotate(-.5deg)}
.baseball-collage .album-photo strong{font-size:1.2rem}
.baseball-collage .album-photo figcaption{padding:15px 5px 7px}
.baseball-collage .album-clipping{column-span:none}
.baseball-collage .album-clipping strong{font-size:1.2rem}
@media(max-width:850px){.baseball-collage{columns:2;column-gap:24px}}
@media(max-width:540px){.baseball-collage{columns:1;padding:8px;max-width:420px}.baseball-collage .album-photo{margin-bottom:25px}.baseball-collage .album-clipping{padding:10px}.baseball-collage .album-clipping strong{font-size:1.3rem}}


.notice{padding:18px;border:1px solid #afc6b6;background:#edf4ec}.consent input[type=checkbox]{flex-shrink:0;width:18px;height:18px;margin-top:4px}.login-form{max-width:470px;margin:35px auto}.review h1{font-size:3.5rem}.review-nav{display:flex;gap:20px;flex-wrap:wrap;margin:25px 0}.review-list{margin-top:25px}.small-form{display:inline-block}button{line-height:1.5}a.secondary-button{text-decoration:none}body{overflow-wrap:break-word}img{max-width:100%}
.login-form label{display:block;margin-bottom:20px}.login-form input{display:block;width:100%;padding:10px;border:1px solid #9baba8;background:white}.memory-grid{display:grid;gap:24px}.review-nav [aria-current=page]{font-weight:bold;text-decoration:underline}
