/* Small standalone behavior/layout replacements for the original plugin scripts. */
html { scroll-behavior: smooth; }
.vc_images_carousel .vc_carousel-slideline,
.vc_images_carousel .vc_carousel-slideline-inner { width: 100% !important; }
.vc_images_carousel .vc_carousel-slideline .vc_carousel-slideline-inner > .vc_item {
    float: none; width: 100%; display: none;
}
.vc_images_carousel .vc_carousel-slideline .vc_carousel-slideline-inner > .vc_item.is-active { display: block; }
.vc_images_carousel .vc_item img { width: 100%; height: auto; }
.vc_carousel-control { cursor: pointer; }
.vc_row[data-vc-full-width="true"] { visibility: visible; }
.wpb_animate_when_almost_visible { opacity: 1; }
.main-navigation .menu-item-has-children > a { cursor: pointer; }
.main-navigation .main-nav ul li:focus-within > ul,
.main-navigation .main-nav ul li.submenu-open > ul { opacity: 1; visibility: visible; left: auto; height: auto; pointer-events: auto; }
.main-navigation .main-nav ul li.submenu-open > a .dropdown-menu-toggle { transform: rotate(180deg); }
.term-subtitle, .term-notes { text-transform: uppercase; }
.schedule-scroll { overflow-x: auto; width: 100%; }
#wpdtSimpleTable-1 { width: 100%; table-layout: fixed; }
#wpdtSimpleTable-1 th, #wpdtSimpleTable-1 td { width: 14.285714%; vertical-align: middle; }
#wpdtSimpleTable-1 tbody th { font-size: 13px; text-align: center; }
#wpdtSimpleTable-1 .schedule-entry p { margin-top: 1em; margin-bottom: .6em; }
#wpdtSimpleTable-1 .schedule-entry + .schedule-entry { margin-top: 1em; }
#gform_2 input, #gform_2 textarea { box-sizing: border-box; max-width: 100%; }
#gform_status:empty { display: none; }
@media (max-width: 768px) {
    .main-navigation.toggled .main-nav > ul { display: block; }
    .main-navigation.toggled .main-nav ul ul { display: none; }
    .main-navigation.toggled .main-nav li.submenu-open > ul { display: block; }
    .main-navigation.toggled .main-nav li.submenu-open > ul { position: relative; left: 0; width: 100%; }
    #wpdtSimpleTable-1 { min-width: 650px; }
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
.vc_hidden-lg .vc_custom_heading,
.vc_hidden-lg .wpb_text_column h2 { text-transform: uppercase; }
.wpb_image_grid .wpb_image_grid_ul { display:flex; flex-wrap:wrap; gap:8px; position:static !important; height:auto !important; }
.wpb_image_grid .wpb_image_grid_ul li { position:static !important; list-style:none; }
.image-dialog { max-width:95vw; max-height:95vh; border:0; padding:16px; background:#fff; }
.image-dialog::backdrop { background:#000b; }
.image-dialog img { display:block; max-width:85vw; max-height:80vh; object-fit:contain; }
.image-dialog button { display:block; margin:0 0 10px auto; }

/* Main slider recovered from the March 2026 archive: photos with centered Oswald captions. */
.home-slider{position:relative;width:100%;height:450px;background:#18201e;overflow:hidden;color:white}.home-slider-track,.home-slider-slide{height:100%;width:100%}.home-slider-slide{position:relative}.home-slider-slide[hidden],.home-slider [hidden]{display:none!important}.home-slider-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.home-slider-copy{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:45px 95px;background:linear-gradient(transparent,rgba(0,0,0,.2),transparent);color:white;text-shadow:0 2px 5px #000,0 0 18px #0008}.home-slider-copy a,.home-slider-copy a:visited,.home-slider-copy a:hover{color:white;text-decoration:none}.home-slider-title,.home-slider-text{font-family:Oswald,sans-serif;font-size:40px;font-weight:700;line-height:1.65;text-transform:uppercase;margin:0;overflow-wrap:anywhere}.home-slider-text{white-space:normal}.home-slider-arrow{position:absolute;top:50%;transform:translateY(-50%);width:70px;height:70px;border:0;border-radius:50%;background:#0003;color:white;font:42px/1 sans-serif;padding:0;cursor:pointer}.home-slider-prev{left:20px}.home-slider-next{right:20px}.home-slider-arrow:hover{background:#0007}.home-slider-controls{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);display:flex;gap:18px;align-items:center}.home-slider-dots{display:flex;gap:9px}.home-slider-dots button{width:11px;height:11px;padding:0;border:1px solid white;border-radius:50%;background:#0004;cursor:pointer}.home-slider-dots button[aria-current=true]{background:white}.home-slider-pause{border:1px solid #ffffff90;border-radius:4px;background:#0006;color:white;padding:5px 10px;font:12px sans-serif;cursor:pointer}.home-slider button:focus-visible,.home-slider a:focus-visible{outline:3px solid #f6cf30;outline-offset:4px}.home-slider-slide.is-current{animation:home-slide-appear .6s ease}@keyframes home-slide-appear{from{opacity:.4}to{opacity:1}}@media(max-width:1024px){.home-slider{height:320px}.home-slider-title,.home-slider-text{font-size:30px;line-height:1.5}.home-slider-arrow{width:48px;height:48px;font-size:32px}}@media(max-width:600px){.home-slider{height:300px}.home-slider-copy{padding:32px 52px}.home-slider-title,.home-slider-text{font-size:24px;line-height:1.45}.home-slider-arrow{width:34px;height:44px;border-radius:8px}.home-slider-prev{left:7px}.home-slider-next{right:7px}}@media(prefers-reduced-motion:reduce){.home-slider-slide.is-current{animation:none}}

.home-slider-caption{width:100%;max-width:1040px;max-height:100%;overflow:auto;scrollbar-width:thin}

/* Persistent header: full identity at the top, a compact navigation row on scroll. */
#masthead{position:sticky;top:0;z-index:1000;background:#fff}#masthead.is-fixed{position:fixed;left:0;right:0;width:100%}#header-space[hidden]{display:none}#masthead .header-widget{display:none}#masthead .site-logo{flex-shrink:0}#masthead .header-image{height:auto}#masthead.is-compact{box-shadow:0 2px 12px #00213c20}html{scroll-padding-top:80px}.main-navigation .main-nav li:focus-within>ul{left:auto;opacity:1;visibility:visible;height:auto;overflow:visible;pointer-events:auto}.main-navigation a:focus-visible,.menu-toggle:focus-visible{outline:2px solid #193e7a;outline-offset:-3px}.screen-reader-text.skip-link:focus{position:fixed;z-index:1100}
@media(min-width:1025px){#masthead.is-compact .inside-header{flex-direction:row;flex-wrap:nowrap;min-height:58px;padding:5px 20px;gap:18px}#masthead.is-compact .header-image{width:44px;max-height:44px;object-fit:contain}#masthead.is-compact #site-navigation{margin:0 0 0 auto;min-width:0}#masthead.is-compact .main-nav>ul{flex-wrap:nowrap}#masthead.is-compact .main-nav>ul>li>a{line-height:48px;white-space:nowrap;font-size:14px}#masthead.is-compact .inside-navigation{flex-wrap:nowrap}#masthead.is-compact .main-nav>ul>li>.sub-menu{max-height:calc(100dvh - 70px);overflow-y:auto}}
@media(max-width:1024px){#masthead .inside-header{position:relative;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;text-align:left;padding:8px 18px;min-height:80px}#masthead .header-image{width:68px;max-height:68px;object-fit:contain}#masthead.is-compact .inside-header{min-height:56px;padding:5px 16px}#masthead.is-compact .header-image{width:44px;max-height:44px}#masthead .mobile-menu-control-wrapper{display:flex;margin-left:auto}#masthead .mobile-menu-control-wrapper .menu-toggle{display:flex;gap:10px;align-items:center;min-height:44px;padding:8px 12px;border-radius:4px}#masthead #site-navigation{display:none;position:absolute;top:100%;left:0;right:0;margin:0;width:100%;background:white;border-top:1px solid #e5e5e5;box-shadow:0 8px 15px #00213c20;max-height:calc(100vh - 90px);max-height:calc(100dvh - 90px);overflow-y:auto;overscroll-behavior:contain}#masthead.is-compact #site-navigation{max-height:calc(100dvh - 58px)}#masthead #site-navigation.toggled{display:block;margin-top:0}#masthead #site-navigation .menu-toggle{display:none}#masthead #site-navigation .inside-navigation,#masthead #primary-menu{display:block;width:100%}#masthead #primary-menu>ul{display:block;margin:0;padding:8px 12px}#masthead #primary-menu li{display:block;float:none;width:100%;text-align:left}#masthead #primary-menu li>a{display:block;line-height:1.4;min-height:44px;padding:13px 12px;white-space:normal}#masthead #primary-menu ul ul{display:none;position:static;float:none;width:100%;height:auto;opacity:1;visibility:visible;box-shadow:none;overflow:visible;pointer-events:auto;padding:0 0 8px 14px}#masthead #primary-menu li.submenu-open>ul{display:block}#masthead #primary-menu .dropdown-menu-toggle{float:right;padding:0 12px;min-width:40px}#masthead #primary-menu ul ul a{font-size:15px}html{scroll-padding-top:68px}}

/* Ease the size change instead of snapping between the two header states. */
#masthead{transition:box-shadow .35s ease}#masthead .inside-header{transition:padding .35s cubic-bezier(.22,.61,.36,1),min-height .35s ease,gap .35s ease}#masthead .header-image{max-height:150px;transition:width .35s cubic-bezier(.22,.61,.36,1),max-height .35s cubic-bezier(.22,.61,.36,1)}#masthead .main-nav>ul>li>a{transition:line-height .35s ease,font-size .35s ease,padding .35s ease}#masthead.is-measuring,#masthead.is-measuring *{transition:none!important}#masthead .inside-header{gap:0}@media(min-width:1025px){#masthead.is-compact .inside-header{gap:18px}}@media(max-width:1024px){#masthead .header-image{max-height:68px}#masthead.is-compact .header-image{max-height:44px}}@media(prefers-reduced-motion:reduce){#masthead,#masthead *{transition:none!important}}

/* Historical Google reviews recovered from the original home. */
.home-reviews { margin: 0 auto 32px; color: #333; }
.home-reviews-note, .home-reviews-link { text-align: center; }
.home-reviews-note { font-size: 14px; color: #666; }
.home-reviews-list { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1.5fr); gap: 20px; margin: 24px 0; }
.home-reviews .home-review { margin: 0; padding: 22px; background: #f7f7f7; border: 1px solid #e8e8e8; border-radius: 4px; display: flex; flex-direction: column; min-width: 0; }
.home-review-stars { color: #b77900; font-size: 22px; letter-spacing: 2px; }
.home-reviews blockquote { margin: 12px 0 20px; padding: 0; border: 0; background: none; color: inherit; font-size: 15px; line-height: 1.65; font-style: normal; overflow-wrap: anywhere; }
.home-reviews blockquote::before, .home-reviews blockquote::after { content: none; }
.home-reviews blockquote p { margin: 0; }
.home-reviews figcaption { margin-top: auto; font-size: 14px; line-height: 1.5; }
.home-reviews figcaption strong, .home-reviews time, .home-review-source { display: block; }
.home-reviews time { color: #666; font-size: 12px; }
.home-review-source { margin-top: 6px; color: #555; }
.home-reviews-link a { text-decoration: underline; text-underline-offset: 3px; }
 .home-review-long { grid-column: 3; grid-row: 1 / span 2; }
.home-reviews-controls { display: none; }
.home-reviews-controls button { min-width: 44px; min-height: 44px; border: 1px solid #ddd; border-radius: 4px; background: #f7f7f7; color: #333; cursor: pointer; }
.home-reviews-controls button:disabled { opacity: .35; cursor: default; }
.home-reviews-controls button:focus-visible, .home-reviews-list:focus-visible { outline: 2px solid #193e7a; outline-offset: 3px; }
@media (min-width: 601px) and (max-width: 1100px) {
    .home-reviews-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .home-review-long { grid-column: 1 / -1; grid-row: auto; }
}
@media (max-width: 600px) {
    .home-reviews-list { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 14px; align-items: flex-start; margin-bottom: 14px; padding-bottom: 8px; }
    .home-reviews .home-review { flex: 0 0 100%; box-sizing: border-box; scroll-snap-align: start; scroll-snap-stop: always; }
    .home-reviews-controls:not([hidden]) { display: flex; align-items: center; justify-content: center; gap: 20px; margin-bottom: 20px; }
}

/* End the shared school sidebar at its final image, without trailing widget space. */
#right-sidebar .inside-right-sidebar { padding-bottom: 0; }
#right-sidebar #media_image-2 { margin-bottom: 0; padding-bottom: 0; }
#right-sidebar #media_image-2 img { display: block; }

/* Phone timetable: days down the page, level beside time and teacher. */
.schedule-mobile { display: none; }
@media (max-width: 768px) {
    .schedule-scroll { display: none; }
    .schedule-mobile { display: block; width: 100%; color: #292929; text-align: left; }
    .schedule-day { margin: 0 0 16px; background: #fffdf3; border: 1px solid #e9c6bd; border-radius: 6px; overflow: hidden; }
    .schedule-mobile .schedule-day h3 { margin: 0; padding: 12px 14px; background: #ffd0cd; color: #292929; font: 700 17px/1.4 Arial, sans-serif; }
    .schedule-day-classes { margin: 0; }
    .schedule-mobile-class { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.4fr); border-top: 1px solid #e9dfcf; }
    .schedule-mobile-class dt { margin: 0; padding: 14px 10px; background: #ffe5df; font-size: 14px; line-height: 1.5; font-weight: 700; overflow-wrap: anywhere; }
    .schedule-mobile-class dd { margin: 0; padding: 14px 10px; min-width: 0; font-size: 14px; line-height: 1.5; overflow-wrap: anywhere; }
    .schedule-mobile-entry strong, .schedule-mobile-entry span { display: block; }
    .schedule-mobile-entry strong { font-size: 15px; }
    .schedule-mobile-entry span { margin-top: 5px; color: #555; }
    .schedule-mobile-entry + .schedule-mobile-entry { margin-top: 14px; padding-top: 12px; border-top: 1px solid #e9dfcf; }
    .schedule-mobile-class.is-milonga dt { background: #d9efc7; }
    .schedule-mobile-class.is-milonga dd { background: #f0f8e9; }
    .schedule-mobile .schedule-day-empty { margin: 0; padding: 12px 14px; font-size: 14px; color: #666; }
}

/* Keep social/contact icons together on the mobile menu's final row. */
@media (max-width: 1024px) {
    #masthead #primary-menu > ul { display: flex; flex-wrap: wrap; }
    #masthead #primary-menu > ul > li.menu-item-icon { width: auto; flex: 0 0 44px; }
    #masthead #primary-menu > ul > li.menu-item-icon > a { display: flex; align-items: center; justify-content: center; width: 44px; min-height: 44px; padding: 12px 0; }
}

/* News cards, using the same local page content and school layout. */
.home-news { margin: 24px 0 36px; }
.home-news h2 { margin-bottom: 22px; }
.news-track { display: flex; gap: 20px; overflow-x: auto; scroll-snap-type: x mandatory; padding: 2px 2px 16px; }
.news-card { flex: 0 0 calc((100% - 40px) / 3); min-width: 0; background: #fff; border: 1px solid #ddd; border-radius: 4px; overflow: hidden; scroll-snap-align: start; box-sizing: border-box; }
.news-card-image { display: block; }
.news-card-image img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.news-card-copy { padding: 18px; }
.news-card-copy h3 { margin: 8px 0 12px; font-size: 22px; }
.news-card-copy time { color: #666; font-size: 13px; }
.news-card-copy p { font-size: 15px; line-height: 1.6; }
.news-controls { display: flex; justify-content: center; align-items: center; gap: 18px; margin-top: 10px; }
.news-controls[hidden] { display: none; }
.news-controls button { width: 44px; min-height: 44px; padding: 8px; border: 1px solid #ddd; background: #f7f7f7; color: #333; border-radius: 4px; }
.news-controls button:disabled { opacity: .3; }
@media(max-width:1024px) { .news-card { flex-basis: calc((100% - 20px) / 2); } }
@media(max-width:600px) { .news-card { flex-basis: 100%; } }
@media(min-width:601px) {
    .news-card:only-child { flex-basis: calc((100% - 20px) / 2); }
}

.news-card-copy { display: flex; flex-direction: column; gap: 12px; }
.news-card-copy h3 { margin: 0; }
.news-card-copy > a { margin-top: auto; }
.flexible-content > * { margin: 0 0 28px; }
.flexible-content .flexible-image { margin: 0 0 28px; }
.flexible-image img { display: block; max-width: 100%; height: auto; margin: 0 auto; }
.flexible-button { display: inline-block; padding: 12px 22px; background: #193e7a; color: #fff!important; border-radius: 4px; }
.flexible-section { display: grid; gap: 30px; margin-bottom: 30px; }
.flexible-column { min-width: 0; }
.flexible-column > * { margin-bottom: 24px; }
.flexible-column > :last-child { margin-bottom: 0; }
.flexible-layout-12 { grid-template-columns: minmax(0,1fr); }
.flexible-layout-6-6 { grid-template-columns: repeat(2,minmax(0,1fr)); }
.flexible-layout-4-8 { grid-template-columns: minmax(0,1fr) minmax(0,2fr); }
.flexible-layout-8-4 { grid-template-columns: minmax(0,2fr) minmax(0,1fr); }
.flexible-layout-4-4-4 { grid-template-columns: repeat(3,minmax(0,1fr)); }
.flexible-layout-3-3-3-3 { grid-template-columns: repeat(4,minmax(0,1fr)); }
.flexible-video { width: 100%; aspect-ratio: 16/9; border: 0; }
.flexible-map { width: 100%; height: 350px; border: 0; }
@media(max-width:767px) { .flexible-section { grid-template-columns: minmax(0,1fr); gap: 24px; } }
.sidebar-separator { border:0; border-bottom:1px dotted #a9a9a9; }
#custom_html-26 .sidebar-separator { margin-top:-17px; margin-bottom:-15px; }
#custom_html-25 .sidebar-separator { margin-top:-17px; margin-bottom:-32px; }
#right-sidebar .widget:last-child { padding-bottom:0; margin-bottom:0; }
#right-sidebar .widget:last-child img { display:block; }
#right-sidebar iframe { width:100%; max-width:100%; }

/* Shared footer: tall images framing links and social networks. */
.site-footer.bt-footer{background:#00213c;color:#fff;font-size:15px;line-height:1.55;padding:28px 24px 0;}
.bt-footer .bt-footer-main{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:220px minmax(0,1fr) 280px;gap:36px;align-items:stretch;}
.bt-footer p,.bt-footer h2,.bt-footer ul{margin:0;padding:0;}
.bt-footer a{color:#fff;text-decoration:none;}
.bt-footer a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px;}
.bt-footer a:focus-visible{outline:2px solid #fff;outline-offset:4px;border-radius:3px;}
.bt-footer .bt-footer-school,.bt-footer .bt-footer-identity{display:flex;flex-direction:column;text-align:center;height:100%;}
.bt-footer .bt-footer-identity>a{display:flex;flex:1;align-items:center;justify-content:center;}
.bt-footer .bt-footer-logo{display:block;width:100%;height:220px;object-fit:contain;}
.bt-footer .bt-footer-title{font-size:17px;font-weight:600;line-height:1.3;margin:10px 0 3px;}
.bt-footer .bt-footer-muted{color:#c7d4df;font-size:13px;}
.bt-footer .bt-footer-center{display:flex;flex-direction:column;justify-content:center;gap:28px;text-align:center;}
.bt-footer .bt-footer-social-title{font-size:14px;color:#c7d4df;margin:0 0 10px;}
.bt-footer .bt-footer-socials{display:flex;gap:7px;align-items:center;justify-content:center;}
.bt-footer .bt-footer-socials a{display:inline-flex;width:40px;height:40px;flex:0 0 40px;align-items:center;justify-content:center;border:1px solid #ffffff30;border-radius:50%;font-size:19px;line-height:1;}
.bt-footer .bt-footer-socials a:hover{background:#ffffff18;text-decoration:none;}
.bt-footer .bt-footer-socials svg{display:block;flex-shrink:0;}
.bt-footer .bt-footer-links h2{color:#fff;font-size:15px;font-weight:600;line-height:1.4;margin:0 0 12px;}
.bt-footer .bt-footer-links ul{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:6px 18px;}
.bt-footer .bt-footer-links a{display:inline-block;padding:5px 0;font-size:14px;}
.bt-footer .bt-footer-welcome{display:flex;flex-direction:column;justify-content:center;gap:10px;text-align:center;}
.bt-footer .bt-footer-welcome img{display:block;width:100%;height:220px;object-fit:contain;border-radius:6px;}
.bt-footer .bt-footer-signature{font-weight:600;margin-top:2px;}
.bt-footer .bt-footer-bottom{max-width:1120px;margin:24px auto 0;padding:14px 0;display:flex;justify-content:space-between;gap:16px;border-top:1px solid #ffffff26;font-size:12px;color:#c7d4df;}
.bt-footer .bt-footer-bottom a{color:#c7d4df;}
.bt-footer .bt-footer-main>*,.bt-footer .bt-footer-identity>div,.bt-footer .bt-footer-welcome>div{min-width:0;overflow-wrap:anywhere;}
@media(max-width:960px){
    .bt-footer .bt-footer-main{grid-template-columns:170px minmax(0,1fr) 210px;gap:20px;}
    .bt-footer .bt-footer-logo,.bt-footer .bt-footer-welcome img{height:180px;}
    .bt-footer .bt-footer-socials{gap:4px;}
    .bt-footer .bt-footer-socials a{width:36px;height:36px;flex-basis:36px;}
}
@media(max-width:760px){
    .site-footer.bt-footer{padding:24px 20px 0;}
    .bt-footer .bt-footer-main{grid-template-columns:1fr 1fr;gap:24px 20px;}
    .bt-footer .bt-footer-school{order:0;}
    .bt-footer .bt-footer-welcome{order:1;justify-content:flex-start;}
    .bt-footer .bt-footer-center{order:2;grid-column:1/-1;gap:18px;padding-top:20px;border-top:1px solid #ffffff26;}
    .bt-footer .bt-footer-logo,.bt-footer .bt-footer-welcome img{height:clamp(125px,24vw,180px);}
    .bt-footer .bt-footer-identity>a{flex:0;}
    .bt-footer .bt-footer-title{font-size:15px;}
    .bt-footer .bt-footer-socials{gap:6px;}
    .bt-footer .bt-footer-socials a{width:40px;height:40px;flex-basis:40px;}
    .bt-footer .bt-footer-bottom{margin-top:20px;flex-wrap:wrap;gap:6px 20px;}
}

/* Keep home content within the viewport; only carousel tracks scroll sideways. */
.home #primary,.home .site-main,.home .inside-article,.home .entry-content{min-width:0;max-width:100%;box-sizing:border-box;}
.home .entry-content>.vc_row{margin-left:0;margin-right:0;}
.home .home-news,.home .home-reviews,.home .news-track,.home .schedule-scroll{min-width:0;max-width:100%;box-sizing:border-box;}
.home .home-news{width:100%;}
.home .entry-content iframe{max-width:100%;box-sizing:border-box;}
.home .vc_column_container,.home .vc_column-inner,.home .wpb_wrapper{min-width:0;}

/* The home must not scroll horizontally. Clip overflow without creating a
   scroll container, so the sticky header and independent carousels still work. */
body.home{max-width:100%;overflow-x:clip;}
@supports not (overflow:clip){body.home{overflow-x:hidden;}}
.home #page,.home #content{min-width:0;max-width:100%;box-sizing:border-box;}
.home .home-reviews-grid{min-width:0;}

/* More emphasis for the footer's central links. */
.bt-footer .bt-footer-links h2{font-family:Oswald,Arial,sans-serif;font-size:25px;font-weight:500;line-height:1.3;letter-spacing:.3px;margin-bottom:18px;}
.bt-footer .bt-footer-links h2::after{content:"";display:block;width:44px;height:3px;margin:11px auto 0;background:#f1c40f;border-radius:2px;}
.bt-footer .bt-footer-links ul{gap:8px 22px;}
.bt-footer .bt-footer-links a{font-size:17px;line-height:1.5;padding:6px 0;}
.bt-footer .bt-footer-links a:hover{color:#f1c40f;}
@media(max-width:760px){.bt-footer .bt-footer-links h2{font-size:23px;}.bt-footer .bt-footer-links a{font-size:16px;}}

/* Full-width page content when the per-page sidebar is disabled. */
body.page-without-sidebar #page #content #primary{width:100%;max-width:100%;min-width:0;}
body.page-without-sidebar #page #main{margin-left:0;margin-right:0;}

.private-preview-notice{padding:14px 20px;background:#fff3c4;color:#17324b;border-block:1px solid #e2c659;text-align:center;font:15px/1.5 Arial,sans-serif;}

.page-gallery{min-width:0;max-width:100%}.page-gallery-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;max-width:100%;scrollbar-width:thin}.page-gallery-track figure{margin:0;flex:0 0 100%;min-width:0;scroll-snap-align:start}.page-gallery-track img{display:block;width:100%;height:clamp(220px,40vw,520px);object-fit:contain;background:#f4f4f4}.page-gallery-controls{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:12px}.page-gallery-controls[hidden]{display:none}.page-gallery-controls button{min-width:44px;min-height:44px}.page-gallery-controls button:disabled{opacity:.4}.flexible-contact-details{font-style:normal}

/* Discreet gallery navigation over the image. */
.page-gallery{position:relative;}
.page-gallery .page-gallery-controls{position:absolute;inset:0;display:block;margin:0;pointer-events:none;}
.page-gallery .page-gallery-controls[hidden]{display:none;}
.page-gallery .page-gallery-controls button{position:absolute;top:50%;transform:translateY(-50%);width:36px;height:44px;min-width:0;min-height:0;padding:0;border:1px solid #ffffff50;border-radius:6px;background:#00213c55;color:#fff;font-size:22px;line-height:1;pointer-events:auto;cursor:pointer;opacity:.75;transition:opacity .2s,background-color .2s;}
.page-gallery [data-gallery-prev]{left:12px;}
.page-gallery [data-gallery-next]{right:12px;}
.page-gallery .page-gallery-controls button:hover{opacity:1;background:#00213c99;}
.page-gallery .page-gallery-controls button:focus-visible{outline:2px solid #fff;outline-offset:3px;opacity:1;}
.page-gallery .page-gallery-controls button:disabled{opacity:.2;cursor:default;}
.page-gallery [data-gallery-position]{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);padding:3px 9px;border-radius:20px;background:#00213c70;color:#fff;font-size:11px;line-height:1.5;}
@media(max-width:600px){.page-gallery .page-gallery-controls button{width:32px;height:40px;font-size:20px;}.page-gallery [data-gallery-prev]{left:8px;}.page-gallery [data-gallery-next]{right:8px;}}
@media(prefers-reduced-motion:reduce){.page-gallery .page-gallery-controls button{transition:none;}}

[data-contact-form] input:not([type=checkbox]),[data-contact-form] textarea {width:100%;min-width:0;box-sizing:border-box;}
.contact-trap {position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden;}
.contact-note {font-size:13px;line-height:1.4;}
[data-contact-form] button:disabled {opacity:.6;cursor:wait;}
