.tmext-cookie-description{margin:12px 0 7px!important;font-size:12px!important;line-height:1.65!important}
.tmext-cookie-choice{display:flex!important;align-items:center!important;gap:12px!important;min-height:44px!important;font-size:12px!important;line-height:1.5!important;cursor:pointer!important}
.tmext-remember-note{display:block;margin:12px 0;font-size:11px;line-height:1.6;color:#57758b}
.tmext-map-gate{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:13px;min-height:220px;padding:24px;text-align:center;background:radial-gradient(ellipse at 80% 10%,#d8edf6,transparent 65%),#edf5f9;color:#2c536d;font:13px/1.65 Montserrat,system-ui,sans-serif}
.tmext-map-gate p{max-width:520px;margin:0}.tmext-map-gate a{font-size:12px;color:#205e82;text-decoration:underline}.tmext-map-gate small{font-size:11px;color:#567b90}
.tmext-map-gate button,.tmext-settings button{border:1px solid #789fb8;border-radius:7px;background:#f8fbfd;color:#163a53;min-height:50px;padding:12px 16px;font:700 12px/1.4 Montserrat,system-ui,sans-serif;cursor:pointer}
.tmext-map-gate button:hover{background:#176f9c;color:#fff}.tmext-map-unavailable{display:grid;place-items:center;min-height:220px;margin:0;padding:30px;text-align:center;font:13px/1.7 Montserrat,system-ui,sans-serif;color:#526f84;background:#edf5f9}
.tmext-map-canvas{height:230px;min-height:230px;background:#e1edf2;border-radius:12px;overflow:hidden;isolation:isolate}
.tmext-map-canvas .leaflet-control-zoom{border:1px solid #b3cddb;border-radius:8px;box-shadow:0 5px 18px #163e5720;overflow:hidden}.tmext-map-canvas .leaflet-control-zoom a{background:#f8fbfd;color:#163a53}
.tmext-map-canvas .leaflet-control-attribution{background:#ffffffdf;font-size:10px;line-height:1.6;color:#32546a}
/* Brand marker: original vector lettering, slanted pin and independent pulse.
   Leaflet owns the root transform for positioning; never rotate that element. */
.tmext-map-canvas .tmext-marker{background:none;border:0;overflow:visible;isolation:isolate}
.tmext-marker::before{content:'';position:absolute;left:4px;top:4px;width:56px;height:56px;box-sizing:border-box;border:1px solid #078bd1;border-radius:50%;opacity:0;pointer-events:none;animation:tmext-map-pulse 4.8s ease-out infinite}
.tmext-marker::after{content:'';position:absolute;left:13px;top:57px;width:35px;height:10px;background:radial-gradient(ellipse,#092b5145,transparent 70%);pointer-events:none;z-index:-1}
.tmext-marker>.tmext-map-pin{position:absolute;left:11px;top:11px;display:grid;place-items:center;box-sizing:border-box;width:42px;height:42px;border-radius:50% 50% 50% 6px;background:#0776b9;border:3px solid #fff;box-shadow:0 5px 16px #092b5180;transform:rotate(-35deg);transform-origin:center;pointer-events:none}
.tmext-marker .tmext-map-brand{display:block!important;width:32px!important;height:32px!important;min-width:0!important;max-width:none!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:none!important;object-fit:contain!important;transform:rotate(35deg)!important;opacity:1!important;filter:none!important}
@keyframes tmext-map-pulse{0%,65%,100%{opacity:0;transform:scale(.8)}15%{opacity:.65}45%{opacity:0;transform:scale(1.55)}}
@media(prefers-reduced-motion:reduce){.tmext-marker::before{animation:none;opacity:.2;transform:none}}
.tmext-settings{width:min(500px,calc(100vw - 32px));border:1px solid #b4d3e3;border-radius:18px;padding:28px;background:#f5fafe;color:#163a53;font:14px/1.6 Montserrat,system-ui,sans-serif}.tmext-settings::backdrop{background:#071a2ab0;backdrop-filter:blur(6px)}.tmext-settings h2{font-size:25px}.tmext-settings label{display:flex;gap:12px;padding:10px 0}.tmext-settings input{width:18px;height:18px;accent-color:#176f9c}.tmext-settings a{display:block;margin-top:15px;color:#205e82}
@media(max-width:650px){.tmext-map-gate{padding:22px 16px}.tmext-map-canvas{height:210px;min-height:210px}}
.tmext-map-gate .tm-unified-button{display:inline-flex;align-items:center;justify-content:center;gap:10px}
.tmext-map-gate .tm-button-arrow,.tm-privacy-gate .tm-button-arrow,.tms-consent .tm-button-arrow{display:inline-flex;flex:0 0 20px;width:20px;height:20px;margin-left:8px}
.tmext-map-gate .tm-button-arrow svg,.tm-privacy-gate .tm-button-arrow svg,.tms-consent .tm-button-arrow svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.8;stroke-linecap:round;stroke-linejoin:round}
[data-tm-osm][data-tm-consent-map]>.tmext-map-canvas{height:100%;min-height:0;border-radius:inherit}
[data-tm-osm][data-tm-consent-map]>.tmext-map-gate{min-height:100%;height:100%}

[data-tm-osm][data-tm-consent-map]{position:relative;overflow:hidden}
[data-tm-osm][data-tm-consent-map]:has(>.tmext-map-gate){height:auto!important;min-height:300px}
[data-tm-osm][data-tm-consent-map]>.tmext-map-gate{height:auto;min-height:300px;box-sizing:border-box}

/* Consent 1.3.1: compact reCAPTCHA prompt, no larger than a regular form hint. */
.tm-privacy-gate[data-tm-recaptcha-gate]{min-height:0!important;padding:18px 20px!important;gap:10px!important;border:1px solid #c3d7e4!important;border-radius:10px!important;background:linear-gradient(120deg,#f0f7fb,#e7f0f7)!important;box-shadow:none!important;margin:12px 0!important}
.tm-privacy-gate[data-tm-recaptcha-gate] p{font-size:12px!important;line-height:1.65!important;margin:0!important;max-width:520px!important}
.tm-privacy-gate[data-tm-recaptcha-gate] p:last-child{font-size:11px!important;color:#56758a!important}
.tm-privacy-gate[data-tm-recaptcha-gate] button.tm-unified-button{min-height:40px!important;padding:8px 14px!important;font-size:11px!important}
.tm-privacy-gate[data-tm-recaptcha-gate] a{font-size:11px!important}
.tm-privacy-gate[data-tm-recaptcha-gate] .tmext-remember-note{margin:0!important}
@media(max-width:600px){.tm-privacy-gate[data-tm-recaptcha-gate]{padding:16px 12px!important}}

/* Compact contact panel: scope to contact pages and keep native form controls. */
body.tm-redesign .tm-contact-connected:has(.tm-contact-layout){max-width:1120px;margin-top:32px;margin-bottom:48px}
body.tm-redesign .tm-contact-connected .tm-contact-layout>.sppb-row-container>.sppb-row>div>.sppb-column{padding:24px 26px!important}
body.tm-redesign .tm-contact-connected .tm-contact-layout .tm-contact-details{gap:20px}
body.tm-redesign .tm-contact-connected .tm-contact-layout .tm-contact-details p.tm-contact-detail{gap:3px;margin-bottom:14px!important}
body.tm-redesign .tm-contact-connected .tm-contact-layout .tm-contact-details>.sppb-addon-wrapper:has(.tm-social-list){padding-top:14px}
body.tm-redesign .tm-contact-connected .tm-contact-layout .tm-social-list li{margin:0!important;padding:0!important}
body.tm-redesign .tm-contact-connected .tm-contact-layout a.tm-social-link{width:44px!important;height:44px!important;min-height:44px!important;padding:0!important}
body.tm-redesign .tm-contact-connected .tm-contact-layout .tm-contact-form-column .sppb-addon-title{font-size:clamp(25px,2.1vw,30px)!important;margin-bottom:6px!important}
body.tm-redesign .tm-contact-connected .tm-contact-layout .tm-contact-form-column .sppb-addon-text-block p{margin-bottom:8px;line-height:1.55}
body.tm-redesign .tm-contact-connected .tm-contact-layout .sppb-ajaxt-contact-form>.sppb-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 12px;margin:0}
body.tm-redesign .tm-contact-connected .tm-contact-layout .sppb-ajaxt-contact-form .tm-contact-field{grid-column:1/-1;margin:0;padding:0;max-width:100%!important;width:auto!important}
body.tm-redesign .tm-contact-connected .tm-contact-layout .sppb-ajaxt-contact-form :is(.tm-field-name,.tm-field-email,.tm-field-subject,.tm-field-phone){grid-column:auto}
body.tm-redesign .tm-contact-connected .tm-contact-layout .tm-contact-field label{font-size:12px;line-height:1.35;margin-bottom:4px;letter-spacing:.015em}
body.tm-redesign .tm-contact-connected .tm-contact-layout .tm-contact-field :is(input,textarea){min-height:44px;padding:9px 12px;font-size:14px;line-height:1.5}
body.tm-redesign .tm-contact-connected .tm-contact-layout .tm-contact-field textarea{height:96px;min-height:96px;resize:vertical}
body.tm-redesign .tm-contact-connected .tm-contact-layout .tm-form-required{font-size:11px;margin:6px 0}
body.tm-redesign .tm-contact-connected .tm-contact-layout .sppb-form-button{margin-top:6px}
body.tm-redesign .tm-contact-layout .tm-privacy-gate[data-tm-recaptcha-gate]{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px!important;align-items:center!important;text-align:left!important;padding:14px 16px!important;margin:4px 0 8px!important}
body.tm-redesign .tm-contact-layout .tm-privacy-gate[data-tm-recaptcha-gate]>p:first-child{grid-column:1/-1;grid-row:1;max-width:none!important}
body.tm-redesign .tm-contact-layout .tm-privacy-gate[data-tm-recaptcha-gate]>button[data-tmext-grant]{grid-column:1;grid-row:2;justify-self:start}
body.tm-redesign .tm-contact-layout .tm-privacy-gate[data-tm-recaptcha-gate]>button[data-tmext-settings-button]{grid-column:2;grid-row:2;justify-self:end}
body.tm-redesign .tm-contact-layout .tm-privacy-gate[data-tm-recaptcha-gate]>a{grid-column:1;grid-row:3}
body.tm-redesign .tm-contact-layout .tm-privacy-gate[data-tm-recaptcha-gate]>p:last-of-type:not(:first-child){grid-column:2;grid-row:3;text-align:right;overflow-wrap:anywhere}
body.tm-redesign .tm-contact-layout .tm-privacy-gate[data-tm-recaptcha-gate]>.tmext-remember-note{grid-column:1/-1;grid-row:4;font-size:11px;line-height:1.5;text-align:left}
body.tm-redesign .tm-contact-layout .tm-privacy-gate[data-tm-recaptcha-gate]>button.tm-unified-button{min-height:44px!important;padding:9px 12px!important;max-width:100%;white-space:normal!important}
@media(max-width:700px){
 body.tm-redesign .tm-contact-connected:has(.tm-contact-layout){margin:24px 16px 36px}
 body.tm-redesign .tm-contact-connected .tm-contact-layout>.sppb-row-container>.sppb-row>div>.sppb-column{padding:20px!important}
 body.tm-redesign .tm-contact-connected .tm-contact-layout .tm-contact-field :is(input,textarea){font-size:16px!important}
}
@media(max-width:560px){
 body.tm-redesign .tm-contact-connected .tm-contact-layout .sppb-ajaxt-contact-form>.sppb-row{grid-template-columns:minmax(0,1fr)}
 body.tm-redesign .tm-contact-connected .tm-contact-layout :is(.tm-field-name,.tm-field-email,.tm-field-subject,.tm-field-phone){flex-basis:100%;max-width:100%}
 body.tm-redesign .tm-contact-layout .tm-privacy-gate[data-tm-recaptcha-gate]{grid-template-columns:minmax(0,1fr);gap:8px!important;padding:14px 12px!important}
 body.tm-redesign .tm-contact-layout .tm-privacy-gate[data-tm-recaptcha-gate]>*{grid-column:1!important;grid-row:auto!important;text-align:left!important}
 body.tm-redesign .tm-contact-layout .tm-privacy-gate[data-tm-recaptcha-gate]>p:first-child{order:0}
 body.tm-redesign .tm-contact-layout .tm-privacy-gate[data-tm-recaptcha-gate]>button[data-tmext-grant]{order:1}
 body.tm-redesign .tm-contact-layout .tm-privacy-gate[data-tm-recaptcha-gate]>button[data-tmext-settings-button]{order:2}
 body.tm-redesign .tm-contact-layout .tm-privacy-gate[data-tm-recaptcha-gate]>a{order:3}
 body.tm-redesign .tm-contact-layout .tm-privacy-gate[data-tm-recaptcha-gate]>p:last-of-type:not(:first-child){order:4}
 body.tm-redesign .tm-contact-layout .tm-privacy-gate[data-tm-recaptcha-gate]>.tmext-remember-note{order:5}
 body.tm-redesign .tm-contact-layout .tm-privacy-gate[data-tm-recaptcha-gate]>button{width:100%;justify-self:stretch!important}
}
