@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&family=Outfit:wght@400;500;600;700;800&display=swap";*{margin:0;padding:0;box-sizing:border-box}:root{--header-height: 92px;--section-height: calc(100svh - var(--header-height));--sage: #a8b8a5;--sage-deep: #7f9480;--cream: #faf8f2;--blue: #dceef7;--blue-soft: #eef8fc;--paper: #fffdf8;--ink: #38413c;--ink-soft: #66706c;--border: rgba(56, 65, 60, .08);--shadow-soft: none;--shadow-hover: none;--ease-soft: cubic-bezier(.22, 1, .36, 1)}html{scroll-behavior:smooth;background:radial-gradient(circle at top left,rgba(168,184,165,.18),transparent 32%),linear-gradient(180deg,#fcfbf7,#f7f5ef)}body{font-family:DM Sans,sans-serif;color:var(--ink);line-height:1.6;background:radial-gradient(circle at 15% 15%,rgba(220,238,247,.7),transparent 24%),radial-gradient(circle at 85% 5%,rgba(168,184,165,.18),transparent 22%),linear-gradient(180deg,#faf8f2,#f8f6ef);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}a{color:inherit}.container{max-width:1040px;margin:0 auto;padding:0 1.5rem}.eyebrow{font-family:Outfit,sans-serif;text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;color:var(--sage-deep);margin-bottom:.85rem}h1,h2,h3,.logo,.primary-btn,.secondary-btn,.show-more-btn,.submit-btn,.menu-toggle,.carousel-arrow,.segmented-control button{font-family:Outfit,sans-serif}h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1.08;letter-spacing:-.03em;color:var(--ink);margin-bottom:1rem}h3{font-size:1.35rem;line-height:1.2}section{min-height:var(--section-height);display:grid;align-items:center;padding:clamp(3.75rem,5vw,5.75rem) 0;scroll-margin-top:calc(var(--header-height) + 1.5rem)}section>.container{width:100%}main{margin-top:var(--header-height)}.hero-grid,.two-column-layout,.feature-grid,.generator-grid,.showcase-grid{display:grid;gap:1.5rem}.hero-grid{gap:1.15rem}.feature-grid{gap:.65rem}.hero-aside{display:grid;gap:.75rem}.feature-grid .feature-copy{max-width:32rem}.feature-image-card{border-radius:28px;overflow:hidden;aspect-ratio:4 / 5;max-height:min(50vh,30rem);box-shadow:none}.label-text{display:inline}.contact-form textarea{resize:vertical;min-height:7.5rem;max-height:12rem;overflow:auto}.join-section{padding-block:clamp(3rem,4vw,4.5rem)}.join-section .section-heading{margin-bottom:1.1rem}.join-section .contact-form,.join-section .form-grid{gap:.9rem}.join-section .form-group{font-size:.98rem}.required-asterisk{color:#c94f4f;margin-left:.2rem;font-weight:700}.join-section .submit-btn{width:fit-content}.constitution-link{display:inline-flex;align-items:center;margin-top:.55rem;padding:.5rem .7rem;border-radius:14px;background:#dceef785;color:var(--ink);font-size:.9rem;text-decoration:none;box-shadow:0 8px 18px #38413c0d;transition:transform .25s var(--ease-soft),background-color .25s var(--ease-soft),box-shadow .25s var(--ease-soft)}.constitution-link:hover{transform:translateY(-2px);background:#a8b8a533;box-shadow:0 10px 22px #38413c14}.section-block{position:relative;background-image:linear-gradient(180deg,#faf8f26b,#faf8f200 14% 86%,#faf8f26b);background-repeat:no-repeat}.muted-block{background-image:linear-gradient(180deg,#dceef729,#fffdf8bd),linear-gradient(180deg,#faf8f26b,#faf8f200 14% 86%,#faf8f26b)}.glass-card,.contact-form,.about-panel,.generator-card,.sort-container,.meeting-card,.showcase-card{background:#fffdf8d1;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:24px;box-shadow:none}header{position:fixed;inset:0 0 auto;z-index:1000;background:#faf8f2c7;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.nav-container{display:flex;align-items:center;justify-content:space-between;gap:1rem;max-width:1180px;margin:0 auto;padding:1rem 1.5rem}.logo-container{display:inline-flex;align-items:center;gap:.85rem;text-decoration:none}.logo-container:hover .logo{transform:translateY(-1px)}.logo-img{width:42px;height:42px;border-radius:14px;box-shadow:0 10px 18px #5e705e1f}.logo{font-size:1.02rem;font-weight:700;text-transform:lowercase;letter-spacing:-.02em;color:var(--ink);transition:transform .3s var(--ease-soft)}.logo-subtitle{font-size:.76rem;color:var(--ink-soft)}.nav-links{display:flex;align-items:center;gap:.55rem;list-style:none}.nav-links a{position:relative;display:inline-flex;align-items:center;padding:.7rem .95rem;border-radius:999px;text-decoration:none;color:var(--ink-soft);transition:color .25s var(--ease-soft),background-color .25s var(--ease-soft),transform .25s var(--ease-soft)}.nav-links a:after{content:"";position:absolute;left:1rem;right:1rem;bottom:.45rem;height:2px;border-radius:999px;background:var(--sage);transform:scaleX(0);transform-origin:left;transition:transform .28s var(--ease-soft)}.nav-links a:hover,.nav-links a.active{color:var(--ink);background:#a8b8a533;transform:translateY(-2px)}.nav-links a:hover:after,.nav-links a.active:after{transform:scaleX(1)}.menu-toggle{display:none;width:3rem;height:3rem;border:1px solid var(--border);border-radius:999px;background:#ffffffb8;cursor:pointer;align-items:center;justify-content:center;gap:.3rem;flex-direction:column;transition:transform .25s var(--ease-soft),box-shadow .25s var(--ease-soft)}.menu-toggle span{width:1.15rem;height:1.5px;border-radius:999px;background:var(--ink);transition:transform .25s var(--ease-soft),opacity .25s var(--ease-soft)}.hero-section{padding-top:clamp(2rem,4vw,3.25rem)}.hero-grid,.two-column-layout,.feature-grid,.generator-grid,.showcase-grid{display:grid;gap:2rem}.hero-grid,.feature-grid,.generator-grid,.showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center}.feature-grid{gap:1rem}.hero-copy{display:grid;gap:1.3rem}.hero-copy h2{max-width:11ch}.hero-lead,.section-heading p,.feature-copy p,.about-panel p,.meeting-card p,.recommendation-card p,.showcase-panel p,.footer-copy,.footer-quote,.gallery-subtitle{color:var(--ink-soft);font-size:1.03rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:.4rem}.primary-btn,.secondary-btn,.show-more-btn,.submit-btn{display:inline-flex;align-items:center;justify-content:center;min-height:3rem;padding:.8rem 1.25rem;border-radius:999px;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:transform .25s var(--ease-soft),box-shadow .25s var(--ease-soft),background-color .25s var(--ease-soft),filter .25s var(--ease-soft)}.primary-btn,.submit-btn{background:#a8b8a5eb;color:#fffdf8;box-shadow:none}.secondary-btn,.show-more-btn{background:#dceef7d1;color:var(--ink);border-color:#7f94801f}.primary-btn:hover,.secondary-btn:hover,.show-more-btn:hover,.submit-btn:hover,.carousel-arrow:hover,.creative-btn:hover,.segmented-control button:hover{transform:translateY(-2px);box-shadow:none}.hero-quote,.card-kicker,.footer-kicker{font-family:Outfit,sans-serif;color:var(--sage-deep);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem}.hero-quote{max-width:32rem;padding:1rem 1.15rem;border-left:2px solid rgba(168,184,165,.5);background:#ffffff8a;border-radius:18px}.hero-aside{display:grid;gap:1rem}.glass-card,.about-panel,.generator-card,.contact-form,.showcase-card,.meeting-card,.recommendation-card,.feature-image-card{transition:transform .28s var(--ease-soft),box-shadow .28s var(--ease-soft),background-color .28s var(--ease-soft)}.glass-card:hover,.about-panel:hover,.generator-card:hover,.contact-form:hover,.showcase-card:hover,.meeting-card:hover,.recommendation-card:hover,.feature-image-card:hover{transform:translateY(-2px);box-shadow:none}.countdown-card,.tip-card,.about-panel,.generator-card,.meeting-card,.showcase-card,.recommendation-card{padding:1.25rem}.countdown-card h3,.tip-copy{margin:.4rem 0}.card-meta{font-size:.92rem;color:var(--ink-soft)}.section-heading{display:grid;gap:.2rem;max-width:42rem;margin-bottom:1.5rem}.narrow-heading{max-width:48rem}.section-heading.narrow-heading,.contact-form{width:min(100%,48rem);margin-inline:auto}.about-panel{padding:1.2rem;display:grid;gap:.9rem}.about-stat{background:#ffffffa6;border-radius:20px;padding:1rem 1.05rem;border:1px solid rgba(56,65,60,.05)}.about-stat span{display:block;font-family:Outfit,sans-serif;font-size:2rem;font-weight:700;line-height:1;color:var(--sage-deep);margin-bottom:.25rem}.feature-image-card img,.recommendation-card img,.showcase-panel img,.featured-gallery-card img{width:100%;height:100%;object-fit:cover}.feature-image-card{border-radius:28px;overflow:hidden;aspect-ratio:4 / 5;max-height:min(58vh,34rem);box-shadow:none}.detail-grid,.badge-row,.tutorial-meta,.footer-socials,.form-grid{display:flex;flex-wrap:wrap;gap:.75rem}.detail-pill,.badge-row span,.tutorial-meta span{background:#dceef78c;border-radius:18px;padding:.7rem .9rem;border:1px solid rgba(168,184,165,.12)}.detail-pill{display:grid;gap:.15rem;min-width:8.5rem}.detail-pill span,.tutorial-meta span,.badge-row span{font-size:.82rem;color:var(--ink-soft)}.detail-pill strong{color:var(--ink)}.fact-list{margin-top:1rem;padding-left:1.2rem;color:var(--ink-soft);display:grid;gap:.45rem}.meeting-card-grid,.tutorial-grid,.featured-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.meeting-card-grid{max-height:min(52vh,34rem);overflow-y:auto;padding:.15rem .35rem .15rem 0}.meeting-card,.tutorial-card{display:grid;gap:.65rem}.text-link{justify-self:start;color:var(--sage-deep);text-decoration:none;font-weight:700}.generator-card{display:grid;gap:1rem}.segmented-control{display:flex;flex-wrap:wrap;gap:.6rem}.segmented-control button{border:1px solid rgba(127,148,128,.16);background:#ffffffb8;color:var(--ink-soft);border-radius:999px;padding:.7rem .95rem;cursor:pointer;transition:background-color .24s var(--ease-soft),color .24s var(--ease-soft),transform .24s var(--ease-soft)}.segmented-control button.selected{background:#a8b8a52e;color:var(--ink)}.recommendation-card{display:grid;grid-template-columns:100px 1fr;gap:1rem;align-items:center;margin-top:.3rem}.recommendation-card img{height:100px;border-radius:20px}.creative-btn{width:fit-content}.contact-form{display:grid;gap:1rem;max-width:780px;margin:0 auto}.contact-form{padding:clamp(1.4rem,4vw,2.2rem)}.contact-form label{display:grid;gap:.45rem;color:var(--ink);font-weight:700}.contact-form input,.contact-form textarea{width:100%;padding:.9rem 1rem;border-radius:18px;border:1px solid rgba(127,148,128,.16);background:#ffffffd9;color:var(--ink);transition:box-shadow .22s var(--ease-soft),border-color .22s var(--ease-soft),transform .22s var(--ease-soft)}.contact-form input::placeholder,.contact-form textarea::placeholder{font-weight:400;color:var(--ink-soft);opacity:.72}.contact-form input:focus,.contact-form textarea:focus,.sort-select:focus{outline:none;border-color:#a8b8a5a6;box-shadow:0 0 0 4px #a8b8a524}.empty-state{color:var(--ink-soft)}.showcase-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem}.carousel-arrow{width:2.75rem;height:2.75rem;border-radius:999px;border:1px solid rgba(127,148,128,.15);background:#ffffffc7;color:var(--ink);cursor:pointer}.showcase-panel{display:grid;grid-template-columns:150px 1fr;gap:1rem;align-items:center}.showcase-panel img{aspect-ratio:1;border-radius:22px}.featured-gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.featured-gallery-card{position:relative;overflow:hidden;border-radius:24px;aspect-ratio:1;box-shadow:none}.featured-gallery-card img{height:100%;transition:transform .4s var(--ease-soft)}.featured-gallery-card:hover img{transform:scale(1.04)}.featured-gallery-overlay{position:absolute;inset:0;display:flex;align-items:end;padding:1rem;background:linear-gradient(180deg,transparent 30%,rgba(56,65,60,.42));color:#fffdf8;opacity:0;transition:opacity .28s var(--ease-soft)}.featured-gallery-card:hover .featured-gallery-overlay{opacity:1}.show-more-container{text-align:center;margin-top:1.5rem}.progress-meter{position:relative;width:100%;height:14px;border-radius:999px;background:#dceef7b3;overflow:hidden;margin:1rem 0}.progress-meter span{position:absolute;inset:0 auto 0 0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#a8b8a5f2,#dceef7f2)}.join-preview{display:grid;gap:1rem}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.form-message{color:var(--sage-deep);font-weight:400}.tree-link-icon{width:1.1rem;height:1.1rem;fill:currentColor}footer{padding:3rem 0 2rem;border-top:1px solid rgba(56,65,60,.07);background:#fffdf8e0}.footer-grid{max-width:1180px;margin:0 auto;padding:0 1.5rem;display:grid;grid-template-columns:1.4fr 1fr 1fr auto;gap:1.2rem;align-items:start}.footer-kicker{margin-bottom:.6rem}.footer-socials a{display:inline-flex;width:2.7rem;height:2.7rem;align-items:center;justify-content:center;border-radius:999px;background:#dceef7b8;color:var(--ink);text-decoration:none;transition:transform .25s var(--ease-soft),background-color .25s var(--ease-soft)}.footer-socials a:hover{transform:translateY(-2px);background:#a8b8a533}.footer-crane{width:84px;opacity:.9;animation:floatCrane 6s ease-in-out infinite}.footer-crane svg{width:100%;fill:none;stroke:var(--sage-deep);stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round}.footer-bottom{text-align:center;margin-top:2rem;color:var(--ink-soft)}.gallery-page-section .container{display:grid;gap:1rem;align-content:center}.gallery-page-section h2,.gallery-page-section .gallery-subtitle{text-align:center}.year-tabs{display:flex;gap:.65rem;overflow-x:auto;padding:.15rem 0 .35rem;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.year-tabs::-webkit-scrollbar{height:0}.year-tab{flex:0 0 auto;min-height:3rem;padding:.75rem 1.05rem;border-radius:18px 18px 8px 8px;border:1px solid rgba(127,148,128,.16);background:#ffffffeb;color:var(--ink-soft);box-shadow:none;cursor:pointer;scroll-snap-align:start;transition:transform .24s var(--ease-soft),background-color .24s var(--ease-soft),color .24s var(--ease-soft)}.year-tab:hover{transform:translateY(-2px);background:#fffffffa}.year-tab.active{background:#7f9480f5;color:#fffdf8}.gallery-fade{animation:galleryFade .32s var(--ease-soft)}.gallery-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;max-height:min(58vh,38rem);overflow-y:auto;padding:.15rem .35rem .15rem 0}.album-category{font-family:Outfit,sans-serif;color:var(--sage-deep);text-transform:uppercase;letter-spacing:.08em;font-size:.74rem;margin-bottom:.3rem}.gallery-photo-card{display:grid;gap:.85rem;padding:.85rem;border-radius:22px;background:#fffdf8d1;border:1px solid var(--border);box-shadow:none;transition:transform .28s var(--ease-soft),box-shadow .28s var(--ease-soft)}.gallery-photo-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover)}.gallery-photo-card img{aspect-ratio:1;border-radius:18px}.gallery-photo-card h3{margin-bottom:.3rem}.gallery-photo-card p{color:var(--ink-soft);font-size:.95rem}.empty-gallery{max-width:36rem;margin:1.5rem auto 0;padding:1.5rem;text-align:center}@keyframes galleryFade{0%{opacity:.55;filter:blur(6px)}to{opacity:1;filter:blur(0)}}@media(max-width:1100px){.gallery-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:768px){.year-tabs{margin-inline:-.25rem;padding-inline:.25rem}.gallery-photo-grid{grid-template-columns:1fr}}@media(max-width:540px){.year-tab{font-size:.92rem}}.show-more-btn:visited,.show-more-btn:active,.text-link:visited,.text-link:active{color:inherit}#scroll-progress{position:fixed;top:0;left:0;height:3px;width:0%;z-index:9999;pointer-events:none;background:linear-gradient(90deg,#a8b8a5e6,#dceef7f2);box-shadow:0 0 12px #a8b8a566}@keyframes floatCrane{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-6px) rotate(1deg)}}@media(max-width:1024px){.hero-grid,.feature-grid,.generator-grid,.showcase-grid,.footer-grid{grid-template-columns:1fr}.meeting-card-grid,.featured-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:768px){.container{padding:0 1rem}.menu-toggle{display:inline-flex}.nav-links{position:absolute;top:calc(100% + .6rem);left:1rem;right:1rem;display:grid;gap:.35rem;padding:.85rem;border-radius:24px;background:#fffdf8f2;box-shadow:var(--shadow-soft);border:1px solid var(--border);opacity:0;transform:translateY(-8px);pointer-events:none}.nav-links.open{opacity:1;transform:translateY(0);pointer-events:auto}.nav-links a{justify-content:center}.hero-grid,.feature-grid,.form-grid,.showcase-panel,.recommendation-card,.meeting-card-grid,.featured-gallery-grid{grid-template-columns:1fr}.gallery-grid{column-count:2}.sort-container{flex-direction:column}section{padding:2rem 0}}@media(max-height:720px){h2{font-size:clamp(1.75rem,3.2vw,2.6rem)}.section-heading{margin-bottom:1rem}.hero-copy{gap:.9rem}.countdown-card,.tip-card,.about-panel,.generator-card,.meeting-card,.showcase-card,.recommendation-card,.contact-form{padding:1rem}.join-section{padding-block:2.5rem}.join-section .section-heading{margin-bottom:.85rem}.join-section .contact-form{gap:.75rem}.contact-form textarea{min-height:6.5rem}}@media(max-width:540px){.recommendation-details{display:grid;gap:.35rem}.recommendation-summary{display:grid;gap:.2rem}.recommendation-meta{color:var(--ink-soft);font-size:.92rem}.gallery-grid{column-count:1}.hero-actions{flex-direction:column;align-items:stretch}.primary-btn,.secondary-btn,.show-more-btn,.submit-btn,.creative-btn{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.gallery:after{content:"";position:absolute;inset:0;background:#0000000a;opacity:0;pointer-events:none;transition:opacity .26s ease}.gallery:hover:after{opacity:1}.section{opacity:0;transform:translateY(12px)}.section.visible{opacity:1;transform:translateY(0);transition:opacity .42s var(--ease-soft),transform .42s var(--ease-soft)}.section.visible>*{opacity:0;transform:translateY(6px);transition:opacity .36s var(--ease-soft),transform .36s var(--ease-soft)}.section.visible>*:nth-child(1){transition-delay:40ms}.section.visible>*:nth-child(2){transition-delay:80ms}.section.visible>*:nth-child(3){transition-delay:.12s}.section.visible>*:nth-child(4){transition-delay:.16s}.section.visible>*{opacity:1;transform:translateY(0)}nav{transition:transform .32s var(--ease-soft)}nav.nav-hidden{transform:translateY(-100%)}.submit-btn.loading{pointer-events:none;opacity:.7}.submit-btn.loading:after{content:"";width:14px;height:14px;margin-left:10px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;display:inline-block;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.form-success{opacity:0;transform:translateY(6px);transition:opacity .36s var(--ease-soft),transform .36s var(--ease-soft)}.form-success.visible{opacity:1;transform:translateY(0)}
