.hero-image{min-height:500px;position:relative;overflow:hidden;background:#e8f2ec}
.hero-image img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center}
.hero-image-caption{position:absolute;right:9%;bottom:9%;padding:16px 20px;color:#00547b;background:rgba(255,255,255,.92);font:26px/1.25 "Playfair Display",Georgia,serif}
.portrait-panel p{padding:13px 18px!important;color:#00547b!important;background:rgba(255,255,255,.94)!important;font-size:15px!important}
.service-grid article{min-height:375px;padding:0 31px 34px;overflow:hidden}
.service-thumb{width:calc(100% + 62px);height:150px;margin:0 -31px 25px;object-fit:cover;object-position:center 20%}
.service-grid h3{margin:18px 0 14px}
.program{padding:0 30px 32px;overflow:hidden}
.program-thumb{width:calc(100% + 60px);height:150px;margin:0 -30px 25px;object-fit:cover}
.offerings{padding:110px 8vw;background:#f6fbf4}
.offer-grid{max-width:1180px;display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin:auto}
.offer-card{display:flex;flex-direction:column;padding:0 38px 38px;border:1px solid #d8e8dc;background:#fff}
.offer-card.featured{border-top:5px solid #00547b}
.offer-card.faith{border-top:5px solid #168b53}
.offer-thumb{width:calc(100% + 76px);height:150px;margin:0 -38px 28px;object-fit:cover;object-position:center 18%}.offer-kicker{display:block;margin-bottom:20px;color:#168b53;font-size:11px;font-weight:700;letter-spacing:.13em}
.offer-card h3{color:#00547b;font:31px/1.1 "Playfair Display",Georgia,serif}
.offer-card p{color:#526d77}
.offer-card ul{margin:8px 0 26px;padding:0;list-style:none;color:#335866}
.offer-card li{padding:7px 0 7px 23px;position:relative}
.offer-card li:before{content:"";width:8px;height:8px;position:absolute;left:1px;top:16px;border-radius:50%;background:#a8d735}
.offer-card .button{align-self:flex-start;margin-top:auto}
.mission{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;align-items:start;padding:105px 12vw;background:#00547b;color:#fff}
.mission .eyebrow{color:#cbe76f}.mission h2{font:clamp(2.2rem,4vw,3.25rem)/1.1 "Playfair Display",Georgia,serif;letter-spacing:-.035em}.mission-grid{display:grid;gap:18px}.mission article{padding:28px 30px;background:rgba(255,255,255,.1);border-left:3px solid #a8d735}.mission h3{margin-bottom:10px;font:28px/1.1 "Playfair Display",Georgia,serif}.mission p{margin:0;color:#e1eff2}
.book-collection{padding:110px 8vw;background:#f6fbf4}.book-grid{max-width:1180px;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:auto}.book-grid article{height:100%;min-height:570px;padding:30px 28px;border:1px solid #dcebd9;border-top:5px solid #168b53;border-radius:3px;background:#fff;box-shadow:0 12px 30px rgba(0,61,79,.08)}.book-grid h3{color:#004e70;font:600 26px/1.15 "Playfair Display",Georgia,serif;letter-spacing:-.015em}.book-grid p{color:#526d77}.collection-action{margin-top:34px;text-align:center}
.fireside-feature{display:grid;grid-template-columns:1.3fr .7fr;align-items:stretch;background:#f4e7ed}.fireside-feature>img{display:block;width:100%;height:100%;min-height:410px;object-fit:cover}.fireside-feature>div{display:flex;flex-direction:column;justify-content:center;padding:56px 10%;color:#173d4e}.fireside-feature h2{margin-bottom:18px;font:clamp(2.15rem,3.5vw,3.35rem)/1.08 "Playfair Display",Georgia,serif;letter-spacing:-.035em}.fireside-feature p:not(.eyebrow){margin:0 0 28px;color:#526d77}.fireside-feature .button{align-self:flex-start;background:#a73672}.fireside-feature .button:hover{background:#882657}
.book-grid article{display:grid;grid-template-rows:240px 86px 1fr auto;align-items:start}.book-grid img{width:100%;height:220px;margin:0 auto;align-self:center;object-fit:contain;object-position:center}.book-grid h3{width:100%;display:flex;align-items:center;justify-content:center;margin:0;padding:12px 0;text-align:center;border-bottom:1px solid #dcebd9}.book-grid p{margin:18px 0 22px}.book-link{width:100%;margin-top:8px;padding-top:14px;border-top:1px solid #edf3ec;color:#168b53;font-size:14px;font-weight:700;text-align:center}.book-link:hover{color:#00547b}.book-link span{margin-left:5px;font-size:17px}
@media(max-width:1100px) and (min-width:801px){.book-grid{grid-template-columns:repeat(2,1fr)}}
.digital-resources{padding:110px 8vw;background:#00547b}.digital-resources .section-heading h2{color:#fff}.digital-resources .section-heading p:last-child{color:#d7e9ee}.digital-resources .eyebrow{color:#cbe76f}.resource-grid{max-width:1180px;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:auto}.resource-grid article{display:flex;flex-direction:column;min-height:320px;padding:0 25px 30px;background:#fff;border-top:4px solid #a8d735}.resource-thumb{width:calc(100% + 50px);height:185px;margin:0 -25px 24px;object-fit:cover;object-position:left center}.resource-label{margin:0 0 24px;color:#168b53;font-size:11px;font-weight:700;letter-spacing:.11em}.resource-grid h3{color:#00547b;font:27px/1.1 "Playfair Display",Georgia,serif}.resource-grid p:not(.resource-label){color:#526d77}.resource-grid .button{align-self:flex-start;margin-top:auto}.collection-action{display:none}@media(max-width:800px){.digital-resources{padding:75px 6vw}.resource-grid{grid-template-columns:1fr}.resource-grid article{min-height:0}.resource-thumb{height:235px}.offer-card{padding:0 30px 30px}.offer-thumb{width:calc(100% + 60px);margin:0 -30px 25px}}
@media(max-width:800px){.offerings{padding:75px 6vw}.offer-grid{grid-template-columns:1fr}.offer-card{padding:30px}}
@media(max-width:800px){.mission{grid-template-columns:1fr;gap:38px;padding:75px 8vw}.book-collection{padding:75px 6vw}.book-grid{grid-template-columns:1fr}.book-grid article{min-height:0;grid-template-rows:240px 78px auto auto}.book-grid img{width:100%;height:220px;margin:0 auto}.fireside-feature{grid-template-columns:1fr}.fireside-feature>img{min-height:auto}.fireside-feature>div{padding:55px 8vw}}
@media(max-width:800px){.hero-image{min-height:340px}.hero-image-caption{right:7%;bottom:7%;font-size:22px}}

.event-feature{max-width:1180px;display:grid;grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr);gap:clamp(45px,7vw,90px);align-items:center;margin:110px auto;padding:0 30px;scroll-margin-top:115px}
.event-flyer{overflow:hidden;border-radius:8px;box-shadow:0 24px 60px rgba(0,63,93,.18)}
.event-flyer img{display:block;width:100%;height:auto}
.event-copy h2{margin-bottom:22px;font:clamp(2.5rem,5vw,4.25rem)/1.05 "Playfair Display",Georgia,serif;color:#00547b}
.event-lead{max-width:610px;color:#526d77;font-size:18px}
.event-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:30px 0}
.event-details div{padding:18px 20px;border-left:4px solid #a8d735;background:#edf7ed}
.event-details div:last-child{grid-column:1/-1}
.event-details dt{color:#168b53;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.event-details dd{margin:4px 0 0;color:#173d4e;font-weight:600;line-height:1.45}
.event-includes{max-width:610px;color:#526d77}
.event-button{margin-top:10px;padding:14px 22px}
@media(max-width:800px){.event-feature{grid-template-columns:1fr;gap:42px;margin:75px auto;padding:0 6vw}.event-flyer{max-width:560px;margin:auto}.event-details{grid-template-columns:1fr}.event-details div:last-child{grid-column:auto}.event-button{width:100%}}

.event-feature{max-width:none;display:flex;flex-direction:column;gap:0;margin:0;padding:105px 8vw;background:linear-gradient(180deg,#f6fbf4 0%,#fff 100%);text-align:center}
.event-copy{max-width:760px;margin:0 auto 42px}
.event-copy .eyebrow{margin-bottom:12px}
.event-copy h2{margin-bottom:18px}
.event-lead{margin:0 auto}
.event-flyer{width:min(100%,620px);margin:0 auto;border:1px solid #d8e8dc;border-radius:6px;box-shadow:0 24px 65px rgba(0,63,93,.16)}
.event-details{width:min(100%,860px);grid-template-columns:repeat(3,minmax(0,1fr));margin:38px auto 24px}
.event-details div,.event-details div:last-child{grid-column:auto;padding:21px 18px;border-left:0;border-top:4px solid #a8d735}
.event-includes{max-width:720px;margin:0 auto 22px}
.event-button{margin:0 auto;padding:15px 28px}
@media(max-width:800px){.event-feature{gap:0;margin:0;padding:75px 6vw}.event-copy{margin-bottom:32px}.event-details{grid-template-columns:1fr;margin-top:30px}.event-button{width:100%}}

.fireside-hosting{padding:110px 8vw;background:#f8fbf7;scroll-margin-top:110px}
.fireside-hosting-intro{max-width:820px;margin:0 auto 52px;text-align:center}
.fireside-hosting-intro h2{margin-bottom:22px;color:#00547b;font:clamp(2.35rem,4.5vw,3.8rem)/1.08 "Playfair Display",Georgia,serif;letter-spacing:-.035em}
.fireside-hosting-intro>p:not(.eyebrow){color:#526d77;font-size:17px}
.fireside-credentials{margin:26px auto;padding:18px 24px;border-top:1px solid #bcd8ca;border-bottom:1px solid #bcd8ca;color:#173d4e!important}
.fireside-packages{max-width:1180px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:auto}
.fireside-packages article{display:flex;flex-direction:column;padding:34px 30px;border-top:5px solid #168b53;background:#fff;box-shadow:0 12px 34px rgba(0,61,79,.08)}
.fireside-packages .featured-package{border-top-color:#a73672;transform:translateY(-8px)}
.package-label{margin:0 0 15px;color:#168b53;font-size:11px;font-weight:700;letter-spacing:.14em}
.featured-package .package-label{color:#a73672}
.fireside-packages h3{min-height:62px;color:#00547b;font:29px/1.08 "Playfair Display",Georgia,serif}
.package-price{margin:24px 0 3px;color:#526d77}.package-price strong{color:#173d4e;font-size:25px}
.package-capacity{margin:0 0 20px;color:#168b53;font-size:14px;font-weight:700}
.fireside-packages ul{margin:0;padding:20px 0 0;border-top:1px solid #dcebd9;list-style:none;color:#526d77}
.fireside-packages li{padding:6px 0 6px 20px;position:relative}
.fireside-packages li:before{content:"";width:7px;height:7px;position:absolute;left:0;top:15px;border-radius:50%;background:#a8d735}
.rewrite-experience{max-width:1180px;display:grid;grid-template-columns:.85fr 1.15fr;gap:7vw;margin:56px auto 0;padding:45px 50px;color:#fff;background:#00547b}
.rewrite-experience .eyebrow{color:#cbe76f}.rewrite-experience h3{font:34px/1.1 "Playfair Display",Georgia,serif}.rewrite-experience p{color:#dcecf0}.rewrite-price{margin-top:0}.rewrite-price strong{color:#fff;font-size:22px}
.booking-terms{max-width:1180px;display:grid;grid-template-columns:1.35fr .65fr;gap:20px;margin:20px auto 0}
.booking-terms>div{padding:32px 34px;border:1px solid #d8e8dc;background:#fff}
.booking-terms h3{margin-bottom:12px;color:#00547b;font:27px/1.1 "Playfair Display",Georgia,serif}.booking-terms p{margin:0;color:#526d77}
.fireside-hosting-cta{max-width:860px;margin:48px auto 0;text-align:center}.fireside-hosting-cta p{color:#526d77;font:24px/1.35 "Playfair Display",Georgia,serif}.fireside-hosting-cta .button{margin-top:8px;background:#a73672}.fireside-hosting-cta .button:hover{background:#882657}
@media(max-width:800px){.fireside-hosting{padding:75px 6vw}.fireside-packages,.rewrite-experience,.booking-terms{grid-template-columns:1fr}.fireside-packages .featured-package{transform:none}.fireside-packages h3{min-height:0}.rewrite-experience{gap:20px;padding:36px 28px}.booking-terms>div{padding:28px 25px}.fireside-hosting-cta .button{width:100%}}

.fireside-hosting{padding-bottom:40px}
.book-collection{padding-top:50px}
@media(max-width:800px){.fireside-hosting{padding-bottom:32px}.book-collection{padding-top:42px}}

.event-grid{width:min(100%,1180px);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:0 auto}
.event-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid #d8e8dc;border-radius:8px;background:#fff;box-shadow:0 18px 48px rgba(0,63,93,.11);text-align:left}
.event-card-flyer{aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;padding:18px;background:#edf4ef}
.event-card-flyer img{display:block;max-width:100%;max-height:100%;object-fit:contain;box-shadow:0 8px 24px rgba(0,36,54,.14)}
.event-card-content{display:flex;flex:1;flex-direction:column;padding:30px}
.event-host{margin:0 0 12px;color:#168b53;font-size:12px;font-weight:700;letter-spacing:.11em}
.event-card h3{color:#00547b;font:31px/1.1 "Playfair Display",Georgia,serif}
.event-card-details{display:grid;gap:12px;margin:24px 0}
.event-card-details div{padding-left:15px;border-left:3px solid #a8d735}
.event-card-details dt{color:#168b53;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.event-card-details dd{margin:2px 0 0;color:#173d4e;line-height:1.45}
.event-card-content>p:not(.event-host){color:#526d77}
.event-card .event-button{align-self:flex-start;margin-top:auto}
@media(max-width:800px){.event-grid{grid-template-columns:1fr}.event-card-content{padding:25px}.event-card-flyer{aspect-ratio:auto;padding:12px}.event-card-flyer img{width:100%;height:auto}.event-card .event-button{align-self:stretch}}
