:root{
  --af-green:#04CF1F;
  --af-bg:#070b09;
  --af-panel:#0d1210;
  --af-border:#26302b;
  --af-text:#f4f6f5;
  --af-muted:#a8b0ac;
  --af-max:1440px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--af-bg)}
body.af-site{margin:0!important;background:var(--af-bg)!important;color:var(--af-text)!important;font-family:"Manrope","Segoe UI",-apple-system,BlinkMacSystemFont,Arial,sans-serif!important;font-size:16px;line-height:1.5;overflow-x:hidden}
body.af-site a{text-decoration:none}
body.af-site img{max-width:100%;height:auto}
.af-skip{position:absolute;left:-9999px}.af-skip:focus{left:12px;top:12px;z-index:99999;background:#fff;color:#000;padding:10px 14px}

/* AUTO FINAL – valmis valikkopohja. Mitat vastaavat aiemmin hyväksyttyä valikkoa,
   mutta toteutus on tämän itsenäisen teeman oma eikä riipu Aqualinesta. */
body.af-site .af-topbar {
    --af-menu-green: #04cf1f;
    --af-menu-font: "Manrope", "Segoe UI", -apple-system, BlinkMacSystemFont, Arial, sans-serif;
    --af-menu-title: clamp(18px,1.55vw,23px);
    --af-menu-link: clamp(11px,.88vw,13px);
    --af-menu-small: 11px;
    position: relative;
    isolation: isolate;
    width: 100%;
    margin: 0;
    padding: 0;
    color: #f5f7f5;
    background: #080a09;
    border: 0;
    overflow: visible;
    font-family: var(--af-menu-font);
    font-weight: 300;
    font-style: normal;
    line-height: 1.2;
    letter-spacing: .06em;
    text-align: left;
    z-index: 1000;
}
body.af-site .af-topbar::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    pointer-events: none;
    background:
        linear-gradient(90deg,rgba(4,6,5,.92),rgba(7,9,8,.75) 30%,rgba(7,9,8,.66) 50%,rgba(7,9,8,.75) 70%,rgba(4,6,5,.92)),
        url("../img/menu-background.webp") center 50% / cover no-repeat;
}
body.af-site .af-topbar::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background: radial-gradient(circle at 50% 45%,rgba(4,207,31,.035),transparent 35%);
}
body.af-site .af-topbar,
body.af-site .af-topbar * { box-sizing: border-box; }
body.af-site .af-topbar a {
    margin: 0;
    border: 0;
    border-radius: 0;
    padding: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    text-decoration: none;
    text-transform: uppercase;
    box-shadow: none;
}
body.af-site .af-topbar a::before,
body.af-site .af-topbar a::after { content: none; }
body.af-site .af-topbar a { transition: color .16s ease, opacity .16s ease; }
body.af-site .af-topbar a:hover,
body.af-site .af-topbar a[aria-current="page"] { color: var(--af-menu-green); }
body.af-site .af-topbar a:focus-visible {
    outline: 2px solid var(--af-menu-green);
    outline-offset: 4px;
}
body.af-site .af-topbar nav {
    position: static;
    float: none;
    width: auto;
    height: auto;
    min-height: 0;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: none;
    box-shadow: none;
    font: inherit;
}

