.pricing-page .experience-links{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 28px;margin:20px 0 28px}
.experience-links a,.experience-return,.location-guide a.experience-text-link{color:#315237;text-decoration:underline;text-underline-offset:4px;line-height:1.6}
.gift-section{margin-top:48px;padding:48px 0 0;text-align:left;border-top:1px solid #ded8ca;scroll-margin-top:110px;color:#30392f}
.gift-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center}
.experience-eyebrow{font-size:12px;font-weight:600;letter-spacing:.14em;color:#89652d;margin:0 0 16px}
.gift-section h2{font-family:Georgia,serif;font-size:clamp(30px,3.2vw,45px);font-weight:400;line-height:1.18;letter-spacing:-.025em;margin:0 0 22px;color:#30392f}
.gift-intro{font-size:18px;line-height:1.65;max-width:500px;margin:0 0 20px}
.gift-price{font-size:20px;font-weight:600;color:#315237;margin:0 0 8px}
.gift-note{font-size:15px;line-height:1.6;max-width:460px;margin:0 0 24px;color:#62665c}
.gift-copy a.button.button-primary{white-space:normal;line-height:1.45;margin-top:0;color:#283422}
.gift-preview{margin:0;padding:28px 22px 20px;background:#ecefe7;min-width:0;transform:rotate(1deg)}
.gift-certificate{position:relative;border:1px solid #aa8d55;outline:1px solid #cbbd9b;outline-offset:-9px;background:#fcfaf3;padding:34px 26px 28px;text-align:center;box-shadow:0 12px 25px #33422f15}
.gift-certificate img{width:132px;height:auto;margin:0 auto 22px;display:block;mix-blend-mode:multiply}
.gift-certificate-rule{display:block;width:44px;height:1px;background:#ad8d50;margin:0 auto 20px}
.gift-certificate-title{font:400 clamp(28px,3vw,40px)/1.15 Georgia,serif;color:#2c4933;margin:0 0 14px;overflow-wrap:break-word}
.gift-certificate-subtitle{font-size:14px;line-height:1.5;color:#71684e;margin:0 0 35px}
.gift-certificate-for{font:italic 16px/1.6 Georgia,serif;color:#615d4b;margin:0 0 22px;padding-bottom:9px;border-bottom:1px solid #d6cdb6}
.gift-certificate-place{font-size:9px;line-height:1.6;letter-spacing:.14em;color:#71684e;margin:0}
.gift-preview figcaption{font-size:12px;color:#62665c;line-height:1.5;text-align:center;margin-top:16px}
.gift-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;list-style:none;counter-reset:gift-step;margin:36px 0 0;padding:28px 0 0;border-top:1px solid #ded8ca}
.gift-steps li{counter-increment:gift-step;position:relative;padding-left:38px}
.gift-steps li::before{content:'0' counter(gift-step);position:absolute;left:0;top:1px;font:italic 22px Georgia,serif;color:#98763a}
.gift-steps h3{font-size:17px;line-height:1.4;font-weight:600;margin:0 0 8px;color:#30392f}
.gift-steps p{font-size:14px;line-height:1.65;margin:0;color:#62665c}
.gift-section a:focus-visible,.experience-links a:focus-visible,.location-guide a:focus-visible,.location-guide button:focus-visible{outline:3px solid #315237!important;outline-offset:4px}
.location-guide{background:#fcfbf8;text-align:left;color:#30392f;padding-bottom:56px}
.location-guide-heading{padding-top:48px;padding-bottom:36px}
.location-guide h1{font:400 clamp(36px,4.8vw,60px)/1.12 Georgia,serif;max-width:850px;letter-spacing:-.025em;color:#30392f}
.location-guide-intro{max-width:750px;font-size:20px;line-height:1.7;margin:24px 0}
.location-guide-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;margin-top:24px}
.location-guide a.button.button-primary{white-space:normal;line-height:1.5;color:#283422}
.location-request{background:#ecefe7;padding:36px;margin-top:40px}
.location-request h2{font:400 32px/1.2 Georgia,serif;color:#30392f;margin:0 0 16px}
.location-request p{max-width:650px;font-size:18px;line-height:1.65;margin:0 0 22px}
@media(max-width:991px){.gift-layout{gap:28px}.gift-preview{padding:20px 16px}.gift-certificate{padding:30px 20px 24px}.gift-steps{gap:18px}.gift-steps li{padding-left:32px}}
@media(max-width:767px){
 .gift-section{margin-top:28px;padding-top:30px;scroll-margin-top:80px}.gift-layout{grid-template-columns:1fr;gap:30px}.gift-copy{max-width:560px}.gift-intro{font-size:17px}.gift-preview{max-width:490px;width:100%;transform:none;padding:22px 16px}.gift-certificate-title{font-size:34px}.gift-steps{grid-template-columns:1fr;gap:22px;margin-top:28px}.gift-steps li{padding-left:40px}.gift-steps h3{font-size:18px}.gift-steps p{font-size:15px}.location-guide-heading{padding-top:32px}.location-guide-intro{font-size:18px}.location-request{padding:26px 20px}.location-request h2{font-size:28px}
}
@media(max-width:359px){.gift-certificate{padding:28px 16px 22px}.gift-certificate-title{font-size:29px}.gift-price{font-size:18px}}
.location-guide-heading>.experience-eyebrow{margin-top:36px}
.location-index{display:flex;flex-wrap:wrap;gap:10px 24px;padding-top:24px;border-top:1px solid #ded8ca}
.location-index a{color:#315237;text-decoration:underline;text-underline-offset:4px}
.location-feature{padding:36px 0;border-top:1px solid #ded8ca;scroll-margin-top:100px}
.location-feature-heading{display:grid;grid-template-columns:46px minmax(0,1fr);gap:18px;max-width:840px;margin-bottom:24px}
.location-number{font:italic 27px/1.5 Georgia,serif;color:#98763a}
.location-feature h2{font:400 clamp(28px,3vw,38px)/1.2 Georgia,serif;margin:0 0 14px;color:#30392f}
.location-feature-heading p{font-size:18px;line-height:1.65;margin:0}
.location-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start}
.location-photo{display:block;overflow:hidden;background:#e9e8df;cursor:zoom-in}
.location-photo img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
.location-photos:has(>.location-photo:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr));max-width:780px}
.location-photos:has(>.location-photo:nth-child(4):last-child){grid-template-columns:repeat(4,minmax(0,1fr))}
.location-feature-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;padding-top:18px}
.location-feature-notes p{font-size:15px;line-height:1.65;color:#62665c;margin:0}
.location-feature .location-inquire{display:inline-block;padding:10px 0;margin-top:10px;line-height:1.5}
html.location-lightbox-open{overflow:hidden}
.location-lightbox{border:0;padding:24px;margin:0;width:100vw;max-width:none;height:100dvh;max-height:none;background:transparent;color:#fff;overflow:auto}
.location-lightbox:not([open]),.location-lightbox [hidden]{display:none!important}
.location-lightbox[open]{display:flex;align-items:center;justify-content:center}
.location-lightbox::backdrop{background:rgba(16,20,16,.93)}
.location-lightbox-frame{width:min(1100px,100%);min-width:0}
.location-lightbox-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:12px}
.location-lightbox-header h2{font-size:22px;font-weight:400;line-height:1.3;color:#fff}
.location-lightbox button{display:flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;border:1px solid #aaa9;background:#2228;border-radius:50%;color:#fff;font:400 34px/1 sans-serif;cursor:pointer}
.location-lightbox button:focus-visible{outline:3px solid #ebb85e!important;outline-offset:3px}
.location-lightbox button:disabled{opacity:.35;cursor:default}
.location-lightbox-stage{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:16px}
.location-lightbox-image{display:flex;align-items:center;justify-content:center;min-height:140px}
.location-lightbox-image img{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100dvh - 210px);object-fit:contain;touch-action:pan-y}
.location-lightbox-error{font-size:16px;text-align:center;color:#fff}
.location-lightbox-counter{text-align:center;margin-top:12px;font-size:14px;line-height:1.5}
@media(max-width:767px){
 .location-guide-heading>.experience-eyebrow{margin-top:28px}.location-index{gap:12px 20px}.location-feature-heading{grid-template-columns:32px minmax(0,1fr);gap:10px}.location-feature-heading p{font-size:17px}.location-photos,.location-photos:has(>.location-photo:nth-child(4):last-child){grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.location-photos:has(>.location-photo:nth-child(3):last-child)>.location-photo:first-child{grid-column:1/-1}.location-feature-notes{grid-template-columns:1fr;gap:12px}.location-lightbox{padding:14px}.location-lightbox-header h2{font-size:18px}.location-lightbox-stage{grid-template-columns:36px minmax(0,1fr) 36px;gap:6px}.location-lightbox-stage button{width:36px;height:44px;font-size:30px}.location-lightbox-image img{max-height:calc(100dvh - 200px)}
}
@media(prefers-reduced-motion:reduce){.location-guide *,.location-lightbox *{scroll-behavior:auto!important;transition:none!important}}
.location-photos:has(>.location-photo:nth-child(2):last-child){margin-inline:auto}
@media(max-width:767px){
 .location-lightbox-stage{position:relative;display:block}
 .location-lightbox-stage>button{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;z-index:1;background:#202820c9}
 .location-lightbox-stage>[data-location-previous]{left:0}
 .location-lightbox-stage>[data-location-next]{right:0}
}

/* Public content remains usable if JavaScript fails or is disabled. */
.preloader{display:none!important}
.article-reading-illustrated{max-width:1170px}
.article-reading-illustrated>article>header,.article-reading-illustrated .article-intro,.article-reading-illustrated .article-request{max-width:760px}
.article-reading-illustrated .location-feature>p{max-width:760px;font-size:19px;line-height:1.75;margin:16px 0 24px}
.article-reading-illustrated .location-feature h2{font:400 clamp(28px,3vw,38px)/1.25 Georgia,serif;color:#30392f;margin-top:0}
.article-reading-illustrated .location-feature{padding:32px 0}
.article-reading-illustrated h1{font-family:Georgia,serif;font-weight:400}
@media(max-width:767px){.article-reading-illustrated .location-feature>p{font-size:17px;line-height:1.7}.article-reading-illustrated .location-feature{scroll-margin-top:85px}}

.location-photos:has(>.location-photo:only-child){grid-template-columns:1fr;max-width:420px;margin-inline:auto}
.article-locations-index{display:flex;flex-wrap:wrap;gap:10px 24px;margin:26px 0;padding:20px 0;border-top:1px solid #ded8ca;border-bottom:1px solid #ded8ca}
.article-locations-index a{color:#315237;font-size:15px;line-height:1.5;text-decoration:underline;text-underline-offset:4px}
