@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:opsz,wght@9..144,500;9..144,600;9..144,700&display=swap";:root{--ink:#183b2b;--forest:#204c36;--deep:#123125;--moss:#6e8260;--sage:#dce4cd;--cream:#f7f1e3;--paper:#fffdf7;--sun:#f2ad3f;--clay:#c96843;--line:#183b2b2e;--serif:"Fraunces", Georgia, serif;--sans:"DM Sans", Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit}button,input,select,textarea{font:inherit}button,summary{-webkit-tap-highlight-color:transparent}.site-header{z-index:20;justify-content:space-between;align-items:center;max-width:1320px;height:84px;margin:0 auto;padding:0 34px;display:flex;position:relative}.brand{align-items:center;gap:12px;text-decoration:none;display:inline-flex}.brand-mark{background:var(--sun);width:42px;height:42px;color:var(--deep);font-family:var(--serif);border-radius:50% 48% 52% 45%;place-items:center;font-size:26px;font-weight:700;display:grid;transform:rotate(-4deg)}.brand>span:last-child{gap:1px;display:grid}.brand strong{font-family:var(--serif);font-size:19px;line-height:1}.brand small{text-transform:uppercase;letter-spacing:.15em;color:var(--moss);font-size:10px}nav{align-items:center;gap:28px;font-size:14px;font-weight:600;display:flex}nav a{text-decoration:none}.nav-cta{border:1px solid var(--forest);border-radius:100px;padding:10px 18px}.hero{background:radial-gradient(circle at 8% 8%,#f2ad3f40 0 8%,#0000 8.2%),linear-gradient(135deg,#eef0d8 0%,#f8f2df 58%,#e4ead9 100%);border-radius:0 0 56px 56px;grid-template-columns:minmax(0,1.4fr) minmax(350px,.68fr);align-items:center;gap:80px;max-width:1320px;min-height:710px;margin:0 auto;padding:72px 68px 82px;display:grid;position:relative;overflow:hidden}.hero:before,.hero:after{content:"";pointer-events:none;border-radius:50%;position:absolute}.hero:before{background:#6e82601f;width:500px;height:230px;bottom:-150px;left:-120px;transform:rotate(8deg)}.hero:after{background:#204c361a;width:390px;height:210px;top:-80px;right:-130px}.hero-copy{z-index:1;position:relative}.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--clay);margin:0 0 18px;font-size:12px;font-weight:700}h1,h2,h3,p{margin-top:0}h1{font-family:var(--serif);letter-spacing:-.055em;margin-bottom:30px;font-size:clamp(62px,7vw,108px);font-weight:600;line-height:.9}h1 span{color:var(--clay);font-style:italic;display:block}.hero-lede{color:#3e594a;max-width:650px;font-size:20px;line-height:1.65}.hero-actions{align-items:center;gap:26px;margin-top:36px;display:flex}.button{cursor:pointer;border:0;border-radius:100px;justify-content:center;align-items:center;min-height:52px;padding:0 25px;font-weight:700;text-decoration:none;transition:transform .2s,background .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{color:#fff;background:var(--forest)}.button-primary:hover{background:var(--deep)}.text-link{border-bottom:1px solid var(--ink);padding:6px 0;font-weight:700;text-decoration:none}.next-card{z-index:1;background:#fffdf7e0;border:1px solid #ffffffbf;border-radius:120px 120px 30px 30px;padding:42px;position:relative;box-shadow:0 24px 70px #1c422f1f}.sun-shape{background:var(--sun);border-radius:50%;width:88px;height:88px;position:absolute;top:-24px;right:36px;box-shadow:0 0 0 12px #f2ad3f21}.card-kicker{letter-spacing:.17em;text-transform:uppercase;color:var(--moss);margin-bottom:22px;font-size:11px;font-weight:700}.date-lockup{border-bottom:1px solid var(--line);padding-bottom:28px;display:grid}.date-lockup span{font-family:var(--serif);color:var(--clay);font-size:25px;font-style:italic}.date-lockup strong{font-family:var(--serif);letter-spacing:-.04em;font-size:clamp(42px,4vw,57px);font-weight:600}.next-card dl{gap:15px;margin:26px 0 14px;display:grid}.next-card dl div{justify-content:space-between;gap:15px;display:flex}.next-card dt{color:var(--moss);font-size:13px}.next-card dd{text-align:right;margin:0;font-size:13px;font-weight:700}.next-card dl .payment-item{align-items:flex-start}.payment-method{justify-content:flex-end;align-items:center;gap:13px;display:flex}.payment-method>span{max-width:135px;line-height:1.4}.venmo-qr-link{color:var(--moss);flex:0 0 98px;justify-items:center;gap:5px;text-decoration:none;display:grid}.venmo-qr-link img{border:1px solid var(--line);background:#fff;border-radius:10px;width:98px;height:98px;padding:5px;display:block}.venmo-qr-link small{letter-spacing:.04em;font-size:9px;font-weight:700}.venmo-qr-link:hover small,.venmo-qr-link:focus-visible small{color:var(--clay)}.location-note{color:var(--moss);margin-bottom:0;font-size:11px;line-height:1.5}.trust-strip{z-index:3;background:var(--deep);color:#fff;border-radius:100px;grid-template-columns:repeat(4,1fr);align-items:center;max-width:1120px;min-height:56px;margin:-27px auto 0;padding:0 24px;display:grid;position:relative;box-shadow:0 14px 34px #12312526}.trust-strip p{text-align:center;margin:0;font-size:13px;font-weight:600}.trust-strip span{color:var(--sun);margin-right:8px}.theme-section{grid-template-columns:.78fr 1.22fr;align-items:center;gap:70px;max-width:1120px;margin:0 auto;padding:100px 30px 96px;display:grid}.theme-intro h2{font-family:var(--serif);letter-spacing:-.045em;margin:0 0 22px;font-size:clamp(38px,4.25vw,58px);font-weight:600;line-height:.98}.theme-intro>p:last-child{color:#52675a;max-width:430px;margin:0;line-height:1.7}.theme-cards{grid-template-columns:1fr 1fr;gap:16px;display:grid}.theme-card{border-radius:120px 120px 24px 24px;flex-direction:column;justify-content:flex-end;min-height:245px;padding:30px;display:flex;position:relative;overflow:hidden}.theme-card:after{content:"";opacity:.85;border-radius:50%;width:90px;height:90px;position:absolute;top:27px;right:28px}.theme-card-current{background:#e8edd7}.theme-card-current:after{background:var(--sun)}.theme-card-next{background:#f0ded0}.theme-card-next:after{background:var(--clay)}.theme-card p{color:var(--moss);letter-spacing:.16em;text-transform:uppercase;margin:0 0 auto 24px;font-size:10px;font-weight:700}.theme-card span{color:var(--clay);font-family:var(--serif);font-size:20px;font-style:italic}.theme-card h3{max-width:100%;font-family:var(--serif);letter-spacing:-.035em;overflow-wrap:anywhere;text-wrap:balance;margin:4px 0 0;font-size:clamp(35px,4vw,48px);font-weight:600;line-height:1}.theme-card h3.theme-title-medium{font-size:clamp(27px,2.6vw,34px)}.theme-card h3.theme-title-long{font-size:clamp(23px,2.2vw,29px)}.instagram-section{border:1px solid var(--line);background:linear-gradient(110deg,#f0ded0 0%,#f7f1e3 52%,#e8edd7 100%);border-radius:30px;grid-template-columns:minmax(270px,.72fr) minmax(0,1.28fr);align-items:stretch;gap:18px;max-width:1120px;margin:0 auto 96px;padding:18px;display:grid;box-shadow:0 16px 40px #12312514}.instagram-heading{background:var(--forest);color:#fff;border-radius:22px;flex-direction:column;justify-content:center;align-items:flex-start;gap:24px;min-width:0;padding:36px;display:flex;position:relative;overflow:hidden}.instagram-heading:after{content:"";pointer-events:none;border:28px solid #f2ad3f2e;border-radius:50%;width:180px;height:180px;position:absolute;bottom:-88px;right:-86px}.instagram-mark{z-index:1;border:3px solid #fff;border-radius:17px;width:58px;height:58px;position:relative}.instagram-mark:before{content:"";border:3px solid #fff;border-radius:50%;width:21px;height:21px;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.instagram-mark:after{content:"";background:var(--clay);border-radius:50%;width:6px;height:6px;position:absolute;top:9px;right:9px}.instagram-heading>div:nth-child(2){z-index:1;gap:9px;display:grid}.instagram-heading p{color:#f3c169;letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:10px;font-weight:700}.instagram-heading h2{max-width:100%;font-family:var(--serif);letter-spacing:-.025em;overflow-wrap:anywhere;margin:0;font-size:clamp(23px,2vw,26px);line-height:1.05}.instagram-heading>div:nth-child(2)>span{color:#dbe3d8;font-size:14px;line-height:1.6}.instagram-link{z-index:1;background:var(--sun);width:100%;min-height:48px;color:var(--deep);white-space:nowrap;border-radius:100px;justify-content:center;align-items:center;gap:9px;padding:0 22px;font-size:13px;font-weight:700;text-decoration:none;transition:transform .2s,background .2s;display:inline-flex}.instagram-link:hover,.instagram-link:focus-visible{background:#f3c169;transform:translateY(-2px)}.instagram-feed{min-width:0;box-shadow:inset 0 0 0 1px var(--line);background:#fff;border-radius:22px;margin:0;padding:0;overflow:hidden}.instagram-profile-preview{color:var(--deep);align-content:start;text-decoration:none;transition:transform .2s,box-shadow .2s;display:grid}.instagram-profile-preview:hover,.instagram-profile-preview:focus-visible{box-shadow:inset 0 0 0 1px var(--line), 0 14px 28px #1231251f;transform:translateY(-2px)}.instagram-preview-bar{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;min-width:0;padding:20px 22px;display:grid}.instagram-preview-avatar{background:linear-gradient(145deg, var(--sun), var(--clay));color:#fff;width:44px;height:44px;font-family:var(--serif);border-radius:50%;place-items:center;font-size:22px;font-weight:700;display:grid}.instagram-preview-bar>span:nth-child(2){gap:3px;min-width:0;display:grid}.instagram-preview-bar strong{overflow-wrap:anywhere;font-size:14px}.instagram-preview-bar small{color:var(--moss);font-size:11px}.instagram-preview-arrow{color:var(--clay);font-size:22px}.instagram-preview-grid{background:var(--paper);grid-template-columns:repeat(3,1fr);gap:3px;display:grid}.instagram-preview-photo{aspect-ratio:1;background:var(--sage);min-width:0;overflow:hidden}.instagram-preview-photo img{object-fit:cover;width:100%;height:100%;transition:transform .35s;display:block}.instagram-profile-preview:hover .instagram-preview-photo img{transform:scale(1.025)}.instagram-preview-cta{min-height:52px;color:var(--forest);justify-content:space-between;align-items:center;padding:0 22px;font-size:12px;font-weight:700;display:flex}.section{max-width:1180px;margin:0 auto;padding:120px 30px}.section-heading h2,.about-copy h2,.closing-section h2{font-family:var(--serif);letter-spacing:-.045em;margin-bottom:0;font-size:clamp(45px,5.5vw,74px);font-weight:600;line-height:1}.intro-section{grid-template-columns:.9fr 1.1fr;gap:110px;display:grid}.section-heading{position:relative}.timeline{display:grid}.timeline article{border-top:1px solid var(--line);grid-template-columns:75px 1fr;gap:25px;padding:24px 0;display:grid}.timeline article:last-child{border-bottom:1px solid var(--line)}.timeline time{color:var(--clay);font-family:var(--serif);font-size:21px;font-style:italic}.timeline h3{font-family:var(--serif);margin-bottom:7px;font-size:23px}.timeline p,.experience-grid p,.about-copy p,.faq-list p{color:#52675a;margin-bottom:0;line-height:1.7}.moments-section{background:var(--cream);padding:100px max(30px,50vw - 560px) 110px}.moments-heading{justify-content:space-between;align-items:end;gap:60px;margin-bottom:42px;display:flex}.moments-heading h2{font-family:var(--serif);letter-spacing:-.045em;margin:0;font-size:clamp(44px,5vw,68px);font-weight:600;line-height:.98}.moments-heading>p{color:#52675a;max-width:390px;margin:0 0 5px;line-height:1.65}.moments-grid{grid-template-columns:repeat(12,1fr);grid-auto-rows:116px;gap:16px;display:grid}.moment-card{background:var(--sage);border-radius:22px;min-width:0;margin:0;overflow:hidden;box-shadow:0 12px 30px #1231251a}.moment-card img{object-fit:cover;width:100%;height:100%;display:block}.moment-card:first-child{border-radius:220px 22px 22px;grid-area:span 4/span 6}.moment-card:nth-child(n+2):nth-child(-n+5){grid-area:span 2/span 3}.moment-card:nth-child(n+6){grid-area:span 3/span 6}.moment-card:first-child img{object-position:center 58%}.moment-card:nth-child(3) img{object-position:center 45%}.moment-card:nth-child(5) img{object-position:center 43%}.moment-card:nth-child(6) img{object-position:center 35%}.moment-card:nth-child(7) img{object-position:center 42%}.moments-controls{display:none}.experience-section{background:var(--forest);color:#fff;max-width:none;padding-left:max(30px,50vw - 560px);padding-right:max(30px,50vw - 560px)}.horizontal-heading{justify-content:space-between;align-items:end;gap:60px;margin-bottom:64px;display:flex}.horizontal-heading>p{color:#cdd8c9;max-width:410px;margin-bottom:4px;line-height:1.65}.experience-section .eyebrow{color:#f3c169}.experience-grid{border-top:1px solid #ffffff40;grid-template-columns:repeat(4,1fr);display:grid}.experience-grid article{border-right:1px solid #fff3;padding:36px 25px 20px}.experience-grid article:first-child{padding-left:0}.experience-grid article:last-child{border-right:0}.experience-grid span{color:#f3c169;font-family:var(--serif);margin-bottom:52px;font-style:italic;display:block}.experience-grid h3{font-family:var(--serif);margin-bottom:14px;font-size:27px}.experience-grid p{color:#dbe3d8;font-size:14px}.about-section{grid-template-columns:1fr 1fr;align-items:center;gap:100px;display:grid}.about-photo{aspect-ratio:4/5;background:#dfe7ce;border-radius:260px 260px 24px 24px;width:100%;min-height:560px;margin:0;position:relative;overflow:hidden;box-shadow:0 18px 44px #12312521}.about-photo img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.about-photo figcaption{max-width:190px;color:var(--forest);font-family:var(--serif);text-align:center;background:#fbf8f0eb;border-radius:14px;padding:12px 16px;font-size:18px;line-height:1.15;position:absolute;bottom:24px;right:24px;box-shadow:0 10px 26px #12312529}.about-copy .lead{font-family:var(--serif);color:var(--ink);margin-top:28px;font-size:24px;line-height:1.5}blockquote{border-left:3px solid var(--sun);font-family:var(--serif);color:var(--clay);margin:38px 0 0;padding:22px 0 0 28px;font-size:22px;font-style:italic;line-height:1.5}.calendar-section{background:var(--cream);max-width:none;padding-left:max(30px,50vw - 560px);padding-right:max(30px,50vw - 560px)}.calendar-intro{grid-template-columns:1fr .8fr;align-items:end;gap:80px;margin-bottom:55px;display:grid}.calendar-intro>p{color:#52675a;margin-bottom:4px;line-height:1.7}.event-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.event-card{appearance:none;text-align:left;color:var(--ink);background:var(--paper);cursor:pointer;border:1px solid #0000;border-radius:18px;flex-direction:column;min-height:186px;padding:22px;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex}.event-card:hover,.event-card:focus-visible{border-color:var(--moss);outline:none;transform:translateY(-3px);box-shadow:0 12px 25px #2c4f3b1a}.event-card.selected{background:var(--forest);color:#fff}.event-month{text-transform:uppercase;letter-spacing:.16em;color:var(--clay);font-size:11px;font-weight:700}.selected .event-month{color:#f4c46c}.event-day{font-family:var(--serif);margin:12px 0 16px;font-size:55px;line-height:1}.event-meta{color:var(--moss);margin-top:auto;font-size:12px}.selected .event-meta{color:#d7e1d2}.event-card.unavailable{color:#647066;cursor:not-allowed;opacity:.78;background:#eee8da}.event-card.unavailable:hover,.event-card.unavailable:focus-visible{box-shadow:none;border-color:#0000;transform:none}.event-card.unavailable .event-month{color:#8a7466}.event-card.unavailable .event-meta{color:#7b827b;font-weight:700}.event-note-public{color:currentColor;margin-top:7px;font-size:11px;line-height:1.35}.calendar-empty{border:1px dashed var(--line);text-align:center;background:#fffdf78c;border-radius:22px;padding:50px}.calendar-empty h3{font-family:var(--serif);margin-bottom:8px;font-size:30px}.calendar-empty p{color:var(--moss);margin-bottom:0}.calendar-actions{justify-content:space-between;align-items:center;gap:20px;margin-top:26px;display:flex}.calendar-actions p{color:var(--moss);margin:0;font-size:13px}.share-button{appearance:none;color:var(--ink);border:0;border-bottom:1px solid var(--ink);cursor:pointer;background:0 0;padding:5px 0;font-weight:700}.registration-wrap{grid-template-columns:.72fr 1.28fr;align-items:start;gap:70px;margin-top:90px;display:grid}.waiver-panel{background:#dce5d1;border-radius:22px;padding:34px;position:sticky;top:20px}.waiver-panel h3{font-family:var(--serif);margin-bottom:15px;font-size:30px}.waiver-panel>p{color:#52675a;font-size:14px;line-height:1.65}.waiver-points{gap:16px;margin:24px 0 0;padding:0;list-style:none;display:grid}.waiver-points li{grid-template-columns:26px 1fr;gap:8px;font-size:13px;line-height:1.55;display:grid}.waiver-points span{background:var(--paper);width:20px;height:20px;color:var(--forest);border-radius:50%;place-items:center;font-size:11px;font-weight:700;display:grid}.waiver-link{margin-top:24px;font-size:13px;font-weight:700;display:inline-block}.registration-form{background:var(--paper);border-radius:24px;padding:42px;box-shadow:0 18px 50px #344a3a14}.registration-form h3{font-family:var(--serif);margin-bottom:8px;font-size:38px}.form-date{color:var(--clay);margin-bottom:30px;font-weight:700}.form-row{grid-template-columns:1fr 1fr;gap:18px;display:grid}.form-field{gap:8px;margin-bottom:18px;display:grid}.form-field label,.field-label{letter-spacing:.04em;font-size:12px;font-weight:700}.form-field input,.form-field select,.form-field textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #cfd5c8;border-radius:10px;outline:none;padding:13px 14px}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--forest);box-shadow:0 0 0 3px #204c361a}.form-field textarea{resize:vertical;min-height:92px}.checkbox{grid-template-columns:20px 1fr;align-items:start;gap:11px;margin:18px 0;font-size:13px;line-height:1.55;display:grid}.checkbox input{width:18px;height:18px;accent-color:var(--forest);margin-top:2px}.sms-consent-group{background:#f7f5eb;border:1px solid #cfd5c8;border-radius:14px;margin:24px 0 18px;padding:22px}.sms-consent-group legend{font-family:var(--serif);color:var(--forest);padding:0 8px;font-size:20px;font-weight:700}.sms-consent-group>p:first-of-type{color:var(--moss);margin:0 0 13px;font-size:12px;line-height:1.5}.sms-consent{margin:15px 0}.sms-disclosure{color:#52675a;margin:17px 0 0;font-size:11px;line-height:1.6}.sms-disclosure a{color:var(--forest);font-weight:700}.form-submit{width:100%;margin-top:8px}.form-note{text-align:center;color:var(--moss);margin:13px 0 0;font-size:11px;line-height:1.5}.form-error{color:#a63e2d;background:#f9e4dd;border-radius:8px;padding:12px;font-size:13px}.success-card{background:var(--forest);color:#fff;text-align:center;border-radius:24px;align-content:center;place-items:center;min-height:420px;padding:55px;display:grid}.success-icon{background:var(--sun);width:64px;height:64px;color:var(--deep);border-radius:50%;place-items:center;margin-bottom:22px;font-size:28px;display:grid}.success-card h3{font-family:var(--serif);margin-bottom:12px;font-size:42px}.success-card p{color:#d9e3d7;max-width:470px;line-height:1.7}.success-location{width:min(100%,470px);color:var(--deep);text-align:left;background:#fffdf7;border-radius:16px;margin:22px 0 2px;padding:20px}.success-location>span{color:var(--clay);letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px;font-size:10px;font-weight:800;display:block}.success-location>strong{font-family:var(--serif);margin-bottom:4px;font-size:22px;display:block}.success-card .success-location p{color:#52675a;white-space:pre-line;margin:6px 0;font-size:13px;line-height:1.55}.success-card .success-location a{color:var(--forest);margin-top:8px;display:inline-block}.success-card .success-email-note{color:#f4f6f0;background:#ffffff1a;border-radius:12px;margin:16px 0 0;padding:14px 16px;font-size:13px}.success-card a{color:#f5c569;font-weight:700}.registration-modal-backdrop{z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#102b21b8;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.registration-modal{background:var(--paper);text-align:center;border:1px solid #204c3624;border-radius:30px;width:min(100%,610px);max-height:min(88vh,760px);padding:50px 52px 44px;position:relative;overflow-y:auto;box-shadow:0 30px 90px #08221857}.registration-modal-close{border:1px solid var(--line);width:40px;height:40px;color:var(--forest);cursor:pointer;background:#fff;border-radius:50%;place-items:center;font-size:25px;line-height:1;display:grid;position:absolute;top:17px;right:18px}.registration-modal-close:hover,.registration-modal-close:focus-visible{border-color:var(--forest);outline:none}.registration-modal-icon{background:var(--sun);width:68px;height:68px;color:var(--deep);border-radius:50%;place-items:center;margin:0 auto 20px;font-size:29px;font-weight:800;display:grid}.registration-modal .eyebrow{margin-bottom:10px}.registration-modal h2{color:var(--forest);font-family:var(--serif);margin:0 0 23px;font-size:clamp(38px,7vw,55px);line-height:1}.registration-modal-copy{gap:15px;display:grid}.registration-modal-copy p{color:#52675a;margin:0;font-size:15px;line-height:1.65}.registration-modal-copy strong{color:var(--forest)}.registration-modal-copy .registration-modal-note{color:var(--forest);background:#eef1df;border-radius:12px;padding:13px 15px;font-size:13px}.registration-modal-action{min-width:180px;margin-top:27px}.waiver-full{max-width:860px;margin:0 auto;padding:110px 30px}.waiver-full h2{font-family:var(--serif);margin-bottom:20px;font-size:52px}.waiver-full h3{font-family:var(--serif);margin:32px 0 10px;font-size:23px}.waiver-full p{color:#52675a;line-height:1.75}.waiver-updated{color:var(--moss);font-size:12px}.faq-section{grid-template-columns:.75fr 1.25fr;gap:100px;display:grid}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line);padding:24px 0}.faq-list summary{cursor:pointer;font-family:var(--serif);justify-content:space-between;gap:20px;font-size:21px;font-weight:600;list-style:none;display:flex}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";color:var(--clay);font-family:var(--sans)}.faq-list details[open] summary:after{content:"–"}.faq-list p{padding:15px 40px 0 0;font-size:14px}.closing-section{background:var(--sun);text-align:center;padding:110px 30px}.closing-section .eyebrow{color:var(--deep)}.closing-section h2{margin-bottom:34px}.button-light{background:var(--paper);color:var(--deep)}footer{background:var(--deep);color:#fff;grid-template-columns:1fr 1.2fr .5fr;align-items:start;gap:50px;padding:55px max(30px,50vw - 560px);display:grid}.footer-brand small{color:#afbeaf}.footer-contact{gap:5px;display:grid}.footer-contact p{color:#afbeaf;margin-bottom:8px;font-size:13px}.footer-contact a,.footer-links a{text-decoration:none}.footer-links{gap:9px;font-size:13px;display:grid}.footer-links p{color:#afbeaf;margin:0 0 3px;font-size:12px}.footer-links p strong{color:#fff}.footer-links a:hover{color:#f5c569}.legal-shell{background:var(--cream);min-height:100vh}.legal-header{border-bottom:1px solid var(--line);background:#faf8f0f5;padding:22px max(24px,50vw - 520px)}.legal-header .brand{width:max-content;text-decoration:none}.legal-page{width:min(100% - 48px,860px);margin:0 auto;padding:80px 0 100px}.legal-page .eyebrow{margin-bottom:12px}.legal-page h1{max-width:760px;font-family:var(--serif);letter-spacing:-.035em;margin-bottom:15px;font-size:clamp(45px,7vw,76px);line-height:.96}.legal-updated{color:var(--moss);margin-bottom:45px;font-size:12px}.legal-page h2{font-family:var(--serif);color:var(--forest);margin:38px 0 12px;font-size:26px}.legal-page p,.legal-page li{color:#52675a;line-height:1.75}.legal-page ul{padding-left:22px}.legal-page a{color:var(--forest);font-weight:700}.legal-note{background:#e6ead9;border-radius:16px;margin:36px 0;padding:24px}.legal-note p{color:var(--deep);margin:0}.admin-shell{min-height:100vh;color:var(--ink);background:#f3f0e7}.admin-header{background:var(--deep);color:#fff;justify-content:space-between;align-items:center;gap:30px;min-height:76px;padding:14px 30px;display:flex}.admin-header>div:first-child{align-items:baseline;gap:14px;display:flex}.admin-brand{font-family:var(--serif);margin:0;font-size:22px;font-weight:700}.admin-header>div:first-child span{color:#b9c7b9;text-transform:uppercase;letter-spacing:.12em;font-size:12px}.admin-account{align-items:center;gap:18px;font-size:12px;display:flex}.admin-account>span{color:#b9c7b9}.admin-account a{border-bottom:1px solid #ffffff73;padding-bottom:2px;text-decoration:none}.admin-layout{grid-template-columns:235px minmax(0,1fr);min-height:calc(100vh - 76px);display:grid}.admin-nav{border-right:1px solid var(--line);background:#e5e7d8;flex-direction:column;align-items:stretch;gap:8px;padding:34px 18px;display:flex}.admin-nav button{appearance:none;width:100%;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:14px 13px;font-weight:700;display:flex}.admin-nav button>span{color:var(--clay);font-family:var(--serif);font-size:13px}.admin-nav button em{text-align:center;background:#183b2b1a;border-radius:99px;min-width:24px;margin-left:auto;padding:3px 7px;font-size:10px;font-style:normal}.admin-nav button.active{background:var(--paper);box-shadow:0 6px 18px #22423014}.admin-main{padding:50px clamp(24px,5vw,72px) 90px;position:relative;overflow:hidden}.admin-title-row{justify-content:space-between;align-items:end;gap:24px;margin:0 0 34px;display:flex}.admin-title-row .eyebrow{margin-bottom:8px}.admin-title-row h1{margin:0;font-size:clamp(40px,5vw,64px);line-height:1}.admin-groups{gap:22px;max-width:980px;display:grid}.admin-card{border:1px solid var(--line);background:var(--paper);border-radius:18px;min-width:0;margin:0;padding:28px;box-shadow:0 10px 30px #2642310d}.admin-card legend{font-family:var(--serif);padding:0 8px;font-size:25px;font-weight:700}.admin-card>p,.admin-card>div>p{color:var(--moss);font-size:13px;line-height:1.55}.admin-fields{grid-template-columns:1fr 1fr;gap:18px;display:grid}.admin-fields label:last-child:nth-child(odd){grid-column:1/-1}.admin-fields label:has(textarea){grid-column:1/-1}.admin-fields label,.add-event label,.admin-event-controls label{gap:7px;display:grid}.admin-fields label>span,.add-event label>span,.admin-event-controls label>span{text-transform:uppercase;letter-spacing:.08em;color:#4f6355;font-size:11px;font-weight:700}.admin-fields input,.admin-fields textarea,.add-event input,.admin-event-controls input,.admin-event-controls select{width:100%;color:var(--ink);background:#fff;border:1px solid #cdd3c8;border-radius:9px;outline:none;padding:11px 12px}.admin-fields textarea{resize:vertical;min-height:105px;line-height:1.55}.admin-fields input:focus,.admin-fields textarea:focus,.add-event input:focus,.admin-event-controls input:focus,.admin-event-controls select:focus{border-color:var(--forest);box-shadow:0 0 0 3px #204c361a}.admin-toast{z-index:100;background:var(--deep);color:#fff;border-radius:10px;max-width:380px;padding:14px 18px;font-size:13px;font-weight:700;position:fixed;bottom:28px;right:28px;box-shadow:0 14px 40px #12312547}.add-event{grid-template-columns:minmax(220px,1fr) repeat(4,minmax(105px,.4fr)) auto;align-items:end;gap:14px;margin-bottom:26px;display:grid}.add-event h2{font-family:var(--serif);margin:0 0 4px;font-size:24px}.add-event p{margin-bottom:0}.add-event .button{min-height:43px}.admin-event-list{gap:12px;display:grid}.admin-event{border:1px solid var(--line);background:var(--paper);border-radius:15px;grid-template-columns:92px minmax(0,1fr) auto;align-items:center;gap:22px;padding:18px 20px;display:grid}.admin-event.is-hidden{opacity:.65;background:#ebe9e1}.admin-event-date{text-align:center;border-right:1px solid var(--line);display:grid}.admin-event-date span{color:var(--clay);text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:700}.admin-event-date strong{font-family:var(--serif);font-size:34px;line-height:1.1}.admin-event-date small{color:var(--moss);font-size:10px}.admin-event-controls{grid-template-columns:110px 110px 110px 125px minmax(130px,1fr);gap:11px;display:grid}.admin-event-actions{justify-items:end;gap:8px;display:grid}.admin-event-actions span{color:var(--moss);white-space:nowrap;font-size:11px}.admin-event-actions button{appearance:none;background:var(--forest);color:#fff;cursor:pointer;border:0;border-radius:99px;padding:9px 16px;font-weight:700}.admin-event-actions button:disabled,.admin-shell .button:disabled{cursor:wait;opacity:.55}.registration-table-wrap{border:1px solid var(--line);background:var(--paper);border-radius:16px;overflow-x:auto}.registration-table{border-collapse:collapse;width:100%;min-width:880px;font-size:12px}.registration-table th{text-align:left;text-transform:uppercase;letter-spacing:.08em;background:#e5e7d8;padding:13px 16px;font-size:10px}.registration-table td{border-top:1px solid var(--line);vertical-align:top;max-width:280px;padding:17px 16px;line-height:1.5}.registration-table td strong,.registration-table td small,.registration-table td a{display:block}.registration-table td small{color:var(--moss);margin-top:3px}.resend-email-button{appearance:none;border:1px solid var(--line);background:var(--forest);color:#fff;cursor:pointer;border-radius:99px;min-width:112px;padding:9px 13px;font-size:11px;font-weight:700}.resend-email-button:hover,.resend-email-button:focus-visible{background:var(--deep)}.resend-email-button:disabled{cursor:wait;opacity:.55}.admin-empty{border:1px dashed var(--line);text-align:center;background:#fffdf78c;border-radius:18px;padding:70px 30px}.admin-empty h2{font-family:var(--serif);margin-bottom:8px;font-size:32px}.admin-empty p{color:var(--moss)}.admin-denied{align-content:center;justify-items:start;max-width:670px;min-height:100vh;margin:0 auto;padding:40px 24px;display:grid}.admin-denied h1{font-size:clamp(52px,7vw,82px)}.admin-denied>p:not(.eyebrow){color:var(--moss);margin-bottom:28px;font-size:18px;line-height:1.6}.admin-login-shell{background:var(--cream);place-items:center;min-height:100vh;padding:36px 20px;display:grid}.admin-login-card{border:1px solid var(--line);background:var(--paper);border-radius:24px;width:min(100%,500px);padding:clamp(30px,6vw,56px);box-shadow:0 22px 65px #204c361f}.admin-login-brand{color:var(--forest);font-family:var(--serif);margin-bottom:46px;font-size:24px;font-weight:700;text-decoration:none;display:inline-block;transform:rotate(-2deg)}.admin-login-card .eyebrow{margin-bottom:10px}.admin-login-card h1{margin:0 0 14px;font-size:clamp(48px,8vw,72px);line-height:.98}.admin-login-card>p:not(.eyebrow){color:var(--moss);margin:0 0 28px;line-height:1.6}.admin-login-card .form-error{margin-bottom:20px}.admin-login-card form{gap:18px;display:grid}.admin-login-card form label{gap:7px;display:grid}.admin-login-card form label span{letter-spacing:.08em;text-transform:uppercase;color:#4f6355;font-size:11px;font-weight:700}.admin-login-card form input{width:100%;color:var(--ink);background:#fff;border:1px solid #cdd3c8;border-radius:10px;outline:none;padding:13px 14px}.admin-login-card form input:focus{border-color:var(--forest);box-shadow:0 0 0 3px #204c361a}.admin-login-card form .button{width:100%;margin-top:5px}.admin-login-return{color:var(--moss);border-bottom:1px solid var(--line);margin-top:24px;font-size:12px;text-decoration:none;display:inline-block}@media (width<=900px){.site-header{height:74px;padding:0 22px}nav a:not(.nav-cta){display:none}.hero{border-radius:0 0 34px 34px;grid-template-columns:1fr;gap:45px;padding:70px 28px 65px}.hero-lede{font-size:18px}.next-card{justify-self:center;width:100%;max-width:520px}.trust-strip{border-radius:22px;grid-template-columns:1fr;gap:9px;margin:16px 20px 0;padding:18px}.instagram-section{grid-template-columns:1fr;gap:14px;margin-left:20px;margin-right:20px;padding:14px}.instagram-heading{grid-template-columns:auto minmax(0,1fr);place-content:center stretch;gap:20px;min-height:230px;padding:28px;display:grid}.instagram-link{grid-column:1/-1}.theme-section{grid-template-columns:1fr;gap:42px;padding-top:82px;padding-bottom:82px}.instagram-section{margin:0 24px 82px}.intro-section,.about-section,.faq-section,.registration-wrap,.calendar-intro{grid-template-columns:1fr;gap:55px}.about-photo{justify-self:center;max-width:620px}.section{padding:88px 24px}.horizontal-heading{flex-direction:column;align-items:start}.moments-section{padding:82px 24px 90px}.moments-heading{flex-direction:column;align-items:start;gap:20px}.moments-heading>p{max-width:520px}.moments-grid{grid-template-columns:1fr 1fr;grid-auto-rows:300px}.moment-card:nth-child(n){border-radius:22px;grid-area:span 1/span 1}.moment-card:last-child{grid-column:1/-1}.experience-grid{grid-template-columns:1fr 1fr}.experience-grid article{border-bottom:1px solid #fff3}.experience-grid article:nth-child(2){border-right:0}.event-grid{grid-template-columns:repeat(3,1fr)}.waiver-panel{position:static}footer{grid-template-columns:1fr 1fr}.admin-layout{grid-template-columns:1fr}.admin-nav{border-right:0;border-bottom:1px solid var(--line);flex-direction:row;padding:12px 20px;overflow-x:auto}.admin-nav button{width:auto;min-width:max-content}.admin-main{padding-top:36px}.add-event{grid-template-columns:1fr 1fr}.add-event>div{grid-column:1/-1}.admin-event{grid-template-columns:72px 1fr}.admin-event-controls{grid-template-columns:repeat(2,1fr)}.admin-event-controls .event-note{grid-column:1/-1}.admin-event-actions{grid-column:2;justify-content:space-between;align-items:center;display:flex}}@media (width<=600px){.brand strong{font-size:16px}.brand small{font-size:8px}.nav-cta{padding:9px 14px}h1{font-size:58px}.hero-actions{flex-direction:column;align-items:stretch;gap:12px}.text-link{text-align:center;border:0}.next-card{border-radius:95px 95px 25px 25px;padding:38px 28px 30px}.sun-shape{width:72px;height:72px;right:24px}.payment-method>span{max-width:120px}.venmo-qr-link,.venmo-qr-link img{width:90px}.venmo-qr-link{flex-basis:90px}.venmo-qr-link img{height:90px}.theme-cards{grid-template-columns:1fr}.theme-card{min-height:220px}.instagram-section{border-radius:24px;gap:10px;margin:0 12px 72px;padding:10px}.instagram-heading{border-radius:18px;flex-direction:column;align-items:flex-start;gap:16px;min-height:0;padding:24px 20px;display:flex}.instagram-mark{border-radius:15px;width:52px;height:52px}.instagram-heading h2{font-size:clamp(22px,6.5vw,25px)}.instagram-link{grid-column:1/-1;width:100%}.instagram-feed{border-radius:18px}.instagram-preview-bar{padding:16px}.instagram-preview-cta{min-height:48px;padding:0 16px}.intro-section{gap:48px}.timeline article{grid-template-columns:62px 1fr;gap:15px}.moments-section{padding-left:0;padding-right:0;overflow:hidden}.moments-heading{padding-left:20px;padding-right:20px}.moments-gallery{position:relative}.moments-grid{overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:14px;padding:0 20px 14px;scroll-padding-inline:20px;display:flex;overflow-x:auto}.moments-grid::-webkit-scrollbar{display:none}.moment-card:nth-child(n),.moment-card:last-child{aspect-ratio:2/3;scroll-snap-align:start;scroll-snap-stop:always;border-radius:24px;flex:0 0 min(82vw,380px);grid-area:auto;width:min(82vw,380px);height:auto}.moment-card:nth-child(n) img{object-fit:cover;object-position:center}.moments-controls{justify-content:center;align-items:center;gap:20px;padding:12px 20px 0;display:flex}.moments-controls button{border:1px solid var(--line);background:var(--paper);width:46px;height:46px;color:var(--forest);cursor:pointer;border-radius:50%;place-items:center;font-size:21px;display:grid;box-shadow:0 7px 18px #12312514}.moments-controls button:disabled{opacity:.35;cursor:default}.moments-controls p{min-width:48px;color:var(--moss);text-align:center;margin:0;font-size:13px}.moments-controls strong{color:var(--forest)}.experience-grid{grid-template-columns:1fr}.experience-grid article,.experience-grid article:first-child{border-right:0;padding:28px 0}.experience-grid span{margin-bottom:22px}.about-photo{aspect-ratio:5/6;border-radius:180px 180px 22px 22px;min-height:0}.about-photo figcaption{max-width:165px;font-size:16px;bottom:16px;right:16px}.event-grid{grid-template-columns:1fr 1fr}.event-card{min-height:160px}.event-day{font-size:46px}.calendar-actions{flex-direction:column;align-items:flex-start}.registration-form{padding:28px 20px}.sms-consent-group{padding:18px 15px}.legal-page{width:min(100% - 36px,860px);padding:60px 0 80px}.form-row{grid-template-columns:1fr;gap:0}.success-card{padding:40px 24px}.registration-modal-backdrop{align-items:end;padding:12px}.registration-modal{border-radius:25px;max-height:92vh;padding:42px 22px 28px}.registration-modal h2{font-size:40px}.registration-modal-copy p{font-size:14px}.registration-modal-action{width:100%}.waiver-full{padding:85px 24px}footer{grid-template-columns:1fr}.admin-header{align-items:flex-start;padding:16px 20px}.admin-header>div:first-child{gap:3px;display:grid}.admin-account{flex-wrap:wrap;justify-content:flex-end;gap:8px 13px}.admin-account>span{text-align:right;width:100%}.admin-main{padding:30px 16px 70px}.admin-title-row{flex-direction:column;align-items:stretch}.admin-title-row .button{width:100%}.admin-card{padding:22px 16px}.admin-fields{grid-template-columns:1fr}.admin-fields label:last-child:nth-child(odd){grid-column:auto}.admin-fields label:has(textarea){grid-column:auto}.add-event{grid-template-columns:1fr}.add-event>div{grid-column:auto}.admin-event{grid-template-columns:1fr;padding:18px 15px}.admin-event-date{text-align:left;border-right:0;grid-template-columns:auto auto 1fr;justify-content:start;align-items:baseline;gap:6px}.admin-event-date strong{font-size:24px}.admin-event-controls{grid-template-columns:1fr 1fr}.admin-event-actions{grid-column:auto}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important}}
