:root{--cream:#f5ead7;--paper:#fffaf0;--forest:#344839;--moss:#708060;--sage:#b9c09c;--cocoa:#4b3026;--brown:#71503f;--terracotta:#c86938;--gold:#dda94e;--ink:#2c241f;--line:#cbbca5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.65 'DM Sans',sans-serif}a{color:inherit}.nav{height:82px;padding:0 clamp(1.2rem,5vw,5rem);display:flex;align-items:center;justify-content:space-between;position:absolute;z-index:10;width:100%}.logo{display:flex;align-items:center;gap:.8rem;text-decoration:none;font-size:.75rem;letter-spacing:.12em}.logo>span{width:40px;height:40px;border:1.5px solid currentColor;border-radius:50%;display:grid;place-items:center;font-family:'DM Serif Display',serif;font-size:1.05rem}.logo em{font-family:'DM Serif Display',serif;font-weight:400;color:var(--terracotta)}.nav nav{display:flex;align-items:center;gap:1.7rem}.nav nav a{text-decoration:none;font-size:.86rem;font-weight:600}.nav-button{padding:.65rem 1rem;background:var(--forest);color:white;border-radius:999px}.hero{min-height:810px;padding:8rem clamp(1.2rem,7vw,7rem) 5rem;display:grid;grid-template-columns:1fr minmax(340px,.72fr);gap:clamp(3rem,7vw,8rem);align-items:center;position:relative;overflow:hidden}.sun-shape{position:absolute;width:620px;height:620px;border:1px solid #ab9d8428;border-radius:50%;left:-350px;bottom:-310px;box-shadow:0 0 0 65px #ab9d8412,0 0 0 130px #ab9d840d}.hero-copy{position:relative;z-index:1}.eyebrow,.kicker{text-transform:uppercase;letter-spacing:.2em;font-weight:700;font-size:.74rem;color:var(--moss)}h1,h2{font-family:'DM Serif Display',serif;font-weight:400;line-height:.94;letter-spacing:-.045em;margin:.8rem 0}h1{font-size:clamp(4.2rem,8vw,8rem);max-width:820px}h1 em,h2 em{color:var(--terracotta);font-weight:400}.intro{font-size:1.1rem;max-width:600px;color:#5d5149}.hero-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:2rem}.button{min-height:52px;border-radius:999px;padding:0 1.35rem;display:inline-flex;align-items:center;justify-content:center;gap:.8rem;text-decoration:none;font-size:.9rem;font-weight:700}.primary{background:var(--forest);color:white}.secondary{border:1px solid var(--forest);color:var(--forest)}.mini-note{margin-top:3rem;display:grid;gap:.15rem;padding-left:1rem;border-left:2px solid var(--terracotta);color:var(--brown);width:max-content;max-width:100%}.mini-note i{font-family:'DM Serif Display',serif;font-size:1.1rem}.mini-note strong{font-size:.7rem;letter-spacing:.13em;text-transform:uppercase}.poster-wrap{position:relative;justify-self:center;width:min(100%,440px);transform:rotate(2deg);filter:drop-shadow(0 24px 32px #3f302339)}.poster-wrap img{width:100%;display:block;border:12px solid var(--paper);border-radius:4px}.tape{position:absolute;width:105px;height:30px;background:#d8c990cc;z-index:2}.tape-one{top:-7px;left:-26px;transform:rotate(-11deg)}.tape-two{right:-28px;bottom:24%;transform:rotate(9deg)}.hand-note{position:absolute;right:-38px;bottom:-36px;font-family:'DM Serif Display',serif;font-style:italic;color:var(--brown);transform:rotate(-7deg)}.ticker{height:62px;display:flex;align-items:center;justify-content:space-around;gap:1.25rem;background:var(--forest);color:#f6ead2;overflow:hidden;white-space:nowrap;font-size:.73rem;letter-spacing:.18em;font-weight:700}.ticker i{color:var(--gold)}.section{padding:7rem clamp(1.2rem,7vw,7rem)}.about{background:var(--paper)}.kicker{padding-bottom:1rem;border-bottom:1px solid var(--line)}.about-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(3rem,8vw,8rem);padding:3.5rem 0}.about-grid h2,.events h2,.community h2,.connect h2{font-size:clamp(3.2rem,6vw,6rem)}.about-grid .lead{font-family:'DM Serif Display',serif;font-size:1.35rem;line-height:1.5}.about-grid>div{color:#66594f}.values{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.values article{padding:2.4rem 2rem 2.4rem 0}.values article+article{border-left:1px solid var(--line);padding-left:2rem}.values span{font-family:'DM Serif Display',serif;color:var(--terracotta);font-style:italic}.values h3{font-family:'DM Serif Display',serif;font-size:1.6rem;margin:.8rem 0}.values p{color:#66594f}.events{background:var(--cream)}.events-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;margin-bottom:3rem}.events-heading .kicker{border:0}.event-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem}.event-card{border-radius:28px;padding:clamp(1.5rem,4vw,3.4rem);min-height:510px;display:flex;flex-direction:column;background:var(--cocoa);color:white;position:relative;overflow:hidden}.event-card:after{content:'✿';position:absolute;right:-35px;top:-80px;font-size:15rem;color:#ffffff0a}.event-card.sage{background:var(--sage);color:var(--ink)}.date-stamp{display:flex;align-items:center;gap:.6rem}.date-stamp strong{font-family:'DM Serif Display',serif;font-size:4.5rem;line-height:1}.date-stamp span{font-size:.72rem;font-weight:700;letter-spacing:.12em}.event-type{text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;margin-top:auto}.event-card h3{font-family:'DM Serif Display',serif;font-size:2.15rem;line-height:1.08;margin:.4rem 0}.event-card>p:not(.event-type){max-width:500px;opacity:.78}.event-card dl{display:flex;gap:2.5rem;border-top:1px solid currentColor;margin-top:1rem;padding-top:1.2rem}.event-card dl div{display:grid}.event-card dt{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;opacity:.65}.event-card dd{margin:0;font-weight:600}.event-card>a{margin-top:1.4rem;font-weight:700}.community{background:var(--paper);display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(3rem,8vw,8rem)}.community>div:first-child>p:last-child{color:#695c52}.story-list{display:grid;gap:1rem}.story-card,.empty-story{padding:1.6rem;border:1px solid var(--line);border-radius:20px;background:var(--cream)}.story-card small{text-transform:uppercase;letter-spacing:.13em;color:var(--moss);font-weight:700}.story-card blockquote{font-family:'DM Serif Display',serif;font-size:1.25rem;margin:.8rem 0}.story-card footer{padding:0;background:none;color:var(--brown);display:flex;justify-content:space-between}.connect{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(3rem,7vw,7rem);background:var(--sage)}.connect-copy>p{max-width:480px}.privacy{margin-top:2rem;border-top:1px solid #839074;padding-top:1.2rem;display:grid;font-size:.86rem}.form-card{background:var(--paper);border-radius:26px;padding:clamp(1.3rem,3vw,2.3rem);box-shadow:0 25px 60px #35412821}.tabs{display:flex;background:#eae0d0;padding:.35rem;border-radius:999px;overflow:auto;margin-bottom:2rem}.tabs button{flex:1;border:0;background:transparent;border-radius:999px;padding:.75rem .7rem;font:600 .8rem 'DM Sans';white-space:nowrap;color:#706258;cursor:pointer}.tabs button.active{background:var(--forest);color:white}.fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.field{display:grid;gap:.4rem}.field.full{grid-column:1/-1}.field label{font-size:.82rem;font-weight:700}.field input,.field textarea,.field select{width:100%;border:1px solid #c8bba9;background:white;border-radius:12px;padding:.85rem .95rem;font:inherit;outline:none}.field textarea{min-height:125px;resize:vertical}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--forest);box-shadow:0 0 0 3px #34483917}.check{display:flex;align-items:flex-start;gap:.6rem;color:#66594f;font-size:.84rem}.check input{width:18px;height:18px;accent-color:var(--forest)}.submit{width:100%;border:0;background:var(--forest);color:white;border-radius:999px;min-height:52px;font:700 .9rem 'DM Sans';margin-top:1.1rem;cursor:pointer}.submit:disabled{opacity:.55}.honeypot{position:absolute;left:-9999px}#form-status{display:none;padding:.8rem 1rem;border-radius:12px;background:#e5ecd9;color:#365032;font-size:.88rem}#form-status.show{display:block}#form-status.error{background:#f4dddd;color:#7a3036}footer{padding:4rem clamp(1.2rem,7vw,7rem);background:var(--cocoa);color:#f7edde;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:2rem}footer>p{margin:0;color:#f7eddeaa}footer>div:nth-of-type(2){display:grid;gap:.4rem}footer a{text-decoration:none;font-size:.86rem}footer small{grid-column:1/-1;padding-top:2rem;border-top:1px solid #ffffff1c;color:#ffffff77}
.admin-body{background:var(--cream);min-height:100vh}.admin-main{padding:4rem clamp(1.2rem,6vw,6rem)}.admin-main h1{font:400 clamp(3rem,7vw,6rem)/.95 'DM Serif Display';letter-spacing:-.04em}.login-card{max-width:500px;background:var(--paper);border-radius:24px;padding:2rem;margin-top:2rem}.login-card input{width:100%;padding:.9rem;border:1px solid var(--line);border-radius:12px;margin:.5rem 0 1rem}.dashboard{display:none}.dashboard.show{display:grid;gap:1.2rem;margin-top:2rem}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.stat,.admin-section{background:var(--paper);border-radius:20px;padding:1.5rem;border:1px solid var(--line)}.stat strong{font:400 2.5rem 'DM Serif Display'}.stat span{display:block;color:var(--brown);font-size:.8rem}.admin-section{overflow:auto}.admin-section h2{font:400 1.8rem 'DM Serif Display'}.admin-item{padding:1rem 0;border-top:1px solid #ded1c0;display:grid;gap:.3rem}.admin-item small{color:#786a60}.admin-actions{display:flex;gap:.5rem}.admin-actions button{border:0;border-radius:999px;padding:.45rem .8rem;cursor:pointer}.approve{background:#dbe7ce}.reject{background:#efd8d4}
@media(max-width:850px){.nav nav>a:not(.nav-button){display:none}.hero{grid-template-columns:1fr;gap:3rem}.hero-copy{padding-top:2rem}.poster-wrap{width:min(82vw,430px)}.about-grid,.community,.connect{grid-template-columns:1fr}.values{grid-template-columns:1fr}.values article{padding:2rem 0}.values article+article{border-left:0;border-top:1px solid var(--line);padding-left:0}.event-grid{grid-template-columns:1fr}.event-card{min-height:450px}footer{grid-template-columns:1fr 1fr}.stats{grid-template-columns:1fr}}
@media(max-width:560px){.nav{height:72px}.nav .logo strong{display:none}.hero{padding-top:7rem;min-height:0}.hero h1{font-size:3.7rem}.hero-actions{display:grid}.button{width:100%}.ticker{justify-content:flex-start;padding:0 1.2rem}.ticker span:nth-of-type(n+3),.ticker i:nth-of-type(n+2){display:none}.section{padding:5rem 1.2rem}.events-heading{display:block}.event-card dl{display:grid;gap:1rem}.fields{grid-template-columns:1fr}.field.full{grid-column:auto}footer{grid-template-columns:1fr}.poster-wrap{width:88vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.zoom-card{grid-column:1/-1;background:var(--paper);border:1px solid var(--line);border-radius:28px;padding:clamp(1.5rem,4vw,3rem);display:flex;align-items:center;justify-content:space-between;gap:2rem}.zoom-card h3{font:400 2.2rem/1.1 'DM Serif Display';margin:.35rem 0}.zoom-card p{margin:.25rem 0;color:var(--brown)}.zoom-details{display:flex;align-items:center;gap:2rem;flex-wrap:wrap}.zoom-details>span{display:grid}.zoom-details small{text-transform:uppercase;letter-spacing:.12em;color:var(--moss)}
@media(max-width:850px){.zoom-card{align-items:flex-start;flex-direction:column}}
.heart-letter{position:relative}.heart-verse{margin:2rem 0 0;padding:1.4rem 1.5rem;background:var(--cream);border-left:4px solid var(--terracotta);border-radius:0 18px 18px 0}.heart-verse p{font:italic 1.2rem/1.5 'DM Serif Display',serif;margin:0;color:var(--cocoa)}.heart-verse footer{padding:.8rem 0 0;background:none;color:var(--brown);display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.heart-verse footer strong{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase}.heart-verse footer a{font-size:.78rem;font-weight:700}.moments{background:var(--forest);color:var(--paper);display:grid;grid-template-columns:.72fr 1.28fr;align-items:center;gap:clamp(3rem,8vw,8rem);overflow:hidden}.moments .kicker{color:var(--sage);border-color:#ffffff28}.moments h2{font-size:clamp(3.2rem,6vw,6rem)}.moments-copy>p:not(.kicker){color:#fff9;max-width:520px}.scribble-note{font:italic 1.45rem 'DM Serif Display',serif;color:var(--gold);margin-top:2rem;transform:rotate(-2deg);width:max-content}.memory-frame{position:relative;margin:0;background:var(--paper);padding:12px 12px 2.8rem;box-shadow:0 28px 60px #1c251e80;transform:rotate(1deg);max-width:680px;justify-self:center}.memory-frame img{width:100%;display:block}.memory-frame figcaption{color:var(--cocoa);font:italic 1rem 'DM Serif Display',serif;text-align:center;padding-top:1rem}.tape-three{top:-10px;left:50%;transform:translateX(-50%) rotate(-3deg)}
@media(max-width:850px){.moments{grid-template-columns:1fr}.memory-frame{max-width:560px}}
