/* Source page map and typographic hierarchy. Keep the requested +2px reading size. */
[hidden]{display:none!important}.accent{color:var(--brand-orange);font-style:normal;font-family:inherit}main>.section{scroll-margin-top:105px}header #navigation{gap:30px}header #navigation a{white-space:nowrap}header #navigation a[aria-current=page]{color:var(--brand-orange);font-weight:600}
.hero .hero-copy>h1{font-size:62px;line-height:1;font-weight:900;letter-spacing:-.035em;color:var(--brand-orange)}.hero .hero-copy>h1 span{color:inherit}.hero .hero-subtitle{font-size:32px;font-weight:700;line-height:1.25;letter-spacing:-.025em}.hero .hero-subtitle em{font-style:normal;font-family:inherit}.hero-actions{flex-wrap:wrap;gap:12px}.hero-wish{background:#fffdf5;color:#a86629;border:1px solid #d7bea0}.hero-quote{font-size:18px}
#story .section-heading{display:block}#story h2{font-size:98px;line-height:1.05;font-weight:900;letter-spacing:-.045em}#story .story-copy h3{font-size:22px;font-weight:700;line-height:1.4;color:var(--brand-orange);letter-spacing:-.02em}#story .story-copy p{font-size:18px;line-height:1.85}#story .story-copy strong{font-weight:600;color:#383b34}.story-grid{align-items:center}
#letter{align-items:start;gap:6%;grid-template-columns:5fr 7fr}#letter .letter-profile{min-width:0}#letter .portrait{width:100%;height:520px;min-height:0}#letter .portrait>div h3{font-size:22px;line-height:1.4;font-weight:700;color:#fff;letter-spacing:-.025em}#letter .portrait>div span{font-size:14px;line-height:1.7}#letter .letter-profile-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:20px}#letter .letter-profile-actions .button{font-size:14px;gap:12px}#letter .letter-profile-actions .text-button{font-size:14px}#letter .letter-copy{background:#fffaf580;border:1px solid #d9cdbc;border-radius:16px;padding:32px;min-width:0}#letter .letter-copy>.eyebrow{font-size:14px;font-weight:700;line-height:1.6;letter-spacing:.09em;margin-bottom:20px}#letter .letter-copy>h4{font-size:22px;font-weight:700;line-height:1.45;letter-spacing:-.02em;margin:0 0 22px}#letter .letter-copy>p:not(.eyebrow){font-size:16px;line-height:1.8;margin:0 0 20px}#letter .letter-excerpt-end{display:flex;justify-content:space-between;align-items:start;gap:20px;border-top:1px solid #d9cdbc;padding-top:18px}#letter .letter-excerpt-end p{font-size:14px;font-style:italic;line-height:1.7}#letter .letter-excerpt-end .text-button{white-space:nowrap;font-size:14px;padding:0;color:var(--brand-orange)}
#home-journey .section-heading{display:block;margin-bottom:20px}#home-journey .section-heading h2{font-size:38px;font-weight:700;line-height:1.2;letter-spacing:-.025em;max-width:900px}#home-journey .intro{font-size:18px;line-height:1.8;max-width:760px;margin-top:20px}#home-journey .journey-full-link{margin:0 0 28px;font-size:14px}#home-journey .milestone-copy h3{font-size:32px;font-weight:700;line-height:1.3;letter-spacing:-.025em}#home-journey .milestone-copy p{font-size:18px;line-height:1.8}#home-journey #milestone-key{font-size:14px;font-weight:700}#home-journey .milestone-photo{position:relative;display:block;margin:0;padding:0;overflow:hidden;border-radius:12px;min-height:350px;aspect-ratio:4/3;background:#d9d0c2}#home-journey .milestone-photo>img{height:100%;width:100%;object-fit:cover}#home-journey .milestone-photo>#big-year{position:absolute;left:22px;top:20px;font-size:42px;line-height:1;font-weight:700;letter-spacing:-.03em;color:#fff;text-shadow:0 1px 8px #0009}#home-journey .milestone-photo>figcaption{position:absolute;inset:auto 0 0;padding:24px 20px 18px;background:linear-gradient(transparent,#29231cce);font-size:14px;color:#fff;line-height:1.6}
#home-moments .section-heading{grid-template-columns:1fr auto;align-items:end;gap:35px}#home-moments h2{font-size:50px;line-height:1.1;font-weight:800;letter-spacing:-.035em}#home-moments .intro{font-size:18px;line-height:1.8;max-width:760px;margin-top:24px}#home-moments .section-heading>.text-button{font-size:16px;white-space:nowrap;color:var(--brand-orange)}.home-moments-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:15px}.home-moments-grid button{padding:0;background:#ded4c5;border-radius:10px;overflow:hidden;aspect-ratio:3/4}.home-moments-grid img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.home-moments-grid button:hover img{transform:scale(1.04)}
#people h2{font-size:50px;font-weight:900;line-height:1.1;letter-spacing:-.035em}#people .intro{font-size:18px;line-height:1.8}#people .intro strong{font-weight:700}.builders-controls{border:0;display:block}.builders-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-block:1px solid #d6cbb9;width:100%;background:#fff9}.builders-tabs button{justify-content:center;padding:25px;border-right:1px solid #d6cbb9;border-bottom:3px solid transparent;margin-bottom:-1px}.builders-tabs button:last-child{border-right:0}.builders-tabs button strong{font-size:50px;font-weight:900;letter-spacing:-.035em}.builders-tabs button span{font-size:32px;font-weight:700}#builders-count{text-align:left;font-size:14px;max-width:none;margin-top:22px;padding:0}.builders-carousel-actions{display:flex;justify-content:flex-end;gap:10px;margin:0 0 18px}.builders-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:18px;padding-bottom:12px}.builder-card{flex:0 0 calc((100% - 72px)/5);scroll-snap-align:start}.builder-info h3{font-size:20px;font-weight:700}.builder-info p{font-size:14px}.builders-source-note{font-size:12px}
#home-wishes h2{font-size:50px;font-weight:700;line-height:1.2;letter-spacing:-.025em;max-width:1000px}#home-wishes>p:not(.eyebrow){font-size:18px;line-height:1.8}#home-wishes>.eyebrow{font-size:14px;font-weight:700}
#moments>.section-heading,#wish-wall-section>.section-heading{display:block;text-align:center}#moments h1,#journey h1,#wish-wall-section h1{font-size:50px;line-height:1.1;font-weight:700;letter-spacing:-.025em;margin:18px auto 22px;max-width:1000px}#moments>.section-heading .eyebrow,#journey .journey-overview>.eyebrow,#wish-wall-section .section-heading .eyebrow{font-size:14px;font-weight:600;line-height:1.6}#moments .intro,#wish-wall-section .wall-intro{font-size:18px;line-height:1.8;max-width:850px;margin:0 auto}#moments .moments-top-actions{justify-content:center;margin:0 0 35px}#wish-wall-section h1{font-weight:800}#wish-wall-section .greetings-actions{margin-top:28px}#wish-wall-section .greeting-person-info h3{font-size:16px;font-weight:700}#wish-wall-section .greeting-message{font-size:16px}
#journey .journey-overview{text-align:center;margin-bottom:40px}#journey .journey-overview-copy{max-width:820px;font-size:18px;line-height:1.8;margin:0 auto 40px}#journey .scale-comparison{background:#fffaf580;border-radius:16px;border-color:#d9cdbc}#journey .scale-heading h3{font-size:22px;font-weight:700;line-height:1.4;letter-spacing:-.02em}#journey .scale-heading>.eyebrow{font-size:14px;font-weight:600}#journey .scale-card{text-align:left}#journey .scale-card h4{font-size:14px;margin-bottom:16px}#journey .scale-before{font-size:14px}#journey .scale-after{gap:7px;margin-bottom:16px}#journey .scale-after>span{font-size:14px}#journey .scale-after>strong{font-size:20px;min-height:0;font-weight:700;line-height:1.4;letter-spacing:-.015em}#journey .scale-note{font-size:12px;line-height:1.8}
.journey-filters{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:0 0 45px}.journey-filters button{font-size:14px;font-weight:500;line-height:1.5;padding:12px 18px;border:1px solid #d7c9b4;background:#fffaf580;border-radius:999px;color:#756650}.journey-filters button[aria-pressed=true]{background:var(--brand-orange);border-color:var(--brand-orange);color:#fff}.history-timeline{border-left:2px solid #d9c9b2;margin-left:110px;padding-left:30px}.history-row{position:relative;margin-bottom:35px}.history-row:before{content:'';position:absolute;left:-40px;top:25px;border-radius:50%;width:16px;height:16px;border:2px solid #cb8437;background:#f6ede0;box-shadow:0 0 0 4px #f6ede0}.history-date{position:absolute;right:calc(100% + 54px);top:20px;text-align:right;min-width:90px}.history-date strong{font-size:24px;line-height:1.4;font-weight:800}.history-date span{display:block;font-size:12px;line-height:1.8;color:#92816b}.history-card{display:grid;grid-template-columns:4fr 8fr;gap:25px;padding:28px;border:1px solid #d9cdbc;border-radius:16px;background:#fffaf580}.history-photo{margin:0;min-width:0}.history-photo img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:10px}.history-photo figcaption{font-size:12px;line-height:1.7;color:#98876e;margin-top:10px}.history-copy{min-width:0}.history-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px}.history-meta span{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#b47530}.history-meta strong{font-size:14px;font-weight:700;color:#bd762a}.history-copy h3{font-size:26px;line-height:1.3;font-weight:700;letter-spacing:-.025em;margin-bottom:16px}.history-copy p{font-size:16px;line-height:1.85;margin:0 0 14px}.history-copy .history-summary{font-weight:500}.history-recorded{grid-column:1/-1;border-top:1px solid #ded3c2;padding-top:14px;text-align:right;font-size:12px;color:#98876e}
.footer-membership{font-size:14px;line-height:1.8;margin:24px 0;color:#978267}.footer-page-links{display:flex;flex-wrap:wrap;gap:15px 25px;border-block:1px solid #d9d0c0;padding:24px 0;margin:25px 0}.footer-page-links p{flex-basis:100%;font-size:14px;font-weight:700}.footer-page-links a{font-size:14px}.footer-bottom{flex-wrap:wrap;gap:15px}.footer-bottom span{font-size:12px}
@media(max-width:1100px){#story h2{font-size:74px}.hero .hero-copy>h1{font-size:50px}#letter .portrait{height:460px}.builder-card{flex-basis:calc((100% - 36px)/3)}.home-moments-grid{grid-template-columns:repeat(5,minmax(140px,1fr));overflow-x:auto;padding-bottom:12px}.history-card{grid-template-columns:1fr;gap:20px}.history-photo img{max-height:280px}.history-copy h3{font-size:26px}}
@media(max-width:800px){#story h2{font-size:62px}#story .story-copy p{font-size:16px}.hero .hero-copy>h1{font-size:44px}.hero .hero-subtitle{font-size:26px}#letter{grid-template-columns:1fr;gap:30px}#letter .portrait{max-width:500px;height:520px}#letter .letter-copy{padding:26px}#letter .letter-copy>h4{font-size:20px}#home-journey .section-heading h2{font-size:32px}#home-journey .intro{font-size:16px}#home-journey .milestone-copy h3{font-size:26px}#home-journey .milestone-copy p{font-size:16px}#home-moments h2,#people h2,#home-wishes h2{font-size:38px}#home-moments .intro,#people .intro,#home-wishes>p:not(.eyebrow){font-size:16px}#home-moments .section-heading{grid-template-columns:1fr;gap:16px}#home-moments .section-heading>.text-button{justify-self:start}.builders-tabs button strong{font-size:38px}.builders-tabs button span{font-size:26px}.builders-tabs button{padding:20px 10px}#builders-count{font-size:12px}.builder-card{flex-basis:calc((100% - 18px)/2)}#moments h1,#journey h1,#wish-wall-section h1{font-size:38px}#moments .intro,#journey .journey-overview-copy,#wish-wall-section .wall-intro{font-size:16px}#moments>.section-heading .eyebrow,#journey .journey-overview>.eyebrow,#wish-wall-section .section-heading .eyebrow{font-size:12px}.history-timeline{margin-left:0;padding-left:24px}.history-date{position:static;display:flex;gap:12px;align-items:baseline;text-align:left;margin-bottom:12px}.history-row:before{left:-34px;top:10px}.history-copy h3{font-size:24px}.history-card{padding:22px}.history-recorded{text-align:left}.journey-filters{justify-content:start}.journey-filters button{font-size:13px}#journey .scale-heading h3{font-size:20px}#journey .scale-heading>.eyebrow{font-size:12px}}
@media(max-width:500px){.hero .hero-copy>h1{font-size:32px}.hero .hero-subtitle{font-size:22px}.hero .hero-quote{font-size:16px}#story h2{font-size:38px}#story .story-copy h3{font-size:20px}#letter .portrait{height:450px}#letter .portrait>div h3{font-size:20px}#letter .letter-copy{padding:23px}#letter .letter-copy>.eyebrow{font-size:12px}#letter .letter-excerpt-end{display:block}#letter .letter-excerpt-end .text-button{margin-top:14px}#home-moments h2,#people h2,#home-wishes h2{font-size:32px}.home-moments-grid{grid-template-columns:repeat(5,200px)}.builder-info h3{font-size:18px}.builder-info p{font-size:13px}.builders-tabs button strong{font-size:28px}.builders-tabs button span{font-size:18px}.builders-tabs button{gap:5px}#moments h1,#journey h1,#wish-wall-section h1{font-size:32px}.history-card{padding:18px}.history-copy h3{font-size:22px}.history-copy p{font-size:15px}.history-meta strong{font-size:13px}.footer-page-links{flex-direction:column}.footer-bottom span{font-size:11px}#home-journey .milestone-photo{min-height:260px}}
@media(prefers-reduced-motion:reduce){.home-moments-grid img{transition:none}}
.hero .hero-copy .hero-subtitle em{color:var(--brand-orange);font-style:normal;font-family:inherit}
#journey h1{max-width:768px}#journey .journey-overview-copy{max-width:820px}#journey .journey-overview>.eyebrow,#journey .scale-heading>.eyebrow,#moments>.section-heading .eyebrow,#wish-wall-section>.section-heading .eyebrow{justify-content:center;text-align:center}
/* Let the chairman's message use its card width instead of the legacy 430px cap. */
#letter .letter-copy{padding:24px}
#letter .letter-copy>p:not(.eyebrow){width:100%;max-width:none;margin-bottom:16px}
#letter .letter-copy>.eyebrow{margin-bottom:16px}
#letter .letter-copy>h4{margin-bottom:18px}
@media(max-width:500px){#letter .letter-copy{padding:20px}}

/* Keep the portrait image flush with its responsive frame. */
#letter .portrait>img{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:cover;object-position:50% 30%;border-radius:inherit}
