/* Mobile layout corrections: content flow, tap targets and short viewports. */
.mobile-menu-cta{display:none}
@media(max-width:1250px){
 .header nav{max-height:calc(100vh - 90px);max-height:calc(100dvh - 90px);overflow-y:auto;overscroll-behavior:contain}
 .header nav .mobile-menu-cta{display:block;color:#2415ef;border-top:1px solid #d8d8df;margin-top:8px}
 .language-options{max-height:calc(100vh - 100px);max-height:calc(100dvh - 100px);overflow-y:auto;overscroll-behavior:contain}
}
@media(max-width:800px){
 .projects{grid-template-columns:minmax(0,1fr);gap:42px}
 .project,.section-heading>div,.team-intro,.team-copy,.process-grid article,.contact-grid>div{min-width:0}
 .project-art{height:auto;min-height:0}
 .app-poster{padding:28px 24px 20px;display:flex;flex-direction:column;align-items:flex-start}
 .app-poster h3,html[lang=ka] .app-poster h3{max-width:100%;margin-bottom:0}
 .app-poster .mini-phone,html[lang=ka] .app-poster .mini-phone{position:relative;top:auto;right:auto;bottom:auto;left:auto;width:min(230px,90%);height:340px;flex:none;align-self:center;margin:28px 0 14px;rotate:-3deg;padding:45px 14px 18px}
 .mini-island{left:50%;transform:translateX(-50%)}
 .erp-art-title,html[lang=ka] .erp-art-title{position:static;padding:28px 22px 0;font-size:clamp(27px,5vw,40px);overflow-wrap:anywhere}
 .erp-card,html[lang=ka] .erp-card{position:relative;top:auto;right:auto;bottom:auto;left:auto;width:calc(100% - 28px);margin:24px 14px 18px;padding:16px 12px;rotate:0deg;transform:none;box-shadow:4px 5px 0 #b0b0ad55}
 .erp-card-header{gap:9px;flex-wrap:wrap;font-size:13px}
 .erp-table>div,html[lang=ka] .erp-table>div{grid-template-columns:minmax(0,1.25fr) minmax(0,.8fr) minmax(0,1fr);gap:7px;font-size:12px}
 .erp-table>div>span{min-width:0;overflow-wrap:anywhere}
 .erp-table .table-head{font-size:11px;color:#62626b}
 .pill,html[lang=ka] .pill{font-size:11px;white-space:normal;line-height:1.4}
 .erp-footer,html[lang=ka] .erp-footer{gap:12px;flex-wrap:wrap;font-size:11px}
 .art-note{position:static;display:block;width:fit-content;max-width:calc(100% - 28px);margin:0 14px 16px;font-size:12px;line-height:1.5}
 .project-meta{margin:22px 0 12px;gap:16px}
 .project-meta>div{min-width:0}
 .circle-button{width:44px;height:44px;min-width:44px;flex:0 0 44px}
 .service h3{min-width:0;overflow-wrap:anywhere}
 .faq-list summary span{flex:none}
 .tags span,.team-disciplines span{max-width:100%;overflow-wrap:anywhere}
 .team-emblem{display:none}
 .team-intro>h2 br:nth-of-type(1),.team-intro>h2 .gradient-text br{display:block}
 .hero-sticker{display:none}
 .hero-actions{justify-content:center;max-width:100%}
 .hero-actions .text-link{display:inline-flex;align-items:center;min-height:44px;white-space:normal}
 .discipline-strip{overflow-x:auto;justify-content:flex-start;scrollbar-width:thin;overscroll-behavior-x:contain}
 .discipline-strip>*{flex-shrink:0}
 #project-form .choice-list label{max-width:100%}
 #project-form .choice-list span{text-align:left;overflow-wrap:anywhere}
 #project-form .consent-row label{min-width:0;overflow-wrap:anywhere}
 #project-form input,#project-form textarea{scroll-margin-block:100px 28px}
 dialog{max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain;padding-top:65px}
 .dialog-close{width:44px;height:44px;top:10px;right:10px}
 dialog .button{max-width:100%;line-height:1.4}
 .menu{width:44px;height:44px;flex:0 0 44px}
 .language-picker{height:44px}
 .footer .privacy-link{display:flex;align-items:center;min-height:44px}
}
@media(max-width:520px){
 .nav-wrap{width:calc(100% - 24px);gap:6px}
 .header .brand-symbol{margin-right:0}
 .header nav{top:74px}
 .header .nav-cta.button{min-height:44px;font-size:13px;gap:6px}
 .header .nav-cta.button>span:last-child{display:none}
 .language-picker{flex-basis:86px}
 .language-options{min-width:195px;max-width:calc(100vw - 24px)}
 .headline-line{max-width:100%;overflow-wrap:anywhere}
 h2,.team-intro>h2,.contact-grid h2{overflow-wrap:anywhere}
 .process-grid,html[lang=ka] .process-grid{grid-template-columns:minmax(0,1fr);gap:28px}
 .footer{grid-template-columns:minmax(0,1fr) auto}
 .footer .privacy-link{overflow-wrap:anywhere}
 .erp-table .client-avatar{display:none}
 #project-form .country-picker{flex-basis:96px}
 #project-form .country-display{gap:4px;padding:12px 5px;font-size:14px}
 #project-form input#phone{padding-inline:8px;font-size:16px}
 html[lang=ka] .erp-art-title{font-size:26px}
}
@media(max-width:380px){
 .header .nav-cta{display:none}
 .language-options{right:0;transform:none}
 .contact-grid h2,html[lang=en] .contact-grid h2{font-size:clamp(43px,13vw,49px)}
 html[lang=ka] .contact-grid h2{font-size:30px}
 .hero-actions{flex-direction:column;width:100%;gap:8px}
 .hero-actions .button{width:100%;justify-content:center}
 .erp-table>div,html[lang=ka] .erp-table>div{font-size:11px}
 .erp-footer,html[lang=ka] .erp-footer{gap:8px;font-size:10px}
}
@media(hover:none){
 .button:hover,.button.primary:hover{transform:none;box-shadow:none}
 .button:hover span,.text-link:hover span{transform:none}
}
/* A symmetric vector avoids font-dependent glyph offsets in every language. */
.brand .brand-symbol{display:grid;place-items:center;place-content:normal;flex-shrink:0;padding:0;line-height:0;letter-spacing:0;aspect-ratio:1}
.brand .brand-symbol>svg{display:block;width:100%;height:100%;margin:0;padding:0;overflow:visible}
