@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;1,500&family=Inter:wght@400;500;600&display=swap");:root{--paper:#f6f1e7;--paper-2:#efe7d6;--oat:#e6dbc6;--ink:#2a2621;--muted:#6c6257;--line:rgba(42,38,33,.14);--clay:#a9744e;--clay-soft:rgba(169,116,78,.14);--dark:#2a241e;--serif:"Cormorant Garamond",Georgia,serif;--sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.68;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.wrap{max-width:1120px;margin:0 auto;padding:0 32px}.eyebrow{display:inline-block;font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--clay)}h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.08;letter-spacing:-.005em}.rule{width:42px;height:1.5px;background:var(--clay);margin:18px 0 26px}.photo{width:100%;overflow:hidden;background:var(--oat)}.photo img{object-fit:cover;display:block}.photo img,.photo-ph{width:100%;height:100%}.photo-ph{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:linear-gradient(160deg,#ece2ce,#e2d5bd);color:var(--muted)}.photo-ph-cap{font-family:var(--serif);font-style:italic;font-size:20px}.photo-ph-tag{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:#a99a80}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:20;background:hsla(40,45%,94%,.86);-webkit-backdrop-filter:saturate(1.1) blur(8px);backdrop-filter:saturate(1.1) blur(8px);border-bottom:1px solid var(--line)}.topbar-in{display:flex;align-items:center;justify-content:space-between;height:64px}.topbar .mark{font-family:var(--serif);font-size:21px;font-weight:600}.nav{display:flex;align-items:center;gap:28px}.nav a{font-size:13.5px;color:var(--muted);font-weight:500}.nav a:hover{color:var(--ink)}.nav .nav-cta{color:var(--clay);font-weight:600}.btn{display:inline-block;padding:14px 30px;background:var(--ink);color:var(--paper);font-size:12.5px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;transition:opacity .2s}.btn:hover{opacity:.85}.btn-ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}.hero{padding:84px 0 96px}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;grid-gap:60px;gap:60px;align-items:center}.hero .eyebrow{margin-bottom:26px}.hero h1{font-size:clamp(58px,8.2vw,108px);font-weight:500;letter-spacing:-.02em}.hero-lede{margin-top:26px;max-width:460px;font-size:18px;line-height:1.72;color:var(--muted)}.cta-row{margin-top:38px;display:flex;gap:14px;flex-wrap:wrap}section{padding:96px 0}.panel{background:var(--paper-2)}h2{font-size:clamp(30px,4.2vw,46px)}.letter-grid{display:grid;grid-template-columns:.82fr 1.18fr;grid-gap:64px;gap:64px;align-items:center}.letter-text p{font-size:18px;line-height:1.78;color:var(--ink);margin-bottom:18px;max-width:560px}.letter-text .sign{font-size:26px;color:var(--clay);margin-top:8px}.letter-text .sign,.pull{font-family:var(--serif);font-style:italic}.pull{font-weight:500;font-size:clamp(26px,3.6vw,40px);line-height:1.32;color:var(--ink);max-width:860px;margin:8px 0 12px}.principles{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:46px 48px;gap:46px 48px;margin-top:60px}.principle h3{font-size:25px;margin-bottom:10px}.principle p{color:var(--muted);font-size:15.5px;line-height:1.72}.care-grid{display:grid;grid-template-columns:.9fr 1.1fr;grid-gap:64px;gap:64px;align-items:center}.care-list .rule{margin-bottom:30px}.care-item{padding:22px 0;border-top:1px solid var(--line)}.care-item:last-child{border-bottom:1px solid var(--line)}.care-item h3{font-size:24px;margin-bottom:6px}.care-item p{color:var(--muted);font-size:15.5px;line-height:1.7;max-width:560px}.timeline{margin-top:44px;border-top:1px solid var(--line)}.tl-row{display:grid;grid-template-columns:1fr auto;grid-gap:24px;gap:24px;align-items:baseline;padding:24px 0;border-bottom:1px solid var(--line)}.tl-role{font-family:var(--serif);font-size:25px;font-weight:600}.tl-where{color:var(--muted);font-size:15px;margin-top:3px}.tl-dates{color:var(--clay);font-size:13px;font-weight:600;letter-spacing:.05em;white-space:nowrap}.tributes{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:46px;gap:46px;margin-top:56px}.tribute .mark-q{font-family:var(--serif);font-size:52px;line-height:.4;color:var(--clay)}.tribute blockquote{font-family:var(--serif);font-size:23px;font-style:italic;line-height:1.5;color:var(--ink);margin:22px 0 18px}.tribute .by{font-size:12px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}.details{margin-top:50px;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));grid-gap:34px 44px;gap:34px 44px}.detail{padding:0}.detail dt{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--clay);margin-bottom:7px}.detail dd{font-family:var(--serif);font-size:22px;line-height:1.3;margin:0}.contact{background:var(--dark);color:var(--paper)}.contact .eyebrow{color:#d3a26f}.contact h2{color:var(--paper);font-size:clamp(34px,5vw,54px)}.contact .rule{background:#d3a26f}.contact-lede{max-width:620px;font-size:18px;line-height:1.72;color:#d7cdbc}.contact-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:64px;gap:64px;align-items:start}.contact-meta{margin-top:30px;color:#a99d8a;font-size:14px;line-height:1.6;max-width:420px}.cform{display:grid;grid-gap:18px;gap:18px}.field{display:grid;grid-gap:8px;gap:8px}.field>span{font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#c9bda9}.field>span em{font-style:normal;text-transform:none;letter-spacing:0;color:#8f8371;font-weight:400}.field input,.field textarea{font-family:var(--sans);font-size:15.5px;color:var(--paper);background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.16);border-radius:3px;padding:12px 14px;outline:none;transition:border-color .2s,background .2s;resize:vertical}.field input::placeholder,.field textarea::placeholder{color:#857a68}.field input:focus,.field textarea:focus{border-color:#d3a26f;background:hsla(0,0%,100%,.08)}.form-submit{justify-self:start;margin-top:4px;padding:14px 30px;background:#d3a26f;color:#241f19;border:none;border-radius:3px;font-family:var(--sans);font-size:12.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;cursor:pointer;transition:opacity .2s}.form-submit:hover{opacity:.9}.form-submit:disabled{opacity:.6;cursor:default}.form-err{color:#e8a58c;font-size:14px}.form-done{padding:20px 0}.form-done-mark{font-family:var(--serif);font-size:34px;color:#d3a26f;margin-bottom:10px}.form-done p{color:#d7cdbc;font-size:17px;line-height:1.7;max-width:420px}footer{padding:40px 0;color:var(--muted);font-size:13px;text-align:center;border-top:1px solid var(--line)}.gate{min-height:100dvh;display:grid;place-items:center;background:var(--paper);padding:24px}.gate-card{display:grid;grid-gap:14px;gap:14px;justify-items:center;text-align:center;width:100%;max-width:320px}.gate-name{font-family:var(--serif);font-size:36px;font-weight:600}.gate-sub{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--clay);margin-bottom:10px}.gate-card input{width:100%;text-align:center;font-family:var(--sans);font-size:15px;padding:12px 14px;border:1px solid var(--line);border-radius:3px;background:#fff;color:var(--ink);outline:none}.gate-card input:focus{border-color:var(--clay)}.gate-card button{width:100%;padding:13px;background:var(--ink);color:var(--paper);border:none;border-radius:3px;font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}.gate-card button:disabled{opacity:.6;cursor:default}.gate-err{font-size:13px;color:#b4462f}@media (max-width:820px){.nav{gap:18px}.nav a:not(.nav-cta){display:none}.care-grid,.contact-grid,.hero-grid,.letter-grid{grid-template-columns:1fr;gap:40px}.care-photo,.hero-photo{max-width:420px}.letter-photo{max-width:360px}.hero{padding:56px 0 64px}section{padding:68px 0}.tl-row{grid-template-columns:1fr;gap:6px}.tl-dates{order:-1}.detail dd{text-align:left}}