:root{
  --ink:#0b1f2a;
  --blue:#0f4f82;
  --accent:#1687c8;
  --light:#f4f6f8;
  --white:#fff;
  --line:#dce5ea;
  --shadow:0 18px 45px rgba(8,31,45,.12);
  --radius:10px;
  --max:1240px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--white);line-height:1.55}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}.container{width:min(calc(100% - 40px),var(--max));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);backdrop-filter:blur(12px);border-bottom:1px solid rgba(220,229,234,.85)}.nav-wrap{min-height:74px;display:flex;align-items:center;gap:34px}.brand{display:flex;align-items:center;flex:0 0 auto}.brand img{width:190px;height:auto}.main-nav{display:flex;align-items:center;gap:30px;margin-left:auto}.main-nav a{position:relative;font-weight:650;font-size:15px;padding:27px 0 23px}.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:17px;height:2px;background:var(--accent);transition:.2s}.main-nav a:hover:after,.main-nav a.active:after{right:0}.langs{display:flex;gap:12px;margin-left:18px;font-size:12px;font-weight:800}.langs a{padding:6px 0;opacity:.52}.langs a.active{color:var(--accent);opacity:1}.menu-toggle{display:none;margin-left:auto;border:0;background:transparent;padding:8px}.menu-toggle span{display:block;width:25px;height:2px;background:var(--ink);margin:5px 0}