/* Desktop: kaksi yhtä vahvaa palvelupuolta ja logo keskellä. */
body.af-site .af-topbar__shell {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0,1fr) 272px minmax(0,1fr);
    grid-template-areas:
        "tires brand care"
        "main  main  main";
    align-items: center;
    column-gap: clamp(18px,2vw,28px);
    row-gap: 4px;
    width: min(100%,1280px);
    margin: 0 auto;
    padding: 14px 30px 7px;
}
body.af-site .af-topbar__shell::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -28px;
    height: 32px;
    pointer-events: none;
    background: linear-gradient(to bottom,rgba(8,10,9,.9),rgba(8,10,9,0));
}
body.af-site .af-topbar__wing {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    min-width: 0;
    min-height: 106px;
}
body.af-site .af-topbar__wing--tires { grid-area: tires; align-items: center; text-align: center; }
body.af-site .af-topbar__wing--care { grid-area: care; align-items: center; text-align: center; }
body.af-site .af-topbar__service {
    position: relative;
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding-bottom: 8px;
    color: #fff;
    font-size: var(--af-menu-title);
    font-weight: 400;
    letter-spacing: .115em;
    line-height: 1;
    white-space: nowrap;
}
body.af-site .af-topbar__service::after {
    content: "" !important;
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 42px;
    height: 1px;
    transform: translateX(-50%);
    background: rgba(4,207,31,.72);
}
body.af-site .af-topbar__links {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: 0;
    margin-top: 8px;
    max-width: 100%;
}
body.af-site .af-topbar__link {
    position: relative;
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 6px 5px;
    color: rgba(244,247,244,.82);
    font-size: var(--af-menu-link);
    font-weight: 300;
    letter-spacing: .08em;
    line-height: 1.15;
    white-space: nowrap;
}
body.af-site .af-topbar__links > * + *::before {
    content: "" !important;
    position: absolute;
    left: 0;
    top: 50%;
    width: 1px;
    height: 12px;
    transform: translateY(-50%);
    background: rgba(255,255,255,.18);
}
body.af-site .af-topbar__wing--tires .af-topbar__links > :last-child { padding-right: 0; }
body.af-site .af-topbar__wing--care .af-topbar__links > :first-child { padding-left: 0; }
body.af-site .af-topbar__brand {
    grid-area: brand;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-width: 0;
}
body.af-site .af-topbar__brandmark {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 300px;
    min-height: 94px;
    color: #fff;
    text-align: center;
    line-height: 1;
}
body.af-site .af-topbar__symbol-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin-bottom: 2px;
}
body.af-site img.af-topbar__symbol {
    display: block;
    width: auto;
    height: 84px;
    max-width: 100%;
    margin: 0;
    padding: 0;
    object-fit: contain;
    filter: drop-shadow(0 0 10px rgba(4,207,31,.08));
}
body.af-site img.af-topbar__wordmark {
    display: block;
    width: min(100%,196px);
    height: auto;
    margin: 1px 0 0;
    padding: 0;
}
body.af-site .af-topbar__tagline {
    display: block;
    margin-top: 1px;
    color: rgba(244,247,244,.54);
    font-size: 6px;
    font-weight: 300;
    letter-spacing: .34em;
    white-space: nowrap;
}
body.af-site .af-topbar__main {
    grid-area: main;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 26px;
    padding-top: 5px;
}
body.af-site .af-topbar__main::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: min(110px,30vw);
    height: 1px;
    transform: translateX(-50%);
    background: rgba(4,207,31,.24);
}
body.af-site .af-topbar__main-links {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    width: auto;
}
body.af-site .af-topbar__sep {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0 4px;
    color: rgba(244,247,244,.28);
    font-size: 11px;
    font-weight: 300;
    line-height: 1;
    pointer-events: none;
}
body.af-site .af-topbar__main-link {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 5px 14px;
    color: rgba(244,247,244,.68);
    font-size: var(--af-menu-small);
    font-weight: 300;
    letter-spacing: .12em;
    white-space: nowrap;
}
body.af-site .af-topbar__main-link:hover,
body.af-site .af-topbar__main-link:focus-visible,
body.af-site .af-topbar__main-link[aria-current="page"] { color: var(--af-menu-green); }

@media (max-width:1050px) and (min-width:761px) {
    body.af-site .af-topbar__shell {
        grid-template-columns: minmax(0,1fr) 235px minmax(0,1fr);
        column-gap: 14px;
        padding-left: 16px;
        padding-right: 16px;
    }
    body.af-site .af-topbar { --af-menu-link:10.5px; }
    body.af-site .af-topbar__link { padding-left:5px; padding-right:5px; letter-spacing:.065em; }
    body.af-site .af-topbar__brandmark { max-width:228px; min-height:92px; }
    body.af-site img.af-topbar__symbol { height:74px; }
    body.af-site img.af-topbar__wordmark { width:min(100%,172px); }
    body.af-site .af-topbar__tagline { font-size:7px; }
}

