/* GRAINBUD, 02.10.2026: wyłącznie rodzina czcionki zgodna ze stopką Podpis. */
@font-face {
    font-family: 'GRAINBUD Didact';
    src: url('/build/assets/grainbud-didact-audyt4-20261002.woff2') format('woff2'), url('/media/grainbud-signature-20261002/didact-gothic.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

/* Warstwa !important obejmuje również wcześniejsze lokalne font-family.
   Nie definiujemy rozmiaru, grubości, interlinii, odstępów ani stylu tekstu.
   Właściwości font-weight i font-style w @font-face opisują plik regular;
   istniejące reguły pogrubień i kursywy na elementach pozostają w mocy.
   Ikony oparte na osobnym foncie i grafiki SVG zachowują własny krój. */
@layer grainbud-signature-font {
    html,
    body,
    body *:not(:where(
        svg, svg *,
        .fa, .fas, .far, .fab, .fal, .fad, .fat,
        .fa-solid, .fa-regular, .fa-brands, .fa-light, .fa-thin, .fa-duotone,
        .material-icons, .material-icons-outlined, .material-icons-round,
        .material-icons-sharp, .material-icons-two-tone,
        .material-symbols-outlined, .material-symbols-rounded, .material-symbols-sharp,
        .glyphicon, .bi, .iconfont, .icomoon
    )) {
        font-family: 'Century Gothic', CenturyGothic, 'GRAINBUD Didact', Arial, sans-serif !important;
    }
}

/* GRAINBUD: pasek kontaktowy i odstępy — 02.10.2026. */
@font-face {
    font-family: 'GRAINBUD Didact';
    src: url('/build/assets/grainbud-didact-audyt4-20261002.woff2') format('woff2'), url('/media/grainbud-signature-20261002/didact-gothic.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@layer grainbud-signature-font {
    body#gb-frontend #gb-site-header .gb-top-contact,
    body#gb-frontend #gb-site-header .gb-top-contact div,
    body#gb-frontend #gb-site-header .gb-top-contact a,
    body#gb-frontend #gb-site-header .gb-top-contact span {
        font-family: 'Century Gothic', CenturyGothic, 'GRAINBUD Didact', Arial, sans-serif !important;
    }
}
/* Skrócenie wyłącznie przerwy między filmami YouTube a artykułami. */
#gb-home #gh-youtube.gh-feed-youtube { padding-bottom: 36px; }
#gb-home .gh-articles { padding-top: 36px; }
/* Odstęp pomiędzy całymi parami NIP/REGON/KRS; etykiety i numery bez zmian. */
body#gb-frontend #gb-footer.gb-signature .gbs-register { column-gap: 10px; }
@media (max-width: 1000px) {
    #gb-home #gh-youtube.gh-feed-youtube { padding-bottom: 28px; }
    #gb-home .gh-articles { padding-top: 28px; }
}
@media (max-width: 640px) {
    #gb-home #gh-youtube.gh-feed-youtube { padding-bottom: 22px; }
    #gb-home .gh-articles { padding-top: 22px; }
}

/* GRAINBUD: dwa linki w istniejącym napisie górnego paska. */
#gb-frontend #gb-site-header .gb-top-contact__meta a.gb-audit3b-meta-link {
    display: inline;
    font: inherit;
    color: inherit;
    text-decoration: none;
}
#gb-frontend #gb-site-header .gb-top-contact__meta a.gb-audit3b-meta-link:hover,
#gb-frontend #gb-site-header .gb-top-contact__meta a.gb-audit3b-meta-link:focus-visible {
    text-decoration: underline;
    text-underline-offset: 3px;
}
#gb-frontend #gb-site-header .gb-top-contact__meta a.gb-audit3b-meta-link:focus-visible {
    outline: 2px solid #f6b900;
    outline-offset: 3px;
}

