@charset "UTF-8";
:root { --gutter: clamp(22px,5.5vw,100px); --content-width: 1600px; --header-height: 88px; --ease: cubic-bezier(.22,.61,.36,1); font-family: "Segoe UI",Arial,sans-serif; color: var(--section-text); background: var(--section-background); line-height: 1.6; font-synthesis: none; scroll-behavior: smooth; scroll-padding-top: calc(var(--header-height) + 16px); }
* { box-sizing: border-box; }
body,p,h1,h2,h3 { margin: 0; }
button,input,textarea,select { font: inherit; }
button,select,summary { cursor: pointer; }
a { color: inherit; text-decoration: none; }
button { color: inherit; }
a,button,input,textarea,select,summary { -webkit-tap-highlight-color: transparent; }
:focus-visible { outline: 2px solid var(--focus-color); outline-offset: 6px; }
::selection { color: var(--button-text); background: var(--button-background); }
[hidden] { display: none !important; }
[data-theme] { color: var(--section-text); background: var(--section-background); }
.wrap { width: 100%; max-width: var(--content-width); padding-inline: var(--gutter); margin-inline: auto; }
.section-space { padding-block: clamp(80px,9vw,140px); }
.sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.skip { position: fixed; z-index: 20; top: 12px; left: 20px; transform: translateY(-180%); background: var(--button-background); color: var(--button-text); padding: 12px 20px; }
.skip:focus { transform: none; }
.header { position: sticky; top: 0; z-index: 10; border-bottom: 1px solid var(--section-border); transition: color .3s,background .3s,border-color .3s; }
.header-inner { min-height: var(--header-height); display: flex; align-items: center; gap: 36px; }
/* Existing identifier retained, including lowercase, tracking and weight. */
.wordmark { color: var(--wordmark-color); font-size: 36px; font-weight: 700; letter-spacing: -2px; line-height: 1; }
.header nav { margin-left: auto; display: flex; gap: 30px; align-items: center; }
nav a { position: relative; isolation: isolate; font-size: 13px; padding-block: 10px; transition: color .2s, transform .2s var(--ease); }
nav a::before { content: ""; position: absolute; z-index: -1; inset: 3px -12px; border-radius: 30px; background: var(--section-hover); opacity: 0; transition: opacity .2s; }
nav a:hover { transform: translateY(-1px); }
nav a:hover::before { opacity: 1; }
.nav-contact { display: inline-flex; gap: 20px; }
.language select { color: var(--section-text); background: var(--section-background); border: 1px solid var(--interactive-border); border-radius: 18px; padding: 8px 11px; font-size: 12px; max-width: 150px; transition: border-color .2s, background .2s, box-shadow .2s; }
.language select:hover { background: var(--section-hover); }
.language select:focus { outline: none; border-color: var(--focus-color); }
.language select:focus-visible { outline: none; box-shadow: 0 0 0 2px var(--focus-ring-soft); }
.menu-toggle { border: 0; background: transparent; align-items: center; gap: 10px; font-size: 13px; min-height: 44px; }
.menu-icon { width: 18px; height: 18px; transition: transform .2s; }
.menu-toggle[aria-expanded="true"] .menu-icon { transform: rotate(-45deg); }
.eyebrow,.micro { font-size: 10px; font-weight: 600; letter-spacing: 1.8px; line-height: 1.7; }
.eyebrow { display: flex; align-items: center; gap: 12px; margin-bottom: 30px; }
.section-index { gap: 30px; }
.section-index>span:first-child { color: var(--section-secondary); letter-spacing: 0; }
.status-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--section-accent); box-shadow: 0 0 0 5px var(--section-surface); margin-inline: 5px; }
h1,h2 { font-weight: 450; line-height: 1.04; letter-spacing: -.065em; text-wrap: balance; }
h1 { font-size: clamp(54px,6.1vw,94px); }h2 { font-size: clamp(40px,4.6vw,72px); }
.hero { position: relative; display: grid; grid-template-columns: 1.15fr 1fr; align-items: center; column-gap: 30px; padding-top: clamp(50px,5.3vw,90px); overflow: clip; }
.hero-copy { z-index: 1; padding-bottom: 70px; }
.hero-name { display: block; font-size: .35em; letter-spacing: -.05em; margin-bottom: 18px; }
.hero h1>span:last-child { display: block; max-width: 740px; }
.intro { max-width: 420px; color: var(--section-secondary); margin-top: 28px; font-size: 16px; line-height: 1.8; }
.actions { display: flex; align-items: center; flex-wrap: wrap; gap: 28px; margin-top: 32px; }
.button { border: 1px solid var(--button-background); border-radius: 40px; background: var(--button-background); color: var(--button-text); display: inline-flex; gap: 32px; justify-content: space-between; align-items: center; min-height: 52px; padding: 12px 24px; font-size: 13px; font-weight: 550; transition: background .25s,transform .25s var(--ease); }
.button:hover { background: var(--button-hover); transform: translateY(-2px); }.button:active { transform: translateY(0); }
.button:disabled { background: var(--brand-disabled-background); color: var(--brand-disabled-text); cursor: default; transform: none; }
.button>span:last-child { font-size: 21px; }
.text-link { position: relative; isolation: isolate; display: inline-flex; align-items: center; gap: 22px; min-height: 44px; font-size: 13px; font-weight: 550; }
.text-link>span:last-child { display: inline-block; transition: transform .25s var(--ease); }
.text-link::before { content: ""; position: absolute; z-index: -1; inset: 2px -12px; border-radius: 30px; background: var(--section-hover); opacity: 0; transition: opacity .2s; }
.text-link:hover::before { opacity: 1; }.text-link:hover>span:last-child { transform: translate(3px,-3px); }
.hero-foot { grid-column: 1/-1; border-top: 1px solid var(--section-border); display: flex; justify-content: space-between; align-items: center; gap: 20px; padding-block: 22px; font-size: 11px; color: var(--section-secondary); }
.hero-disciplines { letter-spacing: 1.5px; font-size: 9px; }.hero-foot a { font-size: 22px; width: 44px; text-align: center; color: var(--section-text); }
.connection-art { position: relative; aspect-ratio: 1; width: 100%; max-width: 620px; margin-top: -18px; margin-bottom: 38px; }
.globe { position: absolute; inset: 10%; border-radius: 50%; background: radial-gradient(circle at 30% 24%,var(--brand-background-light) 5%,var(--brand-surface-light) 52%,var(--brand-border-strong) 155%); box-shadow: 15px 35px 65px var(--brand-shadow),inset -12px -18px 38px var(--brand-shadow); transform: rotate(-20deg); }
.globe svg { width: 100%; height: 100%; overflow: visible; }.globe-lines { fill: none; stroke: var(--brand-text-muted); stroke-width: .8; opacity: .65; }
.connection-path { fill: none; stroke: var(--brand-accent); stroke-width: 1.8; stroke-dasharray: 450; animation: connect 2.4s var(--ease) both; }
.connection-node { fill: var(--brand-text-dark); stroke: var(--brand-background-light); stroke-width: 4; }
.art-orbit { position: absolute; border: 1px solid var(--brand-border-strong); border-radius: 50%; width: 112%; height: 38%; left: -6%; top: 30%; transform: rotate(-30deg); opacity: .55; }
.orbit-two { transform: rotate(50deg); opacity: .25; height: 52%; top: 24%; }.orbit-one:after { content: ""; position: absolute; width: 9px; height: 9px; border-radius: 50%; background: var(--brand-accent); left: 15%; top: 7%; }
.art-cross { position: absolute; color: var(--brand-text-muted); font-size: 18px; font-weight: 300; }.cross-top { top: 0; right: 7%; }.cross-bottom { bottom: 10%; left: 3%; }
.art-label { position: absolute; padding: 8px 12px; font-size: 12px; letter-spacing: 1px; border: 1px solid var(--brand-border); background: var(--brand-background-light); border-radius: 4px; box-shadow: 0 6px 20px var(--brand-shadow); }
.art-label span { display: block; color: var(--brand-text-secondary); font-size: 9px; letter-spacing: .5px; }.label-mx { top: 60%; left: 4%; }.label-ht { top: 23%; right: 0; }
.art-caption { position: absolute; bottom: 0; width: 100%; display: flex; justify-content: space-between; gap: 12px; font-size: 8px; letter-spacing: 1.3px; color: var(--brand-text-secondary); }
.company { display: grid; grid-template-columns: 1fr 2.15fr; gap: 45px; border-top: 1px solid var(--section-border); }.company .eyebrow { padding-top: 12px; }
.company-bottom { display: grid; grid-template-columns: 1fr 2fr; gap: 32px; margin-top: 38px; }.company-bottom p { max-width: 530px; color: var(--section-secondary); font-size: 15px; line-height: 1.9; }.connection-symbol { font-size: 70px; font-weight: 200; line-height: 1; }
.services { border-radius: 28px 28px 0 0; }.services-heading { display: grid; grid-template-columns: 1.4fr 1fr; align-items: end; gap: 50px; margin-bottom: 70px; }.services h2 { font-size: clamp(58px,6.8vw,106px); }.services-intro { max-width: 340px; justify-self: end; padding-bottom: 6px; }.services-intro p { color: var(--section-secondary); font-size: 17px; margin-bottom: 24px; }.services-intro .micro { font-size: 8px; }
.service { border-top: 1px solid var(--section-border); position: relative; transition: background .3s; }.service:last-child { border-bottom: 1px solid var(--section-border); }
.service summary { display: grid; grid-template-columns: 65px 1fr 54px; gap: 25px; align-items: start; padding: 32px 14px 36px 0; list-style: none; position: relative; }.service summary::-webkit-details-marker { display: none; }.service summary::marker { content: ""; }.service summary:focus-visible { outline-offset: -3px; }
.service-number { font-size: 13px; padding-top: 7px; color: var(--section-secondary); font-variant-numeric: tabular-nums; }.service-copy { min-width: 0; display: block; transition: transform .35s var(--ease); }.service-category { display: block; font-size: 8px; letter-spacing: 1.5px; color: var(--section-secondary); margin-bottom: 9px; }.service-title { display: block; font-size: clamp(29px,3.3vw,50px); letter-spacing: -.045em; font-weight: 400; line-height: 1.15; text-wrap: balance; }.service-description { display: block; margin-top: 14px; font-size: 13px; color: var(--section-secondary); max-width: 630px; line-height: 1.8; }
.service-toggle { border: 1px solid var(--section-border); border-radius: 50%; width: 48px; height: 48px; display: grid; place-items: center; font-size: 24px; font-weight: 300; margin-top: 12px; transition: transform .35s var(--ease),background .3s,color .3s; }
.service:hover,.service[open] { background: var(--section-surface); }.service:hover .service-copy,.service[open] .service-copy { transform: translateX(10px); }.service:hover .service-toggle,.service[open] .service-toggle { background: var(--section-accent); color: var(--section-background); }.service[open] .service-toggle { transform: rotate(135deg); }
.service-detail { padding: 0 90px 30px; max-width: 830px; animation: detail-in .3s var(--ease); }.service-detail p { font-size: 14px; color: var(--section-secondary); margin-bottom: 12px; }
.badge { display: inline-flex; align-items: center; gap: 7px; border: 1px solid var(--interactive-border); border-radius: 25px; padding: 4px 10px; font-size: 10px; letter-spacing: .2px; }.badge:before { content: ""; width: 4px; height: 4px; border-radius: 50%; background: currentColor; }.service .badge { margin-top: 15px; color: var(--section-secondary); }
.services-foot { display: flex; justify-content: space-between; align-items: center; gap: 22px; padding-top: 30px; font-size: 12px; color: var(--section-secondary); }.services-foot a { color: var(--section-text); }
.fintech { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(45px,8vw,130px); align-items: center; }.fintech-copy h2 { margin-top: 24px; max-width: 530px; }.fintech-copy>p:not(.eyebrow) { margin-top: 26px; max-width: 480px; color: var(--section-secondary); font-size: 15px; line-height: 1.9; }.fintech-copy>.availability { font-size: 12px !important; padding-left: 14px; border-left: 1px solid var(--interactive-border); }.fintech-copy .text-link { margin-top: 20px; }
.route-art { align-self: stretch; min-height: 490px; background: var(--section-surface); border: 1px solid var(--section-border); padding: 28px; display: flex; flex-direction: column; position: relative; overflow: hidden; border-radius: 12px; }.route-top { display: flex; align-items: center; justify-content: space-between; gap: 15px; font-size: 16px; letter-spacing: -1px; }.route-top .micro { font-size: 8px; letter-spacing: 1px; color: var(--section-secondary); }.route-visual { flex: 1; min-height: 260px; position: relative; }
.route-ring { position: absolute; border: 1px solid var(--interactive-border); border-radius: 50%; width: 210px; height: 210px; top: 50%; transform: translateY(-50%) rotateX(32deg); }.route-ring:before,.route-ring:after { content: ""; position: absolute; border: 1px solid var(--section-border); border-radius: 50%; inset: -18px; }.route-ring:after { inset: 18px; border-color: var(--interactive-border); opacity: .3; }.ring-a { left: 2%; }.ring-b { right: 2%; }.route-line { height: 1px; background: var(--section-text); width: 65%; position: absolute; left: 17.5%; top: 50%; transform: rotate(-20deg); }.route-node { width: 12px; height: 12px; border-radius: 50%; background: var(--section-text); position: absolute; top: 62%; left: 15%; box-shadow: 0 0 0 8px var(--section-surface); }.node-b { top: 36%; left: auto; right: 15%; }
.route-bottom { display: flex; justify-content: space-between; align-items: center; padding-top: 20px; border-top: 1px solid var(--interactive-border); }.route-bottom .micro { display: block; color: var(--section-secondary); font-size: 8px; }.route-bottom strong { font-size: 27px; font-weight: 450; letter-spacing: -1px; }.route-bottom>div:last-child { text-align: right; }.route-caption { font-size: 10px; margin-top: 24px; color: var(--section-secondary); }
.vision { position: relative; overflow: hidden; }.vision-content { max-width: 1030px; margin-left: auto; }.vision h2 { font-size: clamp(50px,6.6vw,100px); max-width: 1000px; }.vision-bottom { display: grid; grid-template-columns: 1fr 1.2fr; gap: 70px; align-items: center; margin-top: 55px; }.vision-bottom p { font-size: 15px; color: var(--section-secondary); line-height: 1.9; }.roots-art { height: 110px; position: relative; width: 200px; }.roots-art span { display: block; position: absolute; border: 1px solid var(--section-secondary); border-radius: 50%; width: 100px; height: 100px; top: 5px; }.roots-art span:nth-child(2) { left: 45px; }.roots-art span:nth-child(3) { left: 90px; }
.contact>.eyebrow { margin-bottom: 45px; }.contact-grid { display: grid; grid-template-columns: 1.1fr 1fr; gap: clamp(40px,9vw,150px); }.contact h2 { max-width: 580px; }.contact-grid>div>p { color: var(--section-secondary); max-width: 330px; margin-top: 28px; font-size: 15px; }.contact-links { margin-top: 35px; }.contact-links a { display: flex; justify-content: space-between; align-items: center; gap: 15px; padding: 17px 0; border-bottom: 1px solid var(--section-border); font-size: clamp(19px,2vw,27px); letter-spacing: -.04em; }.contact-links small { display: block; font-size: 10px; color: var(--section-secondary); letter-spacing: 0; margin-bottom: 5px; }.contact-links a { transition: background .25s, padding .25s var(--ease); }
.contact-links a:hover { background: var(--section-surface); padding-inline: 12px; }
.contact-links a>span:last-child { transition: transform .25s var(--ease); }
.contact-links a:hover>span:last-child { transform: translate(3px,-3px); }
.contact-form { display: flex; flex-direction: column; align-items: start; padding-top: 6px; }.contact-form label { font-size: 12px; margin-bottom: 8px; }.contact-form input,.contact-form textarea { width: 100%; padding: 10px 0; background: var(--input-background); color: var(--section-text); border: 0; border-bottom: 1px solid var(--interactive-border); border-radius: 0; margin-bottom: 25px; font-size: 15px; resize: vertical; }.contact-form input:hover,.contact-form textarea:hover { border-bottom-color: var(--section-text); }.contact-form input:user-invalid,.contact-form textarea:user-invalid { border-bottom: 2px solid var(--section-text); }.contact-form input:focus-visible,.contact-form textarea:focus-visible { outline-offset: 3px; }.form-note,#form-status { font-size: 11px; color: var(--section-secondary); line-height: 1.8; margin-bottom: 22px; }#form-status { margin-top: 16px; margin-bottom: 0; }
.translation-note { padding-block: 18px; font-size: 12px; border-top: 1px solid var(--brand-border); }
.footer { padding-block: 60px 25px; }.footer-top { display: flex; justify-content: space-between; gap: 30px; align-items: start; padding-bottom: 55px; }.footer .wordmark { font-size: 27px; }.footer-top p { margin-top: 22px; font-size: 12px; color: var(--section-secondary); max-width: 230px; }.footer nav { display: flex; gap: 30px; flex-wrap: wrap; }.footer-bottom { padding-top: 23px; border-top: 1px solid var(--section-border); display: flex; justify-content: space-between; gap: 25px; flex-wrap: wrap; font-size: 10px; color: var(--section-secondary); }.footer-bottom>span:nth-child(2) { font-size: 8px; letter-spacing: 1px; }.footer-bottom a { color: var(--section-text); }
.reveal.is-pending { opacity: 0; transform: translateY(20px); }.reveal { transition: opacity .7s var(--ease),transform .7s var(--ease); }
@keyframes connect { from { stroke-dashoffset: 450; } to { stroke-dashoffset: 0; } }@keyframes detail-in { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }
@media(min-width:1600px) { .hero { min-height: 820px; } }
@media(max-width:1050px) {
.header-inner { gap:22px; }.header nav { gap:20px; }.hero { grid-template-columns:1.15fr .85fr; gap:24px; }h1 { font-size:clamp(50px,6.9vw,76px); }.hero-copy { padding-bottom:50px; }.hero-disciplines { display:none; }.company { grid-template-columns:1fr 2fr; gap:30px; }.company-bottom { grid-template-columns:60px 1fr; gap:25px; }.services-heading { gap:30px; }.service summary { grid-template-columns:45px 1fr 48px; gap:18px; }.service-detail { padding-inline:63px; }.route-art { min-height:450px; padding:22px; }.route-ring { width:170px; height:170px; }.fintech { gap:40px; }.contact-grid { gap:50px; }
}
@media(max-width:760px) {
:root { --header-height:76px; }.header-inner { gap:15px; flex-wrap:wrap; padding-block:16px; }.wordmark { margin-right:auto; }.language { order:2; }.language select { max-width:132px; font-size:11px; padding:8px; }.menu-toggle { display:inline-flex; order:3; }.header nav { order:4; width:100%; margin:0; justify-content:space-between; padding-top:10px; }.header.js-menu nav { display:none; }.header.js-menu.is-menu-open nav { display:flex; }.header nav a { font-size:13px; }.nav-contact { gap:8px; }.hero { grid-template-columns:1fr; padding-top:46px; }.hero-copy { padding-bottom:14px; }.hero h1 { max-width:640px; font-size:clamp(50px,10vw,76px); }.hero h1>span:last-child { max-width:620px; }.hero-name { margin-bottom:16px; }.hero .eyebrow { margin-bottom:26px; }.intro { font-size:15px; max-width:470px; }.actions { gap:22px; margin-top:27px; }.connection-art { max-width:450px; width:85%; margin:0 auto 15px; }.hero-foot { padding-block:17px; font-size:10px; }.company { grid-template-columns:1fr; gap:15px; }.company-bottom { margin-top:28px; }.company-bottom p { font-size:14px; }.company h2 { max-width:600px; }.services { border-radius:20px 20px 0 0; }.services-heading { grid-template-columns:1fr; gap:28px; margin-bottom:45px; }.services h2 { font-size:clamp(51px,10vw,76px); }.services-intro { justify-self:start; max-width:420px; }.services-intro p { font-size:15px; margin-bottom:12px; }.service summary { grid-template-columns:25px 1fr 35px; gap:13px; padding-block:28px; padding-right:0; }.service-number { font-size:11px; padding-top:4px; }.service-title { font-size:clamp(26px,4.8vw,37px); }.service-description { font-size:12px; }.service-toggle { width:34px; height:34px; font-size:19px; margin-top:17px; }.service:hover .service-copy,.service[open] .service-copy { transform:translateX(3px); }.service-detail { padding:0 30px 28px 38px; }.service-detail p { font-size:13px; }.services-foot { align-items:start; font-size:11px; }.services-foot>span { max-width:180px; }.services-foot .text-link { min-height:28px; }.fintech { grid-template-columns:1fr; gap:40px; }.fintech-copy h2 { max-width:550px; }.route-art { min-height:400px; }.route-ring { width:210px; height:210px; }.vision h2 { font-size:clamp(45px,8.3vw,66px); }.vision-bottom { grid-template-columns:1fr; gap:32px; margin-top:36px; }.vision-bottom p { font-size:14px; max-width:500px; }.roots-art { transform:scale(.8); transform-origin:left center; height:90px; }.contact-grid { grid-template-columns:1fr; gap:45px; }.contact h2 { max-width:560px; }.contact-links { margin-top:24px; }.contact-links a { font-size:25px; }.contact-form { max-width:560px; width:100%; }.footer-top { flex-direction:column; gap:28px; padding-bottom:35px; }.footer nav { gap:14px 25px; }.footer-bottom { gap:20px; }.footer-bottom>span:nth-child(2) { width:100%; order:3; }
}
@media(max-width:380px) { .header-inner { gap:10px; }.language select { max-width:100px; }.menu-toggle { min-width:40px; justify-content:center; }.menu-toggle>span:first-child { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }.menu-toggle { font-size:12px; gap:7px; }.menu-icon { width:15px; }.hero h1 { font-size:49px; }.actions { gap:14px; }.button { padding-inline:19px; gap:20px; }.text-link { font-size:12px; gap:12px; }.service summary { grid-template-columns:20px 1fr 30px; gap:10px; }.service-title { font-size:25px; }.service-toggle { width:29px; height:29px; }.route-top { flex-wrap:wrap; }.route-ring { width:160px; height:160px; }.contact-links a { font-size:22px; }.company-bottom { grid-template-columns:40px 1fr; gap:14px; }.connection-symbol { font-size:50px; } }
@media(hover:none) { .service:hover .service-copy { transform:none; } }
@media(prefers-reduced-motion:reduce) { :root { scroll-behavior:auto; }*,*:before,*:after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }.reveal.is-pending { opacity:1; transform:none; } }



