
    :root {
      --bg: #08131f;
      --bg-soft: #0e1d2b;
      --panel: rgba(255,255,255,.055);
      --line: rgba(255,255,255,.11);
      --text: #f7f9fb;
      --muted: #a9b6c4;
      --accent: #e9a52e;
      --accent-soft: rgba(233,165,46,.13);
      --max: 1180px;
    }

    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }

    body {
      margin: 0;
      min-height: 100vh;
      font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      color: var(--text);
      background:
        radial-gradient(circle at 82% 18%, rgba(233,165,46,.11), transparent 24rem),
        radial-gradient(circle at 12% 90%, rgba(46,112,159,.15), transparent 28rem),
        linear-gradient(135deg, #06101a 0%, #0a1825 52%, #0c1d2c 100%);
      overflow-x: hidden;
    }

    body::before {
      content: "";
      position: fixed;
      inset: 0;
      pointer-events: none;
      opacity: .15;
      background-image:
        linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
      background-size: 44px 44px;
      mask-image: linear-gradient(to bottom, black, transparent 85%);
    }

    .wrap {
      width: min(calc(100% - 40px), var(--max));
      margin: 0 auto;
      position: relative;
      z-index: 1;
    }

    header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 20px;
      padding: 28px 0;
      border-bottom: 1px solid var(--line);
    }

    .brand {
      display: flex;
      align-items: center;
      gap: 13px;
      text-decoration: none;
      color: var(--text);
    }

    .brand-mark {
      width: 46px;
      height: 46px;
      display: grid;
      place-items: center;
      border: 1px solid rgba(233,165,46,.45);
      background: linear-gradient(145deg, rgba(233,165,46,.18), rgba(255,255,255,.03));
      border-radius: 13px;
      font-weight: 900;
      letter-spacing: -.07em;
      color: var(--accent);
      box-shadow: inset 0 0 20px rgba(233,165,46,.06);
    }

    .brand-copy strong {
      display: block;
      font-size: 17px;
      letter-spacing: .08em;
    }

    .brand-copy span {
      display: block;
      margin-top: 2px;
      color: var(--muted);
      font-size: 12px;
      letter-spacing: .14em;
      text-transform: uppercase;
    }

    main {
      padding: 84px 0 58px;
    }

    /* SEHO — ODSTĘP POD NAWIGACJĄ / STRONA GŁÓWNA
       W połączeniu z 30px wewnętrznego paddingu hero daje 60px
       do pierwszego napisu, tak samo jak na podstronach Usługi
       i Kontakt. Nie zmieniamy pozycji ani rozmiarów grafiki drogi. */
    body.home main#content {
      padding-top: 30px;
    }

    .hero {
      display: grid;
      grid-template-columns: 1.22fr .78fr;
      gap: 64px;
      align-items: center;
      min-height: 500px;
    }

    .eyebrow {
      display: inline-block;
      margin-bottom: 22px;
      color: var(--accent);
      font-weight: 800;
      font-size: 13px;
      letter-spacing: .16em;
      text-transform: uppercase;
    }

    h1 {
      margin: 0;
      max-width: 850px;
      font-size: clamp(44px, 7vw, 86px);
      line-height: .98;
      letter-spacing: -.055em;
    }

    h1 span {
      color: transparent;
      -webkit-text-stroke: 1px rgba(255,255,255,.42);
    }

    .lead {
      max-width: 740px;
      margin: 28px 0 0;
      color: #c4ced8;
      font-size: clamp(17px, 2vw, 20px);
      line-height: 1.7;
    }

    .values {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin-top: 34px;
    }

    .value {
      padding: 10px 13px;
      border-radius: 10px;
      background: var(--panel);
      border: 1px solid var(--line);
      color: #dfe6ec;
      font-size: 14px;
    }

    .visual {
      min-height: 390px;
      position: relative;
      border: 1px solid var(--line);
      border-radius: 28px;
      overflow: hidden;
      background:
        linear-gradient(145deg, rgba(255,255,255,.055), rgba(255,255,255,.012)),
        var(--bg-soft);
      box-shadow: 0 28px 80px rgba(0,0,0,.28);
    }

    .visual::before {
      content: "";
      position: absolute;
      inset: 0;
      background:
        linear-gradient(120deg, transparent 0 30%, rgba(233,165,46,.08) 30% 31%, transparent 31% 100%),
        linear-gradient(30deg, transparent 0 58%, rgba(255,255,255,.045) 58% 59%, transparent 59%);
    }

    .route {
      position: absolute;
      inset: 40px;
    }

    .route svg {
      width: 100%;
      height: 100%;
    }

    .visual-copy {
      position: absolute;
      left: 28px;
      right: 28px;
      bottom: 28px;
      padding-top: 18px;
      border-top: 1px solid var(--line);
    }

    .visual-copy strong {
      display: block;
      font-size: 22px;
      letter-spacing: -.025em;
    }

    .visual-copy span {
      display: block;
      margin-top: 8px;
      color: var(--muted);
      line-height: 1.5;
      font-size: 14px;
    }

    .about {
      display: grid;
      grid-template-columns: 1fr 1fr 1fr;
      gap: 14px;
      margin-top: 72px;
    }

    .card {
      padding: 26px;
      border-radius: 18px;
      background: var(--panel);
      border: 1px solid var(--line);
    }

    .card .num {
      color: var(--accent);
      font-weight: 900;
      font-size: 12px;
      letter-spacing: .13em;
    }

    .card h2 {
      margin: 10px 0 9px;
      font-size: 19px;
      letter-spacing: -.02em;
    }

    .card p {
      margin: 0;
      color: var(--muted);
      line-height: 1.65;
      font-size: 14px;
    }

    .building {
      margin-top: 66px;
      padding: 26px 0 0;
      border-top: 1px solid var(--line);
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 28px;
    }

    .building h3 {
      margin: 0;
      font-size: 20px;
    }

    .building p {
      margin: 6px 0 0;
      color: var(--muted);
      font-size: 14px;
    }

    footer {
      padding: 28px 0 34px;
      color: #788795;
      font-size: 12px;
    }

    @media (max-width: 860px) {
      main { padding-top: 58px; }
      /* Mobile: tak samo zwarty górny odstęp jak na pozostałych stronach. */
      body.home main#content { padding-top: 18px; }
      .hero {
        grid-template-columns: 1fr;
        gap: 36px;
      }
      .visual { min-height: 330px; }
      .about { grid-template-columns: 1fr; margin-top: 46px; }
      .building { align-items: flex-start; flex-direction: column; }
    }

    @media (max-width: 540px) {
      .wrap { width: min(calc(100% - 28px), var(--max)); }
      header { padding: 20px 0; }
      .brand-copy span { display: none; }
      h1 { font-size: 48px; }
      .lead { font-size: 16px; }
      .visual { min-height: 290px; }
      .route { inset: 28px; }
    }

    /* --- subtelne animacje --- */
    @keyframes dashMove {
      to { stroke-dashoffset: -68; }
    }

    @keyframes pulsePoint {
      0%, 100% { transform: scale(1); opacity: .9; }
      50% { transform: scale(1.45); opacity: .45; }
    }

    @keyframes floatBg {
      0%, 100% { transform: translate3d(0,0,0); }
      50% { transform: translate3d(0,-10px,0); }
    }

    .route-path {
      animation: dashMove 3.2s linear infinite;
    }

    .route-point {
      transform-box: fill-box;
      transform-origin: center;
      animation: pulsePoint 2.2s ease-in-out infinite;
    }

    .route-point.end { animation-delay: 1.1s; }

    .visual {
      transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
      will-change: transform;
    }

    .visual:hover {
      transform: translateY(-5px);
      box-shadow: 0 34px 90px rgba(0,0,0,.38);
      border-color: rgba(233,165,46,.28);
    }

    .card {
      transition: transform .28s ease, border-color .28s ease, background .28s ease;
    }

    .card:hover {
      transform: translateY(-5px);
      border-color: rgba(233,165,46,.28);
      background: rgba(255,255,255,.075);
    }

    .reveal {
      opacity: 0;
      transform: translateY(24px);
      transition: opacity .7s ease, transform .7s ease;
    }

    .reveal.is-visible {
      opacity: 1;
      transform: translateY(0);
    }

    .ambient {
      position: fixed;
      inset: 0;
      overflow: hidden;
      pointer-events: none;
      z-index: 0;
    }

    .ambient span {
      position: absolute;
      width: 4px;
      height: 4px;
      border-radius: 50%;
      background: rgba(233,165,46,.35);
      box-shadow: 0 0 18px rgba(233,165,46,.25);
      animation: floatBg 4.5s ease-in-out infinite;
    }

    .ambient span:nth-child(1) { left: 8%; top: 24%; animation-delay: .2s; }
    .ambient span:nth-child(2) { left: 21%; top: 72%; animation-delay: 1.1s; width: 3px; height: 3px; }
    .ambient span:nth-child(3) { left: 69%; top: 16%; animation-delay: 2s; }
    .ambient span:nth-child(4) { left: 84%; top: 64%; animation-delay: .7s; width: 5px; height: 5px; }
    .ambient span:nth-child(5) { left: 54%; top: 86%; animation-delay: 1.8s; width: 3px; height: 3px; }

    @media (prefers-reduced-motion: reduce) {
      *, *::before, *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
      }
    }

  