/* GRAINBUD: zwarty nagłówek i wspólny blok telefonu oraz e-maila. */
#gb-frontend #gb-site-header section.nav {
    top: 0 !important;
}
#gb-frontend #gb-site-header section.nav nav {
    padding-top: 24px;
}
#gb-frontend #gb-site-header section.nav .gb-header-contact {
    display: flex;
    flex: 0 0 auto;
    flex-direction: column;
    align-items: stretch;
    gap: 2px;
    min-width: 0;
    margin: 0 5px 0 0;
}
#gb-frontend #gb-site-header section.nav .gb-header-contact > .btnCta {
    display: block !important;
    margin: 0;
}
#gb-frontend #gb-site-header section.nav .gb-header-contact__email {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 32px;
    padding: 4px 6px;
    color: #fff;
    font-family: inherit;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;
    white-space: nowrap;
    text-decoration: none;
    transition: color .2s ease;
}
#gb-frontend #gb-site-header section.nav .gb-header-contact__email svg {
    display: block;
    flex: 0 0 16px;
    width: 16px;
    height: 16px;
    color: #fdc200;
}
#gb-frontend #gb-site-header section.nav .gb-header-contact__email:hover {
    color: #fdc200;
}
#gb-frontend #gb-site-header section.nav .gb-header-contact__email:focus-visible {
    outline: 3px solid #fdc200;
    outline-offset: 2px;
}
@media (max-width: 1120px) {
    #gb-frontend #gb-site-header section.nav nav {
        padding-top: 10px;
        padding-bottom: 8px;
        row-gap: 5px;
    }
    #gb-frontend #gb-site-header section.nav .gb-header-contact {
        grid-column: 1 / -1;
        grid-row: 2;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        width: 100%;
        margin: 0;
        padding-top: 5px;
        border-top: 1px solid rgba(255,255,255,.16);
    }
    #gb-frontend #gb-site-header section.nav .gb-header-contact > .btnCta {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        min-height: 44px;
        padding: 6px 12px;
        border-radius: 2px;
        transform: none;
    }
    #gb-frontend #gb-site-header section.nav .gb-header-contact > .btnCta span {
        gap: 0;
        font-size: 14px;
        transform: none;
    }
    #gb-frontend #gb-site-header section.nav .gb-header-contact > .btnCta span::after,
    #gb-frontend #gb-site-header section.nav .gb-header-contact > .btnCta img {
        display: none;
    }
    #gb-frontend #gb-site-header section.nav .gb-header-contact__email {
        min-height: 44px;
        padding: 4px 0;
        font-size: 14px;
    }
    #gb-frontend #gb-site-header section.nav nav > ul {
        grid-row: 3;
    }
}
@media (max-width: 359px) {
    #gb-frontend #gb-site-header section.nav .gb-header-contact > .btnCta {
        padding-inline: 8px;
    }
    #gb-frontend #gb-site-header section.nav .gb-header-contact > .btnCta span,
    #gb-frontend #gb-site-header section.nav .gb-header-contact__email {
        font-size: 13px;
    }
    #gb-frontend #gb-site-header section.nav .gb-header-contact__email {
        gap: 5px;
    }
    #gb-frontend #gb-site-header section.nav .gb-header-contact__email svg {
        width: 14px;
        height: 14px;
        flex-basis: 14px;
    }
}

/* Mobilnie: e-mail po lewej i telefon po prawej, nad logo i menu. */
#gb-frontend #gb-site-header section.nav .gb-header-contact__phone-icon {
    display: none;
}
@media (max-width: 1120px) {
    #gb-frontend #gb-site-header section.nav nav {
        padding-top: 6px;
        padding-bottom: 12px;
        row-gap: 10px;
    }
    #gb-frontend #gb-site-header section.nav .gb-header-contact {
        grid-row: 1;
        flex-direction: row-reverse;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        padding: 0 0 1px;
        border-top: 0;
        border-bottom: 1px solid rgba(255,255,255,.12);
    }
    #gb-frontend #gb-site-header section.nav nav > a:first-child,
    #gb-frontend #gb-site-header section.nav .gb-nav-toggle,
    #gb-frontend #gb-site-header section.nav .btn--hamburger {
        grid-row: 2;
    }
    #gb-frontend #gb-site-header section.nav nav > a:first-child {
        grid-column: 1;
    }
    #gb-frontend #gb-site-header section.nav .gb-nav-toggle,
    #gb-frontend #gb-site-header section.nav .btn--hamburger {
        grid-column: 2;
    }
    #gb-frontend #gb-site-header section.nav .gb-header-contact > .btnCta {
        min-height: 44px;
        padding: 0;
        border: 0;
        border-radius: 0;
        background: transparent;
        color: #fff;
    }
    #gb-frontend #gb-site-header section.nav .gb-header-contact > .btnCta span {
        gap: 7px;
        color: #fff;
        font-size: 13px;
        font-weight: 700;
        line-height: 1.4;
    }
    #gb-frontend #gb-site-header section.nav .gb-header-contact__phone-icon {
        display: block;
        flex: 0 0 18px;
        width: 18px;
        height: 18px;
        color: #fdc200;
    }
    #gb-frontend #gb-site-header section.nav .gb-header-contact__email {
        min-height: 44px;
        padding: 0;
        gap: 7px;
        font-size: 13px;
        font-weight: 700;
        line-height: 1.4;
    }
    #gb-frontend #gb-site-header section.nav .gb-header-contact__email svg {
        width: 18px;
        height: 18px;
        flex-basis: 18px;
    }
    #gb-frontend #gb-site-header section.nav .gb-header-contact > .btnCta:hover span,
    #gb-frontend #gb-site-header section.nav .gb-header-contact__email:hover {
        color: #fdc200;
    }
}