.hero{position:relative;min-height:500px;display:grid;align-items:center;overflow:hidden;background:var(--ink);color:#fff}.hero-picture{position:absolute;inset:0;display:block}.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,20,29,.93) 0%,rgba(5,20,29,.72) 34%,rgba(5,20,29,.20) 66%,rgba(5,20,29,.08) 100%)}.hero-content{position:relative;z-index:2;max-width:650px;padding:72px 0 74px}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.24em;font-weight:800;color:var(--accent);margin-bottom:16px}.hero .eyebrow{color:#d7ebf7}.hero h1{font-size:clamp(42px,5vw,67px);line-height:1.02;letter-spacing:-.045em;margin:0 0 18px;max-width:670px}.hero p{font-size:19px;line-height:1.55;max-width:620px;margin:0 0 30px;color:rgba(255,255,255,.88)}.hero-side-note{position:absolute;z-index:2;right:max(28px,calc((100vw - var(--max))/2));top:50%;transform:translateY(-50%);text-transform:uppercase;font-size:11px;line-height:1.8;letter-spacing:.32em;font-weight:800;text-align:right;color:rgba(255,255,255,.82)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:0 22px;border:1px solid transparent;border-radius:2px;background:var(--accent);color:#fff;font-weight:800;font-size:13px;text-transform:uppercase;letter-spacing:.04em;transition:.2s}.btn:hover{transform:translateY(-1px);background:var(--blue)}.btn-secondary{background:var(--ink)}.btn-outline{background:transparent;border-color:rgba(255,255,255,.5)}.btn-outline:hover{background:#fff;color:var(--ink)}.btn-arrow:after{content:"→";font-size:17px}
.capabilities{background:#fff;border-bottom:1px solid var(--line)}.cap-grid{display:grid;grid-template-columns:repeat(4,1fr)}.cap{display:grid;grid-template-columns:52px 1fr;gap:16px;align-items:center;padding:24px 25px;border-right:1px solid var(--line);min-height:108px}.cap:first-child{border-left:1px solid var(--line)}.cap-icon{width:44px;height:44px;display:grid;place-items:center;color:var(--blue)}.cap-icon svg{width:38px;height:38px;fill:currentColor}.cap strong{display:block;font-size:14px;margin-bottom:3px}.cap span{display:block;color:#6c7b84;font-size:12px}
.section{padding:74px 0}.section-soft{background:var(--light)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}.section h2,.page-hero h1{font-size:clamp(30px,4vw,48px);line-height:1.08;letter-spacing:-.035em;margin:0}.section-head h2{font-size:clamp(30px,3.2vw,44px)}.about-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:70px;align-items:center}.richtext{font-size:16px;color:#344b58}.richtext p:first-child{margin-top:0}.richtext p{margin:0 0 16px}.richtext h2,.richtext h3{color:var(--ink);letter-spacing:-.025em;margin:30px 0 12px}.richtext h2{font-size:28px}.richtext h3{font-size:22px}.richtext ul{padding-left:20px}.about-visual{position:relative}.about-visual img{width:100%;aspect-ratio:1.45;object-fit:cover;border-radius:var(--radius);box-shadow:var(--shadow)}.floating-card{position:absolute;right:-20px;bottom:-26px;background:#fff;padding:20px 24px;border-left:4px solid var(--accent);box-shadow:var(--shadow);font-weight:800}.floating-card span{display:block;color:#75848c;font-size:12px;font-weight:600;margin-top:3px}
.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-card{background:#fff;border:1px solid var(--line);min-height:310px;display:flex;flex-direction:column;transition:.22s}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.service-media{height:var(--service-media-height,200px);background:linear-gradient(145deg,var(--ink),var(--blue));position:relative;overflow:hidden}.service-media img{width:100%;height:100%;object-fit:cover}.service-media.icon-only{display:grid;place-items:center}.service-media.icon-only svg{width:76px;height:76px;fill:#fff;opacity:.86}.service-body{padding:19px 20px 20px;display:flex;flex-direction:column;flex:1}.service-body h3{margin:0 0 7px;font-size:18px}.service-body p{margin:0;color:#6d7b84;font-size:14px}.service-link{margin-top:auto;padding-top:16px;color:var(--accent);font-size:12px;text-transform:uppercase;font-weight:850;letter-spacing:.03em}.service-link:after{content:"  →"}
.machine-tease{display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;align-items:center}.machine-stack{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.machine-mini{background:#fff;border:1px solid var(--line);padding:20px;min-height:120px}.machine-mini strong{display:block;font-size:16px;margin-bottom:6px}.machine-mini span{font-size:13px;color:#697982}.machine-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.machine-card{border:1px solid var(--line);background:#fff;padding:24px;position:relative}.machine-card:before{content:"";position:absolute;left:0;top:0;width:4px;height:100%;background:var(--accent)}.machine-card h3{font-size:20px;margin:0 0 8px}.machine-meta{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.tag{font-size:12px;background:var(--light);padding:5px 9px;border-radius:999px}.machine-card p{color:#65757e;font-size:14px;margin-bottom:0}
.cta{background:linear-gradient(90deg,var(--ink),var(--blue));color:#fff;padding:34px 0}.cta-wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta h2{font-size:28px;margin:0 0 5px}.cta p{margin:0;color:rgba(255,255,255,.78)}
.page-hero{background:linear-gradient(135deg,var(--ink),#123b52);color:#fff;padding:72px 0 68px}.page-hero .eyebrow{color:#9fd5f1}.page-hero p{font-size:18px;max-width:760px;color:rgba(255,255,255,.82);margin:18px 0 0}.page-main{padding:64px 0 76px}.split{display:grid;grid-template-columns:1.1fr .9fr;gap:60px}.contact-card{background:var(--light);padding:30px;border-left:4px solid var(--accent)}.contact-card h3{margin-top:0}.contact-lines{display:grid;gap:18px}.contact-lines strong{display:block}.contact-lines span,.contact-lines a{color:#596d78}.form{display:grid;gap:16px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field label{display:block;font-weight:750;font-size:13px;margin-bottom:6px}.field input,.field textarea{width:100%;border:1px solid #cdd8de;border-radius:4px;background:#fff;padding:13px 14px;outline:none;transition:.2s}.field input:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(22,135,200,.1)}.field textarea{min-height:150px;resize:vertical}.notice{padding:13px 16px;border-left:4px solid var(--accent);background:#eaf6fc;margin-bottom:20px}.notice.error{border-color:#9e2b2b;background:#fff0f0}.hp{position:absolute!important;left:-9999px!important}
.site-footer{background:#fff;border-top:1px solid var(--line)}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:28px 0}.footer-brand img{width:160px}.footer-nav{display:flex;gap:24px;font-size:13px}.footer-bottom{border-top:1px solid var(--line);padding:17px 0;color:#7c8990;font-size:12px}.footer-bottom .container{display:flex;justify-content:space-between;gap:20px}
@media (max-width:980px){.container{width:min(calc(100% - 28px),var(--max))}.main-nav{gap:20px}.hero-side-note{display:none}.hero-content{padding:64px 0}.cap-grid{grid-template-columns:repeat(2,1fr)}.cap:nth-child(3){border-left:1px solid var(--line)}.about-grid,.machine-tease,.split{grid-template-columns:1fr;gap:34px}.about-visual{max-width:720px}.service-grid{grid-template-columns:repeat(2,1fr)}.machine-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:760px){.site-header{position:sticky}.nav-wrap{min-height:66px}.brand img{width:158px}.menu-toggle{display:block}.langs{margin-left:4px}.main-nav{position:absolute;left:0;right:0;top:66px;display:none;flex-direction:column;align-items:stretch;gap:0;padding:8px 20px 18px;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 18px 30px rgba(8,31,45,.08)}.main-nav.open{display:flex}.main-nav a{padding:14px 2px;border-bottom:1px solid var(--line)}.main-nav a:after{display:none}.hero{min-height:640px;align-items:end}.hero-bg{object-position:center top}.hero:after{background:linear-gradient(0deg,rgba(5,20,29,.96) 0%,rgba(5,20,29,.82) 45%,rgba(5,20,29,.18) 100%)}.hero-content{padding:245px 0 40px}.hero h1{font-size:40px;max-width:560px}.hero p{font-size:16px}.cap-grid{grid-template-columns:1fr 1fr}.cap{grid-template-columns:36px 1fr;gap:10px;padding:18px 12px;min-height:112px}.cap-icon{width:32px}.cap-icon svg{width:30px;height:30px}.cap strong{font-size:12px}.cap span{font-size:11px}.section{padding:52px 0}.section-head{align-items:flex-start;flex-direction:column;gap:12px}.about-grid{gap:28px}.floating-card{position:static;margin-top:10px}.service-grid{grid-template-columns:1fr}.service-card{min-height:0}.service-media{height:var(--service-media-height-mobile,240px)}.machine-grid,.machine-stack{grid-template-columns:1fr}.cta-wrap,.footer-main,.footer-bottom .container{align-items:flex-start;flex-direction:column}.form-row{grid-template-columns:1fr}.page-hero{padding:54px 0}.page-main{padding:44px 0}.footer-nav{flex-wrap:wrap}.langs{order:2}.menu-toggle{order:3}}
@media (max-width:460px){.container{width:min(calc(100% - 24px),var(--max))}.brand img{width:142px}.langs{gap:8px;font-size:11px}.hero{min-height:610px}.hero-content{padding-top:230px}.hero h1{font-size:34px}.cap-grid{grid-template-columns:1fr 1fr}.cap{display:block;text-align:center;padding:16px 9px}.cap-icon{margin:0 auto 7px}.service-media{height:var(--service-media-height-mobile,240px)}}
/* v1.4 brand + per-page hero */
.brand img{width:var(--logo-desktop,300px);max-height:64px;object-fit:contain}.nav-wrap{min-height:88px}.main-nav a{padding-top:34px;padding-bottom:30px}.main-nav a:after{bottom:22px}.footer-brand img{width:var(--logo-footer,230px);max-height:62px;object-fit:contain}.page-hero{position:relative;overflow:hidden}.page-hero-picture{position:absolute;inset:0}.page-hero-picture img{width:100%;height:100%;object-fit:cover}.page-hero.has-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,20,29,.90),rgba(5,20,29,.55) 55%,rgba(5,20,29,.25))}.page-hero-content{position:relative;z-index:2}.machine-image{width:100%;height:190px;object-fit:cover;margin:-24px -24px 20px;width:calc(100% + 48px);max-width:none}.richtext img{max-width:100%;height:auto;border-radius:6px}.richtext figure{margin:24px 0}.richtext table{width:100%;border-collapse:collapse}.richtext td,.richtext th{border:1px solid var(--line);padding:10px}
@media(max-width:760px){.nav-wrap{min-height:76px}.brand img{width:var(--logo-mobile,225px);max-width:calc(100vw - 168px);max-height:54px}.main-nav{top:76px}.langs{gap:8px}.main-nav a{padding:14px 2px}.footer-brand img{width:min(var(--logo-footer,230px),70vw)}.page-hero.has-image{padding:100px 0 62px}.page-hero.has-image:after{background:linear-gradient(0deg,rgba(5,20,29,.92),rgba(5,20,29,.35))}}

/* v1.6 — CMS-driven typography, logo layout and content-image design */
body{font-family:var(--cms-font-body,Inter,ui-sans-serif,system-ui,sans-serif);font-size:var(--cms-text-size,16px);color:var(--cms-text-color,#344b58)}
h1,h2,h3,h4,h5,h6{font-family:var(--cms-font-heading,var(--cms-font-body));color:var(--cms-heading-color,#0b1f2a)}
.richtext,.page-main,.contact-card,.service-body p,.machine-card p,.machine-mini span,.cap span{font-size:var(--cms-text-size,16px)}
.hero h1,.page-hero h1{font-size:var(--cms-h1,52px)}
.section h2,.section-head h2,.page-main h2,.richtext h2,.cta h2{font-size:var(--cms-h2,40px)}
.service-body h3,.machine-card h3,.page-main h3,.richtext h3,.contact-card h3{font-size:var(--cms-h3,22px)}
.main-nav a{font-size:var(--cms-nav-size,16px);color:var(--cms-nav-color,#0b1f2a)}
.main-nav a:hover,.main-nav a.active{color:var(--cms-nav-hover,#1687c8)}
.main-nav a:after{background:var(--cms-nav-hover,#1687c8)}
.btn{font-size:var(--cms-button-size,16px);background:var(--cms-button-bg,#1687c8);color:var(--cms-button-text,#fff)}
.btn:hover{background:var(--cms-button-hover,#0f4f82);color:var(--cms-button-text,#fff)}
.richtext a,.page-main p a,.contact-lines a,.service-link{color:var(--cms-link-color,#1687c8)}
.richtext a:hover,.page-main p a:hover,.contact-lines a:hover,.service-link:hover{color:var(--cms-link-hover,#0f4f82)}
/* Everything intentionally small on the public site is still at least 14px. */
.eyebrow,.hero-side-note,.langs,.cap strong,.cap span,.floating-card span,.service-body p,.service-link,.machine-mini span,.tag,.machine-card p,.field label,.footer-nav,.footer-bottom,.footer-bottom span{font-size:max(14px,1em)}
.field input,.field textarea,.field select{font-size:16px}
.richtext img{display:block;width:var(--cms-img-width,100%);max-width:100%;height:auto;margin-left:var(--cms-img-ml,auto);margin-right:var(--cms-img-mr,auto);padding:var(--cms-img-padding,0);border:var(--cms-img-border-width,0) solid var(--cms-img-border-color,#dce5ea);border-radius:var(--cms-img-radius,8px);box-shadow:var(--cms-img-shadow,none);transition:box-shadow .2s ease,transform .2s ease}
.richtext img:hover{box-shadow:var(--cms-img-hover-shadow,var(--cms-img-shadow,none))}
.richtext figure{width:100%;max-width:100%;margin:24px 0}.richtext figcaption{font-size:max(14px,calc(var(--cms-text-size,16px) - 2px));color:#6c7b84;margin-top:8px}
/* Logo dimensions are controlled in Admin > Dizajn / typografia. */
.brand img{width:var(--logo-desktop,380px);max-width:min(52vw,800px);max-height:72px;object-fit:contain}
.footer-brand img{width:var(--logo-footer,280px);max-width:min(72vw,700px);max-height:72px;object-fit:contain}
.logo-header-center .nav-wrap{position:relative}.logo-header-center .brand{position:absolute;left:50%;transform:translateX(-50%);z-index:2}.logo-header-center .main-nav{margin-left:0}.logo-header-center .langs{margin-left:auto}
.logo-header-right .nav-wrap .brand{order:3;margin-left:18px}.logo-header-right .nav-wrap .main-nav{order:1;margin-left:0;margin-right:auto}.logo-header-right .nav-wrap .langs{order:2;margin-left:0}
.logo-footer-center .footer-main{justify-content:center;position:relative}.logo-footer-center .footer-brand{margin-inline:auto}.logo-footer-center .footer-nav{position:absolute;right:0}
.logo-footer-right .footer-main{flex-direction:row-reverse}.logo-footer-right .footer-nav{margin-right:auto}
@media(max-width:760px){
  body{font-size:var(--cms-text-size-mobile,16px)}
  .hero h1,.page-hero h1{font-size:var(--cms-h1-mobile,36px)}
  .section h2,.section-head h2,.page-main h2,.richtext h2,.cta h2{font-size:var(--cms-h2-mobile,30px)}
  .service-body h3,.machine-card h3,.page-main h3,.richtext h3,.contact-card h3{font-size:var(--cms-h3-mobile,20px)}
  .brand img{width:var(--logo-mobile,250px);max-width:calc(100vw - 154px);max-height:58px}
  .logo-header-center .brand{position:static;transform:none;margin-left:auto;margin-right:auto}.logo-header-center .langs{margin-left:0}
  .logo-header-right .nav-wrap .brand{order:2;margin-left:auto}.logo-header-right .nav-wrap .langs{order:1}.logo-header-right .nav-wrap .menu-toggle{order:3}
  .logo-footer-center .footer-main,.logo-footer-right .footer-main{position:static;align-items:flex-start;flex-direction:column}.logo-footer-center .footer-nav{position:static}.logo-footer-center .footer-brand,.logo-footer-right .footer-brand{margin:0}
}
/* Hard readability floor requested for the public site. */
body p,body span,body a,body li,body td,body th,body label,body small{font-size:max(14px,1em)}
@media(max-width:760px){body input,body textarea,body select,body button{font-size:max(16px,1em)}}

/* v2.0 — CMS controls without changing the approved page composition */
.site-header{background:var(--navbar-bg,#fff);border-bottom-color:var(--navbar-border,#dce5ea)}
.navbar-static .site-header{position:relative}.navbar-sticky .site-header{position:sticky}
.nav-wrap{min-height:var(--navbar-height,88px)}
.hero-content{text-align:var(--hero-text-align,left)}
.hero h1,.page-hero h1{font-size:var(--hero-title-size,52px);color:var(--hero-title-color,#fff)}
.hero p,.page-hero p{font-size:var(--hero-subtitle-size,18px);color:var(--hero-subtitle-color,#fff)}
.cap-image{width:52px;height:52px;border-radius:5px;overflow:hidden;background:#f2f5f7}.cap-image img{width:100%;height:100%;object-fit:cover}
.service-link{display:inline-flex;align-items:center;gap:4px}
.service-detail{margin-top:40px;padding-top:40px;border-top:1px solid var(--line);scroll-margin-top:110px}.service-detail-grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:42px;align-items:start}.service-detail-grid>img{width:100%;max-height:420px;object-fit:cover;border-radius:8px;box-shadow:var(--shadow)}
.site-footer{background:var(--footer-bg,#fff);color:var(--footer-text,#536873)}.footer-nav a{color:var(--footer-link,#0b1f2a)}.footer-nav a:hover{color:var(--footer-link-hover,#1687c8)}.footer-bottom{background:var(--footer-bottom-bg,#0b1f2a);color:var(--footer-bottom-text,#b9cbd5);border-top:0}
@media(max-width:760px){.hero h1,.page-hero h1{font-size:var(--hero-title-size-mobile,36px)}.nav-wrap{min-height:max(66px,var(--navbar-height,76px))}.main-nav{top:var(--navbar-height,76px)}.service-detail-grid{grid-template-columns:1fr}.cap-image{width:38px;height:38px}}

/* v2.1 — requested CMS behavior fixes; approved homepage composition stays intact. */
.page-hero{background:var(--subhero-bg,#0b1f2a);min-height:var(--subhero-min-height,230px);padding:54px 0;display:flex;align-items:center}
.page-hero.has-image:after{background:rgba(5,20,29,var(--subhero-overlay,.55))}
.page-hero-content{text-align:var(--hero-text-align,left)}
.page-main-no-hero{padding-top:52px}
.contact-intro{max-width:980px;margin-bottom:34px}
.cta{position:relative;background:linear-gradient(90deg,var(--cta-bg-start,#0b1f2a),var(--cta-bg-end,#0f4f82));color:var(--cta-text,#fff);overflow:hidden}
.cta.has-bg{background-image:linear-gradient(rgba(5,20,29,var(--cta-overlay,0)),rgba(5,20,29,var(--cta-overlay,0))),var(--cta-bg-image);background-size:cover;background-position:center}
.cta .cta-wrap{position:relative;z-index:1}.cta h2{color:var(--cta-heading,#fff)}.cta p{color:var(--cta-text,#fff);opacity:.86}
@media(max-width:760px){.page-hero{min-height:0;padding:46px 0}.page-hero.has-image{padding:76px 0 52px}.page-main-no-hero{padding-top:38px}}

/* Turnstile v2.2: responsive widget + visible client diagnostics. */
.turnstile-shell{width:100%;max-width:100%;overflow:visible}.turnstile-shell .cf-turnstile{width:100%;max-width:100%}.turnstile-status{margin-top:10px;padding:10px 12px;border-radius:6px;font-size:14px;line-height:1.45}.turnstile-status.error{background:#fff1f1;border:1px solid #efb4b4;color:#8b1e1e}.turnstile-status.warn{background:#fff8e8;border:1px solid #efd18b;color:#775400}

/* v2.3 — homepage hero typography controls */
.hero h1,.page-hero h1{font-family:var(--hero-title-font,var(--cms-font-heading));text-shadow:var(--hero-title-shadow,none)}
.hero p,.page-hero p{font-family:var(--hero-subtitle-font,var(--cms-font-body));text-shadow:var(--hero-subtitle-shadow,none)}
.hero .eyebrow{font-family:var(--hero-eyebrow-font,var(--cms-font-body));font-size:var(--hero-eyebrow-size,14px);color:var(--hero-eyebrow-color,#d7ebf7);text-shadow:var(--hero-eyebrow-shadow,none)}
.hero-side-note{font-family:var(--hero-side-font,var(--cms-font-body));font-size:var(--hero-side-size,14px);color:var(--hero-side-color,#fff);text-shadow:var(--hero-side-shadow,none)}
@media(max-width:760px){.hero .eyebrow{font-size:var(--hero-eyebrow-size-mobile,14px)}.hero-side-note{font-size:var(--hero-side-size-mobile,14px)}}

/* v2.4 — tighter hero/content rhythm */
.hero + .section{padding-top:var(--home-after-hero,20px)}
.page-main{padding-top:var(--sub-after-hero,20px)}

/* v2.4 — configurable About floating card */
.floating-card{background:var(--about-float-bg,#fff);padding:var(--about-float-padding,20px);border-left:4px solid var(--about-float-border,var(--accent));border-radius:var(--about-float-radius,0);box-shadow:var(--about-float-shadow,var(--shadow))}
.floating-card strong{display:block}
.floating-card-bottom-right{right:-20px;bottom:-26px;left:auto;top:auto}
.floating-card-bottom-left{left:-20px;bottom:-26px;right:auto;top:auto}
.floating-card-top-right{right:-20px;top:18px;left:auto;bottom:auto}
.floating-card-top-left{left:-20px;top:18px;right:auto;bottom:auto}
.floating-card-below{position:static;margin-top:12px;width:max-content;max-width:100%}

/* Contact form result must be unmistakable. */
.notice.success,.contact-result.success{border-color:#198754;background:#eaf8f0;color:#0f5132}
.notice.warning,.contact-result.warning{border-color:#d39e00;background:#fff8df;color:#664d03}
.notice.error,.contact-result.error{border-color:#b02a37;background:#fff0f1;color:#842029}
.contact-result{font-weight:750;font-size:max(16px,var(--cms-text-size,16px));padding:16px 18px;margin:0 0 20px}

@media(max-width:760px){
  .hero + .section{padding-top:var(--home-after-hero-mobile,16px)}
  .page-main{padding-top:var(--sub-after-hero-mobile,16px)}
  .floating-card{position:static!important;margin-top:10px;max-width:100%}
}


/* v2.5 — mobile navigation: visible hamburger + languages below menu */
.mobile-langs{display:none}
@media(max-width:760px){
  .site-header .nav-wrap{position:relative;display:flex;align-items:center;gap:12px}
  .desktop-langs{display:none!important}
  .menu-toggle{
    display:flex!important;
    flex:0 0 46px;
    width:46px;
    height:46px;
    margin-left:auto;
    padding:8px;
    border:1px solid #dce5ea;
    border-radius:6px;
    background:#fff;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    gap:5px;
    position:relative;
    z-index:103;
    box-shadow:none;
  }
  .menu-toggle span{
    display:block!important;
    width:27px!important;
    height:3px!important;
    margin:0!important;
    border-radius:999px;
    background:#0b1f2a!important;
    opacity:1!important;
    visibility:visible!important;
    transition:transform .2s ease,opacity .2s ease;
  }
  .menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(8px) rotate(45deg)}
  .menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0!important}
  .menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
  .brand{min-width:0}
  .brand img{max-width:calc(100vw - 92px)!important}
  .main-nav{
    position:absolute!important;
    top:100%!important;
    left:50%!important;
    right:auto!important;
    width:100vw!important;
    transform:translateX(-50%);
    z-index:102;
    padding:10px max(18px,calc((100vw - var(--max))/2)) 16px!important;
    background:#fff!important;
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
    box-shadow:0 18px 30px rgba(8,31,45,.12);
  }
  .main-nav a{font-size:max(16px,var(--cms-nav-size,16px));padding:14px 2px!important}
  .mobile-langs{
    display:flex;
    align-items:center;
    gap:10px;
    margin-top:8px;
    padding:15px 0 2px;
    border-top:1px solid var(--line);
  }
  .mobile-langs a{
    flex:0 0 auto;
    min-width:46px;
    padding:9px 12px!important;
    border:1px solid var(--line)!important;
    border-radius:5px;
    text-align:center;
    font-size:15px!important;
    font-weight:800;
    color:var(--cms-nav-color,#0b1f2a);
    background:#fff;
  }
  .mobile-langs a.active{color:#fff;background:var(--cms-nav-hover,#1687c8);border-color:var(--cms-nav-hover,#1687c8)!important}
  .mobile-langs a:after{display:none!important}
  .logo-header-center .brand,.logo-header-right .nav-wrap .brand{order:1;margin-left:0;margin-right:0}
  .logo-header-center .menu-toggle,.logo-header-right .nav-wrap .menu-toggle{order:3;margin-left:auto}
}

/* v3.0 — universal CMS page builder */
.builder-page{display:block;background:#fff}
.page-builder-hero{position:relative;min-height:var(--ph-min,230px);display:flex;align-items:center;overflow:hidden;background:var(--ph-bg,#0b1f2a);color:#fff}
.page-builder-hero-picture{position:absolute;inset:0;z-index:0}.page-builder-hero-picture img{width:100%;height:100%;object-fit:cover;object-position:var(--ph-pos,center)}
.page-builder-hero-overlay{position:absolute;inset:0;z-index:1;background:rgba(5,20,29,var(--ph-overlay,.55))}
.page-builder-hero-inner{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:40px;padding-top:var(--ph-pt,72px);padding-bottom:var(--ph-pb,72px);width:min(calc(100% - 40px),var(--max));margin-inline:auto}
.page-builder-hero-content{max-width:var(--ph-content,720px);text-align:var(--ph-align,left)}
.page-builder-eyebrow{font-family:var(--ph-ey-font,var(--cms-font-body));font-size:var(--ph-ey-size,14px);font-weight:800;letter-spacing:.23em;text-transform:uppercase;color:var(--ph-ey-color,#d7ebf7);text-shadow:var(--ph-ey-shadow,none);margin-bottom:15px}
.page-builder-hero h1{font-family:var(--ph-title-font,var(--cms-font-heading));font-size:var(--ph-title-size,46px);line-height:1.05;letter-spacing:-.035em;color:var(--ph-title-color,#fff);text-shadow:var(--ph-title-shadow,none);margin:0 0 16px}
.page-builder-hero p,.page-builder-hero-subtitle{font-family:var(--ph-sub-font,var(--cms-font-body));font-size:var(--ph-sub-size,18px);line-height:1.55;color:var(--ph-sub-color,#fff);text-shadow:var(--ph-sub-shadow,none);margin:0 0 24px;max-width:760px}.page-builder-hero-subtitle>:first-child{margin-top:0}.page-builder-hero-subtitle>:last-child{margin-bottom:0}
.page-builder-hero-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;font-family:var(--ph-btn-font,var(--cms-font-body));font-size:var(--ph-btn-size,16px);font-weight:800;color:var(--ph-btn-text,#fff);background:var(--ph-btn-bg,#1687c8);border:1px solid var(--ph-btn-border,#1687c8);border-radius:var(--ph-btn-radius,0);transition:.2s}
.page-builder-hero-btn:hover{color:var(--ph-btn-text-hover,#fff);background:var(--ph-btn-hover,#0f4f82);border-color:var(--ph-btn-border-hover,#0f4f82);transform:translateY(-1px)}
.page-builder-side{flex:0 0 230px;font-family:var(--ph-side-font,var(--cms-font-body));font-size:var(--ph-side-size,14px);font-weight:800;line-height:1.75;letter-spacing:.28em;text-transform:uppercase;color:var(--ph-side-color,#fff);text-shadow:var(--ph-side-shadow,none);text-align:right}

.builder-section{position:relative;background:var(--b-bg,#fff);border-top:var(--b-bw,0) solid var(--b-bc,#dce5ea);border-bottom:var(--b-bw,0) solid var(--b-bc,#dce5ea);box-shadow:var(--b-shadow,none);border-radius:var(--b-radius,0);overflow:hidden;color:var(--b-text,#344b58);font-family:var(--b-font,var(--cms-font-body));font-size:var(--b-text-size,16px)}
.builder-section.has-bg{background-image:var(--b-bg-image);background-size:cover;background-position:center}
.builder-section .builder-bg{position:absolute;inset:0;background:var(--b-bg,#fff);opacity:var(--b-bg-overlay,0);pointer-events:none;z-index:0}
.builder-section.has-bg .builder-bg{background:#05141d}
.builder-section-inner{position:relative;z-index:1;width:min(calc(100% - 40px),var(--b-max,var(--max)));margin-inline:auto;padding-top:var(--b-pt,36px);padding-bottom:var(--b-pb,36px)}
.builder-section-head{margin-bottom:22px;text-align:var(--b-align,left)}
.builder-section-head:empty{display:none}.builder-section-head .eyebrow{font-size:var(--b-eyebrow-size,14px);color:var(--b-eyebrow,#1687c8);text-shadow:var(--b-eyebrow-shadow,none);margin-bottom:10px}
.builder-section-head h2{font-family:var(--b-heading-font,var(--cms-font-heading));font-size:var(--b-title-size,36px);line-height:1.08;letter-spacing:-.03em;color:var(--b-heading,#0b1f2a);text-shadow:var(--b-heading-shadow,none);margin:0 0 10px}
.builder-section-head p,.builder-section-subtitle{font-size:var(--b-text-size,16px);color:var(--b-text,#344b58);text-shadow:var(--b-text-shadow,none);margin:0;max-width:820px}.builder-section-subtitle>:first-child{margin-top:0}.builder-section-subtitle>:last-child{margin-bottom:0}.builder-section-head[style*="center"] p,.builder-section-head[style*="center"] .builder-section-subtitle{margin-inline:auto}
.builder-section-head-row{display:flex;justify-content:space-between;align-items:flex-end;gap:30px}.builder-head-link{color:var(--b-link,#1687c8);font-weight:800;white-space:nowrap}.builder-head-link:hover{color:var(--b-link-hover,#0f4f82)}
.builder-grid{display:grid;gap:28px;align-items:stretch}.builder-grid.layout-one{grid-template-columns:minmax(0,1fr)}.builder-grid.layout-two-50{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.builder-grid.layout-two-40-60{grid-template-columns:minmax(0,.667fr) minmax(0,1fr)}.builder-grid.layout-two-60-40{grid-template-columns:minmax(0,1fr) minmax(0,.667fr)}
.builder-col{min-width:0;background:var(--c-bg,transparent);padding:var(--c-pad,0);border:var(--c-bw,0) solid var(--c-bc,#dce5ea);border-radius:var(--c-radius,0);box-shadow:var(--c-shadow,none);text-align:var(--c-align,left)}
.builder-richtext{font-size:inherit;color:inherit;text-shadow:var(--b-text-shadow,none)}.builder-grid.layout-one .builder-col-wysiwyg .builder-richtext{max-width:920px}.builder-richtext>:first-child{margin-top:0}.builder-richtext>:last-child{margin-bottom:0}.builder-richtext h2,.builder-richtext h3,.builder-richtext h4{font-family:var(--b-heading-font,var(--cms-font-heading));color:var(--b-heading,#0b1f2a);text-shadow:var(--b-heading-shadow,none);line-height:1.16}.builder-richtext h2{font-size:clamp(26px,var(--b-title-size,36px),52px)}.builder-richtext h3{font-size:24px}.builder-richtext a{color:var(--b-link,#1687c8);text-decoration:underline;text-underline-offset:2px}.builder-richtext a:hover{color:var(--b-link-hover,#0f4f82)}.builder-richtext img{max-width:100%;height:auto;border-radius:inherit}.builder-richtext table{max-width:100%;width:100%;border-collapse:collapse}.builder-richtext th,.builder-richtext td{padding:10px;border:1px solid #dce5ea}
.builder-image{display:block;width:var(--c-img-width,100%);max-width:100%;height:var(--c-img-height,auto);margin-left:calc((100% - var(--c-img-width,100%))/2);padding:var(--c-img-pad,0);object-fit:var(--c-img-fit,cover);object-position:var(--c-img-pos,center);border-radius:var(--c-img-radius,8px);box-shadow:var(--c-img-shadow,none);transition:box-shadow .2s ease,transform .2s ease}.builder-image:hover{box-shadow:var(--c-img-hover-shadow,none)}

.builder-contact-form{width:100%;text-align:left}.builder-contact-form h2{font-family:var(--b-heading-font,var(--cms-font-heading));font-size:clamp(26px,var(--b-title-size,36px),48px);margin:0 0 18px;color:var(--b-heading,#0b1f2a)}.builder-contact-form .eyebrow{color:var(--b-link,#1687c8)}.builder-contact-form .field label{font-size:max(14px,var(--b-text-size,16px))}.builder-contact-form .field input,.builder-contact-form .field textarea{font-size:max(16px,var(--b-text-size,16px))}.builder-contact-form .btn{font-size:max(14px,var(--cms-button-size,16px));background:var(--cms-button-bg,#1687c8);color:var(--cms-button-text,#fff)}.builder-contact-form .btn:hover{background:var(--cms-button-hover,#0f4f82)}

.builder-cards-grid{display:grid;grid-template-columns:repeat(var(--cards-cols,4),minmax(0,1fr));gap:var(--cards-gap,16px)}
.builder-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;background:var(--card-bg,#fff);border:var(--card-bw,1px) solid var(--card-bc,#dce5ea);border-radius:var(--card-radius,0);box-shadow:var(--card-shadow,none);color:var(--card-text,#344b58);transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease}.builder-card[href]{cursor:pointer}.builder-card:hover{transform:translateY(-3px);background:var(--card-hover-bg,#fff);border-color:var(--card-hbc,#1687c8);box-shadow:var(--card-hover-shadow,none)}
.builder-card-media{height:var(--card-img-h,200px);overflow:hidden;background:#f3f6f7;padding:var(--card-img-pad,0)}.builder-card-media img{width:100%;height:100%;object-fit:var(--one-card-fit,var(--card-img-fit,cover));object-position:var(--one-card-pos,var(--card-img-pos,center));border-radius:var(--card-img-radius,0);box-shadow:var(--card-img-shadow,none);transition:transform .25s ease,box-shadow .2s ease}.builder-card:hover .builder-card-media img{transform:scale(1.025);box-shadow:var(--card-img-hover-shadow,var(--card-img-shadow,none))}
.builder-card-body{display:flex;flex-direction:column;flex:1;padding:var(--card-pad,20px)}.builder-card-body h3{font-family:var(--b-heading-font,var(--cms-font-heading));font-size:20px;line-height:1.2;color:var(--card-heading,#0b1f2a);margin:0 0 8px}.builder-card:hover .builder-card-body h3{color:var(--card-hover-heading,var(--card-heading,#0b1f2a))}.builder-card-body p,.builder-card-short{font-size:var(--b-text-size,16px);line-height:1.5;margin:0;color:var(--card-text,#344b58)}.builder-card-short>:first-child{margin-top:0}.builder-card-short>:last-child{margin-bottom:0}.builder-card:hover .builder-card-body p,.builder-card:hover .builder-card-short{color:var(--card-hover-text,var(--card-text,#344b58))}.builder-card-link{display:inline-block;margin-top:auto;padding-top:16px;color:var(--card-link,#1687c8);font-weight:800}.builder-card:hover .builder-card-link{color:var(--card-link-hover,#0f4f82)}
.builder-card-detail{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:34px;align-items:start;margin-top:34px;padding-top:34px;border-top:1px solid var(--b-bc,#dce5ea)}.builder-card-detail>img{width:100%;max-height:480px;object-fit:cover;border-radius:var(--card-radius,0)}.builder-card-detail h2{font-family:var(--b-heading-font,var(--cms-font-heading));font-size:var(--b-title-size,36px);margin-top:0;color:var(--b-heading,#0b1f2a)}

/* Footer v3.0 */
.site-footer{font-family:var(--footer-font,var(--cms-font-body));font-size:var(--footer-size,16px);background:var(--footer-bg,#fff);color:var(--footer-text,#536873)}.footer-main{padding-top:var(--footer-pt,28px);padding-bottom:var(--footer-pb,28px)}.footer-nav a{color:var(--footer-link,#0b1f2a)}.footer-nav a:hover{color:var(--footer-link-hover,#1687c8)}.footer-bottom{background:var(--footer-bottom-bg,#0b1f2a);color:var(--footer-bottom-text,#b9cbd5);border-top:0}
.footer-cta-v3{font-family:var(--footer-cta-font,var(--cms-font-body));padding:var(--footer-cta-pad,34px) 0;text-align:var(--footer-cta-align,left)}.footer-cta-v3 h2{font-size:var(--footer-cta-title-size,28px);color:var(--footer-cta-title-color,#fff)}.footer-cta-v3 p{font-size:var(--footer-cta-text-size,16px);color:var(--footer-cta-text-color,#fff)}.footer-cta-v3 .btn{background:var(--footer-cta-button-bg,#1687c8)}.footer-cta-v3 .btn:hover{background:var(--footer-cta-button-hover,#0f4f82)}

@media(max-width:980px){.builder-cards-grid{grid-template-columns:repeat(var(--cards-cols-tablet,2),minmax(0,1fr))}.page-builder-side{display:none}}
@media(max-width:760px){
  .page-builder-hero{min-height:var(--ph-min-mobile,260px)}.page-builder-hero-inner{width:min(calc(100% - 28px),var(--max));padding-top:var(--ph-ptm,52px);padding-bottom:var(--ph-pbm,52px)}.page-builder-hero h1{font-size:var(--ph-title-sizem,36px)}.page-builder-hero p,.page-builder-hero-subtitle{font-size:var(--ph-sub-sizem,16px)}.page-builder-eyebrow{font-size:var(--ph-ey-sizem,14px)}
  .builder-section{font-size:var(--b-text-size-mobile,16px)}.builder-section-head .eyebrow{font-size:var(--b-eyebrow-size-mobile,14px)}.builder-section-inner{width:min(calc(100% - 28px),var(--b-max,var(--max)));padding-top:var(--b-ptm,22px);padding-bottom:var(--b-pbm,22px)}.builder-section-head h2{font-size:var(--b-title-size-mobile,28px)}.builder-section-head-row{display:block}.builder-head-link{display:inline-block;margin-top:12px}.builder-grid.layout-two-50,.builder-grid.layout-two-40-60,.builder-grid.layout-two-60-40{grid-template-columns:1fr}.builder-grid{gap:20px}.builder-image{height:var(--c-img-height-mobile,var(--c-img-height,auto))}.builder-cards-grid{grid-template-columns:repeat(var(--cards-cols-mobile,1),minmax(0,1fr))}.builder-card-media{height:var(--card-img-hm,240px)}.builder-card-detail{grid-template-columns:1fr}.builder-contact-form .form-row{grid-template-columns:1fr}.footer-main{align-items:flex-start;flex-direction:column}.footer-nav{flex-wrap:wrap}.footer-bottom .container{flex-direction:column;gap:6px}
}
