:root {
  --bg: #0b1718;
  --bg-2: #102021;
  --surface: #122324;
  --surface-2: #152829;
  --line: rgba(207, 236, 217, .13);
  --line-strong: rgba(207, 236, 217, .23);
  --white: #f5f9f3;
  --soft: #b4c1b8;
  --muted: #83988d;
  --accent: #c5f98e;
  --accent-deep: #78bc81;
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-synthesis: none;
  -webkit-font-smoothing: antialiased;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { min-width: 320px; min-height: 100vh; margin: 0; background: var(--bg); color: var(--white); overflow-x: hidden; }
body::before { position: fixed; pointer-events: none; inset: 0; content: ''; opacity: .18; background-image: radial-gradient(rgba(207,236,217,.28) .5px, transparent .5px); background-size: 9px 9px; mask-image: linear-gradient(90deg, #000, transparent 58%); }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
button:focus-visible, a:focus-visible { outline: 3px solid var(--accent); outline-offset: 5px; }
::selection { background: var(--accent); color: #12271a; }
.page-glow { position: absolute; pointer-events: none; z-index: 0; border-radius: 50%; filter: blur(85px); }
.page-glow--top { width: 610px; height: 610px; right: -100px; top: -205px; background: rgba(73, 136, 101, .16); }
.page-glow--bottom { width: 660px; height: 660px; left: -380px; top: 560px; background: rgba(50, 108, 100, .13); }
.site-shell { width: min(1280px, calc(100% - 96px)); position: relative; z-index: 1; margin: 0 auto; }
.skip-link { position: fixed; left: 12px; top: -80px; z-index: 10; background: var(--accent); color: #061514; padding: 12px 18px; border-radius: 8px; }
.skip-link:focus { top: 12px; }
.site-header { min-height: 112px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--line); }
.brand { display: inline-flex; align-items: center; gap: 10px; }
.brand-mark { width: 48px; height: 48px; display: grid; place-items: center; border: 1px solid rgba(197,249,142,.38); color: var(--accent); background: rgba(197,249,142,.055); border-radius: 14px; }
.brand-mark svg { width: 39px; height: 39px; }
.brand-word { letter-spacing: -.055em; font-size: 27px; font-weight: 750; line-height: 1; }
.brand-word span:first-child { color: var(--white); }
.brand-dot { color: var(--accent); }
.header-actions { display: flex; align-items: center; gap: 38px; }
.nav-link { font-size: 13px; color: var(--soft); font-weight: 600; transition: color .2s; }
.nav-link:hover, .explore-link:hover { color: var(--accent); }
.language-select { display: inline-flex; align-items: center; padding: 4px; background: rgba(235,250,238,.045); border: 1px solid var(--line); border-radius: 11px; gap: 2px; }
.lang-button { border: 0; cursor: pointer; background: transparent; color: var(--muted); padding: 8px 10px; font-size: 11px; font-weight: 800; letter-spacing: .04em; border-radius: 7px; transition: background .2s, color .2s; }
.lang-button:hover { color: var(--white); }
.lang-button.is-active { background: rgba(197,249,142,.14); color: var(--accent); }
.hero { padding: 101px 0 110px; display: grid; grid-template-columns: minmax(0, 1.02fr) minmax(0, .98fr); gap: clamp(28px, 6vw, 90px); align-items: center; }
.hero-content { padding-bottom: 28px; }
.eyebrow { color: var(--accent); display: inline-flex; align-items: center; gap: 11px; font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.signal-dot { display: inline-block; flex: 0 0 auto; width: 8px; height: 8px; background: var(--accent); border-radius: 50%; box-shadow: 0 0 0 5px rgba(197,249,142,.10); }
.hero h1 { font-size: clamp(55px, 5.4vw, 86px); letter-spacing: -.072em; line-height: 1.065; font-weight: 790; margin: 32px 0 29px; white-space: nowrap; }
.text-accent { color: var(--accent); }
.hero-description { max-width: 485px; font-size: clamp(16px, 1.55vw, 19px); line-height: 1.85; color: var(--soft); margin: 0; }
.hero-buttons { display: flex; align-items: center; gap: 30px; flex-wrap: wrap; margin-top: 37px; }
.status-label { display: inline-flex; align-items: center; gap: 11px; background: var(--accent); color: #19321f; padding: 15px 21px; border-radius: 12px; font-weight: 800; font-size: 14px; white-space: nowrap; box-shadow: 0 18px 50px rgba(197,249,142,.10); }
.status-icon { display: grid; place-items: center; width: 24px; height: 24px; border: 2px solid rgba(25,50,31,.4); border-radius: 50%; }
.status-icon svg { width: 16px; height: 16px; }
.explore-link { display: inline-flex; align-items: center; gap: 11px; color: var(--white); font-size: 13px; font-weight: 700; transition: color .2s; }
.explore-link svg { width: 18px; height: 18px; }
.hero-footnote { display: flex; align-items: center; gap: 10px; font-size: 12px; color: var(--muted); margin-top: 35px; }
.hero-footnote svg { flex: 0 0 auto; width: 17px; height: 17px; }
.visual-column { position: relative; isolation: isolate; padding: 25px 10px 12px 0; }
.orbit { position: absolute; border-radius: 50%; border: 1px solid rgba(197,249,142,.065); z-index: -1; pointer-events: none; }
.orbit-one { width: 680px; height: 680px; left: -90px; top: -100px; }
.orbit-two { width: 520px; height: 520px; left: -10px; top: -20px; }
.preview-window { background: #152727; border: 1px solid var(--line-strong); overflow: hidden; border-radius: 24px; box-shadow: 0 35px 85px rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.07); transform: rotate(2.1deg); }
.preview-header { height: 60px; display: flex; justify-content: space-between; align-items: center; padding: 0 24px; background: #182d2c; border-bottom: 1px solid var(--line); }
.window-dots { display: inline-flex; align-items: center; gap: 6px; }
.window-dots span { width: 7px; height: 7px; background: #496057; border-radius: 50%; }
.window-dots span:first-child { background: #d18d71; }
.window-dots span:nth-child(2) { background: #d9c278; }
.window-dots span:nth-child(3) { background: #86ad7b; }
.preview-heading { color: #92b2a2; font-size: 10px; letter-spacing: .17em; font-weight: 800; }
.preview-heading--symbol { font-weight: 900; font-size: 23px; color: var(--accent); }
.route-illustration { position: relative; height: 366px; overflow: hidden; background: radial-gradient(ellipse at 70% 30%, rgba(104,149,115,.13), transparent 68%), #112322; }
.map-background { position: absolute; inset: 0; background-image: linear-gradient(90deg, rgba(201,240,211,.035) 1px, transparent 1px), linear-gradient(0deg, rgba(201,240,211,.035) 1px, transparent 1px); background-size: 39px 39px; }
.map-lines { position: absolute; width: 100%; height: 100%; inset: 0; }
.floating-tag { position: absolute; display: flex; gap: 9px; align-items: center; max-width: 70%; border: 1px solid rgba(197,249,142,.27); box-shadow: 0 15px 36px rgba(0,0,0,.25); padding: 13px 17px; border-radius: 12px; background: rgba(19,40,37,.95); color: var(--white); font-size: 12px; font-weight: 700; }
.floating-tag--top { right: 9%; top: 38%; }
.floating-tag--bottom { left: 7%; bottom: 11%; }
.floating-tag-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--accent); }
.sparkle { font-size: 17px; color: var(--accent); }
.preview-footer { padding: 23px 25px; display: flex; align-items: center; justify-content: space-between; background: #182d2c; border-top: 1px solid var(--line); }
.preview-footer-title { display: flex; gap: 14px; align-items: center; }
.mini-road-icon { display: grid; place-items: center; width: 45px; height: 45px; border-radius: 13px; background: rgba(197,249,142,.10); color: var(--accent); font-size: 26px; }
.preview-footer-kicker { display: block; color: #88a69a; font-size: 9px; font-weight: 800; letter-spacing: .15em; margin-bottom: 6px; }
.preview-footer-title strong { display: block; color: #f7f8ee; font-size: 14px; letter-spacing: -.01em; }
.preview-bars { display: flex; gap: 4px; align-items: end; height: 20px; }
.preview-bars i { width: 5px; border-radius: 5px; background: var(--accent); }
.preview-bars i:nth-child(1) { height: 8px; opacity: .35; }
.preview-bars i:nth-child(2) { height: 14px; opacity: .5; }
.preview-bars i:nth-child(3) { height: 10px; opacity: .75; }
.preview-bars i:nth-child(4) { height: 19px; }
.float-note { position: absolute; right: -16px; bottom: -27px; transform: rotate(-2deg); display: flex; align-items: center; gap: 10px; padding: 13px 17px; background: #eff8e8; color: #1c3829; border-radius: 11px; box-shadow: 0 18px 34px rgba(0,0,0,.25); font-size: 11px; font-weight: 800; white-space: nowrap; }
.float-note span:first-child { font-size: 20px; }
.features { border-top: 1px solid var(--line); padding: 76px 0 89px; scroll-margin-top: 30px; }
.features-header { display: grid; grid-template-columns: 1.2fr .8fr; gap: 35px; align-items: end; margin-bottom: 36px; }
.section-eyebrow { font-size: 11px; color: var(--accent); font-weight: 800; letter-spacing: .18em; }
.features h2 { margin: 14px 0 0; font-size: clamp(29px, 3vw, 43px); line-height: 1.18; letter-spacing: -.055em; }
.features-header p { color: var(--soft); font-size: 14px; line-height: 1.8; max-width: 408px; justify-self: end; margin: 0 0 1px; }
.feature-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 16px; }
.feature-card { border: 1px solid var(--line); background: linear-gradient(135deg, rgba(240,255,239,.048), rgba(240,255,239,.012)); padding: 29px 28px 27px; border-radius: 17px; min-height: 256px; display: flex; flex-direction: column; }
.feature-icon { display: grid; place-items: center; width: 49px; height: 49px; color: var(--accent); border: 1px solid rgba(197,249,142,.19); background: rgba(197,249,142,.055); border-radius: 13px; }
.feature-icon svg { width: 28px; height: 28px; }
.feature-card h3 { margin: 22px 0 10px; font-size: 18px; letter-spacing: -.02em; }
.feature-card p { margin: 0; color: var(--soft); line-height: 1.7; font-size: 13px; max-width: 300px; }
.feature-status { color: #8fa79a; font-weight: 700; letter-spacing: .08em; font-size: 9px; text-transform: uppercase; margin-top: auto; padding-top: 24px; }
.closing { display: flex; align-items: center; gap: 27px; padding: 35px 35px 35px 39px; background: linear-gradient(100deg, rgba(197,249,142,.11), rgba(197,249,142,.035)); border: 1px solid rgba(197,249,142,.19); border-radius: 17px; }
.closing-star { color: var(--accent); font-size: 38px; flex: 0 0 auto; }
.closing h2 { margin: 0; font-size: 20px; letter-spacing: -.03em; }
.closing p { margin: 8px 0 0; font-size: 13px; line-height: 1.7; color: var(--soft); }
.closing-pill { display: inline-flex; align-items: center; gap: 11px; margin-left: auto; border: 1px solid rgba(197,249,142,.22); border-radius: 50px; color: var(--accent); padding: 12px 16px; font-size: 10px; font-weight: 800; letter-spacing: .09em; white-space: nowrap; }
.closing-pill .signal-dot { width: 6px; height: 6px; }
.site-footer { display: flex; justify-content: space-between; align-items: center; padding: 49px 0 57px; color: var(--muted); gap: 25px; }
.footer-brand { display: flex; align-items: center; gap: 15px; }
.footer-brand-name { color: #f0f9ed; font-size: 20px; font-weight: 800; letter-spacing: -.065em; }
.footer-brand-name span { color: var(--accent); }
.footer-line { font-size: 12px; }
.footer-right { display: flex; flex-wrap: wrap; align-items: center; gap: 11px; font-size: 11px; }
.footer-separator { color: #567266; }
@media (min-width: 1500px) { .hero { padding-top: 123px; padding-bottom: 125px; } }
@media (max-width: 1100px) { .site-shell { width: min(100% - 64px, 1100px); } .hero { gap: 35px; padding-top: 85px; } .hero h1 { font-size: clamp(48px, 5.9vw, 68px); } .hero-buttons { gap: 19px; } .float-note { right: -5px; } }
@media (max-width: 830px) { .site-header { min-height: 94px; } .hero { display: flex; flex-direction: column; align-items: stretch; padding-top: 70px; padding-bottom: 90px; gap: 20px; } .hero-content { padding-bottom: 20px; } .hero h1 { font-size: clamp(54px, 9vw, 83px); } .visual-column { width: min(100%, 590px); align-self: center; } .features-header { grid-template-columns: 1fr; gap: 15px; } .features-header p { justify-self: start; } .feature-card { padding: 23px 21px; } .float-note { bottom: -18px; } .closing { flex-wrap: wrap; } .closing-pill { margin-left: 65px; } }
@media (max-width: 620px) { .site-shell { width: calc(100% - 38px); } .site-header { min-height: 79px; } .brand-mark { width: 40px; height: 40px; border-radius: 11px; } .brand-mark svg { width: 33px; height: 33px; } .brand-word { font-size: 23px; } .header-actions { gap: 0; } .nav-link { display: none; } .language-select { gap: 0; } .lang-button { padding: 8px 8px; } .hero { padding-top: 64px; padding-bottom: 83px; gap: 14px; } .eyebrow { font-size: 10px; letter-spacing: .09em; } .hero h1 { font-size: clamp(43px, 10.9vw, 64px); margin: 26px 0 24px; } .hero-description { font-size: 16px; line-height: 1.75; } .hero-buttons { margin-top: 29px; gap: 21px; } .status-label { padding: 13px 15px; font-size: 12px; border-radius: 10px; } .status-icon { width: 21px; height: 21px; } .explore-link { font-size: 12px; } .hero-footnote { margin-top: 25px; font-size: 11px; line-height: 1.55; } .visual-column { padding: 17px 7px 18px 0; } .preview-window { border-radius: 18px; transform: rotate(1deg); } .preview-header { height: 46px; padding: 0 17px; } .preview-heading { font-size: 8px; } .route-illustration { height: 280px; } .floating-tag { padding: 9px 11px; font-size: 10px; } .preview-footer { padding: 15px 17px; } .mini-road-icon { width: 36px; height: 36px; font-size: 21px; } .preview-footer-kicker { font-size: 7px; } .preview-footer-title strong { font-size: 12px; } .float-note { bottom: -7px; right: -7px; padding: 9px 11px; font-size: 9px; } .float-note span:first-child { font-size: 15px; } .features { padding: 62px 0 60px; } .features h2 { font-size: 30px; } .features-header p { font-size: 13px; } .feature-grid { grid-template-columns: 1fr; gap: 12px; } .feature-card { min-height: auto; padding: 23px 23px; } .feature-card h3 { margin-top: 16px; } .feature-status { padding-top: 18px; } .closing { padding: 26px 23px; gap: 14px; } .closing-star { font-size: 29px; } .closing h2 { font-size: 18px; } .closing p { font-size: 12px; } .closing-pill { margin-left: 0; padding: 9px 12px; font-size: 9px; } .site-footer { padding: 36px 0 42px; flex-direction: column; align-items: start; gap: 17px; } .footer-brand { flex-direction: column; align-items: flex-start; gap: 5px; } }
@media (max-width: 365px) { .site-shell { width: calc(100% - 28px); } .brand-word { font-size: 21px; } .hero h1 { font-size: 42px; } .hero-buttons { gap: 14px; } .explore-link svg { width: 14px; } .float-note { right: -2px; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; } }
/* Keep decorative layers within the viewport and long translations readable. */
.page-glow--top { width: min(610px, 100vw); right: 0; }
.hero h1 { white-space: normal; overflow-wrap: break-word; }
@media (max-width: 830px) { .orbit { display: none; } }

/* Six-language switcher: segmented on wide screens, native selector on narrow screens. */
.language-compact { display: none; }
@media (max-width: 790px) {
  .header-actions { gap: 18px; }
  .language-select { display: none; }
  .language-compact { display: inline-flex; align-items: center; gap: 9px; max-width: 170px; border: 1px solid var(--line-strong); background: rgba(235,250,238,.045); border-radius: 11px; color: var(--accent); padding: 7px 10px; position: relative; }
  .language-compact svg { width: 17px; height: 17px; flex: 0 0 17px; }
  .language-compact select { min-width: 0; max-width: 119px; border: none; background: transparent; color: var(--white); cursor: pointer; padding: 4px 3px; font: inherit; font-size: 12px; font-weight: 700; appearance: none; flex: 1; }
  .language-compact option { background: #152727; color: #f5f9f3; }
  .language-compact .select-caret { font-size: 14px; line-height: 1; pointer-events: none; }
  .language-compact:focus-within { outline: 2px solid var(--accent); outline-offset: 3px; }
}
@media (max-width: 620px) {
  .language-compact { max-width: 142px; gap: 5px; padding: 6px 8px; }
  .language-compact select { max-width: 97px; font-size: 11px; }
}
@media (max-width: 365px) {
  .language-compact { max-width: 116px; }
  .language-compact select { max-width: 75px; }
}

/* Display the supplied original image at its natural proportions once installed. */
.brand-original { display:block; width:auto; height:auto; max-height:52px; max-width:min(210px, 48vw); object-fit:contain; }
@media (max-width:620px) { .brand-original { max-height:42px; max-width:145px; } }
@media (max-width:365px) { .brand-original { max-height:36px; max-width:115px; } }

/* Original supplied EuroFuel logo, preserved without cropping. */
.brand-mark { width:66px; height:66px; flex:0 0 66px; background:transparent; border:0; border-radius:0; }
.brand-mark img { display:block; width:100%; height:100%; object-fit:contain; }
@media (max-width:620px) { .brand-mark { width:50px; height:50px; flex-basis:50px; } }
@media (max-width:365px) { .brand-mark { width:44px; height:44px; flex-basis:44px; } }
