:root{--color-forest: #185953;--color-linen: #E3DDCC;--color-white: #FFFFFF;--color-text: #1a1a1a;--color-muted: #666;--font-serif: "Cormorant Garamond", Georgia, serif;--font-sans: "Inter", system-ui, sans-serif;--max-width: 1080px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-sans);color:var(--color-text);background:var(--color-white);line-height:1.7}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}ul{list-style:none}.nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:1.25rem 2rem;transition:background .4s ease,padding .4s ease,box-shadow .4s ease}.nav--scrolled{background:var(--color-forest);padding:.75rem 2rem;box-shadow:0 2px 20px #00000026}.nav__logo{height:56px;width:auto;filter:brightness(0) invert(1);display:block}.hero{position:relative;height:100vh;min-height:560px;background-image:url(/images/picnic-hero.jpeg);background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center}.hero:before{content:"";position:absolute;inset:0;background:#00000061}.hero__content{position:relative;text-align:center;color:var(--color-white);padding:2rem}.hero__headline{font-family:var(--font-serif);font-size:clamp(3rem,7vw,5.5rem);font-weight:400;font-style:italic;letter-spacing:.01em;line-height:1.1;text-shadow:0 2px 24px rgba(0,0,0,.3)}.intro{background:var(--color-white);padding:7rem 2rem;text-align:center}.intro__inner{max-width:640px;margin:0 auto}.intro__quote{position:relative;margin-bottom:2.5rem}.intro__quote:before{content:"“";font-family:var(--font-serif);font-size:9rem;color:var(--color-forest);opacity:.12;position:absolute;top:-3.5rem;left:50%;transform:translate(-50%);line-height:1;pointer-events:none}.scripture{font-family:var(--font-serif);font-style:italic;font-size:1.45rem;color:var(--color-text);line-height:1.55;margin-bottom:.6rem}.scripture__reference{font-family:var(--font-serif);font-style:italic;font-size:1rem;color:var(--color-muted);letter-spacing:.04em;display:block}.intro__body{font-size:1.05rem;line-height:1.85;color:var(--color-muted)}.about{background:var(--color-linen)}.about__inner{max-width:var(--max-width);margin:0 auto;padding:6rem 2rem;display:grid;grid-template-columns:5fr 7fr;gap:5rem;align-items:start}.about__image-wrap{position:relative}.about__image{width:100%;aspect-ratio:3 / 4;object-fit:cover;object-position:top;display:block}.about__image-wrap:after{content:"";position:absolute;inset:-10px -10px 10px 10px;border:1px solid rgba(24,89,83,.25);pointer-events:none}.about__roles{font-family:var(--font-serif);font-style:italic;font-size:1rem;color:var(--color-forest);letter-spacing:.02em;margin-bottom:.75rem}.about__heading{font-family:var(--font-serif);font-size:clamp(2.2rem,4vw,3rem);font-weight:400;color:var(--color-text);margin-bottom:1.75rem;line-height:1.15}.about__body{font-size:1.025rem;line-height:1.85;color:var(--color-text);margin-bottom:1.25rem}.about__pdf{display:inline-block;margin-top:1rem;color:var(--color-forest);font-size:.875rem;letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid var(--color-forest);padding-bottom:2px;transition:opacity .2s}.about__pdf:hover{opacity:.65}.section-banner{position:relative;min-height:65vh;background-size:cover;background-position:center;background-attachment:fixed;display:flex;align-items:center;justify-content:center;overflow:hidden}.section-banner:before{content:"";position:absolute;inset:0;background:#123c379e}.section-banner__content{position:relative;text-align:center;color:var(--color-white);padding:5rem 2rem;max-width:760px}.section-banner__label{font-family:var(--font-sans);font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;opacity:.75;margin-bottom:1rem;display:block}.section-banner__heading{font-family:var(--font-serif);font-size:clamp(2.8rem,5.5vw,4.5rem);font-weight:400;line-height:1.1;margin-bottom:2rem}.section-banner__scripture{font-family:var(--font-serif);font-style:italic;font-size:clamp(1.1rem,2.2vw,1.4rem);line-height:1.6;opacity:.88;margin-bottom:.5rem}.section-banner__reference{font-family:var(--font-serif);font-style:italic;font-size:1rem;opacity:.8;display:block;margin-top:.4rem}.section-banner__divider{width:40px;height:1px;background:#fff6;margin:0 auto 2rem}.section-content{padding:5rem 2rem}.section-content__inner{max-width:820px;margin:0 auto}.section-content.bg-linen{background:var(--color-linen)}.section-content.bg-white{background:var(--color-white)}.section-subheading{font-family:var(--font-serif);font-size:1.6rem;font-weight:400;color:var(--color-text);margin:2.75rem 0 1rem}.section-subheading:first-child{margin-top:0}.body-text{font-size:1.025rem;line-height:1.85;color:var(--color-text);margin-bottom:1.25rem}.bullet-list{padding-left:0;margin-bottom:1.5rem}.bullet-list li{font-size:1.025rem;line-height:1.8;color:var(--color-text);padding-left:1.4rem;position:relative;margin-bottom:.5rem}.bullet-list li:before{content:"—";position:absolute;left:0;color:var(--color-forest);font-size:.9em}.cta-link{display:inline-block;margin-top:1.75rem;border:1px solid var(--color-forest);color:var(--color-forest);padding:.7rem 1.75rem;border-radius:2px;font-family:var(--font-sans);font-size:.875rem;letter-spacing:.06em;text-transform:uppercase;transition:background .2s,color .2s}.cta-link:hover{background:var(--color-forest);color:var(--color-white)}.callout-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin:0 0 3rem}.callout-card{padding:1.75rem;border:1px solid rgba(24,89,83,.18);border-radius:2px;font-size:1.025rem;line-height:1.8;background:var(--color-white)}.callout-card strong{display:block;font-family:var(--font-serif);font-size:1.15rem;font-weight:500;color:var(--color-forest);margin-bottom:.5rem;font-style:normal}#retreat-schedule{margin-bottom:3rem}.schedule-heading{font-family:var(--font-serif);font-size:1.6rem;font-weight:400;margin-bottom:1.25rem}.event-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}.event-card{background:var(--color-white);padding:1.5rem;border-top:2px solid var(--color-forest)}.event-card__title{font-family:var(--font-serif);font-size:1.2rem;font-weight:500;margin-bottom:.35rem}.event-card__date{font-size:.875rem;color:var(--color-forest);font-weight:500;letter-spacing:.08em;text-transform:uppercase;margin-bottom:.3rem}.event-card__location{font-size:.9rem;color:var(--color-muted);margin-bottom:.75rem}.event-card__desc{font-size:.95rem;line-height:1.7;color:var(--color-text);margin-bottom:1rem}.event-card__rsvp{display:inline-block;border:1px solid var(--color-forest);color:var(--color-forest);padding:.45rem 1.1rem;border-radius:2px;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;transition:background .2s,color .2s}.event-card__rsvp:hover{background:var(--color-forest);color:var(--color-white)}.schedule-fallback{font-family:var(--font-serif);font-style:italic;font-size:1.1rem;color:var(--color-muted)}.schedule-fallback a{color:var(--color-forest);text-decoration:underline;text-underline-offset:3px}.retreat-types{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin:0 0 1.25rem}.retreat-type-card{background:var(--color-white);padding:1.75rem;border:1px solid rgba(24,89,83,.18);border-radius:2px}.retreat-type-card__name{font-family:var(--font-serif);font-size:1.2rem;font-weight:500;color:var(--color-forest);margin-bottom:.75rem}.retreat-type-card p{font-size:.975rem;line-height:1.75}.retreat-note{font-size:.9rem;color:var(--color-muted);font-style:italic}.soul-care{margin-top:4rem;padding-top:3rem;border-top:1px solid rgba(24,89,83,.15)}.footer{background:var(--color-forest);color:var(--color-white);padding:4rem 2rem;text-align:center}.footer__inner{max-width:var(--max-width);margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:1.75rem}.footer__logo{height:52px;width:auto;filter:brightness(0) invert(1);opacity:.9}.footer__links{display:flex;gap:2.5rem;flex-wrap:wrap;justify-content:center}.footer__links a{color:var(--color-white);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;opacity:.7;transition:opacity .2s}.footer__links a:hover{opacity:1}.footer__email{color:var(--color-white);font-family:var(--font-serif);font-style:italic;font-size:1.05rem;opacity:.85;transition:opacity .2s}.footer__email:hover{opacity:1}.footer__copy{font-size:.75rem;opacity:.45;letter-spacing:.04em}.fade-in{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.fade-in.visible{opacity:1;transform:none}@media (max-width: 900px){.retreat-types{grid-template-columns:1fr 1fr}}@media (max-width: 768px){.nav{display:flex;justify-content:center}.section-banner{background-attachment:scroll;min-height:55vh}.about__inner{grid-template-columns:1fr;gap:2.5rem;padding:4rem 1.5rem}.about__image{aspect-ratio:4 / 3}.about__image-wrap:after{display:none}.callout-cards,.retreat-types{grid-template-columns:1fr}.section-content{padding:4rem 1.5rem}.intro{padding:5rem 1.5rem}.footer__links{gap:1.5rem}}@media (max-width: 480px){.hero__headline,.section-banner__heading{font-size:2.5rem}}
