/* MitalClad demo — dizajn sistem za Elementor stranice */
:root{
  --mc-navy:#103A5B; --mc-navy-2:#164a72; --mc-navy-3:#0b2a43; --mc-gray:#C9C9C9; --mc-light:#F5F7F8; --mc-ink:#202A32;
  --mc-muted:#5b6872; --mc-line:#d9dee2; --mc-line-2:#C9C9C9;
  --mc-font:"Geist","Helvetica Neue",Arial,system-ui,sans-serif;
  --mc-content:1440px; --mc-gap:12px; --mc-pad:clamp(20px,4.4vw,64px);
  --mc-r-xl:28px; --mc-r-lg:22px; --mc-r:16px; --mc-r-sm:12px;
  --mc-ease:cubic-bezier(.2,.7,.1,1);
}
body.mc-site{margin:0; font-family:var(--mc-font); color:var(--mc-ink); background:#fff; -webkit-font-smoothing:antialiased; overflow-x:hidden}
.mc-site .elementor{font-family:var(--mc-font)}
.mc-site .elementor :is(h1,h2,h3,p){font-family:var(--mc-font)}
.mc-site :focus-visible{outline:2px solid var(--mc-navy); outline-offset:3px; border-radius:6px}
.mc-site .mc-dark :focus-visible,.mc-site .mc-hero :focus-visible,.mc-site .mc-phero :focus-visible,.mc-site .mc-header :focus-visible{outline-color:#fff}
.mc-site .elementor p{margin:0}
.mc-site .elementor p + p{margin-top:16px}

/* ---------- containers ---------- */
.elementor .e-con.mc-sec{--padding-top:clamp(64px,8vw,128px); --padding-bottom:clamp(64px,8vw,128px); --padding-left:var(--mc-pad); --padding-right:var(--mc-pad); --content-width:var(--mc-content); background:#fff}
.elementor .e-con.mc-sec > .e-con-inner{gap:0 !important; display:block !important}
.elementor .e-con.mc-alt{background:var(--mc-light)}
.elementor .e-con.mc-dark{background:var(--mc-navy); color:#fff}
.elementor .e-con.mc-flat{--padding-top:0; --padding-bottom:0; --padding-left:0; --padding-right:0}
.elementor .e-con.mc-stack{display:flex !important; flex-direction:column !important; gap:0 !important; --padding-top:0; --padding-bottom:0; --padding-left:0; --padding-right:0}
.elementor .e-con.mc-stack > .elementor-element{width:100%}

/* ---------- typography ---------- */
.elementor .mc-h1 .elementor-heading-title{font-size:clamp(46px,6.9vw,104px); font-weight:500; letter-spacing:-.05em; line-height:.95; color:#fff; max-width:11ch}
.elementor .mc-h1 .ln{display:block; overflow:hidden; padding-bottom:.08em; margin-bottom:-.08em}
.elementor .mc-h1 .ln > span{display:block; transform:translateY(108%); transition:transform 1.2s var(--mc-ease)}
.elementor .mc-h1 .ln:nth-child(2) > span{transition-delay:.1s}
.mc-loaded .elementor .mc-h1 .ln > span,.elementor-editor-active .elementor .mc-h1 .ln > span{transform:none}
.elementor .mc-h1 .soft{color:rgba(214,227,237,.72)}
.elementor .mc-h1-s .elementor-heading-title{font-size:clamp(42px,5.6vw,84px); max-width:14ch}
.elementor .mc-h2 .elementor-heading-title{font-size:clamp(36px,4.7vw,68px); font-weight:500; letter-spacing:-.045em; line-height:1; color:var(--mc-ink)}
.elementor .mc-h2 .elementor-heading-title span{color:var(--mc-muted)}
.elementor .mc-dark .mc-h2 .elementor-heading-title{color:#fff}
.elementor .mc-h2xl .elementor-heading-title{font-size:clamp(44px,7vw,104px); font-weight:500; letter-spacing:-.055em; line-height:.95; color:#fff; max-width:10ch}
.elementor .mc-h3 .elementor-heading-title{font-size:clamp(22px,1.9vw,28px); font-weight:500; letter-spacing:-.035em; line-height:1.1; color:var(--mc-ink)}
.elementor .mc-h4 .elementor-heading-title{font-size:19px; font-weight:500; letter-spacing:-.025em; line-height:1.2; color:var(--mc-ink)}
.elementor .mc-dark .mc-h4 .elementor-heading-title{color:#fff}
.elementor .mc-num .elementor-heading-title{font-size:14px; font-weight:500; color:var(--mc-muted); letter-spacing:0}
.elementor .mc-lead{font-size:clamp(17px,1.35vw,19.5px); line-height:1.55; color:rgba(255,255,255,.82); max-width:48ch}
.elementor .mc-text{font-size:17px; line-height:1.6; color:var(--mc-muted); max-width:52ch}
.elementor .mc-dark .mc-text{color:rgba(255,255,255,.72)}
.elementor .mc-text-lg{font-size:19px; line-height:1.5; color:var(--mc-ink)}
.elementor .mc-chip{margin-bottom:22px !important}
.elementor .mc-chip .elementor-heading-title{display:inline-flex; align-items:center; gap:10px; font-family:var(--mc-font); font-size:14px; font-weight:500; line-height:1.2; letter-spacing:0; padding:7px 14px 7px 10px; border-radius:999px; border:1px solid var(--mc-line); color:var(--mc-muted)}
.elementor .mc-chip .elementor-heading-title::before{content:""; width:8px; height:8px; border-radius:50%; background:var(--mc-navy); flex:none}
.elementor :is(.mc-dark,.mc-hero,.mc-phero,.mc-cinfo) .mc-chip .elementor-heading-title{border-color:rgba(255,255,255,.24); color:rgba(255,255,255,.85)}
.elementor :is(.mc-dark,.mc-hero,.mc-phero,.mc-cinfo) .mc-chip .elementor-heading-title::before{background:#9fc0da}
.mc-glass{background:rgba(10,32,52,.38); border:1px solid rgba(255,255,255,.16); backdrop-filter:blur(18px) saturate(1.3); -webkit-backdrop-filter:blur(18px) saturate(1.3); border-radius:var(--mc-r-lg)}

/* ---------- buttons ---------- */
.elementor .mc-btn .elementor-button{display:inline-flex; align-items:center; min-height:52px; padding:6px 6px 6px 24px; border-radius:999px; border:1px solid transparent; font-family:var(--mc-font); font-size:15.5px; font-weight:500; line-height:1; background:#fff; color:var(--mc-navy); transition:background .35s var(--mc-ease), color .35s, border-color .35s}
.elementor .mc-btn .elementor-button-content-wrapper{align-items:center; gap:14px}
.elementor .mc-btn .elementor-button-icon{width:40px; height:40px; border-radius:50%; display:grid; place-items:center; background:var(--mc-navy); color:#fff; fill:#fff; transition:transform .45s var(--mc-ease)}
.elementor .mc-btn .elementor-button-icon svg{width:16px; height:16px; fill:currentColor}
.elementor .mc-btn .elementor-button-icon i{font-size:15px}
.elementor .mc-btn .elementor-button:hover .elementor-button-icon{transform:rotate(-45deg)}
.elementor .mc-btn .elementor-button:hover{background:#eef3f7; color:var(--mc-navy)}
.elementor .mc-btn-glass .elementor-button{color:#fff; background:rgba(255,255,255,.1); border-color:rgba(255,255,255,.28); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); padding:6px 24px}
.elementor .mc-btn-glass .elementor-button:hover{background:rgba(255,255,255,.2); color:#fff}
.elementor .mc-btn-navy .elementor-button{background:var(--mc-navy); color:#fff}
.elementor .mc-btn-navy .elementor-button-icon{background:#fff; color:var(--mc-navy); fill:var(--mc-navy)}
.elementor .mc-btn-navy .elementor-button:hover{background:var(--mc-navy-2); color:#fff}
.elementor .mc-link .elementor-button{background:none; padding:0; color:var(--mc-navy); font-family:var(--mc-font); font-size:15px; font-weight:500; border-radius:0}
.elementor .mc-link .elementor-button-content-wrapper{align-items:center; gap:12px}
.elementor .mc-link .elementor-button-icon{width:44px; height:44px; border-radius:50%; border:1px solid var(--mc-line-2); display:grid; place-items:center; transition:background .35s, color .35s, border-color .35s, transform .45s var(--mc-ease)}
.elementor .mc-link .elementor-button-icon svg{width:15px; height:15px; fill:currentColor}
.elementor .mc-link .elementor-button:hover{color:var(--mc-navy)}
.elementor .mc-pcard:hover .mc-link .elementor-button-icon,.elementor .mc-link .elementor-button:hover .elementor-button-icon{background:var(--mc-navy); color:#fff; border-color:var(--mc-navy); transform:rotate(-45deg)}
.elementor .mc-ctas{display:flex !important; flex-direction:row !important; flex-wrap:wrap; gap:10px !important; margin-top:34px; width:auto !important}
.elementor .mc-ctas > .elementor-element{width:auto !important}

/* ---------- header ---------- */
.elementor .e-con.mc-header{position:fixed !important; top:0; left:0; right:0; z-index:50; --padding-top:calc(22px + env(safe-area-inset-top,0px)); --padding-bottom:0; --padding-left:22px; --padding-right:22px; pointer-events:none; background:transparent; transition:transform .5s var(--mc-ease)}
.admin-bar .elementor .e-con.mc-header{top:32px}
.elementor .e-con.mc-header.hide{transform:translateY(-130%)}
.elementor .e-con.mc-pill{pointer-events:auto; max-width:calc(var(--mc-content) + 40px); margin:0 auto; width:100%; display:flex !important; flex-direction:row !important; align-items:center !important; justify-content:space-between !important; gap:20px !important; min-height:64px; --padding-top:0; --padding-bottom:0; --padding-left:22px; --padding-right:8px; border-radius:999px; color:#fff; background:rgba(9,32,52,.28); border:1px solid rgba(255,255,255,.16); backdrop-filter:blur(16px) saturate(1.3); -webkit-backdrop-filter:blur(16px) saturate(1.3); transition:background .45s var(--mc-ease), color .45s, border-color .45s, box-shadow .45s}
.elementor .mc-header.solid .e-con.mc-pill{background:rgba(255,255,255,.9); color:var(--mc-ink); border-color:rgba(16,58,91,.08); box-shadow:0 10px 40px -18px rgba(16,58,91,.35)}
.elementor .mc-logo{width:auto !important; flex:none}
.elementor .mc-logo img{height:30px !important; width:auto !important; max-width:none !important; display:block}
.elementor .mc-header:not(.solid) .mc-logo img,.elementor .mc-logo-w img{filter:brightness(0) invert(1)}
.elementor .mc-navw{flex:1 1 auto; width:auto !important}
.elementor .mc-navw .elementor-nav-menu--main .elementor-nav-menu{justify-content:flex-end}
.elementor .mc-navw .elementor-nav-menu--main .elementor-item{font-family:var(--mc-font); font-size:15px; font-weight:450; color:inherit; padding:9px 15px !important; border-radius:999px; transition:background .3s; opacity:.9}
.elementor .mc-pill{color:#fff}
.elementor .mc-header.solid .mc-pill{color:var(--mc-ink)}
.elementor .mc-navw .elementor-nav-menu--main .elementor-item{color:currentColor}
.elementor .mc-navw .elementor-nav-menu--main .elementor-item:hover,.elementor .mc-navw .elementor-nav-menu--main .elementor-item:focus{background:rgba(255,255,255,.12); color:currentColor; opacity:1}
.elementor .mc-header.solid .mc-navw .elementor-nav-menu--main .elementor-item:hover{background:rgba(16,58,91,.07)}
.elementor .mc-navw .elementor-nav-menu--main .elementor-item.elementor-item-active{background:rgba(255,255,255,.16); opacity:1; color:currentColor}
.elementor .mc-header.solid .mc-navw .elementor-nav-menu--main .elementor-item.elementor-item-active{background:rgba(16,58,91,.09)}
.elementor .mc-navw .elementor-menu-toggle{width:48px; height:48px; border-radius:50%; background:rgba(255,255,255,.14); color:currentColor; font-size:20px; margin-left:auto}
.elementor .mc-header.solid .mc-navw .elementor-menu-toggle{background:rgba(16,58,91,.08)}
.elementor .mc-navw .elementor-menu-toggle svg{fill:currentColor}
.elementor .mc-navw .elementor-nav-menu--dropdown{background:var(--mc-navy); border-radius:var(--mc-r-lg); margin-top:14px; padding:12px; overflow:hidden; box-shadow:0 30px 60px -20px rgba(6,22,36,.5)}
.elementor .mc-navw .elementor-nav-menu--dropdown .elementor-item{font-family:var(--mc-font); font-size:26px; font-weight:500; letter-spacing:-.03em; color:#fff !important; padding:12px 14px !important; border-radius:12px; background:none}
.elementor .mc-navw .elementor-nav-menu--dropdown .elementor-item:hover,.elementor .mc-navw .elementor-nav-menu--dropdown .elementor-item.elementor-item-active{background:rgba(255,255,255,.1) !important; color:#fff !important}
.elementor .mc-hbtn{flex:none; width:auto !important}
.elementor .mc-hbtn .elementor-button{min-height:48px; padding:4px 4px 4px 18px; font-size:14.5px}
.elementor .mc-header.solid .mc-hbtn .elementor-button{background:var(--mc-navy); color:#fff}
.elementor .mc-header.solid .mc-hbtn .elementor-button-icon{background:#fff; color:var(--mc-navy); fill:var(--mc-navy)}
@media (max-width:1024px){ .elementor .mc-hbtn{display:none} }

/* ---------- hero ---------- */
.elementor .e-con.mc-hero{min-height:max(660px,100vh); --padding-top:150px; --padding-bottom:var(--mc-pad); --padding-left:var(--mc-pad); --padding-right:var(--mc-pad); --content-width:var(--mc-content); background-color:var(--mc-navy-3); background-size:cover; background-position:60% 50%; overflow:hidden; color:#fff}
.elementor .e-con.mc-hero > .e-con-inner{display:grid !important; grid-template-columns:minmax(0,1fr) 380px; gap:40px !important; align-items:end; position:relative; z-index:2; justify-content:normal}
.elementor .e-con.mc-hero::after,.elementor .e-con.mc-phero::after{content:""; position:absolute; inset:0; z-index:1; pointer-events:none; background:radial-gradient(120% 90% at 0% 100%, rgba(6,22,36,.92) 0%, rgba(6,22,36,.55) 45%, rgba(6,22,36,0) 75%), linear-gradient(180deg, rgba(6,22,36,.55) 0%, rgba(6,22,36,0) 28%)}
.elementor .e-con.mc-phero{min-height:min(72vh,720px); --padding-top:170px; --padding-bottom:clamp(48px,6vw,88px); --padding-left:var(--mc-pad); --padding-right:var(--mc-pad); --content-width:var(--mc-content); background-color:var(--mc-navy-3); background-size:cover; background-position:50% 50%; overflow:hidden; color:#fff}
.elementor .e-con.mc-phero > .e-con-inner{display:flex !important; flex-direction:column !important; justify-content:flex-end !important; align-items:flex-start !important; gap:0 !important; position:relative; z-index:2}
.elementor .mc-phero .mc-lead{margin-top:26px}
.elementor .mc-hero-copy .mc-lead{margin-top:30px}
.elementor .e-con.mc-hcard{--padding-top:10px; --padding-bottom:10px; --padding-left:10px; --padding-right:10px; display:flex !important; flex-direction:column !important; gap:2px !important; align-self:end}
.elementor .e-con.mc-hcard-h{display:flex !important; flex-direction:row !important; justify-content:space-between !important; align-items:center !important; --padding-top:10px; --padding-bottom:12px; --padding-left:10px; --padding-right:10px}
.elementor .mc-hcard-h > .elementor-widget{width:auto !important}
.elementor .mc-hc-l .elementor-heading-title,.elementor .mc-hc-a .elementor-heading-title{font-family:var(--mc-font); font-size:14px; font-weight:400; color:rgba(255,255,255,.75); letter-spacing:0}
.elementor .mc-hc-a .elementor-heading-title,.elementor .mc-hc-a .elementor-heading-title a{color:#fff}
.elementor .e-con.mc-hitem{display:grid !important; grid-template-columns:64px 1fr 36px; gap:14px !important; align-items:center; --padding-top:8px; --padding-bottom:8px; --padding-left:8px; --padding-right:8px; border-radius:14px; color:#fff; text-decoration:none; transition:background .3s}
.elementor .e-con.mc-hitem:hover{background:rgba(255,255,255,.1)}
.elementor .mc-hthumb{width:64px !important; height:52px; border-radius:10px; overflow:hidden}
.elementor .mc-hthumb img{width:100% !important; height:52px !important; object-fit:cover; transform:scale(1.7)}
.elementor .mc-hit-h .elementor-heading-title{font-family:var(--mc-font); font-size:15.5px; font-weight:500; line-height:1.25; color:#fff; letter-spacing:0}
.elementor .mc-hit-s .elementor-heading-title{font-family:var(--mc-font); font-size:13px; font-weight:400; color:rgba(255,255,255,.62); letter-spacing:0; margin-top:2px}
.elementor .mc-go{width:36px !important}
.elementor .mc-go .elementor-icon{width:36px; height:36px; border-radius:50%; border:1px solid rgba(255,255,255,.25); display:grid; place-items:center; font-size:14px; color:#fff; fill:#fff; transition:background .3s, color .3s, transform .4s var(--mc-ease)}
.elementor .mc-go .elementor-icon svg{width:14px; height:14px}
.elementor .mc-hitem:hover .mc-go .elementor-icon{background:#fff; color:var(--mc-navy); fill:var(--mc-navy); transform:rotate(-45deg)}
.mc-fade{opacity:0; transform:translateY(14px); transition:opacity 1s var(--mc-ease) .45s, transform 1s var(--mc-ease) .45s}
.mc-loaded .mc-fade,.elementor-editor-active .mc-fade{opacity:1; transform:none}

/* ---------- marquee ---------- */
.elementor .e-con.mc-marquee{--padding-top:22px; --padding-bottom:22px; --padding-left:0; --padding-right:0; background:#fff; border-bottom:1px solid var(--mc-line); overflow:hidden; display:block !important}
.elementor .e-con.mc-track{display:flex !important; flex-direction:row !important; flex-wrap:nowrap !important; gap:0 !important; width:max-content !important; --padding-top:0; --padding-bottom:0; --padding-left:0; --padding-right:0; animation:mcmq 46s linear infinite}
.mc-loaded .elementor .e-con.mc-track.mc-cloned{animation:mcmq 46s linear infinite}
.elementor .mc-track > .mc-mqi{width:auto !important; flex:none}
.elementor .mc-mqi .elementor-heading-title{display:flex; align-items:center; gap:36px; padding-right:36px; font-family:var(--mc-font); font-size:clamp(22px,2.4vw,34px); font-weight:400; letter-spacing:-.035em; white-space:nowrap; color:var(--mc-ink)}
.elementor .mc-mqi .elementor-heading-title::after{content:""; width:46px; height:14px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 12'%3E%3Cpath d='M0 10h18l6-8h12l6 8h18l6-8h12l6 8h18l6-8h12l6 8' fill='none' stroke='%23C9C9C9' stroke-width='1.4' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / contain}
.elementor .mc-marquee:hover .mc-track{animation-play-state:paused}
.elementor-editor-active .elementor .e-con.mc-track{animation:none}
@keyframes mcmq{to{transform:translateX(-50%)}}

/* ---------- section head ---------- */
.elementor .e-con.mc-head{display:grid !important; grid-template-columns:repeat(12,minmax(0,1fr)); gap:24px !important; align-items:end; margin-bottom:clamp(40px,5vw,72px); --padding-top:0; --padding-bottom:0; --padding-left:0; --padding-right:0}
.elementor .mc-head > .mc-head-l{grid-column:1 / span 7}
.elementor .mc-head > .mc-head-p{grid-column:9 / span 4}

/* ---------- about ---------- */
.elementor .e-con.mc-about-top{display:grid !important; grid-template-columns:repeat(12,minmax(0,1fr)); gap:24px !important; align-items:start; --padding-top:0; --padding-bottom:0; --padding-left:0; --padding-right:0}
.elementor .mc-about-top > .mc-stack{grid-column:1 / span 6}
.elementor .mc-about-top > .mc-statement{grid-column:7 / span 6; padding-top:52px}
.elementor .mc-statement{font-size:clamp(24px,2.5vw,36px); line-height:1.25; letter-spacing:-.03em; color:var(--mc-ink)}
.mc-statement .w{transition:opacity .35s linear; opacity:.16}
.mc-statement .w.on{opacity:1}
.elementor .e-con.mc-split{display:grid !important; grid-template-columns:repeat(12,minmax(0,1fr)); gap:var(--mc-gap) !important; margin-top:clamp(56px,7vw,104px); --padding-top:0; --padding-bottom:0; --padding-left:0; --padding-right:0}
.elementor .mc-split > .mc-cover{grid-column:1 / span 7; min-height:520px}
.elementor .mc-split > .mc-side{grid-column:8 / span 5; gap:var(--mc-gap) !important}
.elementor .mc-side > .mc-text{padding:8px 4px 20px 12px}
.elementor .mc-cover{border-radius:var(--mc-r-lg); overflow:hidden; position:relative}
.elementor .mc-cover img{position:absolute; inset:0; width:100% !important; height:100% !important; object-fit:cover; max-width:none !important}
.elementor .mc-tile .elementor-icon-box-wrapper{display:grid; grid-template-columns:44px 1fr; gap:16px; text-align:left; align-items:start; background:var(--mc-light); border-radius:var(--mc-r); padding:22px 24px; transition:background .4s}
.elementor .mc-tile .elementor-icon-box-wrapper:hover{background:#eef2f5}
.elementor .mc-tile .elementor-icon-box-icon{margin:0 !important}
.elementor .mc-tile .elementor-icon{width:44px; height:44px; border-radius:12px; background:#fff; display:grid; place-items:center; font-size:18px; color:var(--mc-navy); fill:var(--mc-navy); padding:0}
.elementor .mc-tile .elementor-icon svg{width:18px; height:18px}
.elementor .mc-tile .elementor-icon-box-title{font-family:var(--mc-font); font-size:18px; font-weight:500; letter-spacing:-.02em; line-height:1.25; margin:0 0 4px; color:var(--mc-ink)}
.elementor .mc-tile .elementor-icon-box-description{font-size:15px; color:var(--mc-muted); margin:0}

/* ---------- products bento ---------- */
.elementor .e-con.mc-bento{display:grid !important; grid-template-columns:repeat(12,minmax(0,1fr)); gap:var(--mc-gap) !important; --padding-top:0; --padding-bottom:0; --padding-left:0; --padding-right:0}
.elementor .e-con.mc-pcard{background:#fff; border-radius:var(--mc-r-lg); --padding-top:10px; --padding-bottom:10px; --padding-left:10px; --padding-right:10px; display:flex !important; flex-direction:column !important; gap:0 !important; transition:background .4s var(--mc-ease); position:relative}
.elementor .mc-sec:not(.mc-alt) .e-con.mc-pcard{background:var(--mc-light)}
.elementor .e-con.mc-pcard:hover{background:#edf1f4}
.elementor .mc-pcard.p1{grid-column:1 / span 7; grid-row:1 / span 2}
.elementor .mc-pcard.p2,.elementor .mc-pcard.p3{grid-column:8 / span 5}
.elementor .mc-pcard.p4{grid-column:1 / -1; flex-direction:row !important; gap:10px !important}
.elementor .mc-pimg{flex:1 1 auto; border-radius:var(--mc-r); overflow:hidden; position:relative; min-height:260px; background:#e9edf0}
.elementor .mc-pcard.p1 .mc-pimg{min-height:540px}
.elementor .mc-pcard.p4 .mc-pimg{flex:0 0 58%; min-height:340px}
.elementor .mc-pimg img{position:absolute; inset:0; width:100% !important; height:100% !important; max-width:none !important; object-fit:cover; transition:transform 1.3s var(--mc-ease)}
.elementor .mc-pcard:hover .mc-pimg img{transform:scale(1.05)}
.elementor .e-con.mc-pbd{display:flex !important; flex-direction:column !important; gap:10px !important; --padding-top:22px; --padding-bottom:14px; --padding-left:14px; --padding-right:14px}
.elementor .mc-pcard.p4 .mc-pbd{justify-content:flex-end !important; --padding-left:28px; --padding-right:28px; --padding-bottom:28px}
.elementor .mc-pbd .mc-text{font-size:15.5px; max-width:48ch}
.elementor .mc-pbd .mc-link{margin-top:6px}
.elementor .mc-pbd .mc-link .elementor-button::before{content:""; position:absolute; inset:0; border-radius:var(--mc-r-lg)}
.elementor .mc-pbd .mc-link{position:static}

/* ---------- product detail rows ---------- */
.elementor .e-con.mc-prow{display:grid !important; grid-template-columns:repeat(12,minmax(0,1fr)); gap:24px !important; align-items:center; --padding-top:0; --padding-bottom:0; --padding-left:0; --padding-right:0}
.elementor .mc-prow > .mc-cover{grid-column:1 / span 7; aspect-ratio:4/3; min-height:0}
.elementor .mc-prow > .mc-stack{grid-column:9 / span 4}
.elementor .mc-prow.rev > .mc-cover{grid-column:6 / span 7; order:2}
.elementor .mc-prow.rev > .mc-stack{grid-column:1 / span 4; order:1}
.elementor .mc-prow .mc-text{margin-top:22px}
.elementor .mc-prow .mc-num{margin-top:28px; margin-bottom:10px}
.elementor .mc-pills{margin-bottom:30px !important}
.elementor .mc-pills .elementor-icon-list-items{display:flex; flex-wrap:wrap; gap:8px; margin:0 !important}
.elementor .mc-pills .elementor-icon-list-item{margin:0 !important; padding:8px 14px !important; border-radius:999px; background:#fff; font-size:14.5px}
.elementor .mc-pills .elementor-icon-list-item::after{display:none !important}
.elementor .mc-pills .elementor-icon-list-text{color:var(--mc-ink); padding:0 !important}
.elementor .mc-sec:not(.mc-alt) .mc-pills .elementor-icon-list-item{background:var(--mc-light)}

/* ---------- advantages / 3D ---------- */
.elementor .e-con.mc-adv > .e-con-inner{display:grid !important; grid-template-columns:repeat(12,minmax(0,1fr)); gap:24px !important}
.elementor .mc-adv > .e-con-inner > .mc-stagew{grid-column:1 / span 6}
.elementor .mc-adv > .e-con-inner > .mc-stack{grid-column:7 / span 6; padding-top:8px}
.elementor .mc-adv .mc-text{margin-top:24px; max-width:46ch}
.elementor .e-con.mc-advlist{display:flex !important; flex-direction:column !important; gap:var(--mc-gap) !important; margin-top:clamp(40px,5vw,64px); --padding-top:0; --padding-bottom:0; --padding-left:0; --padding-right:0}
.elementor .mc-advitem .elementor-icon-box-wrapper{display:grid; grid-template-columns:48px 1fr; gap:20px; text-align:left; padding:24px; border-radius:var(--mc-r); background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.1); transition:background .4s, border-color .4s}
.elementor .mc-advitem .elementor-icon-box-wrapper:hover{background:rgba(255,255,255,.09); border-color:rgba(255,255,255,.2)}
.elementor .mc-advitem .elementor-icon-box-icon{margin:0 !important}
.elementor .mc-advitem .elementor-icon{width:48px; height:48px; border-radius:12px; background:rgba(255,255,255,.1); display:grid; place-items:center; font-size:19px; color:#fff; fill:#fff; padding:0}
.elementor .mc-advitem .elementor-icon svg{width:19px; height:19px}
.elementor .mc-advitem .elementor-icon-box-title{font-family:var(--mc-font); font-size:20px; font-weight:500; letter-spacing:-.025em; line-height:1.2; margin:0 0 6px; color:#fff}
.elementor .mc-advitem .elementor-icon-box-description{color:rgba(255,255,255,.7); font-size:15.5px; margin:0}
.mc-stage{position:sticky; top:104px; border-radius:var(--mc-r-lg); background:radial-gradient(90% 80% at 50% 40%, #1d5582 0%, #12406a 45%, #0c3050 100%); height:min(640px, calc(100vh - 128px)); min-height:460px; overflow:hidden; font-family:var(--mc-font)}
.elementor .mc-stagew,.elementor .mc-stagew > .elementor-widget-container{height:100%}
.mc-stage canvas{position:absolute; inset:0; width:100%; height:100%; display:block}
.mc-stage .fallback{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:none}
.mc-stage.nogl .fallback{display:block}
.mc-stage .lbl{position:absolute; left:0; top:0; z-index:2; display:flex; align-items:center; font-size:13.5px; color:#fff; white-space:nowrap; pointer-events:none; opacity:0; transition:opacity .5s}
.mc-stage .lbl::before{content:""; position:absolute; right:100%; top:50%; margin-right:10px; width:var(--lw,28px); height:1px; background:rgba(255,255,255,.55)}
.mc-stage .lbl::after{content:""; position:absolute; right:calc(100% + 10px + var(--lw,28px)); top:50%; width:7px; height:7px; margin:-3px -3px 0 0; border-radius:50%; background:#fff}
.mc-stage.nogl .lbl{display:none}
.mc-stage .hint{position:absolute; left:20px; bottom:18px; font-size:13px; color:rgba(255,255,255,.65); z-index:2}
.mc-stage .tag{position:absolute; right:16px; top:16px; padding:8px 14px; font-size:13px; border-radius:999px; color:#fff}

/* ---------- applications ---------- */
.elementor .e-con.mc-gal{display:flex !important; flex-direction:row !important; flex-wrap:nowrap !important; gap:var(--mc-gap) !important; height:clamp(520px,66vh,680px); --padding-top:0; --padding-bottom:0; --padding-left:0; --padding-right:0}
.elementor .e-con.mc-app{position:relative; flex:1 1 0 !important; width:auto !important; min-width:0; overflow:hidden; cursor:pointer; border-radius:var(--mc-r-lg); color:#fff; background-color:#ccd3d8; background-size:cover; background-position:center; --padding-top:0; --padding-bottom:0; --padding-left:0; --padding-right:0; transition:flex-grow .9s var(--mc-ease); display:block !important}
.elementor .e-con.mc-app.on{flex-grow:4 !important}
.elementor .e-con.mc-app::after{content:""; position:absolute; inset:0; background:linear-gradient(0deg, rgba(6,22,36,.82) 0%, rgba(6,22,36,.2) 50%, rgba(6,22,36,0) 100%); z-index:1; pointer-events:none}
.elementor .mc-app > .elementor-element{position:absolute !important; z-index:2}
.elementor .mc-app > .mc-app-num{top:14px; left:14px; width:auto !important}
.elementor .mc-app-num .elementor-heading-title{width:36px; height:36px; border-radius:50%; display:grid; place-items:center; font-family:var(--mc-font); font-size:13px; font-weight:400; color:#fff; background:rgba(10,32,52,.38); border:1px solid rgba(255,255,255,.16); backdrop-filter:blur(12px); letter-spacing:0}
.elementor .mc-app > .mc-app-vt{left:50%; bottom:26px; width:auto !important; transform:translateX(-50%) rotate(180deg); writing-mode:vertical-rl; transition:opacity .4s}
.elementor .mc-app-vt .elementor-heading-title{font-family:var(--mc-font); font-size:18px; font-weight:500; letter-spacing:-.02em; white-space:nowrap; color:#fff}
.elementor .mc-app.on > .mc-app-vt{opacity:0}
.elementor .mc-app > .e-con.mc-app-cap{left:0; right:0; bottom:0; width:auto !important; max-width:560px; --padding-top:clamp(22px,3vw,36px); --padding-bottom:clamp(22px,3vw,36px); --padding-left:clamp(22px,3vw,36px); --padding-right:clamp(22px,3vw,36px); opacity:0; transform:translateY(14px); transition:opacity .5s var(--mc-ease), transform .7s var(--mc-ease)}
.elementor .mc-app.on > .e-con.mc-app-cap{opacity:1; transform:none; transition-delay:.25s}
.elementor .mc-app-h .elementor-heading-title{font-family:var(--mc-font); font-size:clamp(26px,2.6vw,38px); font-weight:500; letter-spacing:-.04em; line-height:1.05; color:#fff; margin-bottom:10px}
.elementor .mc-app-t{color:rgba(255,255,255,.84); font-size:16px; line-height:1.5; max-width:42ch}

/* ---------- projects ---------- */
.elementor .e-con.mc-proj{display:block !important; --padding-top:0; --padding-bottom:0; --padding-left:0; --padding-right:0}
.elementor .e-con.mc-pv{position:relative; display:block !important; border-radius:var(--mc-r-lg); overflow:hidden; aspect-ratio:16/8; background:#cfd6db; --padding-top:0; --padding-bottom:0; --padding-left:0; --padding-right:0}
.elementor .mc-pv > .mc-pslide{position:absolute !important; inset:0; width:100% !important; height:100%; opacity:0; transform:scale(1.05); transition:opacity 1s var(--mc-ease), transform 1.8s var(--mc-ease)}
.elementor .mc-pv > .mc-pslide.on{opacity:1; transform:none}
.elementor .mc-pslide img{width:100% !important; height:100% !important; max-width:none !important; object-fit:cover}
.elementor .mc-pv > .mc-pnote{position:absolute !important; left:16px; top:16px; z-index:2; width:auto !important}
.elementor .mc-pnote .elementor-heading-title{display:inline-block; padding:8px 14px; border-radius:999px; font-family:var(--mc-font); font-size:13px; font-weight:400; letter-spacing:0; color:#fff; background:rgba(10,32,52,.38); border:1px solid rgba(255,255,255,.16); backdrop-filter:blur(12px)}
.elementor .mc-pv > .mc-prev,.elementor .mc-pv > .mc-next{position:absolute !important; bottom:16px; z-index:2; width:auto !important}
.elementor .mc-pv > .mc-next{right:16px}.elementor .mc-pv > .mc-prev{right:76px}
.elementor .mc-prev .elementor-icon,.elementor .mc-next .elementor-icon{width:52px; height:52px; border-radius:50%; display:grid; place-items:center; font-size:16px; color:#fff; fill:#fff; background:rgba(10,32,52,.38); border:1px solid rgba(255,255,255,.16); backdrop-filter:blur(12px); transition:background .3s, color .3s}
.elementor .mc-prev .elementor-icon svg,.elementor .mc-next .elementor-icon svg{width:16px; height:16px}
.elementor .mc-prev .elementor-icon:hover,.elementor .mc-next .elementor-icon:hover{background:#fff; color:var(--mc-navy); fill:var(--mc-navy)}
.elementor .e-con.mc-ptabs{display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)); gap:var(--mc-gap) !important; margin-top:var(--mc-gap); --padding-top:0; --padding-bottom:0; --padding-left:0; --padding-right:0}
.elementor .e-con.mc-ptab{position:relative; cursor:pointer; overflow:hidden; border-radius:var(--mc-r); background:#fff; --padding-top:20px; --padding-bottom:24px; --padding-left:22px; --padding-right:22px; display:flex !important; flex-direction:column !important; gap:6px !important}
.elementor .mc-sec:not(.mc-alt) .e-con.mc-ptab{background:var(--mc-light)}
.elementor .e-con.mc-ptab::before{content:""; position:absolute; left:22px; right:22px; top:0; width:auto; height:2px; background:var(--mc-line); border:0; opacity:1; border-radius:0}
.elementor .e-con.mc-ptab::after{content:""; position:absolute; left:22px; right:22px; top:0; height:2px; background:var(--mc-navy); transform:scaleX(0); transform-origin:left}
.elementor .e-con.mc-ptab.on::after{animation:mcprog 6.5s linear forwards}
.elementor .e-con.mc-ptab.on.static::after{animation:none; transform:scaleX(1)}
@keyframes mcprog{to{transform:scaleX(1)}}
.elementor .mc-ptab .mc-h4 .elementor-heading-title{color:var(--mc-muted); transition:color .3s}
.elementor .mc-ptab.on .mc-h4 .elementor-heading-title,.elementor .mc-ptab:hover .mc-h4 .elementor-heading-title{color:var(--mc-ink)}
.elementor .mc-ptab-t{font-size:14.5px !important; line-height:1.5}
.elementor .mc-disc{margin-top:20px; font-size:13.5px !important}

/* ---------- cards ---------- */
.elementor .e-con.mc-grid2,.elementor .e-con.mc-grid3,.elementor .e-con.mc-grid4{display:grid !important; gap:var(--mc-gap) !important; --padding-top:0; --padding-bottom:0; --padding-left:0; --padding-right:0}
.elementor .e-con.mc-grid2{grid-template-columns:repeat(2,minmax(0,1fr))}
.elementor .e-con.mc-grid3{grid-template-columns:repeat(3,minmax(0,1fr))}
.elementor .e-con.mc-grid4{grid-template-columns:repeat(4,minmax(0,1fr))}
.elementor .e-con.mc-card{background:var(--mc-light); border-radius:var(--mc-r); --padding-top:26px; --padding-bottom:28px; --padding-left:26px; --padding-right:26px; display:flex !important; flex-direction:column !important; gap:8px !important}
.elementor .mc-alt .e-con.mc-card{background:#fff}
.elementor .mc-card .mc-text{font-size:15.5px}
.elementor .mc-card.rib::before{content:""; display:block; width:46px; height:14px; margin-bottom:14px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 12'%3E%3Cpath d='M0 10h18l6-8h12l6 8h18l6-8h12l6 8h18l6-8h12l6 8' fill='none' stroke='%23103A5B' stroke-width='1.4' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat 0 0 / contain; position:static; opacity:1}
.elementor .e-con.mc-projcard{background:#fff; border-radius:var(--mc-r-lg); --padding-top:10px; --padding-bottom:20px; --padding-left:10px; --padding-right:10px; display:flex !important; flex-direction:column !important; gap:8px !important}
.elementor .mc-projcard > .mc-cover{aspect-ratio:16/10; margin-bottom:14px}
.elementor .mc-projcard > .elementor-widget:not(.mc-cover){padding:0 14px}

/* ---------- why ---------- */
.elementor .e-con.mc-why{display:grid !important; grid-template-columns:repeat(12,minmax(0,1fr)); gap:var(--mc-gap) !important; --padding-top:0; --padding-bottom:0; --padding-left:0; --padding-right:0}
.elementor .mc-why > .mc-cover{grid-column:1 / span 5; min-height:560px}
.elementor .mc-why > .mc-stack{grid-column:6 / span 7; gap:var(--mc-gap) !important}
.elementor .mc-why .mc-head-card{background:var(--mc-light); border-radius:var(--mc-r-lg); --padding-top:clamp(28px,3.5vw,48px); --padding-bottom:clamp(28px,3.5vw,48px); --padding-left:clamp(28px,3.5vw,48px); --padding-right:clamp(28px,3.5vw,48px); display:block !important}
.elementor .mc-alt .mc-why .mc-head-card{background:#fff}
.elementor .mc-why .mc-head-card .mc-text{margin-top:22px}
.elementor .mc-why .mc-h2 .elementor-heading-title{font-size:clamp(32px,3.6vw,54px)}

/* ---------- CTA ---------- */
.elementor .e-con.mc-cta{--padding-top:clamp(88px,11vw,160px); --padding-bottom:clamp(88px,11vw,160px); background-color:var(--mc-navy); overflow:hidden}
.elementor .e-con.mc-cta::before{content:""; position:absolute; inset:0; background:url(../img/cta-art.svg) no-repeat right -2% bottom -4% / min(900px,78%), radial-gradient(40% 60% at 85% 10%, rgba(120,170,210,.28), rgba(120,170,210,0)); pointer-events:none; opacity:1; border:0}
.elementor .mc-cta > .e-con-inner{position:relative; z-index:1}
.elementor .mc-cta .mc-lead{margin-top:28px; max-width:38ch}
.elementor .mc-cta .mc-btn{margin-top:40px}

/* ---------- contact ---------- */
.elementor .e-con.mc-contact{display:grid !important; grid-template-columns:repeat(12,minmax(0,1fr)); gap:var(--mc-gap) !important; --padding-top:0; --padding-bottom:0; --padding-left:0; --padding-right:0}
.elementor .e-con.mc-cinfo{grid-column:1 / span 5; background:var(--mc-navy); color:#fff; border-radius:var(--mc-r-xl); --padding-top:clamp(28px,4vw,52px); --padding-bottom:clamp(28px,4vw,52px); --padding-left:clamp(28px,4vw,52px); --padding-right:clamp(28px,4vw,52px); display:flex !important; flex-direction:column !important; gap:0 !important}
.elementor .mc-cinfo .mc-h2 .elementor-heading-title{color:#fff; font-size:clamp(36px,4vw,60px)}
.elementor .mc-cinfo .mc-text{color:rgba(255,255,255,.75); margin-top:20px; max-width:36ch}
.elementor .e-con.mc-dl{display:flex !important; flex-direction:column !important; gap:8px !important; margin-top:auto; padding-top:48px; --padding-top:48px; --padding-bottom:0; --padding-left:0; --padding-right:0}
.elementor .e-con.mc-dli{border-radius:var(--mc-r-sm); background:rgba(255,255,255,.07); --padding-top:16px; --padding-bottom:16px; --padding-left:18px; --padding-right:18px; display:flex !important; flex-direction:column !important; gap:2px !important}
.elementor .mc-dt .elementor-heading-title{font-family:var(--mc-font); font-size:13px; font-weight:400; letter-spacing:0; color:rgba(255,255,255,.6)}
.elementor .mc-dd .elementor-heading-title,.elementor .mc-dd .elementor-heading-title a{font-family:var(--mc-font); font-size:18px; font-weight:450; letter-spacing:0; color:#fff}
.elementor .mc-dd .elementor-heading-title a:hover{text-decoration:underline; text-underline-offset:4px}
.elementor .e-con.mc-formcard{grid-column:6 / span 7; border-radius:var(--mc-r-xl); background:var(--mc-light); --padding-top:clamp(28px,4vw,52px); --padding-bottom:clamp(28px,4vw,52px); --padding-left:clamp(28px,4vw,52px); --padding-right:clamp(28px,4vw,52px); display:block !important}
.elementor .mc-form-h{margin-bottom:24px !important}
.elementor .mc-form-h .elementor-heading-title{font-size:24px}
.elementor .mc-proform{font-family:var(--mc-font)}
.elementor .mc-proform .elementor-form-fields-wrapper{margin:0 -8px; row-gap:18px}
.elementor .mc-proform .elementor-field-group{padding:0 8px; margin-bottom:0}
.elementor .mc-proform .elementor-field-label{font-size:14px; font-weight:500; color:var(--mc-ink); margin-bottom:8px; padding:0}
.elementor .mc-proform .elementor-field-textual,.elementor .mc-proform select{font-family:var(--mc-font); font-size:16px; color:var(--mc-ink); background:#fff; border:1px solid transparent; border-radius:var(--mc-r-sm); padding:14px 16px; min-height:54px; transition:border-color .3s, box-shadow .3s}
.elementor .mc-proform .elementor-field-textual:hover{border-color:var(--mc-line-2)}
.elementor .mc-proform .elementor-field-textual:focus{border-color:var(--mc-navy); box-shadow:0 0 0 4px rgba(16,58,91,.1)}
.elementor .mc-proform .elementor-select-wrapper::before{color:var(--mc-muted); text-shadow:none; inset-inline-end:18px}
.elementor .mc-proform .elementor-field-type-acceptance .elementor-field-label{display:none}
.elementor .mc-proform .elementor-field-type-acceptance label{font-size:14px; color:var(--mc-muted)}
.elementor .mc-proform .elementor-field-type-acceptance input{accent-color:var(--mc-navy); width:18px; height:18px; vertical-align:-3px; margin-right:8px}
.elementor .mc-proform .elementor-field-type-submit{margin-top:10px}
.elementor .mc-proform .elementor-button{display:inline-flex; align-items:center; min-height:52px; padding:6px 6px 6px 24px; border-radius:999px; background:var(--mc-navy); color:#fff; font-family:var(--mc-font); font-size:15.5px; font-weight:500}
.elementor .mc-proform .elementor-button:hover{background:var(--mc-navy-2)}
.elementor .mc-proform .elementor-button-content-wrapper{align-items:center; gap:14px}
.elementor .mc-proform .elementor-button-icon{width:40px; height:40px; border-radius:50%; background:#fff; color:var(--mc-navy); fill:var(--mc-navy); display:grid; place-items:center}
.elementor .mc-proform .elementor-button-icon svg{width:16px; height:16px}
.elementor .mc-proform .elementor-message{font-size:15px; line-height:1.5; margin-top:18px}

/* ---------- footer ---------- */
.elementor .e-con.mc-footer{background:var(--mc-navy-3); color:rgba(255,255,255,.76); --padding-top:clamp(48px,6vw,80px); --padding-bottom:0; --padding-left:var(--mc-pad); --padding-right:var(--mc-pad); --content-width:var(--mc-content); overflow:hidden}
.elementor .e-con.mc-footer > .e-con-inner{display:block !important}
.elementor .e-con.mc-ftop{display:grid !important; grid-template-columns:repeat(12,minmax(0,1fr)); gap:32px 24px !important; --padding-top:0; --padding-bottom:0; --padding-left:0; --padding-right:0}
.elementor .mc-ftop > .mc-fbrand{grid-column:1 / span 4}
.elementor .mc-ftop > .mc-fcol:nth-child(2){grid-column:6 / span 2}
.elementor .mc-ftop > .mc-fcol:nth-child(3){grid-column:8 / span 3}
.elementor .mc-ftop > .mc-fcol:nth-child(4){grid-column:11 / span 2}
.elementor .mc-ftext{color:rgba(255,255,255,.62); font-size:15px; max-width:32ch}
.elementor .mc-fbrand .mc-ftext{margin-top:18px}
.elementor .mc-fh{margin-bottom:16px !important}
.elementor .mc-fh .elementor-heading-title{font-family:var(--mc-font); font-size:14px; font-weight:400; letter-spacing:0; color:rgba(255,255,255,.5)}
.elementor .mc-fnav .elementor-nav-menu--main .elementor-item{font-family:var(--mc-font); font-size:15px; font-weight:400; color:rgba(255,255,255,.76) !important; padding:5px 0 !important; background:none}
.elementor .mc-fnav .elementor-nav-menu--main .elementor-item:hover,.elementor .mc-fnav .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#fff !important}
.elementor .mc-fnav .elementor-menu-toggle{display:none !important}
.elementor .mc-flist .elementor-icon-list-item,.elementor .mc-flist .elementor-icon-list-text,.elementor .mc-flegal .elementor-icon-list-text{font-family:var(--mc-font); font-size:15px; color:rgba(255,255,255,.76)}
.elementor .mc-flist .elementor-icon-list-item{padding:5px 0}
.elementor .mc-flist .elementor-icon-list-icon,.elementor .mc-flegal .elementor-icon-list-icon,.elementor .mc-pills .elementor-icon-list-icon{display:none}
.elementor .mc-flist a:hover .elementor-icon-list-text,.elementor .mc-flegal a:hover .elementor-icon-list-text{color:#fff}
.elementor .mc-social .elementor-social-icons-wrapper{display:flex; gap:8px; justify-content:flex-start}
.elementor .mc-social .elementor-social-icon{width:44px; height:44px; font-size:16px; background:transparent; border:1px solid rgba(255,255,255,.2); color:#fff; fill:#fff; padding:0; display:grid; place-items:center; transition:background .3s, color .3s}
.elementor .mc-social .elementor-social-icon svg{width:16px; height:16px; fill:currentColor}
.elementor .mc-social .elementor-social-icon:hover{background:#fff; color:var(--mc-navy); fill:var(--mc-navy)}
.elementor .e-con.mc-fbottom{display:flex !important; flex-direction:row !important; flex-wrap:wrap !important; justify-content:space-between !important; align-items:center !important; gap:12px 28px !important; --padding-top:48px; --padding-bottom:0; --padding-left:0; --padding-right:0}
.elementor .mc-fbottom > .elementor-widget{width:auto !important}
.elementor .mc-fbottom .mc-ftext{font-size:13.5px; color:rgba(255,255,255,.5)}
.elementor .mc-flegal .elementor-icon-list-text{font-size:13.5px; color:rgba(255,255,255,.5)}
.elementor .mc-flegal .elementor-icon-list-items{gap:8px 22px}
.elementor .mc-wordmark .elementor-heading-title{font-family:var(--mc-font); font-size:min(19vw,272px); font-weight:600; letter-spacing:-.07em; line-height:.78; color:rgba(255,255,255,.07); white-space:nowrap; margin:24px 0 -.06em -.04em; user-select:none}

/* ---------- responsive ---------- */
@media (max-width:1100px){
  .elementor .e-con.mc-hero > .e-con-inner{grid-template-columns:1fr}
  .elementor .e-con.mc-hcard{max-width:520px}
  .elementor .mc-head > .mc-head-l,.elementor .mc-head > .mc-head-p{grid-column:1 / -1}
  .elementor .mc-about-top > .mc-stack,.elementor .mc-about-top > .mc-statement{grid-column:1 / -1}
  .elementor .mc-about-top > .mc-statement{padding-top:8px}
  .elementor .mc-split > .mc-cover,.elementor .mc-split > .mc-side{grid-column:1 / -1}
  .elementor .mc-pcard.p1{grid-column:1 / -1; grid-row:auto}
  .elementor .mc-pcard.p1 .mc-pimg{min-height:420px}
  .elementor .mc-pcard.p2{grid-column:1 / span 6}.elementor .mc-pcard.p3{grid-column:7 / span 6}
  .elementor .mc-prow > .mc-cover,.elementor .mc-prow > .mc-stack,.elementor .mc-prow.rev > .mc-cover,.elementor .mc-prow.rev > .mc-stack{grid-column:1 / -1; order:0}
  .elementor .mc-adv > .e-con-inner > .mc-stagew{grid-column:1 / -1; order:2}
  .elementor .mc-adv > .e-con-inner > .mc-stack{grid-column:1 / -1}
  .mc-stage{position:relative; top:0; height:520px; margin-top:40px}
  .elementor .e-con.mc-ptabs{grid-template-columns:1fr 1fr}
  .elementor .mc-why > .mc-cover{grid-column:1 / -1; min-height:420px}
  .elementor .mc-why > .mc-stack{grid-column:1 / -1}
  .elementor .e-con.mc-cinfo,.elementor .e-con.mc-formcard{grid-column:1 / -1}
  .elementor .e-con.mc-grid4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .elementor .e-con.mc-grid3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .elementor .mc-ftop > .mc-fbrand{grid-column:1 / -1}
  .elementor .mc-ftop > .mc-fcol:nth-child(2){grid-column:1 / span 4}.elementor .mc-ftop > .mc-fcol:nth-child(3){grid-column:5 / span 5}.elementor .mc-ftop > .mc-fcol:nth-child(4){grid-column:10 / span 3}
}
@media (max-width:860px){
  :root{--mc-gap:8px; --mc-r-xl:22px; --mc-r-lg:18px}
  .elementor .mc-pcard.p2,.elementor .mc-pcard.p3{grid-column:1 / -1}
  .elementor .mc-pcard.p4{flex-direction:column !important}
  .elementor .mc-pcard.p4 .mc-pimg{flex:none; min-height:300px}
  .elementor .mc-pcard.p4 .mc-pbd{--padding-left:14px; --padding-right:14px; --padding-bottom:14px}
  .elementor .e-con.mc-gal{height:auto; overflow-x:auto; scroll-snap-type:x mandatory; margin:0 calc(var(--mc-pad) * -1); --padding-left:var(--mc-pad); --padding-right:var(--mc-pad); scrollbar-width:none}
  .elementor .e-con.mc-gal::-webkit-scrollbar{display:none}
  .elementor .e-con.mc-app,.elementor .e-con.mc-app.on{flex:0 0 80% !important; aspect-ratio:3/4; scroll-snap-align:center}
  .elementor .mc-app > .mc-app-vt{display:none}
  .elementor .mc-app > .e-con.mc-app-cap{opacity:1; transform:none}
  .elementor .e-con.mc-pv{aspect-ratio:4/3}
  .elementor .e-con.mc-ptabs{display:flex !important; flex-direction:row !important; flex-wrap:nowrap !important; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none}
  .elementor .e-con.mc-ptabs::-webkit-scrollbar{display:none}
  .elementor .e-con.mc-ptab{flex:0 0 72% !important; scroll-snap-align:start}
  .elementor .e-con.mc-grid2,.elementor .e-con.mc-grid3,.elementor .e-con.mc-grid4{grid-template-columns:1fr}
  .elementor .mc-proform .elementor-field-group{width:100% !important}
  .elementor .mc-split > .mc-cover{min-height:380px}
  .elementor .mc-ftop > .mc-fcol{grid-column:1 / -1 !important}
  .mc-stage{height:440px; min-height:0}
}
@media (max-width:520px){
  .elementor .e-con.mc-hero{--padding-top:120px}
  .elementor .mc-ctas > .elementor-element{width:100% !important}
  .elementor .mc-ctas .elementor-button{width:100%; justify-content:space-between}
  .elementor .mc-btn-glass .elementor-button{justify-content:center}
  .elementor .mc-advitem .elementor-icon-box-wrapper{grid-template-columns:1fr; gap:14px; padding:20px}
  .elementor .mc-tile .elementor-icon-box-wrapper{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  .mc-site *,.mc-site *::before,.mc-site *::after{animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; transition-delay:0s !important}
  .mc-fade{opacity:1; transform:none}
  .elementor .mc-h1 .ln > span{transform:none}
  .mc-statement .w{opacity:1}
  .mc-marquee .track{animation:none}
}
.elementor .mc-tile .elementor-icon-box-wrapper,.elementor .mc-advitem .elementor-icon-box-wrapper,.elementor .mc-tile .elementor-icon-box-content,.elementor .mc-advitem .elementor-icon-box-content{text-align:left !important}
.elementor .mc-tile .elementor-icon-box-icon,.elementor .mc-advitem .elementor-icon-box-icon{display:flex !important; justify-content:flex-start !important}
.elementor .e-con.mc-hcard{--border-radius:var(--mc-r-lg); border-radius:var(--mc-r-lg)}
.elementor .mc-logo,.elementor .mc-logo .elementor-widget-container{text-align:left !important}
.elementor .mc-logo img{margin:0 !important}
