:root{--asphalt:#15171B;--coral:#FF6B5B;--cream:#F5E6C8;--linen:#F5F1EA;--sand:#DED6C8;--steel:#5B616B;--split:linear-gradient(90deg,#FF6B5B 50%,#F5E6C8 50%);
--head:Unbounded,'Noto Sans Georgian',sans-serif;--body:Inter,'Noto Sans Georgian',sans-serif;--mono:'JetBrains Mono','Noto Sans Georgian',monospace}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
html[lang=ka] body [lang=en],html[lang=en] body [lang=ka]{display:none}
body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:var(--linen);color:var(--asphalt);font:400 17px/1.55 var(--body)}
main{flex:1}
a{color:inherit}
h1,h2,h3,p,ol,ul{margin:0;padding:0}
ol,ul{list-style:none}
.wrap{max-width:1120px;margin:0 auto;padding:0 20px}
.split{height:6px;background:var(--split)}
.logo{display:inline-flex;flex-direction:column;gap:5px;text-decoration:none;font:700 22px/1 Unbounded,sans-serif;letter-spacing:-.03em}
.logo i{display:block;height:4px;background:var(--split)}
.dark{background:var(--asphalt);color:var(--linen)}
.top{display:flex;justify-content:space-between;align-items:center;padding-top:20px;padding-bottom:20px}
.lang{display:flex;border:1px solid var(--steel);border-radius:8px;overflow:hidden}
.lang button{all:unset;cursor:pointer;padding:15px 14px;font:600 13px/1 var(--mono);color:var(--linen)}
.lang button[aria-pressed=true]{background:var(--linen);color:var(--asphalt)}
.lang button:focus-visible,.btn:focus-visible{outline:2px solid var(--cream);outline-offset:2px}
.tag{font:400 13px/1.5 var(--mono);letter-spacing:.06em;color:#C9CBC5}
html[lang=ka] .tag{letter-spacing:.01em}
.muted{color:var(--steel)}
.btn{display:inline-block;border:0;cursor:pointer;padding:16px 26px;border-radius:10px;background:var(--coral);color:var(--asphalt);font:600 17px/1.2 var(--body);text-decoration:none}
.btn:hover{background:#FF8072}
.btn[disabled]{opacity:.6;cursor:default}

/* Hero: the headline is the split, and the line runs edge to edge. */
.hero{padding-top:48px}
h1{font:700 clamp(30px,8vw,96px)/1.08 var(--head);letter-spacing:-.02em;margin:20px 0 36px}
h1 .a,h1 .b{display:block}
h1 .a{color:var(--coral)}
h1 .b{color:var(--cream)}
.hero-line{height:10px}
.hero-after{padding-top:36px;padding-bottom:72px}
.sub{font-size:clamp(18px,2.4vw,22px);color:#C9CBC5;margin:0 0 32px;max-width:36em}
.sub.after{margin:12px 0 0}

section{padding:72px 0}
h2{font:700 clamp(26px,4.4vw,48px)/1.2 var(--head);letter-spacing:-.02em;margin-bottom:32px;max-width:18em}
h3{font:600 19px/1.3 var(--body);margin-bottom:8px}
.lead{font-size:clamp(18px,2.2vw,21px);margin-top:-12px;color:#33373E;max-width:30em}

/* How it works */
.steps-line{height:8px}
.steps{display:grid;gap:32px;counter-reset:s;margin-top:24px}
.steps li{counter-increment:s}
.steps li::before{content:"0" counter(s);display:block;font:700 clamp(40px,5vw,64px)/1 var(--head);letter-spacing:-.02em;margin-bottom:20px}

/* Lane board. Static on purpose: no truck, marker or map, nothing that suggests tracking. */
.board{border-top:1px solid #3a3e45;margin-bottom:36px}
.board li{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:16px;border-bottom:1px solid #3a3e45;padding:14px 0}
.board .o{font:700 clamp(19px,3vw,34px)/1.2 var(--head);letter-spacing:-.01em}
.board .code{font:600 13px/1 var(--mono);color:#C9CBC5;letter-spacing:.06em}
.board .to{display:none;color:var(--cream);text-align:right}
.board i{display:none;height:4px;background:var(--split)}

/* All-in */
.allin{background:var(--cream)}
.allin-g{display:grid;gap:40px}
.sheet{background:var(--asphalt);color:var(--linen);border-radius:12px;padding:32px}
.sheet .k{font:600 13px/1.4 var(--mono);letter-spacing:.06em;color:#C9CBC5;text-transform:uppercase;margin-bottom:10px}
.sheet ul li{font:700 clamp(18px,2.2vw,26px)/1.5 var(--head);letter-spacing:-.01em}
.sheet .split{margin:24px 0;height:6px}
.sheet .sep li{font:500 19px/1.6 var(--body);color:#C9CBC5}

/* Rate request: the one place coral fills the screen */
#rate{background:var(--coral);color:var(--asphalt)}
#rate .lead{color:var(--asphalt)}
.rate-g{display:grid;gap:24px}
#rate .btn{background:var(--asphalt);color:var(--linen)}
#rate .btn:hover{background:#2a2d33}
#rate .btn:focus-visible{outline-color:var(--asphalt)}
form{display:grid;gap:18px;background:#fff;border-radius:12px;padding:28px}
.row{display:grid;gap:18px}
.row>label{min-width:0}
label{display:grid;gap:6px;font-weight:500;font-size:15px;align-content:start}
label[hidden]{display:none}
input{width:100%;font:400 17px/1.3 var(--body);padding:13px 14px;border:1px solid var(--steel);border-radius:8px;background:#fff;color:var(--asphalt)}
input[type=date]{min-width:0;height:50px;-webkit-appearance:none;appearance:none}
input::placeholder{color:var(--steel);opacity:1}
input:focus{outline:2px solid var(--asphalt);outline-offset:1px}
.load{border:0;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.load legend{padding:0;margin-bottom:6px;font-weight:500;font-size:15px}
.load label{display:block;cursor:pointer;position:relative}
.load input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}
.load label span{display:block;min-width:88px;text-align:center;padding:12px 18px;border:1px solid var(--steel);border-radius:8px;font:600 15px/1.3 var(--mono)}
.load input:checked+span{background:var(--asphalt);color:var(--linen);border-color:var(--asphalt)}
.load input:focus-visible+span{outline:2px solid var(--asphalt);outline-offset:2px}
.note{font-size:14px;color:var(--steel)}
.done{margin-top:16px;padding:20px 24px;background:var(--cream);border-radius:12px}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

footer{padding:40px 0}
.foot{display:grid;gap:18px}
.foot,.foot a{color:#C9CBC5}
.foot .logo{color:var(--linen)}
.foot .tag{grid-column:1/-1}
.foot .tag a{display:inline-block;padding:12px 0}
.legal{display:flex;flex-wrap:wrap;gap:0 20px;font-size:15px}
.legal a{display:inline-block;padding:10px 0}

/* Secondary pages */
.dochead{padding-top:32px;padding-bottom:40px}
.dochead h1{font-size:clamp(26px,5vw,44px);line-height:1.2;letter-spacing:-.01em;margin:0 0 12px;max-width:20em}
.dochead .note{color:#C9CBC5}
.doc{padding-top:48px;padding-bottom:72px;width:100%}
.doc>*{max-width:760px}
.doc h2{font:600 21px/1.3 var(--body);letter-spacing:0;margin:32px 0 10px;max-width:none}
.doc p{margin-bottom:12px}
.doc ul{list-style:disc;padding-left:22px;margin-bottom:12px}
.doc li{margin-bottom:6px}

@media(min-width:760px){
  .steps{grid-template-columns:repeat(4,1fr);gap:28px}
  .row{grid-template-columns:1fr 1fr}
  .row:has(label[hidden]){grid-template-columns:1fr}
  .foot{grid-template-columns:1fr auto;align-items:end}
  .board li{grid-template-columns:44px minmax(0,5fr) minmax(0,6fr) 44px}
  .board i,.board .to{display:block}
  .lang button{padding:9px 12px}
}
@media(min-width:960px){
  section{padding:112px 0}
  .allin-g{grid-template-columns:1fr 1fr;align-items:start;gap:64px}
  .rate-g{grid-template-columns:5fr 7fr;gap:64px;align-items:start}
}

/* The two halves of the split line meet in the middle (50/50 = even). */
@media (prefers-reduced-motion:no-preference){
  .home .top .logo i,.home .hero-line{position:relative;background:none}
  .home .top .logo i::before,.home .top .logo i::after,.home .hero-line::before,.home .hero-line::after{content:"";position:absolute;top:0;bottom:0;width:50%;animation:ev-draw .7s cubic-bezier(.22,1,.36,1) both}
  .home .top .logo i::before,.home .hero-line::before{left:0;background:var(--coral);transform-origin:left}
  .home .top .logo i::after,.home .hero-line::after{right:0;background:var(--cream);transform-origin:right}
  .home .hero-line::before,.home .hero-line::after{animation-delay:.25s}
  .home .hero .tag,.home .hero h1,.home .hero-after .sub,.home .hero-after .btn{animation:ev-rise .6s cubic-bezier(.22,1,.36,1) both}
  .home .hero h1{animation-delay:.1s}
  .home .hero-after .sub{animation-delay:.6s}
  .home .hero-after .btn{animation-delay:.75s}
  /* Same move on scroll. app.js adds .js-draw, so without JS the lines simply show. */
  .js-draw .draw{position:relative;background:none}
  .js-draw .draw::before,.js-draw .draw::after{content:"";position:absolute;top:0;bottom:0;width:50%;transform:scaleX(0);transition:transform .8s cubic-bezier(.22,1,.36,1)}
  .js-draw .draw::before{left:0;background:var(--coral);transform-origin:left}
  .js-draw .draw::after{right:0;background:var(--cream);transform-origin:right}
  .js-draw .draw.on::before,.js-draw .draw.on::after{transform:scaleX(1)}
}
@keyframes ev-draw{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes ev-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

/* Coming-soon page served on evenway.ge until launch (see server.js) */
.soon{min-height:100vh}
.soon .wrap{width:100%}
.soon main{display:flex;flex-direction:column;justify-content:center}
.soon .hero{padding-top:24px}
.soon .hero-after{padding-bottom:56px}
