:root{--cream:#efe6d5;--cream-deep:#e8ddc8;--paper:#f4ecdd;--paper-soft:#f7f1e6;--ink:#2b2620;--ink-soft:#4c4336;--ink-mute:#6f6450;--gold:#b1853e;--gold-deep:#98702f;--gold-light:#c8a463;--line:#cdbfa3;--line-soft:#d9ccb2;--footer-bg:#b7a98c;--footer-ink:#2f2a22;--fade:#f3e1cf;--rule:rgba(140,108,60,.42);--shadow:0 18px 50px -28px rgba(60,45,20,.55);--serif-display:var(--font-cormorant,"Cormorant Garamond"),Georgia,serif;--serif-body:var(--font-eb-garamond,"EB Garamond"),Georgia,serif;--maxw:1180px;--gutter:40px;--gutter-mobile:22px;--section-pad:88px;--section-pad-tight:64px;--radius-card:4px}*{box-sizing:border-box}html{scroll-behavior:smooth}body,html{overflow-x:hidden;max-width:100%}body{margin:0;font-family:var(--serif-body);color:var(--ink-soft);background:var(--cream);font-size:18px;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--gutter)}.icon{width:1em;height:1em;display:inline-block;fill:none}h1,h2,h3,h4{margin:0;line-height:1.08}.display,h1,h2,h3,h4{font-family:var(--serif-display);color:var(--ink);font-weight:500}.display{letter-spacing:.07em;line-height:1.04}.eyebrow{font-family:var(--serif-display);text-transform:uppercase;letter-spacing:.34em;color:var(--gold-deep);font-weight:600;font-size:.82rem}.lede{font-size:1.16rem;color:var(--ink-soft)}.muted{color:var(--ink-mute)}.gold{color:var(--gold-deep)}em{font-style:italic}.diamond{display:flex;align-items:center;justify-content:center;gap:14px;color:var(--gold);margin:18px 0}.diamond:after,.diamond:before{content:"";height:1px;width:var(--dw,64px);background:linear-gradient(90deg,transparent,var(--line),transparent)}.diamond i{width:7px;height:7px;background:var(--gold);transform:rotate(45deg);display:block}.diamond.wide{--dw:120px}.diamond.short{--dw:34px}.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--serif-display);text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;font-weight:600;color:var(--ink);border:1px solid var(--gold);background:transparent;padding:13px 24px;cursor:pointer;transition:all .22s;white-space:nowrap}.btn:hover{background:var(--gold);color:#fff7e8}.btn .icon{width:15px;height:15px;stroke:currentColor}.btn-solid{background:var(--gold);color:#fbf4e4}.btn-solid:hover{background:var(--gold-deep)}.btn-sm{padding:10px 18px;font-size:.72rem}.btn-row{display:flex;gap:16px;flex-wrap:wrap}section{position:relative}.has-rule:before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:90%;max-width:1760px;height:1px;background:var(--rule);z-index:4}.section{padding:var(--section-pad) 0}.section.tight{padding:var(--section-pad-tight) 0}.bg-cream{background:var(--cream)}.bg-deep{background:var(--cream-deep)}.bg-paper{background:var(--paper)}.center,.section-head{text-align:center}.section-head{max-width:760px;margin:0 auto 56px}.section-head h2{font-size:2.9rem;letter-spacing:.06em}.section-head .sub{color:var(--ink-mute);font-size:1.12rem;margin-top:6px}.bg-fade{background:linear-gradient(180deg,var(--cream) 0,var(--fade) 100%)}.features{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:0;gap:0;max-width:1080px;margin:0 auto}.features.four{grid-template-columns:repeat(4,1fr)}.feature{text-align:center;padding:0 22px;position:relative}.features .feature+.feature:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:1px;background:var(--line-soft)}.feature .badge{width:64px;height:64px;border-radius:50%;border:1px solid var(--gold);color:var(--gold-deep);display:flex;align-items:center;justify-content:center;margin:0 auto 18px;background:var(--paper-soft)}.feature .badge .icon{width:28px;height:28px;stroke:currentColor}.feature h4{font-family:var(--serif-display);text-transform:uppercase;letter-spacing:.14em;font-size:.92rem;font-weight:600;color:var(--ink);margin-bottom:10px}.feature p{font-size:.96rem;color:var(--ink-mute);margin:0;line-height:1.55}.ph{position:relative;overflow:hidden;background:linear-gradient(135deg,#caa86f,#a8accd 55%,#7f6a52),var(--cream-deep);background-blend-mode:multiply}.ph:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,rgba(255,255,255,.05) 0 2px,transparent 2px 9px),linear-gradient(160deg,rgba(200,160,90,.55),rgba(70,60,80,.45));mix-blend-mode:overlay}.ph>.ph-label{position:absolute;left:10px;top:10px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,250,240,.85);background:rgba(40,30,20,.34);padding:4px 9px;border-radius:2px;white-space:nowrap;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.ph.dawn{background:linear-gradient(160deg,#e8c47e,#caa06a 45%,#6e5b46)}.ph.forest{background:linear-gradient(160deg,#b9c08e,#7f9069 50%,#46523c)}.ph.lake{background:linear-gradient(160deg,#cfd2c0,#9aa9a0 50%,#5d6b63)}.ph.coast{background:linear-gradient(160deg,#e4cf9a,#c5a373 45%,#6d6453)}.ph.candle{background:linear-gradient(160deg,#caa05c,#8a6a44 50%,#332a22)}.ph.dusk{background:linear-gradient(160deg,#d9b07a,#9a8294 55%,#4b4658)}.cards{display:grid;grid-gap:34px;gap:34px}.cards.c3{grid-template-columns:repeat(3,1fr)}.cards.c4{grid-template-columns:repeat(4,1fr)}.cards.c2{grid-template-columns:repeat(2,1fr)}.ocard{text-align:center;display:flex;flex-direction:column}.oc-img{height:230px;position:relative;margin-bottom:46px;box-shadow:var(--shadow)}.oc-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.oc-badge{position:absolute;left:50%;bottom:-30px;transform:translateX(-50%);width:62px;height:62px;border-radius:50%;background:var(--paper-soft);border:1px solid var(--gold);display:flex;align-items:center;justify-content:center;color:var(--gold-deep)}.oc-badge .icon{width:30px;height:30px;stroke:currentColor}.ocard h3{font-size:1.18rem;letter-spacing:.05em;text-transform:uppercase;margin-bottom:4px;white-space:nowrap}.oc-div{margin:4px auto 14px}.ocard p{font-size:1rem;color:var(--ink-mute);max-width:340px;margin:0 auto 26px}.oc-btn{align-self:center;margin-top:auto}.oc-btn .icon{width:16px;height:16px;stroke:currentColor;transition:transform .2s}.oc-btn:hover .icon{transform:translateX(4px)}.link{font-family:var(--serif-display);text-transform:uppercase;letter-spacing:.14em;font-size:.82rem;font-weight:600;color:var(--gold-deep);display:inline-flex;align-items:center;gap:9px}.link .icon{width:16px;height:16px;stroke:currentColor;transition:transform .2s}.link:hover .icon{transform:translateX(4px)}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:rgba(241,232,216,.9);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line-soft)}.site-header.overlay{position:absolute;top:0;left:0;right:0;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom:none}.site-header .wrap{justify-content:space-between;gap:24px;min-height:86px;padding-top:14px;padding-bottom:14px}.brand,.site-header .wrap{display:flex;align-items:center}.brand{gap:16px}.brand .mark{width:50px;height:50px;object-fit:contain;flex:none}.brand .name{font-family:var(--serif-display);color:var(--ink);font-weight:500;font-size:1.05rem;letter-spacing:.16em;line-height:1.18;text-transform:uppercase}.nav{display:flex;align-items:center;gap:21px}.nav a{font-family:var(--serif-display);text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;font-weight:600;color:var(--ink-soft);position:relative;padding:6px 0;white-space:nowrap;transition:color .2s}.nav a.active,.nav a:hover{color:var(--gold-deep)}.nav a.active:after{content:"";position:absolute;left:50%;bottom:-3px;transform:translateX(-50%);width:26px;height:1px;background:var(--gold)}.nav-cta{flex:none}.nav-panel{display:contents}.nav-toggle{display:none;width:44px;height:44px;flex:none;padding:0;align-items:center;justify-content:center;background:transparent;border:1px solid var(--line-soft);cursor:pointer;color:var(--ink);border-radius:2px;transition:color .2s,border-color .2s}.nav-toggle:hover{color:var(--gold-deep);border-color:var(--gold)}.nav-toggle .bars,.nav-toggle .bars:after,.nav-toggle .bars:before{content:"";display:block;width:20px;height:1.5px;background:currentColor;transition:transform .25s ease,background-color .2s ease}.nav-toggle .bars{position:relative}.nav-toggle .bars:before{position:absolute;left:0;top:-6px}.nav-toggle .bars:after{position:absolute;left:0;top:6px}.nav-toggle[aria-expanded=true] .bars{background:transparent}.nav-toggle[aria-expanded=true] .bars:before{transform:translateY(6px) rotate(45deg)}.nav-toggle[aria-expanded=true] .bars:after{transform:translateY(-6px) rotate(-45deg)}@media (max-width:1180px){.nav{gap:16px}.nav a{letter-spacing:.08em;font-size:.74rem}.brand .name{font-size:.98rem}}@media (max-width:1010px){.site-header .wrap{flex-wrap:wrap;min-height:0;row-gap:0}.brand{order:1}.nav-toggle{display:flex;order:2;margin-left:auto}.nav-panel{display:none;order:3;width:100%;flex-direction:column;align-items:stretch;gap:4px;margin:0 calc(-1 * var(--gutter));padding:8px var(--gutter) 18px;background:rgba(241,232,216,.98);border-top:1px solid var(--line-soft)}.nav-panel.open{display:flex}.site-header.overlay .nav-panel.open{background:rgba(241,232,216,.985);box-shadow:0 18px 40px -28px rgba(60,45,20,.7)}.nav{width:100%;flex-direction:column;align-items:stretch;gap:0}.nav a{font-size:.92rem;letter-spacing:.12em;padding:13px 0;border-bottom:1px solid var(--line-soft)}.nav a.active:after{display:none}.nav-cta{margin-top:16px;align-self:flex-start}}@media (max-width:600px){.nav-panel{margin:0 calc(-1 * var(--gutter-mobile));padding:8px var(--gutter-mobile) 18px}}.welcome{text-align:center}.welcome .lines{font-size:1.55rem;color:var(--ink-soft);font-style:italic;line-height:1.5}.welcome .home,.welcome .lines{font-family:var(--serif-display)}.welcome .home{font-size:3rem;letter-spacing:.12em;color:var(--ink);text-transform:uppercase;margin-top:6px}.welcome.gold .home{color:var(--gold-deep)}.homecoming{position:relative;overflow:hidden;background-color:var(--cream);background-image:url(/footer-bg.png);background-size:cover;background-position:50%;background-repeat:no-repeat;padding:40px 0}.hc-inner{display:flex;align-items:center;justify-content:center;gap:58px;position:relative;z-index:2}.hc-mark{width:84px;height:84px;flex:none;object-fit:contain}.hc-text{text-align:center}.hc-lines{font-family:var(--serif-body);font-size:1.24rem;color:var(--ink-soft);line-height:1.5;margin:0}.hc-home{font-family:var(--serif-display);font-size:2.3rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);margin-top:6px;white-space:nowrap}.hc-div{margin:8px auto 0}@media (max-width:760px){.hc-inner{flex-direction:column;gap:18px}.homecoming{padding:36px 0}.hc-mark{width:74px;height:74px}.hc-home{font-size:2rem}}.site-footer{background:var(--fade);color:#3d3526;padding:50px 0 0;position:relative}.site-footer:before{content:"";position:absolute;top:0;left:0;width:100%;height:1px;background:var(--rule)}.site-footer a{color:#3d3526;transition:color .2s}.site-footer a:hover{color:var(--gold-deep)}.footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1.25fr 1.5fr;grid-gap:46px;gap:46px;padding-bottom:34px}.footer-brand .fmark{display:flex;align-items:center;gap:14px;margin-bottom:18px}.footer-brand .fmark .m{width:44px;height:44px;flex:none;object-fit:contain}.footer-brand .fmark span{font-family:var(--serif-display);text-transform:uppercase;letter-spacing:.2em;font-size:1rem;line-height:1.3;color:var(--ink)}.footer-brand p{font-size:.9rem;line-height:1.6;color:#3d3526;max-width:330px;margin:0 0 12px}.fcol h5{font-family:var(--serif-display);text-transform:uppercase;letter-spacing:.2em;font-size:.8rem;font-weight:600;color:var(--ink);margin:0 0 18px;white-space:nowrap}.fcol ul{list-style:none;margin:0;padding:0}.fcol li{margin-bottom:10px;font-size:.94rem;line-height:1.4;white-space:nowrap}.fcol p{font-size:.9rem;line-height:1.6;color:#3d3526;margin:0 0 12px}.femail{word-break:break-word}.footer-btn{border-color:var(--gold-deep);color:var(--ink)}.footer-btn:hover{background:var(--gold-deep);color:#f4ead4}.social{display:flex;gap:16px;margin-top:18px}.social a{width:22px;height:22px;display:flex;align-items:center;justify-content:center;color:#2f2a22}.social a:hover{color:var(--gold-deep)}.social svg{width:19px;height:19px;fill:currentColor}.footer-bar{border-top:1px solid rgba(60,48,28,.22);padding:18px 0;display:flex;align-items:center;justify-content:space-between;font-family:var(--serif-display);letter-spacing:.16em;text-transform:uppercase;font-size:.72rem;color:#4a3f2c}.footer-bar .tag .gold{color:var(--gold-deep)}@media (max-width:900px){.features,.features.four{grid-template-columns:repeat(2,1fr);gap:36px 0}.features .feature+.feature:before{display:none}.cards.c3,.cards.c4,.footer-grid{grid-template-columns:1fr 1fr}.footer-grid{gap:34px}.section-head h2{font-size:2.3rem}}@media (max-width:600px){.wrap{padding:0 var(--gutter-mobile)}.cards.c2,.cards.c3,.cards.c4,.features,.footer-grid{grid-template-columns:1fr}.footer-bar{flex-direction:column;gap:10px;text-align:center}}.gcard{text-align:center;display:flex;flex-direction:column}.gcard .gimg{height:215px;position:relative;box-shadow:var(--shadow);margin-bottom:46px}.gcard .gimg,.gcard .gphoto{border-radius:var(--radius-card)}.gcard .gphoto{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.gcard .gbadge{position:absolute;left:50%;bottom:-30px;transform:translateX(-50%);width:64px;height:64px;border-radius:50%;background:var(--paper-soft);border:1px solid var(--gold);display:flex;align-items:center;justify-content:center;color:var(--gold-deep)}.gcard .gbadge .icon{width:30px;height:30px;stroke:currentColor}.gcard h3{font-size:1.5rem;letter-spacing:.12em;text-transform:uppercase}.gcard p{font-size:1rem;color:var(--ink-soft);margin:16px auto 26px;max-width:330px}.gcard .btn{width:auto;align-self:center;margin-top:auto}.fmt{text-align:center;display:flex;flex-direction:column}.fmt .fbadge{width:88px;height:88px;border-radius:50%;margin:0 auto;border:1px solid var(--gold);background:var(--paper-soft);color:var(--gold-deep);display:flex;align-items:center;justify-content:center}.fmt .fbadge .icon{width:40px;height:40px;stroke:currentColor}.fmt h3{font-size:1.2rem;letter-spacing:.08em;text-transform:uppercase;margin:22px 0 10px}.fmt p{font-size:.93rem;color:var(--ink-mute);margin:0 0 18px;flex:1 1}.fmt .btn{align-self:center}.ecard{background:var(--paper-soft);border:1px solid var(--line-soft);display:flex;flex-direction:column;box-shadow:0 12px 36px -28px rgba(60,45,20,.5)}.ecard .eimg{height:158px;overflow:hidden}.ecard .eimg img{width:100%;height:100%;object-fit:cover;display:block}.ecard .ebody{padding:26px 26px 28px;text-align:center;display:flex;flex-direction:column;flex:1 1}.ecard .emeta{font-size:.72rem;letter-spacing:.2em;color:var(--gold-deep)}.ecard .emeta,.ecard h3{text-transform:uppercase;margin-bottom:12px}.ecard h3{font-size:1.28rem;letter-spacing:.08em}.ecard p{font-size:.95rem;color:var(--ink-mute);margin:0 0 22px;flex:1 1}.ecard .btn{align-self:center;margin-top:auto}.wexp{text-align:center;display:flex;flex-direction:column}.wexp .wbadge{width:92px;height:92px;border-radius:50%;margin:0 auto;border:1px solid var(--gold);background:var(--paper-soft);color:var(--gold-deep);display:flex;align-items:center;justify-content:center}.wexp .wbadge .icon{width:42px;height:42px;stroke:currentColor}.wexp .wbadge img{width:54px;height:54px;object-fit:contain}.wexp h3{font-size:1.15rem;letter-spacing:.08em;text-transform:uppercase;margin:22px 0 10px}.wexp p{font-size:.92rem;color:var(--ink-mute);margin:0 0 18px;flex:1 1}.wexp .btn{align-self:center}.founder{display:grid;grid-template-columns:150px 1fr;grid-gap:26px;gap:26px;align-items:start}.founder .portrait{width:150px;height:200px;box-shadow:var(--shadow);object-fit:cover}.founder h3{font-family:var(--serif-display);text-transform:uppercase;letter-spacing:.16em;font-size:1.35rem;color:var(--ink);margin-bottom:6px}.founder p{font-size:.96rem;color:var(--ink-soft);margin:0 0 12px}.founder .frule{width:46px;height:1px;background:var(--gold);margin:6px 0 16px}.founder .vow{font-style:italic;color:var(--gold-deep);line-height:1.5}@media (max-width:560px){.founder{grid-template-columns:1fr}.founder .portrait{width:160px;height:210px}}