.mast[data-tone]{
  --menu-panel:#f5f9fbf5;
}
.mast[data-tone="dark"]{
  --menu-panel:#0a2135f5;
}
.mast #menu{
  gap:clamp(9px,1.15vw,19px);
  font-size:12px;
}
.mast .menu-item{display:flex;align-items:center;gap:2px;white-space:nowrap}
.mast .menu-item>a[aria-current="page"]{color:var(--glass-accent);text-decoration:underline;text-underline-offset:7px}
.site-submenu{position:relative}
.site-submenu summary{
  list-style:none;cursor:pointer;padding:4px 3px;min-width:16px;text-align:center;color:var(--glass-accent)
}
.site-submenu summary::-webkit-details-marker{display:none}
.site-submenu[open] summary>span{display:inline-block;transform:rotate(180deg)}
.site-submenu>div{
  position:absolute;top:calc(100% + 12px);inset-inline-start:-60px;min-width:205px;
  background:var(--menu-panel);border:1px solid var(--glass-stroke);box-shadow:0 12px 30px #071a303d;
  padding:8px 12px;display:grid;z-index:20;backdrop-filter:blur(18px)
}
.site-submenu>div>a{
  padding:6px 3px!important;white-space:normal;border-block-end:1px solid var(--glass-stroke)
}
.site-submenu>div>a:last-child{border:0}
.interior .detail-hero{
  position:relative;isolation:isolate;
  background:radial-gradient(ellipse at 22% 35%,#164264,#071a30 66%);
  padding-block-end:clamp(55px,8vw,110px)
}
.interior .detail-hero::before{
  content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;opacity:.30;
  background:repeating-linear-gradient(130deg,transparent 0 76px,#7eacc532 77px 78px,transparent 79px 118px);
  mask-image:linear-gradient(90deg,#000,transparent 67%)
}
.interior-crumb{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:#bddef5;font-size:13px}
.interior-crumb a:hover{text-decoration:underline}
.interior .detail-hero h1{margin:21px 0 0;font-size:clamp(39px,6vw,78px);line-height:1.35}
.interior-content{padding-block:clamp(36px,6vw,82px) 88px;min-height:48vh}
.interior-rail{
  display:flex;gap:7px;flex-wrap:wrap;margin-block-end:28px;padding-block-end:18px;border-bottom:1px solid #b9cbd7
}
.interior-rail a{font-size:13px;font-weight:700;padding:7px 13px;border:1px solid #cad9e3;color:#153e5b}
.interior-rail a:hover,.interior-rail a[aria-current="page"]{color:#fff;background:#16466d;border-color:#16466d}
.original-content{line-height:1.95;font-size:17px;overflow-wrap:anywhere}
.original-content h1,.original-content h2,.original-content h3,.original-content h4,.original-content h5{line-height:1.45;margin:0 0 14px}
.original-content h2{font-size:clamp(25px,3vw,36px)}
.original-content h3,.original-content h4,.original-content h5{font-size:clamp(17px,2vw,24px)}
.original-content p{margin-block:0 16px}
.original-content img{max-width:100%;height:auto;border-radius:10px;object-fit:contain}
.original-content a{color:#174f79;text-decoration:underline;text-underline-offset:4px}
.original-content .about-content,.original-content .page-editor{max-width:90ch}
.original-content .page-editor:empty{display:none}
.original-content .container>.text-center:not(:has(img,a,p)){margin-bottom:22px}
.original-content .row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.original-content .row:has(.about-content){grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:clamp(24px,6vw,70px)}
.original-content .news-item,.original-content .project-item,.original-content .director-member{
  height:100%;min-width:0;border:1px solid #ccdbe6;background:#fff;border-radius:12px;overflow:hidden
}
.original-content .news-item-body,.original-content .project-item-body{padding:22px}
.original-content .news-item-thumb:empty{display:none}
.original-content .news-item-thumb img,.original-content .project-item-thumb img{
  width:100%;aspect-ratio:1.6;object-fit:cover;border-radius:0
}
.original-content .directors-center{grid-template-columns:repeat(3,minmax(0,1fr))}
.original-content .director-member{padding:20px}
.original-content .director-member img{width:100%;aspect-ratio:1;object-fit:contain;background:#eef3f6}
.original-content .director-member-name{font-weight:800;margin-top:12px}
.original-content .director-member-tit{color:#4a6375;font-size:14px}
.original-content .page-editor img{margin-block:14px 20px}
[data-route="aboutus/executive-directors-message"] .page-editor{max-width:100%}
[data-route="aboutus/executive-directors-message"] .page-editor>p:has(img){
  float:inline-end;width:min(30%,300px);margin-inline-start:clamp(20px,5vw,70px);margin-bottom:18px
}
.original-content iframe{display:block;width:min(100%,780px);aspect-ratio:16/9;height:auto;border:0;border-radius:8px}
.original-content .commercial{display:flex;flex-wrap:wrap;gap:14px;margin:18px 0}
.original-content table{border-collapse:collapse;display:block;overflow-x:auto;max-width:100%}
.original-content td,.original-content th{border:1px solid #ccdbe6;padding:9px}
.original-content form{
  max-width:840px;padding:clamp(18px,4vw,32px);border:1px solid #cfdee8;background:#fff;border-radius:12px
}
.original-content form .row{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px}
.original-content form .col-md-12,.original-content form .col-12{grid-column:1/-1}
.original-content form input:not([type=hidden]),.original-content form textarea,.original-content form select{
  display:block;width:100%;min-width:0;font:inherit;padding:9px;border:1px solid #aec5d6;border-radius:4px;
  color:#102840;background:#f7fafc
}
.original-content form textarea{min-height:110px;resize:vertical}
.original-content form [aria-invalid="true"]{border-color:#a22828}
.original-content form input[type=submit],.original-content form button[type=submit]{
  width:auto;background:#16466d;color:white;border:0;padding:9px 20px;font-size:14px;cursor:pointer
}
.original-content .form-status:empty{display:none}
[data-route="contact-us"] .original-content{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:24px 48px}
[data-route="contact-us"] .original-content>.page-main{display:none}
[data-route="contact-us"] .hold_contacts .row{grid-template-columns:1fr}
[data-route="contact-us"] .hold_contacts iframe{max-height:220px}
@media(max-width:1130px){
  .mast #menu{display:none}
  .mast .menu-button{display:block}
  .mast #menu.open{
    position:absolute;inset:100% 0 auto;display:grid;gap:0;max-height:calc(100dvh - var(--mast-height));
    overflow:auto;padding:10px 6vw 18px;background:var(--menu-panel);box-shadow:0 8px 20px #071a3038
  }
  .mast .menu-item{display:grid;grid-template-columns:1fr auto;border-bottom:1px solid var(--glass-stroke)}
  .mast .menu-item:has(details[open]){display:block}
  .mast .menu-item:has(details[open])>a{display:inline-block}
  .mast .menu-item>a{border:0}
  .mast .menu-item .site-submenu[open]{display:inline-block;width:100%}
  .site-submenu>div{position:static;box-shadow:none;border:0;border-inline-start:1px solid var(--glass-stroke);background:none;padding:0 12px}
  .mast .site-submenu summary{text-align:start;min-width:34px;padding:4px 9px}
}
@media(max-width:760px){
  .original-content{font-size:15px}
  .original-content .row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  [data-route="contact-us"] .original-content,.original-content .row:has(.about-content){grid-template-columns:1fr}
}
@media(max-width:510px){
  .original-content .directors-center,.original-content .row:not(.directors-center):has(.news-item),
  .original-content form .row{grid-template-columns:1fr}
  [data-route="aboutus/executive-directors-message"] .page-editor>p:has(img){float:none;width:min(90%,260px);margin-inline:0}
}
.mast .portal-choice .site-submenu summary{font-weight:750;padding:6px 8px;border:1px solid var(--glass-stroke)}
.mast .portal-choice .site-submenu>div{inset-inline-start:auto;inset-inline-end:0;min-width:155px}
.portal-body{padding-block:clamp(34px,6vw,92px);min-height:39vh}
.portal-content{max-width:630px;border:1px solid #cadce7;background:#fff;padding:clamp(20px,5vw,50px);margin-inline:auto;border-radius:13px}
.portal-content h2{margin-block-start:0;font-size:clamp(26px,4vw,42px)}
.portal-content p{color:#516879;line-height:1.8}
.portal-action{
  display:inline-flex;align-items:center;justify-content:space-between;gap:22px;background:#153f63;color:white;
  font-weight:750;padding:11px 16px;margin-block-start:22px
}
.portal-action:hover{background:#205b89}
.portal-helpers{display:flex;flex-wrap:wrap;gap:14px 20px;margin-block-start:16px;font-size:13px;color:#16466d}
.portal-helpers a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:1130px){
  .mast .portal-choice .site-submenu{grid-column:1/-1}
  .mast .portal-choice .site-submenu summary{border:0;padding:12px 0}
}
.secondary-layout{
 display:grid;grid-template-columns:minmax(0,1fr) minmax(170px,.58fr);
 align-items:center;gap:clamp(24px,6vw,94px)
}
.secondary-scene{position:relative;width:100%;height:clamp(145px,18vw,235px)}
.secondary-scene canvas,.secondary-fallback{position:absolute;inset:0;width:100%;height:100%}
.secondary-fallback{
 background:#dcefff;opacity:.38;
 mask:url(assets/services-object.webp) center/contain no-repeat
}
.secondary-ready .secondary-fallback{visibility:hidden}
@media(max-width:650px){
 .secondary-layout{grid-template-columns:minmax(0,1fr);gap:9px}
 .secondary-scene{height:148px}
 .interior .detail-hero:has(.secondary-layout){padding-block-end:29px}
}
.portal-form{display:grid;gap:13px;margin-block-start:22px}
.portal-form label{display:grid;gap:5px;font-size:14px;font-weight:700}
.portal-form input:not([type=checkbox]){
  min-width:0;width:100%;font:inherit;padding:9px 11px;background:#f5f9fc;
  border:1px solid #abc3d5;border-radius:4px;color:#112b43
}
.portal-form .portal-check{display:flex;gap:8px;align-items:center;font-weight:500}
.portal-field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.portal-form .portal-action{justify-self:start;border:0;margin-block-start:0}
.portal-form .portal-action:disabled{opacity:.56;cursor:default}
.portal-status{font-size:13px}.portal-status:empty{display:none}
.portal-form .portal-privacy{font-size:12px}
.portal-retry{justify-self:start;color:#174d73;background:#f0f7fa;border:1px solid #abc3d5;padding:6px 10px}
@media(max-width:440px){.portal-field-row{grid-template-columns:1fr}}
/* The outer form wrapper is a single panel; only its field rows use two columns. */
[data-route="contact-us"] .original-content{
 grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);align-items:start
}
[data-route="contact-us"] .page-form,
[data-route="contact-us"] .hold_contacts{min-width:0}
[data-route="contact-us"] .page-form>form{width:100%;max-width:none}
.original-content form .form-spam-trap[hidden]{display:none}
.original-content form .form-group label{display:block}
@media(max-width:760px){[data-route="contact-us"] .original-content{grid-template-columns:minmax(0,1fr)}}
@media(max-width:520px){.original-content form .row{grid-template-columns:minmax(0,1fr)}}

.image-catalog{width:min(100%,900px);margin-inline:auto;display:grid;gap:18px}
.catalog-view{
 display:flex;align-items:center;justify-content:center;gap:clamp(20px,6vw,78px);min-height:250px;
 border:1px solid #c6d9e5;border-radius:16px;background:linear-gradient(140deg,#e5edf3,#fff 72%);padding:22px
}
.catalog-preview{display:block;width:min(100%,330px);height:clamp(180px,27vw,320px)!important;object-fit:contain}
.catalog-description h2{margin:0 0 8px}.catalog-description p{color:#4d6478;margin:0}
.catalog-thumbs{display:flex;justify-content:center;gap:9px;flex-wrap:wrap}
.catalog-thumb{
 display:grid;place-items:center;width:clamp(59px,10vw,98px);aspect-ratio:1;overflow:hidden;border:1px solid #bbcfdd;
 background:#fff;padding:4px;border-radius:8px
}
.catalog-thumb[aria-pressed="true"]{outline:2px solid #1762a8;outline-offset:1px}
.catalog-thumb img{width:100%;height:100%;object-fit:contain}
.catalog-controls{display:flex;align-items:center;justify-content:center;gap:18px}
.catalog-controls button{padding:4px 13px;background:white;border:1px solid #b9cddb;color:#16466d;font-size:19px}
.catalog-controls .catalog-playback{font:inherit;font-size:13px;min-height:36px}
.catalog-count{direction:ltr;font-size:13px}
@media(max-width:540px){.catalog-view{flex-direction:column;gap:10px;text-align:center;padding:16px}}
