/* Header language selector – TurkuRahti DEV */
.nav .tr-language{margin-left:8px;flex:0 0 auto;position:relative;z-index:55}
.tr-language select{width:auto;min-width:132px;max-width:170px;margin:0;padding:8px 27px 8px 10px;border:1px solid #c9c9c9;border-radius:7px;background:#fff;color:#17191c;font:600 13px/1.3 system-ui,-apple-system,Segoe UI,Arial,sans-serif;cursor:pointer}
.tr-language select:focus{outline:2px solid #d71920;outline-offset:2px}
@media(max-width:850px){.nav .tr-language{margin-left:auto}.tr-language select{min-width:116px;max-width:140px;padding:8px 18px 8px 7px}}
@media(max-width:700px){.nav .tr-language{order:2;margin-left:0}.nav .site-menu{order:3;margin-left:auto}.nav .login-identity{order:4}}

/* v8: kaikilla kielillä sama TurkuRahti-punainen teema; kielen lippu himmeänä taustalla */
html[data-tr-lang] .hero{background:linear-gradient(125deg,#171719,#87161c 65%,#d71920)}

/* V4: SVG-lippuvalikko */
.tr-language-v4 .tr-language-native{position:absolute!important;width:1px!important;height:1px!important;min-width:0!important;padding:0!important;margin:-1px!important;overflow:hidden;clip:rect(0 0 0 0);border:0!important;opacity:0}
.tr-lang-btn{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:6px 10px;border:1px solid #c9c9c9;border-radius:7px;background:#fff;color:#17191c;font:600 13px/1.2 system-ui,-apple-system,Segoe UI,Arial,sans-serif;cursor:pointer}
.tr-lang-btn:focus-visible,.tr-lang-list:focus-visible{outline:2px solid #d71920;outline-offset:2px}
.tr-lang-btn img,.tr-lang-list img{width:20px;height:14px;flex:0 0 20px;border:1px solid rgba(0,0,0,.15);border-radius:2px;object-fit:cover}
.tr-lang-caret{font-size:11px;margin-left:2px}
.tr-lang-list{position:absolute;right:0;top:calc(100% + 4px);min-width:160px;margin:0;padding:4px;list-style:none;background:#fff;border:1px solid #c9c9c9;border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,.15);z-index:60}
.tr-lang-list li{display:flex;align-items:center;gap:9px;min-height:44px;padding:0 10px;border-radius:6px;cursor:pointer;color:#17191c;font:600 14px/1.2 system-ui,-apple-system,Segoe UI,Arial,sans-serif}
.tr-lang-list li.active,.tr-lang-list li:hover{background:#f2f2f2}
.tr-lang-list li[aria-selected="true"]{color:#d71920}
@media(max-width:700px){.tr-lang-btn span:not(.tr-lang-caret){display:none}.tr-lang-list{right:0;left:auto;min-width:0;width:max-content;max-width:calc(100vw - 16px)}}

/* v8: himmeä kielilippu heron taustalla (tekstikerroksen alla) */
.hero .tr-hero-flag{position:absolute;top:0;right:0;bottom:0;width:62%;z-index:0;pointer-events:none;background:center/cover no-repeat;opacity:.11;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 38%);mask-image:linear-gradient(90deg,transparent 0,#000 38%)}
html[data-tr-lang="fi"] .hero .tr-hero-flag{background-image:url(flags/fi.svg)}
html[data-tr-lang="sv"] .hero .tr-hero-flag{background-image:url(flags/se.svg)}
html[data-tr-lang="en"] .hero .tr-hero-flag{background-image:url(flags/gb.svg)}
html[data-tr-lang="pl"] .hero .tr-hero-flag{background-image:url(flags/pl.svg)}
html[data-tr-lang="et"] .hero .tr-hero-flag{background-image:url(flags/ee.svg)}
.hero>.wrap{position:relative;z-index:1}
@media(max-width:700px){.hero .tr-hero-flag{left:0;width:auto;opacity:.06;-webkit-mask-image:none;mask-image:none}}

/* v8b: no horizontal overflow on mobile */
.hero{position:relative;overflow:hidden}
@media(max-width:700px){html,body{overflow-x:clip}}

/* v9b: puhelinpalvelun kieliliput */
.tr-phone-langs{display:inline-flex;gap:3px;align-items:center;vertical-align:middle;margin-left:5px;white-space:nowrap;line-height:1}
.tr-phone-langs img{width:18px;height:12px;border-radius:2px;box-shadow:0 0 0 1px rgba(0,0,0,.18);display:block}
.tr-phone-langs-hero{gap:4px;margin-left:8px}.tr-phone-langs-hero img{width:24px;height:16px;box-shadow:0 0 0 1px rgba(255,255,255,.7)}
.tr-info-contact .tr-phone-langs{margin-left:-4px;align-self:center}
.tr-phone-group{display:inline-flex;align-items:center;white-space:nowrap}

/* v27b: mobile header grid wins over earlier order/margin rules */
@media (max-width:700px){
  .nav .tr-language{order:unset!important;margin-left:0!important;margin-right:0!important}
  .nav .site-menu{order:unset!important;margin-left:0!important}
  .tr-lang-btn{min-height:40px;padding:5px 8px}
  .tr-lang-btn img{width:18px;height:12px;flex-basis:18px}
}