/* WordPress integration and refined logo branding */
.brand-mark {width:auto;height:auto;background:none;border:0;box-shadow:none;border-radius:0;display:block;}
.brand-image {display:block;width:210px;max-width:44vw;height:auto;object-fit:contain;}
.brand-copy {display:none;}
.brand {flex-shrink:0;}
.skip-link {position:absolute;top:-100px;left:12px;background:#fff;color:#06101a;padding:12px;z-index:100;}
.skip-link:focus {top:12px;}
.site-nav {display:flex;align-items:center;gap:20px;flex-wrap:wrap;}
.site-nav a {color:var(--text);text-decoration:none;font-size:13px;}
.site-nav a:hover,.site-nav a:focus {color:var(--accent);}
.site-nav .menu {display:flex;list-style:none;gap:18px;margin:0;padding:0;}
.site-nav .menu li {margin:0;}
.site-content-page {max-width:900px;margin:10px auto 80px;line-height:1.75;}
.site-content-page a,.entry-content a {color:var(--accent);}
.site-content-page h1 {font-size:clamp(36px,5vw,64px);line-height:1.05;margin-bottom:30px;}
.site-content-page img {max-width:100%;height:auto;}
.admin-bar .ambient{top:32px;}
.visual-road {position:absolute;right:-45px;top:-15px;width:94%;height:83%;object-fit:contain;opacity:.14;pointer-events:none;}
.wp-block-image img {height:auto;}
@media(max-width:860px){header {flex-wrap:wrap;} .site-nav {width:100%;} .site-nav .menu {flex-wrap:wrap;gap:12px;}}
@media(max-width:540px){.brand-image{width:165px;} .site-nav a{font-size:12px;}}

/* SEHO 1.0.3 — original isolated road artwork behind the hero; no boxed graphic */
.hero-with-road {position:relative; isolation:isolate; display:block; min-height:500px; padding:30px 0 30px; overflow:visible;}
.hero-with-road .hero-copy {position:relative; z-index:2; width:min(65%,760px);}
.hero-road {position:absolute; z-index:0; inset:0; pointer-events:none; overflow:visible;}
.hero-road img {position:absolute; display:block; max-width:none; width:var(--seho-road-size,108%); height:auto; right:var(--seho-road-x,-90px); top:var(--seho-road-y,-38px); opacity:var(--seho-road-opacity,76%); filter:drop-shadow(0 8px 20px rgba(0,0,0,.08));}
.hero-with-road h1 {position:relative; text-shadow:0 2px 20px rgba(6,16,26,.55);}
.hero-with-road .lead {text-shadow:0 2px 13px #071521;}
@media(max-width:860px){
 .hero-with-road {min-height:0; padding:18px 0 45px;}
 .hero-with-road .hero-copy {width:100%;}
 .hero-road {overflow:hidden; inset:-40px -20px -25px;}
 .hero-road img {width:var(--seho-road-mobile-size,120%);right:var(--seho-road-mobile-x,-60px);top:var(--seho-road-mobile-y,12px);opacity:var(--seho-road-mobile-opacity,27%);}
 .hero-with-road h1 {max-width:700px;}
}
@media(max-width:540px){
 .hero-with-road {padding:8px 0 40px;}
 .hero-with-road h1 {font-size:clamp(40px,10vw,56px);overflow-wrap:break-word;}
 .hero-with-road .lead {font-size:16px;line-height:1.7;}
 .hero-with-road .eyebrow {line-height:1.5;letter-spacing:.12em;}
 .hero-with-road .value {font-size:12px;}
 .hero-road {inset:-25px -14px -25px;}
}


/* SEHO 1.0.6: accessible expandable value clouds; original cards unchanged */
.seho-popovers { display:flex; flex-wrap:wrap; gap:10px; margin-top:34px; position:relative; z-index:10; align-items:flex-start; }
.seho-popover { position:relative; flex:0 0 auto; }
.seho-popover-trigger { display:flex; align-items:center; gap:13px; padding:11px 14px; border-radius:11px; background:rgba(255,255,255,.055); border:1px solid rgba(255,255,255,.15); color:#eef2f6; font-size:14px; cursor:pointer; list-style:none; transition:border-color .2s,background .2s,box-shadow .2s; user-select:none; }
.seho-popover-trigger::-webkit-details-marker {display:none;}
.seho-popover-trigger::marker {content:"";}
.seho-popover-trigger:hover,.seho-popover-trigger:focus-visible,.seho-popover[open]>.seho-popover-trigger { background:rgba(233,165,46,.13);border-color:rgba(233,165,46,.65);box-shadow:0 4px 22px rgba(0,0,0,.14); }
.seho-popover-trigger:focus-visible {outline:2px solid var(--accent);outline-offset:3px;}
.seho-popover-chevron { width:7px;height:7px;border-right:1.5px solid var(--accent);border-bottom:1.5px solid var(--accent);transform:rotate(45deg) translateY(-2px);transition:transform .2s;flex:none; }
.seho-popover[open] .seho-popover-chevron {transform:rotate(225deg) translateY(-1px);}
.seho-popover-panel { position:absolute; top:calc(100% + 12px); left:0; z-index:20; width:min(340px,calc(100vw - 36px)); padding:23px 24px; border-radius:18px; background:#182938; border:1px solid rgba(233,165,46,.40); box-shadow:0 22px 55px rgba(0,0,0,.47); animation:seho-cloud-appear .18s ease-out; }
.seho-popover-panel:before {content:"";position:absolute;top:-7px;left:24px;width:12px;height:12px;background:#182938;border-left:1px solid rgba(233,165,46,.40);border-top:1px solid rgba(233,165,46,.40);transform:rotate(45deg);}
.seho-popover-kicker { color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.10em; }
.seho-popover-panel h2 {margin:10px 0 8px;font-size:19px;line-height:1.25;color:#fff;letter-spacing:-.025em;}
.seho-popover-panel p {margin:0;color:#c2ced9;font-size:14px;line-height:1.65;}
@keyframes seho-cloud-appear {from{opacity:0;transform:translateY(-5px);}to{opacity:1;transform:translateY(0);}}
@media(max-width:860px){
 .seho-popovers {gap:9px;}
 .seho-popover-panel {width:min(320px,calc(100vw - 40px));}
}
@media(max-width:600px){
 .seho-popovers {display:grid;grid-template-columns:1fr;gap:9px;margin-top:25px;align-items:stretch;}
 .seho-popover {min-width:0;}
 .seho-popover-trigger {width:100%;justify-content:space-between;min-height:44px;}
 .seho-popover-panel {position:relative;top:auto;left:auto;width:100%;margin-top:8px;padding:18px 20px;box-shadow:0 12px 28px rgba(0,0,0,.24);}
 .seho-popover-panel:before {display:none;}
}
@media(prefers-reduced-motion:reduce){.seho-popover-panel{animation:none;}.seho-popover-trigger,.seho-popover-chevron{transition:none;}}

/* SEHO 1.0.7 — opened clouds occupy document flow, never overlap links below */
.seho-popovers {align-items:flex-start;}
.seho-popover {min-width:0;}
.seho-popover-panel {position:relative;top:auto;left:auto;width:340px;max-width:calc(100vw - 40px);margin-top:13px;z-index:20;}
.seho-popover[open] {z-index:21;}
.seho-action-grid {margin-top:46px;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;}
.seho-action {display:flex;position:relative;flex-direction:column;align-items:flex-start;justify-content:center;min-height:158px;padding:28px 30px;background:var(--panel);border:1px solid var(--line);border-radius:18px;text-decoration:none;color:var(--text);transition:transform .2s ease,border-color .2s ease,background .2s ease;}
.seho-action:hover,.seho-action:focus-visible {transform:translateY(-4px);border-color:var(--accent);background:rgba(255,255,255,.085);}
.seho-action:focus-visible {outline:2px solid var(--accent);outline-offset:3px;}
.seho-action-label {font-size:clamp(23px,2.3vw,32px);font-weight:800;letter-spacing:-.025em;}
.seho-action-description {font-size:13px;color:var(--muted);line-height:1.5;margin-top:12px;max-width:240px;}
.seho-action-arrow {position:absolute;right:25px;top:24px;color:var(--accent);font-size:24px;}
.site-nav .menu {align-items:center;gap:12px;}
.site-nav .menu a {display:inline-block;padding:10px 15px;border:1px solid transparent;border-radius:9px;font-size:14px;transition:background .2s,border-color .2s;}
.site-nav .menu a:hover,.site-nav .menu a:focus-visible,.site-nav .menu a[aria-current] {background:rgba(233,165,46,.10);border-color:rgba(233,165,46,.35);}
@media(max-width:860px){.seho-action-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}.seho-action{padding:21px 16px;min-height:145px;}.seho-action-arrow{right:12px;top:12px;}.site-nav .menu{gap:5px;}}
@media(max-width:600px){.seho-popovers{display:grid;grid-template-columns:1fr;}.seho-popover-panel{width:100%;max-width:none;}.seho-action-grid{grid-template-columns:1fr;gap:12px;margin-top:32px;}.seho-action{min-height:105px;padding:21px 23px;}.seho-action-label{font-size:24px;}.seho-action-description{margin-top:6px;max-width:none;}.site-nav .menu{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:2px;}.site-nav .menu a{font-size:13px;padding:9px 12px;}}

/* ===============================================================
   SEHO LOGISTIC — ROZWIJANE CHMURKI: RUCH SEKCJI (1.0.22)
   ===============================================================
   Gdy otworzy się chmurka, musimy zrobić dla niej miejsce.
   padding-bottom odsuwa trzy przyciski Usługi / Kariera / Kontakt.
   Czas .9s odpowiada za tempo odsuwania i powrotu przycisków.
   ease-in-out zapewnia łagodny start i koniec animacji.
   Szerokość przycisków chmurek jest stała i nie zmienia się.

   W celu dalszej regulacji:
   - .9s   -> czas rozsuwania dolnej sekcji;
   - .72s  -> czas pojawiania się samej chmurki (poniżej).
   =============================================================== */
@media (min-width: 601px) {
 .seho-popovers { align-items:flex-start; padding-bottom:var(--seho-open-space,0px); transition:padding-bottom .9s ease-in-out; }
 .seho-popover {position:relative; flex:0 0 auto; width:max-content; min-width:0; }
 .seho-popover-trigger { width:max-content; white-space:nowrap; }
 .seho-popover-panel {position:absolute; left:0;top:calc(100% + 12px);width:340px;max-width:min(340px,calc(100vw - 40px));margin-top:0; animation:seho-cloud-soft-in .72s ease-in-out both; }
 .seho-popover:last-child .seho-popover-panel { left:auto;right:0; }
 .seho-popover:last-child .seho-popover-panel:before {left:auto;right:24px;}
 /* Transparent cursor bridge prevents closing when moving between trigger and card. */
 .seho-popover[open]::after { content:"";position:absolute;left:0;right:0;top:100%;height:14px; }
}
@keyframes seho-cloud-soft-in {from{opacity:0;transform:translateY(-9px)}to{opacity:1;transform:translateY(0)}}
@media (max-width:600px) {
 .seho-popovers {padding-bottom:0!important;transition:none;}
 .seho-popover {width:100%;}
 .seho-popover-trigger {width:100%;}
 .seho-popover-panel {position:relative;top:auto;left:auto;right:auto;margin-top:9px;animation:seho-cloud-soft-in .65s ease-in-out both;}
}
@media(prefers-reduced-motion:reduce){.seho-popovers{transition:none!important}.seho-popover-panel{animation:none!important}}

/* 1.0.9 — more prominent navigation without changing page layout */
.site-nav .menu a {font-size:17px;font-weight:650;line-height:1.3;padding:12px 16px;letter-spacing:.005em;}
@media (max-width:860px) {.site-nav .menu a {font-size:16px;padding:11px 13px;}}
@media (max-width:600px) {.site-nav .menu a {font-size:15px;padding:10px 12px;}}

/* 1.0.10 bilingual menu */
.site-nav {display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:flex-end}
.seho-language-switch {display:inline-flex;align-items:center;gap:7px;white-space:nowrap;padding:7px 9px;border:1px solid var(--line);border-radius:9px;font-weight:700;font-size:14px;color:var(--muted)}
.seho-language-switch a {color:var(--muted);text-decoration:none;padding:4px 2px}
.seho-language-switch a[aria-current="true"] {color:var(--accent)}
.seho-language-switch a:hover,.seho-language-switch a:focus-visible {color:#fff}
@media(max-width:600px){.site-nav{gap:5px;justify-content:flex-end}.seho-language-switch{font-size:13px;padding:6px 8px}}

/* SEHO 1.0.11: subdued flag language selector */
.seho-language-switch.seho-switch-flags {gap:7px;padding:5px 7px;align-items:center}
.seho-switch-flags a {display:flex;align-items:center;justify-content:center;border-radius:5px;padding:5px;min-width:36px;min-height:32px;transition:background .2s ease,opacity .2s ease,transform .2s ease}
.seho-switch-flags a img {display:block;width:28px;height:19px;object-fit:cover;border-radius:2px;filter:saturate(.65) brightness(.78);opacity:.62;transition:filter .2s ease,opacity .2s ease}
.seho-switch-flags a[aria-current="true"] {background:rgba(233,165,46,.09)}
.seho-switch-flags a[aria-current="true"] img {filter:saturate(.8) brightness(.95);opacity:.95}
.seho-switch-flags a:hover img,.seho-switch-flags a:focus-visible img {filter:saturate(.95) brightness(1.08);opacity:1}
.seho-switch-flags a:focus-visible {outline:2px solid var(--accent);outline-offset:2px}
@media(max-width:600px) {.seho-switch-flags a{min-height:38px;min-width:40px}}


/* =============================================================
   SEHO LOGISTIC — STOPKA FIRMOWA / COMPANY FOOTER (v1.0.13)
   Plik: assets/css/main.css

   .seho-footer-grid    — dwie kolumny: dane firmy i kontakt
   .seho-footer-bottom  — automatyczny rok i prawa autorskie
   @media               — czytelne ułożenie na telefonach
   ============================================================= */
.seho-footer {
    margin-top: 54px;
    padding: 32px 0 34px;
    border-top: 1px solid var(--line);
    color: var(--muted);
    font-size: 14px;
}
.seho-footer-grid {
    display: grid;
    /*
     * Dwie kompaktowe kolumny wyrównane do lewej:
     * 1. Dane firmy zaczynają się na lewym brzegu kontenera.
     * 2. Kontakt rozpoczyna się tuż obok, a nie na środku/samym końcu strony.
     * Szerokość kolumn i odstęp można zmieniać poniżej bez edycji PHP.
     */
    /*
     * WERSJA 1.0.19 — kolumny odpowiadają szerokości realnej treści.
     * Pierwsza: dane firmy (~235 px). Druga: kontakt (~260 px).
     * 28 px to bezpieczny, niewielki odstęp zapobiegający nachodzeniu treści.
     * Prawa część stopki pozostaje wolna, np. na przyszłą mapę.
     */
    grid-template-columns: minmax(0, 235px) minmax(0, 260px);
    column-gap: 28px;   /* Zmień np. na 20px, aby zbliżyć kolumny. */
    row-gap: 28px;
    justify-content: start;
    padding-bottom: 30px;
}
.seho-footer h2 {
    margin: 0 0 18px;
    color: var(--accent);
    font-size: 15px;
    font-weight: 750;
    letter-spacing: .055em;
    text-transform: uppercase;
}
.seho-footer p { margin: 0 0 12px; line-height: 1.7; }
.seho-footer address { font-style: normal; line-height: 1.7; margin-bottom: 14px; }
.seho-footer-company-name { color: var(--text); font-weight: 700; }
.seho-footer-registration { font-size: 13px; }
.seho-footer-contact a { color: var(--text); text-decoration: none; overflow-wrap: anywhere; }
.seho-footer-contact a:hover,
.seho-footer-contact a:focus-visible { color: var(--accent); text-decoration: underline; }
.seho-footer-label { display: block; color: var(--muted); font-size: 12px; }
.seho-footer-bottom {
    border-top: 1px solid var(--line);
    padding-top: 22px;
    color: #8998a8;
    font-size: 12px;
}

/* ============================================================================
 * SEHO — STOPKA / ODNOSNIK POLITYKI PRYWATNOSCI (v1.0.47)
 *
 * Nie zmieniamy domyslnego koloru po odwiedzeniu strony ani na hover.
 * Kolor jest taki sam jak tekst stopki, niezaleznie od stanu lacza.
 * Jawna wartosc + !important neutralizuje reguly linkow z edytora WP
 * i reguly motywu. Dotyczy wylacznie odnośnika polityki prywatnosci.
 * ============================================================================ */
.seho-footer-bottom a.seho-footer-privacy,
.seho-footer-bottom a.seho-footer-privacy:link,
.seho-footer-bottom a.seho-footer-privacy:visited,
.seho-footer-bottom a.seho-footer-privacy:hover,
.seho-footer-bottom a.seho-footer-privacy:focus,
.seho-footer-bottom a.seho-footer-privacy:active {
    color: #8998a8 !important;
    -webkit-text-fill-color: #8998a8;
    text-decoration: underline;
    text-decoration-color: currentColor;
    text-underline-offset: 2px;
}
.seho-footer-bottom a.seho-footer-privacy:focus-visible {
    outline: 2px solid var(--accent);
    outline-offset: 3px;
}

/*
 * Na węższych ekranach pozostawiamy obie kolumny w jednym pionie.
 * Dzięki temu dane i telefony nie ściskają się na tablecie i telefonie.
 */
/*
 * Wersja mobilna: poniżej 640 px sekcje ustawią się w pionie.
 * Na tabletach 640–860 px pozostają obok siebie, jeśli jest miejsce.
 */
@media (max-width: 640px) {
    .seho-footer { margin-top: 38px; }
    .seho-footer-grid { grid-template-columns: minmax(0, 1fr); gap: 25px; }
}
@media (min-width: 641px) and (max-width: 860px) {
    .seho-footer-grid { grid-template-columns: minmax(0, 235px) minmax(0, 1fr); gap: 24px; }
}


/* ============================================================
   SEHO LOGISTIC — GRUPY KONTAKTOWE W STOPCE (OD WERSJI 1.0.14)
   ============================================================
   Kolejność ustalana w footer.php: Transport i spedycja → Biuro → kolejne.
   Opcjonalne e-maile i numery nie tworzą pustych wierszy.
   Wąskie ekrany: układ pionowy pozostaje bez zmian.
   ============================================================ */
.seho-footer-contact-group { margin-top: 15px; }
.seho-footer-contact-group + .seho-footer-contact-group { margin-top: 22px; }
.seho-footer-contact-group h3 {
    margin: 0 0 8px;
    font-size: 15px;
    font-weight: 700;
    color: var(--text);
}
.seho-footer-contact-group a {
    display: block;          /* E-mail i telefon w osobnych liniach. */
    width: fit-content;
    margin: 0 0 6px;
    line-height: 1.6;
}


/* ========================================================================
   SEHO LOGISTIC — PODSTRONA „USŁUGI” (1.0.24)
   Oddzielne selektory: nie modyfikujemy stylów strony głównej.
   Responsywność: 3 kolumny / 2 kolumny / 1 kolumna dla ładunków.
   ======================================================================== */
.seho-offer-page {width:min(100%,1180px);margin:0 auto;padding:60px 0 85px;color:#f6f8fb;}
.seho-offer-kicker {display:block;font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:#e9a52e;margin-bottom:15px;}
.seho-offer-intro h1 {font-size:clamp(42px,6vw,74px);letter-spacing:-.05em;margin:0 0 8px;line-height:1.06;}
.seho-offer-section {padding:42px 0 26px;}
.seho-offer-section-head {max-width:800px;margin-bottom:30px;}
.seho-offer-section-head h2 {font-size:clamp(30px,4vw,46px);letter-spacing:-.035em;line-height:1.1;margin:0 0 13px;}
.seho-offer-section-head p,.seho-vehicle-card p,.seho-cargo-card p {color:#b8c7d5;line-height:1.7;}
.seho-offer-section-head p {margin:0;font-size:17px;}
.seho-cargo-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;align-items:stretch;}
.seho-cargo-card {border:1px solid rgba(255,255,255,.13);border-radius:19px;background:rgba(255,255,255,.055);padding:27px;min-height:230px;transition:border-color .25s ease,transform .25s ease;}
.seho-cargo-card:hover {border-color:rgba(233,165,46,.65);transform:translateY(-3px);}
.seho-cargo-icon {height:79px;display:flex;align-items:center;margin-bottom:17px;}
.seho-cargo-icon img {width:76px;height:76px;object-fit:contain;}
.seho-cargo-card h3,.seho-vehicle-card h3 {font-size:19px;margin:0 0 8px;line-height:1.25;}
.seho-cargo-card p,.seho-vehicle-card p {font-size:14px;margin:0;}
.seho-vehicle-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
/* ===============================================================
   SEHO — POJAZDY / CHMURKI (v1.0.25)
   - Stała wysokość nagłówka z grafiką i nazwą.
   - Opis rozszerza kartę w dół, odsuwając następny rząd kart.
   - Bez nagłego skoku: animacja max-height + przezroczystość.
   - Przyciski pozostają nieruchome podczas najeżdżania.
   =============================================================== */
.seho-vehicle-card {
    min-width:0;
    border-radius:18px;
    background:rgba(255,255,255,.05);
    border:1px solid rgba(255,255,255,.12);
    align-self:start;
    overflow:hidden;
    transition:border-color .5s ease;
}
.seho-vehicle-card:hover,.seho-vehicle-card.is-open {border-color:rgba(233,165,46,.52);}
.seho-vehicle-trigger {
    display:grid;
    grid-template-columns:150px minmax(0,1fr) 19px;
    gap:20px;
    align-items:center;
    width:100%;min-height:170px;
    border:0;background:transparent;
    padding:22px;
    text-align:left;color:#f6f8fb;
    cursor:pointer;font:inherit;
}
.seho-vehicle-trigger:focus-visible {outline:2px solid #e9a52e;outline-offset:-4px;border-radius:16px;}
.seho-vehicle-image img {display:block;width:100%;max-height:120px;object-fit:contain;}
.seho-vehicle-name {font-size:19px;font-weight:700;line-height:1.3;}
.seho-vehicle-chevron {font-size:23px;color:#e9a52e;transition:transform .65s ease;}
.seho-vehicle-card.is-open .seho-vehicle-chevron {transform:rotate(180deg);}
/* max-height ustawiany jest przez JS według rzeczywistej wysokości tekstu. */
.seho-vehicle-reveal {height:0;opacity:0;overflow:hidden;transition:height .85s cubic-bezier(.22,.61,.36,1),opacity .7s ease;}
.seho-vehicle-card.is-open .seho-vehicle-reveal {opacity:1;}
.seho-vehicle-reveal-inner {padding:0 26px 26px;border-top:1px solid rgba(255,255,255,.075);}
.seho-vehicle-reveal-inner p {margin:17px 0 0;line-height:1.75;font-size:14px;color:#b8c7d5;}

.seho-offer-cta {margin-top:45px;padding:32px;border:1px solid rgba(233,165,46,.35);border-radius:18px;background:rgba(233,165,46,.07);display:flex;align-items:center;justify-content:space-between;gap:30px;}
.seho-offer-cta h2 {margin:0 0 9px;font-size:27px;}.seho-offer-cta p {margin:0;color:#b8c7d5;}
.seho-offer-cta-link {white-space:nowrap;padding:14px 20px;border-radius:10px;border:1px solid #b9872b;color:#f6f8fb;text-decoration:none;font-weight:700;}
.seho-offer-cta-link:hover {background:rgba(233,165,46,.15);color:#fff;}
@media(max-width:980px){.seho-cargo-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.seho-vehicle-grid{grid-template-columns:1fr;}}
@media(max-width:600px){.seho-offer-page{padding:36px 0 60px;}.seho-cargo-grid{grid-template-columns:1fr;}.seho-cargo-card{min-height:0;padding:22px;}.seho-vehicle-trigger{grid-template-columns:94px minmax(0,1fr) 16px;min-height:112px;padding:15px;gap:12px;}.seho-vehicle-name{font-size:16px;}.seho-vehicle-reveal-inner{padding:0 18px 20px;}.seho-offer-cta{flex-direction:column;align-items:start;padding:22px;}.seho-offer-cta-link{white-space:normal;}}
@media(prefers-reduced-motion:reduce){.seho-cargo-card{transition:none;}.seho-cargo-card:hover{transform:none;}}

/* Dostępność: przy ograniczonym ruchu pomijamy animacje rozwijania. */
@media(prefers-reduced-motion:reduce){.seho-vehicle-reveal,.seho-vehicle-chevron,.seho-vehicle-card{transition:none!important;}}


/* ========================================================================
   SEHO LOGISTIC — KARIERA / OGŁOSZENIA (v1.0.28)
   Osobne style dla /kariera/ — bez zmian strony głównej i oferty.
   Kafelki: 3 kolumny na dużych ekranach, 2 na tabletach, 1 na telefonach.
   ======================================================================== */
.seho-career-page { width:min(100%,1180px);margin:0 auto;padding:60px 0 85px;color:#f6f8fb; }
/* ========================================================================
   SEHO — KARIERA / NAGŁÓWEK STRONY (v1.0.29)
   Układ taki sam jak na podstronie Usługi: ścieżka, tytuł i motto
   w jednej kolumnie, zawsze wyrównane do lewej. Nie wpływa na menu.
   ======================================================================== */
.seho-career-hero {
    display: block;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0; /* Usuwa 28px paddingu dziedziczonego z ogólnego header. */
    border-bottom: 0; /* Linia oddzielająca dotyczy tylko nagłówka nawigacji. */
    text-align: left;
}
.seho-career-hero .seho-offer-kicker,
.seho-career-hero h1,
.seho-career-hero .seho-career-lead {
    text-align: left;
    margin-left: 0;
    margin-right: 0;
}
.seho-career-hero .seho-career-lead { max-width: 750px; }
.seho-career-hero h1 { font-size:clamp(42px,6vw,74px);line-height:1.06;letter-spacing:-.05em;margin:0 0 16px; }
.seho-career-lead { font-size:clamp(17px,2vw,21px);color:#c0ceda;margin:0; }
.seho-career-intro { max-width:850px;margin:38px 0 62px;color:#c3cfda;font-size:16px;line-height:1.8; }
.seho-career-intro h2 { color:#f7f9fb;font-size:clamp(24px,3vw,35px);line-height:1.2;margin:36px 0 15px; }
.seho-career-intro p { margin:0 0 20px; }
.seho-career-intro ul { padding-left:22px;margin:10px 0 23px; }
.seho-career-intro li { padding:4px 0; }
.seho-career-intro strong { color:#f7f9fb; }
.seho-career-jobs { padding-top:30px;border-top:1px solid rgba(255,255,255,.1); }
.seho-job-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px; }
.seho-job-card { display:flex;flex-direction:column;align-items:flex-start;min-height:210px;padding:25px;border:1px solid rgba(255,255,255,.13);border-radius:18px;background:rgba(255,255,255,.055);transition:border-color .25s ease,transform .25s ease; }
.seho-job-card:hover { border-color:rgba(233,165,46,.52);transform:translateY(-3px); }
.seho-job-card-icon { color:#e9a52e;font-size:24px;line-height:1;margin-bottom:15px; }
.seho-job-card h3 { font-size:19px;line-height:1.3;color:#fff;margin:0 0 11px; }
.seho-job-card p { font-size:14px;line-height:1.7;color:#b8c7d5;margin:0 0 23px; }
.seho-job-card a { display:inline-flex;gap:8px;color:#e9a52e;text-decoration:none;font-weight:700;font-size:14px;margin-top:auto; }
.seho-job-card a:hover { text-decoration:underline; }
.seho-job-card a:focus-visible { outline:2px solid #e9a52e;outline-offset:5px; }
.seho-career-empty { color:#b8c7d5;line-height:1.7;border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:21px;background:rgba(255,255,255,.035); }
@media(max-width:980px) { .seho-job-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .seho-career-page { padding:36px 0 60px; }.seho-job-grid { grid-template-columns:1fr; }.seho-job-card { min-height:0;padding:21px; } }
@media(prefers-reduced-motion:reduce) { .seho-job-card { transition:none; }.seho-job-card:hover { transform:none; } }


/* ================================================================
   SEHO — KONTAKT / 3 KOLUMNY, ZGODNE Z USŁUGAMI I KARIERĄ
   ================================================================ */
.seho-contact-page {width:min(100%,1180px);margin:0 auto;padding:60px 0 85px;color:#f6f8fb}
.seho-contact-hero h1{font-size:clamp(42px,6vw,74px);letter-spacing:-.05em;line-height:1.06;margin:0 0 12px}
.seho-contact-hero p{color:#c0ceda;font-size:clamp(17px,2vw,21px);margin:0}
.seho-contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:48px;align-items:start}
.seho-contact-panel{border:1px solid rgba(255,255,255,.13);border-radius:18px;background:rgba(255,255,255,.045);padding:27px;min-width:0}
.seho-contact-panel h2{font-size:clamp(21px,2vw,27px);line-height:1.2;margin:0 0 24px;color:#fff}
.seho-contact-panel h3{font-size:16px;color:#fff;margin:0 0 10px}
.seho-contact-panel address,.seho-contact-panel p{font-style:normal;color:#b8c7d5;line-height:1.8}
.seho-contact-company{margin:0 0 8px}.seho-contact-company strong{color:#fff}
/* SEHO — KONTAKT / REJESTR FIRMY
   Każdy numer w jednym wierszu: „NIP: 967...”.
   Nie używamy tabel, linii ani oddzielnych kolorów dla etykiet i wartości. */
.seho-contact-registry{margin:23px 0 0}
.seho-contact-registry>div{display:block;padding:3px 0;border:0}
.seho-contact-registry dt,.seho-contact-registry dd{display:inline;margin:0;color:#b8c7d5;font:inherit;overflow-wrap:anywhere;text-align:left}
.seho-contact-registry dt::after{content:": ";white-space:pre}
/* SEHO — KONTAKT / OSOBY: odstęp zamiast poziomego separatora. */
.seho-contact-person{margin-bottom:23px;padding-bottom:0;border:0}
.seho-contact-person:last-child{margin-bottom:0;padding-bottom:0;border:0}
.seho-contact-person a{display:block;color:#e9ad4a;text-decoration:none;overflow-wrap:anywhere;line-height:1.9}
.seho-contact-person a:hover{text-decoration:underline}
.seho-contact-form{display:grid;gap:15px}
.seho-contact-form>label{display:grid;gap:7px;color:#e7edf3;font-size:14px;font-weight:600}
.seho-contact-form input:not([type=checkbox]),.seho-contact-form textarea{width:100%;min-width:0;box-sizing:border-box;border:1px solid rgba(255,255,255,.19);border-radius:9px;background:#0c1c2b;color:#fff;padding:11px 12px;font:inherit;font-weight:400}
.seho-contact-form input:focus-visible,.seho-contact-form textarea:focus-visible{outline:2px solid #e9a52e;outline-offset:2px}
.seho-contact-consent{display:flex!important;align-items:flex-start;gap:10px!important;font-size:12px!important;line-height:1.5;font-weight:400!important;color:#b8c7d5!important}
.seho-contact-consent input{margin-top:3px;flex:none}
.seho-contact-form button{background:#d89b35;border:0;border-radius:9px;color:#08131f;font-weight:800;cursor:pointer;padding:13px 16px}
.seho-contact-form button:hover{background:#efb65b}
.seho-contact-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.seho-contact-notice{border:1px solid #b9872b;border-radius:8px;padding:10px;margin-bottom:18px!important}
.seho-contact-error{border-color:#c87979}
@media(max-width:980px){.seho-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.seho-contact-panel:last-child{grid-column:1/-1}}
@media(max-width:600px){.seho-contact-page{padding:36px 0 60px}.seho-contact-grid{grid-template-columns:1fr;margin-top:30px}.seho-contact-panel:last-child{grid-column:auto}.seho-contact-panel{padding:21px}}


/* ========================================================================
   SEHO — KONTAKT / UKŁAD ZGODNY Z PROJEKTEM (v1.0.32)

   Ważne: wspólny selektor `header` nadaje wszystkim nagłówkom display:flex.
   Nagłówek strony Kontakt musi go świadomie nadpisać, podobnie jak Kariera:
   ścieżka / tytuł / motto pionowo, wyrównane do lewej.
   Zmiany ograniczone do podstrony Kontakt, bez wpływu na menu witryny.
   ======================================================================== */
.seho-contact-page > .seho-contact-hero {
    display: block;
    width: 100%;
    max-width: 100%;
    padding: 0;
    margin: 0;
    text-align: left;
    border-bottom: 0;
}
.seho-contact-hero > .seho-offer-kicker,
.seho-contact-hero > h1,
.seho-contact-hero > p {
    display: block;
    width: auto;
    max-width: 750px;
    margin-left: 0;
    margin-right: 0;
    text-align: left;
}
.seho-contact-hero > .seho-offer-kicker { margin-bottom: 14px; }
.seho-contact-hero > h1 { margin-bottom: 13px; }
.seho-contact-hero > p { margin-top: 0; }

/* Trzy zwięzłe karty pod wspólnym nagłówkiem, jak w zatwierdzonej makiecie. */
.seho-contact-page .seho-contact-grid { margin-top: 28px; gap: 13px; align-items: stretch; }
.seho-contact-page .seho-contact-panel {
    background: rgba(255,255,255,.055);
    border-radius: 15px;
    padding: 22px;
}
.seho-contact-page .seho-contact-panel h2 {font-size:clamp(20px,2vw,25px);margin-bottom:19px;}
.seho-contact-page .seho-contact-panel h3 {font-size:15px;}
.seho-contact-page .seho-contact-form {gap:11px;}
.seho-contact-page .seho-contact-form > label {gap:5px;font-size:13px;}
.seho-contact-page .seho-contact-form input:not([type=checkbox]) {padding:9px 11px;}
.seho-contact-page .seho-contact-form textarea {padding:9px 11px;min-height:110px;}
.seho-contact-page .seho-contact-form button {padding:12px 14px;}

@media (max-width:980px) {
  .seho-contact-page .seho-contact-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:600px) {
  .seho-contact-page .seho-contact-grid {grid-template-columns:1fr;gap:13px;}
  .seho-contact-page .seho-contact-panel {padding:20px;}
}

/* ===============================================================
   SEHO — MENU / IKONA STRONY GŁÓWNEJ (v1.0.35)
   Ikona wektorowa SVG bez dodatkowych bibliotek, wspólny kolor akcentu.
   =============================================================== */
.seho-menu-home > a {display:inline-flex!important;align-items:center;gap:7px;}
.seho-home-symbol {display:inline-block;width:17px;height:17px;flex:0 0 17px;background-color:currentColor;
  -webkit-mask:url('../images/home.svg') center/contain no-repeat;
  mask:url('../images/home.svg') center/contain no-repeat;}


/* ================================================================
   SEHO — NAWIGACJA MOBILNA / HAMBURGER (v1.0.39)
   Komputer: menu zachowuje istniejące położenie i wygląd.
   Telefon: wiersz logo + PL/EN + hamburger, nawigacja poniżej.
   Widoczność i przejścia obsługuje klasa .is-open nadawana przez JS.
   ================================================================ */
.seho-mobile-controls {display:flex;align-items:center;gap:12px;flex-shrink:0;}
.seho-mobile-menu-toggle {display:none;}
@media (max-width:900px) {
  header {display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:12px;row-gap:0;padding:16px 0 12px;}
  header .brand {grid-column:1;grid-row:1;min-width:0;}
  header .brand-image {width:min(165px,100%);max-width:100%;}
  .seho-mobile-controls {grid-column:2;grid-row:1;display:flex;gap:9px;align-items:center;justify-content:flex-end;}
  .seho-language-switch {margin:0;flex-shrink:0;}
  .seho-mobile-menu-toggle {display:inline-flex;align-items:center;justify-content:center;position:relative;min-width:42px;min-height:42px;padding:8px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.035);color:var(--text);cursor:pointer;}
  .seho-mobile-menu-toggle:hover,.seho-mobile-menu-toggle:focus-visible {border-color:var(--accent);background:rgba(233,165,46,.09);outline-offset:3px;}
  .seho-menu-toggle-bars {display:grid;gap:5px;width:19px;}
  .seho-menu-toggle-bars span {height:2px;background:currentColor;border-radius:2px;transition:transform .24s ease,opacity .2s ease;}
  .seho-mobile-menu-toggle[aria-expanded="true"] .seho-menu-toggle-bars span:nth-child(1) {transform:translateY(7px) rotate(45deg);}
  .seho-mobile-menu-toggle[aria-expanded="true"] .seho-menu-toggle-bars span:nth-child(2) {opacity:0;}
  .seho-mobile-menu-toggle[aria-expanded="true"] .seho-menu-toggle-bars span:nth-child(3) {transform:translateY(-7px) rotate(-45deg);}
  header .site-nav {grid-column:1/-1;grid-row:2;width:100%;display:grid;grid-template-rows:0fr;visibility:hidden;opacity:0;pointer-events:none;transition:grid-template-rows .45s cubic-bezier(.22,.61,.36,1),opacity .35s ease,visibility .45s;gap:0;justify-content:stretch;}
  header .site-nav.is-open {grid-template-rows:1fr;visibility:visible;opacity:1;pointer-events:auto;}
  header .site-nav .menu {min-height:0;overflow:hidden;display:flex;flex-direction:column;align-items:stretch;justify-content:center;flex-wrap:nowrap;gap:4px;padding:0;margin:0;}
  header .site-nav.is-open .menu {padding:12px 0 5px;}
  header .site-nav .menu > li {width:100%;text-align:center;}
  header .site-nav .menu > li > a {display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;width:100%;font-size:15px;}
}
@media (prefers-reduced-motion:reduce) {
  .seho-mobile-menu-toggle .seho-menu-toggle-bars span,header .site-nav {transition:none!important;}
}

/* ================================================================
   SEHO — NAGŁÓWEK / BEZPIECZNE ŁAMANIE WIERSZY NA TELEFONACH
   v1.0.41

   Słowa "buduje zaufanie." są osobnym blokiem, a przeglądarka
   może je zawinąć tylko w miejscu spacji. Usuwa to problem
   dzielenia słowa "buduje" i nakładania obrysowanych liter.
   Zmiana NIE dotyczy wyglądu nagłówka na komputerach.
   ================================================================ */
@media (max-width:900px) {
  body.home .hero-with-road .hero-copy {
    width:100%;
    min-width:0;
    max-width:100%;
  }
  body.home .hero-with-road h1 {
    display:block;
    max-width:100%;
    font-size:clamp(30px,7.3vw,48px);
    line-height:1.18;
    letter-spacing:-.025em;
    overflow-wrap:normal;
    word-break:normal;
    hyphens:none;
    -webkit-hyphens:none;
  }
  body.home .hero-with-road h1 > span {
    display:block;
    max-width:100%;
    line-height:inherit;
    overflow-wrap:normal;
    word-break:normal;
    white-space:normal;
    hyphens:none;
    -webkit-hyphens:none;
  }
}
@media (max-width:420px) {
  body.home .hero-with-road h1 {
    font-size:clamp(28px,7.8vw,35px);
    line-height:1.24;
    letter-spacing:-.02em;
  }
  body.home .hero-with-road .eyebrow {
    font-size:11px;
    letter-spacing:.1em;
  }
}

/* ================================================================
   SEHO — HERO / MOBILNY SUBTELNY KONTUR (v1.0.43)

   Kontur przywrócony w bezpieczniejszej formie: ciemne wypełnienie
   pozostaje widoczne pod cienką obwódką, a dodatni letter-spacing
   rozdziela znaki na ekranach Androida. Żaden wyraz nie jest dzielony.
   Desktop pozostaje z oryginalnym konturowym napisem.
   ================================================================ */
@media (max-width:900px) {
  body.home .hero-with-road h1 {
    font-family: system-ui, -apple-system, "Segoe UI", sans-serif;
    font-kerning: normal;
    font-synthesis: none;
    letter-spacing: 0;
    line-height: 1.23;
  }
  body.home .hero-with-road h1 > span {
    display: block;
    color: #596c7a; /* zapas dla przeglądarek bez text-fill-color */
    -webkit-text-fill-color: #596c7a;
    -webkit-text-stroke: .55px #d7e0e8;
    letter-spacing: .018em;
    font-weight: 700;
    line-height: 1.3;
    text-shadow: none;
    word-break: normal;
    overflow-wrap: normal;
    hyphens: none;
  }
}
@media (max-width:420px) {
  body.home .hero-with-road h1 > span {
    font-size: .94em;
    letter-spacing: .012em;
  }
}

/* ================================================================
   SEHO — 404 / FOTOGRAFICZNA ZŁOTA TRASA (v1.0.49)

   Realny szablon WordPress: tekst, przyciski oraz nawigacja są
   interaktywne i dostępne dla czytników ekranu. Tło WEBP przedstawia
   wyłącznie scenę i nie ma tekstów ani elementów menu.
   Na telefonach obraz zostaje przesunięty poniżej tekstu, aby nie
   zasłaniał nagłówka. Cały ruch jest opcjonalny (reduced motion).
   ================================================================ */
body.error404 .seho-notfound-cinematic {
  position:relative;isolation:isolate;display:flex;align-items:center;
  min-height:clamp(590px,80vh,840px);padding:76px clamp(16px,4vw,58px) 90px;
  margin-inline:calc(-1 * clamp(0px,2vw,25px));overflow:hidden;
  background:#071421 url('../images/404-highway.webp') center center / cover no-repeat;
  border-radius:4px;
}
body.error404 .seho-notfound-cinematic::before {
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(90deg,rgba(7,20,33,.70) 0%,rgba(7,20,33,.44) 37%,rgba(7,20,33,.04) 75%);
}
body.error404 .seho-notfound-cinematic-ambient {
  position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(circle at 83% 28%,rgba(233,165,46,.25) 0 2px,transparent 3px),radial-gradient(circle at 11% 72%,rgba(233,165,46,.35) 0 2px,transparent 3px);
  animation:seho404Glimmer 7s ease-in-out infinite alternate;
}
body.error404 .seho-notfound-copy {position:relative;z-index:1;max-width:690px;}
body.error404 .seho-notfound-kicker {font-size:12px;letter-spacing:.2em;font-weight:800;color:#e9a52e;margin:0 0 24px;}
body.error404 .seho-notfound-code {font-size:clamp(112px,18vw,235px);font-weight:900;line-height:.95;letter-spacing:-.07em;color:#f7f9fb;margin:0 0 22px;text-shadow:0 10px 34px rgba(0,0,0,.26);}
body.error404 .seho-notfound-code span {color:#f4b334;text-shadow:0 0 32px rgba(244,179,52,.34);}
body.error404 .seho-notfound h1 {font-size:clamp(34px,4vw,58px);font-weight:800;letter-spacing:-.035em;line-height:1.12;margin:0 0 24px;color:#fff;max-width:670px;}
body.error404 .seho-notfound-message {font-size:clamp(16px,1.5vw,20px);line-height:1.65;color:#c8d3dd;max-width:610px;margin:0 0 32px;}
body.error404 .seho-notfound-actions {display:flex;flex-wrap:wrap;gap:14px;}
body.error404 .seho-notfound-button {display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:56px;padding:12px 24px;border:1px solid #d99a2d;border-radius:11px;text-decoration:none!important;font-size:15px;font-weight:750;transition:transform .25s ease,box-shadow .25s ease;}
body.error404 .seho-notfound-primary,body.error404 .seho-notfound-primary:visited {background:#e9a52e;color:#08131f;box-shadow:0 10px 35px rgba(233,165,46,.17);}
body.error404 .seho-notfound-secondary,body.error404 .seho-notfound-secondary:visited {background:rgba(8,20,32,.86);color:#fff;}
body.error404 .seho-notfound-button:hover {transform:translateY(-3px);box-shadow:0 12px 35px rgba(233,165,46,.25);}
body.error404 .seho-notfound-button:focus-visible {outline:2px solid white;outline-offset:4px;}
@keyframes seho404Glimmer {from {opacity:.45;transform:translateY(0);}to {opacity:1;transform:translateY(-8px);}}
@media(max-width:900px){
 body.error404 .seho-notfound-cinematic{min-height:680px;padding:60px 24px 260px;align-items:flex-start;background-position:62% center;}
 body.error404 .seho-notfound-cinematic::before{background:linear-gradient(180deg,rgba(7,20,33,.98) 0%,rgba(7,20,33,.91) 44%,rgba(7,20,33,.36) 100%);}
 body.error404 .seho-notfound-copy{max-width:580px;}
}
@media(max-width:520px){
 body.error404 .seho-notfound-cinematic{min-height:720px;padding:42px 20px 235px;background-position:61% bottom;}
 body.error404 .seho-notfound-code{font-size:clamp(106px,29vw,158px);}
 body.error404 .seho-notfound h1{font-size:clamp(32px,8vw,43px);}
 body.error404 .seho-notfound-actions{flex-direction:column;}
 body.error404 .seho-notfound-button{width:100%;}
}
@media(prefers-reduced-motion:reduce){body.error404 .seho-notfound-cinematic-ambient{animation:none;}body.error404 .seho-notfound-button{transition:none;}}


/* ================================================================
   SEHO — NAGŁÓWEK: PŁYNNA ZMIANA TŁA PO PRZEWINIĘCIU (v1.0.53)

   1. Na samej górze nagłówek i jego tło są przezroczyste.
   2. Gdy użytkownik przewija, JavaScript nadaje klasę is-scrolled.
   3. Pseudo-element ::before rozszerza tło NA CAŁE OKNO (100vw),
      choć zawartość logo i menu pozostaje wyrównana do .wrap.
   4. Sama nawigacja nadal ma position: sticky i pozostaje dostępna.
   5. Efekt zmienia tylko przezroczystość, więc nie przesuwa treści.
   ================================================================ */
header.seho-site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  isolation: isolate;
  background: transparent;
  box-shadow: none;
  border: 0;
  outline: 0;
  padding-block: 15px;
}
header.seho-site-header::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 100vw;
  width: 100dvw;
  transform: translateX(-50%);
  background: rgba(8, 19, 31, .93);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  box-shadow: 0 12px 28px rgba(0, 0, 0, .28);
  opacity: 0;
  pointer-events: none;
  z-index: -1;
  transition: opacity .28s ease;
}
header.seho-site-header.is-scrolled::before {
  opacity: 1;
}
header.seho-site-header::after {
  content: none;
  display: none;
}
@media (prefers-reduced-motion: reduce) {
  header.seho-site-header::before { transition: none; }
}
header.seho-site-header .brand-image {
  width: var(--seho-logo-desktop, 238px);
  max-width: min(45vw, 420px);
  height: auto;
}
body.admin-bar header.seho-site-header {top:32px;}
@media (max-width: 900px) {
  header.seho-site-header {padding-block: 12px;}
  header.seho-site-header .brand-image {
    width: min(var(--seho-logo-mobile, 180px), 49vw);
    max-width: 100%;
  }
}
@media (max-width: 782px) {
  body.admin-bar header.seho-site-header {top:46px;}
}
@media (max-width: 600px) {
  body.admin-bar header.seho-site-header {top:0;}
}
/* Na samej górze przezroczystość jest bezwarunkowa. */

/* =============================================================
   SEHO — STOPKA / MEDIA SPOŁECZNOŚCIOWE (v1.0.59)
   Ikony są umieszczone niżej — nad linią oddzielającą prawa autorskie.
   Dzięki temu dane firmy i kontakt pozostają u góry, a social media
   tworzą osobny, czytelny rząd wyrównany do prawej strony.
   ============================================================= */
.seho-footer-social-row {
    display: flex;
    justify-content: flex-end;
    padding: 2px 0 18px;
}
.seho-footer-social {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 13px;
}
.seho-footer-social a,
.seho-footer-social a:visited {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 39px;
    height: 39px;
    border-radius: 9px;
    color: #d6e0ea;
    background: transparent;
    text-decoration: none;
    transition: color .2s ease, background-color .2s ease, transform .2s ease;
}
.seho-footer-social a:hover,
.seho-footer-social a:focus-visible {
    color: var(--accent);
    background: rgba(255,255,255,.06);
    transform: translateY(-2px);
}
.seho-footer-social a:focus-visible {
    outline: 2px solid var(--accent);
    outline-offset: 3px;
}
@media (max-width: 860px) {
    .seho-footer-social-row { justify-content: flex-start; padding: 0 0 18px; }
    .seho-footer-social { justify-content: flex-start; }
}
@media (max-width: 640px) {
    .seho-footer-social-row { padding: 0 0 16px; }
}



/* ================================================================
   SEHO — WHATSAPP / PŁYWAJĄCA CHMURKA (v1.0.61)
   Ten element jest niezależny od stopki i przewija się z ekranem.
   Kolorystyka: granat + złoto, zgodnie z motywem SEHO.
   ================================================================ */
.seho-whatsapp-widget {
    position: fixed; right: max(38px, calc(env(safe-area-inset-right) + 24px));
    bottom: max(46px, calc(env(safe-area-inset-bottom) + 24px));
    z-index: 1100; display: flex; flex-direction: column;
    align-items: flex-end; gap: 9px; pointer-events: none;
}
.seho-whatsapp-button {
    display: flex; align-items: center; justify-content: center;
    width: 62px; height: 62px; border-radius: 50%;
    background: #102536; color: #fff !important;
    border: 1.5px solid #e9a52e;
    box-shadow: 0 4px 18px rgba(0,0,0,.35), 0 0 16px rgba(233,165,46,.13);
    transition: transform .22s ease, background-color .22s ease, box-shadow .22s ease;
    text-decoration: none; pointer-events: auto;
}
.seho-whatsapp-button:hover, .seho-whatsapp-button:focus-visible {
    transform: translateY(-3px); background: #17344c;
    box-shadow: 0 6px 22px rgba(0,0,0,.4), 0 0 19px rgba(233,165,46,.3);
}
.seho-whatsapp-button:focus-visible { outline: 2px solid #fff; outline-offset: 4px; }
.seho-whatsapp-tooltip {
    background: #102536; border: 1px solid #e9a52e;
    border-radius: 20px; padding: 8px 13px;
    color: #fff; font-size: 13px; font-weight: 650;
    box-shadow: 0 6px 14px rgba(0,0,0,.2);
    opacity: 0; transform: translateY(6px); transition: opacity .2s ease, transform .2s ease;
}
.seho-whatsapp-widget:hover .seho-whatsapp-tooltip,
.seho-whatsapp-widget:focus-within .seho-whatsapp-tooltip { opacity: 1; transform: translateY(0); }
@media(max-width: 600px) {
    .seho-whatsapp-widget { right: max(22px, calc(env(safe-area-inset-right) + 16px)); bottom: max(30px, calc(env(safe-area-inset-bottom) + 18px)); }
    .seho-whatsapp-button { width: 54px; height: 54px; }
    .seho-whatsapp-tooltip { display: none; }
}
@media(prefers-reduced-motion: reduce) { .seho-whatsapp-button, .seho-whatsapp-tooltip {transition:none;} }
