/* Booking answers stay in the HTML and work without JavaScript. */
.search-faq{display:grid;gap:32px;padding-block:64px;border-top:1px solid var(--line)}
.search-faq header{min-width:0}
.search-faq h2{font-size:clamp(42px,9vw,68px);line-height:1;overflow-wrap:break-word}
.search-faq h2 span{color:var(--blue-bright)}
.search-faq header>p:last-child:not(.section-kicker){max-width:36ch;margin:22px 0 0;color:var(--muted);font-size:15px}
.faq-list{min-width:0;border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:66px;padding:20px 0;list-style:none;font:700 16px/1.5 var(--body);cursor:pointer}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";flex:none;width:24px;text-align:center;color:var(--blue-bright);font:400 26px/1 var(--body)}
.faq-item[open] summary::after{content:"−"}
.faq-answer{padding:0 34px 24px 0;color:var(--muted);font:400 15px/1.8 var(--body)}
.faq-answer p{margin:0}
.faq-answer p+p{margin-top:16px}
.faq-answer a{color:var(--text);text-underline-offset:.22em}
.search-faq.service-faq{margin:0;padding-block:48px;grid-template-columns:1fr}
.service-faq .faq-answer{max-width:72ch}
.service-section-nav-four{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}
/* Keep old section URLs usable without a script or an extra grid item. */
#about,#work,#residencies,#questions{position:relative}
.legacy-anchor{display:block;position:absolute;top:0;left:0;width:1px;height:1px;scroll-margin-top:20px}
.legacy-offers{display:none;grid-column:1/-1;margin-bottom:32px;padding:20px;border:1px solid currentColor;color:#163dc3;scroll-margin-top:20px}
.legacy-offers:target{display:block}
.legacy-offers p{margin:0;font:400 15px/1.6 var(--body);max-width:70ch}
.legacy-offers a{text-decoration:underline;text-underline-offset:.2em}
.booking-brief li span{color:#fff;font-size:11px}
@media(max-width:599px){.booking-copy>p:not(.booking-lead),.booking-brief li{font-size:15px;line-height:1.6}.booking-brief li{padding-block:14px}}
@media(min-width:600px){.service-section-nav-four{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:880px){.search-faq,.search-faq.service-faq{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(40px,6vw,92px);padding-block:88px}.search-faq h2{font-size:64px}}
@media(max-width:359px){.faq-item summary{font-size:15px;gap:12px}.faq-answer{padding-right:8px}.search-faq h2{font-size:39px}}
