/* Shared subpage system, using the approved homepage's type and palette. */
.subpage main{padding-bottom:100px;overflow:clip}
.page-intro{padding-top:70px;padding-bottom:55px}
.page-intro .eyebrow,.experience-intro .eyebrow{color:var(--accent);margin:0 0 22px}
.page-title{max-width:1040px}
.page-title :is(h1,h2){font-family:var(--sans);font-weight:500;font-size:clamp(2.2rem,4.7vw,4.25rem);line-height:1.1;letter-spacing:-.045em;text-wrap:balance;margin:0;text-transform:none}
.page-title h2+h2{margin-top:8px}
.page-title a{text-decoration:none}
.content-block{min-width:0}
.prose-block{font-size:1.0625rem;line-height:1.85;overflow-wrap:anywhere}
.prose-block :is(h1,h2,h3,h4,h5,h6){font-family:var(--sans);font-weight:500;line-height:1.25;letter-spacing:-.025em;margin:42px 0 20px;color:var(--ink);text-wrap:balance}
.prose-block :is(h1,h2){font-size:clamp(1.65rem,2.8vw,2.35rem)}
.prose-block :is(h3,h4){font-size:1.45rem}
.prose-block p{margin:0 0 24px}
.prose-block p:last-child{margin-bottom:0}
.prose-block :is(ul,ol){padding-left:1.35em;margin:20px 0 30px}
.prose-block li{margin:10px 0;padding-left:6px}
.prose-block a{color:var(--accent);text-underline-offset:4px}
.prose-block strong,.prose-block b{font-weight:600}
.prose-block blockquote{margin:35px 0;padding:12px 0 12px 28px;border-left:2px solid var(--accent)}
.prose-block table{border-collapse:collapse;width:100%;font-size:.95rem}
.prose-block :is(th,td){padding:12px;border:1px solid var(--line);vertical-align:top}
.prose-block img{max-width:100%;height:auto}
.article-lead{margin-bottom:40px}
.article-lead .prose-block{max-width:820px;font-size:1.18rem;line-height:1.8}
.article-cover{margin-bottom:70px}
.page-photo{margin:0;min-width:0}
.page-photo img{display:block;width:100%;height:auto}
.page-photo a{display:block}
.page-photo figcaption{font-size:.875rem;margin-top:12px;color:var(--muted)}
.article-cover .page-photo{max-width:1050px}
.article-cover img{height:auto;max-height:640px;object-fit:cover}
.article-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,780px) minmax(0,1fr);gap:30px 0}
.article-body>.content-block{grid-column:2}
.article-body>.block-image,.article-body>.block-gallery{grid-column:1/-1;margin:20px auto 30px;width:min(100%,1000px)}
.article-body>.block-image img{max-height:700px;object-fit:contain;background:var(--surface)}
.page-action{margin:32px 0 12px}
.related-section{margin-top:100px;padding-top:55px;border-top:1px solid var(--line)}
.related-section>.block-html .prose-block :is(h1,h2){margin-top:0;margin-bottom:36px}
.editorial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:54px 30px}
.editorial-card{min-width:0}
.editorial-image{display:block;overflow:hidden;background:var(--surface);aspect-ratio:4/3}
.editorial-image img{width:100%;height:100%;object-fit:cover;transition:opacity .2s}
.editorial-image:hover img{opacity:.9}
.editorial-card :is(h2,h3){font-size:1.42rem;font-weight:500;line-height:1.3;letter-spacing:-.022em;margin:22px 0 15px;text-wrap:balance}
.editorial-card :is(h2,h3) a{text-decoration:none}
.card-excerpt{font-size:1rem;line-height:1.7;color:var(--body)}
.card-excerpt p{margin:0 0 18px}
.text-link{display:inline-flex;gap:20px;align-items:center;color:var(--accent);font-size:.94rem;font-weight:500;text-decoration:none;border-bottom:1px solid var(--line);padding:8px 0}
.text-link:hover{border-color:var(--accent)}
.gallery-jumps{display:flex;gap:12px 28px;flex-wrap:wrap;padding-bottom:36px;border-bottom:1px solid var(--line)}
.gallery-jumps a{font-size:.94rem;text-decoration:none;color:var(--body);padding:8px 0;border-bottom:1px solid transparent}
.gallery-jumps a:hover{color:var(--accent);border-color:var(--accent)}
.gallery-group{padding-top:60px;scroll-margin-top:30px}
.gallery-group>.block-html .prose-block h2{margin:0 0 30px}
.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:20px}
.photo-grid .page-photo img{width:100%;height:100%;aspect-ratio:4/3;object-fit:cover}
.photo-grid .page-photo:first-child{grid-column:span 2;grid-row:span 2}
.photo-grid .page-photo:first-child a{height:100%}
.photo-grid .page-photo:first-child img{aspect-ratio:auto;min-height:100%}
.photo-grid .page-photo:only-child{grid-column:1/-1;grid-row:auto;max-width:850px}
.experience-intro{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:70px;padding-top:60px;padding-bottom:70px}
.experience-intro .page-title h2{font-size:clamp(2.3rem,4vw,3.6rem)}
.experience-intro .page-title h2:first-child{font-size:1.2rem;letter-spacing:0;line-height:1.5;margin-bottom:10px;color:var(--muted)}
.experience-lead{margin-top:32px}
.experience-cover img{aspect-ratio:4/5;object-fit:cover}
.experience-details{display:grid;grid-template-columns:1fr 2fr;gap:100px;padding-top:55px;border-top:1px solid var(--line)}
.experience-aside{display:flex;align-items:flex-start;flex-direction:column;gap:36px}
.experience-aside img{width:120px;height:120px;object-fit:contain;opacity:.85}
.experience-content .prose-block>:first-child{margin-top:0}
.experience-content .prose-block h1:not(:first-child){border-top:1px solid var(--line);padding-top:32px;margin-top:36px}
.general-body{max-width:900px}
.general-body>.block-html{margin-bottom:30px}
.general-body>.block-image{margin-bottom:45px}
.general-body .page-photo img{object-fit:contain}
.page-8108 .general-body{max-width:1280px}
.page-8108 .page-intro{padding-bottom:20px}
.page-8108 .editorial-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.page-8108 .editorial-card:first-child{grid-column:span 2}
.page-8108 .editorial-card:first-child .editorial-image{aspect-ratio:2.05}
.page-8108 .editorial-card:first-child :is(h2,h3){font-size:2rem}
.page-1900 .general-body{max-width:940px}
.page-1900 .general-body>.block-image img{height:230px;object-fit:cover}
.faq-list{border-top:1px solid var(--line);margin-bottom:55px}
.faq-item{border-bottom:1px solid var(--line)}
.faq-item summary{display:flex;justify-content:space-between;gap:24px;list-style:none;padding:26px 0;font-size:1.15rem;line-height:1.45;font-weight:500;cursor:pointer}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary span{font-size:1.5rem;line-height:1;color:var(--accent);font-weight:400;flex-shrink:0}
.faq-item[open] summary span{transform:rotate(45deg)}
.faq-answer{padding:0 40px 30px 0;max-width:800px}
.page-980 .general-body{max-width:1200px;display:grid;grid-template-columns:1fr 1fr;gap:25px 70px}
.page-980 .general-body>.block-html:nth-child(-n+2){padding:30px 0;border-top:1px solid var(--line)}
.page-980 .general-body>.block-html:nth-child(n+3){grid-column:1/-1;max-width:820px}
.page-980 .general-body>.block-embed{grid-column:1/-1}
.page-embed iframe{display:block;width:100%;height:460px;border:0;background:var(--surface)}
.page-3276 .general-body{max-width:1050px}
.page-3276 .page-photo{padding:35px;background:var(--surface)}
.page-1880 .general-body,.page-1882 .general-body{max-width:860px}
.page-1880 .prose-block,.page-1882 .prose-block{font-size:1rem;line-height:1.85}
.page-1880 .page-title h2,.page-1882 .page-title h2{font-size:clamp(2.1rem,4vw,3.5rem)}
.family-values{border-top:1px solid var(--line);padding-top:35px;margin-bottom:65px}
.family-values>.block-html .prose-block h2{font-size:.875rem;letter-spacing:.1em;margin:0 0 20px;color:var(--muted)}
.family-values>div:last-child{display:flex;gap:30px;flex-wrap:wrap}
.family-values>div:last-child h3{margin:0;font-size:1.15rem}
.family-person{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:65px;align-items:start;padding:55px 0;border-top:1px solid var(--line)}
.family-person:nth-child(even)>.page-photo{order:2}
.family-person>.page-photo img{height:auto;max-height:560px;object-fit:contain;object-position:top}
.family-person .prose-block h4{margin-top:0;font-size:1.8rem}
.family-person .block-html+.block-html{margin-top:24px}
.booking-design{display:grid;grid-template-columns:1.2fr 1fr;gap:65px;align-items:start}
.booking-view{padding:45px 0;border-top:1px solid var(--line)}
.booking-preview-note strong{font-size:1.35rem;font-weight:500}
.booking-preview-note p{font-size:1.1rem;line-height:1.8;margin:20px 0 32px;max-width:470px}
.booking-photo img{aspect-ratio:4/5;object-fit:cover}
.booking-useful{display:flex;flex-direction:column;align-items:start;gap:18px;padding-top:45px;font-size:.95rem}
.booking-useful a{text-underline-offset:5px}
.only-mobile{display:none!important}
@media(min-width:1000px){.related-section .editorial-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.related-section .editorial-card :is(h2,h3){font-size:1.2rem}}
@media(max-width:1000px){.experience-intro{gap:35px}.experience-details{gap:45px;grid-template-columns:1fr 3fr}.editorial-grid{gap:40px 24px;grid-template-columns:repeat(2,minmax(0,1fr))}.family-person{gap:35px}.page-8108 .editorial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-8108 .editorial-card:first-child{grid-column:1/-1}}
@media(max-width:760px){
 .subpage main{padding-bottom:65px}.page-intro{padding-top:38px;padding-bottom:35px}.page-intro .eyebrow,.experience-intro .eyebrow{font-size:.8rem;margin-bottom:18px}
 .page-title :is(h1,h2){font-size:clamp(2rem,8.5vw,3rem);line-height:1.14;letter-spacing:-.035em}
 .prose-block{font-size:1rem;line-height:1.8}.prose-block :is(h1,h2){font-size:1.7rem}.prose-block :is(h3,h4){font-size:1.35rem}
 .article-lead .prose-block{font-size:1.06rem}.article-cover{margin-bottom:40px}.article-cover img{max-height:450px;min-height:220px;object-fit:cover}
 .article-body{display:block}.article-body>.content-block{margin-bottom:28px}.article-body>.block-image{margin:35px 0}.article-body>.block-image img{max-height:550px}
 .related-section{margin-top:60px;padding-top:38px}.editorial-grid{gap:40px 20px}.editorial-card :is(h2,h3){font-size:1.15rem;margin-top:17px}.card-excerpt{font-size:.94rem}
 .gallery-jumps{gap:6px 20px;padding-bottom:24px}.gallery-group{padding-top:40px}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.photo-grid .page-photo:first-child{grid-column:1/-1;grid-row:auto}.photo-grid .page-photo:first-child img{aspect-ratio:4/3}
 .experience-intro{display:flex;flex-direction:column;gap:32px;padding-top:38px;padding-bottom:42px}.experience-intro .page-title h2{font-size:2.35rem}.experience-intro .page-title h2:first-child{font-size:1.05rem}.experience-cover{width:100%}.experience-cover img{aspect-ratio:5/4}.experience-lead{margin-top:25px}
 .experience-details{grid-template-columns:1fr;padding-top:35px;gap:30px}.experience-aside{flex-direction:row;align-items:center;justify-content:space-between}.experience-aside img{width:65px;height:65px}
 .page-8108 .editorial-grid{grid-template-columns:1fr 1fr}.page-8108 .editorial-card:first-child :is(h2,h3){font-size:1.5rem}.page-8108 .editorial-card:first-child .editorial-image{aspect-ratio:4/3}
 .faq-item summary{padding:23px 0;font-size:1.06rem}.faq-answer{padding:0 8px 25px 0}
 .page-980 .general-body{display:block}.page-980 .general-body>.block-html{margin-bottom:28px}.page-embed iframe{height:350px}.page-3276 .page-photo{padding:12px}
 .family-values{margin-bottom:30px}.family-values>div:last-child{gap:18px 25px}.family-values>div:last-child h3{font-size:1rem}.family-person{display:flex;flex-direction:column;gap:30px;padding:35px 0}.family-person:nth-child(even)>.page-photo{order:0}.family-person>.page-photo{width:100%;max-width:450px}.family-person>.page-photo img{max-height:460px}.family-person .prose-block h4{font-size:1.55rem}
 .booking-design{display:flex;flex-direction:column;gap:32px}.booking-view{width:100%;padding-top:30px}.booking-photo{width:100%}.booking-photo img{aspect-ratio:4/3}.booking-preview-note p{font-size:1rem}
 .only-desktop{display:none!important}.only-mobile{display:block!important}
}
@media(max-width:420px){.editorial-grid,.page-8108 .editorial-grid{grid-template-columns:1fr}.page-8108 .editorial-card:first-child{grid-column:auto}.editorial-image{aspect-ratio:3/2}.editorial-card :is(h2,h3){font-size:1.32rem}}
