/* Original visual design; only runtime/accessibility compatibility. */
.appear-animation{opacity:1!important}.legacy-map{border:0}.legacy-whatsapp{font-size:16px}.legacy-skip{position:absolute;top:-100px;left:20px;z-index:99999;background:#212529;color:#fff;padding:12px 18px}.legacy-skip:focus{top:10px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #245578;outline-offset:3px}.field-error{display:block;color:#a02020;font-size:13px}#form-status:not(:empty){padding:12px;border-left:3px solid #45bfee;background:#f4f7f8;color:#333}#main:focus{outline:none}.fc-slideshow ul.fc-slides>li:first-child{display:block}#header .header-nav-main nav>ul>li>a[aria-current="page"]{background:#45bfee;color:#fff}#header .header-nav-main nav>ul>li>a[aria-current="page"]:hover{background:#45bfee;color:#fff}button[disabled]{opacity:.65}.header-body{position:relative!important}html #header{height:auto!important}.home-concept .project-image{overflow:visible}@media(min-width:992px){#header{position:sticky;top:0;z-index:1000}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.legacy-whatsapp-link{display:inline-flex;align-items:center;min-height:44px;color:inherit;text-decoration:none}
.legacy-whatsapp-link:hover,.legacy-whatsapp-link:focus-visible{text-decoration:underline}
.legacy-whatsapp-link i{margin-right:5px}
.captcha-area{margin:4px 0 25px}.captcha-heading{margin:0 0 9px;font-weight:600;color:#333}.captcha-area altcha-widget{display:block;max-width:380px}.captcha-area .field-error{margin-top:8px}
#header #mainNav > li > a{font-weight:800}
@media(min-width:992px) and (max-width:1199px){#header #mainNav > li > a{padding-inline:6px}}

/* Shared V2 scroll shadow; the header stays opaque white. */
#header{position:sticky;top:0;z-index:1000;transition:box-shadow .28s ease}
#header.is-scrolled{box-shadow:0 8px 14px rgba(0,0,0,.17),0 22px 30px rgba(0,0,0,.09)}
@media(prefers-reduced-motion:reduce){#header{transition:none}}

/* Homepage banner: artwork and readable text remain separate at every size. */
.eg-banner{position:relative;isolation:isolate;display:flex;align-items:center;min-height:clamp(390px,34vw,560px);overflow:hidden;background:#dceffa;color:#143a53;font-family:"Plus Jakarta Sans",Arial,sans-serif}
.eg-banner__art{position:absolute;z-index:0;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center 46%;animation:eg-banner-art-enter 1s ease-out both}
.eg-banner:after{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgba(231,247,255,.98) 0%,rgba(231,247,255,.94) 28%,rgba(231,247,255,.58) 43%,rgba(231,247,255,0) 61%);pointer-events:none}
.eg-banner__inner{position:relative;z-index:2;display:flex;align-items:center;width:min(1360px,calc(100% - 11vw));margin-inline:auto}
.eg-banner__copy{width:min(47%,600px);padding:45px 0 105px;animation:eg-banner-copy-enter .8s ease-out both}
.eg-banner__eyebrow{margin:0 0 22px;color:#315e79;font-size:clamp(12px,1.2vw,17px);font-weight:700;letter-spacing:.18em;line-height:1.5;text-transform:uppercase}
.eg-banner h1,.eg-banner h2{margin:0;color:#143a53;font-size:clamp(40px,5vw,76px);font-weight:700;letter-spacing:-.06em;line-height:1.03}
.eg-banner h1 span,.eg-banner h2 span{display:block}
.eg-banner h1 strong,.eg-banner h2 strong{font-weight:700}
.eg-banner h1 span:not(:first-child),.eg-banner h2 span:not(:first-child){color:#0e6e98}
.eg-banner__description{max-width:540px;margin:31px 0 0;color:#31566c;font-size:clamp(17px,1.7vw,25px);line-height:1.5}
.eg-banner-carousel{position:relative}.eg-banner[hidden]{display:none!important}
.eg-banner__controls{position:absolute;z-index:5;left:50%;bottom:16px;transform:translateX(-50%);display:flex;align-items:center;gap:3px;padding:5px 7px;border:1px solid rgba(46,96,119,.2);border-radius:100px;background:rgba(255,255,255,.88);box-shadow:0 8px 28px rgba(20,58,72,.1);backdrop-filter:blur(12px)}
.eg-banner__controls button{display:grid;place-items:center;flex:none;width:42px;height:42px;min-width:42px;padding:0;border:0;border-radius:50%;background:transparent;color:#214f67;line-height:1;font-family:Arial,Helvetica,sans-serif;cursor:pointer}
.eg-banner__controls button[hidden]{display:none!important}
.eg-banner__controls button:hover{background:#dceffa}.eg-banner__controls button:focus-visible{outline:3px solid #154d6a;outline-offset:2px}
.eg-banner__arrow span{font-size:32px;line-height:.8;transform:translateY(-2px)}.eg-banner__pause span{font-size:17px;font-weight:700}
.eg-banner__dots{display:flex;align-items:center;gap:0}.eg-banner__controls .eg-banner__dot{width:31px;min-width:31px;height:42px}.eg-banner__dot span{display:block;width:8px;height:8px;border-radius:50%;background:#8eb0c2;transition:background .25s ease,transform .25s ease}.eg-banner__dot[aria-current="true"] span{background:#106d94;transform:scale(1.45)}
@keyframes eg-banner-art-enter{from{opacity:.75;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}
@keyframes eg-banner-copy-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:767px){
  .eg-banner{display:block;min-height:660px;background:#e7f7ff}
  .eg-banner__art{inset:auto 0 0;height:59%;object-position:78% center}
  .eg-banner:after{background:linear-gradient(180deg,#e7f7ff 0%,rgba(231,247,255,.97) 39%,rgba(231,247,255,.18) 61%,transparent 78%)}
  .eg-banner__inner{display:block;width:calc(100% - 42px)}
  .eg-banner__copy{width:100%;padding-block:42px 0}
  .eg-banner__eyebrow{margin-bottom:16px;font-size:12px;letter-spacing:.14em}
  .eg-banner h1,.eg-banner h2{font-size:clamp(38px,8.3vw,58px)}
  .eg-banner__description{max-width:540px;margin-top:22px;font-size:clamp(16px,3.8vw,20px);line-height:1.42}
}
@media(max-width:430px){
  .eg-banner{min-height:620px}
  .eg-banner__art{height:53%;object-position:79% center}
  .eg-banner__inner{width:calc(100% - 36px)}
  .eg-banner__copy{padding-top:34px}
  .eg-banner h1,.eg-banner h2{font-size:clamp(33px,9.5vw,42px)}
  .eg-banner__description{margin-top:18px}
  .eg-banner__controls{bottom:12px;padding:3px 4px}.eg-banner__controls button{width:38px;min-width:38px;height:38px}.eg-banner__controls .eg-banner__dot{width:28px;min-width:28px;height:38px}
}

/* Country flags and accessible language dropdown in the shared navigation. */
#mainNav .language-switch{position:relative;display:flex;align-items:center;margin-left:10px}
#mainNav .language-dropdown{position:relative;font-family:'Plus Jakarta Sans',Arial,sans-serif}
#mainNav .language-dropdown summary{display:flex;align-items:center;gap:8px;min-height:38px;padding:7px 10px;border:1px solid #cbe5ee;border-radius:8px;background:#f6fbfd;color:#257fa2;font-size:12px;font-weight:800;line-height:1;cursor:pointer;list-style:none;white-space:nowrap}
#mainNav .language-dropdown summary::-webkit-details-marker{display:none}
#mainNav .language-dropdown summary:hover,#mainNav .language-dropdown[open] summary{background:#e8f6fb;border-color:#9cd4e6;color:#164963}
#mainNav .language-dropdown summary:focus-visible,#mainNav .language-menu a:focus-visible{outline:3px solid #245578;outline-offset:3px}
#mainNav .language-flag{display:block;flex:none;width:22px;height:15px;object-fit:cover;border:1px solid rgba(13,52,72,.15);border-radius:2px}
#mainNav .language-chevron{flex:none;width:7px;height:7px;margin-left:2px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .2s ease}
#mainNav .language-dropdown[open] .language-chevron{transform:translateY(2px) rotate(225deg)}
#mainNav .language-menu{position:absolute;z-index:1100;top:calc(100% + 7px);right:0;min-width:158px;padding:5px;border:1px solid #cbe5ee;border-radius:10px;background:#fff;box-shadow:0 12px 28px rgba(15,64,85,.17)}
#mainNav .language-menu a{display:flex;align-items:center;gap:9px;min-height:38px;padding:8px 9px;border-radius:6px;color:#24536a;font-size:12px;font-weight:700;line-height:1.2;text-decoration:none;white-space:nowrap}
#mainNav .language-menu a:hover,#mainNav .language-menu a[aria-current="true"]{background:#e8f6fb;color:#116b91}
@media(min-width:992px) and (max-width:1199px){#mainNav .language-name{font-size:0}#mainNav .language-name::after{content:attr(data-short);font-size:11px}}
@media(max-width:991px){#mainNav .language-switch{display:block;margin:8px 0 4px 10px}#mainNav .language-dropdown{width:max-content}#mainNav .language-menu{position:static;min-width:158px;margin-top:5px;box-shadow:none}}
@media(prefers-reduced-motion:reduce){#mainNav .language-chevron{transition:none}}

/* Site-wide accessibility refinements */
html{scroll-padding-top:125px}
body{overflow-wrap:break-word}
button,input,textarea,select,summary{font:inherit}
button,summary,[role="button"]{touch-action:manipulation}
.sr-only{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}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:not([tabindex="-1"]):focus-visible{outline:3px solid #154d6a!important;outline-offset:3px!important}
input:focus-visible,textarea:focus-visible,select:focus-visible{outline-color:#b85100!important;outline-offset:2px!important}
@media(prefers-contrast:more){
  a{text-decoration-thickness:2px;text-underline-offset:3px}
  a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:not([tabindex="-1"]):focus-visible{outline-width:4px!important;outline-color:#000!important}
  input,textarea,select,button{border-width:2px!important}
}
@media(forced-colors:active){
  a{text-decoration:underline}
  a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:not([tabindex="-1"]):focus-visible{outline:3px solid Highlight!important}
  button,[role="button"],input,textarea,select,.eg-banner__controls,.language-dropdown summary,.language-menu,.consent-banner,.consent-dialog{border:1px solid CanvasText!important}
  [aria-current="page"],[aria-current="true"],[aria-pressed="true"]{outline:2px solid Highlight!important;outline-offset:-2px!important}
  .eg-banner__dot[aria-current="true"] span{background:Highlight!important}
}
@media(max-width:767px){html{scroll-padding-top:95px}}