/* GRAINBUD 8: autentyczne zdjęcie zespołu na całym tle hero Praca. */
.gb-careers .gb-careers-hero {
    min-height: 590px;
    padding: 84px 0 66px;
    flex-direction: row;
    align-items: center;
    gap: 0;
    isolation: isolate;
}
.gb-careers .gb-careers-hero-bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    aspect-ratio: auto;
    order: initial;
}
.gb-careers .gb-careers-hero-bg picture {
    display: block;
    width: 100%;
    height: 100%;
}
.gb-careers .gb-careers-hero-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 61%;
}
.gb-careers .gb-careers-hero-bg::after {
    background:
        linear-gradient(90deg, rgba(12,16,14,.90) 0%, rgba(12,16,14,.78) 26%, rgba(12,16,14,.16) 55%, rgba(12,16,14,.08) 100%),
        linear-gradient(0deg, rgba(12,16,14,.22), transparent 45%);
}
.gb-careers .gb-careers-hero > .gb-careers-container {
    position: relative;
    order: initial;
    z-index: 1;
}
.gb-careers .gb-careers-hero-content {
    max-width: 445px;
}
.gb-careers .gb-careers-hero .gb-careers-lead {
    max-width: 430px;
    color: #f1f1ef;
}
@media (min-width: 1600px) {
    .gb-careers .gb-careers-hero { min-height: 640px; }
    .gb-careers .gb-careers-hero > .gb-careers-container { max-width: none; padding-inline: 5.8%; }
    .gb-careers .gb-careers-hero-bg img { object-position: 50% 59%; }
}
@media (max-width: 1120px) {
    .gb-careers .gb-careers-hero {
        min-height: 660px;
        padding: 32px 0 44px;
        align-items: flex-start;
    }
    .gb-careers .gb-careers-hero-content { max-width: 480px; }
    .gb-careers .gb-careers-hero-bg img { object-position: 55% 50%; }
    .gb-careers .gb-careers-hero-bg::after {
        background: linear-gradient(180deg, rgba(12,16,14,.90) 0%, rgba(12,16,14,.78) 29%, rgba(12,16,14,.12) 52%, rgba(12,16,14,.12) 100%);
    }
    .gb-careers .gb-careers-actions { flex-direction: row; align-items: center; }
    .gb-careers .gb-careers-btn { width: auto; }
}
@media (max-width: 650px) {
    .gb-careers .gb-careers-hero { min-height: 690px; padding: 27px 0 34px; }
    .gb-careers .gb-careers-hero-bg img { object-position: 55% 50%; }
    .gb-careers .gb-careers-hero-content { max-width: 100%; }
    .gb-careers .gb-careers-hero .gb-careers-lead { max-width: 420px; }
    .gb-careers .gb-careers-actions { gap: 9px; margin-top: 18px; }
    .gb-careers .gb-careers-btn { min-height: 44px; padding: 11px 13px; }
}
@media (max-width: 359px) {
    .gb-careers .gb-careers-hero { min-height: 735px; }
    .gb-careers .gb-careers-actions { gap: 8px; }
    .gb-careers .gb-careers-btn { padding-inline: 10px; font-size: 11px; }
}

/* GRAINBUD 9: prostokątny telefon wyrównany do logo i menu.
   Zmiana dotyczy wyłącznie desktopu; mobilny pasek kontaktu pozostaje bez zmian. */
