/* 3DAS 1.2 — responsive width containment and language controls.
   Protect the layout instead of masking overflow with body{overflow-x:hidden}. */
html{max-width:100%;overflow-x:clip}
body{min-width:0;max-width:100%;overflow-wrap:break-word}
img,video,svg{max-width:100%;height:auto}
.container,main,section,article,header,footer{min-width:0;max-width:100%}
.portfolio-grid,.services-grid,.knowledge-grid,.youtube-grid,.materials-grid,.faq-grid,.featured-case-inner,.titan-hero-layout,.titan-portfolio-highlight{min-width:0;max-width:100%}
.portfolio-grid>* ,.services-grid>*,.knowledge-grid>*,.youtube-grid>*,.materials-grid>*,.titan-portfolio-highlight>*,.titan-hero-layout>*{min-width:0;max-width:100%}
/* The 1fr track's automatic minimum expanded to the intrinsic image width on Android. */
.titan-portfolio-highlight{grid-template-columns:minmax(0,1fr) minmax(0,1fr);overflow:hidden}
.titan-portfolio-highlight>a,.titan-portfolio-highlight>div{min-width:0;max-width:100%}
.titan-portfolio-highlight img{display:block;width:100%;max-width:100%;min-width:0;height:430px;min-height:0;object-fit:cover;object-position:50% 30%}
.portfolio-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.portfolio-item img{max-width:100%;object-fit:cover}
.titan-hero-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}
/* Language switch is always visible, including when navigation is collapsed. */
.lang-switch{display:inline-flex;gap:2px;align-items:center;flex:0 0 auto;border:1px solid rgba(255,255,255,.32);border-radius:999px;padding:3px;white-space:nowrap;font:700 12px/1.2 system-ui,sans-serif;background:#15202e}
.lang-switch a{color:#dbe4f2;text-decoration:none;padding:7px 9px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;min-width:34px}
.lang-switch a[aria-current="page"]{background:#ff7043;color:#fff}
.lang-switch a:focus-visible{outline:2px solid #fff;outline-offset:2px}
.header>.container{gap:12px}.header .main-nav{margin-left:auto}
.site-header .lang-switch{margin-left:0}
.header .main-nav .nav-menu li{margin-left:12px}
@media(max-width:1100px){.header .main-nav .nav-menu li{margin-left:8px}.header .main-nav .nav-menu a{font-size:.9rem}}
@media(max-width:950px){.header .main-nav .nav-menu{display:none!important}.header .main-nav .nav-menu.active{display:flex!important}.header .nav-toggle{display:block}.header .main-nav{margin-left:auto}.header .lang-switch{margin-left:0}.titan-hero-layout{grid-template-columns:minmax(0,1fr)}}
@media(max-width:800px){.titan-portfolio-highlight{grid-template-columns:minmax(0,1fr);gap:0}.titan-portfolio-highlight>div{padding:24px 20px 20px}.titan-portfolio-highlight>a{display:block;width:100%;max-height:none;min-width:0}.titan-portfolio-highlight img{width:100%;max-width:100%;min-width:0;height:clamp(300px,110vw,470px);max-height:470px;min-height:0;object-fit:contain;object-position:center;background:#111f30}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:670px){.portfolio-grid,.services-grid,.faq-grid,.materials-grid,.knowledge-grid,.other-realizations,.youtube-grid{grid-template-columns:minmax(0,1fr)}.header>.container{padding-inline:12px}.header .logo-image{max-width:42px}.header .lang-switch a{padding:7px 8px}.header .main-nav .nav-menu{width:100%;left:0;right:0;box-sizing:border-box}.titan-portfolio-highlight img{height:clamp(290px,100vw,440px)}.titan-portfolio-highlight h3{font-size:clamp(1.4rem,6vw,1.9rem)}.portfolio-section .section-subtitle{max-width:100%!important}.portfolio-grid>*{min-width:0}}
/* English page common layout */
.en-hero{background:radial-gradient(800px 420px at 76% 0%,#2b4763 0%,transparent 60%),linear-gradient(125deg,#111827,#20334d);color:#fff;padding:70px 0}
.en-hero h1{color:#fff;font-size:clamp(2.45rem,5.1vw,4.3rem);line-height:1.08;margin:0 0 19px;letter-spacing:-.035em}
.en-hero .lead{color:#d8e7f4;max-width:710px}.en-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:34px}
.en-hero-image{display:block;max-height:560px;width:100%;object-fit:contain;border-radius:18px;background:#172335;box-shadow:0 22px 60px #07142680}
.en-facts{display:flex;flex-wrap:wrap;gap:22px;margin:25px 0}.en-facts span{border-top:1px solid #8b9bac55;padding-top:9px;color:#cad5e2}.en-facts strong{display:block;color:#fff;font-size:1.6rem}
.en-micro{font-size:.88rem;color:#91aac6}.en-note{background:#fff8ed;border:1px solid #fdba74;border-radius:14px;padding:15px 18px;color:#784421;margin-top:20px}
.en-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.en-tiles>*{min-width:0}.en-tiles h3{text-align:left}.en-tiles .card{height:100%}
.en-project-photo{width:100%;height:330px;object-fit:cover;border-radius:18px}.en-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;counter-reset:step}.en-steps article{background:#fff;border:1px solid #dbe2eb;padding:20px;border-radius:15px}.en-steps article h3{font-size:1.1rem}
.en-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.en-photo-grid figure{margin:0;background:#fff;border:1px solid #e2e7ee;border-radius:15px;overflow:hidden}.en-photo-grid img{width:100%;height:310px;object-fit:cover}.en-photo-grid figcaption{padding:12px;color:#536171;font-size:.9rem}
.en-form{display:grid;gap:12px;max-width:710px}.en-form label{font-weight:700;display:block}.en-form input:not([type=checkbox]),.en-form textarea,.en-form select{width:100%;max-width:100%;padding:13px;border:1px solid #c9d4df;border-radius:10px;font:inherit}.en-form textarea{min-height:150px}.en-form button{justify-self:start;cursor:pointer}.en-form .hp-field{position:absolute;left:-9999px}.en-form .quote-consent{display:flex;gap:10px;align-items:flex-start;font-size:.9rem}.en-form .quote-consent input{margin-top:6px}.en-form .quote-consent label{font-weight:400}.en-form .v11-clear-file[hidden]{display:none}.en-form .progress-container{background:#f6f8fd;border-radius:8px;padding:12px}.en-form #progressBar{height:4px;background:#2563eb;width:0}
.en-form #response-message{min-height:1.4em;font-weight:600}.en-form .field-help{font-size:.87rem;color:#58667a}
@media(max-width:800px){.en-hero-grid,.en-steps{grid-template-columns:minmax(0,1fr)}.en-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.en-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.en-hero{padding:46px 0}.site-header .header-inner{gap:12px}.site-header .site-nav{margin-left:auto}}
@media(max-width:620px){.en-tiles,.en-photo-grid{grid-template-columns:minmax(0,1fr)}.en-photo-grid img{height:260px}.en-hero-image{max-height:420px}.en-facts{gap:13px}.en-facts strong{font-size:1.25rem}}
