/* TG accessibility: native controls, no overlay or third-party runtime. */
.tg-a11y { --tg-a11y-blue:#075d96; --tg-a11y-ink:#173a50; }
.tg-a11y [hidden] { display:none!important; }
.tg-a11y-sr { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; clip-path:inset(50%)!important; white-space:nowrap!important; border:0!important; }
.tg-a11y-skip-nav { position:relative; z-index:2147483000; }
.tg-a11y-skip { position:fixed; top:12px; left:12px; transform:translateY(-200%); padding:14px 20px; max-width:calc(100vw - 24px); min-height:44px; box-sizing:border-box; border-radius:5px; color:#fff!important; background:#075d96!important; font:600 16px/1.5 Arial,sans-serif; text-decoration:underline; }
.tg-a11y-skip:focus { transform:translateY(0); outline:3px solid #fff!important; box-shadow:0 0 0 6px #173a50!important; }
body.tg-a11y { font-size:16px; line-height:1.6; }
.tg-a11y :where(h1,h2,h3,h4,h5,h6,p,li,figcaption,label,summary) { overflow-wrap:anywhere; }
.tg-a11y :where(h1,h2,h3,h4,h5,h6) { line-height:1.3; }
.tg-a11y :where(a,button,input,textarea,select,summary,[tabindex]):focus-visible { outline:3px solid #fff!important; outline-offset:2px!important; box-shadow:0 0 0 6px #075d96!important; }
.tg-a11y :where(a,button,input,textarea,select,summary,[tabindex]) { scroll-margin-top:110px; scroll-margin-bottom:100px; }
.tg-a11y #Content:focus { outline:none!important; box-shadow:none!important; }
.tg-a11y #Subheader .title { color:#475e6b; line-height:1.3; }
.tg-a11y #Content :where(p,li)>a:not(.button):not(.tg26-button):not(.tg-visit-button),
.tg-a11y #Content label a,.tg-a11y #Footer p a,.tg-a11y #Footer .copyright a { text-decoration:underline!important; text-underline-offset:.18em; text-decoration-thickness:1px; }
.tg-a11y #Footer .copyright a { display:inline-block; min-height:24px; }
.tg-a11y #Content :where(p,li)>a:not(.button):not(.tg26-button):not(.tg-visit-button),.tg-a11y .wpcf7-form label a { color:#075d96!important; }
.tg-a11y #Content .tg26-help p>a { color:#fff!important; }
.tg-a11y #Footer .tg-a11y-footer-heading { font-size:18px; line-height:1.4; color:#fff; font-weight:600; }
.tg-a11y .tg-a11y-heading-was-3 { font-size:25px; line-height:1.3; }
.tg-a11y .tg-a11y-heading-was-4 { font-size:21px; line-height:1.4; }
.tg-a11y .tg-a11y-heading-was-5 { font-size:18px; line-height:1.5; }
.tg-a11y .tg-a11y-heading-was-6 { font-size:16px; line-height:1.5; }
.tg-a11y #Action_bar .social li a,.tg-a11y #Footer .social li a { width:44px; height:44px; min-width:44px; min-height:44px; }
.tg-a11y #Action_bar .social,.tg-a11y #Footer .social { gap:6px; flex-wrap:wrap; }
.tg-a11y #menu .menu-toggle { display:none!important; }
.tg-a11y #menu>ul>li { position:relative; }
.tg-a11y #menu>ul>li>a { min-height:44px; }
.tg-a11y .tg-a11y-submenu { display:inline-flex; align-items:center; justify-content:center; width:36px; height:44px; min-height:44px; margin:0 4px!important; padding:0!important; vertical-align:middle; color:#fff!important; background:#142b40!important; border:1px solid #839fb6!important; border-radius:5px; box-shadow:none; cursor:pointer; }
.tg-a11y .tg-a11y-submenu::after { display:none!important; }
.tg-a11y .tg-a11y-submenu>span { display:block; font:20px/1 Arial,sans-serif; }
.tg-a11y .tg-a11y-submenu[aria-expanded=true]>span { transform:rotate(180deg); }
.tg-a11y #menu li.tg-a11y-open>ul { display:block!important; }
.tg-a11y #menu .sub-menu { background:#142b40!important; color:#fff; }
.tg-a11y #menu .sub-menu>li>a { color:#fff!important; min-height:44px; box-sizing:border-box; }
.tg-a11y #menu .sub-menu>li>a:hover { color:#142b40!important; background:#e4f3fc!important; }
.tg-a11y #menu .sub-menu>li>a:focus-visible { background:#e4f3fc!important; color:#142b40!important; position:relative; z-index:2; }
.tg-a11y #Header button.responsive-menu-toggle { display:none; position:absolute; z-index:202; min-width:44px; width:44px; height:44px; min-height:44px; padding:0!important; margin:0!important; align-items:center; justify-content:center; background:#fff!important; color:#173a50!important; border:1px solid #486477; border-radius:6px; font:26px/1 Arial,sans-serif; cursor:pointer; }
.tg-a11y #Header button.responsive-menu-toggle::after { display:none!important; }
.tg-a11y #Header button.responsive-menu-toggle i { font-size:26px; line-height:1; }
.tg-a11y #searchform input[name=s] { font-size:16px; }
.tg-a11y #searchform button.icon_close { color:#fff!important; background:#142b40!important; min-width:44px; min-height:44px; margin:0; padding:0; border:1px solid #839fb6; position:absolute; right:0; top:0; }
.tg-a11y .wpcf7-form label { font-size:16px; line-height:1.6; color:#475e6b; }
.tg-a11y .wpcf7-form :where(input:not([type=hidden]):not([type=submit]):not([type=checkbox]):not([type=radio]),textarea,select) { width:100%; max-width:100%; box-sizing:border-box; border:1px solid #62798b!important; color:#173a50!important; background:#fff!important; font-size:16px!important; line-height:1.6; }
.tg-a11y .wpcf7-form :where(input,textarea)::placeholder { color:#5b6c79; opacity:1; }
.tg-a11y .wpcf7-form input[type=submit] { min-height:48px; max-width:100%; box-sizing:border-box; white-space:normal; background:#075d96!important; background-image:none!important; color:#fff!important; border:1px solid #075d96!important; font-size:16px; line-height:1.5; cursor:pointer; }
.tg-a11y .wpcf7-form input[type=submit]:disabled { opacity:1; background:#536876!important; border-color:#536876!important; color:#fff!important; cursor:not-allowed; }
.tg-a11y .wpcf7-form input[type=checkbox],.tg-a11y .wpcf7-form input[type=radio] { accent-color:#075d96; flex:0 0 auto; width:20px; height:20px; }
.tg-a11y .tg-a11y-check-label,.tg-a11y .mc4wp-checkbox label { display:block; padding:10px 0; min-height:44px; box-sizing:border-box; cursor:pointer; }
.tg-a11y .wpcf7-form .wpcf7-list-item { margin-left:0; }
.tg-a11y .tg-a11y-email-label { display:block; }
.tg-a11y .tg-a11y-form-help,.tg-a11y .tg-a11y-security-help { clear:both; font:14px/1.6 Arial,sans-serif; color:#475e6b; margin:14px 0; }
.tg-a11y .wpcf7-form .tg-a11y-email-label { color:inherit; }
.tg-a11y.home #Content .wpcf7-form :where(.tg-a11y-check-label,.tg-a11y-email-label,.tg-a11y-form-help) { color:#fff!important; }
.tg-a11y.home #Content .wpcf7-form label a { color:#c7e8ff!important; }
.tg-a11y .wpcf7-not-valid-tip { display:block; color:#9b1522!important; font-size:15px; line-height:1.5; padding-top:5px; }
.tg-a11y .wpcf7-form [aria-invalid=true]:not([type=checkbox]) { border:2px solid #9b1522!important; }
.tg-a11y .tg-a11y-errors { clear:both; background:#fff3f4; border:2px solid #9b1522; border-radius:6px; color:#72121b; padding:18px; margin:16px 0 24px; }
.tg-a11y .tg-a11y-errors h2 { color:#72121b!important; font:600 20px/1.4 Arial,sans-serif; margin:0 0 10px; }
.tg-a11y .tg-a11y-errors ul { margin:0 0 0 22px; list-style:disc; }
.tg-a11y .tg-a11y-errors a { color:#72121b!important; text-decoration:underline!important; }
.tg-a11y .tg-visit-help-v3 .tg-visit-small,.tg-a11y .tg-visit-invitation-footer { font-size:13px!important; line-height:1.6!important; }
.tg-a11y .tg-visit-help-v3 .tg-visit-invitation-heading>span { font-size:11px; line-height:1.6; }
.tg-a11y .tg-visit-help-v3 .tg-visit-options { padding:8px; }
.tg-a11y .tg-visit-help-v3 .tg-visit-product-option { border-color:#62798b; }
.tg-a11y .tg-visit-help-v3 .tg-visit-product-option input { width:20px!important; height:20px!important; }
.tg-a11y .tg-visit-help-v3 .tg-visit-chips button { min-width:44px; min-height:44px; }
.tg-a11y .tg-visit-help-v3 .tg-visit-chips li { padding-right:5px; }
.tg-a11y :where(summary,.tg-visit-link-button) { min-height:44px; box-sizing:border-box; padding-top:10px; padding-bottom:10px; cursor:pointer; }
.tg-a11y .tg26-gallery>div,.tg-a11y .tg26-gallery-extra { min-width:0; }
.tg-a11y .tg26-hero,.tg-a11y .tg26-detail-grid,.tg-a11y .tg26-grid { min-width:0; }
.tg-a11y .tg26-hero>* { min-width:0; }
.tg-a11y .tg26-coming-card { aspect-ratio:auto; min-height:300px; overflow:visible; }
.tg-a11y .tg-visit-form [disabled]+span { opacity:1; }
.tg-a11y .tg26-call { display:inline-block; min-height:44px; padding:8px 0; box-sizing:border-box; }
.tg-a11y .tg26-gallery a { display:block; border-radius:6px; }
.tg-a11y .tg-showcase__slides { height:auto; min-height:clamp(450px,42vw,580px); }
.tg-a11y .tg-showcase__slide { position:relative; min-height:inherit; }
.tg-a11y .tg-showcase__copy { height:auto; min-height:inherit; padding-bottom:102px; }
.tg-a11y .tg-showcase__title { color:#fff; font-size:clamp(38px,4.5vw,62px)!important; line-height:1.12!important; letter-spacing:-1.4px!important; font-weight:500!important; margin:0 0 28px!important; max-width:700px!important; text-shadow:0 2px 15px rgba(0,0,0,.12); text-transform:none!important; }
.tg-a11y .tg-showcase__shade { background:linear-gradient(90deg,rgba(4,25,38,.92),rgba(4,25,38,.76) 58%,rgba(4,25,38,.44)); }
.tg-a11y .tg-showcase__controls button { min-width:44px; height:44px; background:#142f44!important; border:1px solid #fff!important; }
.tg-a11y .tg-showcase__dots span { width:24px; background:#fff; opacity:.8; }
.tg-a11y .tg-showcase__dots button[aria-pressed=true] span { height:6px; opacity:1; }
.tg-a11y .tg-showcase__arrows { padding-right:52px; }
.tg-a11y .tg-showcase__rotation { position:absolute; z-index:2; bottom:24px; right:max(44px,calc((100% - 1092px)/2)); min-width:44px; height:44px; min-height:44px; padding:0!important; margin:0!important; background:#142f44!important; color:#fff!important; border:1px solid #fff!important; border-radius:50%; font:20px/1 Arial,sans-serif; }
.tg-a11y .tg-showcase__rotation:after { display:none!important; }
.tg-a11y .tg-a11y-reviews { max-width:980px; margin:0 auto; color:#fff; }
.tg-a11y .tg-a11y-reviews figure { margin:0 0 20px; padding:12px 24px; box-sizing:border-box; }
.tg-a11y .tg-a11y-reviews blockquote { color:#fff; font:18px/1.7 Arial,sans-serif; font-style:italic; margin:0; padding:0; border:0; background:none; }
.tg-a11y .tg-a11y-reviews blockquote:before,.tg-a11y .tg-a11y-reviews blockquote:after { display:none; }
.tg-a11y .tg-a11y-reviews figcaption { color:#fff; font:600 15px/1.6 Arial,sans-serif; text-align:center; padding-top:16px; }
.tg-a11y .tg-a11y-review-controls { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:16px; padding:10px 0 22px; }
.tg-a11y .tg-a11y-review-controls p { margin:0; font:14px/1.5 Arial,sans-serif; color:#fff; }
.tg-a11y .tg-a11y-review-controls button { min-height:44px; background:#fff!important; border:1px solid #fff; color:#173a50!important; font:600 14px/1.4 Arial,sans-serif; padding:10px 14px!important; margin:0!important; }
.tg-a11y .tg-a11y-review-controls button:after { display:none!important; }
.tg-a11y .tg-a11y-gallery { width:min(1100px,calc(100vw - 32px)); max-width:calc(100vw - 32px); max-height:calc(100vh - 32px); max-height:calc(100dvh - 32px); margin:auto; padding:20px; box-sizing:border-box; border:1px solid #839fb6; border-radius:10px; color:#173a50; background:#fff; overflow:auto; box-shadow:0 15px 80px #0005; }
.tg-a11y .tg-a11y-gallery::backdrop { background:rgba(4,20,32,.85); }
.tg-a11y .tg-a11y-gallery-header { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; }
.tg-a11y .tg-a11y-gallery-header h2 { margin:0; color:#173a50; font:600 20px/1.5 Arial,sans-serif; overflow-wrap:anywhere; }
.tg-a11y .tg-a11y-gallery button { min-height:44px; min-width:44px; max-width:100%; white-space:normal; font:600 15px/1.5 Arial,sans-serif; padding:10px 16px!important; margin:0!important; color:#fff!important; background:#075d96!important; border:1px solid #075d96!important; }
.tg-a11y .tg-a11y-gallery button:after { display:none!important; }
.tg-a11y .tg-a11y-gallery img { display:block; max-width:100%; max-height:65vh; max-height:65dvh; object-fit:contain; margin:20px auto 8px; width:auto; height:auto; }
.tg-a11y .tg-a11y-gallery figcaption { color:#475e6b; font:14px/1.6 Arial,sans-serif; text-align:center; }
.tg-a11y .tg-a11y-gallery figure { margin:0; }
.tg-a11y .tg-a11y-gallery-controls { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:12px; margin-top:14px; }
.tg-a11y .tg-a11y-gallery-controls p { color:#173a50; font:15px/1.5 Arial,sans-serif; margin:0; }
.tg-a11y .tg-a11y-gallery-original { display:block; padding:12px 0; color:#075d96; text-align:center; font:14px/1.5 Arial,sans-serif; text-decoration:underline; }
.tg-a11y .cdp-cookies-banner { max-height:calc(100vh - 24px); max-height:calc(100dvh - 24px); overflow:auto; box-sizing:border-box; font-size:15px; line-height:1.6; }
.tg-a11y .cdp-cookies-banner :where(button,label) { min-height:44px; font-size:15px; }
.tg-a11y .cdp-cookies-option label { padding:8px 0; }
.tg-a11y .cdp-cookies-option input { width:20px; height:20px; accent-color:#075d96; }
.tg-a11y .cdp-cookies-preferences { left:auto!important; right:12px!important; bottom:12px!important; transform:none!important; min-height:44px; max-width:calc(100vw - 24px); font-size:14px; padding:10px 14px; }
.tg-a11y .tg-a11y-help { max-width:1180px; margin:0 auto; padding:12px 24px 22px; color:#fff; font:14px/1.6 Arial,sans-serif; box-sizing:border-box; }
.tg-a11y .tg-a11y-help p { color:#fff!important; font:14px/1.6 Arial,sans-serif; }
.tg-a11y .tg-a11y-help summary { font-weight:600; }
.tg-a11y .tg-a11y-help a { color:#fff!important; text-decoration:underline!important; }
@media(min-width:1240px) {
  .tg-a11y #menu>ul>li { display:flex; align-items:center; }
  .tg-a11y #menu>ul>li>a>span { padding-left:11px; padding-right:11px; }
}
@media(max-width:1239px) {
  .tg-a11y #Header button.responsive-menu-toggle { display:inline-flex; top:24px; right:20px; }
  .tg-a11y #Header button.responsive-menu-toggle.is-sticky { position:fixed; top:10px; left:10px; right:auto; z-index:100000; }
  .tg-a11y #Top_bar #menu { display:none!important; }
  .tg-a11y #Top_bar #menu.tg-a11y-menu-open { display:block!important; }
  .tg-a11y #menu>ul>li>a { padding-right:52px; font-size:16px; }
  .tg-a11y #menu .tg-a11y-submenu { position:absolute; top:3px; right:10px; width:44px; margin:0!important; }
  .tg-a11y #menu .sub-menu { position:static!important; width:100%!important; }
}
@media(max-width:767px) {
  .tg-a11y #Header button.responsive-menu-toggle { top:20px; right:5px; }
  .tg-a11y .tg-showcase__slides { height:auto; min-height:440px; }
  .tg-a11y .tg-showcase__copy { padding:32px 24px 110px; }
  .tg-a11y .tg-showcase__title { font-size:39px!important; letter-spacing:-1px!important; }
  .tg-a11y .tg-showcase__rotation { right:24px; bottom:20px; }
  .tg-a11y .tg-showcase__controls { gap:10px; }
  .tg-a11y .tg-showcase__dots,.tg-a11y .tg-showcase__arrows { gap:4px; }
  .tg-a11y .tg-showcase__dots button { min-width:32px; }
  .tg-a11y .tg-showcase__dots span { width:18px; }
  .tg-a11y .tg-showcase__arrows { padding-right:48px; }
  .tg-a11y .tg-a11y-gallery { padding:14px; }
  .tg-a11y .tg-a11y-gallery img { max-height:55dvh; }
  .tg-a11y #Content .the_content_wrapper :where(ul,ol) { line-height:1.6; }
  .tg-a11y #Content table { display:block; max-width:100%; overflow-x:auto; }
}
@media(prefers-reduced-motion:reduce) {
  .tg-a11y *, .tg-a11y *:before, .tg-a11y *:after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
  .tg-a11y [data-enllax-ratio] { background-attachment:scroll!important; background-position:center!important; }
}
@media(forced-colors:active) {
  .tg-a11y :where(a,button,input,textarea,summary):focus-visible { outline:3px solid Highlight!important; outline-offset:3px!important; box-shadow:none!important; }
  .tg-a11y :where(button,input,textarea,select),.tg-a11y .tg26-card { border:1px solid ButtonText!important; }
  .tg-a11y .tg-showcase__dots span { background:ButtonText; }
  .tg-a11y .tg-showcase__shade { background:Canvas; opacity:.85; }
  .tg-a11y .tg-showcase__copy :where(p,a) { color:CanvasText!important; -webkit-text-fill-color:CanvasText!important; }
}
@media print {
  .tg-a11y .tg-a11y-skip-nav,.tg-a11y .tg-a11y-cookie-control,.tg-a11y .cdp-cookies-banner,.tg-a11y button.responsive-menu-toggle,.tg-a11y .tg-visit-actions,.tg-a11y .tg-showcase__controls,.tg-a11y .tg-showcase__rotation { display:none!important; }
  .tg-a11y :where(#Content,#Footer) { color:#000!important; background:#fff!important; }
}

.tg-a11y #Top_bar .menu > li.current-menu-item > a, .tg-a11y #Top_bar .menu > li.current-menu-ancestor > a, .tg-a11y #Top_bar .menu > li > a:hover { color:#fff!important; }

.tg-a11y .tg-projects-prepare li p { color:#475e6b!important; }

/* Mobile navigation opens at the viewport, including halfway down a form. */
@media(max-width:1239px) {
  body.tg-a11y.tg-a11y-menu-visible #Top_bar { z-index:100010!important; }
  body.tg-a11y.tg-a11y-menu-visible #Header button.responsive-menu-toggle {
    position:fixed!important; top:calc(16px + env(safe-area-inset-top,0px))!important;
    left:12px!important; right:auto!important; z-index:100012;
  }
  body.tg-a11y #Top_bar #menu.tg-a11y-menu-open {
    position:fixed!important; top:calc(72px + env(safe-area-inset-top,0px))!important;
    left:12px!important; right:12px!important; bottom:auto!important;
    width:auto!important; max-width:none!important; height:auto!important;
    max-height:calc(100vh - 88px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));
    max-height:calc(100dvh - 88px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));
    margin:0!important; padding:8px!important; box-sizing:border-box;
    overflow-x:hidden!important; overflow-y:auto!important;
    overscroll-behavior-y:contain; -webkit-overflow-scrolling:touch; touch-action:pan-y;
    z-index:100011; border:1px solid #486477; border-radius:10px;
    background:#06162a!important; color:#fff!important; box-shadow:0 12px 36px #00152940;
    scrollbar-width:thin; scrollbar-color:#839fb6 #06162a;
  }
  body.tg-a11y #menu.tg-a11y-menu-open>ul { width:100%!important; float:none!important; margin:0!important; }
  body.tg-a11y #menu.tg-a11y-menu-open>ul>li>a { min-height:48px; padding:12px 56px 12px 14px!important; box-sizing:border-box; font-size:16px; line-height:1.5; }
  body.tg-a11y #menu.tg-a11y-menu-open>ul>li>a>span { padding:0!important; }
  body.tg-a11y #menu.tg-a11y-menu-open .tg-a11y-submenu { top:4px; right:8px; }
  body.tg-a11y #menu.tg-a11y-menu-open li:not(.tg-a11y-open)>ul { display:none!important; }
  body.tg-a11y #menu.tg-a11y-menu-open li.tg-a11y-open>ul { opacity:1!important; visibility:visible!important; }
  body.tg-a11y #Header button.responsive-menu-toggle[aria-expanded=true] i::before { content:'\00d7'; font:32px/1 Arial,sans-serif; }
}
@media print { body.tg-a11y #Top_bar #menu.tg-a11y-menu-open { display:none!important; } }
.tg-a11y.single-post #Content .author-date, .tg-a11y.single-post #Content .author-date :where(span,time,a) { color:#475e6b!important; }
.tg-a11y #commentform :where(input:not([type=checkbox]):not([type=submit]):not([type=hidden]),textarea) { color:#173a50!important; background:#fff!important; border:1px solid #62798b!important; font-size:16px!important; line-height:1.6; max-width:100%; box-sizing:border-box; }
.tg-a11y #commentform label { color:#475e6b; font-size:16px; line-height:1.6; }
.tg-a11y #commentform input[type=submit] { background:#075d96!important; color:#fff!important; min-height:44px; font-size:16px; white-space:normal; }
.tg-a11y #commentform input[type=checkbox] { width:20px; height:20px; accent-color:#075d96; }
.tg-a11y #Content .post-nav .list-nav { color:#173a50!important; background:#fff!important; text-decoration:underline; padding:10px; min-height:44px; box-sizing:border-box; }
.tg-a11y .tg-a11y-map-label { display:block; font-size:16px; line-height:1.6; color:#475e6b; }
@supports not selector(:focus-visible) {
  .tg-a11y :where(a,button,input,textarea,select,summary,[tabindex]):focus { outline:3px solid #075d96!important; outline-offset:3px!important; }
}