/* Puhelin/tabletti: logo ja yleiset linkit ensin, palvelut sen jälkeen. */
@media (max-width:760px) {
    body.af-site .af-topbar {
        --af-menu-title:18px;
        --af-menu-link:12px;
        --af-menu-small:10px;
    }
    body.af-site .af-topbar__shell {
        grid-template-columns:minmax(0,1fr) minmax(0,1fr);
        grid-template-areas:
            "brand brand"
            "main main"
            "tires care";
        align-items:start;
        column-gap:14px;
        row-gap:1px;
        max-width:680px;
        padding:9px 14px 9px;
    }
    body.af-site .af-topbar__brandmark { max-width:220px; min-height:82px; }
    body.af-site img.af-topbar__symbol { height:69px; }
    body.af-site img.af-topbar__wordmark { width:min(100%,158px); }
    body.af-site .af-topbar__tagline { display:none; }
    body.af-site .af-topbar__main { min-height:22px; margin-top:-2px; padding-top:6px; }
    body.af-site .af-topbar__main::before { width:min(92px,32vw); background:rgba(4,207,31,.24); }
    body.af-site .af-topbar__main-links { display:flex; align-items:center; justify-content:center; width:100%; min-width:0; }
    body.af-site .af-topbar__main-link { min-height:30px; padding:3px 3px; font-size:10px; letter-spacing:.07em; white-space:nowrap; }
    body.af-site .af-topbar__sep { flex:0 0 auto; margin:0 4px; color:rgba(244,247,244,.30); font-size:10px; }
    body.af-site .af-topbar__wing { min-height:0; align-self:start; align-items:center; justify-content:flex-start; padding-top:9px; text-align:center; }
    body.af-site .af-topbar__wing--tires { padding-right:7px; border-right:1px solid rgba(255,255,255,.08); }
    body.af-site .af-topbar__wing--care { padding-left:7px; }
    body.af-site .af-topbar__service { justify-content:center; min-height:36px; font-size:var(--af-menu-title); }
    body.af-site .af-topbar__links { display:grid; grid-template-columns:1fr; justify-content:stretch; width:100%; margin-top:4px; }
    body.af-site .af-topbar__link,
    body.af-site .af-topbar__wing--tires .af-topbar__links > :last-child,
    body.af-site .af-topbar__wing--care .af-topbar__links > :first-child {
        justify-content:center;
        width:100%;
        min-height:38px;
        padding:6px 4px;
        text-align:center;
        white-space:normal;
    }
    body.af-site .af-topbar__links > * + *::before {
        left:20%; right:20%; top:0; width:auto; height:1px; transform:none; background:rgba(255,255,255,.06);
    }
}
@media (max-width:390px) {
    body.af-site .af-topbar { --af-menu-title:16px; --af-menu-link:11px; --af-menu-small:9px; }
    body.af-site .af-topbar__brandmark { max-width:198px; min-height:74px; }
    body.af-site img.af-topbar__symbol { height:64px; }
    body.af-site img.af-topbar__wordmark { width:min(100%,148px); }
    body.af-site .af-topbar__shell { column-gap:8px; padding-left:9px; padding-right:9px; }
    body.af-site .af-topbar__main-link { padding-left:1px; padding-right:1px; font-size:9px; letter-spacing:.045em; }
    body.af-site .af-topbar__sep { margin-left:2px; margin-right:2px; font-size:9px; }
    body.af-site .af-topbar__wing--tires { padding-right:4px; }
    body.af-site .af-topbar__wing--care { padding-left:4px; }
}
@media (max-width:330px) {
    body.af-site .af-topbar__shell { grid-template-columns:1fr; grid-template-areas:"brand" "main" "tires" "care"; }
    body.af-site .af-topbar__wing--tires { border-right:0; border-bottom:1px solid rgba(255,255,255,.08); padding:8px 0 10px; }
    body.af-site .af-topbar__wing--care { padding:8px 0 0; }
}
@media (prefers-reduced-motion:reduce) { body.af-site .af-topbar a { transition:none; } }