@media (min-width: 1121px) {
    #gb-frontend #gb-site-header section.nav .gb-header-contact {
        position: relative;
        top: 17px;
    }
    #gb-frontend #gb-site-header section.nav .gb-header-contact > .btnCta,
    #gb-frontend #gb-site-header section.nav .gb-header-contact > .btnCta span,
    #gb-frontend #gb-site-header section.nav .gb-header-contact > .btnCta span::after {
        transform: none;
        border-radius: 0;
    }
    #gb-frontend #gb-site-header section.nav .gb-header-contact > .gb-header-contact__email {
        align-self: stretch;
        justify-content: center;
        width: 100% !important;
        box-sizing: border-box;
        text-align: center;
    }
}

/* GRAINBUD_AUDIO_9_20261002 */
#gb-home .gh-media-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;max-width:100%}
#gb-home .gh-media-actions .gh-video-toggle{font-family:inherit;white-space:nowrap}
#gb-home .gh-audio-toggle{min-width:135px}
#gb-home .gh-audio-toggle:disabled{opacity:.55;cursor:default}
#gb-home .gh-audio-toggle[aria-pressed="true"]{border-color:#f4be00;background:rgba(244,190,0,.18)}
#gb-home .gh-audio-status{flex-basis:100%;font:inherit;line-height:1.4;text-align:right;color:#fff}
#gb-home .gh-audio-status[hidden]{display:none}
@media(max-width:620px){#gb-home .gh-media-actions{justify-content:flex-start;gap:7px}#gb-home .gh-media-actions .gh-video-toggle{padding-inline:10px;font-size:11px;gap:6px}#gb-home .gh-audio-toggle{min-width:120px}#gb-home .gh-audio-status{text-align:left}}
@media(max-width:359px){#gb-home .gh-media-actions{gap:5px}#gb-home .gh-media-actions .gh-video-toggle{padding-inline:8px;font-size:10px}#gb-home .gh-audio-toggle{min-width:110px}}

/* GRAINBUD_MEDIA_ICONS_10_20261002 */
#gb-home .gh-media-actions{gap:10px}
#gb-home .gh-media-actions .gh-video-toggle{display:inline-flex;align-items:center;justify-content:center;flex:0 0 58px;width:58px;height:58px;min-width:58px;min-height:58px;padding:0;gap:0;border-radius:6px;line-height:1;color:#fff;background:rgba(11,20,25,.76);border:1px solid rgba(220,232,238,.6);transition:background-color .18s,border-color .18s,color .18s}
#gb-home .gh-media-actions .gh-video-toggle:hover:not(:disabled){border-color:#f4be00;background:rgba(40,35,16,.94)}
#gb-home .gh-media-actions .gh-video-toggle:focus-visible{outline:3px solid #f4be00;outline-offset:4px}
#gb-home .gh-media-actions .gh-audio-toggle[aria-pressed="true"]{color:#f4be00;border-color:#f4be00;background:rgba(244,190,0,.18)}
#gb-home .gh-media-actions .gh-video-toggle:disabled{opacity:.5;cursor:default}
#gb-home .gh-media-icon{display:block;width:32px;height:32px;flex:none;pointer-events:none}
#gb-home .gh-media-icon-spinner{transform-origin:12px 12px;animation:gb-media-icon-turn 1s linear infinite}
@keyframes gb-media-icon-turn{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){#gb-home .gh-media-icon-spinner{animation:none}#gb-home .gh-media-actions .gh-video-toggle{transition:none}}

/* GRAINBUD_MEDIA_OUTLINES_11_20261002 */
#gb-home .gh-media-actions{gap:6px}
#gb-home .gh-media-actions .gh-video-toggle{flex:0 0 44px;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:rgba(255,255,255,.8);transition:color .18s}
#gb-home .gh-media-actions .gh-video-toggle:hover:not(:disabled){border:0;background:transparent;color:#fff}
#gb-home .gh-media-actions .gh-audio-toggle[aria-pressed="true"]{border:0;background:transparent;color:rgba(255,255,255,.95)}
#gb-home .gh-media-actions .gh-video-toggle:focus-visible{outline:2px solid #f4be00;outline-offset:1px}
#gb-home .gh-media-actions .gh-video-toggle:disabled{opacity:.5}
#gb-home .gh-media-icon{width:24px;height:24px;stroke-width:1.5;filter:drop-shadow(0 1px 1px rgba(0,0,0,.25))}
#gb-home [data-gh-media-state="play"] .gh-media-icon path,#gb-home [data-gh-media-state="pause"] .gh-media-icon rect{fill:none;stroke:currentColor;stroke-width:1.5}
@media(prefers-reduced-motion:reduce){#gb-home .gh-media-actions .gh-video-toggle{transition:none}}

