/* Transitional compatibility layer: replaces Squarespace layout/runtime work. */
/* DM Sans and Nunito Sans use the legacy family names in app/fonts.css.
   Keep the original explicit line heights; allow text to wrap naturally.
   Europa's measured normal line box was about 20px at 16px in form controls. */
.legacy-page .form-wrapper .title,
.legacy-page .form-wrapper .description,
.legacy-page .form-wrapper .caption,
.legacy-page .form-wrapper .option,
.legacy-page .form-wrapper input,
.legacy-page .form-wrapper textarea,
.legacy-page .form-wrapper select,
.legacy-page .BlogItem-comments textarea { line-height:1.25; }
.legacy-page { min-height: 100vh; }
.legacy-page .site-header, .legacy-page .site-page, .legacy-page #site { opacity: 1; visibility: visible; }
.legacy-page img.loaded { opacity: 1; }
/* Keep the headline gradient without repainting its largest text every frame. */
.legacy-page.collection-5adf93c3758d46bed08ff0fc h1 > em { animation: none; }
.legacy-page .page-banner-image { width: 100%; height: 100%; object-fit: cover; }
.legacy-page .content-fill { overflow:hidden; }
.legacy-page .content-fill > img { width:100%; height:100%; object-fit:cover; }
/* The captured description lacks the nested spans targeted by the original CSS. */
.legacy-page.collection-59cc04c003596e450007bfa7 .page-description p { color:#fff; }
.legacy-page .page-description p:empty::before { content:none; }
.legacy-page .page-description p:empty { min-height:0; }
.preview-contact { max-width: 100%; }
.preview-contact fieldset { border: 0; padding: 0; margin: 0 0 24px; }
.preview-contact legend, .preview-contact > label { font-size: 16px; margin-bottom: 24px; }
.preview-contact label { display: block; }
.preview-contact label span, .preview-contact legend span { font-size: 12px; }
.preview-contact input, .preview-contact textarea { display: block; box-sizing: border-box; border: 1px solid #ccc; background: #fafafa; color:#333; padding:12px; width:100%; margin-top:8px; font:inherit; border-radius:2px; }
.preview-contact .name-fields { display:flex; gap:16px; }
.preview-contact .name-fields label { flex:1; font-size:12px; }
.preview-contact button { border:2px solid #141414; background:white; padding:16px 30px; color:#141414; text-transform:uppercase; letter-spacing:2px; font:inherit; }
.preview-contact button:disabled { cursor:not-allowed; opacity:.65; }
.preview-notice { font-size:14px; color:#595959; }
.migration-form-status { margin-top:20px; }
.migration-form-status:empty { display:none; }
.migration-spam-check { margin-top:20px; }
.legacy-page a:focus-visible, .legacy-page button:focus-visible { outline:2px solid #1648a2; outline-offset:4px; }

.ancillary-header-tagline-position-hide .site-tagline-wrapper { display:none; }

.mobile-nav-toggle-label { border:0; background:none; color:inherit; font:inherit; cursor:pointer; }
/* Approved migration improvement: keep the menu hit area inside the viewport. */
@media (max-width:768px) {
  .legacy-page .mobile-nav-toggle-label { position:absolute; right:8px; top:24px; width:44px; height:44px; padding:10px; box-sizing:border-box; }
  .legacy-page .mobile-bar-flex-child { display:none; }
  .legacy-page .mobile-branding-wrapper { margin:0 auto; }
}
.legacy-page .sqs-gallery-design-grid .thumb-image { width:100%; height:100%; object-fit:cover; position:absolute; inset:0; }
.legacy-page .sqs-gallery-design-grid .image-slide-anchor { position:relative; overflow:hidden; }
@media (max-width: 768px) { .legacy-page #site { padding-top:calc(60px + 8vw); } }

.legacy-page .BlogList-item-image-link { overflow:hidden; position:absolute; inset:0; }
.legacy-page .BlogItem-pagination { margin-top:64px; }
@media (max-width:768px) {
  .legacy-page .BlogItem-pagination { margin-top:48px; }
}
.legacy-page .BlogList-item-image-link img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.legacy-page img.mobile-logo-image { height:auto; aspect-ratio:1; }
/* Preserve the muted treatment while making small text readable on white. */
.legacy-page .form-wrapper .description,
.legacy-page .form-wrapper .caption,
.legacy-page .Blog-meta,
.legacy-page .Blog-meta a,
.legacy-page .BlogItem-pagination-link-meta { color:#707070; }
.legacy-page .sqs-block[data-definition-name="website.components.form"] .form-wrapper .field-list .description,
.legacy-page .sqs-block[data-definition-name="website.components.form"] .form-wrapper .field-list .caption { opacity:1; }
.legacy-page .site-header .site-navigation a { color:#707070; }
.legacy-page .sqs-html-content p a { text-decoration:underline; text-underline-offset:0.15em; }
.legacy-page .page-banner-image-container img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
@media (max-width:768px) {
  .legacy-page:not(.homepage) #site { padding-top:calc(60px + 8vw); }
  .legacy-page.tweak-blog-list-style-grid [data-columns] .BlogList-item { width:100%; margin-right:0; clear:both; }
  .legacy-page.tweak-blog-list-style-grid [data-columns] .BlogList-item:nth-child(n+2) { margin-top:80px; }
}