/* OMA SIVU – mitään vanhaa etusivun post_contentia ei renderöidä. */
body.af-site .af-main{min-height:40vh!important;margin:0!important;padding:0!important;background:var(--af-bg)!important}
body.af-site .af-home-hero{min-height:520px;display:flex;align-items:center;margin:0!important;background:radial-gradient(circle at 76% 30%,rgba(4,207,31,.075),transparent 30%),linear-gradient(135deg,#070b09,#0c120e 62%,#070b09)}
body.af-site .af-home-hero__inner{width:min(100% - 56px,1180px);margin:0 auto;padding:72px 0 84px}
body.af-site .af-home-hero__eyebrow,body.af-site .af-clean-page__eyebrow{color:var(--af-green);font-size:12px;font-weight:800;letter-spacing:.16em}
body.af-site .af-home-hero h1{max-width:900px;margin:15px 0 18px;font-size:clamp(52px,6.2vw,92px);line-height:.96;letter-spacing:-.035em;color:#fff}
body.af-site .af-home-hero p{max-width:650px;margin:0;color:#aeb7b2;font-size:19px}
body.af-site .af-home-hero__actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
body.af-site .af-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border:1px solid #334038!important;font-size:12px;font-weight:800;letter-spacing:.05em;color:#fff!important}
body.af-site .af-btn--primary{background:var(--af-green)!important;border-color:var(--af-green)!important;color:#061008!important}
body.af-site .af-btn--ghost{background:#0b100d!important}
body.af-site .af-content-wrap{width:min(100% - 40px,var(--af-max));margin:0 auto;padding:42px 0}
body.af-site .af-clean-page{min-height:55vh;display:flex;align-items:center;background:linear-gradient(135deg,#070b09,#0d130f)}
body.af-site .af-clean-page__inner{width:min(100% - 48px,1180px);margin:auto;padding:70px 0}
body.af-site .af-clean-page h1{margin:12px 0 10px;font-size:clamp(40px,5vw,72px);line-height:1;color:#fff}
body.af-site .af-clean-page p{margin:0;color:var(--af-muted);font-size:18px}

/* Footer */
body.af-site .af-footer{background:#060907!important;border-top:1px solid #1d2722!important}
body.af-site .af-footer-line{height:2px;background:var(--af-green)}
body.af-site .af-footer-inner{max-width:var(--af-max);margin:auto;min-height:124px;padding:26px 38px;display:grid;grid-template-columns:1fr 1.5fr .9fr 1.2fr 1.25fr 76px;gap:26px;align-items:center}
body.af-site .af-footer-item{display:flex;align-items:center;gap:12px;color:#d9dedb}body.af-site .af-footer-item small{display:block;color:#909b95;font-size:10px;font-weight:700;letter-spacing:.08em;margin-bottom:2px}body.af-site .af-footer-item a,body.af-site .af-footer-item span{font-size:13px;color:#d9dedb!important}.af-footer-icon{color:var(--af-green)!important;font-size:28px!important}.af-footer-logo{text-align:center}.af-footer-logo img{width:110px!important;max-height:76px!important;object-fit:contain!important}.af-back-top{display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--af-green)!important;font-size:28px}.af-back-top small{font-size:9px;color:#dfe5e1}.af-footer-bottom{border-top:1px solid #18201c;max-width:var(--af-max);margin:auto;padding:14px 38px 18px;display:flex;justify-content:space-between;gap:20px;color:#7f8a84;font-size:11px}.af-footer-bottom nav{display:flex;gap:18px}

@media(max-width:1050px) and (min-width:761px){
 body.af-site .af-topbar__shell{grid-template-columns:minmax(0,1fr) 205px minmax(0,1fr)!important;column-gap:10px!important;padding-left:14px!important;padding-right:14px!important}
 body.af-site .af-topbar{--af-menu-link:9.8px}
 body.af-site .af-topbar__link{padding-left:5px!important;padding-right:5px!important;letter-spacing:.055em!important}
 body.af-site .af-topbar__brandmark{width:190px!important;max-width:190px!important;min-width:190px!important}
 body.af-site .af-topbar__symbol-wrap{height:62px!important}body.af-site img.af-topbar__symbol{height:62px!important;max-width:84px!important}body.af-site img.af-topbar__wordmark{width:152px!important;max-width:152px!important}
}
@media(max-width:760px){
 body.af-site .af-topbar{--af-menu-title:16px;--af-menu-link:11px}
 body.af-site .af-topbar__shell{grid-template-columns:1fr 1fr!important;grid-template-areas:"brand brand" "main main" "tires care"!important;column-gap:10px!important;row-gap:0!important;padding:8px 10px 9px!important}
 body.af-site .af-topbar__brandmark{width:150px!important;max-width:150px!important;min-width:150px!important;min-height:76px!important}
 body.af-site .af-topbar__symbol-wrap{height:52px!important}body.af-site img.af-topbar__symbol{height:52px!important;max-width:72px!important}body.af-site img.af-topbar__wordmark{width:126px!important;max-width:126px!important}body.af-site .af-topbar__tagline{display:none!important}
 body.af-site .af-topbar__main{min-height:21px!important;padding-top:4px!important}body.af-site .af-topbar__main-link{min-height:28px!important;padding:3px 3px!important;font-size:9px!important;letter-spacing:.055em!important}body.af-site .af-topbar__sep{margin:0 2px!important;font-size:9px!important}
 body.af-site .af-topbar__wing{min-height:0!important;padding-top:8px!important;justify-content:flex-start!important}body.af-site .af-topbar__wing--tires{padding-right:5px!important;border-right:1px solid rgba(255,255,255,.08)!important}body.af-site .af-topbar__wing--care{padding-left:5px!important}
 body.af-site .af-topbar__service{min-height:32px!important;font-size:16px!important}body.af-site .af-topbar__links{display:grid!important;grid-template-columns:1fr!important;width:100%!important;margin-top:2px!important}body.af-site .af-topbar__link{width:100%!important;min-height:34px!important;padding:5px 3px!important;white-space:normal!important;text-align:center!important}body.af-site .af-topbar__links>*+*::before{left:22%!important;right:22%!important;top:0!important;width:auto!important;height:1px!important;transform:none!important;background:rgba(255,255,255,.06)!important}
 body.af-site .af-home-hero{min-height:430px}body.af-site .af-home-hero__inner{width:calc(100% - 30px);padding:54px 0 64px}body.af-site .af-home-hero h1{font-size:clamp(46px,13vw,68px)}body.af-site .af-home-hero p{font-size:16px}.af-home-hero__actions{flex-direction:column;align-items:flex-start}
 body.af-site .af-footer-inner{padding:24px 20px;grid-template-columns:1fr;gap:20px}.af-footer-logo{order:-1}.af-footer-item{justify-content:center;text-align:center}.af-footer-bottom{padding:14px 20px 24px;flex-direction:column;text-align:center;align-items:center}.af-footer-bottom nav{flex-wrap:wrap;justify-content:center}
}
@media(max-width:350px){body.af-site .af-topbar__shell{grid-template-columns:1fr!important;grid-template-areas:"brand" "main" "tires" "care"!important}body.af-site .af-topbar__wing--tires{border-right:0!important;border-bottom:1px solid rgba(255,255,255,.08)!important;padding:7px 0 9px!important}body.af-site .af-topbar__wing--care{padding:7px 0 0!important}}


/* Auto Final – Rengaspalveluiden hinnasto: sivupohjan ympärillä ei ole ylimääräisiä välejä. */
body.af-site.af-template-rengashinnasto .af-main{background:#050806!important}
body.af-site.af-template-rengashinnasto .af-page--pricing{margin:0!important;padding:0!important;background:#050806!important}
body.af-site.af-template-rengashinnasto .af-page--pricing>.af-tire-pricing{left:0!important;width:100%!important;max-width:100%!important;margin:0!important}
body.af-site.af-template-rengashinnasto .af-company-footer{display:none!important}
body.af-site.af-template-rengashinnasto .af-plugin-missing{min-height:48vh;display:flex;align-items:center}
body.af-site.af-template-rengashinnasto .af-plugin-missing__admin{margin-top:14px;color:#8f9b94;font-size:13px}

/* Auto Final – Manrope on teeman oletusfontti. Lisäosat saavat käyttää omia fonttejaan. */
body.af-site {
  font-family: "Manrope", "Segoe UI", Arial, sans-serif !important;
}
body.af-site .af-aq-header,
body.af-site .af-aq-header *,
body.af-site .af-footer,
body.af-site .af-footer *,
body.af-site .af-home-hero,
body.af-site .af-home-hero *,
body.af-site .af-clean-page,
body.af-site .af-clean-page * {
  font-family: "Manrope", "Segoe UI", Arial, sans-serif !important;
}

/* Yleinen täysleveä sisältöpohja lisäosille ja omille upotuksille. */
body.page-template-template-full-content .af-main {
  padding: 0 !important;
  margin: 0 !important;
}
body.page-template-template-full-content .af-full-content-page {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}

/* 0.5.1 — Manrope is the site-wide Auto Final typeface. */
body.af-site,
body.af-site button,
body.af-site input,
body.af-site select,
body.af-site textarea,
body.af-site table,
body.af-site th,
body.af-site td,
body.af-site .af-main,
body.af-site .af-footer,
body.af-site .af-footer * {
  font-family: "Manrope", "Segoe UI", Arial, sans-serif !important;
}
