  /*
   * Variant A edasi: must päis BMW fotoga, valge leht. Premium: suurem kiri, rohkem õhku, õhukesed jooned.
   * Racing: laiem pealkirjakiri, päise all peen triip (helesinine, valge, helesinine), kolme kaldtriibu märk.
   */
  :root { --must:#111315; --must2:#1A1D20; --hall:#6B7177; --joon:#E6E8EA; --taust:#F4F5F6; --sinine:#11BBE5; --sinine-tume:#0A8DB3; --ease:cubic-bezier(.2,.7,.2,1); }
  * { box-sizing:border-box; }
  html { -webkit-text-size-adjust:100%; scroll-behavior:smooth; }
  body { margin:0; font-family:Archivo, Arial, sans-serif; color:var(--must); background:#fff; line-height:1.6; -webkit-font-smoothing:antialiased; }
  a { color:inherit; text-decoration:none; }
  img { display:block; max-width:100%; }
  .wrap { width:100%; max-width:1280px; margin:0 auto; padding:0 20px; }
  @media (min-width:900px) { .wrap { padding:0 48px; } }
  .lai { font-stretch:116%; font-variation-settings:"wdth" 116; }
  .vlai { font-stretch:125%; font-variation-settings:"wdth" 125; }
  .aegnr { font-stretch:116%; font-variation-settings:"wdth" 116; font-style:italic; font-variant-numeric:tabular-nums; }

  /* Kolm kaldtriipu pealkirja kohal */
  .marge b { font-weight:700; color:var(--must); font-style:italic; font-stretch:116%; font-variation-settings:"wdth" 116; }
  .must .marge b { color:#fff; }
  .marge { display:flex; align-items:center; gap:14px; font-size:13px; font-weight:600; color:var(--sinine-tume); margin:0 0 18px; }
  .marge::before { content:""; width:20px; height:12px; flex:none; transform:skewX(-28deg);
    background:linear-gradient(90deg, var(--sinine) 0 3px, transparent 3px 7px, var(--must) 7px 8px, transparent 8px 12px, var(--sinine) 12px 13px, transparent 13px); }
  .must .marge { color:var(--sinine); }
  .must .marge::before { background:linear-gradient(90deg, var(--sinine) 0 3px, transparent 3px 7px, #fff 7px 8px, transparent 8px 12px, var(--sinine) 12px 13px, transparent 13px); }

  .js .ilmu { opacity:0; transform:translateY(22px); transition:opacity .9s var(--ease), transform .9s var(--ease); }
  .js .ilmu.nahtav { opacity:1; transform:none; }
  @media (prefers-reduced-motion:reduce) { .js .ilmu { opacity:1; transform:none; transition:none; } }

  .nupp { display:inline-flex; align-items:center; justify-content:center; height:54px; padding:0 30px; font-weight:600; font-size:15px; transition:background .25s, color .25s, box-shadow .25s; }
  .nupp-valge, .nupp-must { clip-path:polygon(0 0, 100% 0, calc(100% - 16px) 100%, 0 100%); padding-right:42px; }
  .nupp-valge { background:#fff; color:var(--must); }
  .nupp-valge:hover { background:var(--sinine); }
  .nupp-joon { box-shadow:inset 0 0 0 1px rgba(255,255,255,.5); color:#fff; }
  .nupp-joon:hover { box-shadow:inset 0 0 0 1px #fff; }
  .nupp-must { background:var(--must); color:#fff; }
  .nupp-must:hover { background:#000; }
  .nupp-joon-must { box-shadow:inset 0 0 0 1px var(--joon); }

  h2 { font-size:clamp(32px, 6vw, 60px); line-height:1.04; font-weight:700; letter-spacing:-0.025em; margin:0; }
  h2 em { font-style:normal; color:var(--sinine-tume); }
  .must h2 em { color:var(--sinine); }
  .tekst { color:#4A5056; font-size:17px; font-weight:300; margin:20px 0 0; max-width:520px; }
  .must .tekst { color:#C9CDD0; }
  section { padding:80px 0; }
  @media (min-width:900px) { section { padding:140px 0; } }
  .must { background:var(--must); color:#fff; }
  @media (min-width:900px) { .kaitse, .lopp { clip-path:polygon(0 70px, 100% 0, 100% 100%, 0 100%); margin-top:-70px; padding-top:210px; position:relative; z-index:1; } }

  /* Menüü */
  .menyy { position:absolute; top:0; left:0; right:0; z-index:10; color:#fff; }
  .menyy .wrap { display:flex; align-items:center; justify-content:space-between; height:72px; }
  .menyy img { height:34px; width:auto; }
  .menyy nav { display:none; gap:34px; font-size:14px; font-weight:500; }
  .menyy nav a { opacity:.85; } .menyy nav a:hover { opacity:1; }
  .menyy .nupp { display:none; height:44px; padding:0 22px; font-size:14px; }
  .burger { width:44px; height:44px; display:flex; flex-direction:column; justify-content:center; align-items:flex-end; gap:6px; }
  .burger span { display:block; width:24px; height:2px; background:#fff; }
  @media (min-width:1000px) { .menyy .wrap { height:88px; } .menyy img { height:40px; } .menyy nav, .menyy .nupp { display:flex; } .burger { display:none; } }

  /* Päis (nagu variant A) */
  .pais { position:relative; overflow:hidden; background:var(--must); color:#fff; }
  .pais .foto { position:relative; height:54svh; min-height:330px; max-height:540px; overflow:hidden; }
  .pais .foto img { width:100%; height:100%; object-fit:cover; object-position:64% 58%; animation:suum 14s var(--ease) both; }
  @keyframes suum { from { transform:scale(1.08); } to { transform:scale(1); } }
  .pais .foto::after { content:""; position:absolute; inset:0; background:linear-gradient(to top, var(--must) 0%, var(--must) 8%, rgba(17,19,21,.85) 20%, rgba(17,19,21,0) 58%), linear-gradient(to bottom, rgba(17,19,21,.55), rgba(17,19,21,0) 30%); }
  .pais .sisu { position:relative; z-index:1; margin-top:-36px; padding-bottom:52px; }
  /* Tunnusrida: kolm kaldtriipu, teenus valgelt, pesulad hallilt peene joone taga */
  .pais .kicker { display:flex; align-items:center; gap:12px; font-size:13px; margin:0 0 18px; }
  .pais .kicker::before { content:""; width:20px; height:12px; flex:none; transform:skewX(-28deg);
    background:linear-gradient(90deg, var(--sinine) 0 3px, transparent 3px 7px, #fff 7px 8px, transparent 8px 12px, var(--sinine) 12px 13px, transparent 13px); }
  .pais .k-teenus { font-weight:600; color:#fff; font-stretch:116%; font-variation-settings:"wdth" 116; }
  .pais .k-kohad { color:#A7ADB2; padding-left:12px; border-left:1px solid rgba(255,255,255,.25); }
  .pais .k-kohad i { font-style:normal; color:var(--sinine); padding:0 3px; }
  @media (min-width:900px) { .pais .kicker { font-size:14px; } }
  .pais h1 { font-size:42px; line-height:1; font-weight:700; letter-spacing:-0.03em; margin:0; }
  .pais .lead { font-size:17px; font-weight:300; color:#D5D9DC; margin:18px 0 0; max-width:500px; }
  .pais .nupud { display:flex; flex-direction:column; gap:10px; margin-top:28px; }
  .usaldus { display:flex; flex-wrap:wrap; gap:6px 20px; margin-top:26px; font-size:13px; color:#A7ADB2; }
  .usaldus b { color:#fff; font-weight:600; }
  /* Läige: hele joon libiseb üks kord üle auto, nagu valgus poleeritud värvil */
  .laige { position:absolute; inset:0; z-index:1; pointer-events:none; overflow:hidden; }
  .laige::before { content:""; position:absolute; top:-20%; bottom:-20%; left:-30%; width:18%; transform:skewX(-20deg);
    background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.22), rgba(255,255,255,0)); animation:laige 2.4s var(--ease) 1.1s both; }
  @keyframes laige { from { left:-30%; } to { left:130%; } }
  @media (prefers-reduced-motion:reduce) { .laige::before { animation:none; display:none; } }
  /* Kolm kaldus püsttriipu päise vasakus servas */
  .m-triibud { display:none; }
  @media (min-width:900px) {
    .m-triibud { display:block; position:absolute; top:0; bottom:0; left:clamp(8px, calc(50vw - 640px), 200px); width:30px; z-index:2; transform:skewX(16deg); transform-origin:bottom;
      background:linear-gradient(90deg, rgba(17,187,229,.9) 0 4px, transparent 4px 9px, rgba(255,255,255,.55) 9px 10px, transparent 10px 14px, rgba(17,187,229,.55) 14px 15px, transparent 15px);
      -webkit-mask-image:linear-gradient(to top, transparent 0%, #000 18%, #000 60%, transparent 100%); mask-image:linear-gradient(to top, transparent 0%, #000 18%, #000 60%, transparent 100%);
      animation:m 1.4s cubic-bezier(.2,.7,.2,1) both .2s; }
  }
  @keyframes m { from { clip-path:inset(100% 0 0 0); } to { clip-path:inset(0 0 0 0); } }
  /* Võidusõidutriip päise allservas */
  .liin { position:absolute; left:0; right:0; bottom:0; height:4px; z-index:3; transform-origin:left;
    background:linear-gradient(to bottom, rgba(255,255,255,.35) 0 1px, transparent 1px 2px, var(--sinine) 2px 4px);
    -webkit-mask-image:linear-gradient(to right, #000 0%, #000 55%, transparent 100%); mask-image:linear-gradient(to right, #000 0%, #000 55%, transparent 100%);
    animation:liin 1.6s var(--ease) both .4s; }
  @keyframes liin { from { transform:scaleX(0); } to { transform:scaleX(1); } }
  @media (prefers-reduced-motion:reduce) { .pais .foto img, .liin, .m-triibud { animation:none; } }
  @media (min-width:900px) {
    .pais { min-height:780px; display:flex; align-items:flex-end; }
    .pais .foto { position:absolute; inset:0; height:auto; max-height:none; }
    .pais .foto img { object-position:62% 60%; }
    .pais .foto::after { background:linear-gradient(to right, rgba(17,19,21,.93) 22%, rgba(17,19,21,.15) 68%), linear-gradient(to top, rgba(17,19,21,.6), rgba(17,19,21,0) 40%); }
    .pais .sisu { margin-top:0; padding-top:140px; padding-bottom:96px; }
    .pais h1 { font-size:92px; letter-spacing:-0.035em; }
    .pais .lead { font-size:20px; margin-top:24px; }
    .pais .nupud { flex-direction:row; gap:12px; margin-top:36px; }
  }

  /* Numbrid */
  .numbrid { background:var(--must); color:#fff; }
  .numbrid .wrap { display:grid; grid-template-columns:repeat(2, 1fr); }
  .number { padding:26px 0; border-top:1px solid #26292C; }
  .number:nth-child(even) { padding-left:22px; border-left:1px solid #26292C; }
  .number b { display:block; font-size:34px; font-weight:700; line-height:1; letter-spacing:-0.02em; font-style:italic; }
  .number b em { font-style:inherit; color:var(--sinine); }
  .number span { display:block; font-size:12px; color:#8E959B; margin-top:10px; }
  @media (min-width:900px) {
    .numbrid .wrap { grid-template-columns:repeat(4, 1fr); }
    .number, .number:nth-child(even) { padding:44px 32px; border-left:1px solid #26292C; }
    .number:first-child { border-left:0; padding-left:0; }
    .number b { font-size:56px; } .number span { font-size:14px; }
  }

  /* Paketid ridadena */
  .pealkiri-rida { display:flex; flex-direction:column; gap:24px; }
  .pealkiri-rida .link { align-self:flex-start; font-size:15px; font-weight:600; border-bottom:1px solid var(--sinine); padding-bottom:4px; }
  @media (min-width:900px) { .pealkiri-rida { flex-direction:row; justify-content:space-between; align-items:flex-end; } }
  /* Sõiduki valik: kolm nuppu, valitud on must kaldus servaga */
  .soiduk { display:inline-flex; margin-top:40px; padding:4px; background:var(--taust); }
  .soiduk button { appearance:none; border:0; background:transparent; font:inherit; font-size:14px; font-weight:600; color:var(--hall); height:42px; padding:0 18px; cursor:pointer; transition:color .2s, background .2s; }
  .soiduk button.valitud { background:var(--must); color:#fff; clip-path:polygon(0 0, 100% 0, calc(100% - 10px) 100%, 0 100%); padding-right:26px; }
  @media (min-width:900px) { .soiduk button { padding:0 26px; } .soiduk button.valitud { padding-right:34px; } }
  .paketid { margin-top:28px; }
  .ryhm { margin:34px 0 0; padding-bottom:12px; font-size:12px; font-weight:600; color:var(--hall); border-bottom:1px solid var(--must); }
  .pakett { position:relative; display:grid; grid-template-columns:1fr auto; gap:6px 20px; align-items:start; padding:22px 0; border-bottom:1px solid var(--joon); }
  .pakett .nimi { display:flex; flex-wrap:wrap; align-items:baseline; gap:4px 14px; }
  .pakett h3 { margin:0; font-size:20px; line-height:1.25; font-weight:600; letter-spacing:-0.01em; transition:transform .5s var(--ease); }
  .pakett .ring { font-size:15px; font-weight:600; color:var(--sinine-tume); white-space:nowrap; }
  .pakett .ring small { font-size:11px; color:var(--hall); font-style:normal; }
  .pakett .pop { font-size:11px; font-weight:700; color:#fff; background:var(--must); padding:3px 12px 3px 8px; clip-path:polygon(0 0, 100% 0, calc(100% - 6px) 100%, 0 100%); }
  .pakett p { grid-column:1; margin:0; font-size:15px; color:var(--hall); }
  .pakett .hind { grid-column:2; grid-row:1 / span 2; align-self:center; font-size:26px; font-weight:700; letter-spacing:-0.02em; white-space:nowrap; text-align:right; font-style:italic; }
  .pakett .hind b { font-weight:inherit; display:inline-block; transition:transform .35s var(--ease), opacity .35s; }
  .pakett .hind b.vahetub { transform:translateY(-40%); opacity:0; }
  .pakett.esile::before { content:""; position:absolute; left:-20px; top:24px; bottom:24px; width:3px; background:var(--sinine); transform:skewX(-12deg); }
  .pakett::after { content:""; position:absolute; left:0; bottom:-1px; height:1px; width:0; background:var(--sinine); transition:width .8s var(--ease); }
  @media (hover:hover) { .pakett:hover::after { width:100%; } .pakett:hover h3 { transform:translateX(6px); } }
  @media (max-width:899px) { .pakett.esile { padding-left:16px; } .pakett.esile::before { left:3px; transform:skewX(-4deg); } }
  @media (min-width:900px) {
    .paketid { display:grid; grid-template-columns:1fr 1fr; column-gap:72px; }
    .ryhm { grid-column:1 / -1; margin-top:44px; }
    .pakett { padding:28px 0; }
    .pakett h3 { font-size:24px; }
    .pakett .hind { font-size:32px; }
  }
  .markus { font-size:13px; color:var(--hall); margin:22px 0 0; }

  /* Poleerimine ja kaitse */
  .kaitse .wrap { display:grid; gap:40px; align-items:center; }
  .kaitse .pilt { position:relative; }
  .kaitse .pilt img { width:100%; aspect-ratio:4/5; object-fit:cover; object-position:60% 25%; }
  .kaitse .pilt::after { content:""; position:absolute; left:0; right:0; bottom:0; height:3px;
    background:linear-gradient(to right, var(--sinine), rgba(17,187,229,0) 70%); }
  .kaitse ul { list-style:none; margin:30px 0 0; padding:0; border-bottom:1px solid #26292C; }
  .kaitse li { display:flex; justify-content:space-between; gap:16px; padding:18px 0; border-top:1px solid #26292C; font-size:16px; }
  .kaitse li span { color:#8E959B; font-size:14px; text-align:right; }
  .kaitse .nupud { display:flex; flex-direction:column; gap:10px; margin-top:32px; }
  @media (min-width:900px) { .kaitse .wrap { grid-template-columns:5fr 6fr; gap:96px; } .kaitse .nupud { flex-direction:row; } }

  /* Töö käik: ringi sektorid, joon täitub kerimisel */
  .sektorid-plokk { padding-bottom:100px; }
  .sektorid { position:relative; display:grid; gap:0; margin-top:52px; padding-left:28px; }
  .sektorid::before { content:""; position:absolute; left:6px; top:8px; bottom:8px; width:1px; background:var(--joon); }
  .sektorid::after { content:""; position:absolute; left:6px; top:8px; width:1px; height:calc((100% - 16px) * var(--taitu, 0)); background:var(--sinine); transition:height .2s linear; }
  .sektor { position:relative; padding:0 0 30px; }
  .sektor::before { content:""; position:absolute; left:-27px; top:7px; width:11px; height:11px; background:#fff; border:1px solid var(--must); transform:skewX(-14deg); }
  .sektor .s { font-size:14px; font-weight:700; color:var(--sinine-tume); }
  .sektor h3 { margin:4px 0 4px; font-size:22px; font-weight:600; }
  .sektor p { margin:0; color:var(--hall); font-size:15px; max-width:280px; }
  @media (min-width:900px) {
    .sektorid { grid-template-columns:repeat(4, 1fr); gap:40px; padding-left:0; padding-top:34px; margin-top:72px; }
    .sektorid::before { left:0; right:0; top:5px; bottom:auto; width:auto; height:1px; }
    .sektorid::after { left:0; top:5px; height:1px; width:calc(100% * var(--taitu, 0)); }
    .sektor { padding:0; }
    .sektor::before { left:0; top:-34px; }
    .sektor h3 { font-size:26px; }
  }
  /* Miks */
  .miks-read { display:grid; margin-top:52px; }
  .miks-rida { border-top:1px solid var(--joon); padding:24px 0; display:grid; grid-template-columns:52px 1fr; }
  .miks-rida .nr { font-size:13px; font-weight:600; color:var(--sinine-tume); padding-top:4px; }
  .miks-rida h3 { margin:0; font-size:20px; font-weight:600; }
  .miks-rida p { margin:6px 0 0; color:var(--hall); font-size:15px; }
  @media (min-width:900px) { .miks-read { grid-template-columns:repeat(3, 1fr); gap:56px; margin-top:88px; } .miks-rida { grid-template-columns:1fr; padding-top:30px; } .miks-rida .nr { margin-bottom:24px; } .miks-rida h3 { font-size:24px; } }
  .margid { margin-top:56px; display:flex; flex-wrap:wrap; gap:10px 30px; font-size:15px; font-weight:600; color:#A3A8AD; }

  /* Tsitaat */
  .tsitaat { background:var(--taust); }
  .tsitaat q { display:block; quotes:"„" "“"; font-size:clamp(24px, 4.2vw, 44px); line-height:1.25; font-weight:400; letter-spacing:-0.02em; max-width:1040px; }
  .tsitaat cite { display:block; margin-top:26px; font-style:normal; font-size:14px; color:var(--hall); }

  /* Pesulad */
  .pesulad { margin-top:52px; display:grid; border-bottom:1px solid var(--joon); }
  .pesula { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; padding:26px 0; border-top:1px solid var(--joon); }
  .pesula h3 { margin:0; font-size:26px; font-weight:700; letter-spacing:-0.02em; }
  .pesula p { margin:8px 0 0; color:var(--hall); font-size:15px; line-height:1.65; }
  .pesula a { font-size:14px; font-weight:600; white-space:nowrap; border-bottom:1px solid var(--sinine); padding-bottom:3px; }
  @media (min-width:900px) { .pesulad { grid-template-columns:repeat(3, 1fr); gap:56px; border-bottom:0; } .pesula { display:block; padding-top:30px; } .pesula h3 { font-size:34px; } .pesula a { display:inline-block; margin-top:22px; } }

  /* Lõpp */
  .lopp { position:relative; overflow:hidden; text-align:center; }
  .lopp .taust { position:absolute; inset:0; }
  .lopp .taust img { width:100%; height:100%; object-fit:cover; object-position:40% 60%; opacity:.25; }
  .lopp .taust::after { content:""; position:absolute; inset:0; background:radial-gradient(ellipse at center, rgba(17,19,21,.35), var(--must) 78%); }
  .lopp .wrap { position:relative; }
  .lopp .marge { justify-content:center; }
  .lopp .tekst { margin-left:auto; margin-right:auto; }
  .lopp .nupud { display:flex; flex-direction:column; gap:10px; margin:36px auto 0; max-width:340px; }
  @media (min-width:600px) { .lopp .nupud { flex-direction:row; justify-content:center; max-width:none; } }
  @media (min-width:900px) { .lopp { padding:180px 0; } }

  footer { background:var(--must); color:#8E959B; padding:44px 0 calc(44px + env(safe-area-inset-bottom)); font-size:13px; border-top:1px solid #24282B; }
  footer .wrap { display:flex; flex-direction:column; align-items:flex-start; gap:16px; }
  footer img { height:30px; width:auto; }
  @media (min-width:900px) { footer { padding-bottom:44px; } footer .wrap { flex-direction:row; justify-content:space-between; align-items:center; } }


  /* Päris lehe lisad: mobiilimenüü, ostukorv, nupu lähtestus, WordPressi halduse riba */
  body.allika-esileht { margin:0; }
  .burger { appearance:none; border:0; background:transparent; padding:0; cursor:pointer; color:#fff; }
  .burger span { transition:transform .3s, opacity .3s; }
  .menyy-lahti .burger span:nth-child(1) { transform:translateY(8px) rotate(45deg); }
  .menyy-lahti .burger span:nth-child(2) { opacity:0; }
  .menyy-lahti .burger span:nth-child(3) { transform:translateY(-8px) rotate(-45deg); }
  .menyy { z-index:50; }
  .menyy .paremal { display:flex; align-items:center; gap:18px; }
  .menyy .ikoon { display:flex; color:#fff; opacity:.85; }
  .menyy .ikoon:hover { opacity:1; }
  .mobiilimenyy { position:fixed; inset:0; z-index:45; background:var(--must); color:#fff; padding:96px 20px calc(40px + env(safe-area-inset-bottom)); overflow-y:auto; }
  .mobiilimenyy[hidden] { display:none; }
  .mobiilimenyy nav { display:flex; flex-direction:column; border-top:1px solid #26292C; }
  .mobiilimenyy nav a { font-size:22px; font-weight:600; padding:14px 0; border-bottom:1px solid #26292C; font-stretch:110%; font-variation-settings:"wdth" 110; }
  .mobiilimenyy nav a:first-child { color:var(--sinine); }
  .mobiilimenyy .mm-all { display:flex; flex-direction:column; gap:8px; margin-top:28px; font-size:15px; color:#A7ADB2; }
  .menyy-lahti { overflow:hidden; }
  @media (min-width:1000px) { .mobiilimenyy { display:none !important; } }
  body.admin-bar .menyy { top:46px; }
  @media (min-width:783px) { body.admin-bar .menyy { top:32px; } }
  .allika-esileht a { text-decoration:none; }
  .allika-esileht img { height:auto; }
  /* Logode suurus kindlaks (muidu võib mõni muu stiil need suureks venitada) */
  .allika-esileht .menyy .wrap > a img { height:34px !important; width:auto !important; max-width:none; }
  @media (min-width:1000px) { .allika-esileht .menyy .wrap > a img { height:40px !important; } }
  .allika-esileht footer img { height:30px !important; width:auto !important; max-width:none; }
  footer a:hover { color:#fff; }

  /* Poleerimise ploki hinnaread (klikitavad) */
  .kaitse ul.hinnad li { padding:0; }
  .kaitse ul.hinnad a { display:flex; justify-content:space-between; align-items:baseline; gap:16px; width:100%; padding:18px 0; color:#fff; transition:padding .3s; }
  .kaitse ul.hinnad a:hover { padding-left:8px; }
  .kaitse ul.hinnad span { color:#8E959B; font-size:14px; white-space:nowrap; }
  .kaitse ul.hinnad b { color:#fff; font-size:19px; font-weight:700; font-style:italic; font-stretch:116%; font-variation-settings:"wdth" 116; }