/* Persistent directional control. Its local theme follows the section behind it. */
.scroll-toggle { position: fixed; right: max(20px, env(safe-area-inset-right)); bottom: max(22px, env(safe-area-inset-bottom)); z-index: 9; display: grid; place-items: center; width: 48px; height: 48px; padding: 0; border: 1px solid var(--interactive-border); border-radius: 50%; background: var(--section-background); color: var(--section-text); box-shadow: 0 5px 20px var(--brand-shadow); transition: background .25s, color .25s, transform .25s var(--ease); }
.scroll-toggle svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.5; transition: transform .3s var(--ease); }
.scroll-toggle[data-direction="up"] svg { transform: rotate(180deg); }
.scroll-toggle:hover { background: var(--section-text); color: var(--section-background); transform: translateY(-2px); }
.scroll-toggle:active { transform: none; }
@media(max-width:760px) { .footer-bottom { padding-right: 52px; }.scroll-toggle { width: 44px; height: 44px; right: 16px; bottom: max(18px, env(safe-area-inset-bottom)); } }

/* Shared inline outline icons; independent of system glyphs and emoji fonts. */
.icon { display: inline-block; width: 20px; height: 20px; flex: none; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; vertical-align: middle; }
.icon path { vector-effect: non-scaling-stroke; }
.button .icon { width: 16px; height: 20px; }
.text-link .icon, .nav-contact .icon { width: 13px; height: 20px; }
.icon.menu-icon { width: 18px; height: 18px; }
.connection-symbol .icon { width: 1em; height: 1em; display: block; }
.art-cross .icon { width: 14px; height: 14px; }
.services-intro .micro .icon { width: 12px; height: 12px; }
.language { position: relative; display: inline-flex; align-items: center; }
.language select { appearance: none; -webkit-appearance: none; padding-right: 28px; min-height: 44px; }
.language-icon { position: absolute; right: 10px; width: 12px; height: 12px; pointer-events: none; }
.hero-foot a { position: relative; display: grid; place-items: center; height: 1.6em; }
.hero-foot a::before { content: ""; position: absolute; width: 44px; height: 44px; left: 50%; top: 50%; transform: translate(-50%, -50%); }
.footer-bottom>a { display: inline-flex; align-items: center; gap: 8px; }
.footer-bottom>a .icon { width: 16px; height: 16px; }
@media(max-width:760px) { .menu-toggle { min-width: 44px; } }
.actions .text-link { gap: 15px; }
