/* Dynamic/contact icons included in the local MDI font subset. */
.mdi-account-multiple-outline::before { content: "\F000F"; }
.mdi-phone-in-talk::before { content: "\F03F6"; }

:root {
        color-scheme: light;
        --wg-primary: 14 116 144;
        --wg-primary-dark: 8 83 107;
        --wg-primary-soft: 224 245 249;
        --wg-secondary: 18 40 58;
        --wg-accent: 238 123 53;
        --wg-success: 28 135 92;
        --wg-error: 198 52 70;
        --wg-warning: 216 139 18;
        --wg-background: 246 248 250;
        --wg-surface: 255 255 255;
        --wg-surface-alt: 237 242 245;
        --wg-on-surface: 23 38 48;
        --wg-muted: 92 109 120;
        --wg-border: 205 216 222;
        --wg-focus: 238 123 53;
        --wg-shadow-sm: 0 2px 8px rgb(18 40 58 / 0.07);
        --wg-shadow-md: 0 12px 32px rgb(18 40 58 / 0.11);
        --wg-shadow-lg: 0 22px 56px rgb(18 40 58 / 0.17);
        --wg-radius-sm: 0.55rem;
        --wg-radius: 0.9rem;
        --wg-radius-lg: 1.35rem;
        --wg-container: 1320px;
        --wg-font-body: "Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;
        --wg-font-display: "Rubik", "Manrope", system-ui, sans-serif;
        --wg-ease: cubic-bezier(0.22, 0.61, 0.36, 1);
        --mdb-primary: rgb(var(--wg-primary));
        --mdb-primary-rgb: 14, 116, 144;
        --mdb-body-color: rgb(var(--wg-on-surface));
        --mdb-body-bg: rgb(var(--wg-background));
    }

    [data-mdb-theme="dark"],
    body.wg-dark {
        color-scheme: dark;
        --wg-primary: 79 195 219;
        --wg-primary-dark: 133 222 238;
        --wg-primary-soft: 22 58 70;
        --wg-secondary: 8 23 33;
        --wg-accent: 255 164 99;
        --wg-background: 11 20 27;
        --wg-surface: 20 31 39;
        --wg-surface-alt: 29 44 54;
        --wg-on-surface: 235 242 246;
        --wg-muted: 166 184 194;
        --wg-border: 58 77 88;
        --wg-shadow-sm: 0 2px 10px rgb(0 0 0 / 0.25);
        --wg-shadow-md: 0 14px 34px rgb(0 0 0 / 0.34);
        --wg-shadow-lg: 0 24px 60px rgb(0 0 0 / 0.46);
        --mdb-primary-rgb: 79, 195, 219;
    }

    *,
    *::before,
    *::after {
        box-sizing: border-box;
    }

    /* The horizontal clip lives on html, NOT body: body's clip propagates
       to the viewport and Chromium then silently drops every smooth
       programmatic scroll - anchor links (#upit), scrollIntoView, back-to-
       top - while wheel scrolling keeps working, so it looks like dead
       buttons rather than a scroll bug. */
    html {
        overflow-x: clip;
        scroll-behavior: smooth;
        scroll-padding-top: 8rem;
        -webkit-text-size-adjust: 100%;
    }

    body {
        margin: 0;
        background: rgb(var(--wg-background));
        color: rgb(var(--wg-on-surface));
        font-family: var(--wg-font-body);
        font-size: 1rem;
        line-height: 1.65;
        text-rendering: optimizeLegibility;
    }

    img,
    svg,
    video,
    iframe {
        display: block;
        max-width: 100%;
    }

    img {
        height: auto;
    }

    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        margin: 0;
        color: rgb(var(--wg-on-surface));
        font-family: var(--wg-font-display);
        font-weight: 700;
        line-height: 1.2;
        text-wrap: balance;
    }

    p {
        margin: 0 0 1rem;
    }

    ul,
    ol {
        margin: 0;
    }

    a {
        color: rgb(var(--wg-primary));
        text-decoration: none;
        transition: color 0.18s ease;
    }

    a:hover {
        color: rgb(var(--wg-primary-dark));
    }

    button,
    input,
    select,
    textarea {
        font: inherit;
    }

    button,
    [role="button"],
    summary {
        cursor: pointer;
    }

    :focus-visible {
        outline: 3px solid rgb(var(--wg-focus));
        outline-offset: 3px;
    }

    ::selection {
        background: rgb(var(--wg-primary));
        color: #fff;
    }

    .container,
    .container-xl,
    .wg-container {
        width: min(100% - 2rem, var(--wg-container));
        max-width: var(--wg-container);
        margin-inline: auto;
        padding-inline: 0;
    }

    .wg-main {
        min-width: 0;
    }

    .wg-row {
        display: flex;
        flex-wrap: wrap;
        margin: -0.75rem;
    }

    .wg-col {
        width: 100%;
        min-width: 0;
        padding: 0.75rem;
    }

    .wg-col-6 {
        width: 50%;
    }

    @media (min-width: 576px) {
        .wg-col-sm-4 { width: 33.333%; }
        .wg-col-sm-6 { width: 50%; }
    }

    @media (min-width: 768px) {
        .wg-col-md-3 { width: 25%; }
        .wg-col-md-4 { width: 33.333%; }
        .wg-col-md-6 { width: 50%; }
        .wg-col-md-8 { width: 66.666%; }
    }

    @media (min-width: 992px) {
        .wg-col-lg-3 { width: 25%; }
        .wg-col-lg-4 { width: 33.333%; }
        .wg-col-lg-8 { width: 66.666%; }
        .wg-col-lg-9 { width: 75%; }
    }

    .wg-section {
        margin-block: clamp(3.25rem, 6vw, 5.75rem);
    }

    .wg-home {
        padding-block: 2rem 4rem;
    }

    .wg-sidebar {
        display: flex;
        flex-direction: column;
        gap: 1.75rem;
    }

    .wg-sidebar__section {
        min-width: 0;
    }

    @media (min-width: 992px) {
        .wg-sidebar {
            position: sticky;
            top: 7.5rem;
        }
    }

    .btn {
        border-radius: var(--wg-radius-sm);
        font-family: var(--wg-font-body);
        font-weight: 700;
        letter-spacing: 0;
        text-transform: none;
        box-shadow: none;
    }

    .btn-primary,
    .wg-btn {
        border-color: rgb(var(--wg-primary));
        background: rgb(var(--wg-primary));
        color: #fff;
    }

    .btn-primary:hover,
    .btn-primary:focus,
    .wg-btn:hover,
    .wg-btn:focus {
        border-color: rgb(var(--wg-primary-dark));
        background: rgb(var(--wg-primary-dark));
        color: #fff;
    }

    .btn-outline-primary,
    .wg-btn--outline {
        border: 1px solid rgb(var(--wg-primary));
        background: transparent;
        color: rgb(var(--wg-primary));
    }

    .btn-link {
        color: rgb(var(--wg-primary));
    }

    .btn-floating {
        display: inline-grid;
        width: 2.75rem;
        height: 2.75rem;
        min-width: 2.75rem;
        place-items: center;
        padding: 0;
        border-radius: 50%;
    }

    .wg-btn {
        display: inline-flex;
        min-height: 2.75rem;
        align-items: center;
        justify-content: center;
        gap: 0.5rem;
        padding: 0.65rem 1.15rem;
        border: 1px solid rgb(var(--wg-primary));
        border-radius: var(--wg-radius-sm);
        font-weight: 700;
        transition: background 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
    }

    .wg-btn--sm { min-height: 2.25rem; padding: 0.4rem 0.85rem; font-size: 0.85rem; }
    .wg-btn--lg { min-height: 3.15rem; padding: 0.8rem 1.35rem; }
    .wg-btn--block { width: 100%; }

    .form-control,
    .form-select,
    .wg-input,
    .wg-select,
    .wg-textarea {
        width: 100%;
        min-height: 3rem;
        border: 1px solid rgb(var(--wg-border));
        border-radius: var(--wg-radius-sm);
        background: rgb(var(--wg-surface));
        color: rgb(var(--wg-on-surface));
        box-shadow: none;
    }

    .wg-input,
    .wg-select,
    .wg-textarea {
        padding: 0.68rem 0.85rem;
    }

    textarea.wg-input,
    .wg-textarea {
        min-height: 8rem;
        resize: vertical;
    }

    .form-control:focus,
    .form-select:focus,
    .wg-input:focus,
    .wg-select:focus,
    .wg-textarea:focus {
        border-color: rgb(var(--wg-primary));
        background: rgb(var(--wg-surface));
        color: rgb(var(--wg-on-surface));
        box-shadow: 0 0 0 0.2rem rgb(var(--wg-primary) / 0.15);
    }

    .form-control::placeholder,
    .wg-input::placeholder,
    .wg-textarea::placeholder {
        color: rgb(var(--wg-muted));
        opacity: 0.82;
    }

    .form-label,
    .wg-label {
        margin-bottom: 0.4rem;
        color: rgb(var(--wg-on-surface));
        font-size: 0.88rem;
        font-weight: 700;
    }

    .form-check-input:checked {
        border-color: rgb(var(--wg-primary));
        background-color: rgb(var(--wg-primary));
    }

    .card,
    .wg-card {
        border: 1px solid rgb(var(--wg-border));
        border-radius: var(--wg-radius);
        background: rgb(var(--wg-surface));
        color: rgb(var(--wg-on-surface));
        box-shadow: var(--wg-shadow-sm);
    }

    .wg-card {
        position: relative;
        height: 100%;
        overflow: hidden;
        transition: transform 0.25s var(--wg-ease), border-color 0.25s ease, box-shadow 0.25s var(--wg-ease);
    }

    .wg-card:hover,
    .wg-card--hover:hover {
        border-color: rgb(var(--wg-primary) / 0.5);
        box-shadow: var(--wg-shadow-md);
        transform: translateY(-4px);
    }

    .wg-card__link {
        display: flex;
        min-width: 0;
        flex: 1 1 auto;
        flex-direction: column;
        color: inherit;
    }

    .wg-card__link:hover {
        color: inherit;
    }

    .wg-card__media {
        position: relative;
        display: grid;
        overflow: hidden;
        place-items: center;
        background: rgb(var(--wg-surface-alt));
    }

    .wg-card__media img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: transform 0.5s var(--wg-ease);
    }

    .wg-card:hover .wg-card__media img {
        transform: scale(1.035);
    }

    .wg-card__media--contain img,
    .wg-card--product .wg-card__media img {
        object-fit: contain;
        padding: 0.75rem;
        background: #fff;
    }

    .wg-card__media--side {
        flex: 0 0 12rem;
    }

    .wg-card__placeholder {
        display: grid;
        min-height: 8rem;
        place-items: center;
        color: rgb(var(--wg-muted) / 0.5);
        font-size: 2.5rem;
    }

    .wg-card__body,
    .card-body.wg-card__body {
        display: flex;
        min-width: 0;
        flex: 1 1 auto;
        flex-direction: column;
        padding: 1.2rem;
    }

    .wg-card__title {
        display: block;
        margin: 0;
        color: rgb(var(--wg-on-surface));
    }

    .wg-card__text {
        display: block;
        margin-top: 0.65rem;
        color: rgb(var(--wg-muted));
        font-size: 0.9rem;
        line-height: 1.55;
    }

    .wg-card__meta,
    .wg-card__seller {
        display: block;
        margin-top: 0.55rem;
        color: rgb(var(--wg-muted));
        font-size: 0.78rem;
    }

    .wg-card__footer,
    .card-footer.wg-card__footer {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 0.75rem;
        padding: 0.8rem 1.2rem;
        border-top: 1px solid rgb(var(--wg-border));
        background: rgb(var(--wg-surface-alt) / 0.55);
        color: rgb(var(--wg-muted));
        font-size: 0.76rem;
    }

    .wg-card__actions {
        display: flex;
        align-items: center;
        gap: 0.6rem;
        padding: 0.75rem;
        border-top: 1px solid rgb(var(--wg-border));
        background: rgb(var(--wg-surface));
    }

    .wg-card--list,
    .wg-card--h {
        height: auto;
    }

    .wg-card--h {
        flex-wrap: wrap;
    }

    .wg-card--h > .wg-card__footer {
        width: 100%;
    }

    .wg-card--list .wg-card__link,
    .wg-card--h {
        flex-direction: row;
    }

    .wg-card--list .wg-card__media {
        flex: 0 0 13rem;
    }

    .wg-card--product .wg-card__title {
        min-height: 2.7rem;
    }

    .wg-company-card__head {
        display: flex;
        align-items: center;
        gap: 0.9rem;
        color: inherit;
    }

    .wg-company-card__identity {
        min-width: 0;
    }

    .wg-company-card__avatar {
        width: 3.5rem;
        height: 3.5rem;
        flex: 0 0 3.5rem;
        border: 1px solid rgb(var(--wg-border));
        border-radius: 0.8rem;
        background: #fff;
        object-fit: contain;
        padding: 0.3rem;
    }

    .wg-company-card__avatar--initials {
        display: grid;
        place-items: center;
        border: 0;
        background: linear-gradient(135deg, rgb(var(--wg-primary)), rgb(var(--wg-primary-dark)));
        color: #fff;
        font-weight: 800;
    }

    .wg-company-card__footer {
        flex-wrap: wrap;
    }

    .wg-company-card__footer a {
        min-width: 0;
        color: inherit;
    }

    .badge,
    .wg-chip {
        display: inline-flex;
        align-items: center;
        gap: 0.3rem;
        padding: 0.42rem 0.7rem;
        border-radius: 999px;
        background: rgb(var(--wg-primary-soft));
        color: rgb(var(--wg-primary-dark));
        font-size: 0.72rem;
        font-weight: 700;
        line-height: 1;
    }

    .badge-primary,
    .wg-chip--active,
    .wg-chip--accent {
        background: rgb(var(--wg-primary));
        color: #fff;
    }

    .badge-light,
    .wg-chip--sm {
        border: 1px solid rgb(var(--wg-border));
        background: rgb(var(--wg-surface-alt));
        color: rgb(var(--wg-on-surface));
    }

    .wg-chip--dark {
        background: rgb(var(--wg-secondary));
        color: #fff;
    }

    .wg-chips,
    .wg-flex.wg-wrap {
        display: flex;
        flex-wrap: wrap;
        gap: 0.45rem;
    }

    .wg-eyebrow {
        display: block;
        margin-bottom: 0.45rem;
        color: rgb(var(--wg-primary));
        font-size: 0.72rem;
        font-weight: 800;
        letter-spacing: 0.09em;
        text-transform: uppercase;
    }

    .wg-skip-link {
        position: fixed;
        z-index: 3000;
        top: 0.75rem;
        left: 0.75rem;
        padding: 0.7rem 1rem;
        border-radius: var(--wg-radius-sm);
        background: rgb(var(--wg-on-surface));
        color: rgb(var(--wg-surface));
        box-shadow: var(--wg-shadow-lg);
        transform: translateY(-180%);
        transition: transform 0.18s ease;
    }

    .wg-skip-link:focus {
        color: rgb(var(--wg-surface));
        transform: translateY(0);
    }

    .wg-topbar {
        position: relative;
        z-index: 1040;
        min-height: 2.4rem;
        background: rgb(var(--wg-secondary));
        color: #fff;
        font-size: 0.78rem;
    }

    .wg-topbar__inner {
        display: grid;
        min-height: 2.4rem;
        grid-template-columns: auto minmax(0, 1fr) auto;
        align-items: center;
        gap: 1.25rem;
    }

    .wg-topbar__label,
    .wg-topbar__link {
        display: inline-flex;
        align-items: center;
        gap: 0.4rem;
        color: #fff;
        font-weight: 700;
    }

    .wg-topbar__label {
        color: rgb(var(--wg-accent));
        letter-spacing: 0.04em;
        text-transform: uppercase;
    }

    .wg-ticker {
        position: relative;
        min-width: 0;
        height: 1.5rem;
        overflow: hidden;
    }

    .wg-ticker__item {
        position: absolute;
        inset: 0;
        overflow: hidden;
        color: rgb(255 255 255 / 0.85);
        opacity: 0;
        text-overflow: ellipsis;
        white-space: nowrap;
        transform: translateY(0.4rem);
        transition: opacity 0.3s ease, transform 0.3s ease;
    }

    .wg-ticker__item.is-active {
        opacity: 1;
        transform: none;
    }

    .wg-header {
        z-index: 1030;
        border-bottom: 1px solid rgb(var(--wg-border));
        background: rgb(var(--wg-surface) / 0.94);
        box-shadow: var(--wg-shadow-sm);
        backdrop-filter: blur(16px);
    }

    .wg-navbar {
        min-height: 5rem;
        padding: 0;
        background: transparent;
        box-shadow: none;
    }

    .wg-header__inner {
        display: flex;
        min-width: 0;
        align-items: center;
        gap: 1rem;
    }

    .wg-logo {
        display: inline-flex;
        min-width: 0;
        align-items: center;
        gap: 0.7rem;
        margin: 0;
        color: rgb(var(--wg-on-surface));
    }

    .wg-logo:hover {
        color: rgb(var(--wg-on-surface));
    }

    .wg-logo__image {
        width: auto;
        max-width: 13rem;
        height: 2.75rem;
        object-fit: contain;
    }

    .wg-logo__mark {
        display: grid;
        width: 2.65rem;
        height: 2.65rem;
        flex: 0 0 2.65rem;
        place-items: center;
        border-radius: 0.85rem;
        background: linear-gradient(135deg, rgb(var(--wg-primary)), rgb(var(--wg-primary-dark)));
        color: #fff;
        font-size: 1.45rem;
        box-shadow: 0 8px 20px rgb(var(--wg-primary) / 0.22);
    }

    .wg-logo__text {
        display: flex;
        flex-direction: column;
        font-family: var(--wg-font-display);
        font-size: 1.35rem;
        font-weight: 700;
        letter-spacing: -0.035em;
        line-height: 1.05;
    }

    .wg-logo__text .accent {
        color: rgb(var(--wg-primary));
    }

    .wg-logo__tagline {
        max-width: 13rem;
        margin-top: 0.25rem;
        overflow: hidden;
        color: rgb(var(--wg-muted));
        font-family: var(--wg-font-body);
        font-size: 0.61rem;
        font-weight: 600;
        letter-spacing: 0.01em;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .wg-header .navbar-collapse {
        min-width: 0;
        justify-content: center;
    }

    .wg-nav {
        align-items: stretch;
        gap: 0.15rem;
    }

    .wg-nav__link.nav-link {
        position: relative;
        display: flex;
        min-height: 5rem;
        align-items: center;
        padding: 0.75rem 0.78rem;
        color: rgb(var(--wg-on-surface));
        font-size: 0.88rem;
        font-weight: 700;
    }

    .wg-nav__link::before {
        position: absolute;
        right: 0.8rem;
        bottom: 0;
        left: 0.8rem;
        height: 3px;
        border-radius: 3px 3px 0 0;
        background: rgb(var(--wg-primary));
        content: "";
        opacity: 0;
        transform: scaleX(0.6);
        transition: opacity 0.18s ease, transform 0.18s ease;
    }

    .wg-nav .is-active > .wg-nav__link,
    .wg-nav__link:hover,
    .wg-nav__link:focus {
        color: rgb(var(--wg-primary));
    }

    .wg-nav .is-active > .wg-nav__link::before,
    .wg-nav__link:hover::before,
    .wg-nav__link:focus::before {
        opacity: 1;
        transform: scaleX(1);
    }

    .wg-nav__panel.dropdown-menu {
        min-width: 15rem;
        margin-top: -0.2rem;
        padding: 0.65rem;
        border: 1px solid rgb(var(--wg-border));
        border-radius: var(--wg-radius);
        background: rgb(var(--wg-surface));
        box-shadow: var(--wg-shadow-lg);
    }

    .wg-nav__panel .dropdown-item {
        display: flex;
        min-height: 2.5rem;
        align-items: center;
        padding: 0.5rem 0.7rem;
        border-radius: var(--wg-radius-sm);
        color: rgb(var(--wg-on-surface));
        font-size: 0.86rem;
        line-height: 1.35;
        white-space: normal;
    }

    .wg-nav__panel .dropdown-item:hover,
    .wg-nav__panel .dropdown-item:focus {
        background: rgb(var(--wg-primary-soft));
        color: rgb(var(--wg-primary-dark));
    }

    .wg-nav__heading {
        font-weight: 800;
    }

    .wg-nav__panel--fluid {
        display: none;
        max-width: calc(100vw - 2rem);
        gap: 0.25rem 0.65rem;
        padding: 0.65rem;
    }

    .wg-nav__panel--fluid.wg-nav__panel--cols-1 {
        width: min(18rem, calc(100vw - 2rem));
        grid-template-columns: minmax(0, 1fr);
    }

    .wg-nav__panel--fluid.wg-nav__panel--cols-2 {
        width: min(34rem, calc(100vw - 2rem));
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .wg-nav__panel--fluid.wg-nav__panel--cols-3 {
        width: min(48rem, calc(100vw - 2rem));
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .wg-nav__panel--fluid.wg-nav__panel--cols-4 {
        width: min(62rem, calc(100vw - 2rem));
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .wg-nav .wg-nav__panel--fluid.animation,
    .wg-nav .wg-nav__panel--fluid.show {
        display: grid;
    }

    .wg-nav__group {
        min-width: 0;
    }

    .wg-nav__promo {
        display: flex;
        min-width: 12rem;
        flex-direction: column;
        justify-content: center;
        gap: 0.35rem;
        padding: 1rem;
        border: 1px solid rgb(var(--wg-primary) / 0.18);
        border-radius: var(--wg-radius-sm);
        background: linear-gradient(145deg, rgb(var(--wg-primary-soft)), rgb(var(--wg-surface)));
        color: rgb(var(--wg-on-surface));
    }

    .wg-nav__promo:hover,
    .wg-nav__promo:focus {
        border-color: rgb(var(--wg-primary) / 0.45);
        color: rgb(var(--wg-primary-dark));
    }

    .wg-nav__promo strong,
    .wg-nav__promo span,
    .wg-nav__promo small {
        display: block;
    }

    .wg-nav__promo span {
        color: rgb(var(--wg-muted));
        font-size: 0.82rem;
        line-height: 1.5;
    }

    .wg-nav__promo small {
        color: rgb(var(--wg-primary));
        font-weight: 800;
    }

    .wg-header__actions {
        display: flex;
        flex: 0 0 auto;
        align-items: center;
        gap: 0.4rem;
    }

    .wg-header__action,
    .wg-burger {
        border: 1px solid rgb(var(--wg-border));
        background: rgb(var(--wg-surface-alt));
        color: rgb(var(--wg-on-surface));
        box-shadow: none;
    }

    .wg-header__action:hover,
    .wg-burger:hover {
        border-color: rgb(var(--wg-primary) / 0.45);
        background: rgb(var(--wg-primary-soft));
        color: rgb(var(--wg-primary));
    }

    .wg-header__search {
        max-height: 0;
        overflow: hidden;
        border-top: 1px solid transparent;
        background: rgb(var(--wg-surface));
        opacity: 0;
        transition: max-height 0.3s var(--wg-ease), opacity 0.22s ease, border-color 0.22s ease;
    }

    .wg-header__search.is-open {
        max-height: 8rem;
        overflow: visible;
        border-color: rgb(var(--wg-border));
        opacity: 1;
    }

    .wg-header__search > .container-xl {
        position: relative;
    }

    .wg-search-form {
        position: relative;
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 0.75rem;
        padding-block: 1rem;
    }

    .wg-search-form .form-control {
        padding-left: 3rem;
    }

    .wg-search-form__icon {
        position: absolute;
        z-index: 2;
        top: 50%;
        left: 1rem;
        color: rgb(var(--wg-muted));
        font-size: 1.25rem;
        transform: translateY(-50%);
    }

    .wg-search-form [data-wg-search-submit] {
        min-width: 9.5rem;
    }

    /* Compact sponsored companies in search results */
    .wg-search-sponsors {
        display: grid;
        gap: 0.75rem;
    }

    .wg-search-sponsors__item {
        min-width: 0;
    }

    .wg-search-company-card {
        min-width: 0;
        overflow: hidden;
        border-inline-start: 3px solid rgb(var(--wg-border));
        border-radius: var(--wg-radius-control);
        box-shadow: var(--wg-shadow-sm);
    }

    .wg-search-company-card--gold {
        border-inline-start-color: #d49a24;
    }

    .wg-search-company-card--silver {
        border-inline-start-color: #9baab4;
    }

    .wg-search-company-card__link {
        display: grid;
        min-height: 8.25rem;
        grid-template-columns: 9.5rem minmax(0, 1fr) 2.75rem;
        align-items: stretch;
        color: inherit;
    }

    .wg-search-company-card__media {
        display: grid;
        min-width: 0;
        place-items: center;
        padding: 0.9rem;
        border-right: 1px solid rgb(var(--wg-border));
        background: #fff;
    }

    .wg-search-company-card__media img {
        width: auto;
        max-width: 100%;
        height: auto;
        max-height: 6.25rem;
        object-fit: contain;
    }

    .wg-search-company-card__initials {
        display: grid;
        width: 4rem;
        height: 4rem;
        place-items: center;
        border-radius: var(--wg-radius-control);
        background: linear-gradient(135deg, rgb(var(--wg-primary)), rgb(var(--wg-primary-dark)));
        color: #fff;
        font-weight: 800;
    }

    .wg-search-company-card__body {
        display: flex;
        min-width: 0;
        flex-direction: column;
        justify-content: center;
        gap: 0.45rem;
        padding: 1rem 1.1rem;
    }

    .wg-search-company-card__title,
    .wg-search-company-card__text {
        display: -webkit-box;
        min-width: 0;
    }

    .wg-search-company-card__text {
        color: rgb(var(--wg-muted));
        font-size: 0.9rem;
        line-height: 1.45;
    }

    .wg-search-company-card__arrow {
        display: grid;
        place-items: center;
        color: rgb(var(--wg-primary));
        font-size: 1.25rem;
    }

    .wg-search-company-card__link:hover,
    .wg-search-company-card__link:focus-visible {
        outline: 0;
        background: rgb(var(--wg-primary-soft) / 0.45);
        color: inherit;
    }

    .wg-search-company-card__link:focus-visible {
        box-shadow: inset 0 0 0 3px rgb(var(--wg-focus));
    }

    @media (max-width: 767.98px) {
        .wg-search-company-card__link {
            min-height: 7.25rem;
            grid-template-columns: 6.25rem minmax(0, 1fr) 2.25rem;
        }

        .wg-search-company-card__media {
            padding: 0.65rem;
        }

        .wg-search-company-card__media img {
            max-height: 4.75rem;
        }

        .wg-search-company-card__body {
            gap: 0.3rem;
            padding: 0.8rem;
        }

        .wg-search-company-card__text {
            font-size: 0.82rem;
        }
    }

    .wg-search-form__spinner {
        animation: wg-search-spin 0.8s linear infinite;
    }

    .wg-search-suggestions {
        position: absolute;
        z-index: 40;
        top: calc(100% - 0.35rem);
        right: 0.75rem;
        left: 0.75rem;
        max-height: min(70vh, 36rem);
        overflow: auto;
        border: 1px solid rgb(var(--wg-border));
        border-radius: var(--wg-radius-sm);
        background: rgb(var(--wg-surface));
        box-shadow: var(--wg-shadow-lg);
        overscroll-behavior: contain;
    }

    .wg-search-suggestions__status {
        display: flex;
        min-height: 5rem;
        align-items: center;
        justify-content: center;
        margin: 0;
        padding: 1.25rem;
        color: rgb(var(--wg-muted));
        text-align: center;
    }

    .wg-search-suggestions__status.is-loading::before {
        width: 1rem;
        height: 1rem;
        margin-right: 0.65rem;
        border: 2px solid rgb(var(--wg-border));
        border-top-color: rgb(var(--wg-primary));
        border-radius: 50%;
        content: "";
        animation: wg-search-spin 0.8s linear infinite;
    }

    .wg-search-suggestions__status.is-error {
        color: rgb(var(--wg-error));
    }

    .wg-search-suggestions__groups {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .wg-search-suggestions__group {
        min-width: 0;
        padding: 0.8rem;
        border-right: 1px solid rgb(var(--wg-border));
    }

    .wg-search-suggestions__group:last-child {
        border-right: 0;
    }

    .wg-search-suggestions__heading {
        margin: 0;
        padding: 0.35rem 0.55rem 0.6rem;
        color: rgb(var(--wg-muted));
        font-family: var(--wg-font-body);
        font-size: 0.72rem;
        font-weight: 800;
        letter-spacing: 0.08em;
        text-transform: uppercase;
    }

    .wg-search-suggestions__list {
        display: grid;
        gap: 0.2rem;
    }

    .wg-search-suggestion {
        display: grid;
        min-width: 0;
        grid-template-columns: 3.15rem minmax(0, 1fr);
        align-items: center;
        gap: 0.75rem;
        padding: 0.55rem;
        border-left: 3px solid transparent;
        border-radius: 0.35rem;
        color: rgb(var(--wg-on-surface));
        transition: border-color 0.15s ease, background 0.15s ease;
    }

    .wg-search-suggestion:hover,
    .wg-search-suggestion:focus-visible,
    .wg-search-suggestion.is-active {
        border-left-color: rgb(var(--wg-primary));
        outline: 0;
        background: rgb(var(--wg-primary-soft));
        color: rgb(var(--wg-on-surface));
    }

    .wg-search-suggestion__media {
        display: grid;
        width: 3.15rem;
        height: 3.15rem;
        place-items: center;
        overflow: hidden;
        border: 1px solid rgb(var(--wg-border));
        border-radius: 0.3rem;
        background: rgb(var(--wg-surface-alt));
        color: rgb(var(--wg-primary));
        font-size: 1.25rem;
    }

    .wg-search-suggestion__image {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .wg-search-suggestion__body,
    .wg-search-suggestion__title,
    .wg-search-suggestion__context {
        display: block;
        min-width: 0;
    }

    .wg-search-suggestion__title {
        display: -webkit-box;
        overflow: hidden;
        font-size: 0.86rem;
        font-weight: 750;
        line-height: 1.35;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }

    .wg-search-suggestion__context {
        overflow: hidden;
        margin-top: 0.15rem;
        color: rgb(var(--wg-muted));
        font-size: 0.7rem;
        line-height: 1.35;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .wg-search-suggestions__all {
        position: sticky;
        bottom: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0.55rem;
        padding: 0.8rem 1rem;
        border-top: 1px solid rgb(var(--wg-border));
        background: rgb(var(--wg-surface));
        color: rgb(var(--wg-primary));
        font-size: 0.8rem;
        font-weight: 800;
        letter-spacing: 0.04em;
        text-transform: uppercase;
    }

    .wg-search-suggestions__all:hover {
        background: rgb(var(--wg-primary-soft));
        color: rgb(var(--wg-primary-dark));
    }

    @keyframes wg-search-spin {
        to {
            transform: rotate(360deg);
        }
    }

    .wg-drawer {
        position: fixed;
        z-index: 2100;
        inset: 0 auto 0 0;
        display: flex;
        width: min(24rem, 90vw);
        flex-direction: column;
        padding: 1.1rem;
        background: rgb(var(--wg-surface));
        box-shadow: var(--wg-shadow-lg);
        transform: translateX(-105%);
        transition: transform 0.28s var(--wg-ease);
    }

    .wg-drawer.is-open {
        transform: none;
    }

    .wg-drawer__head {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 1rem;
        padding-bottom: 1rem;
        border-bottom: 1px solid rgb(var(--wg-border));
    }

    .wg-drawer__nav {
        display: flex;
        min-height: 0;
        flex: 1 1 auto;
        flex-direction: column;
        gap: 0.2rem;
        overflow-y: auto;
        padding-block: 1rem;
    }

    .wg-drawer__nav > a,
    .wg-drawer__nav summary,
    .wg-drawer__nav details > a {
        display: flex;
        min-height: 2.85rem;
        align-items: center;
        padding: 0.55rem 0.75rem;
        border-radius: var(--wg-radius-sm);
        color: rgb(var(--wg-on-surface));
        font-weight: 700;
        list-style: none;
    }

    .wg-drawer__nav summary {
        justify-content: space-between;
    }

    .wg-drawer__nav summary::after {
        font-family: "Material Design Icons";
        content: "\F0140";
    }

    .wg-drawer__nav details[open] summary::after {
        transform: rotate(180deg);
    }

    .wg-drawer__nav a:hover,
    .wg-drawer__nav a[aria-current="page"],
    .wg-drawer__nav details.is-current > summary,
    .wg-drawer__nav summary:hover {
        background: rgb(var(--wg-primary-soft));
        color: rgb(var(--wg-primary-dark));
    }

    .wg-drawer__nav .sub {
        min-height: 2.4rem;
        margin-left: 0.8rem;
        padding-left: 1rem;
        border-left: 2px solid rgb(var(--wg-border));
        font-size: 0.88rem;
        font-weight: 600;
    }

    .wg-drawer__nav .sub--deep {
        margin-left: 1.6rem;
        font-weight: 500;
    }

    .wg-drawer__actions {
        display: grid;
        gap: 0.6rem;
        padding-top: 1rem;
        border-top: 1px solid rgb(var(--wg-border));
    }

    .wg-drawer__theme {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.45rem;
        padding: 0.65rem;
        border: 1px solid rgb(var(--wg-border));
        border-radius: var(--wg-radius-sm);
        background: rgb(var(--wg-surface-alt));
    }

    .wg-drawer__theme-choice {
        position: relative;
        display: grid;
        appearance: none;
        min-width: 0;
        min-height: 2.75rem;
        grid-template-columns: auto minmax(0, 1fr) auto;
        align-items: center;
        gap: 0.4rem;
        padding: 0.55rem 0.65rem;
        border: 1px solid rgb(var(--wg-border));
        border-radius: var(--wg-radius-sm);
        background: rgb(var(--wg-surface));
        color: rgb(var(--wg-on-surface));
        cursor: pointer;
        font: inherit;
        font-size: 0.76rem;
        font-weight: 700;
        line-height: 1.25;
        text-align: left;
        transition: border-color 0.18s ease, background 0.18s ease, color 0.18s ease;
    }

    .wg-drawer__theme-choice--system {
        grid-column: 1 / -1;
    }

    .wg-drawer__theme-choice:hover,
    .wg-drawer__theme-choice:focus-visible,
    .wg-drawer__theme-choice.is-active {
        border-color: rgb(var(--wg-action));
        background: rgb(var(--wg-primary-soft));
        color: rgb(var(--wg-primary-dark));
    }

    .wg-drawer__theme-choice > .mdi:first-child {
        color: rgb(var(--wg-action));
        font-size: 1.15rem;
    }

    .wg-drawer__theme-check {
        color: rgb(var(--wg-action));
        font-size: 1rem;
        opacity: 0;
        transform: scale(0.75);
        transition: opacity 0.18s ease, transform 0.18s ease;
    }

    .wg-drawer__theme-choice.is-active .wg-drawer__theme-check {
        opacity: 1;
        transform: scale(1);
    }

    .wg-drawer__promo {
        display: flex;
        flex-direction: column;
        gap: 0.3rem;
        margin-top: 0.75rem;
        padding: 0.85rem;
        border: 1px solid rgb(var(--wg-primary) / 0.2);
        border-radius: var(--wg-radius-sm);
        background: rgb(var(--wg-primary-soft));
        color: rgb(var(--wg-on-surface));
    }

    .wg-drawer__promo span {
        color: rgb(var(--wg-muted));
        font-size: 0.82rem;
    }

    .wg-drawer__promo small {
        color: rgb(var(--wg-primary));
        font-weight: 800;
    }

    [data-wg-quote-enabled="false"] [data-wg-quote-add] {
        display: none !important;
    }

    .wg-overlay {
        position: fixed;
        z-index: 2050;
        inset: 0;
        background: rgb(8 22 31 / 0.58);
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.25s ease;
        backdrop-filter: blur(3px);
    }

    .wg-overlay.is-open {
        opacity: 1;
        pointer-events: auto;
    }

    .wg-page-head {
        position: relative;
        margin-bottom: 1.25rem;
        overflow: hidden;
        border-bottom: 1px solid rgb(var(--wg-border));
        background:
            radial-gradient(circle at 88% 18%, rgb(var(--wg-primary) / 0.08), transparent 20rem),
            linear-gradient(135deg, rgb(var(--wg-surface)), rgb(var(--wg-primary-soft) / 0.38));
    }

    .wg-page-head::after {
        position: absolute;
        right: -3rem;
        bottom: -5.5rem;
        width: 10rem;
        height: 10rem;
        border: 1.5rem solid rgb(var(--wg-primary) / 0.045);
        border-radius: 50%;
        content: "";
    }

    .wg-page-head .container-xl,
    .wg-page-head .wg-container {
        position: relative;
        z-index: 1;
        padding-block: 0.65rem 1.35rem;
    }

    .wg-page-head__copy {
        max-width: 52rem;
    }

    .wg-page-head .wg-h1 {
        font-size: clamp(1.35rem, 1.8vw, 1.7rem);
        font-weight: 750;
        letter-spacing: -0.035em;
        line-height: 1.14;
    }

    .wg-page-head__copy p {
        margin: 0.35rem 0 0;
        color: rgb(var(--wg-muted));
        font-size: 0.875rem;
        line-height: 1.45;
    }

    .wg-breadcrumbs {
        display: flex;
        min-height: 2.5rem;
        flex-wrap: wrap;
        align-items: center;
        gap: 0.35rem;
        padding-block: 0.65rem;
        color: rgb(var(--wg-muted));
        font-size: 0.76rem;
    }

    .wg-breadcrumbs a {
        color: rgb(var(--wg-muted));
        font-weight: 700;
    }

    .wg-breadcrumbs .sep,
    .wg-breadcrumbs > .mdi {
        color: rgb(var(--wg-muted) / 0.6);
    }

    .wg-section-head {
        display: flex;
        min-width: 0;
        align-items: flex-end;
        justify-content: space-between;
        gap: 1rem;
        margin-bottom: 1.35rem;
        padding-bottom: 0.85rem;
        border-bottom: 1px solid rgb(var(--wg-border));
    }

    .wg-section-head--compact {
        margin-bottom: 0.8rem;
    }

    .wg-section-title,
    .wg-side-title {
        position: relative;
        padding-left: 0.85rem;
    }

    .wg-section-title::before,
    .wg-side-title::before {
        position: absolute;
        top: 0.08em;
        bottom: 0.08em;
        left: 0;
        width: 4px;
        border-radius: 4px;
        background: rgb(var(--wg-accent));
        content: "";
    }

    .wg-section-title {
        font-size: clamp(1.45rem, 3vw, 2.05rem);
    }

    .wg-side-title {
        font-size: 1rem;
    }

    .wg-section-head__link {
        flex: 0 0 auto;
        margin-bottom: -0.35rem;
    }

    .wg-section-intro {
        margin: -0.5rem 0 1.35rem;
        color: rgb(var(--wg-muted));
        font-size: 0.9rem;
    }

    .wg-heroslider {
        position: relative;
        min-height: clamp(34rem, 66vw, 46rem);
        overflow: hidden;
        background: rgb(var(--wg-secondary));
    }

    .wg-heroslider > .wg-slide {
        position: absolute;
        inset: 0;
        min-height: inherit;
    }

    .wg-heroslider__img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .wg-heroslider__scrim,
    .wg-overlay-slide__scrim {
        position: absolute;
        inset: 0;
        background: linear-gradient(90deg, rgb(8 23 33 / 0.92), rgb(8 23 33 / 0.52) 52%, rgb(8 23 33 / 0.16));
    }

    .wg-heroslider__content {
        position: absolute;
        z-index: 2;
        inset: 0;
        display: flex;
        align-items: center;
        padding-bottom: 7rem;
    }

    .wg-heroslider__inner {
        max-width: 48rem;
    }

    .wg-hero__badge {
        margin-bottom: 1rem;
    }

    .wg-heroslider__title {
        max-width: 44rem;
        color: #fff;
        font-size: clamp(2.2rem, 5.7vw, 4.8rem);
        letter-spacing: -0.04em;
        line-height: 1.04;
        text-shadow: 0 3px 20px rgb(0 0 0 / 0.35);
    }

    .wg-heroslider__excerpt {
        max-width: 40rem;
        margin: 1.1rem 0 1.5rem;
        color: rgb(255 255 255 / 0.82);
        font-size: clamp(1rem, 2vw, 1.18rem);
    }

    .wg-hero__cta {
        box-shadow: 0 14px 32px rgb(var(--wg-primary) / 0.3);
    }

    .wg-heroslider__tabs {
        position: absolute;
        z-index: 4;
        right: 0;
        bottom: 0;
        left: 0;
        border-top: 1px solid rgb(255 255 255 / 0.16);
        background: rgb(8 23 33 / 0.72);
        backdrop-filter: blur(10px);
    }

    .wg-heroslider__tabrow {
        display: flex;
        overflow-x: auto;
        scrollbar-width: none;
    }

    .wg-heroslider__tabrow::-webkit-scrollbar {
        display: none;
    }

    .wg-hero-tab {
        position: relative;
        min-width: 0;
        flex: 1 0 11rem;
        padding: 1rem;
        border: 0;
        background: transparent;
        color: rgb(255 255 255 / 0.66);
        text-align: left;
    }

    .wg-hero-tab::before {
        position: absolute;
        inset: 0 0 auto;
        height: 3px;
        background: rgb(var(--wg-accent));
        content: "";
        opacity: 0;
    }

    .wg-hero-tab.is-active,
    .wg-hero-tab:hover {
        background: rgb(255 255 255 / 0.08);
        color: #fff;
    }

    .wg-hero-tab.is-active::before {
        opacity: 1;
    }

    .wg-hero-tab__kicker,
    .wg-hero-tab__title {
        display: block;
    }

    .wg-hero-tab__kicker {
        color: rgb(var(--wg-accent));
        font-size: 0.65rem;
        font-weight: 800;
        letter-spacing: 0.08em;
        text-transform: uppercase;
    }

    .wg-hero-tab__title {
        overflow: hidden;
        margin-top: 0.2rem;
        font-size: 0.8rem;
        font-weight: 700;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .wg-slider {
        position: relative;
        min-height: 18rem;
        overflow: hidden;
        border-radius: var(--wg-radius);
        background: rgb(var(--wg-surface-alt));
    }

    .wg-slide {
        position: absolute;
        inset: 0;
        display: block;
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.5s ease;
    }

    .wg-slide.is-active {
        z-index: 1;
        opacity: 1;
        pointer-events: auto;
    }

    .wg-overlay-slide {
        min-height: 18rem;
        color: #fff;
    }

    .wg-overlay-slide:hover {
        color: #fff;
    }

    .wg-overlay-slide > img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .wg-overlay-slide__scrim {
        background: linear-gradient(0deg, rgb(5 18 27 / 0.92), rgb(5 18 27 / 0.04) 75%);
    }

    .wg-overlay-slide__body {
        position: absolute;
        z-index: 2;
        right: 0;
        bottom: 0;
        left: 0;
        display: block;
        padding: 1.5rem;
    }

    .wg-overlay-slide__title,
    .wg-overlay-slide__excerpt {
        display: block;
    }

    .wg-overlay-slide__title {
        color: #fff;
        font-family: var(--wg-font-display);
        font-size: clamp(1.2rem, 2.8vw, 1.8rem);
        font-weight: 700;
        line-height: 1.25;
    }

    .wg-overlay-slide__excerpt {
        margin-top: 0.55rem;
        color: rgb(255 255 255 / 0.76);
        font-size: 0.84rem;
    }

    .wg-feature-slider {
        height: 100%;
        min-height: 27rem;
    }

    .wg-slider__arrow,
    .wg-slider__dot,
    .wg-slider-nav button {
        border: 0;
    }

    .wg-slider__arrow {
        position: absolute;
        z-index: 6;
        top: 50%;
        display: grid;
        width: 2.8rem;
        height: 2.8rem;
        place-items: center;
        border-radius: 50%;
        background: rgb(var(--wg-surface) / 0.92);
        color: rgb(var(--wg-on-surface));
        box-shadow: var(--wg-shadow-md);
        transform: translateY(-50%);
        transition: background 0.18s ease, color 0.18s ease, transform 0.18s ease;
    }

    .wg-slider__arrow:hover {
        background: rgb(var(--wg-primary));
        color: #fff;
    }

    .wg-slider__arrow--prev { left: 1rem; }
    .wg-slider__arrow--next { right: 1rem; }

    .wg-slider__dots {
        position: absolute;
        z-index: 6;
        right: 0;
        bottom: 0.9rem;
        left: 0;
        display: flex;
        justify-content: center;
        gap: 0.4rem;
    }

    .wg-slider__dot {
        width: 0.5rem;
        height: 0.5rem;
        padding: 0;
        border-radius: 50%;
        background: rgb(255 255 255 / 0.5);
        transition: width 0.2s ease, background 0.2s ease;
    }

    .wg-slider__dot.is-active {
        width: 1.4rem;
        border-radius: 1rem;
        background: rgb(var(--wg-accent));
    }

    .wg-slider-head,
    .wg-slider-nav {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 0.5rem;
    }

    .wg-izdvajamo {
        min-height: 17rem;
    }

    .wg-izdvajamo .wg-overlay-slide {
        min-height: 17rem;
    }

    .wg-scroll-x {
        display: grid;
        grid-auto-columns: minmax(15rem, 19rem);
        grid-auto-flow: column;
        gap: 1rem;
        overflow-x: auto;
        padding: 0.25rem 0.15rem 1rem;
        scroll-snap-type: x proximity;
        scrollbar-color: rgb(var(--wg-primary) / 0.5) transparent;
        scrollbar-width: thin;
    }

    .wg-scroll-x__item,
    .wg-scroll-x > div {
        min-width: 0;
        scroll-snap-align: start;
    }

    .wg-reco-list {
        overflow: hidden;
        border: 1px solid rgb(var(--wg-border));
        border-radius: var(--wg-radius);
        background: rgb(var(--wg-surface));
        box-shadow: var(--wg-shadow-sm);
    }

    .wg-reco {
        display: flex;
        align-items: center;
        gap: 0.8rem;
        padding: 0.75rem;
        border-color: rgb(var(--wg-border));
        background: transparent;
        color: inherit;
    }

    .wg-reco img {
        width: 4.75rem;
        height: 4.1rem;
        flex: 0 0 4.75rem;
        border-radius: 0.65rem;
        object-fit: cover;
    }

    .wg-reco__body {
        min-width: 0;
    }

    .wg-reco__title,
    .wg-reco__kicker {
        display: block;
    }

    .wg-reco__title {
        color: rgb(var(--wg-on-surface));
        font-size: 0.82rem;
        font-weight: 700;
        line-height: 1.35;
    }

    .wg-reco__kicker {
        margin-top: 0.3rem;
        color: rgb(var(--wg-primary));
        font-size: 0.63rem;
        font-weight: 800;
        letter-spacing: 0.06em;
        text-transform: uppercase;
    }

    .wg-partners {
        padding: 1rem;
        border: 1px solid rgb(var(--wg-border));
        border-radius: var(--wg-radius);
        background: rgb(var(--wg-surface));
        box-shadow: var(--wg-shadow-sm);
    }

    .wg-partner {
        display: flex;
        align-items: center;
        gap: 0.8rem;
        padding: 0.8rem 0;
        border-bottom: 1px solid rgb(var(--wg-border));
        color: inherit;
    }

    .wg-partner__logo {
        width: 5.3rem;
        height: 3rem;
        flex: 0 0 5.3rem;
        border-radius: 0.4rem;
        background: #fff;
        object-fit: contain;
        padding: 0.25rem;
    }

    .wg-partner__body,
    .wg-partner__name,
    .wg-partner__text {
        display: block;
        min-width: 0;
    }

    .wg-partner__name {
        color: rgb(var(--wg-on-surface));
        font-size: 0.82rem;
        font-weight: 800;
    }

    .wg-partner__text {
        margin-top: 0.2rem;
        color: rgb(var(--wg-muted));
        font-size: 0.7rem;
        line-height: 1.4;
    }

    .wg-partner--lead {
        flex-direction: column;
        text-align: center;
    }

    .wg-partner--lead .wg-partner__logo {
        width: 100%;
        height: 4.5rem;
        flex-basis: auto;
    }

    .wg-partners__all {
        margin-top: 0.5rem;
        padding-inline: 0;
    }

    .wg-newsletter {
        position: relative;
        display: grid;
        overflow: hidden;
        border: 1px solid rgb(var(--wg-border));
        border-radius: var(--wg-radius-lg);
        background:
            radial-gradient(circle at 90% 10%, rgb(var(--wg-primary) / 0.23), transparent 18rem),
            rgb(var(--wg-secondary));
        color: #fff;
        box-shadow: var(--wg-shadow-md);
    }

    .wg-newsletter--feature {
        grid-template-columns: auto minmax(0, 1fr) minmax(18rem, 0.8fr);
        align-items: center;
        gap: 1.5rem;
        padding: clamp(1.5rem, 4vw, 2.5rem);
    }

    .wg-newsletter--compact {
        gap: 1rem;
        padding: 1.4rem;
        text-align: center;
    }

    .wg-newsletter__icon {
        display: grid;
        width: 4rem;
        height: 4rem;
        place-items: center;
        border-radius: 1rem;
        background: rgb(255 255 255 / 0.12);
        color: rgb(var(--wg-accent));
        font-size: 2rem;
    }

    .wg-newsletter--compact .wg-newsletter__icon {
        margin-inline: auto;
    }

    .wg-newsletter h2,
    .wg-newsletter .wg-h3 {
        color: #fff;
    }

    .wg-newsletter p {
        margin: 0.5rem 0 0;
        color: rgb(255 255 255 / 0.72);
        font-size: 0.86rem;
    }

    .wg-newsletter__form {
        display: grid;
        gap: 0.6rem;
    }

    .wg-newsletter--feature .wg-newsletter__form {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .wg-newsletter__consent {
        grid-column: 1 / -1;
        font-size: 0.68rem !important;
    }

    .wg-newsletter-compact {
        padding: 1.4rem;
        border: 1px solid rgb(var(--wg-border));
        border-radius: var(--wg-radius);
        background: rgb(var(--wg-surface));
        box-shadow: var(--wg-shadow-sm);
        text-align: center;
    }

    .wg-inquiry {
        margin-block: 1.5rem;
        border-top: 4px solid rgb(var(--wg-primary));
        box-shadow: var(--wg-shadow-md);
    }

    .wg-inquiry .card-body {
        padding: clamp(1.25rem, 4vw, 2rem);
    }

    .wg-inquiry__head {
        display: flex;
        align-items: flex-start;
        gap: 1rem;
        margin-bottom: 1.25rem;
    }

    .wg-inquiry__head p {
        margin: 0.35rem 0 0;
        color: rgb(var(--wg-muted));
        font-size: 0.86rem;
    }

    .wg-inquiry__icon {
        display: grid;
        width: 3rem;
        height: 3rem;
        flex: 0 0 3rem;
        place-items: center;
        border-radius: 0.8rem;
        background: rgb(var(--wg-primary-soft));
        color: rgb(var(--wg-primary));
        font-size: 1.5rem;
    }

    .wg-consent {
        position: fixed;
        z-index: 2400;
        right: 1rem;
        bottom: 1rem;
        left: 1rem;
        display: grid;
        width: min(52rem, calc(100% - 2rem));
        grid-template-columns: auto minmax(0, 1fr) auto;
        align-items: center;
        gap: 1rem;
        margin-inline: auto;
        padding: 1rem;
        box-shadow: var(--wg-shadow-lg);
    }

    .wg-consent[hidden] {
        display: none;
    }

    .wg-consent__icon {
        display: grid;
        width: 3rem;
        height: 3rem;
        place-items: center;
        border-radius: 0.8rem;
        background: rgb(var(--wg-primary-soft));
        color: rgb(var(--wg-primary));
        font-size: 1.5rem;
    }

    .wg-consent__text strong,
    .wg-consent__text span {
        display: block;
    }

    .wg-consent__text span {
        margin-top: 0.2rem;
        color: rgb(var(--wg-muted));
        font-size: 0.78rem;
        line-height: 1.45;
    }

    .wg-consent__actions {
        display: flex;
        gap: 0.5rem;
    }

    .wg-totop {
        position: fixed;
        z-index: 1100;
        right: 1.2rem;
        bottom: 1.2rem;
        opacity: 0;
        pointer-events: none;
        transform: translateY(0.8rem);
        transition: opacity 0.2s ease, transform 0.2s ease;
    }

    .wg-totop.is-visible {
        opacity: 1;
        pointer-events: auto;
        transform: none;
    }

    .wg-production-compare {
        position: fixed;
        z-index: 1090;
        right: 1rem;
        bottom: 4.75rem;
        display: inline-flex;
        min-height: 2.75rem;
        align-items: center;
        gap: 0.45rem;
        padding: 0.55rem 0.7rem;
        border: 1px solid rgb(var(--wg-border));
        border-radius: var(--wg-radius-control);
        background: rgb(var(--wg-surface) / 0.96);
        color: rgb(var(--wg-primary));
        box-shadow: var(--wg-shadow-md);
        font-size: 0.75rem;
        font-weight: 800;
        line-height: 1;
        backdrop-filter: blur(12px);
        transition: border-color 0.18s ease, color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
    }

    .wg-production-compare:hover {
        border-color: rgb(var(--wg-primary) / 0.45);
        color: rgb(var(--wg-primary-dark));
        box-shadow: var(--wg-shadow-lg);
        transform: translateY(-2px);
    }

    .wg-production-compare:focus-visible {
        outline: 3px solid rgb(var(--wg-focus));
        outline-offset: 3px;
    }

    .wg-production-compare__icon {
        font-size: 1.15rem;
    }

    .wg-production-compare__external {
        color: rgb(var(--wg-muted));
        font-size: 0.85rem;
    }

    @media (max-width: 575.98px) {
        .wg-production-compare {
            width: 2.75rem;
            justify-content: center;
            padding: 0;
        }

        .wg-production-compare__label,
        .wg-production-compare__external {
            display: none;
        }
    }

    .wg-table,
    table.wg-table {
        width: 100%;
        overflow: hidden;
        border: 1px solid rgb(var(--wg-border));
        border-collapse: separate;
        border-radius: var(--wg-radius);
        border-spacing: 0;
        background: rgb(var(--wg-surface));
    }

    .wg-table th,
    .wg-table td {
        padding: 0.8rem 1rem;
        border-bottom: 1px solid rgb(var(--wg-border));
        text-align: left;
        vertical-align: top;
    }

    .wg-table th {
        width: 34%;
        color: rgb(var(--wg-muted));
        font-size: 0.78rem;
        font-weight: 800;
    }

    .wg-table tr:last-child > * {
        border-bottom: 0;
    }

    .wg-tabs {
        display: flex;
        overflow-x: auto;
        gap: 0.25rem;
        margin-bottom: 1.5rem;
        padding: 0.35rem;
        border: 1px solid rgb(var(--wg-border));
        border-radius: var(--wg-radius);
        background: rgb(var(--wg-surface));
        scrollbar-width: none;
    }

    .wg-tabs a,
    .wg-tabs button {
        flex: 0 0 auto;
        padding: 0.65rem 0.9rem;
        border: 0;
        border-radius: var(--wg-radius-sm);
        color: rgb(var(--wg-muted));
        font-weight: 700;
        white-space: nowrap;
    }

    .wg-tabs .is-active,
    .wg-tabs a:hover {
        background: rgb(var(--wg-primary));
        color: #fff;
    }

    .wg-pagination,
    .pagination {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 0.4rem;
        margin: 2.5rem 0;
    }

    .wg-pagination a,
    .wg-pagination span,
    .page-link {
        display: grid;
        min-width: 2.5rem;
        min-height: 2.5rem;
        place-items: center;
        padding: 0.35rem 0.7rem;
        border: 1px solid rgb(var(--wg-border));
        border-radius: var(--wg-radius-sm) !important;
        background: rgb(var(--wg-surface));
        color: rgb(var(--wg-on-surface));
        box-shadow: none;
    }

    .wg-pagination .active,
    .page-item.active .page-link {
        border-color: rgb(var(--wg-primary));
        background: rgb(var(--wg-primary));
        color: #fff;
    }

    .wg-gallery-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 0.75rem;
    }

    .wg-gallery-grid__item {
        position: relative;
        display: block;
        overflow: hidden;
        border-radius: var(--wg-radius);
        background: rgb(var(--wg-surface-alt));
        box-shadow: var(--wg-shadow-sm);
        aspect-ratio: 4 / 3;
    }

    .wg-gallery-grid__item img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: transform 0.35s var(--wg-ease);
    }

    .wg-gallery-grid__item:hover img {
        transform: scale(1.05);
    }

    .wg-gallery-grid__caption {
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0;
        padding: 1rem;
        background: linear-gradient(transparent, rgb(6 19 28 / 0.9));
        color: #fff;
        font-weight: 700;
    }

    .wg-gallery-grid--thumbs {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }

    .wg-gallery-grid--thumbs .wg-gallery-grid__item {
        aspect-ratio: 1;
        border: 2px solid transparent;
        border-radius: var(--wg-radius-sm);
    }

    .wg-gallery-grid--thumbs .wg-gallery-grid__item:hover {
        border-color: rgb(var(--wg-primary));
    }

    .wg-company-row {
        display: flex;
        gap: 1.25rem;
        padding: 1.25rem;
        border: 1px solid rgb(var(--wg-border));
        border-radius: var(--wg-radius);
        background: rgb(var(--wg-surface));
        box-shadow: var(--wg-shadow-sm);
        transition: border-color 0.2s ease, box-shadow 0.2s ease;
    }

    .wg-company-row:hover {
        border-color: rgb(var(--wg-primary) / 0.45);
        box-shadow: var(--wg-shadow-md);
    }

    .wg-company-row.is-gold { border-left: 4px solid #d5a524; }
    .wg-company-row.is-silver { border-left: 4px solid #99a9b2; }
    .wg-company-row.is-archived { opacity: 0.64; }

    .wg-company-row__logo {
        display: grid;
        width: 11rem;
        min-height: 7rem;
        flex: 0 0 11rem;
        place-items: center;
        border-radius: var(--wg-radius-sm);
        background: #fff;
        color: rgb(var(--wg-muted));
        font-size: 2.5rem;
    }

    .wg-company-row__logo img {
        width: 100%;
        height: 6rem;
        object-fit: contain;
        padding: 0.5rem;
    }

    .wg-company-row__body {
        min-width: 0;
        flex: 1 1 auto;
    }

    .wg-company-row__name {
        display: inline-block;
        margin-bottom: 0.4rem;
        color: rgb(var(--wg-on-surface));
        font-family: var(--wg-font-display);
        font-size: 1.15rem;
        font-weight: 700;
    }

    .wg-company-banner {
        position: relative;
        display: flex;
        min-height: 10rem;
        align-items: center;
        overflow: hidden;
        padding: 2rem clamp(1.25rem, 5vw, 3rem);
        border-radius: var(--wg-radius-lg) var(--wg-radius-lg) 0 0;
        background:
            radial-gradient(circle at 85% 30%, rgb(var(--wg-primary) / 0.5), transparent 22rem),
            rgb(var(--wg-secondary));
    }

    .wg-company-banner__name {
        color: #fff;
        font-size: clamp(1.8rem, 5vw, 3rem);
    }

    .wg-company-banner__logo {
        width: 7rem;
        height: 7rem;
        margin: -3.5rem 0 0 2rem;
        border: 0.4rem solid rgb(var(--wg-surface));
        border-radius: var(--wg-radius);
        background: #fff;
        box-shadow: var(--wg-shadow-md);
        object-fit: contain;
        padding: 0.5rem;
    }

    .wg-company-stats {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        border-top: 1px solid rgb(var(--wg-border));
    }

    .wg-company-stats > div {
        display: grid;
        gap: 0.25rem;
        padding: 1rem;
        border-right: 1px solid rgb(var(--wg-border));
        text-align: center;
    }

    .wg-company-stats > div:last-child {
        border-right: 0;
    }

    .wg-company-stats .mdi {
        color: rgb(var(--wg-primary));
        font-size: 1.3rem;
    }

    .wg-company-stats span:last-child {
        color: rgb(var(--wg-muted));
        font-size: 0.72rem;
    }

    .wg-cat-card {
        padding: 1.15rem;
    }

    .wg-cat-card__head {
        display: flex;
        align-items: center;
        gap: 0.75rem;
        padding-bottom: 0.8rem;
        border-bottom: 2px solid rgb(var(--wg-primary));
        color: rgb(var(--wg-on-surface));
    }

    .wg-cat-card__head .mdi {
        color: rgb(var(--wg-primary));
        font-size: 1.8rem;
    }

    .wg-cat-card__name,
    .wg-cat-card__count {
        display: block;
    }

    .wg-cat-card__name { font-weight: 800; }
    .wg-cat-card__count { color: rgb(var(--wg-muted)); font-size: 0.72rem; }

    .wg-cat-card__list {
        padding: 0;
        list-style: none;
    }

    .wg-cat-card__list li {
        border-bottom: 1px solid rgb(var(--wg-border));
    }

    .wg-cat-card__list a {
        display: block;
        padding: 0.55rem 0;
        color: rgb(var(--wg-on-surface));
        font-size: 0.86rem;
    }

    .wg-cat-card__more {
        display: inline-flex;
        align-items: center;
        gap: 0.35rem;
        margin-top: 0.8rem;
        font-size: 0.8rem;
        font-weight: 800;
    }

    .wg-company-categories__lead {
        margin: 0 0 1.1rem;
        color: rgb(var(--wg-muted));
        font-size: 0.95rem;
    }

    .wg-cattree {
        display: grid;
        gap: 1.15rem;
    }

    .wg-cattree__group {
        display: grid;
        gap: 0.55rem;
    }

    .wg-cattree__root {
        display: inline-flex;
        align-items: center;
        gap: 0.45rem;
        width: fit-content;
        color: rgb(var(--wg-on-surface));
        font-weight: 700;
        text-decoration: none;
    }

    .wg-cattree__root .mdi {
        color: rgb(var(--wg-primary));
    }

    .wg-cattree__root:hover {
        color: rgb(var(--wg-primary));
    }

    .wg-cattree__kids {
        margin: 0;
        padding: 0;
        list-style: none;
        display: flex;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .wg-cattree__kids a {
        display: inline-flex;
        align-items: center;
        padding: 0.32rem 0.85rem;
        border: 1px solid rgb(var(--wg-border));
        border-radius: 999px;
        background: rgb(var(--wg-surface));
        color: rgb(var(--wg-on-surface));
        font-size: 0.88rem;
        line-height: 1.35;
        text-decoration: none;
        transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
    }

    .wg-cattree__kids a:hover {
        border-color: rgb(var(--wg-primary));
        color: rgb(var(--wg-primary));
        background: rgb(var(--wg-primary-soft) / 0.35);
    }

    .wg-boxes {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 1rem;
    }

    .wg-box {
        display: flex;
        min-width: 0;
        align-items: center;
        gap: 0.85rem;
        padding: 0.8rem;
        border: 1px solid rgb(var(--wg-border));
        border-radius: var(--wg-radius);
        background: rgb(var(--wg-surface));
        color: inherit;
        box-shadow: var(--wg-shadow-sm);
    }

    .wg-box__media {
        width: 5.5rem;
        height: 4.4rem;
        flex: 0 0 5.5rem;
        overflow: hidden;
        border-radius: var(--wg-radius-sm);
        background: rgb(var(--wg-surface-alt));
    }

    .wg-box__media img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .wg-box__body,
    .wg-box__title,
    .wg-box__sub {
        display: block;
        min-width: 0;
    }

    .wg-box__title { font-size: 0.85rem; font-weight: 800; }
    .wg-box__sub { margin-top: 0.2rem; color: rgb(var(--wg-muted)); font-size: 0.76rem; }

    .wg-sponsor-bar {
        display: flex;
        align-items: center;
        gap: 1rem;
        padding: 0.8rem 1rem;
        border: 1px solid rgb(var(--wg-primary) / 0.45);
        border-radius: var(--wg-radius);
        background: rgb(var(--wg-surface));
        color: inherit;
        box-shadow: var(--wg-shadow-sm);
    }

    .wg-sponsor-bar__logo {
        width: 8rem;
        height: 3rem;
        object-fit: contain;
    }

    .wg-sponsor-bar__label {
        font-size: 0.66rem;
        font-weight: 800;
        letter-spacing: 0.07em;
        text-transform: uppercase;
    }

    .wg-adslot {
        position: relative;
        display: block;
        overflow: hidden;
        margin-block: 1rem;
        border: 1px solid rgb(var(--wg-border));
        border-radius: var(--wg-radius);
        background: rgb(var(--wg-surface));
        color: inherit;
        box-shadow: var(--wg-shadow-sm);
    }

    .wg-adslot__img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .wg-adslot__body {
        padding: 1rem;
    }

    .wg-adslot__brand,
    .wg-ad-label {
        color: rgb(var(--wg-muted));
        font-size: 0.64rem;
        font-weight: 800;
        letter-spacing: 0.08em;
        text-transform: uppercase;
    }

    .wg-adslot__title { display: block; margin-top: 0.25rem; font-weight: 800; }
    .wg-adslot__text { display: block; margin-top: 0.25rem; color: rgb(var(--wg-muted)); font-size: 0.8rem; }
    .wg-adslot__cta { display: inline-flex; margin-top: 0.65rem; font-size: 0.8rem; font-weight: 800; }

    .wg-adslot--billboard,
    .wg-adslot--leaderboard {
        min-height: 7rem;
    }

    .wg-alert,
    .wg-application-alert {
        padding: 0.85rem 1rem;
        border: 1px solid rgb(var(--wg-border));
        border-radius: var(--wg-radius-sm);
        background: rgb(var(--wg-surface-alt));
    }

    .wg-alert--success { border-color: rgb(var(--wg-success) / 0.35); background: rgb(var(--wg-success) / 0.1); color: rgb(var(--wg-success)); }
    .wg-alert--error { border-color: rgb(var(--wg-error) / 0.35); background: rgb(var(--wg-error) / 0.1); color: rgb(var(--wg-error)); }

    .wg-empty {
        display: grid;
        min-height: 15rem;
        place-items: center;
        padding: 2rem;
        border: 1px dashed rgb(var(--wg-border));
        border-radius: var(--wg-radius);
        background: rgb(var(--wg-surface));
        color: rgb(var(--wg-muted));
        text-align: center;
    }

    .wg-faq {
        margin-bottom: 0.7rem;
        overflow: hidden;
        border: 1px solid rgb(var(--wg-border));
        border-radius: var(--wg-radius);
        background: rgb(var(--wg-surface));
        box-shadow: var(--wg-shadow-sm);
    }

    .wg-faq > summary {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 1rem 1.15rem;
        font-weight: 800;
        list-style: none;
    }

    .wg-faq > summary::after {
        color: rgb(var(--wg-primary));
        content: "+";
        font-size: 1.4rem;
    }

    .wg-faq[open] > summary::after { content: "−"; }
    .wg-faq > .wg-prose { padding: 0 1.15rem 1.15rem; }

    .wg-prose {
        color: rgb(var(--wg-on-surface));
        line-height: 1.78;
    }

    .wg-prose > * + * {
        margin-top: 1rem;
    }

    .wg-prose h2,
    .wg-prose h3,
    .wg-prose h4 {
        margin-top: 1.75em;
    }

    .wg-prose ul,
    .wg-prose ol {
        padding-left: 1.4rem;
    }

    .wg-prose blockquote {
        margin: 1.5rem 0;
        padding: 1rem 1.2rem;
        border-left: 4px solid rgb(var(--wg-accent));
        border-radius: 0 var(--wg-radius-sm) var(--wg-radius-sm) 0;
        background: rgb(var(--wg-surface-alt));
    }

    .wg-prose iframe {
        width: 100%;
        border: 0;
        border-radius: var(--wg-radius);
        aspect-ratio: 16 / 9;
    }

    .wg-hero {
        position: relative;
        display: grid;
        min-height: clamp(22rem, 50vw, 38rem);
        overflow: hidden;
        place-items: center;
        border-radius: var(--wg-radius-lg);
        background: rgb(var(--wg-secondary));
        color: #fff;
    }

    .wg-hero__overlay {
        position: absolute;
        inset: 0;
        background: linear-gradient(100deg, rgb(8 22 31 / 0.85), rgb(8 22 31 / 0.2));
    }

    .wg-ratio-16x9 { aspect-ratio: 16 / 9; }
    .wg-ratio-4x3 { aspect-ratio: 4 / 3; }

    .wg-share,
    .wg-view-toggle {
        display: inline-grid;
        width: 2.65rem;
        height: 2.65rem;
        place-items: center;
        border: 1px solid rgb(var(--wg-border));
        background: rgb(var(--wg-surface));
        color: rgb(var(--wg-muted));
    }

    .wg-share:hover,
    .wg-view-toggle:hover,
    .wg-view-toggle.is-active {
        border-color: rgb(var(--wg-primary));
        background: rgb(var(--wg-primary));
        color: #fff;
    }

    [data-wg-view-target].is-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 1rem;
    }

    .wg-deal-card__badge,
    .wg-deal-card__until {
        position: absolute;
        z-index: 2;
        top: 0.75rem;
        padding: 0.35rem 0.65rem;
        border-radius: 999px;
        color: #fff;
        font-size: 0.7rem;
        font-weight: 800;
    }

    .wg-deal-card__badge { left: 0.75rem; background: rgb(var(--wg-error)); }
    .wg-deal-card__until { right: 0.75rem; background: rgb(var(--wg-secondary) / 0.88); }

    .wg-readmore {
        position: relative;
        overflow: hidden;
        transition: max-height 0.35s var(--wg-ease);
    }

    .wg-readmore.is-clamped::after {
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0;
        height: 4rem;
        /* Fade into the PAGE background, not the card white — these prose
           blocks sit directly on the grey backdrop, and a white gradient
           read as a broken box. A readmore inside a card can override the
           endpoint with --wg-readmore-fade. */
        background: linear-gradient(transparent, rgb(var(--wg-readmore-fade, var(--wg-background))));
        content: "";
        pointer-events: none;
    }

    .card .wg-readmore.is-clamped::after,
    .wg-card .wg-readmore.is-clamped::after {
        --wg-readmore-fade: var(--wg-surface);
    }

    .wg-readmore.is-open::after { display: none; }

    .wg-readmore__btn {
        display: inline-flex;
        align-items: center;
        gap: 0.4rem;
        margin-top: 0.85rem;
        padding: 0.45rem 1.15rem;
        border: 1px solid rgb(var(--wg-primary) / 0.3);
        border-radius: 999px;
        background: rgb(var(--wg-primary-soft) / 0.45);
        color: rgb(var(--wg-primary));
        font-weight: 650;
        font-size: 0.92rem;
        cursor: pointer;
        transition: background 0.18s ease, color 0.18s ease, border-color 0.18s ease;
    }

    .wg-readmore__btn:hover {
        border-color: rgb(var(--wg-primary));
        background: rgb(var(--wg-primary));
        color: #fff;
    }

    .wg-readmore__btn .mdi {
        font-size: 1.05rem;
        line-height: 1;
    }

    .wg-flex { display: flex; }
    .wg-flex-col { display: flex; flex-direction: column; }
    .wg-center { align-items: center; }
    .wg-between { justify-content: space-between; }
    .wg-wrap { flex-wrap: wrap; }
    .wg-grow { flex: 1 1 auto; }
    .wg-shrink-0 { flex-shrink: 0; }
    .wg-col-dir { flex-direction: column; }
    .wg-gap-1 { gap: 0.25rem; }
    .wg-gap-2 { gap: 0.5rem; }
    .wg-gap-3 { gap: 0.75rem; }
    .wg-gap-4 { gap: 1rem; }
    .wg-gap-8 { gap: 2rem; }

    .wg-h1 { font-size: clamp(1.75rem, 3.5vw, 2.5rem); letter-spacing: -0.035em; }
    .wg-h2 { font-size: clamp(1.65rem, 4vw, 2.55rem); letter-spacing: -0.03em; }
    .wg-h3 { font-size: clamp(1.25rem, 3vw, 1.7rem); }
    .wg-h4 { font-size: 1rem; }
    .wg-small { font-size: 0.86rem; }
    .wg-caption { font-size: 0.74rem; }
    .wg-muted { color: rgb(var(--wg-muted)); }
    .wg-bold { font-weight: 800; }
    .wg-upper { letter-spacing: 0.07em; text-transform: uppercase; }
    .wg-white { color: #fff; }
    .wg-truncate { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .wg-clamp-1,
    .wg-clamp-2,
    .wg-clamp-3 { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; }
    .wg-clamp-1 { -webkit-line-clamp: 1; }
    .wg-clamp-2 { -webkit-line-clamp: 2; }
    .wg-clamp-3 { -webkit-line-clamp: 3; }
    .wg-list-plain { padding: 0; list-style: none; }
    .wg-border { border: 1px solid rgb(var(--wg-border)); }

    .wg-mb-1 { margin-bottom: 0.25rem; }
    .wg-mb-2 { margin-bottom: 0.5rem; }
    .wg-mb-3 { margin-bottom: 0.75rem; }
    .wg-mb-4 { margin-bottom: 1rem; }
    .wg-mb-5 { margin-bottom: 1.5rem; }
    .wg-mb-6 { margin-bottom: 2rem; }
    .wg-mb-8 { margin-bottom: 3rem; }
    .wg-mt-2 { margin-top: 0.5rem; }
    .wg-mt-3 { margin-top: 0.75rem; }
    .wg-mt-4 { margin-top: 1rem; }
    .wg-mt-5 { margin-top: 1.5rem; }
    .wg-mt-6 { margin-top: 2rem; }
    .wg-mt-8 { margin-top: 3rem; }
    .wg-my-4 { margin-block: 1rem; }
    .wg-pt-8 { padding-top: 3rem; }

    .bg-primary { background-color: rgb(var(--wg-primary)) !important; color: #fff !important; }
    .bg-secondary { background-color: rgb(var(--wg-secondary)) !important; color: #fff !important; }
    .bg-accent { background-color: rgb(var(--wg-accent)) !important; color: #fff !important; }
    .bg-error { background-color: rgb(var(--wg-error)) !important; color: #fff !important; }
    .bg-success { background-color: rgb(var(--wg-success)) !important; color: #fff !important; }
    .bg-surface { background-color: rgb(var(--wg-surface)) !important; }
    .text-white { color: #fff !important; }

    @media (min-width: 992px) {
        .wg-hide-desktop { display: none !important; }
    }

    @media (max-width: 991.98px) {
        .wg-hide-mobile { display: none !important; }
    }

    [hidden] {
        display: none !important;
    }

    @media (max-width: 991.98px) {
        .wg-navbar {
            min-height: 4.4rem;
        }

        .wg-header__inner {
            justify-content: space-between;
        }

        .wg-logo__tagline {
            display: none;
        }

        .wg-heroslider {
            min-height: 36rem;
        }

        .wg-heroslider__content {
            padding-bottom: 6.5rem;
        }

        .wg-newsletter--feature {
            grid-template-columns: auto minmax(0, 1fr);
        }

        .wg-newsletter--feature .wg-newsletter__form {
            grid-column: 1 / -1;
        }

        .wg-boxes {
            grid-template-columns: 1fr;
        }

        .wg-cattree {
            gap: 1.35rem;
        }
    }

    @media (max-width: 767.98px) {
        .wg-card--list .wg-card__link,
        .wg-card--h {
            flex-direction: column;
        }

        .wg-card--list .wg-card__media,
        .wg-card__media--side {
            width: 100%;
            flex-basis: auto;
            aspect-ratio: 16 / 9;
        }

        .wg-gallery-grid {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .wg-gallery-grid--thumbs {
            grid-template-columns: repeat(4, minmax(0, 1fr));
        }

        .wg-company-row {
            flex-direction: column;
        }

        .wg-company-row__logo {
            width: 100%;
            flex-basis: auto;
        }

        .wg-company-stats {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .wg-company-stats > div:nth-child(2) {
            border-right: 0;
        }

        .wg-consent {
            grid-template-columns: auto minmax(0, 1fr);
        }

        .wg-consent__actions {
            grid-column: 1 / -1;
            justify-content: flex-end;
        }

        [data-wg-view-target].is-grid {
            grid-template-columns: 1fr;
        }
    }

    @media (max-width: 575.98px) {
        .container,
        .container-xl,
        .wg-container {
            width: min(100% - 1.5rem, var(--wg-container));
        }

        .wg-logo__mark {
            width: 2.35rem;
            height: 2.35rem;
            flex-basis: 2.35rem;
        }

        .wg-logo__text {
            font-size: 1.08rem;
        }

        .wg-header__actions {
            gap: 0.25rem;
        }

        .wg-header__action,
        .wg-burger {
            width: 2.45rem;
            height: 2.45rem;
            min-width: 2.45rem;
        }

        .wg-search-form {
            grid-template-columns: 1fr;
        }

        .wg-search-form__icon {
            top: 2.55rem;
        }

        .wg-header__search.is-open {
            max-height: 11rem;
        }

        .wg-heroslider {
            min-height: 34rem;
        }

        .wg-heroslider__title {
            font-size: clamp(2rem, 10vw, 2.75rem);
        }

        .wg-heroslider__excerpt {
            font-size: 0.92rem;
        }

        .wg-hero-tab {
            flex-basis: 12.5rem;
        }

        .wg-slider__arrow {
            top: auto;
            bottom: 0.8rem;
            transform: none;
        }

        .wg-slider__arrow--prev {
            right: 4rem;
            left: auto;
        }

        .wg-slider__arrow--next {
            right: 0.8rem;
        }

        .wg-slider__dots {
            right: auto;
            left: 0.8rem;
            justify-content: flex-start;
        }

        .wg-newsletter--feature {
            grid-template-columns: 1fr;
            text-align: center;
        }

        .wg-newsletter__icon {
            margin-inline: auto;
        }

        .wg-newsletter--feature .wg-newsletter__form {
            grid-column: auto;
            grid-template-columns: 1fr;
        }

        .wg-consent {
            grid-template-columns: 1fr;
            text-align: center;
        }

        .wg-consent__icon {
            margin-inline: auto;
        }

        .wg-consent__actions {
            grid-column: auto;
            justify-content: center;
        }

        .wg-gallery-grid--thumbs {
            grid-template-columns: repeat(3, minmax(0, 1fr));
        }

        .wg-cattree {
            column-count: 1;
        }

    }

    @media (prefers-reduced-motion: reduce) {
        html {
            scroll-behavior: auto;
        }

        *,
        *::before,
        *::after {
            scroll-behavior: auto !important;
            animation-duration: 0.01ms !important;
            animation-iteration-count: 1 !important;
            transition-duration: 0.01ms !important;
        }

        .wg-card:hover {
            transform: none;
        }
    }

    @media (prefers-contrast: more) {
        :root {
            --wg-border: 111 129 140;
        }

        .btn,
        .wg-btn,
        .form-control,
        .wg-input,
        .card,
        .wg-card {
            border-width: 2px;
        }
    }

    @media print {
        .wg-topbar,
        .wg-header,
        .wg-drawer,
        .wg-overlay,
        .wg-footer,
        .wg-consent,
        .wg-totop,
        .wg-production-compare,
        .wg-sidebar,
        .wg-adslot,
        .wg-card__actions {
            display: none !important;
        }

        body {
            background: #fff;
            color: #000;
        }

        .container,
        .container-xl,
        .wg-container {
            width: 100%;
            max-width: none;
        }
    }

.wg-filter-bar {
    margin-bottom: 1.5rem;
    box-shadow: var(--wg-shadow-sm);
}

.wg-newsletter-popup {
    width: min(47rem, calc(100vw - 2rem));
    max-width: none;
    max-height: min(90vh, 46rem);
    margin: auto;
    padding: 0;
    overflow: auto;
    border: 0;
    border-radius: 0.55rem;
    background: transparent;
    color: rgb(var(--wg-on-surface));
    box-shadow: var(--wg-shadow-lg);
}

.wg-newsletter-popup[hidden],
.wg-newsletter-popup:not([open]) {
    display: none;
}

.wg-newsletter-popup::backdrop {
    background: rgb(8 22 31 / 0.66);
    backdrop-filter: blur(4px);
}

.wg-newsletter-popup__surface {
    position: relative;
    overflow: hidden;
    border: 1px solid rgb(var(--wg-border));
    border-radius: inherit;
    background: rgb(var(--wg-surface));
}

.wg-newsletter-popup .wg-newsletter {
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

.wg-newsletter-popup .wg-newsletter--feature {
    grid-template-columns: 4rem minmax(0, 1fr);
    gap: 1rem 1.25rem;
    padding: 2rem;
    padding-right: 4rem;
}

.wg-newsletter-popup .wg-newsletter__form {
    grid-column: 1 / -1;
}

.wg-newsletter-popup__close {
    position: absolute;
    z-index: 2;
    top: 0.8rem;
    right: 0.8rem;
}

.wg-newsletter-popup__preference {
    padding: 0.8rem 1.25rem;
    border-top: 1px solid rgb(var(--wg-border));
    background: rgb(var(--wg-surface));
    color: rgb(var(--wg-muted));
    font-size: 0.78rem;
}

.wg-newsletter-popup__preference .form-switch {
    display: flex;
    align-items: center;
    gap: 0.65rem;
}

.wg-newsletter-popup__preference .form-check-input {
    flex: 0 0 auto;
    margin: 0;
}

.wg-newsletter-popup__success {
    display: grid;
    min-height: 21rem;
    place-items: center;
    align-content: center;
    gap: 0.85rem;
    padding: 2.5rem;
    text-align: center;
}

.wg-newsletter-popup__success[hidden] {
    display: none;
}

.wg-newsletter-popup__success p {
    max-width: 32rem;
    margin: 0 0 0.4rem;
    color: rgb(var(--wg-muted));
}

.wg-newsletter-popup__success-icon {
    color: rgb(var(--wg-success));
    font-size: 3.25rem;
    line-height: 1;
}

[data-mdb-theme="dark"] .wg-newsletter-popup .form-control,
body.wg-dark .wg-newsletter-popup .form-control {
    border-color: rgb(var(--wg-muted) / 0.72);
    background: rgb(var(--wg-background));
    color: rgb(var(--wg-on-surface));
}

[data-mdb-theme="dark"] .wg-newsletter-popup .form-control::placeholder,
body.wg-dark .wg-newsletter-popup .form-control::placeholder {
    color: rgb(var(--wg-muted));
    opacity: 1;
}

@media (max-width: 575.98px) {
    .wg-newsletter-popup {
        width: calc(100vw - 1rem);
        max-height: calc(100dvh - 1rem);
        border-radius: 0.45rem;
    }

    .wg-newsletter-popup .wg-newsletter--feature {
        grid-template-columns: 1fr;
        gap: 0.8rem;
        padding: 1.35rem;
        padding-top: 3.6rem;
        text-align: center;
    }

    .wg-newsletter-popup .wg-newsletter__form {
        grid-column: auto;
        grid-template-columns: 1fr;
    }

    .wg-newsletter-popup .wg-newsletter__icon {
        display: none;
    }

    .wg-newsletter-popup__preference {
        padding: 0.8rem 1rem;
    }

    .wg-newsletter-popup__success {
        min-height: 20rem;
        padding: 2rem 1.25rem;
    }
}

@media print {
    .wg-newsletter-popup {
        display: none !important;
    }
}

.wg-filter-bar .card-body {
    padding: 1rem;
}

.wg-result-count {
    margin: 0;
}

.wg-view-group {
    overflow: hidden;
    border: 1px solid rgb(var(--wg-border));
    border-radius: var(--wg-radius-sm);
}

.wg-narrow {
    max-width: 56rem;
}

.wg-gallery-main {
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: var(--wg-radius);
}

.wg-gallery-main__action {
    position: absolute;
    right: 1rem;
    bottom: 1rem;
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.5rem 0.75rem;
    border-radius: var(--wg-radius-sm);
    background: rgb(var(--wg-secondary) / 0.88);
    color: #fff;
    font-size: 0.75rem;
    font-weight: 800;
    backdrop-filter: blur(8px);
}

.wg-map {
    min-height: 19rem;
    overflow: hidden;
    border-radius: var(--wg-radius);
    background: rgb(var(--wg-surface-alt));
}

.wg-map__fallback {
    min-height: 19rem;
}

.wg-contact-card {
    overflow: hidden;
    border-top: 4px solid rgb(var(--wg-primary));
}

.wg-company-contact-layout {
    display: grid;
    grid-template-columns: minmax(16rem, 0.72fr) minmax(0, 1.28fr);
    align-items: start;
    gap: 1.5rem;
    margin-bottom: 2rem;
}

.wg-company-contact-layout > .wg-contact-card,
.wg-company-contact-layout > .wg-inquiry {
    margin-block: 0;
}

@media (max-width: 991.98px) {
    .wg-company-contact-layout {
        grid-template-columns: minmax(0, 1fr);
    }
}

.wg-form-section-title {
    margin: 1.25rem 0 1rem;
    padding-bottom: 0.65rem;
    border-bottom: 1px solid rgb(var(--wg-border));
    font-size: 1rem;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.wg-application-page {
    padding-block: clamp(1.25rem, 3vw, 2.5rem);
}

.wg-application-form {
    overflow: hidden;
    border-color: rgb(var(--wg-border));
    border-radius: var(--wg-radius-sm);
    box-shadow: var(--wg-shadow-sm);
}

.wg-application-form > .card-body {
    padding: clamp(1.25rem, 3vw, 2rem);
}

.wg-application-notice {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
    padding: 1rem 1.1rem;
    border-left: 3px solid rgb(var(--wg-primary));
    background: rgb(var(--wg-primary) / 0.07);
    color: rgb(var(--wg-text));
}

.wg-application-notice > .mdi {
    flex: 0 0 auto;
    color: rgb(var(--wg-primary-dark));
    font-size: 1.5rem;
    line-height: 1;
}

.wg-application-notice strong {
    display: block;
    margin-bottom: 0.2rem;
}

.wg-application-notice p,
.wg-application-section-copy {
    margin: 0;
    color: rgb(var(--wg-muted));
    line-height: 1.55;
}

.wg-application-section-copy {
    margin: -0.35rem 0 1rem;
    font-size: 0.9rem;
}

.wg-application-checks {
    display: grid;
    gap: 1rem;
    padding: 1rem;
    border: 1px solid rgb(var(--wg-border));
    background: rgb(var(--wg-surface-alt));
}

.wg-application-form select[multiple] {
    min-height: 9.5rem;
    padding: 0.35rem;
}

.wg-application-form select[multiple] option {
    padding: 0.45rem 0.55rem;
}

.wg-application-disclosure {
    overflow: hidden;
    border: 1px solid rgb(var(--wg-border));
    border-radius: var(--wg-radius-sm);
    background: rgb(var(--wg-surface));
}

.wg-application-disclosure > summary {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    padding: 0.9rem 1rem;
    cursor: pointer;
    font-weight: 750;
    list-style: none;
}

.wg-application-disclosure > summary::-webkit-details-marker {
    display: none;
}

.wg-application-disclosure > summary::after {
    margin-left: 0.15rem;
    color: rgb(var(--wg-primary-dark));
    content: "+";
    font-size: 1.25rem;
    font-weight: 500;
    line-height: 1;
}

.wg-application-disclosure[open] > summary::after {
    content: "−";
}

.wg-application-disclosure > summary > .mdi {
    color: rgb(var(--wg-primary-dark));
    font-size: 1.25rem;
}

.wg-application-optional {
    margin-left: auto;
    color: rgb(var(--wg-muted));
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.wg-application-disclosure__body {
    padding: 1rem;
    border-top: 1px solid rgb(var(--wg-border));
    background: rgb(var(--wg-surface-alt) / 0.45);
}

.wg-application-consent {
    margin-bottom: 1.25rem;
    padding: 1rem;
    border-left: 3px solid rgb(var(--wg-primary));
    background: rgb(var(--wg-surface-alt));
}

.wg-application-consent a {
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 0.15em;
}

.wg-application-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    min-width: 11rem;
}

.wg-application-submit > .mdi {
    margin: 0;
    font-size: 1.1rem;
    line-height: 1;
}

@media (max-width: 575.98px) {
    .wg-application-form > .card-body {
        padding: 1rem;
    }

    .wg-application-notice {
        padding: 0.9rem;
    }

    .wg-application-submit {
        width: 100%;
    }
}

.wg-quote {
    overflow: hidden;
    box-shadow: var(--wg-shadow-md);
}

.wg-quote__items {
    display: grid;
    gap: 0.75rem;
}

.wg-quote__actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.75rem;
    margin-top: 1.25rem;
    padding-top: 1.25rem;
    border-top: 1px solid rgb(var(--wg-border));
}

.wg-empty__icon {
    color: rgb(var(--wg-primary));
    font-size: 3rem;
}

.wg-header__action {
    position: relative;
}

.wg-header__count {
    position: absolute;
    top: -0.25rem;
    right: -0.25rem;
    display: grid;
    min-width: 1.1rem;
    height: 1.1rem;
    place-items: center;
    padding-inline: 0.2rem;
    border-radius: 999px;
    background: rgb(var(--wg-accent));
    color: #fff;
    font-size: 0.58rem;
    line-height: 1;
}

.wg-error-page {
    margin-block: clamp(3rem, 10vw, 7rem);
    overflow: hidden;
    text-align: center;
    box-shadow: var(--wg-shadow-md);
}

.wg-error-page .card-body {
    display: grid;
    justify-items: center;
    gap: 1rem;
    padding: clamp(2rem, 8vw, 5rem);
}

.wg-error-page__icon {
    color: rgb(var(--wg-primary));
    font-size: 4rem;
}

.wg-error-page__code {
    color: rgb(var(--wg-accent));
    font-family: var(--wg-font-display);
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.22em;
}

.wg-error-page p {
    color: rgb(var(--wg-muted));
}

.wg-error-page__actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.75rem;
}

.wg-confirmation {
    margin-block: clamp(3rem, 10vw, 7rem);
    overflow: hidden;
    text-align: center;
    box-shadow: var(--wg-shadow-md);
}

.wg-confirmation .card-body {
    display: grid;
    justify-items: center;
    gap: 1rem;
    padding: clamp(2rem, 8vw, 4rem);
}

.wg-confirmation__icon {
    color: rgb(var(--wg-primary));
    font-size: 4rem;
}

.wg-confirmation p {
    max-width: 38rem;
    color: rgb(var(--wg-muted));
}

.wg-card.is-gold {
    border-top: 3px solid #d5a524;
}

.wg-card.is-silver {
    border-top: 3px solid #99a9b2;
}

.wg-hero > img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.wg-hero__overlay {
    z-index: 1;
    display: flex;
    align-items: flex-end;
}

.wg-hero__overlay > .wg-container {
    padding-bottom: clamp(1.5rem, 5vw, 3rem);
    color: #fff;
}

.wg-hero__overlay h1,
.wg-hero__overlay h2,
.wg-hero__overlay p,
.wg-hero__overlay a {
    color: #fff;
}

.wg-newsletter:not(.wg-newsletter--compact):not(.wg-newsletter--feature) {
    padding: clamp(1.5rem, 4vw, 2rem);
}

.wg-deal-card .wg-card__media {
    background: #fff;
}

.wg-deal-card .wg-card__media img {
    object-fit: contain;
}

.wg-editorial-card--specification {
    border-top: 2px solid rgb(var(--wg-primary) / 0.7);
}

.wg-editorial-card--specification .wg-card__media {
    background: #fff;
}

.wg-editorial-card--specification .wg-card__media img {
    object-fit: contain;
}

.wg-editorial-card__badge,
.wg-editorial-card__until {
    position: absolute;
    z-index: 2;
    top: 0.75rem;
    padding: 0.35rem 0.55rem;
    border-radius: var(--wg-radius-control);
    color: #fff;
    font-size: 0.68rem;
    font-weight: 800;
    line-height: 1.2;
}

.wg-editorial-card__badge {
    left: 0.75rem;
    background: rgb(var(--wg-error));
}

.wg-editorial-card__until {
    right: 0.75rem;
    max-width: calc(100% - 1.5rem);
    background: rgb(var(--wg-secondary) / 0.9);
    text-align: right;
}

.wg-editorial-card__action {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    margin-top: auto;
    padding-top: 0.75rem;
    color: rgb(var(--wg-primary));
    font-size: 0.75rem;
}

.wg-landing-sponsor {
    display: flex;
    justify-content: flex-end;
}

.wg-landing-sponsor img {
    width: auto;
    max-height: 6.25rem;
    object-fit: contain;
}

.wg-landing-section {
    min-height: 18rem;
}

.wg-landing-section__media {
    aspect-ratio: 16 / 10;
}

.wg-landing-section__body > .wg-prose {
    flex: 1 1 auto;
}

@media (min-width: 768px) {
    .wg-landing-sections[data-wg-desktop-template="Horizontalno"] .wg-landing-section {
        display: flex;
        flex-direction: row;
    }

    .wg-landing-sections[data-wg-desktop-template="Horizontalno"] > .wg-col:nth-child(even) .wg-landing-section {
        flex-direction: row-reverse;
    }

    .wg-landing-sections[data-wg-desktop-template="Horizontalno"] .wg-landing-section__media {
        min-height: 100%;
        flex: 0 0 48%;
        aspect-ratio: auto;
    }

    .wg-landing-sections[data-wg-desktop-template="Vertikalno"] .wg-landing-section__media {
        aspect-ratio: 4 / 3;
    }
}

@media (max-width: 767.98px) {
    .wg-landing-sections[data-wg-mobile-template="Horizontalno"] .wg-landing-section {
        display: grid;
        min-height: 11rem;
        grid-template-columns: minmax(8rem, 42%) minmax(0, 1fr);
    }

    .wg-landing-sections[data-wg-mobile-template="Horizontalno"] > .wg-col:nth-child(even) .wg-landing-section {
        grid-template-columns: minmax(0, 1fr) minmax(8rem, 42%);
    }

    .wg-landing-sections[data-wg-mobile-template="Horizontalno"] > .wg-col:nth-child(even) .wg-landing-section__media {
        grid-column: 2;
        grid-row: 1;
    }

    .wg-landing-sections[data-wg-mobile-template="Horizontalno"] > .wg-col:nth-child(even) .wg-landing-section__body {
        grid-column: 1;
        grid-row: 1;
    }

    .wg-landing-sections[data-wg-mobile-template="Horizontalno"] .wg-landing-section__media {
        min-height: 100%;
        aspect-ratio: auto;
    }

    .wg-landing-sections[data-wg-mobile-template="Horizontalno"] .wg-landing-section__body {
        padding: 1rem;
    }

    .wg-landing-sections[data-wg-mobile-template="Vertikalno"] .wg-landing-section__media {
        aspect-ratio: 16 / 10;
    }
}

.wg-admin-shell {
    min-height: 100vh;
    background: rgb(var(--wg-background));
}

.wg-admin-bar {
    min-height: 4rem;
    border-bottom: 3px solid rgb(var(--wg-primary));
    background: rgb(var(--wg-secondary));
    box-shadow: var(--wg-shadow-sm);
}

.wg-admin-bar .container-fluid {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.wg-admin-bar .navbar-brand {
    margin: 0;
    font-family: var(--wg-font-display);
    font-size: 1rem;
}

.wg-admin-main {
    padding-block: 1.5rem 3rem;
}

.wg-admin-loading {
    display: flex;
    min-height: 16rem;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    color: rgb(var(--wg-muted));
}

#wg-builder .v-application {
    min-height: 0;
    background: transparent;
}

#wg-builder .v-application__wrap {
    min-height: 0;
}

#wg-builder .v-main {
    padding: 0 !important;
}

.wg-toolrow {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 1.5rem;
}

.wg-toolrow__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
}

.wg-toolrow__actions form {
    margin: 0;
}

.wg-stats {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.wg-stat .card-body {
    padding: 1rem;
}

.wg-stat b,
.wg-stat span {
    display: block;
}

.wg-stat b {
    font-family: var(--wg-font-display);
    font-size: 1.8rem;
    line-height: 1.1;
}

.wg-stat__date {
    padding-top: 0.35rem;
    font-size: 1rem !important;
}

.wg-stat span {
    margin-top: 0.35rem;
    color: rgb(var(--wg-muted));
    font-size: 0.72rem;
}

.wg-panel {
    margin-bottom: 1.5rem;
    overflow: hidden;
    box-shadow: var(--wg-shadow-sm);
}

.wg-panel__head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 0.75rem;
    border-color: rgb(var(--wg-border));
    background: rgb(var(--wg-surface-alt));
}

.wg-panel__head h2 {
    font-size: 0.9rem;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.wg-panel__head span {
    color: rgb(var(--wg-muted));
    font-size: 0.72rem;
}

.wg-grid-2 {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.5rem;
}

.wg-data {
    --mdb-table-bg: transparent;
    margin: 0;
    color: rgb(var(--wg-on-surface));
    font-size: 0.82rem;
}

.wg-data th {
    color: rgb(var(--wg-muted));
    font-size: 0.68rem;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.wg-chart {
    display: grid;
    height: 10rem;
    grid-auto-columns: minmax(1.2rem, 1fr);
    grid-auto-flow: column;
    gap: 0.2rem;
    overflow-x: auto;
    padding-bottom: 0.5rem;
}

.wg-chart__column {
    display: grid;
    min-width: 1.2rem;
    grid-template-rows: minmax(0, 1fr) auto;
    gap: 0.25rem;
    text-align: center;
}

.wg-chart__column progress {
    width: 100%;
    height: 100%;
    border: 0;
    background: rgb(var(--wg-surface-alt));
    writing-mode: vertical-lr;
    direction: rtl;
}

.wg-chart__column progress::-webkit-progress-bar {
    background: rgb(var(--wg-surface-alt));
}

.wg-chart__column progress::-webkit-progress-value {
    background: rgb(var(--wg-primary));
}

.wg-chart__column progress::-moz-progress-bar {
    background: rgb(var(--wg-primary));
}

.wg-chart__column span {
    overflow: hidden;
    color: rgb(var(--wg-muted));
    font-size: 0.55rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.wg-chart__peak {
    margin: 0.75rem 0 0;
    color: rgb(var(--wg-muted));
    font-size: 0.72rem;
    text-align: right;
}

.wg-pair {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 0;
    border-bottom: 1px solid rgb(var(--wg-border));
    font-size: 0.82rem;
}

.wg-pair:last-child {
    border-bottom: 0;
}

.wg-pair__score {
    display: grid;
    justify-items: center;
    color: rgb(var(--wg-primary));
}

.wg-pair__score small {
    color: rgb(var(--wg-muted));
}

@media (max-width: 767.98px) {
    .wg-admin-bar .navbar-brand {
        display: none;
    }

    .wg-grid-2 {
        grid-template-columns: 1fr;
    }

    .wg-pair {
        grid-template-columns: 1fr;
    }

    .wg-pair__score {
        justify-items: start;
    }
}

/* Portal polish: shared interaction, editorial rail and high-traffic indexes. */
.wg-col > .wg-card:not(:only-child) {
    height: auto;
}

.btn,
.wg-btn,
.wg-action-button,
.wg-action-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    line-height: 1.2;
    vertical-align: middle;
}

.wg-action-button,
.wg-action-link {
    min-height: 2.5rem;
}

.wg-icon-button,
.btn-floating.wg-icon-button {
    display: inline-grid;
    flex: 0 0 auto;
    place-items: center;
    line-height: 1;
}

.wg-btn__icon,
.btn > .mdi,
.wg-btn > .mdi {
    display: inline-grid;
    width: 1.15em;
    height: 1.15em;
    flex: 0 0 1.15em;
    place-items: center;
    font-size: 1.18em;
    line-height: 1;
}

.wg-btn__icon::before,
.btn > .mdi::before,
.wg-btn > .mdi::before {
    line-height: 1;
}

.wg-btn__label {
    display: inline-block;
    min-width: 0;
    line-height: 1.25;
}

.wg-card__actions .wg-action-button {
    min-height: 2.6rem;
}

.btn-primary,
.wg-btn:not(.wg-btn--outline) {
    border-color: rgb(var(--wg-primary-dark));
    background: rgb(var(--wg-primary-dark));
    color: #fff;
}

.btn-primary:hover,
.btn-primary:focus,
.wg-btn:not(.wg-btn--outline):hover,
.wg-btn:not(.wg-btn--outline):focus {
    border-color: rgb(var(--wg-secondary));
    background: rgb(var(--wg-secondary));
    color: #fff;
}

.btn-outline-primary {
    border-color: rgb(var(--wg-primary-dark));
    color: rgb(var(--wg-primary-dark));
}

.btn-outline-primary:hover,
.btn-outline-primary:focus {
    border-color: rgb(var(--wg-primary-dark));
    background: rgb(var(--wg-primary-dark));
    color: #fff;
}

.text-primary {
    color: rgb(var(--wg-primary-dark)) !important;
}

.wg-tabs .is-active,
.wg-tabs a:hover {
    background: rgb(var(--wg-primary-dark));
    color: #fff;
}

.wg-card__title {
    font-weight: 750;
}

.wg-card__footer,
.card-footer.wg-card__footer {
    font-size: 0.8rem;
}

.wg-card__actions .wg-btn__label {
    font-size: max(0.78rem, 12px);
}

.form-check {
    display: flex;
    align-items: flex-start;
    gap: 0.65rem;
}

.form-check .form-check-input {
    flex: 0 0 auto;
    margin: 0.28rem 0 0;
}

.form-check .form-check-label {
    line-height: 1.5;
}

/* Pagination */
.wg-pagination-shell {
    display: grid;
    justify-items: center;
    gap: 0.8rem;
    margin-block: clamp(2rem, 5vw, 3.5rem);
}

.wg-pagination__summary {
    margin: 0;
    padding: 0.35rem 0.75rem;
    border: 1px solid rgb(var(--wg-border));
    border-radius: 999px;
    background: rgb(var(--wg-surface));
    color: rgb(var(--wg-muted));
    font-size: 0.75rem;
    font-weight: 700;
}

.wg-pagination {
    width: fit-content;
    max-width: 100%;
    flex-wrap: nowrap;
    align-items: center;
    gap: 0.3rem;
    margin: 0;
    padding: 0.4rem;
    border: 1px solid rgb(var(--wg-border));
    border-radius: 999px;
    background: rgb(var(--wg-surface));
    box-shadow: var(--wg-shadow-sm);
}

.wg-pagination__pages {
    display: flex;
    align-items: center;
    gap: 0.2rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.wg-pagination__page {
    display: block;
}

.wg-pagination__control,
.wg-pagination__page-link,
.wg-pagination__ellipsis {
    display: inline-flex;
    min-width: 2.45rem;
    min-height: 2.45rem;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    padding: 0.35rem 0.7rem;
    border: 1px solid transparent;
    border-radius: 999px !important;
    background: transparent;
    color: rgb(var(--wg-on-surface));
    font-size: 0.82rem;
    font-weight: 750;
    line-height: 1;
    box-shadow: none;
    transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.wg-pagination__control {
    padding-inline: 0.8rem;
    color: rgb(var(--wg-primary-dark));
}

.wg-pagination__control > .wg-btn__icon,
.wg-pagination__control > .wg-pagination__control-label {
    min-width: 0;
    min-height: 0;
    padding: 0;
    border: 0;
    border-radius: 0 !important;
    background: transparent;
    color: inherit;
    box-shadow: none;
}

.wg-pagination__control > .wg-btn__icon {
    width: 1.15em;
    height: 1.15em;
}

.wg-pagination__control:hover,
.wg-pagination__page-link:hover {
    border-color: rgb(var(--wg-primary) / 0.2);
    background: rgb(var(--wg-primary-soft));
    color: rgb(var(--wg-primary-dark));
    transform: translateY(-1px);
}

.wg-pagination__page-link.is-current {
    border-color: rgb(var(--wg-primary-dark));
    background: rgb(var(--wg-primary-dark));
    color: #fff;
    box-shadow: 0 6px 16px rgb(var(--wg-primary) / 0.25);
}

.wg-pagination__control.is-disabled {
    color: rgb(var(--wg-muted));
    opacity: 0.42;
    pointer-events: none;
}

.wg-pagination__ellipsis {
    min-width: 1.65rem;
    padding-inline: 0.2rem;
    color: rgb(var(--wg-muted));
}

/* Editorial sidebar */
.wg-sidebar {
    gap: 1.5rem;
}

.wg-sidebar__section .wg-section-head--compact {
    margin-bottom: 0.7rem;
    padding-bottom: 0.7rem;
}

.wg-sidebar__section .wg-side-title {
    font-size: 1.05rem;
    letter-spacing: -0.015em;
}

.wg-izdvajamo,
.wg-izdvajamo .wg-overlay-slide {
    min-height: 15rem;
}

.wg-reco-list {
    display: grid;
    gap: 0.25rem;
    margin: 0;
    padding: 0.45rem;
    list-style: none;
}

.wg-reco {
    display: block;
    padding: 0;
    border: 0;
}

.wg-reco__link {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 0.8rem;
    padding: 0.6rem;
    border-radius: calc(var(--wg-radius) - 0.25rem);
    color: inherit;
    transition: background 0.18s ease, transform 0.18s ease;
}

.wg-reco__link:hover {
    background: rgb(var(--wg-primary-soft) / 0.7);
    color: inherit;
    transform: translateX(2px);
}

.wg-reco__media {
    position: relative;
    display: grid;
    width: 5.1rem;
    height: 4.25rem;
    flex: 0 0 5.1rem;
    overflow: hidden;
    place-items: center;
    border-radius: 0.7rem;
    background: rgb(var(--wg-surface-alt));
}

.wg-reco__media img,
.wg-reco img {
    width: 100%;
    height: 100%;
    border-radius: inherit;
    object-fit: cover;
    transition: transform 0.3s var(--wg-ease);
}

.wg-reco__link:hover .wg-reco__media img {
    transform: scale(1.06);
}

.wg-reco__placeholder {
    color: rgb(var(--wg-muted) / 0.52);
    font-size: 1.55rem;
}

.wg-reco__body {
    display: block;
    min-width: 0;
}

.wg-reco__title {
    /* Sidebar scale, not the editorial-card scale: the rail sits in a 340px
       column beside the content. */
    font-size: 0.85rem;
    font-weight: 750;
    line-height: 1.4;
}

.wg-reco__kicker {
    margin-top: 0.35rem;
    color: rgb(var(--wg-primary-dark));
    font-size: 0.7rem;
    letter-spacing: 0.075em;
}

.wg-reco--lead .wg-reco__link {
    align-items: stretch;
    padding: 0.7rem;
    background: linear-gradient(135deg, rgb(var(--wg-primary-soft) / 0.8), transparent);
}

.wg-reco--lead .wg-reco__media {
    width: 6.6rem;
    height: 5.35rem;
    flex-basis: 6.6rem;
}

.wg-reco--lead .wg-reco__title {
    font-size: 0.93rem;
}

.wg-partners {
    padding: 1.1rem;
}

.wg-partner {
    border-radius: 0.65rem;
    transition: background 0.18s ease, padding 0.18s ease;
}

.wg-partner:hover {
    padding-inline: 0.45rem;
    background: rgb(var(--wg-primary-soft) / 0.55);
    color: inherit;
}

/* Compact legacy footer */
.wg-footer {
    margin-top: clamp(2rem, 4vw, 3rem);
    background: rgb(var(--wg-secondary));
}

.wg-footer__main {
    display: grid;
    gap: 0.4rem;
    padding-block: 1.35rem 0.9rem;
}

.wg-footer__brand {
    width: fit-content;
    min-height: 2.75rem;
}

.wg-footer__brand .wg-logo__image {
    width: auto;
    max-width: 10rem;
    height: 1.75rem;
}

.wg-footer__brand .wg-logo__fallback {
    color: #fff;
    font-size: 1.1rem;
}

.wg-footer__brand .wg-logo__fallback .accent {
    color: rgb(133 222 238);
}

.wg-footer__row {
    display: flex;
    min-width: 0;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.65rem 1.25rem;
}

.wg-footer__navigation {
    min-width: 0;
    flex: 1 1 auto;
}

.wg-footer__links {
    display: flex;
    flex-wrap: wrap;
    gap: 0.1rem 1rem;
    padding: 0;
    list-style: none;
}

.wg-footer a:not(.btn) {
    color: rgb(255 255 255 / 0.72);
}

.wg-footer a:not(.btn):hover {
    color: #fff;
}

.wg-footer__link {
    display: inline-flex;
    min-height: 2.75rem;
    align-items: center;
    color: rgb(133 222 238) !important;
    font-size: 0.78rem;
    font-weight: 650;
    line-height: 1.35;
    transition: color 0.18s ease, background-color 0.18s ease;
}

.wg-footer__link:hover,
.wg-footer__link:focus-visible {
    color: #fff !important;
}

.wg-footer__social {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 0.35rem;
    margin-left: auto;
}

.wg-footer__bottom {
    padding-block: 0.7rem;
    border-top: 1px solid rgb(255 255 255 / 0.18);
    color: rgb(255 255 255 / 0.68);
    font-size: 0.72rem;
    text-align: center;
}

.wg-footer__copyright :last-child {
    margin-bottom: 0;
}

@media (max-width: 575.98px) {
    .wg-footer__main {
        gap: 0.55rem;
        padding-block: 1.35rem 1rem;
    }

    .wg-footer__links {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0 0.75rem;
    }

    .wg-footer__link {
        width: 100%;
        font-size: 0.75rem;
    }

    .wg-footer__social {
        margin-left: 0;
    }
}

/* Specials portal */
.wg-specials-index {
    padding-block: 0.75rem 1rem;
}

.wg-specials-index__head {
    align-items: center;
}

.wg-results-summary {
    flex: 0 0 auto;
    margin: 0;
    padding: 0.35rem 0.7rem;
    border-radius: 999px;
    background: rgb(var(--wg-primary-soft));
    color: rgb(var(--wg-primary-dark));
    font-weight: 750;
}

.wg-specials-grid {
    row-gap: 0.5rem;
}

.wg-specials-grid__lead {
    width: 100%;
}

.wg-special-card {
    isolation: isolate;
    border-color: rgb(var(--wg-border));
    box-shadow: var(--wg-shadow-sm);
}

.wg-special-card__link {
    height: 100%;
}

.wg-special-card__media {
    margin: 0;
    aspect-ratio: 16 / 9;
}

.wg-special-card__media img {
    object-fit: cover;
}

.wg-special-card__placeholder {
    width: 100%;
    min-height: 100%;
    background:
        radial-gradient(circle at 82% 18%, rgb(var(--wg-primary) / 0.2), transparent 45%),
        rgb(var(--wg-surface-alt));
    color: rgb(var(--wg-primary) / 0.65);
}

.wg-special-card__body {
    padding: clamp(1.15rem, 3vw, 1.55rem);
}

.wg-special-card__eyebrow {
    display: block;
    margin-bottom: 0.55rem;
    color: rgb(var(--wg-primary-dark));
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.wg-special-card__title {
    font-size: clamp(1.1rem, 2.2vw, 1.35rem);
    letter-spacing: -0.02em;
    line-height: 1.28;
}

.wg-special-card__excerpt {
    margin-bottom: 1rem;
}

.wg-special-card__cta {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    margin-top: auto;
    color: rgb(var(--wg-primary-dark));
    font-size: 0.8rem;
    font-weight: 800;
}

.wg-special-card__cta .mdi {
    transition: transform 0.18s ease;
}

.wg-special-card:hover .wg-special-card__cta .mdi {
    transform: translateX(3px);
}

.wg-special-card--lead .wg-special-card__media {
    min-height: 20rem;
    flex: 0 0 48%;
    aspect-ratio: auto;
}

.wg-special-card--lead .wg-special-card__body {
    justify-content: center;
    padding: clamp(1.5rem, 4vw, 2.5rem);
}

.wg-special-card--lead .wg-special-card__title {
    font-size: clamp(1.55rem, 3vw, 2.15rem);
}

.wg-special-card--lead .wg-special-card__excerpt {
    font-size: 0.98rem;
}

.wg-specials-index__pagination:empty {
    display: none;
}

/* Webgradnja Home editorial portal */
.wg-home-portal {
    padding-block: 0.75rem 1rem;
}

.wg-home-search {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.6rem;
    margin-bottom: 1rem;
    padding: 0.55rem;
    border-radius: calc(var(--wg-radius) + 0.25rem);
    box-shadow: var(--wg-shadow-md);
}

.wg-home-search__icon {
    display: grid;
    width: 2.75rem;
    height: 2.75rem;
    place-items: center;
    color: rgb(var(--wg-primary-dark));
    font-size: 1.35rem;
}

.wg-home-search__input {
    min-width: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
}

.wg-home-search__input:focus {
    background: rgb(var(--wg-surface-alt));
    box-shadow: none;
}

.wg-home-search__submit {
    min-height: 3rem;
    border-radius: calc(var(--wg-radius) - 0.2rem);
}

.wg-home-topic-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
    margin-bottom: clamp(1.5rem, 4vw, 2.5rem);
}

.wg-home-topic-nav__link {
    border: 1px solid rgb(var(--wg-border));
    background: rgb(var(--wg-surface));
    color: rgb(var(--wg-on-surface));
    box-shadow: var(--wg-shadow-sm);
    transition: border-color 0.18s ease, background 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.wg-home-topic-nav__link:hover {
    border-color: rgb(var(--wg-primary-dark));
    background: rgb(var(--wg-primary-dark));
    color: #fff;
    transform: translateY(-1px);
}

.wg-home-feature {
    position: relative;
    overflow: hidden;
    margin-bottom: clamp(2.75rem, 6vw, 4.75rem);
    border: 1px solid rgb(var(--wg-secondary));
    border-radius: calc(var(--wg-radius) + 0.45rem);
    background: rgb(var(--wg-secondary));
    box-shadow: var(--wg-shadow-lg);
}

.wg-home-feature__link {
    display: grid;
    min-height: clamp(26rem, 44vw, 34rem);
    grid-template-columns: minmax(0, 1.28fr) minmax(19rem, 0.72fr);
    color: #fff;
}

.wg-home-feature__link:hover {
    color: #fff;
}

.wg-home-feature__media {
    position: relative;
    min-width: 0;
    margin: 0;
    overflow: hidden;
    background: rgb(var(--wg-secondary));
}

.wg-home-feature__media::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, transparent 68%, rgb(var(--wg-secondary) / 0.68));
    content: "";
    pointer-events: none;
}

.wg-home-feature__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.65s var(--wg-ease);
}

.wg-home-feature:hover .wg-home-feature__media img {
    transform: scale(1.035);
}

.wg-home-feature__body {
    display: flex;
    min-width: 0;
    flex-direction: column;
    justify-content: center;
    padding: clamp(2rem, 5vw, 4rem);
}

.wg-home-feature__body .wg-eyebrow {
    color: rgb(var(--wg-accent));
}

.wg-home-feature__title {
    margin: 0;
    color: #fff;
    font-size: clamp(2rem, 4vw, 3.35rem);
    letter-spacing: -0.045em;
    line-height: 1.04;
}

.wg-home-feature__excerpt {
    margin: 1.2rem 0 0;
    color: rgb(255 255 255 / 0.78);
    font-size: clamp(0.98rem, 1.5vw, 1.08rem);
    line-height: 1.7;
}

.wg-home-story__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.35rem;
    margin-top: 0.85rem;
    color: rgb(var(--wg-muted));
    font-size: 0.75rem;
    font-weight: 700;
}

.wg-home-feature .wg-home-story__meta {
    color: rgb(255 255 255 / 0.68);
}

.wg-home-story__meta .mdi {
    flex: 0 0 auto;
    line-height: 1;
}

.wg-home-story__cta {
    display: inline-flex;
    width: fit-content;
    align-items: center;
    gap: 0.45rem;
    margin-top: 1.35rem;
    color: rgb(var(--wg-accent));
    font-size: 0.82rem;
    font-weight: 800;
}

.wg-home-story__cta .mdi,
.wg-home-category-section__head .mdi {
    transition: transform 0.18s ease;
}

.wg-home-feature:hover .wg-home-story__cta .mdi,
.wg-home-category-section__head a:hover .mdi {
    transform: translateX(3px);
}

.wg-home-editorial,
.wg-home-category-section {
    margin-bottom: clamp(2.75rem, 6vw, 4.75rem);
}

.wg-home-story-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.wg-home-story {
    min-height: 0;
}

.wg-home-story__link {
    height: 100%;
}

.wg-home-story__media {
    margin: 0;
    aspect-ratio: 16 / 10;
}

.wg-home-story__body {
    padding: 1.1rem;
}

.wg-home-story__kicker {
    display: block;
    margin-bottom: 0.45rem;
    color: rgb(var(--wg-primary-dark));
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.075em;
    text-transform: uppercase;
}

.wg-home-story__title {
    font-size: 1.04rem;
    line-height: 1.34;
}

.wg-home-story__excerpt {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.wg-home-story--lead {
    grid-column: span 2;
    grid-row: span 2;
}

.wg-home-story--lead .wg-home-story__media {
    min-height: 22rem;
    flex: 1 1 auto;
    aspect-ratio: auto;
}

.wg-home-story--lead .wg-home-story__body {
    padding: clamp(1.25rem, 3vw, 1.75rem);
}

.wg-home-story--lead .wg-home-story__title {
    font-size: clamp(1.35rem, 2.5vw, 1.9rem);
}

.wg-home-portal__billboard {
    margin-block: clamp(2rem, 5vw, 4rem);
}

.wg-home-category-section__head {
    align-items: center;
}

.wg-home-category-section__head .btn {
    gap: 0.35rem;
    color: rgb(var(--wg-primary-dark));
    font-weight: 800;
}

.wg-home-category-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
}

.wg-home-category-card__media {
    margin: 0;
    aspect-ratio: 4 / 3;
}

.wg-home-category-card__body {
    padding: 1rem;
}

.wg-home-category-card__title {
    font-size: 0.98rem;
    line-height: 1.35;
}

.wg-home-category-card__excerpt {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.wg-home-portal__newsletter {
    max-width: 54rem;
    margin: clamp(3rem, 6vw, 5rem) auto 0;
}

/* Gallery portal */
.wg-gallery-index {
    padding-block: 0.75rem 1rem;
}

.wg-gallery-index__content {
    min-width: 0;
}

.wg-gallery-group + .wg-gallery-group {
    margin-top: clamp(2.5rem, 6vw, 4.5rem);
}

.wg-gallery-group__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.15rem;
    padding-bottom: 0.85rem;
    border-bottom: 1px solid rgb(var(--wg-border));
}

.wg-gallery-group__eyebrow {
    display: block;
    margin-bottom: 0.3rem;
    color: rgb(var(--wg-primary-dark));
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.wg-gallery-group__title {
    margin: 0;
    font-size: clamp(1.55rem, 3vw, 2.15rem);
    letter-spacing: -0.03em;
}

.wg-gallery-group__count {
    flex: 0 0 auto;
    padding: 0.38rem 0.68rem;
    border-radius: 999px;
    background: rgb(var(--wg-primary-soft));
    color: rgb(var(--wg-primary-dark));
    font-size: 0.72rem;
    font-weight: 750;
}

.wg-gallery-index .wg-gallery-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    margin: 0;
}

.wg-gallery-index .wg-gallery-grid > .wg-col {
    width: 100%;
    padding: 0;
}

.wg-gallery-card {
    min-height: 13rem;
}

.wg-gallery-card__link {
    display: grid;
    height: 100%;
    min-width: 0;
    grid-template-columns: minmax(8.75rem, 38%) minmax(0, 1fr);
    color: inherit;
}

.wg-gallery-card__link:hover {
    color: inherit;
}

.wg-gallery-card__media {
    position: relative;
    display: grid;
    min-width: 0;
    min-height: 100%;
    margin: 0;
    overflow: hidden;
    place-items: center;
    background:
        radial-gradient(circle at 25% 20%, rgb(var(--wg-primary) / 0.14), transparent 55%),
        rgb(var(--wg-surface-alt));
}

.wg-gallery-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.45s var(--wg-ease);
}

.wg-gallery-card:hover .wg-gallery-card__media img {
    transform: scale(1.045);
}

.wg-gallery-card__placeholder {
    color: rgb(var(--wg-primary) / 0.5);
    font-size: 2.4rem;
}

.wg-gallery-card__body {
    display: flex;
    min-width: 0;
    flex-direction: column;
    padding: 1.1rem;
}

.wg-gallery-card__title {
    margin: 0;
    font-size: 1.08rem;
    line-height: 1.3;
}

.wg-gallery-card__description {
    display: -webkit-box;
    overflow: hidden;
    margin: 0.65rem 0 0;
    color: rgb(var(--wg-muted));
    font-size: 0.84rem;
    line-height: 1.5;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.wg-gallery-card__footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    margin-top: auto;
    padding-top: 0.9rem;
    color: rgb(var(--wg-muted));
    font-size: 0.72rem;
    font-weight: 750;
}

.wg-gallery-card__cta {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    color: rgb(var(--wg-primary-dark));
}

.wg-gallery-card__cta .mdi {
    transition: transform 0.18s ease;
}

.wg-gallery-card:hover .wg-gallery-card__cta .mdi {
    transform: translateX(3px);
}

.wg-gallery-card.is-disabled {
    border-style: dashed;
    box-shadow: none;
}

.wg-gallery-card.is-disabled:hover {
    border-color: rgb(var(--wg-border));
    transform: none;
}

/* Commerce and campaign cards */
.wg-card--product .wg-card__seller {
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.wg-card--product .wg-card__seller .mdi {
    flex: 0 0 auto;
    color: rgb(var(--wg-primary));
    line-height: 1;
}

.wg-contact-card h2,
.wg-contact-card .wg-h3 {
    display: flex;
    align-items: center;
    gap: 0.55rem;
}

.wg-contact-card h2 > .mdi,
.wg-contact-card .wg-h3 > .mdi {
    flex: 0 0 auto;
    line-height: 1;
}

.wg-deal-card {
    border-top: 3px solid rgb(var(--wg-primary));
}

.wg-deal-card .wg-card__media {
    aspect-ratio: 4 / 3;
}

.wg-deal-card .wg-card__title {
    font-size: 1.05rem;
    line-height: 1.35;
}

.wg-deal-card__badge,
.wg-deal-card__until {
    box-shadow: 0 4px 12px rgb(var(--wg-secondary) / 0.18);
}

@media (max-width: 991.98px) {
    .wg-home-feature__link {
        grid-template-columns: minmax(0, 1.1fr) minmax(18rem, 0.9fr);
    }

    .wg-home-story-grid,
    .wg-home-category-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .wg-home-story--lead {
        grid-column: span 2;
        grid-row: auto;
    }

    .wg-gallery-index__sidebar {
        margin-top: 2.5rem;
    }

}

@media (max-width: 767.98px) {
    .wg-home-topic-nav {
        flex-wrap: nowrap;
        overflow-x: auto;
        padding: 0.1rem 0.1rem 0.6rem;
        scroll-snap-type: x proximity;
        scrollbar-width: none;
    }

    .wg-home-topic-nav::-webkit-scrollbar {
        display: none;
    }

    .wg-home-topic-nav__link {
        flex: 0 0 auto;
        scroll-snap-align: start;
    }

    .wg-home-feature__link {
        min-height: 0;
        grid-template-columns: 1fr;
    }

    .wg-home-feature__media {
        aspect-ratio: 16 / 10;
    }

    .wg-home-feature__media::after {
        background: linear-gradient(180deg, transparent 70%, rgb(var(--wg-secondary) / 0.55));
    }

    .wg-home-feature__body {
        padding: clamp(1.35rem, 6vw, 2.25rem);
    }

    .wg-home-story-grid {
        grid-template-columns: 1fr;
    }

    .wg-home-story--lead {
        grid-column: auto;
    }

    .wg-home-story--lead .wg-home-story__media {
        min-height: 0;
        aspect-ratio: 16 / 10;
    }

    .wg-gallery-index .wg-gallery-grid {
        grid-template-columns: 1fr;
    }

    .wg-boxes {
        grid-template-columns: none;
        grid-auto-columns: minmax(17rem, 86vw);
        grid-auto-flow: column;
        overflow-x: auto;
        padding: 0.15rem 0.1rem 0.75rem;
        scroll-padding-inline: 0.1rem;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
        -ms-overflow-style: none;
    }

    .wg-boxes::-webkit-scrollbar {
        display: none;
    }

    .wg-boxes .wg-box {
        min-width: 0;
        scroll-snap-align: start;
    }

    .wg-special-card--lead .wg-special-card__media {
        min-height: 0;
        flex-basis: auto;
        aspect-ratio: 16 / 9;
    }

}

@media (max-width: 575.98px) {
    .wg-home-search {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .wg-home-search__icon {
        display: none;
    }

    .wg-home-search__submit {
        min-width: 3rem;
        padding-inline: 0.8rem;
    }

    .wg-home-category-grid {
        grid-template-columns: 1fr;
    }

    .wg-gallery-group__head {
        align-items: flex-start;
        flex-direction: column;
    }

    .wg-gallery-card__link {
        grid-template-columns: minmax(7.5rem, 34%) minmax(0, 1fr);
    }

    .wg-pagination-shell {
        justify-items: stretch;
    }

    .wg-pagination {
        width: 100%;
        justify-content: center;
        gap: 0.12rem;
        padding: 0.3rem;
    }

    .wg-pagination__pages {
        min-width: 0;
        gap: 0.08rem;
    }

    .wg-pagination .wg-pagination__control-label {
        display: none;
    }

    .wg-pagination__control,
    .wg-pagination__page-link,
    .wg-pagination__ellipsis {
        min-width: 2rem;
        min-height: 2.25rem;
        padding-inline: 0.35rem;
        font-size: 0.76rem;
    }

    .wg-pagination__control {
        flex: 0 0 2.25rem;
        width: 2.25rem;
        padding: 0;
    }

    .wg-pagination__ellipsis {
        min-width: 1.25rem;
        padding: 0;
    }

    .wg-reco--lead .wg-reco__media {
        width: 5.6rem;
        height: 4.65rem;
        flex-basis: 5.6rem;
    }

    .wg-specials-index__head {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* Modern portal controls and editorial presentation. */
:root {
    --wg-action: 8 83 107;
    --wg-action-hover: 18 40 58;
    --wg-action-soft: 229 244 247;
    --wg-action-on: 255 255 255;
}

[data-mdb-theme="dark"],
body.wg-dark {
    --wg-action: 79 195 219;
    --wg-action-hover: 133 222 238;
    --wg-action-soft: 22 58 70;
    --wg-action-on: 8 23 33;
}

.wg-button,
.wg-icon-button,
.wg-text-action,
.wg-filter-chip {
    appearance: none;
    border: 0;
    font-family: var(--wg-font-body);
    text-transform: none;
    -webkit-tap-highlight-color: transparent;
}

.wg-button {
    display: inline-flex;
    min-height: 2.75rem;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.7rem 1.125rem;
    border: 1px solid transparent;
    border-radius: 0.75rem;
    font-size: 0.875rem;
    font-weight: 750;
    letter-spacing: -0.01em;
    line-height: 1;
    box-shadow: none;
    transition: border-color 0.18s ease, background 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.wg-button:hover,
.wg-button:focus-visible {
    transform: translateY(-1px);
}

.wg-button:disabled,
.wg-button[aria-disabled="true"] {
    cursor: not-allowed;
    opacity: 0.52;
    transform: none;
}

.wg-button--primary {
    border-color: rgb(var(--wg-action));
    background: rgb(var(--wg-action));
    color: rgb(var(--wg-action-on));
}

.wg-button--primary:hover,
.wg-button--primary:focus-visible {
    border-color: rgb(var(--wg-action-hover));
    background: rgb(var(--wg-action-hover));
    color: rgb(var(--wg-action-on));
}

.wg-button--secondary {
    border-color: rgb(var(--wg-border));
    background: rgb(var(--wg-surface));
    color: rgb(var(--wg-on-surface));
}

.wg-button--secondary:hover,
.wg-button--secondary:focus-visible {
    border-color: rgb(var(--wg-action) / 0.34);
    background: rgb(var(--wg-surface-alt));
    color: rgb(var(--wg-action));
}

.wg-button--soft {
    border-color: rgb(var(--wg-action) / 0.12);
    background: rgb(var(--wg-action-soft));
    color: rgb(var(--wg-action));
}

.wg-button--soft:hover,
.wg-button--soft:focus-visible,
.wg-button--soft.is-active {
    border-color: rgb(var(--wg-action));
    background: rgb(var(--wg-action));
    color: #fff;
}

.wg-button--hero {
    border-color: rgb(255 255 255 / 0.78);
    background: #fff;
    color: rgb(var(--wg-action));
}

.wg-button--hero:hover,
.wg-button--hero:focus-visible {
    border-color: #fff;
    background: rgb(var(--wg-action-soft));
    color: rgb(var(--wg-action-hover));
}

.wg-button--sm {
    min-height: 2.5rem;
    padding-inline: 0.875rem;
    font-size: 0.8125rem;
}

.wg-button--lg {
    min-height: 3rem;
    padding-inline: 1.375rem;
}

.wg-button--block {
    width: 100%;
}

.wg-button__label,
.wg-btn__label {
    display: inline-flex;
    min-width: 0;
    min-height: 1.125rem;
    align-items: center;
    justify-content: center;
    line-height: 1.2;
    text-align: center;
    /* normal, not nowrap: an overlong label used to overflow the flex row
       and paint itself across the icon instead of taking a second line. */
    white-space: normal;
}

.wg-button__icon,
.wg-btn__icon,
.wg-icon-button > .mdi,
.wg-button > .mdi,
.wg-btn > .mdi,
.btn > .mdi,
.wg-text-action > .mdi,
.wg-action-button > .mdi,
.wg-action-link > .mdi {
    display: inline-flex;
    width: 1.125rem;
    height: 1.125rem;
    min-width: 1.125rem;
    min-height: 1.125rem;
    flex: 0 0 1.125rem;
    align-self: center;
    align-items: center;
    justify-content: center;
    margin: 0;
    font-size: 1.125rem;
    line-height: 1;
    vertical-align: middle;
}

.wg-button__icon::before,
.wg-btn__icon::before,
.wg-icon-button > .mdi::before,
.wg-button > .mdi::before,
.wg-btn > .mdi::before,
.btn > .mdi::before,
.wg-text-action > .mdi::before,
.wg-action-button > .mdi::before,
.wg-action-link > .mdi::before {
    display: block;
    width: 1em;
    height: 1em;
    font-size: inherit;
    line-height: 1;
}

.wg-icon-button {
    display: inline-grid;
    width: 2.75rem;
    height: 2.75rem;
    min-width: 2.75rem;
    min-height: 2.75rem;
    flex: 0 0 2.75rem;
    place-items: center;
    padding: 0;
    border: 1px solid transparent;
    border-radius: 0.875rem;
    background: transparent;
    color: rgb(var(--wg-on-surface));
    line-height: 1;
    box-shadow: none;
    transition: border-color 0.18s ease, background 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.wg-icon-button:hover,
.wg-icon-button:focus-visible {
    transform: translateY(-1px);
}

.wg-icon-button--surface {
    border-color: rgb(var(--wg-border));
    background: rgb(var(--wg-surface));
}

.wg-icon-button--surface:hover,
.wg-icon-button--surface:focus-visible,
.wg-icon-button--surface.is-active {
    border-color: rgb(var(--wg-action) / 0.34);
    background: rgb(var(--wg-action-soft));
    color: rgb(var(--wg-action));
}

.wg-icon-button--primary {
    border-color: rgb(var(--wg-action));
    background: rgb(var(--wg-action));
    color: #fff;
}

.wg-icon-button--primary:hover,
.wg-icon-button--primary:focus-visible {
    border-color: rgb(var(--wg-action-hover));
    background: rgb(var(--wg-action-hover));
    color: #fff;
}

.wg-icon-button--glass {
    border-color: rgb(255 255 255 / 0.22);
    background: rgb(8 23 33 / 0.58);
    color: #fff;
    backdrop-filter: blur(14px);
}

.wg-icon-button--glass:hover,
.wg-icon-button--glass:focus-visible {
    border-color: rgb(255 255 255 / 0.42);
    background: rgb(8 23 33 / 0.8);
    color: #fff;
}

.wg-icon-button.d-none {
    display: none;
}

.wg-text-action {
    display: inline-flex;
    min-height: 2.25rem;
    align-items: center;
    gap: 0.4rem;
    padding: 0.25rem 0;
    background: transparent;
    color: rgb(var(--wg-action));
    font-size: 0.8125rem;
    font-weight: 750;
    line-height: 1.2;
}

.wg-text-action:hover,
.wg-text-action:focus-visible {
    color: rgb(var(--wg-action-hover));
}

.wg-text-action .wg-button__icon {
    transition: transform 0.18s ease;
}

.wg-text-action:hover .wg-button__icon,
.wg-text-action:focus-visible .wg-button__icon {
    transform: translateX(0.2rem);
}

/* Bring existing MDB controls into the same quiet geometry. */
.btn:not(.btn-link):not(.btn-floating),
.wg-btn {
    min-height: 2.75rem;
    padding: 0.7rem 1.125rem;
    border-width: 1px;
    border-radius: 0.75rem;
    font-size: 0.875rem;
    font-weight: 750;
    line-height: 1;
    box-shadow: none;
}

.btn-sm:not(.btn-link):not(.btn-floating),
.wg-btn--sm {
    min-height: 2.5rem;
    padding: 0.55rem 0.875rem;
    font-size: 0.8125rem;
}

.btn-lg:not(.btn-link):not(.btn-floating),
.wg-btn--lg {
    min-height: 3rem;
    padding: 0.75rem 1.375rem;
}

.btn-floating {
    width: 2.75rem;
    height: 2.75rem;
    min-width: 2.75rem;
    min-height: 2.75rem;
    border-radius: 0.875rem;
}

.btn-link {
    min-height: 2.25rem;
    padding: 0.25rem 0.4rem;
    border: 0;
    background: transparent;
    box-shadow: none;
}

.wg-action-link.wg-text-action {
    min-height: 2.25rem;
}

/* Header controls */
.wg-navbar {
    min-height: 4.6rem;
}

.wg-logo__image {
    max-width: 12.5rem;
    height: 2.35rem;
}

.wg-header__action,
.wg-burger {
    border-color: rgb(var(--wg-border));
    border-radius: 0.875rem;
    background: rgb(var(--wg-surface));
}

.wg-header__action:hover,
.wg-header__action:focus-visible,
.wg-burger:hover,
.wg-burger:focus-visible {
    border-color: rgb(var(--wg-action) / 0.34);
    background: rgb(var(--wg-action-soft));
    color: rgb(var(--wg-action));
}

.wg-section-head__link {
    margin-bottom: 0;
    white-space: nowrap;
}

/* Home editorial hero */
.wg-home-hero-shell {
    padding: clamp(0.75rem, 1.8vw, 1.5rem) 0 0;
}

.wg-slider.wg-home-hero {
    position: relative;
    width: 100%;
    height: clamp(32rem, 39vw, 36rem);
    min-height: 0;
    overflow: hidden;
    border: 1px solid rgb(255 255 255 / 0.1);
    border-radius: 1.625rem;
    background: rgb(var(--wg-secondary));
    box-shadow: 0 24px 70px rgb(18 40 58 / 0.18);
    touch-action: pan-y;
}

.wg-home-hero > .wg-home-hero__slide {
    height: 100%;
    min-height: 0;
}

.wg-home-hero__picture {
    display: block;
    width: 100%;
    height: 100%;
}

.wg-home-hero__image,
.wg-home-hero__media {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: var(--wg-hero-x, 50%) var(--wg-hero-y, 50%);
    transform: scale(1.002);
}

.wg-home-hero__scrim {
    position: absolute;
    z-index: 1;
    inset: 0;
    background:
        linear-gradient(90deg, rgb(5 19 29 / 0.9) 0%, rgb(5 19 29 / 0.68) 44%, rgb(5 19 29 / 0.12) 78%),
        linear-gradient(0deg, rgb(5 19 29 / 0.52), transparent 46%);
}

.wg-home-hero__content {
    position: absolute;
    z-index: 2;
    inset: 0;
    display: flex;
    align-items: flex-end;
    padding: clamp(2rem, 4.5vw, 3.5rem);
}

.wg-home-hero__inner {
    width: min(100%, 45rem);
}

.wg-home-hero__slide--right .wg-home-hero__content {
    justify-content: flex-end;
    text-align: right;
}

.wg-home-hero__slide--right .wg-home-hero__cta {
    margin-left: auto;
}

.wg-home-hero__eyebrow {
    display: inline-flex;
    align-items: center;
    min-height: 1.9rem;
    margin-bottom: 1rem;
    padding: 0.35rem 0.75rem;
    border: 1px solid rgb(255 255 255 / 0.22);
    border-radius: 999px;
    background: rgb(15 128 158 / 0.72);
    color: #fff;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.035em;
    line-height: 1;
    backdrop-filter: blur(10px);
}

.wg-home-hero__title {
    display: -webkit-box;
    max-width: 44rem;
    overflow: hidden;
    color: #fff;
    font-size: clamp(3rem, 4.5vw, 4rem);
    letter-spacing: -0.045em;
    line-height: 1.02;
    text-wrap: balance;
    text-shadow: 0 3px 24px rgb(0 0 0 / 0.28);
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.wg-home-hero__excerpt {
    max-width: 39rem;
    margin: 1rem 0 1.35rem;
    color: rgb(255 255 255 / 0.8);
    font-size: 1rem;
    line-height: 1.55;
}

.wg-home-hero__cta {
    box-shadow: 0 10px 30px rgb(0 0 0 / 0.15);
}

.wg-slider-controls {
    position: absolute;
    z-index: 8;
    right: 1.5rem;
    bottom: 1.5rem;
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.3rem;
    border: 1px solid rgb(255 255 255 / 0.18);
    border-radius: 1rem;
    background: rgb(8 23 33 / 0.64);
    color: #fff;
    box-shadow: 0 12px 34px rgb(0 0 0 / 0.18);
    backdrop-filter: blur(16px);
}

.wg-slider-controls__counter {
    min-width: 4.35rem;
    padding-inline: 0.65rem;
    color: rgb(255 255 255 / 0.82);
    font-size: 0.7rem;
    font-variant-numeric: tabular-nums;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-align: center;
}

.wg-slider-controls .wg-slider__arrow,
.wg-slider-controls .wg-slider__pause {
    position: static;
    display: inline-grid;
    width: 2.75rem;
    height: 2.75rem;
    min-width: 2.75rem;
    min-height: 2.75rem;
    place-items: center;
    padding: 0;
    border: 0;
    border-radius: 0.75rem;
    background: rgb(255 255 255 / 0.1);
    color: #fff;
    line-height: 1;
    box-shadow: none;
    transform: none;
    transition: background 0.18s ease, transform 0.18s ease;
}

.wg-slider-controls .wg-slider__arrow:hover,
.wg-slider-controls .wg-slider__arrow:focus-visible,
.wg-slider-controls .wg-slider__pause:hover,
.wg-slider-controls .wg-slider__pause:focus-visible {
    background: rgb(255 255 255 / 0.22);
    color: #fff;
    transform: none;
}

.wg-slider-controls .mdi {
    font-size: 1.3rem;
    line-height: 1;
}

/* Static, readable story collections replace secondary autoplay sliders. */
/* Top row: the slider card beside one story. */
.wg-editorial-grid {
    display: grid;
    min-height: 22rem;
    grid-template-columns: minmax(0, 1.35fr) minmax(14rem, 1fr);
    grid-template-rows: minmax(0, 1fr);
    gap: 1rem;
}


/* Second row: three cards across. */
.wg-editorial-fixed-grid {
    display: grid;
    margin-top: 1rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    margin-top: 1rem;
}

.wg-editorial-fixed-grid .wg-editorial-story--fixed {
    min-height: 18rem;
}

.wg-editorial-story {
    position: relative;
    min-width: 0;
    min-height: 0;
    overflow: hidden;
    border: 1px solid rgb(var(--wg-border));
    border-radius: 1.25rem;
    background: rgb(var(--wg-secondary));
    color: #fff;
    box-shadow: var(--wg-shadow-sm);
    isolation: isolate;
}

.wg-editorial-story--lead {
    grid-row: 1 / span 2;
}

.wg-editorial-story--lead:only-child {
    grid-column: 1 / -1;
}

.wg-editorial-story--lead:nth-last-child(2) + .wg-editorial-story {
    grid-row: 1 / span 2;
}

.wg-editorial-story:hover,
.wg-editorial-story:focus-visible {
    color: #fff;
}

.wg-editorial-story__media,
.wg-editorial-story__scrim {
    position: absolute;
    inset: 0;
}

.wg-editorial-story__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s var(--wg-ease);
}

.wg-editorial-story:hover .wg-editorial-story__media img {
    transform: scale(1.025);
}

.wg-editorial-story__placeholder {
    display: grid;
    width: 100%;
    height: 100%;
    place-items: center;
    background: linear-gradient(145deg, rgb(var(--wg-primary-dark)), rgb(var(--wg-secondary)));
    color: rgb(255 255 255 / 0.48);
    font-size: 3rem;
}

.wg-editorial-story__scrim {
    z-index: 1;
    background: linear-gradient(0deg, rgb(5 18 27 / 0.94), rgb(5 18 27 / 0.08) 76%);
}

.wg-editorial-story__body {
    position: absolute;
    z-index: 2;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    padding: 1.25rem;
}

.wg-editorial-story--lead .wg-editorial-story__body {
    padding: clamp(1.5rem, 3vw, 2.25rem);
}

.wg-editorial-story__kicker,
.wg-editorial-story__title,
.wg-editorial-story__excerpt {
    display: block;
}

.wg-editorial-story__kicker {
    margin-bottom: 0.45rem;
    color: rgb(255 177 112);
    font-size: 0.66rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.wg-editorial-story__title {
    display: -webkit-box;
    overflow: hidden;
    color: #fff;
    font-family: var(--wg-font-display);
    font-size: 1.08rem;
    font-weight: 700;
    letter-spacing: -0.02em;
    line-height: 1.28;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

/* One title size across Aktualno: the slider card no longer shouts at
   2.35rem while the cards beside it sit at 1.08rem. */
.wg-editorial-story--lead .wg-editorial-story__title {
    font-size: 1.08rem;
    line-height: 1.28;
}

.wg-editorial-story__excerpt {
    display: -webkit-box;
    overflow: hidden;
    margin-top: 0.65rem;
    color: rgb(255 255 255 / 0.74);
    font-size: 0.86rem;
    line-height: 1.5;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.wg-sidebar-stories {
    display: grid;
    gap: 0.65rem;
}

.wg-sidebar-story {
    position: relative;
    display: grid;
    min-width: 0;
    min-height: 5.25rem;
    grid-template-columns: 5.75rem minmax(0, 1fr);
    align-items: center;
    gap: 0.8rem;
    overflow: hidden;
    padding: 0.55rem;
    border: 1px solid rgb(var(--wg-border));
    border-radius: 0.9rem;
    background: rgb(var(--wg-surface));
    color: rgb(var(--wg-on-surface));
}

.wg-sidebar-story:hover,
.wg-sidebar-story:focus-visible {
    border-color: rgb(var(--wg-action) / 0.3);
    background: rgb(var(--wg-action-soft) / 0.55);
    color: rgb(var(--wg-action));
}

.wg-sidebar-story__media {
    display: grid;
    width: 5.75rem;
    height: 4.2rem;
    overflow: hidden;
    place-items: center;
    border-radius: 0.7rem;
    background: rgb(var(--wg-surface-alt));
}

.wg-sidebar-story__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.wg-sidebar-story__placeholder {
    color: rgb(var(--wg-muted));
    font-size: 1.6rem;
}

.wg-sidebar-story__scrim {
    display: none;
}

.wg-sidebar-story__body,
.wg-sidebar-story__title {
    display: block;
    min-width: 0;
}

.wg-sidebar-story__title {
    display: -webkit-box;
    overflow: hidden;
    color: inherit;
    font-size: 0.82rem;
    font-weight: 750;
    line-height: 1.35;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.wg-sidebar-story--lead {
    display: block;
    height: 14rem;
    padding: 0;
    border-radius: 1.1rem;
    background: rgb(var(--wg-secondary));
    color: #fff;
}

.wg-sidebar-story--lead .wg-sidebar-story__media,
.wg-sidebar-story--lead .wg-sidebar-story__scrim {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 0;
}

.wg-sidebar-story--lead .wg-sidebar-story__scrim {
    z-index: 1;
    background: linear-gradient(0deg, rgb(5 18 27 / 0.92), rgb(5 18 27 / 0.04) 78%);
}

.wg-sidebar-story--lead .wg-sidebar-story__body {
    position: absolute;
    z-index: 2;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 1.1rem;
}

.wg-sidebar-story--lead .wg-sidebar-story__title {
    color: #fff;
    font-family: var(--wg-font-display);
    font-size: 1.08rem;
    line-height: 1.28;
}

/* Product filters and cards */
.wg-filter-rail {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.wg-filter-chip {
    display: inline-flex;
    min-height: 2.375rem;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    padding: 0.55rem 0.875rem;
    border: 1px solid rgb(var(--wg-border));
    border-radius: 999px;
    background: rgb(var(--wg-surface));
    color: rgb(var(--wg-action));
    font-size: 0.8125rem;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
    box-shadow: none;
    transition: border-color 0.18s ease, background 0.18s ease, color 0.18s ease;
}

.wg-filter-chip:hover,
.wg-filter-chip:focus-visible {
    border-color: rgb(var(--wg-action) / 0.4);
    background: rgb(var(--wg-action-soft));
    color: rgb(var(--wg-action));
}

.wg-filter-chip.is-active,
.wg-filter-chip[aria-current="page"] {
    border-color: rgb(var(--wg-action));
    background: rgb(var(--wg-action));
    color: #fff;
}

.wg-filter-chip:disabled {
    cursor: wait;
    opacity: 0.58;
}

button.wg-chip {
    appearance: none;
    border: 1px solid transparent;
    box-shadow: none;
}

.wg-card--product {
    overflow: hidden;
    border-radius: 1.125rem;
    box-shadow: 0 8px 28px rgb(18 40 58 / 0.075);
}

.wg-card--product:hover {
    border-color: rgb(var(--wg-action) / 0.26);
    box-shadow: 0 15px 38px rgb(18 40 58 / 0.12);
    transform: translateY(-2px);
}

.wg-product-card__media {
    position: relative;
    width: 100%;
    aspect-ratio: 4 / 3;
    background: rgb(var(--wg-surface-alt));
}

.wg-product-card__media > img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 0.65rem;
    background: #fff;
}

.wg-product-card__placeholder {
    position: relative;
    display: grid;
    width: 100%;
    height: 100%;
    overflow: hidden;
    place-items: center;
    background:
        radial-gradient(circle at 22% 24%, rgb(var(--wg-primary) / 0.2), transparent 35%),
        radial-gradient(circle at 78% 76%, rgb(var(--wg-accent) / 0.12), transparent 32%),
        linear-gradient(145deg, rgb(var(--wg-surface-alt)), rgb(var(--wg-primary-soft)));
    color: rgb(var(--wg-action) / 0.62);
}

.wg-product-card__placeholder .mdi {
    display: grid;
    width: 4.25rem;
    height: 4.25rem;
    place-items: center;
    border: 1px solid rgb(var(--wg-action) / 0.12);
    border-radius: 1.25rem;
    background: rgb(var(--wg-surface) / 0.72);
    font-size: 2rem;
    box-shadow: var(--wg-shadow-sm);
}

.wg-product-card__category {
    position: absolute;
    top: 0.75rem;
    left: 0.75rem;
    max-width: calc(100% - 1.5rem);
    overflow: hidden;
    border-color: rgb(255 255 255 / 0.7);
    background: rgb(255 255 255 / 0.88);
    color: rgb(var(--wg-action));
    text-overflow: ellipsis;
    white-space: nowrap;
    backdrop-filter: blur(10px);
}

.wg-card--product .wg-card__body {
    min-height: 7rem;
    padding: 1rem;
}

.wg-card--product .wg-card__title {
    min-height: 0;
    font-size: 1rem;
    line-height: 1.35;
}

.wg-card--product .wg-card__seller {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    margin-top: auto;
    padding-top: 0.75rem;
    font-size: 0.75rem;
    line-height: 1.35;
}

.wg-card--product .wg-card__seller > .mdi {
    display: inline-flex;
    width: 0.875rem;
    height: 0.875rem;
    min-width: 0.875rem;
    min-height: 0.875rem;
    flex: 0 0 0.875rem;
    align-items: center;
    justify-content: center;
    font-size: 0.875rem;
    line-height: 1;
}

.wg-card--product .wg-card__seller > .mdi::before {
    display: block;
    width: 1em;
    height: 1em;
    font-size: inherit;
    line-height: 1;
}

.wg-card--product .wg-card__actions {
    display: grid;
    grid-template-columns: 2.75rem minmax(0, 1fr);
    align-items: stretch;
    gap: 0.6rem;
    padding: 0.75rem;
    background: rgb(var(--wg-surface));
}

.wg-card--product .wg-card__actions--quote-only {
    grid-template-columns: minmax(0, 1fr);
}

.wg-contact-location__title,
.wg-contact-phone-line {
    display: flex;
    align-items: center;
    gap: 0.45rem;
}

.wg-contact-phone-line {
    line-height: 1.35;
}

.wg-contact-location__title > .mdi,
.wg-contact-phone-line > .mdi {
    display: inline-flex;
    width: 1.125rem;
    height: 1.125rem;
    min-width: 1.125rem;
    min-height: 1.125rem;
    flex: 0 0 1.125rem;
    align-items: center;
    justify-content: center;
    font-size: 1.125rem;
    line-height: 1;
}

.wg-contact-location__title > .mdi::before,
.wg-contact-phone-line > .mdi::before {
    display: block;
    width: 1em;
    height: 1em;
    font-size: inherit;
    line-height: 1;
}

.wg-product-card__favourite.is-active {
    border-color: rgb(198 52 70 / 0.2);
    background: rgb(198 52 70 / 0.08);
    color: rgb(var(--wg-error));
}

/* Compact article discovery and editorial detail. */
.wg-sponsor-bar {
    display: grid;
    grid-template-columns: 4.25rem minmax(0, 1fr);
    align-items: center;
    gap: 0.9rem;
    overflow: hidden;
    padding: 1rem;
    border-color: rgb(var(--wg-action) / 0.14);
    border-radius: 1.125rem;
    background:
        radial-gradient(circle at 100% 0%, rgb(var(--wg-primary) / 0.12), transparent 14rem),
        rgb(var(--wg-surface));
    box-shadow: none;
}

.wg-sponsor-bar:hover,
.wg-sponsor-bar:focus-visible {
    border-color: rgb(var(--wg-action) / 0.34);
    color: inherit;
    box-shadow: var(--wg-shadow-sm);
}

.wg-sponsor-bar__logo {
    width: 4.25rem;
    height: 4.25rem;
    padding: 0.4rem;
    border: 1px solid rgb(var(--wg-border));
    border-radius: 0.875rem;
    background: #fff;
    object-fit: contain;
}

.wg-sponsor-bar__copy {
    display: grid;
    min-width: 0;
    gap: 0.2rem;
}

.wg-sponsor-bar__label {
    width: max-content;
    padding: 0.25rem 0.5rem;
    border-radius: 999px;
    background: rgb(var(--wg-action-soft));
    color: rgb(var(--wg-action));
    font-size: 0.625rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    line-height: 1;
    text-transform: uppercase;
}

.wg-sponsor-bar__title {
    color: rgb(var(--wg-on-surface));
    font-family: var(--wg-font-display);
    font-size: 1rem;
    font-weight: 750;
    line-height: 1.3;
}

.wg-sponsor-bar__text {
    color: rgb(var(--wg-muted));
    font-size: 0.8rem;
    line-height: 1.5;
}

.wg-article-tools {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    border: 1px solid rgb(var(--wg-border));
    border-radius: 1rem;
    background: rgb(var(--wg-surface));
    box-shadow: none;
}

.wg-article-search {
    display: grid;
    min-width: 0;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.6rem;
}

.wg-article-search__field {
    position: relative;
    min-width: 0;
}

.wg-article-search__icon {
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 0.9rem;
    display: inline-grid;
    width: 1.125rem;
    height: 1.125rem;
    place-items: center;
    color: rgb(var(--wg-muted));
    font-size: 1.125rem;
    line-height: 1;
    pointer-events: none;
    transform: translateY(-50%);
}

.wg-article-search__icon::before {
    font-size: inherit;
    line-height: 1;
}

.wg-article-search__input {
    width: 100%;
    min-height: 3rem;
    padding-left: 2.75rem;
    border-radius: 0.75rem;
    background: rgb(var(--wg-background));
    font-size: 0.9rem;
}

.wg-view-switch {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem;
    border: 1px solid rgb(var(--wg-border));
    border-radius: 0.875rem;
    background: rgb(var(--wg-surface-alt));
}

.wg-view-switch .wg-view-toggle {
    width: 2.5rem;
    height: 2.5rem;
    min-width: 2.5rem;
    min-height: 2.5rem;
    border: 0;
    border-radius: 0.65rem;
    background: transparent;
    color: rgb(var(--wg-muted));
}

.wg-view-switch .wg-view-toggle:hover,
.wg-view-switch .wg-view-toggle:focus-visible,
.wg-view-switch .wg-view-toggle.is-active {
    background: rgb(var(--wg-action));
    color: #fff;
}

.wg-article-category-rail {
    scroll-padding-inline: 0.15rem;
}

.wg-article-header {
    width: 100%;
    max-width: none;
    padding-block: 0.6rem 1rem;
}

.wg-article-header__kicker {
    display: inline-flex;
    min-height: 1.5rem;
    align-items: center;
    padding: 0.25rem 0.5rem;
    border-radius: var(--wg-radius-chip, 0.375rem);
    background: rgb(var(--wg-action-soft));
    color: rgb(var(--wg-action));
    font-size: 0.65rem;
    font-weight: 700;
    line-height: 1;
}

.wg-article-header__title {
    max-width: 48rem;
    margin: 0.55rem 0 0;
    color: rgb(var(--wg-on-surface));
    font-family: var(--wg-font-display);
    font-size: clamp(1.65rem, 1.9vw, 2rem);
    font-weight: 750;
    letter-spacing: -0.035em;
    line-height: 1.12;
    text-wrap: balance;
}

.wg-article-meta-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    margin-top: 0.85rem;
    padding-block: 0.55rem;
    border-block: 1px solid rgb(var(--wg-border));
}

.wg-article-meta,
.wg-article-meta__item,
.wg-article-share {
    display: flex;
    align-items: center;
}

.wg-article-meta {
    flex-wrap: wrap;
    gap: 0.45rem 0.8rem;
}

.wg-article-meta__item {
    gap: 0.3rem;
    color: rgb(var(--wg-muted));
    font-size: 0.75rem;
    line-height: 1.35;
}

.wg-inline-icon {
    display: inline-grid;
    width: 0.9rem;
    height: 0.9rem;
    flex: 0 0 0.9rem;
    place-items: center;
    font-size: 0.9rem;
    line-height: 1;
}

.wg-inline-icon::before {
    font-size: inherit;
    line-height: 1;
}

.wg-article-share {
    gap: 0.3rem;
}

.wg-article-share__label {
    margin-right: 0.15rem;
    color: rgb(var(--wg-muted));
    font-size: 0.68rem;
    font-weight: 700;
}

.wg-share.wg-icon-button {
    border-radius: 999px;
    background: rgb(var(--wg-surface));
}

.wg-share.wg-icon-button:hover,
.wg-share.wg-icon-button:focus-visible {
    border-color: rgb(var(--wg-action));
    background: rgb(var(--wg-action));
    color: #fff;
}

.wg-article-hero {
    overflow: hidden;
    border-color: rgb(var(--wg-border) / 0.8);
    border-radius: 1.25rem;
    box-shadow: none;
}

.wg-specification-figure {
    width: fit-content;
    max-width: 100%;
    height: auto;
    margin-block-start: 0;
    margin-inline: auto;
    overflow: hidden;
    border-color: rgb(var(--wg-border) / 0.82);
    border-radius: var(--wg-radius-surface);
    background: rgb(var(--wg-surface));
    box-shadow: var(--wg-shadow-sm);
}

.wg-specification-figure__media {
    display: flex;
    max-width: 100%;
    align-items: center;
    justify-content: center;
    padding: clamp(0.375rem, 1vw, 0.75rem);
    background: #fff;
}

.wg-specification-figure__image {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: min(68vh, 42rem);
    object-fit: contain;
    object-position: center;
}

.wg-specification-figure:hover {
    border-color: rgb(var(--wg-border) / 0.82);
    box-shadow: var(--wg-shadow-sm);
    transform: none;
}

.wg-article-hero--offer {
    background: rgb(var(--wg-surface));
}

.wg-article-hero__offer-media {
    display: grid;
    max-height: 46rem;
    place-items: center;
    background: rgb(var(--wg-surface-alt) / 0.55);
}

.wg-article-hero__offer-media img {
    width: 100%;
    max-height: 46rem;
    object-fit: contain;
}

.wg-article-company {
    box-shadow: var(--wg-shadow-sm);
}

/* Compact Material category navigation shared by directory and catalog pages. */
.wg-category-section {
    min-width: 0;
}

.wg-category-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-auto-rows: 1fr;
    gap: 1rem;
}

.wg-category-tile {
    display: grid;
    width: 100%;
    height: 100%;
    min-height: 6rem;
    grid-template-columns: 3rem minmax(0, 1fr) 1.5rem;
    align-items: center;
    gap: 0.85rem;
    padding: 1rem;
    border: 1px solid rgb(var(--wg-border));
    border-radius: var(--wg-radius-control);
    background: rgb(var(--wg-surface));
    box-shadow: var(--wg-shadow-sm);
    color: rgb(var(--wg-on-surface));
    transition: border-color 0.18s ease, background 0.18s ease, box-shadow 0.18s ease;
}

.wg-category-tile:hover,
.wg-category-tile:focus-visible {
    border-color: rgb(var(--wg-action) / 0.55);
    background: rgb(var(--wg-action-soft) / 0.28);
    box-shadow: var(--wg-shadow-md);
    color: rgb(var(--wg-on-surface));
}

.wg-category-tile__media {
    display: grid;
    width: 3rem;
    height: 3rem;
    overflow: hidden;
    place-items: center;
    border-radius: var(--wg-radius-control);
    background: rgb(var(--wg-action-soft));
    color: rgb(var(--wg-action));
}

.wg-category-tile__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.wg-category-tile__media .mdi {
    font-size: 1.45rem;
    line-height: 1;
}

.wg-category-tile__body {
    display: grid;
    min-width: 0;
    gap: 0.25rem;
}

.wg-category-tile__title {
    font-family: var(--wg-font-display);
    font-size: 0.95rem;
    font-weight: 700;
    line-height: 1.35;
}

.wg-category-tile__meta {
    color: rgb(var(--wg-muted));
    font-size: 0.72rem;
    line-height: 1.3;
}

.wg-category-tile__arrow {
    color: rgb(var(--wg-action));
    font-size: 1.2rem;
}

@media (max-width: 991.98px) {
    .wg-category-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .wg-category-grid {
        grid-template-columns: 1fr;
        gap: 0.75rem;
    }

    .wg-category-tile {
        min-height: 5.5rem;
        padding: 0.85rem;
    }
}

.wg-article .wg-prose {
    max-width: 52rem;
    font-size: 1.025rem;
    line-height: 1.8;
}

/* A compact, card-snapped company rail that does not stretch to the tallest item. */
.wg-company-rail {
    grid-auto-columns: minmax(18.5rem, 20rem);
    align-items: start;
    gap: 0.75rem;
    padding: 0.15rem 0.15rem 0.35rem;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}

.wg-company-rail::-webkit-scrollbar {
    display: none;
}

.wg-company-rail__item {
    height: auto;
    scroll-snap-align: start;
    scroll-snap-stop: always;
}

.wg-company-card--rail {
    height: auto;
    border-radius: 1.125rem;
    box-shadow: none;
}

.wg-company-card--rail .wg-card__body {
    padding: 1rem;
}

.wg-company-card--rail .wg-company-card__head {
    gap: 0.75rem;
}

.wg-company-card--rail .wg-company-card__avatar {
    width: 3.25rem;
    height: 3.25rem;
    flex-basis: 3.25rem;
    border-radius: 0.8rem;
}

.wg-company-card--rail .wg-card__title {
    font-size: 1rem;
    line-height: 1.35;
}

.wg-company-card--rail .wg-card__meta {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    margin-top: 0.3rem;
    font-size: 0.75rem;
}

.wg-company-card--rail .wg-card__text {
    margin-top: 0.75rem;
    font-size: 0.82rem;
    line-height: 1.55;
}

.wg-company-card--rail .wg-chips {
    margin-top: 0.75rem;
}

.wg-company-card--rail .badge {
    padding: 0.35rem 0.55rem;
    font-size: 0.65rem;
}

.wg-company-card--rail .wg-company-card__footer {
    /* The rail stacked the website above the profile link; they belong on
       one line, the website truncating if the card is narrow. */
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: 0.6rem;
    padding: 0.65rem 1rem;
}

.wg-company-card--rail .wg-company-card__footer a {
    display: flex;
    min-height: 1.75rem;
    align-items: center;
    gap: 0.45rem;
    font-size: 0.75rem;
}

.wg-company-card--rail .wg-company-card__footer .mdi {
    display: inline-grid;
    width: 1rem;
    height: 1rem;
    flex: 0 0 1rem;
    place-items: center;
    font-size: 1rem;
    line-height: 1;
}

.wg-company-card--rail .wg-company-card__footer .mdi::before {
    font-size: inherit;
    line-height: 1;
}

.wg-company-rail__nav {
    display: flex;
    width: max-content;
    align-items: center;
    gap: 0.125rem;
    margin: 0.35rem 0 0 auto;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.wg-company-rail__nav .wg-icon-button {
    width: 2.25rem;
    height: 2.25rem;
    min-width: 2.25rem;
    min-height: 2.25rem;
    flex: 0 0 2.25rem;
    border: 0;
    border-radius: 0.25rem;
    background: transparent;
    color: rgb(var(--wg-muted));
    box-shadow: none;
}

.wg-company-rail__nav .wg-icon-button:not(:disabled):hover,
.wg-company-rail__nav .wg-icon-button:not(:disabled):focus-visible {
    background: rgb(var(--wg-action-soft));
    color: rgb(var(--wg-action));
}

.wg-company-rail__nav .wg-icon-button:disabled {
    cursor: default;
    opacity: 0.28;
}

/* The header story rail stays compact and intentionally shows the next story. */
.wg-boxes {
    align-items: start;
}

.wg-box {
    transition: border-color 0.18s ease, background 0.18s ease, transform 0.18s ease;
}

.wg-box:hover,
.wg-box:focus-visible {
    border-color: rgb(var(--wg-action) / 0.3);
    background: rgb(var(--wg-action-soft) / 0.42);
    color: rgb(var(--wg-action));
    transform: translateY(-1px);
}

.wg-box__title {
    display: -webkit-box;
    overflow: hidden;
    line-height: 1.35;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.wg-box__sub {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

@media (min-width: 576px) {
    .wg-icon-button.d-sm-inline-grid {
        display: inline-grid;
    }
}

@media (max-width: 991.98px) {
    .wg-navbar {
        min-height: 4.25rem;
    }

    .wg-sidebar-stories {
        display: grid;
        grid-template-columns: none;
        grid-auto-columns: minmax(17rem, 82vw);
        grid-auto-flow: column;
        gap: 0.75rem;
        overflow-x: auto;
        padding: 0.1rem 0.1rem 0.75rem;
        scroll-padding-inline: 0.1rem;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
    }

    .wg-sidebar-stories::-webkit-scrollbar {
        display: none;
    }

    .wg-sidebar-story,
    .wg-sidebar-story--lead {
        display: block;
        height: 14rem;
        min-height: 14rem;
        padding: 0;
        border-radius: 1.1rem;
        background: rgb(var(--wg-secondary));
        color: #fff;
        scroll-snap-align: start;
    }

    .wg-sidebar-story .wg-sidebar-story__media,
    .wg-sidebar-story .wg-sidebar-story__scrim {
        position: absolute;
        inset: 0;
        display: block;
        width: 100%;
        height: 100%;
        border-radius: 0;
    }

    .wg-sidebar-story .wg-sidebar-story__scrim {
        z-index: 1;
        background: linear-gradient(0deg, rgb(5 18 27 / 0.92), rgb(5 18 27 / 0.03) 78%);
    }

    .wg-sidebar-story .wg-sidebar-story__body {
        position: absolute;
        z-index: 2;
        right: 0;
        bottom: 0;
        left: 0;
        padding: 1.1rem;
    }

    .wg-sidebar-story .wg-sidebar-story__title {
        color: #fff;
        font-family: var(--wg-font-display);
        font-size: 1.05rem;
    }
}

@media (max-width: 767.98px) {
    .wg-home-hero-shell {
        padding-top: 0.75rem;
    }

    .wg-slider.wg-home-hero {
        height: clamp(29rem, 64svh, 30rem);
        border-radius: 1.25rem;
        box-shadow: 0 14px 38px rgb(18 40 58 / 0.14);
    }

    .wg-home-hero__scrim {
        background:
            linear-gradient(0deg, rgb(5 19 29 / 0.96) 0%, rgb(5 19 29 / 0.68) 48%, rgb(5 19 29 / 0.08) 86%),
            linear-gradient(90deg, rgb(5 19 29 / 0.28), transparent 70%);
    }

    .wg-home-hero__image,
    .wg-home-hero__media {
        object-position: var(--wg-hero-mobile-x, var(--wg-hero-x, 50%)) var(--wg-hero-mobile-y, var(--wg-hero-y, 50%));
    }

    .wg-home-hero__content {
        align-items: flex-end;
        padding: 1.25rem 1.25rem 5.85rem;
    }

    .wg-home-hero__eyebrow {
        min-height: 1.75rem;
        margin-bottom: 0.75rem;
        padding: 0.32rem 0.65rem;
        font-size: 0.65rem;
    }

    .wg-home-hero__title {
        max-width: 100%;
        font-size: clamp(2rem, 9.2vw, 2.3rem);
        line-height: 1.04;
    }

    .wg-home-hero__excerpt {
        margin: 0.75rem 0 1rem;
        font-size: 0.86rem;
        line-height: 1.5;
    }

    .wg-home-hero__cta {
        min-height: 2.75rem;
        padding-inline: 1rem;
    }

    .wg-home-hero .wg-slider-controls {
        right: 0.9rem;
        bottom: 0.9rem;
        left: 0.9rem;
        justify-content: flex-end;
        border-radius: 0.9rem;
    }

    .wg-home-hero .wg-slider-controls__counter {
        margin-right: auto;
        text-align: left;
    }

    .wg-home-hero .wg-slider__pause {
        display: none;
    }

    .wg-home-hero .wg-slider-controls .wg-slider__arrow {
        width: 2.625rem;
        height: 2.625rem;
        min-width: 2.625rem;
        min-height: 2.625rem;
    }

    /* On a phone Aktualno STACKS: the lead card (which cycles its own
       slides) sits first and every other story follows underneath it.
       Sideways scrolling here hid two thirds of the section behind a swipe
       nobody took, and nested a slider inside a slider. */
    .wg-editorial-grid {
        min-height: 0;
        grid-template-columns: minmax(0, 1fr);
        grid-template-rows: none;
        grid-auto-columns: auto;
        grid-auto-flow: row;
        gap: 0.75rem;
        overflow-x: visible;
        padding: 0.1rem 0.1rem 0.25rem;
        scroll-snap-type: none;
    }

    .wg-editorial-grid::-webkit-scrollbar {
        display: none;
    }

    .wg-editorial-fixed-grid {
        grid-template-columns: 1fr;
        gap: 0.75rem;
    }

    .wg-editorial-fixed-grid .wg-editorial-story--fixed {
        min-height: 17rem;
    }

    .wg-editorial-story,
    .wg-editorial-story--lead,
    .wg-editorial-story--lead:only-child,
    .wg-editorial-story--lead:nth-last-child(2) + .wg-editorial-story {
        width: 100%;
        height: 21rem;
        grid-column: auto;
        grid-row: auto;
        scroll-snap-align: none;
    }

    /* The lead keeps its own slider and leads the stack. */
    .wg-editorial-story--lead {
        order: -1;
        height: 23rem;
    }

    .wg-editorial-story__body,
    .wg-editorial-story--lead .wg-editorial-story__body {
        padding: 1.2rem;
    }

    .wg-editorial-story__title,
    .wg-editorial-story--lead .wg-editorial-story__title {
        font-size: 1.08rem;
        line-height: 1.28;
    }

    .wg-editorial-story__excerpt {
        font-size: 0.8rem;
    }

    .wg-filter-rail {
        flex-wrap: nowrap;
        overflow-x: auto;
        margin-inline: -0.15rem;
        padding: 0.15rem 0.15rem 0.55rem;
        scroll-padding-inline: 0.15rem;
        scroll-snap-type: x proximity;
        scrollbar-width: none;
    }

    .wg-filter-rail::-webkit-scrollbar {
        display: none;
    }

    .wg-filter-chip {
        scroll-snap-align: start;
    }

    .wg-product-card__media {
        aspect-ratio: 16 / 9;
    }

    .wg-boxes {
        grid-auto-columns: minmax(16.75rem, 80vw);
        gap: 0.75rem;
    }

    .wg-boxes .wg-box {
        height: 7rem;
        min-height: 7rem;
        align-self: start;
        gap: 0.75rem;
        padding: 0.7rem;
        border-radius: 1rem;
        box-shadow: none;
    }

    .wg-boxes .wg-box__media {
        width: 5rem;
        height: 5rem;
        flex-basis: 5rem;
        border-radius: 0.75rem;
    }

    .wg-boxes .wg-box__title {
        font-size: 0.8rem;
    }

    .wg-boxes .wg-box__sub {
        font-size: 0.7rem;
    }

    .wg-special-card__excerpt {
        display: -webkit-box;
        overflow: hidden;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
    }

    .wg-special-card--lead .wg-special-card__body {
        padding: 1.25rem;
    }

    .wg-special-card--lead .wg-special-card__title {
        font-size: 1.5rem;
    }
}

@media (max-width: 575.98px) {
    .wg-page-head {
        margin-bottom: 0.875rem;
    }

    .wg-page-head::after {
        display: none;
    }

    .wg-page-head .container-xl,
    .wg-page-head .wg-container {
        padding-block: 0.5rem 0.9rem;
    }

    .wg-page-head .wg-breadcrumbs {
        min-height: 1.75rem;
        padding-block: 0.35rem;
    }

    .wg-page-head .wg-h1 {
        font-size: clamp(1.25rem, 5.5vw, 1.5rem);
        line-height: 1.15;
    }

    .wg-page-head__copy p {
        margin-top: 0.25rem;
        font-size: 0.8125rem;
    }

    .wg-header__inner {
        gap: 0.65rem;
    }

    .wg-logo__image {
        width: auto;
        max-width: min(11.75rem, calc(100vw - 8.5rem));
        height: 2.05rem;
    }

    .wg-header__action,
    .wg-burger {
        width: 2.75rem;
        height: 2.75rem;
        min-width: 2.75rem;
        min-height: 2.75rem;
    }

    .wg-button--sm {
        min-height: 2.75rem;
    }

    .wg-sponsor-bar {
        grid-template-columns: 3.5rem minmax(0, 1fr);
        gap: 0.75rem;
        padding: 0.85rem;
        border-radius: 1rem;
    }

    .wg-sponsor-bar__logo {
        width: 3.5rem;
        height: 3.5rem;
        padding: 0.3rem;
        border-radius: 0.75rem;
    }

    .wg-sponsor-bar__title {
        font-size: 0.9rem;
    }

    .wg-sponsor-bar__text {
        font-size: 0.75rem;
        line-height: 1.45;
    }

    .wg-article-tools {
        grid-template-columns: 1fr;
        padding: 0.65rem;
    }

    .wg-article-search {
        gap: 0.5rem;
    }

    .wg-article-search__input,
    .wg-article-search > .wg-button {
        min-height: 2.75rem;
    }

    .wg-article-search > .wg-button {
        padding-inline: 0.875rem;
    }

    .wg-article-tools .wg-view-switch {
        display: none;
    }

    .wg-article-category-rail {
        margin-inline: -0.15rem;
        padding-bottom: 0.35rem;
    }

    .wg-editorial-card__badge,
    .wg-editorial-card__until {
        top: 0.55rem;
        padding: 0.3rem 0.45rem;
        font-size: 0.625rem;
    }

    .wg-editorial-card__badge {
        left: 0.55rem;
    }

    .wg-editorial-card__until {
        right: 0.55rem;
    }

    .wg-article-breadcrumb__detail-sep,
    .wg-article-breadcrumb__current {
        display: none;
    }

    .wg-article-header {
        padding-block: 0.25rem 0.7rem;
    }

    .wg-article-header__title {
        max-width: none;
        margin-top: 0.5rem;
        font-size: clamp(1.35rem, 5.4vw, 1.6rem);
        /* A headline that wraps three or four times on a phone needs air
           between the lines and softer tracking; the desktop values were
           tuned for one or two lines. */
        letter-spacing: -0.02em;
        line-height: 1.24;
        /* Even line lengths, and long Croatian compounds break instead of
           pushing the layout sideways. */
        text-wrap: balance;
        overflow-wrap: break-word;
        hyphens: auto;
    }

    .wg-article-meta-bar {
        align-items: stretch;
        flex-direction: column;
        gap: 0.55rem;
        margin-top: 0.7rem;
        padding-block: 0.55rem;
    }

    .wg-article-share {
        width: 100%;
    }

    .wg-article-share__label {
        margin-right: auto;
    }

    .wg-article-hero {
        border-radius: 1rem;
    }

    .wg-article .wg-prose {
        font-size: 1rem;
        line-height: 1.75;
    }

    .wg-company-rail-section .wg-section-head {
        align-items: center;
    }

    .wg-company-rail-section .wg-section-title {
        font-size: 1.5rem;
        white-space: nowrap;
    }

    .wg-company-rail {
        grid-auto-columns: min(20rem, calc(100vw - 3rem));
        margin-inline: -0.15rem;
    }

    .wg-section-head {
        gap: 0.75rem;
    }

    .wg-section-head__link {
        font-size: 0.75rem;
    }

    .wg-card--product .wg-card__body {
        min-height: 5.75rem;
    }

    .wg-card__actions .wg-button.wg-action-button {
        min-height: 2.75rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .wg-slide,
    .wg-editorial-story__media img,
    .wg-button,
    .wg-icon-button,
    .wg-text-action .wg-button__icon {
        transition: none;
    }
}

.wg-pagination .wg-pagination__control,
.wg-pagination .wg-pagination__page-link,
.wg-pagination .wg-pagination__ellipsis {
    display: inline-flex;
    border-color: transparent;
    border-radius: 999px !important;
    background: transparent;
}

.wg-pagination .wg-pagination__page-link.is-current {
    border-color: rgb(var(--wg-action));
    background: rgb(var(--wg-action));
    color: #fff;
}

/* MDB-aligned Material geometry: compact controls, clear hierarchy, intentional shapes. */
.wg-site {
    --wg-radius-xs: 0.125rem;
    --wg-radius-control: 0.25rem;
    --wg-radius-chip: 0.375rem;
    --wg-radius-surface: 0.5rem;
    --wg-radius-feature: 0.75rem;
    --wg-radius-sm: var(--wg-radius-control);
    --wg-radius: var(--wg-radius-surface);
    --wg-radius-lg: var(--wg-radius-feature);
    --wg-shadow-sm: 0 1px 2px rgb(18 40 58 / 0.08), 0 1px 3px rgb(18 40 58 / 0.06);
    --wg-shadow-md: 0 2px 6px rgb(18 40 58 / 0.1), 0 4px 12px rgb(18 40 58 / 0.08);
    --wg-shadow-lg: 0 8px 24px rgb(18 40 58 / 0.16);
}

[data-mdb-theme="dark"] .wg-site,
body.wg-site.wg-dark {
    --wg-shadow-sm: 0 1px 2px rgb(0 0 0 / 0.3), 0 1px 3px rgb(0 0 0 / 0.22);
    --wg-shadow-md: 0 2px 6px rgb(0 0 0 / 0.34), 0 4px 12px rgb(0 0 0 / 0.28);
    --wg-shadow-lg: 0 8px 24px rgb(0 0 0 / 0.42);
}

.wg-site .wg-button,
.wg-site .btn:not(.btn-link):not(.btn-floating),
.wg-site .wg-btn {
    min-height: 2.75rem;
    padding: 0.625rem 1.5rem;
    border-radius: var(--wg-radius-control);
    font-size: 0.75rem;
    font-weight: 500;
    letter-spacing: 0.035em;
    line-height: 1.5;
    text-transform: uppercase;
    box-shadow: 0 4px 9px -4px rgb(var(--wg-action) / 0.62);
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.wg-site .wg-button--sm,
.wg-site .btn-sm:not(.btn-link):not(.btn-floating),
.wg-site .wg-btn--sm {
    min-height: 2.5rem;
    padding: 0.5rem 1rem;
    font-size: 0.75rem;
}

.wg-site .wg-button--lg,
.wg-site .btn-lg:not(.btn-link):not(.btn-floating),
.wg-site .wg-btn--lg {
    min-height: 3rem;
    padding: 0.6875rem 1.6875rem;
    font-size: 0.875rem;
}

.wg-site .wg-button--primary,
.wg-site .wg-button--hero,
.wg-site .btn-primary,
.wg-site .wg-btn {
    box-shadow: 0 4px 9px -4px rgb(var(--wg-action) / 0.62);
}

.wg-site .wg-button--primary:hover,
.wg-site .wg-button--primary:focus-visible,
.wg-site .wg-button--hero:hover,
.wg-site .wg-button--hero:focus-visible,
.wg-site .btn-primary:hover,
.wg-site .btn-primary:focus {
    box-shadow: 0 8px 9px -4px rgb(var(--wg-action) / 0.3),
        0 4px 18px 0 rgb(var(--wg-action) / 0.18);
}

.wg-site .wg-button--secondary,
.wg-site .wg-button--soft,
.wg-site .btn-secondary,
.wg-site .btn-outline-primary,
.wg-site .btn-outline-secondary,
.wg-site .wg-btn--outline {
    box-shadow: none;
}

.wg-site .wg-button--secondary,
.wg-site .wg-button--soft,
.wg-site .btn-secondary {
    border-color: transparent;
    background: rgb(var(--wg-action-soft));
    color: rgb(var(--wg-action));
}

.wg-site .btn-outline-primary,
.wg-site .btn-outline-secondary,
.wg-site .wg-btn--outline {
    border-width: 2px;
    border-color: rgb(var(--wg-action));
    background: transparent;
    color: rgb(var(--wg-action));
}

.wg-site .wg-button--secondary:hover,
.wg-site .wg-button--secondary:focus-visible,
.wg-site .wg-button--soft:hover,
.wg-site .wg-button--soft:focus-visible,
.wg-site .btn-secondary:hover,
.wg-site .btn-secondary:focus,
.wg-site .btn-outline-primary:hover,
.wg-site .btn-outline-primary:focus,
.wg-site .btn-outline-secondary:hover,
.wg-site .btn-outline-secondary:focus,
.wg-site .wg-btn--outline:hover,
.wg-site .wg-btn--outline:focus {
    border-color: rgb(var(--wg-action));
    background: rgb(var(--wg-action-soft));
    color: rgb(var(--wg-action-hover));
    box-shadow: none;
}

.wg-site .btn-link,
.wg-site .wg-text-action {
    border-radius: var(--wg-radius-control);
    color: rgb(var(--wg-action));
    font-size: 0.75rem;
    font-weight: 500;
    letter-spacing: 0.035em;
    text-transform: uppercase;
    box-shadow: none;
}

.wg-site .btn-link:hover,
.wg-site .btn-link:focus-visible,
.wg-site .wg-text-action:hover,
.wg-site .wg-text-action:focus-visible {
    background: rgb(var(--wg-action-soft));
    color: rgb(var(--wg-action-hover));
    box-shadow: none;
}

.wg-site .wg-button--primary:active,
.wg-site .btn-primary:active,
.wg-site .wg-btn:not(.wg-btn--outline):active {
    border-color: rgb(var(--wg-action-hover));
    background: rgb(var(--wg-action-hover));
    color: rgb(var(--wg-action-on));
}

.wg-site .wg-button:disabled,
.wg-site .wg-button[aria-disabled="true"],
.wg-site .btn:disabled,
.wg-site .btn.disabled,
.wg-site .wg-btn[aria-disabled="true"] {
    pointer-events: none;
    opacity: 0.65;
    box-shadow: none;
}

.wg-site .wg-button:focus-visible,
.wg-site .wg-icon-button:focus-visible,
.wg-site .wg-text-action:focus-visible,
.wg-site .btn:focus-visible,
.wg-site .wg-btn:focus-visible,
.wg-site .wg-pagination__control:focus-visible,
.wg-site .wg-pagination__page-link:focus-visible {
    outline: 3px solid rgb(var(--wg-focus));
    outline-offset: 3px;
}

.wg-site .wg-button:hover,
.wg-site .wg-button:focus-visible,
.wg-site .wg-icon-button:hover,
.wg-site .wg-icon-button:focus-visible,
.wg-site .wg-card:hover,
.wg-site .wg-card--hover:hover,
.wg-site .wg-box:hover,
.wg-site .wg-box:focus-visible,
.wg-site .wg-home-topic-nav__link:hover,
.wg-site .wg-pagination__control:hover,
.wg-site .wg-pagination__page-link:hover {
    transform: none;
}

.wg-site .wg-icon-button,
.wg-site .wg-icon-button--control,
.wg-site .wg-icon-button--social,
.wg-site .wg-icon-button--appbar {
    border-radius: var(--wg-radius-control);
}

.wg-site .wg-icon-button > .mdi {
    grid-area: 1 / 1;
    align-self: center;
    justify-self: center;
}

.wg-site .wg-icon-button--control {
    box-shadow: none;
}

.wg-site .wg-icon-button--appbar,
.wg-site .wg-header__action.wg-icon-button--appbar,
.wg-site .wg-burger.wg-icon-button--appbar {
    border-color: transparent;
    background: transparent;
    box-shadow: none;
}

.wg-site .wg-icon-button--appbar:hover,
.wg-site .wg-icon-button--appbar:focus-visible,
.wg-site .wg-header__action.wg-icon-button--appbar:hover,
.wg-site .wg-header__action.wg-icon-button--appbar:focus-visible,
.wg-site .wg-burger.wg-icon-button--appbar:hover,
.wg-site .wg-burger.wg-icon-button--appbar:focus-visible {
    border-color: transparent;
    background: rgb(var(--wg-action-soft));
    box-shadow: none;
}

.wg-site .wg-icon-button--social {
    width: 3.25rem;
    height: 2.75rem;
    min-width: 3.25rem;
    min-height: 2.75rem;
    flex-basis: 3.25rem;
    border-color: rgb(var(--wg-action));
    background: rgb(var(--wg-action));
    color: #fff;
    box-shadow: 0 4px 9px -4px rgb(var(--wg-action) / 0.55);
}

.wg-site .wg-icon-button--social:hover,
.wg-site .wg-icon-button--social:focus-visible {
    border-color: rgb(var(--wg-action-hover));
    background: rgb(var(--wg-action-hover));
    color: #fff;
    box-shadow: 0 8px 9px -4px rgb(var(--wg-action) / 0.26),
        0 4px 18px 0 rgb(var(--wg-action) / 0.16);
}

.wg-site .wg-share.wg-icon-button--social.wg-social-button--facebook {
    border-color: #3b5998;
    background: #3b5998;
}

.wg-site .wg-share.wg-icon-button--social.wg-social-button--twitter {
    border-color: #55acee;
    background: #55acee;
}

.wg-site .wg-share.wg-icon-button--social.wg-social-button--linkedin {
    border-color: #0082ca;
    background: #0082ca;
}

.wg-site .wg-share.wg-icon-button--social.wg-social-button--email {
    border-color: #607d8b;
    background: #607d8b;
}

.wg-site .wg-share.wg-icon-button--social:hover,
.wg-site .wg-share.wg-icon-button--social:focus-visible {
    filter: brightness(0.92);
}

.wg-site .wg-article-share .wg-icon-button--social {
    width: 2.25rem;
    height: 2.25rem;
    min-width: 2.25rem;
    min-height: 2.25rem;
    flex-basis: 2.25rem;
    border-radius: var(--wg-radius-chip);
    box-shadow: none;
}

.wg-site .wg-article-share .wg-icon-button--social > .mdi {
    font-size: 0.95rem;
}

.wg-site .wg-icon-button--social.wg-icon-button--glass {
    border-color: rgb(255 255 255 / 0.22);
    background: rgb(8 23 33 / 0.58);
    color: #fff;
}

.wg-site .wg-icon-button--social.wg-icon-button--glass:hover,
.wg-site .wg-icon-button--social.wg-icon-button--glass:focus-visible {
    border-color: rgb(255 255 255 / 0.42);
    background: rgb(8 23 33 / 0.8);
}

.wg-site .btn-floating,
.wg-site .btn-floating.wg-icon-button,
.wg-site .wg-icon-button--fab {
    border-radius: 50%;
}

.wg-site .form-control,
.wg-site .form-select,
.wg-site .wg-input,
.wg-site .wg-select,
.wg-site .wg-textarea,
.wg-site .wg-article-search__input {
    border-radius: var(--wg-radius-control);
}

.wg-site .badge,
.wg-site .wg-chip,
.wg-site .wg-filter-chip {
    border-radius: var(--wg-radius-chip);
}

.wg-site .wg-home-hero__eyebrow,
.wg-site .wg-article-header__kicker,
.wg-site .wg-sponsor-bar__label,
.wg-site .wg-deal-card__badge,
.wg-site .wg-deal-card__until,
.wg-site .wg-results-summary,
.wg-site .wg-pagination__summary,
.wg-site .wg-gallery-group__count {
    border-radius: var(--wg-radius-control);
}

.wg-site .card,
.wg-site .wg-card,
.wg-site .wg-card--product,
.wg-site .wg-reco-list,
.wg-site .wg-partners,
.wg-site .wg-table,
.wg-site table.wg-table,
.wg-site .wg-tabs,
.wg-site .wg-newsletter,
.wg-site .wg-inquiry,
.wg-site .wg-consent,
.wg-site .wg-company-banner,
.wg-site .wg-box,
.wg-site .wg-boxes .wg-box,
.wg-site .wg-gallery-card,
.wg-site .wg-home-search,
.wg-site .wg-article-tools,
.wg-site .wg-sponsor-bar,
.wg-site .wg-company-card--rail,
.wg-site .wg-nav__panel.dropdown-menu {
    border-radius: var(--wg-radius-surface);
}

.wg-site .wg-card--product,
.wg-site .wg-company-card--rail,
.wg-site .wg-editorial-story,
.wg-site .wg-gallery-card {
    box-shadow: var(--wg-shadow-sm);
}

.wg-site .wg-card:hover,
.wg-site .wg-card--hover:hover,
.wg-site .wg-card--product:hover,
.wg-site .wg-company-card--rail:hover,
.wg-site .wg-editorial-story:hover,
.wg-site .wg-gallery-card:hover {
    box-shadow: var(--wg-shadow-md);
}

.wg-site .wg-slider,
.wg-site .wg-slider.wg-home-hero,
.wg-site .wg-hero,
.wg-site .wg-home-feature,
.wg-site .wg-editorial-story,
.wg-site .wg-sidebar-story--lead,
.wg-site .wg-article-hero {
    border-radius: var(--wg-radius-feature);
}

.wg-site .wg-slider.wg-home-hero,
.wg-site .wg-home-feature {
    box-shadow: var(--wg-shadow-lg);
}

.wg-site .wg-slider-controls,
.wg-site .wg-home-hero .wg-slider-controls,
.wg-site .wg-view-switch {
    border-radius: var(--wg-radius-surface);
    box-shadow: var(--wg-shadow-sm);
}

.wg-site .wg-slider__arrow,
.wg-site .wg-slider-controls .wg-slider__arrow,
.wg-site .wg-slider-controls .wg-slider__pause,
.wg-site .wg-view-switch .wg-view-toggle,
.wg-site .wg-company-rail__nav .wg-icon-button,
.wg-site .wg-share.wg-icon-button,
.wg-site .wg-tabs a,
.wg-site .wg-tabs button,
.wg-site .wg-drawer__nav > a,
.wg-site .wg-drawer__nav summary,
.wg-site .wg-drawer__nav details > a,
.wg-site .wg-nav__panel .dropdown-item {
    border-radius: var(--wg-radius-control);
}

.wg-site .wg-company-card__avatar,
.wg-site .wg-company-card--rail .wg-company-card__avatar,
.wg-site .wg-company-banner__logo,
.wg-site .wg-product-card__placeholder,
.wg-site .wg-sponsor-bar__logo,
.wg-site .wg-reco__media,
.wg-site .wg-reco img,
.wg-site .wg-featured-product__media,
.wg-site .wg-featured-product__media img,
.wg-site .wg-sidebar-story__media,
.wg-site .wg-box__media,
.wg-site .wg-boxes .wg-box__media,
.wg-site .wg-partner__logo {
    border-radius: var(--wg-radius-control);
}

.wg-site .wg-pagination {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.wg-site .wg-pagination .wg-pagination__control,
.wg-site .wg-pagination .wg-pagination__page-link,
.wg-site .wg-pagination .wg-pagination__ellipsis {
    border-radius: var(--wg-radius-control) !important;
}

.wg-site .wg-pagination .wg-pagination__page-link.is-current {
    box-shadow: var(--wg-shadow-sm);
}

.wg-site .wg-totop {
    border-radius: 50%;
    box-shadow: 0 4px 9px -4px rgb(var(--wg-action) / 0.62);
}

.wg-site.wg-has-assistant .wg-totop {
    display: none;
}

@media (max-width: 575.98px) {
    .wg-site .wg-button--sm,
    .wg-site .btn-sm:not(.btn-link):not(.btn-floating),
    .wg-site .wg-btn--sm {
        min-height: 2.75rem;
    }
}

/* Touch users swipe the company rail; keep its desktop fallback deliberately quiet. */
@media (max-width: 767.98px) {
    .wg-site .wg-company-rail__nav {
        display: none;
    }
}

/* Home portal parity: configurable lead width, curated sections, and flush ads. */
.wg-home-hero-shell--full-width {
    padding-top: 0;
}

.wg-home-hero-shell--full-width > .container-fluid {
    width: 100%;
    max-width: none;
}

.wg-site .wg-home-hero-shell--full-width .wg-home-hero {
    border-inline: 0;
    border-radius: 0;
    box-shadow: none;
}

.wg-editorial-lead-slider {
    min-height: 0;
    grid-row: 1 / span 2;
}

.wg-editorial-lead-slider > .wg-slide,
.wg-editorial-story__link {
    width: 100%;
    height: 100%;
}

.wg-editorial-story__link {
    position: absolute;
    inset: 0;
    display: block;
    color: #fff;
}

.wg-editorial-story__link:hover,
.wg-editorial-story__link:focus-visible {
    color: #fff;
}

.wg-editorial-story__media img {
    object-position: var(--wg-story-x, 50%) var(--wg-story-y, 50%);
}

.wg-editorial-lead-slider .wg-slider-controls {
    top: 1rem;
    right: 1rem;
    bottom: auto;
    border-radius: var(--wg-radius-control, 0.4rem);
    background: rgb(8 23 33 / 0.72);
}

.wg-editorial-lead-slider .wg-slider-controls__counter {
    min-width: 3.8rem;
}

.wg-project-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.wg-project-card {
    position: relative;
    display: block;
    min-height: 18rem;
    overflow: hidden;
    border: 1px solid rgb(var(--wg-border));
    border-radius: var(--wg-radius-control, 0.4rem);
    background: rgb(var(--wg-secondary));
    color: #fff;
    box-shadow: var(--wg-shadow-sm);
    isolation: isolate;
}

.wg-project-card:hover,
.wg-project-card:focus-visible {
    border-color: rgb(var(--wg-action) / 0.44);
    color: #fff;
    box-shadow: var(--wg-shadow-md);
}

.wg-project-card__media,
.wg-project-card__scrim {
    position: absolute;
    inset: 0;
}

.wg-project-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.45s var(--wg-ease);
}

.wg-project-card:hover .wg-project-card__media img {
    transform: scale(1.025);
}

.wg-project-card__placeholder {
    display: grid;
    width: 100%;
    height: 100%;
    place-items: center;
    color: rgb(255 255 255 / 0.55);
    font-size: 3rem;
}

.wg-project-card__scrim {
    z-index: 1;
    background: linear-gradient(0deg, rgb(5 18 27 / 0.94), rgb(5 18 27 / 0.04) 78%);
}

.wg-project-card__body {
    position: absolute;
    z-index: 2;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    padding: clamp(1.25rem, 2.5vw, 2rem);
}

.wg-project-card__kicker,
.wg-project-card__title,
.wg-project-card__excerpt {
    display: block;
}

.wg-project-card__kicker {
    margin-bottom: 0.45rem;
    color: rgb(255 177 112);
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.wg-project-card__title {
    /* Same size as an Aktualno card title. */
    color: #fff;
    font-family: var(--wg-font-display);
    font-size: 1.08rem;
    font-weight: 700;
    line-height: 1.3;
}

.wg-project-card__excerpt {
    margin-top: 0.55rem;
    color: rgb(255 255 255 / 0.74);
    font-size: 0.82rem;
    line-height: 1.5;
}

/* Sidebar product rail: product shots are cut-outs, so they sit CONTAINED on
   a white tile rather than cropped, and each row reads as a card that
   answers on hover. */
.wg-featured-products {
    display: grid;
    gap: 0.4rem;
    margin-top: 0.35rem;
}

.wg-featured-product {
    position: relative;
    display: grid;
    align-items: center;
    gap: 0.75rem;
    padding: 0.55rem;
    border: 1px solid transparent;
    border-radius: var(--wg-radius-sm);
    grid-template-columns: 5.1rem minmax(0, 1fr) 0.9rem;
    color: inherit;
    text-decoration: none;
    transition: border-color 0.18s ease, background 0.18s ease, transform 0.18s ease;
}

.wg-featured-product:hover,
.wg-featured-product:focus-visible {
    border-color: rgb(var(--wg-border));
    background: rgb(var(--wg-surface));
    transform: translateX(2px);
    box-shadow: 0 6px 16px rgb(15 34 52 / 0.07);
}

/* Same tile as Preporucamo: 5.1 x 4.25rem, softly rounded, image filling it. */
.wg-featured-product__media {
    position: relative;
    display: grid;
    width: 5.1rem;
    height: 4.25rem;
    overflow: hidden;
    place-items: center;
    border-radius: 0.7rem;
    background: rgb(var(--wg-surface-alt));
    color: rgb(var(--wg-muted));
}

.wg-featured-product__media img {
    width: 100%;
    height: 100%;
    border-radius: inherit;
    object-fit: cover;
    transition: transform 0.25s ease;
}

.wg-featured-product:hover .wg-featured-product__media img {
    transform: scale(1.06);
}

.wg-featured-product__body {
    display: grid;
    min-width: 0;
    gap: 0.1rem;
}

.wg-featured-product__kicker {
    color: rgb(var(--wg-action));
    font-size: 0.625rem;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.wg-featured-product__title {
    font-size: 0.82rem;
    font-weight: 700;
    line-height: 1.32;
}

.wg-featured-product:hover .wg-featured-product__title {
    color: rgb(var(--wg-action));
}

.wg-featured-product__company {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    color: rgb(var(--wg-muted));
    font-size: 0.7rem;
    font-weight: 600;
    line-height: 1.3;
}

.wg-featured-product__company .mdi {
    font-size: 0.8rem;
}

.wg-featured-product__go {
    color: rgb(var(--wg-muted));
    font-size: 1rem;
    opacity: 0;
    transform: translateX(-3px);
    transition: opacity 0.18s ease, transform 0.18s ease;
}

.wg-featured-product:hover .wg-featured-product__go {
    color: rgb(var(--wg-action));
    opacity: 1;
    transform: translateX(0);
}

@media (prefers-reduced-motion: reduce) {
    .wg-featured-product,
    .wg-featured-product__media img,
    .wg-featured-product__go {
        transition: none;
    }
}

.wg-adslot {
    margin: 0;
}

.wg-adslot--billboard,
.wg-adslot--leaderboard {
    min-height: 0;
}

.wg-adslot__media {
    display: block;
    overflow: hidden;
    background: rgb(var(--wg-surface-alt));
}

.wg-adslot--billboard .wg-adslot__media,
.wg-adslot--leaderboard .wg-adslot__media {
    aspect-ratio: 970 / 250;
}

.wg-adslot--box .wg-adslot__media {
    aspect-ratio: 4 / 3;
}

.wg-adslot__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.wg-adslot__body {
    display: block;
}

.wg-adslot__cta {
    align-items: center;
    gap: 0.3rem;
}

.wg-section--ad {
    margin-block: 0;
}

.wg-section--ad:has(.wg-adslot) {
    margin-block: clamp(1.5rem, 3vw, 2.5rem);
}

.wg-banner-strip {
    margin: 0;
}

.wg-boxes--flush {
    gap: 0;
    overflow: hidden;
    border: 1px solid rgb(var(--wg-border));
    border-radius: var(--wg-radius-control, 0.4rem);
    background: rgb(var(--wg-surface));
}

.wg-site .wg-boxes--flush .wg-box {
    border: 0;
    border-right: 1px solid rgb(var(--wg-border));
    border-radius: 0;
    box-shadow: none;
}

.wg-site .wg-boxes--flush .wg-box:last-child {
    border-right: 0;
}

.wg-site .wg-boxes--flush .wg-box:hover,
.wg-site .wg-boxes--flush .wg-box:focus-visible {
    transform: none;
}

@media (min-width: 768px) {
    .wg-home-hero-shell--full-width .wg-home-hero__content {
        padding-inline: max(2rem, calc((100vw - var(--wg-container)) / 2 + 1.5rem));
    }
}

@media (max-width: 767.98px) {
    .wg-editorial-lead-slider {
        grid-row: auto;
    }

    .wg-editorial-story__media img {
        object-position: var(--wg-story-mobile-x, 50%) var(--wg-story-mobile-y, 50%);
    }

    .wg-project-grid {
        grid-template-columns: 1fr;
    }

    .wg-project-card {
        min-height: 17rem;
    }

    .wg-boxes--flush {
        gap: 0;
    }
}

/* Legacy-inspired slider rails: visible story choices without floating chevrons. */
.wg-story-rail {
    position: absolute;
    z-index: 6;
    overflow: hidden;
    border: 0;
    background: rgb(7 25 36 / 0.96);
    color: #fff;
}

.wg-story-rail__tab {
    position: relative;
    display: grid;
    min-width: 0;
    align-items: center;
    gap: 0.7rem;
    padding: 0.85rem 1rem;
    border: 0;
    border-bottom: 1px solid rgb(255 255 255 / 0.12);
    background: transparent;
    color: rgb(255 255 255 / 0.74);
    font: inherit;
    text-align: left;
    transition: background-color 0.18s ease, color 0.18s ease;
}

.wg-story-rail__tab::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 3px;
    background: rgb(var(--wg-accent));
    content: "";
    opacity: 0;
}

.wg-story-rail__tab:hover,
.wg-story-rail__tab:focus-visible {
    background: rgb(255 255 255 / 0.07);
    color: #fff;
}

.wg-story-rail__tab:focus-visible {
    z-index: 2;
    outline: 2px solid rgb(var(--wg-action));
    outline-offset: -3px;
}

.wg-story-rail__tab.is-active {
    background: linear-gradient(90deg, rgb(var(--wg-action) / 0.2), rgb(255 255 255 / 0.06));
    color: #fff;
}

.wg-story-rail__tab.is-active::before {
    opacity: 1;
}

.wg-story-rail__index,
.wg-story-rail__media,
.wg-story-rail__copy,
.wg-story-rail__kicker {
    display: block;
    min-width: 0;
}

.wg-story-rail__index {
    color: rgb(var(--wg-accent));
    font-size: 0.66rem;
    font-variant-numeric: tabular-nums;
    font-weight: 800;
    letter-spacing: 0.08em;
}

.wg-story-rail__media {
    width: 3.5rem;
    height: 2.8rem;
    overflow: hidden;
    border-radius: var(--wg-radius-control);
    background: rgb(255 255 255 / 0.08);
}

.wg-story-rail__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.wg-story-rail__kicker {
    overflow: hidden;
    color: rgb(255 177 112);
    font-size: 0.59rem;
    font-weight: 800;
    letter-spacing: 0.065em;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.wg-story-rail__title {
    margin-top: 0.25rem;
    color: inherit;
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1.32;
}

.wg-slider--with-tabs .wg-slider__arrow,
.wg-slider--with-tabs .wg-slider__dots {
    display: none;
}

.wg-slider--with-tabs .wg-slider-controls {
    border-radius: var(--wg-radius-control);
}

@media (min-width: 1200px) {
    .wg-home-hero--with-rail {
        --wg-hero-story-rail-width: clamp(18rem, 24vw, 21.5rem);
    }

    .wg-home-hero--with-rail > .wg-home-hero__slide {
        right: var(--wg-hero-story-rail-width);
    }

    .wg-story-rail--hero {
        top: 0;
        right: 0;
        bottom: 0;
        display: grid;
        width: var(--wg-hero-story-rail-width);
        padding-bottom: 4rem;
        grid-auto-rows: minmax(0, 1fr);
        border-left: 1px solid rgb(255 255 255 / 0.14);
    }

    .wg-story-rail--hero .wg-story-rail__tab {
        grid-template-columns: 1.25rem 3.5rem minmax(0, 1fr);
    }

    .wg-home-hero--with-rail .wg-slider-controls {
        top: auto;
        right: 0;
        bottom: 0;
        left: auto;
        width: var(--wg-hero-story-rail-width);
        min-height: 4rem;
        justify-content: space-between;
        padding: 0.55rem 1rem;
        border: 0;
        border-top: 1px solid rgb(255 255 255 / 0.14);
        background: rgb(7 25 36 / 0.98);
        box-shadow: none;
        backdrop-filter: none;
    }

    .wg-home-hero--with-rail .wg-slider-controls__counter {
        padding: 0;
        text-align: left;
    }
}

@media (max-width: 1199.98px) {
    .wg-home-hero--with-rail {
        --wg-hero-story-rail-height: 7.4rem;
    }

    .wg-home-hero--with-rail > .wg-home-hero__slide {
        height: auto;
        bottom: var(--wg-hero-story-rail-height);
    }

    .wg-story-rail--hero {
        right: 0;
        bottom: 0;
        left: 0;
        display: grid;
        height: var(--wg-hero-story-rail-height);
        grid-auto-columns: minmax(15rem, 1fr);
        grid-auto-flow: column;
        overflow-x: auto;
        border-top: 1px solid rgb(255 255 255 / 0.14);
        scrollbar-width: none;
    }

    .wg-story-rail--hero::-webkit-scrollbar {
        display: none;
    }

    .wg-story-rail--hero .wg-story-rail__tab {
        grid-template-columns: 1.25rem 3.5rem minmax(0, 1fr);
        border-right: 1px solid rgb(255 255 255 / 0.12);
        border-bottom: 0;
    }

    .wg-story-rail--hero .wg-story-rail__tab::before {
        right: 0;
        bottom: auto;
        width: auto;
        height: 3px;
    }

    .wg-home-hero--with-rail .wg-slider-controls {
        top: 1rem;
        right: 1rem;
        bottom: auto;
        left: auto;
    }
}

/* Legacy-spaced promo strip, compact first row, and equal-height card families. */
.wg-home-hero-shell + .wg-banner-strip {
    margin-top: 1.875rem;
}

.wg-home-hero-shell + .wg-banner-strip .wg-boxes--flush {
    gap: 1.875rem;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.wg-site .wg-banner-strip .wg-boxes {
    gap: 1.875rem;
}

.wg-site > .wg-banner-strip {
    padding-block: 1.875rem 1.4375rem;
    background: rgb(var(--wg-surface));
}

.wg-site .wg-boxes--flush .wg-box {
    height: 100%;
    min-height: 6rem;
    align-items: stretch;
    padding: 0;
}

.wg-site .wg-boxes--flush .wg-box__media {
    width: 6rem;
    height: auto;
    flex-basis: 6rem;
    border: 0;
    border-radius: 0;
}

.wg-site .wg-boxes--flush .wg-box__body {
    display: flex;
    justify-content: center;
    flex-direction: column;
    padding: 0.8rem 1rem;
}

.wg-site .wg-home-hero-shell + .wg-banner-strip .wg-boxes--flush .wg-box {
    border: 1px solid rgb(var(--wg-border));
    border-radius: var(--wg-radius-control, 0.4rem);
    background: rgb(var(--wg-surface));
}

.wg-home {
    padding-top: clamp(1rem, 2vw, 1.5rem);
}

.wg-banner-strip + .wg-home {
    padding-top: 1.875rem;
}

.wg-home__top-ad:has(.wg-adslot) {
    margin-bottom: clamp(1.25rem, 2.5vw, 2rem);
}

.wg-card--post {
    display: flex;
    width: 100%;
    flex-direction: column;
}

.wg-card--post .wg-card__link,
.wg-card--post .wg-card__body {
    min-height: 0;
}

.wg-card--post .wg-card__body {
    overflow: hidden;
}

.wg-card--post .wg-card__footer {
    flex: 0 0 auto;
}

.wg-card--post .wg-card__media img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.wg-card--post.wg-editorial-card--specification .wg-card__media img {
    object-fit: contain;
}

.wg-home__main > .wg-section:first-child {
    margin-top: 0;
}

.wg-company-card {
    display: flex;
    width: 100%;
    height: 100%;
    flex-direction: column;
}

.wg-company-card > .wg-card__body {
    flex: 1 1 auto;
}

.wg-site .row > [class*="col-"]:has(> .wg-card) {
    display: flex;
    align-items: stretch;
}

.wg-site .row > [class*="col-"] > .wg-card {
    width: 100%;
}

.wg-company-rail {
    align-items: stretch;
}

.wg-company-rail__item {
    display: flex;
    height: 100%;
}

.wg-company-card--rail {
    width: 100%;
    height: 100%;
}

@media (min-width: 768px) {
    [data-wg-view-target] > .wg-card--post {
        height: 13.25rem;
        min-height: 13.25rem;
    }

    [data-wg-view-target] > .wg-card--post .wg-card__link {
        overflow: hidden;
    }

    [data-wg-view-target] > .wg-card--post .wg-card__media {
        height: 100%;
        min-height: 0;
        align-self: stretch;
    }

    [data-wg-view-target].is-grid {
        grid-auto-rows: 15.5rem;
    }

    [data-wg-view-target].is-grid > .wg-card--post {
        height: 100%;
        min-height: 0;
    }

    [data-wg-view-target].is-grid > .wg-card--post .wg-card__media {
        flex-basis: 42%;
    }

    .wg-boxes {
        align-items: stretch;
    }

    .wg-boxes .wg-box {
        height: 100%;
    }
}

@media (max-width: 767.98px) {
    .wg-home-hero--with-rail {
        --wg-hero-story-rail-height: 6.2rem;
    }

    .wg-home-hero--with-rail .wg-home-hero__content {
        padding: 1.1rem;
    }

    .wg-home-hero--with-rail .wg-home-hero__title {
        font-size: clamp(1.75rem, 8vw, 2.05rem);
        line-height: 1.05;
        -webkit-line-clamp: 2;
    }

    .wg-home-hero--with-rail .wg-home-hero__excerpt {
        display: none;
    }

    .wg-home-hero--with-rail .wg-home-hero__cta {
        min-height: 2.55rem;
        margin-top: 0.85rem;
    }

    .wg-story-rail--hero {
        grid-auto-columns: minmax(12rem, 72vw);
    }

    .wg-story-rail--hero .wg-story-rail__tab {
        grid-template-columns: 1.1rem minmax(0, 1fr);
        gap: 0.55rem;
        padding: 0.7rem 0.8rem;
    }

    .wg-story-rail--hero .wg-story-rail__media {
        display: none;
    }

    .wg-story-rail__title {
        font-size: 0.72rem;
    }

    .wg-home-hero--with-rail .wg-slider-controls {
        top: 0.75rem;
        right: auto;
        bottom: auto;
        left: 0.75rem;
        width: auto;
        justify-content: flex-start;
    }

    .wg-home-hero--with-rail .wg-slider-controls__counter {
        min-width: 3.5rem;
        margin: 0;
        padding-inline: 0.35rem;
    }

    .wg-site .wg-boxes--flush .wg-box {
        height: 7rem;
        min-height: 7rem;
    }

    .wg-home-hero-shell + .wg-banner-strip .wg-boxes--flush {
        gap: 0.9375rem;
        overflow-x: auto;
    }

    .wg-site .wg-banner-strip .wg-boxes {
        gap: 0.9375rem;
    }

    .wg-site > .wg-banner-strip {
        padding-block: 0.9375rem;
    }

    [data-wg-view-target] > .wg-card--post .wg-card__body {
        height: 11rem;
        flex: 0 0 11rem;
    }

}

@media (prefers-reduced-motion: reduce) {
    .wg-story-rail__tab {
        transition: none;
    }
}

/* The image is the default; the text only steps in when it BREAKS.
   Gating the image on a JS load event painted the text brand first on
   every visit and swapped the real logo in a beat later. */
[data-wg-brand-image] {
    display: block;
}

.wg-logo.is-image-broken [data-wg-brand-image] {
    display: none;
}

.wg-logo__fallback {
    display: inline-flex;
    align-items: baseline;
    color: rgb(var(--wg-on-surface));
    font-family: var(--wg-font-display);
    font-size: clamp(1.35rem, 3vw, 1.7rem);
    font-weight: 800;
    letter-spacing: -0.045em;
    line-height: 1;
}

.wg-logo__fallback .accent {
    color: rgb(var(--wg-primary));
}

.wg-logo .wg-logo__fallback {
    display: none;
}

.wg-logo.is-image-broken .wg-logo__fallback {
    display: inline-flex;
}

/* CAD company index: restrained Material cards with predictable logo sizing. */
.wg-cad-companies {
    padding-block: clamp(1.5rem, 3vw, 2.5rem) clamp(3rem, 5vw, 4.5rem);
}

.wg-cad-companies__header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1.5rem;
    margin-bottom: 1.15rem;
    padding-bottom: 0.9rem;
    border-bottom: 1px solid rgb(var(--wg-border));
}

.wg-cad-companies__header .wg-h3 {
    margin: 0.15rem 0 0;
    font-size: clamp(1.2rem, 2vw, 1.55rem);
    line-height: 1.25;
}

.wg-cad-companies__eyebrow {
    color: rgb(var(--wg-primary-dark));
    font-size: 0.69rem;
    font-weight: 800;
    letter-spacing: 0.09em;
    line-height: 1.2;
    text-transform: uppercase;
}

.wg-cad-companies__summary {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    margin: 0;
    color: rgb(var(--wg-muted));
    font-size: 0.78rem;
    line-height: 1.35;
    white-space: nowrap;
}

.wg-cad-companies__summary .mdi {
    color: rgb(var(--wg-primary));
    font-size: 1.1rem;
}

.wg-cad-company-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
    gap: 1rem;
}

.wg-site .wg-cad-company-card {
    height: 11.25rem;
    min-width: 0;
    min-height: 11.25rem;
    margin: 0;
    border-radius: var(--wg-radius-sm);
    box-shadow: 0 2px 7px rgb(var(--wg-secondary) / 0.07);
}

.wg-site .wg-cad-company-card:hover {
    border-color: rgb(var(--wg-primary) / 0.48);
    box-shadow: 0 9px 22px rgb(var(--wg-secondary) / 0.11);
    transform: translateY(-2px);
}

.wg-cad-company-card__link {
    display: grid;
    width: 100%;
    height: 100%;
    min-height: inherit;
    grid-template-columns: 8.25rem minmax(0, 1fr);
    color: inherit;
    text-decoration: none;
}

.wg-cad-company-card__link:hover {
    color: inherit;
}

.wg-cad-company-card__link:focus-visible {
    outline: 3px solid rgb(var(--wg-focus) / 0.55);
    outline-offset: -3px;
}

.wg-cad-company-card__media {
    display: grid;
    min-width: 0;
    place-items: center;
    padding: 1rem;
    border-right: 1px solid rgb(var(--wg-border));
    background: #fff;
}

.wg-cad-company-card__media img {
    display: block;
    width: 100%;
    height: 6.25rem;
    grid-area: 1 / 1;
    object-fit: contain;
    opacity: 0;
}

.wg-cad-company-card__media.is-image-ready img {
    opacity: 1;
}

.wg-cad-company-card__media.is-image-ready .wg-cad-company-card__initials {
    display: none;
}

.wg-cad-company-card__initials {
    display: grid;
    width: 4.6rem;
    height: 4.6rem;
    grid-area: 1 / 1;
    place-items: center;
    border: 1px solid rgb(var(--wg-primary) / 0.25);
    border-radius: var(--wg-radius-sm);
    background: rgb(var(--wg-primary-soft));
    color: rgb(var(--wg-primary-dark));
    font-family: var(--wg-font-display);
    font-size: 1.15rem;
    font-weight: 800;
    letter-spacing: 0.04em;
}

.wg-cad-company-card__body {
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
    padding: 1rem 1.1rem;
}

.wg-cad-company-card__label {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    margin-bottom: 0.45rem;
    color: rgb(var(--wg-primary-dark));
    font-size: 0.67rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    line-height: 1.2;
    text-transform: uppercase;
}

.wg-cad-company-card__label .mdi {
    font-size: 0.95rem;
}

.wg-cad-company-card__title {
    color: rgb(var(--wg-on-surface));
    font-family: var(--wg-font-display);
    font-size: clamp(0.98rem, 1.3vw, 1.12rem);
    font-weight: 750;
    letter-spacing: -0.015em;
    line-height: 1.3;
}

.wg-cad-company-card__description {
    margin-top: 0.45rem;
    color: rgb(var(--wg-muted));
    font-size: 0.78rem;
    line-height: 1.48;
}

.wg-cad-company-card__action {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    margin-top: auto;
    padding-top: 0.6rem;
    color: rgb(var(--wg-primary-dark));
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.025em;
}

.wg-cad-company-card__action .mdi {
    font-size: 1rem;
    transition: transform 0.2s var(--wg-ease);
}

.wg-cad-company-card:hover .wg-cad-company-card__action .mdi {
    transform: translateX(0.2rem);
}

.wg-cad-companies__pagination {
    margin-top: 1.5rem;
}

@media (max-width: 767.98px) {
    .wg-cad-company-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .wg-cad-companies__header {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.55rem;
    }

    .wg-cad-companies__summary {
        white-space: normal;
    }
}

@media (max-width: 479.98px) {
    .wg-cad-companies {
        padding-top: 1.15rem;
    }

    .wg-cad-company-card__link {
        grid-template-columns: 6.5rem minmax(0, 1fr);
    }

    .wg-cad-company-card__media {
        padding: 0.65rem;
    }

    .wg-cad-company-card__media img {
        height: 4.75rem;
    }

    .wg-cad-company-card__initials {
        width: 3.75rem;
        height: 3.75rem;
        font-size: 0.95rem;
    }

    .wg-cad-company-card__body {
        padding: 0.8rem;
    }

    .wg-cad-company-card__description {
        font-size: 0.74rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .wg-cad-company-card,
    .wg-cad-company-card__action .mdi {
        transition: none;
    }
}

/* CAD company detail: compact technical resources rather than promotional cards. */
.wg-cad-resources {
    padding-block: clamp(1.5rem, 3vw, 2.5rem) clamp(3rem, 5vw, 4.5rem);
}

.wg-cad-resources__header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1.5rem;
    margin-bottom: 1rem;
    padding-bottom: 0.85rem;
    border-bottom: 1px solid rgb(var(--wg-border));
}

.wg-cad-resources__header .wg-h3 {
    margin: 0.15rem 0 0;
    font-size: clamp(1.2rem, 2vw, 1.55rem);
    line-height: 1.25;
}

.wg-cad-resources__eyebrow {
    color: rgb(var(--wg-primary-dark));
    font-size: 0.69rem;
    font-weight: 800;
    letter-spacing: 0.09em;
    line-height: 1.2;
    text-transform: uppercase;
}

.wg-cad-resources__summary {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    margin: 0;
    color: rgb(var(--wg-muted));
    font-size: 0.78rem;
    line-height: 1.35;
    white-space: nowrap;
}

.wg-cad-resources__summary .mdi {
    color: rgb(var(--wg-primary));
    font-size: 1.1rem;
}

.wg-cad-resource-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
    gap: 1rem;
}

.wg-site .wg-cad-resource-card {
    display: flex;
    width: 100%;
    height: 21rem;
    min-width: 0;
    min-height: 21rem;
    margin: 0;
    border-radius: var(--wg-radius-sm);
    box-shadow: 0 2px 7px rgb(var(--wg-secondary) / 0.07);
}

.wg-site .wg-cad-resource-card:hover {
    border-color: rgb(var(--wg-primary) / 0.48);
    box-shadow: 0 9px 22px rgb(var(--wg-secondary) / 0.11);
    transform: translateY(-2px);
}

.wg-cad-resource-card__link {
    display: grid;
    width: 100%;
    height: 100%;
    min-width: 0;
    grid-template-rows: 10rem minmax(0, 1fr);
    color: inherit;
    text-decoration: none;
}

.wg-cad-resource-card__link:hover {
    color: inherit;
}

.wg-cad-resource-card__link:focus-visible {
    outline: 3px solid rgb(var(--wg-focus) / 0.55);
    outline-offset: -3px;
}

.wg-cad-resource-card__media {
    position: relative;
    display: grid;
    min-width: 0;
    overflow: hidden;
    place-items: center;
    padding: 0.85rem;
    border-bottom: 1px solid rgb(var(--wg-border));
    background: rgb(var(--wg-surface-alt) / 0.5);
}

.wg-cad-resource-card__media img {
    display: block;
    width: min(100%, 13rem);
    height: 100%;
    max-height: 8rem;
    grid-area: 1 / 1;
    object-fit: contain;
    opacity: 0;
    transform: none;
    transition: opacity 0.2s ease;
}

.wg-cad-resource-card__media.is-image-ready img {
    opacity: 1;
}

.wg-cad-resource-card__media.is-image-ready .wg-cad-resource-card__placeholder {
    opacity: 0;
}

.wg-cad-resource-card__placeholder {
    display: grid;
    width: 4.25rem;
    height: 4.25rem;
    grid-area: 1 / 1;
    place-items: center;
    border: 1px solid rgb(var(--wg-primary) / 0.22);
    border-radius: var(--wg-radius-sm);
    background: rgb(var(--wg-primary-soft));
    color: rgb(var(--wg-primary-dark));
    transition: opacity 0.2s ease;
}

.wg-cad-resource-card__placeholder .mdi {
    font-size: 1.75rem;
}

.wg-cad-resource-card__body {
    display: flex;
    min-width: 0;
    min-height: 0;
    flex-direction: column;
    align-items: flex-start;
    padding: 1rem 1.1rem;
}

.wg-cad-resource-card__label {
    display: inline-flex;
    max-width: 100%;
    align-items: center;
    gap: 0.35rem;
    margin-bottom: 0.45rem;
    overflow: hidden;
    color: rgb(var(--wg-primary-dark));
    font-size: 0.67rem;
    font-weight: 800;
    letter-spacing: 0.07em;
    line-height: 1.2;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.wg-cad-resource-card__label .mdi {
    flex: 0 0 auto;
    font-size: 0.95rem;
}

.wg-cad-resource-card__title {
    min-height: 2.7rem;
    color: rgb(var(--wg-on-surface));
    font-family: var(--wg-font-display);
    font-size: clamp(0.98rem, 1.25vw, 1.1rem);
    font-weight: 750;
    letter-spacing: -0.015em;
    line-height: 1.35;
}

.wg-cad-resource-card__description {
    margin-top: 0.45rem;
    color: rgb(var(--wg-muted));
    font-size: 0.78rem;
    line-height: 1.5;
}

.wg-cad-resources__pagination {
    margin-top: 1.5rem;
}

@media (min-width: 1600px) {
    .wg-cad-resource-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    .wg-cad-resources__header {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.55rem;
    }

    .wg-cad-resources__summary {
        white-space: normal;
    }

    .wg-cad-resource-grid {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (max-width: 479.98px) {
    .wg-cad-resources {
        padding-top: 1.15rem;
    }

    .wg-site .wg-cad-resource-card {
        height: 20rem;
        min-height: 20rem;
    }

    .wg-cad-resource-card__link {
        grid-template-rows: 8.75rem minmax(0, 1fr);
    }

    .wg-cad-resource-card__media img {
        max-height: 7rem;
    }

    .wg-cad-resource-card__body {
        padding: 0.85rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .wg-cad-resource-card,
    .wg-cad-resource-card__media img,
    .wg-cad-resource-card__placeholder {
        transition: none;
    }
}

/* CAD group pages use the same restrained editorial rhythm as article details. */
.wg-cad-group {
    min-width: 0;
    padding-bottom: clamp(2rem, 4vw, 3.5rem);
}

.wg-cad-group__intro {
    margin-top: 1rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid rgb(var(--wg-border));
}

.wg-cad-group__summary {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    margin: 1rem 0 0;
    color: rgb(var(--wg-muted));
    font-size: 0.75rem;
    line-height: 1.4;
}

.wg-cad-group__summary .mdi {
    color: rgb(var(--wg-primary));
    font-size: 1rem;
}

.wg-cad-group .wg-cad-resources {
    padding-block: 1rem 0;
}

.wg-cad-group .wg-cad-resource-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 767.98px) {
    .wg-cad-group .wg-cad-resource-grid {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* Individual CAD resources follow the article layout; downloads remain content. */
.wg-cad-detail {
    min-width: 0;
    padding-bottom: clamp(2rem, 4vw, 3.5rem);
}

.wg-cad-detail .wg-article-header {
    max-width: 48rem;
}

.wg-cad-detail .wg-article-header__title {
    max-width: 46rem;
    font-size: clamp(1.45rem, 1.65vw, 1.75rem);
    line-height: 1.15;
}

.wg-site .wg-cad-detail__hero {
    overflow: hidden;
    border-radius: var(--wg-radius-sm);
    background: rgb(var(--wg-surface-alt) / 0.55);
    box-shadow: none;
}

.wg-cad-detail__media {
    display: grid;
    min-height: 18rem;
    place-items: center;
    padding: clamp(0.75rem, 2vw, 1.5rem);
    background: rgb(var(--wg-surface-alt) / 0.55);
}

.wg-cad-detail__media img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 42rem;
    object-fit: contain;
}

.wg-cad-detail__content {
    margin-top: 1rem;
}

.wg-cad-detail__downloads {
    margin-top: 1.5rem;
    padding-block: 1.1rem;
    border-block: 1px solid rgb(var(--wg-border));
}

.wg-cad-detail__downloads-header {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    margin-bottom: 0.8rem;
}

.wg-cad-detail__downloads-header .wg-h3 {
    margin: 0;
    font-size: 1.05rem;
    letter-spacing: -0.01em;
}

.wg-cad-detail__downloads-icon {
    display: grid;
    width: 2rem;
    height: 2rem;
    place-items: center;
    border-radius: var(--wg-radius-control);
    background: rgb(var(--wg-action-soft));
    color: rgb(var(--wg-action));
    font-size: 1rem;
}

.wg-cad-detail__download-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem;
}

.wg-cad-detail__download-list .wg-btn {
    width: 100%;
    min-height: 2.75rem;
    justify-content: flex-start;
    text-align: left;
    white-space: normal;
}

@media (max-width: 767.98px) {
    .wg-cad-detail .wg-article-header__title {
        font-size: clamp(1.35rem, 5.5vw, 1.55rem);
    }

    .wg-cad-detail__media {
        min-height: 13rem;
        padding: 0.75rem;
    }

    .wg-cad-detail__download-list {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* Company profile: legacy contact flow rebuilt as one restrained Material surface. */
.wg-company-page-header {
    overflow: hidden;
    border: 1px solid rgb(var(--wg-border));
    border-radius: var(--wg-radius-control);
    background: rgb(var(--wg-surface));
    box-shadow: var(--wg-shadow-sm);
}

.wg-company-page-header__identity {
    display: grid;
    grid-template-columns: 7rem minmax(0, 1fr);
    gap: 1.1rem;
    align-items: center;
    padding: 1rem 1.15rem;
}

.wg-company-page-header__logo-wrap {
    display: grid;
    width: 7rem;
    height: 4.5rem;
    place-items: center;
    padding: 0.35rem;
    border: 1px solid rgb(var(--wg-border));
    border-radius: calc(var(--wg-radius-control) - 2px);
    background: #fff;
}

.wg-company-page-header__logo {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.wg-company-page-header__logo--initials {
    display: grid;
    place-items: center;
    color: rgb(var(--wg-primary));
    font-size: 1.35rem;
    font-weight: 850;
    letter-spacing: -0.04em;
}

.wg-company-page-header__copy {
    min-width: 0;
}

.wg-company-page-header__eyebrow {
    display: block;
    margin-bottom: 0.2rem;
    color: rgb(var(--wg-primary));
    font-size: 0.67rem;
    font-weight: 850;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.wg-company-page-header__title {
    margin: 0;
    color: rgb(var(--wg-text));
    font-size: clamp(1.35rem, 2.3vw, 1.8rem);
    font-weight: 850;
    letter-spacing: -0.03em;
    line-height: 1.12;
    overflow-wrap: anywhere;
}

.wg-company-page-header__location {
    display: flex;
    gap: 0.35rem;
    align-items: center;
    margin: 0.35rem 0 0;
    color: rgb(var(--wg-muted));
    font-size: 0.82rem;
}

.wg-company-page-header__location .mdi {
    color: rgb(var(--wg-primary));
    font-size: 1rem;
}

.wg-company-page-header .wg-company-profile-tabs {
    margin: 0;
    padding-inline: 1.15rem;
    border-top: 1px solid rgb(var(--wg-border));
    border-bottom: 0;
}

.wg-company-news-grid {
    display: grid;
    gap: 0.9rem;
}

.wg-editorial-card--company {
    min-width: 0;
}

.wg-editorial-card--company .wg-card__media {
    flex: 0 0 11.5rem;
}

.wg-editorial-card--company .wg-card__body {
    min-height: 8.25rem;
    padding: 0.9rem 1rem;
}

.wg-editorial-card--company .wg-card__footer {
    padding: 0.6rem 1rem;
}

.wg-editorial-card--company-resource .wg-card__media {
    background: rgb(var(--wg-surface-alt) / 0.48);
}

.wg-company-profile-tabs {
    gap: 1.2rem;
    margin-bottom: 1rem;
    padding: 0;
    border: 0;
    border-bottom: 1px solid rgb(var(--wg-border));
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.wg-site .wg-company-profile-tabs a {
    position: relative;
    padding: 0.8rem 0.1rem 0.7rem;
    border-radius: 0;
    background: transparent;
    color: rgb(var(--wg-muted));
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.045em;
    text-transform: uppercase;
}

.wg-site .wg-company-profile-tabs a::after {
    position: absolute;
    right: 0;
    bottom: -1px;
    left: 0;
    height: 2px;
    background: transparent;
    content: '';
}

.wg-site .wg-company-profile-tabs a:hover,
.wg-site .wg-company-profile-tabs .is-active {
    background: transparent;
    color: rgb(var(--wg-primary));
}

.wg-site .wg-company-profile-tabs .is-active::after {
    background: rgb(var(--wg-primary));
}

.wg-site .wg-company-profile-tabs .wg-company-profile-tabs__inquiry {
    color: rgb(var(--wg-primary));
}

.wg-company-contact-shell {
    display: grid;
    overflow: hidden;
    grid-template-columns: minmax(18rem, 0.82fr) minmax(0, 1.18fr);
    align-items: stretch;
    border: 1px solid rgb(var(--wg-border));
    border-radius: var(--wg-radius-control);
    background: rgb(var(--wg-surface));
    box-shadow: var(--wg-shadow-sm);
}

.wg-company-contact-shell--single {
    grid-template-columns: minmax(0, 1fr);
}

.wg-company-contact-panel {
    min-width: 0;
    padding: clamp(1rem, 2.5vw, 1.5rem);
}

.wg-company-contact-panel__identity {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0.8rem;
    align-items: start;
    padding-bottom: 1.15rem;
    border-bottom: 1px solid rgb(var(--wg-border));
}

.wg-company-profile__logo-wrap {
    display: grid;
    min-height: 7rem;
    place-items: center;
    padding: 0.25rem 0 0.65rem;
}

.wg-company-profile__logo {
    display: block;
    width: min(100%, 17rem);
    height: 6rem;
    object-fit: contain;
}

.wg-company-profile__logo--initials {
    display: grid;
    place-items: center;
    color: rgb(var(--wg-primary));
    font-size: 1.75rem;
    font-weight: 800;
    letter-spacing: -0.04em;
}

.wg-company-contact-panel__eyebrow {
    display: block;
    margin-bottom: 0.25rem;
    color: rgb(var(--wg-primary));
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.wg-company-profile__title {
    margin: 0;
    color: rgb(var(--wg-text));
    font-size: clamp(1.5rem, 2.4vw, 2rem);
    font-weight: 800;
    letter-spacing: -0.035em;
    line-height: 1.12;
    overflow-wrap: anywhere;
}

.wg-company-contact-panel__location {
    display: flex;
    gap: 0.35rem;
    align-items: center;
    margin: 0.45rem 0 0;
    color: rgb(var(--wg-muted));
    font-size: 0.85rem;
}

.wg-company-contact-panel__location .mdi {
    color: rgb(var(--wg-primary));
    font-size: 1rem;
}

.wg-company-contact-panel__details {
    margin-top: 1rem;
    border: 1px solid rgb(var(--wg-border));
    border-radius: var(--wg-radius-control);
    background: rgb(var(--wg-surface-alt) / 0.48);
}

.wg-company-contact-panel__details .card-body {
    padding: 1rem;
}

.wg-company-contact-panel__details .wg-h3 {
    display: flex;
    gap: 0.45rem;
    align-items: center;
    margin-bottom: 0.65rem !important;
    font-size: 1rem;
}

.wg-company-contact-panel__details .wg-h3 .mdi {
    flex: 0 0 auto;
    font-size: 1.2rem;
    line-height: 1;
}

.wg-company-contact-panel__details .wg-contact-row {
    border-top: 1px solid rgb(var(--wg-border));
}

.wg-company-contact-panel__details .wg-contact-row:first-of-type {
    border-top: 0;
}

.wg-company-contact-panel__map-link {
    display: inline-flex;
    gap: 0.4rem;
    align-items: center;
    min-height: 2.75rem;
    margin-top: 0.55rem;
    color: rgb(var(--wg-primary));
    font-size: 0.8rem;
    font-weight: 800;
}

.wg-company-contact-panel__links {
    margin-top: 0.9rem;
    border-top: 1px solid rgb(var(--wg-border));
}

.wg-company-contact-panel__link-section {
    padding-top: 0.9rem;
}

.wg-company-contact-panel__link-section + .wg-company-contact-panel__link-section {
    margin-top: 0.9rem;
    border-top: 1px solid rgb(var(--wg-border));
}

.wg-company-contact-panel__link-section h2 {
    margin: 0 0 0.55rem;
    color: rgb(var(--wg-muted));
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.wg-company-contact-panel__website-list {
    display: grid;
    gap: 0.4rem;
}

.wg-company-contact-panel__website-list a {
    display: flex;
    min-width: 0;
    gap: 0.45rem;
    align-items: center;
    color: rgb(var(--wg-primary));
    font-size: 0.86rem;
    font-weight: 700;
}

.wg-company-contact-panel__website-list a span:last-child {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.wg-company-contact-panel__socials {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
}

.wg-company-contact-panel__socials .wg-icon-button {
    width: 2.5rem;
    height: 2.5rem;
}

.wg-company-contact-shell .wg-inquiry {
    height: 100%;
    margin: 0;
    border: 0;
    border-left: 1px solid rgb(var(--wg-border));
    border-radius: 0;
    background: rgb(var(--wg-surface));
    box-shadow: none;
}

.wg-company-contact-shell .wg-inquiry > .card-body {
    padding: clamp(1rem, 2.5vw, 1.5rem);
}

.wg-company-contact-shell .wg-inquiry__head {
    margin-bottom: 1rem;
}

.wg-company-contact-shell .wg-inquiry .form-control {
    min-height: 2.75rem;
}

.wg-company-contact-shell .wg-inquiry textarea.form-control {
    min-height: 8rem;
}

.wg-company-contact-shell .wg-inquiry .wg-action-button {
    width: 100%;
}

@media (max-width: 991.98px) {
    .wg-company-contact-shell {
        grid-template-columns: minmax(0, 1fr);
    }

    .wg-company-contact-shell .wg-inquiry {
        border-top: 1px solid rgb(var(--wg-border));
        border-left: 0;
    }
}

@media (max-width: 767.98px) {
    .wg-company-page-header__identity {
        grid-template-columns: 5.25rem minmax(0, 1fr);
        gap: 0.8rem;
        padding: 0.85rem;
    }

    .wg-company-page-header__logo-wrap {
        width: 5.25rem;
        height: 3.75rem;
    }

    .wg-company-page-header__title {
        font-size: clamp(1.2rem, 5.6vw, 1.45rem);
    }

    .wg-company-page-header .wg-company-profile-tabs {
        padding-inline: 0.85rem;
    }

    .wg-editorial-card--company .wg-card__media {
        flex-basis: auto;
    }

    .wg-editorial-card--company .wg-card__body {
        min-height: 0;
    }

    .wg-company-profile-tabs {
        gap: 1rem;
    }

    .wg-site .wg-company-profile-tabs a {
        min-height: 2.75rem;
        padding-block: 0.8rem 0.65rem;
    }

    .wg-company-contact-panel__identity {
        grid-template-columns: minmax(0, 1fr);
        text-align: left;
    }

    .wg-company-profile__logo-wrap {
        min-height: 6rem;
    }

    .wg-company-profile__logo {
        width: min(100%, 15rem);
        height: 5rem;
        margin-inline: auto;
    }

    .wg-company-contact-panel__location {
        justify-content: flex-start;
    }
}

/* Restored editorial modules from the original portal, expressed in the current material system. */
.wg-article-author__body {
    display: grid;
    grid-template-columns: 5rem minmax(0, 1fr);
    align-items: start;
    gap: 1.25rem;
}

.wg-article-author__avatar {
    display: grid;
    width: 5rem;
    height: 5rem;
    place-items: center;
    border: 1px solid rgb(var(--wg-border));
    border-radius: var(--wg-radius-sm);
    background: rgb(var(--wg-surface-alt));
    object-fit: contain;
    padding: 0.5rem;
}

.wg-article-author__avatar--fallback {
    color: rgb(var(--wg-primary));
    font-size: 2rem;
}

.wg-article-author__content .wg-prose > :last-child {
    margin-bottom: 0;
}

.wg-article-series__list {
    display: grid;
    gap: 0;
    margin: 1rem 0 0;
    padding: 0;
    counter-reset: article-series;
    list-style: none;
}

.wg-article-series__list li {
    display: grid;
    grid-template-columns: 2rem minmax(0, 1fr);
    align-items: start;
    gap: 0.75rem;
    padding: 0.8rem 0;
    border-top: 1px solid rgb(var(--wg-border));
    counter-increment: article-series;
}

.wg-article-series__list li::before {
    display: grid;
    width: 1.75rem;
    height: 1.75rem;
    place-items: center;
    border-radius: 50%;
    background: rgb(var(--wg-surface-alt));
    color: rgb(var(--wg-muted));
    content: counter(article-series);
    font-size: 0.74rem;
    font-weight: 800;
}

.wg-article-series__list li.is-current::before {
    background: rgb(var(--wg-primary));
    color: #fff;
}

.wg-article-series__list li.is-current span {
    color: rgb(var(--wg-on-surface));
    font-weight: 800;
}

.wg-comment-form {
    border-top: 3px solid rgb(var(--wg-primary));
}

.wg-comment-form .wg-inquiry__head {
    margin-bottom: 1rem;
}

@media (max-width: 575.98px) {
    .wg-article-author__body {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (max-width: 991.98px) {
    .wg-search-suggestions__groups {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .wg-search-suggestions__group:nth-child(2n) {
        border-right: 0;
    }

    .wg-search-suggestions__group:nth-child(n + 3) {
        border-top: 1px solid rgb(var(--wg-border));
    }
}

@media (max-width: 575.98px) {
    .wg-search-form [data-wg-search-submit] {
        width: 100%;
    }

    .wg-search-suggestions {
        right: 0;
        left: 0;
        max-height: min(65vh, 30rem);
        border-radius: 0 0 var(--wg-radius-sm) var(--wg-radius-sm);
    }

    .wg-search-suggestions__groups {
        grid-template-columns: minmax(0, 1fr);
    }

    .wg-search-suggestions__group,
    .wg-search-suggestions__group:nth-child(2n) {
        border-right: 0;
    }

    .wg-search-suggestions__group:nth-child(n + 2) {
        border-top: 1px solid rgb(var(--wg-border));
    }
}

/* Legacy card rails rebuilt with the accessible portal slider. */
.wg-mobile-card-carousel {
    display: none;
}

.wg-sidebar-featured-slider {
    display: block;
    width: 100%;
    height: 14rem;
    min-height: 14rem;
    overflow: hidden;
    border: 0;
    border-radius: var(--wg-radius-feature);
    background: rgb(var(--wg-secondary));
    box-shadow: var(--wg-shadow-sm);
    touch-action: pan-y;
}

.wg-sidebar-featured-slider > .wg-sidebar-featured-slider__slide,
.wg-sidebar-featured-slider .wg-sidebar-story {
    width: 100%;
    height: 100%;
    min-height: 100%;
}

.wg-sidebar-featured-slider .wg-sidebar-story__body {
    padding-bottom: 1.8rem;
}

.wg-site .wg-card-carousel > .wg-slider-controls {
    top: 0.55rem;
    right: 0.55rem;
    bottom: auto;
    padding: 0;
    border: 0;
    border-radius: var(--wg-radius-control);
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
}

.wg-site .wg-card-carousel > .wg-slider-controls .wg-slider__pause {
    width: 2.1rem;
    height: 2.1rem;
    min-width: 2.1rem;
    min-height: 2.1rem;
    border: 1px solid rgb(255 255 255 / 0.24);
    border-radius: var(--wg-radius-control);
    background: rgb(8 23 33 / 0.72);
    color: #fff;
    box-shadow: 0 4px 14px rgb(0 0 0 / 0.16);
    backdrop-filter: blur(8px);
}

.wg-site .wg-card-carousel > .wg-slider-controls .wg-slider__pause:hover,
.wg-site .wg-card-carousel > .wg-slider-controls .wg-slider__pause:focus-visible {
    background: rgb(var(--wg-primary));
}

.wg-site .wg-card-carousel > .wg-slider__dots {
    bottom: 0.6rem;
    gap: 0.3rem;
}

.wg-site .wg-card-carousel > .wg-slider__dots .wg-slider__dot {
    width: 0.38rem;
    height: 0.38rem;
    background: rgb(255 255 255 / 0.56);
}

.wg-site .wg-card-carousel > .wg-slider__dots .wg-slider__dot.is-active {
    width: 1.1rem;
    background: rgb(var(--wg-accent));
}

@media (min-width: 768px) and (max-width: 1199.98px) {
    .wg-boxes--static {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-auto-columns: auto;
        grid-auto-flow: row;
        overflow: visible;
        padding: 0;
        scroll-snap-type: none;
    }

    .wg-boxes--static > .wg-box:nth-child(n + 3) {
        display: none;
    }
}

@media (max-width: 767.98px) {
    .wg-boxes--static {
        display: none;
    }

    .wg-mobile-card-carousel {
        display: block;
        width: 100%;
        height: 7rem;
        min-height: 7rem;
        overflow: hidden;
        border: 0;
        border-radius: var(--wg-radius-control);
        background: rgb(var(--wg-surface));
        box-shadow: var(--wg-shadow-sm);
        touch-action: pan-y;
    }

    .wg-mobile-card-carousel > .wg-mobile-card-carousel__slide,
    .wg-mobile-card-carousel > .wg-mobile-card-carousel__slide > .wg-box {
        width: 100%;
        height: 100%;
        min-height: 100%;
    }

    .wg-site .wg-mobile-card-carousel .wg-box {
        gap: 0;
        padding: 0;
        border: 1px solid rgb(var(--wg-border));
        border-radius: var(--wg-radius-control);
        background: rgb(var(--wg-surface));
        box-shadow: none;
        color: rgb(var(--wg-on-surface));
        transform: none;
    }

    .wg-site .wg-mobile-card-carousel .wg-box:hover,
    .wg-site .wg-mobile-card-carousel .wg-box:focus-visible {
        border-color: rgb(var(--wg-action) / 0.42);
        background: rgb(var(--wg-surface));
        color: rgb(var(--wg-on-surface));
    }

    .wg-site .wg-mobile-card-carousel .wg-box__media {
        width: 6.25rem;
        height: 100%;
        flex: 0 0 6.25rem;
        border: 0;
        border-radius: var(--wg-radius-control) 0 0 var(--wg-radius-control);
    }

    .wg-site .wg-mobile-card-carousel .wg-box__body {
        display: flex;
        min-width: 0;
        justify-content: center;
        flex-direction: column;
        padding: 0.8rem 3rem 1.45rem 1rem;
    }

    .wg-site .wg-mobile-card-carousel .wg-box__title {
        font-size: 0.85rem;
    }

    .wg-site .wg-mobile-card-carousel .wg-box__sub {
        font-size: 0.72rem;
    }

    .wg-site .wg-mobile-card-carousel > .wg-slider__dots .wg-slider__dot {
        background: rgb(var(--wg-muted) / 0.46);
    }

    .wg-site .wg-mobile-card-carousel > .wg-slider__dots .wg-slider__dot.is-active {
        background: rgb(var(--wg-action));
    }
}

/* Compact article-detail rail: three cards as in the legacy slider, without hero-sized media. */
.wg-related-posts.wg-scroll-x {
    grid-auto-columns: calc((100% - 2rem) / 3);
    gap: 1rem;
    padding: 0.2rem 0.1rem 0.85rem;
    scroll-snap-type: x mandatory;
}

.wg-related-posts__item {
    display: flex;
    min-width: 0;
}

.wg-related-posts .wg-card--post {
    width: 100%;
    height: 100%;
    box-shadow: var(--wg-shadow-sm);
}

.wg-related-posts .wg-card__media {
    aspect-ratio: 16 / 9;
}

.wg-related-posts .wg-card__body {
    padding: 0.95rem;
}

/* Product detail: one balanced Material surface with full-width follow-up content. */
.wg-product-detail {
    padding-bottom: clamp(2.5rem, 5vw, 4.5rem);
}

.wg-product-hero {
    display: grid;
    overflow: hidden;
    grid-template-columns: minmax(0, 1.08fr) minmax(19rem, 0.92fr);
    margin-bottom: 1.25rem;
    border: 1px solid rgb(var(--wg-border));
    border-radius: var(--wg-radius);
    background: rgb(var(--wg-surface));
    box-shadow: var(--wg-shadow-sm);
}

.wg-product-hero__media {
    min-width: 0;
    padding: clamp(0.75rem, 2vw, 1.25rem);
    border-right: 1px solid rgb(var(--wg-border));
    background: #fff;
}

.wg-product-gallery__main {
    border-radius: calc(var(--wg-radius) - 0.25rem);
    background: #fff;
}

.wg-product-gallery__main:focus-visible {
    outline: 2px solid rgb(var(--wg-action));
    outline-offset: 3px;
}

.wg-product-gallery__stage {
    display: grid;
    min-height: clamp(20rem, 31vw, 29rem);
    place-items: center;
    background: #fff;
}

.wg-product-gallery__stage > img {
    width: 100%;
    height: 100%;
    max-height: 29rem;
    padding: clamp(0.5rem, 2vw, 1.25rem);
    object-fit: contain;
}

.wg-product-gallery__placeholder {
    display: grid;
    min-height: clamp(20rem, 31vw, 29rem);
    place-items: center;
    border-radius: calc(var(--wg-radius) - 0.25rem);
    background: rgb(var(--wg-surface-alt));
    color: rgb(var(--wg-muted) / 0.56);
    font-size: 4.5rem;
}

.wg-product-gallery__thumbs {
    grid-template-columns: repeat(auto-fit, minmax(3.75rem, 4.5rem));
    gap: 0.55rem;
    margin-top: 0.75rem;
}

.wg-product-gallery__thumbs .wg-gallery-grid__item {
    aspect-ratio: 1;
    border-width: 1px;
    background: #fff;
}

.wg-product-gallery__thumbs .wg-gallery-grid__item img {
    object-fit: contain;
    padding: 0.25rem;
}

.wg-product-summary {
    display: flex;
    min-width: 0;
    flex-direction: column;
    padding: clamp(1.25rem, 3vw, 2rem);
}

.wg-product-seller {
    display: grid;
    grid-template-columns: 2.5rem minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    border: 1px solid rgb(var(--wg-border));
    border-radius: var(--wg-radius-sm);
    background: rgb(var(--wg-surface-alt) / 0.64);
    color: rgb(var(--wg-on-surface));
}

.wg-product-seller:hover,
.wg-product-seller:focus-visible {
    border-color: rgb(var(--wg-action) / 0.4);
    background: rgb(var(--wg-action-soft));
    color: rgb(var(--wg-action));
}

.wg-product-seller__icon {
    display: grid;
    width: 2.5rem;
    height: 2.5rem;
    place-items: center;
    border-radius: 50%;
    background: rgb(var(--wg-action-soft));
    color: rgb(var(--wg-action));
    font-size: 1.25rem;
}

.wg-product-seller__label,
.wg-product-seller__name {
    display: block;
}

.wg-product-seller__label {
    color: rgb(var(--wg-muted));
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.wg-product-seller__name {
    overflow: hidden;
    margin-top: 0.05rem;
    font-weight: 750;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.wg-product-seller__arrow {
    color: rgb(var(--wg-muted));
}

.wg-product-facts {
    overflow: hidden;
    margin: 1rem 0 0;
    border: 1px solid rgb(var(--wg-border));
    border-radius: var(--wg-radius-sm);
}

.wg-product-fact {
    display: grid;
    grid-template-columns: minmax(6.5rem, 0.72fr) minmax(0, 1.28fr);
    gap: 0.75rem;
    padding: 0.7rem 0.85rem;
    border-bottom: 1px solid rgb(var(--wg-border));
}

.wg-product-fact:last-child {
    border-bottom: 0;
}

.wg-product-fact dt {
    color: rgb(var(--wg-muted));
    font-size: 0.75rem;
    font-weight: 750;
}

.wg-product-fact dd {
    min-width: 0;
    margin: 0;
    font-size: 0.82rem;
    font-weight: 650;
}

.wg-product-fact--categories dd {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
}

.wg-product-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
    margin-top: 1rem;
}

.wg-product-actions .wg-button {
    flex: 1 1 11rem;
}

.wg-product-external-links {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem 0.9rem;
    margin-top: 0.85rem;
    padding-top: 0.75rem;
    border-top: 1px solid rgb(var(--wg-border));
}

.wg-product-external-links .wg-action-link {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 0.76rem;
}

.wg-product-report {
    margin-top: 0.65rem;
}

.wg-product-inquiry {
    margin-bottom: clamp(1.75rem, 4vw, 3rem);
}

.wg-product-inquiry .wg-inquiry {
    margin: 0;
    border-top-width: 3px;
    border-radius: var(--wg-radius);
    box-shadow: var(--wg-shadow-sm);
}

.wg-product-inquiry .wg-inquiry > .card-body {
    padding: clamp(1.15rem, 3vw, 1.75rem);
}

.wg-product-inquiry .wg-inquiry .wg-action-button {
    min-width: min(100%, 15rem);
}

.wg-product-section {
    margin-block: clamp(1.75rem, 4vw, 3rem);
}

.wg-product-description {
    border-radius: var(--wg-radius);
    box-shadow: var(--wg-shadow-sm);
}

.wg-product-description > .wg-card__body {
    padding: clamp(1.15rem, 3vw, 1.75rem);
}

.wg-product-rail.wg-scroll-x {
    grid-auto-columns: calc((100% - 2rem) / 3);
    gap: 1rem;
    padding: 0.15rem 0.1rem 0.75rem;
}

.wg-product-rail .wg-scroll-x__item {
    display: flex;
    min-width: 0;
}

.wg-product-rail .wg-card {
    width: 100%;
    height: 100%;
}

@media (max-width: 991.98px) {
    .wg-product-hero {
        grid-template-columns: minmax(0, 1fr);
    }

    .wg-product-hero__media {
        border-right: 0;
        border-bottom: 1px solid rgb(var(--wg-border));
    }

    .wg-product-gallery__stage,
    .wg-product-gallery__placeholder {
        min-height: clamp(18rem, 65vw, 26rem);
    }

    .wg-product-rail.wg-scroll-x {
        grid-auto-columns: calc((100% - 1rem) / 2);
    }
}

@media (max-width: 575.98px) {
    .wg-product-hero {
        border-right: 0;
        border-left: 0;
        border-radius: 0;
    }

    .wg-product-hero__media,
    .wg-product-summary {
        padding: 1rem;
    }

    .wg-product-gallery__stage,
    .wg-product-gallery__placeholder {
        min-height: 17rem;
    }

    .wg-product-fact {
        grid-template-columns: minmax(0, 1fr);
        gap: 0.2rem;
    }

    .wg-product-actions {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
    }

    .wg-product-actions .wg-button {
        width: 100%;
    }

    /* Two cards peek instead of one filling the screen, and the media
       stops eating two thirds of each card's height. */
    .wg-product-rail.wg-scroll-x {
        grid-auto-columns: min(58vw, 14rem);
        gap: 0.7rem;
    }

    .wg-product-rail .wg-card__media {
        aspect-ratio: 4 / 3;
        height: auto;
        min-height: 0;
    }

    .wg-product-rail .wg-card__body {
        padding: 0.65rem 0.75rem 0.85rem;
    }

    .wg-product-rail .wg-card__title {
        display: -webkit-box;
        overflow: hidden;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        font-size: 0.875rem;
        line-height: 1.3;
    }
}

.wg-related-posts .wg-card__title {
    font-size: 0.98rem;
    line-height: 1.35;
}

.wg-related-posts .wg-card__text {
    font-size: 0.78rem;
    line-height: 1.5;
}

.wg-related-posts .wg-card__footer {
    padding: 0.7rem 0.95rem;
}

/* The shared sidebar uses one restrained card rhythm for every content type. */
.wg-reco--no-media .wg-reco__link {
    min-height: 4.25rem;
    padding-inline: 0.8rem;
}

.wg-reco--no-media .wg-reco__body {
    width: 100%;
}

.wg-facebook-card,
.wg-partners {
    overflow: hidden;
    padding: 0.9rem;
    border: 1px solid rgb(var(--wg-border));
    border-radius: var(--wg-radius-surface);
    background: rgb(var(--wg-surface));
    box-shadow: var(--wg-shadow-sm);
}

.wg-facebook-card__embed {
    display: block;
    width: 100%;
    min-width: 0;
    min-height: 5rem;
    overflow: hidden;
    padding: 0.35rem;
    border-radius: var(--wg-radius-control);
    background: rgb(var(--wg-primary-soft) / 0.3);
}

.wg-facebook-card .fb-page {
    display: block;
    width: 100% !important;
    min-width: 0;
}

.wg-facebook-card .fb-xfbml-parse-ignore {
    margin: 0;
}

.wg-facebook-card .fb-page > span,
.wg-facebook-card .fb-page iframe {
    display: block;
    width: 100% !important;
    min-width: 0;
    max-width: 100% !important;
}

.wg-facebook-card__fallback {
    display: flex;
    min-height: 4.25rem;
    align-items: center;
    gap: 0.75rem;
    padding: 0.65rem 0.75rem;
    color: rgb(var(--wg-text));
    text-align: left;
}

.wg-facebook-card__fallback:hover {
    color: rgb(var(--wg-primary));
}

.wg-facebook-card__fallback > span:nth-child(2) {
    display: grid;
    min-width: 0;
    flex: 1;
    gap: 0.05rem;
}

.wg-facebook-card__fallback strong,
.wg-facebook-card__fallback small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.wg-facebook-card__fallback small {
    color: rgb(var(--wg-muted));
}

.wg-facebook-card__icon {
    display: inline-grid;
    width: 2.5rem;
    height: 2.5rem;
    flex: 0 0 2.5rem;
    place-items: center;
    border-radius: var(--wg-radius-control);
    background: #1877f2;
    color: #fff;
}

.wg-partner {
    min-height: 4.5rem;
    gap: 0.7rem;
    padding: 0.65rem 0;
}

.wg-partner:not(.wg-partner--lead) .wg-partner__logo {
    width: 4.75rem;
    height: 2.8rem;
    flex: 0 0 4.75rem;
}

.wg-partner--lead {
    min-height: 0;
    flex-direction: column;
    gap: 0.7rem;
    padding: 1rem 0.7rem;
    border: 1px solid rgb(var(--wg-border));
    border-radius: var(--wg-radius-surface);
    background: rgb(var(--wg-background) / 0.5);
    text-align: center;
}

.wg-partner--lead .wg-partner__logo {
    width: 100%;
    height: clamp(5.25rem, 8vw, 6.5rem);
    flex: none;
    padding: 0.65rem;
}

.wg-partner--lead .wg-partner__body {
    width: 100%;
}

.wg-partner--lead .wg-partner__name {
    font-size: 0.92rem;
}

.wg-partner--lead .wg-partner__text {
    -webkit-line-clamp: 3;
}

.wg-partner--lead:hover {
    padding-inline: 0.7rem;
    border-color: rgb(var(--wg-primary) / 0.38);
    background: rgb(var(--wg-primary-soft) / 0.55);
}

.wg-partner__text {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

@media (max-width: 991.98px) {
    .wg-related-posts.wg-scroll-x {
        grid-auto-columns: calc((100% - 1rem) / 2);
    }
}

@media (max-width: 767.98px) {
    .wg-specification-figure {
        width: fit-content;
        max-width: 100%;
    }

    .wg-specification-figure__media {
        padding: 0.375rem;
    }

    .wg-specification-figure__image {
        max-height: min(70vh, 36rem);
    }

    .wg-related-posts.wg-scroll-x {
        grid-auto-columns: min(82vw, 21rem);
        gap: 0.8rem;
        padding-bottom: 0.7rem;
    }

    .wg-related-posts .wg-card__body {
        padding: 0.85rem;
    }
}

/* Shared content-category filters */
.wg-category-filter {
    min-width: 0;
}

.wg-category-filter__toolbar {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.65rem;
    border: 1px solid rgb(var(--wg-border));
    border-radius: var(--wg-radius-sm);
    background: rgb(var(--wg-surface));
    box-shadow: var(--wg-shadow-sm);
}

.wg-category-filter__quick {
    display: flex;
    min-width: 0;
    flex: 1;
    gap: 0.25rem;
    overflow-x: auto;
    scrollbar-width: none;
}

.wg-category-filter__quick::-webkit-scrollbar {
    display: none;
}

.wg-category-filter__quick-link {
    display: inline-flex;
    min-height: 2.5rem;
    flex: 0 0 auto;
    align-items: center;
    padding: 0.5rem 0.8rem;
    border-radius: 0.35rem;
    color: rgb(var(--wg-on-surface));
    font-size: 0.82rem;
    font-weight: 700;
    white-space: nowrap;
}

.wg-category-filter__quick-link:hover,
.wg-category-filter__quick-link:focus-visible {
    background: rgb(var(--wg-primary-soft));
    color: rgb(var(--wg-primary-dark));
}

.wg-category-filter__quick-link.is-active,
.wg-category-filter__quick-link[aria-current="page"] {
    background: rgb(var(--wg-primary));
    color: #fff;
}

.wg-category-filter__trigger {
    display: inline-flex;
    min-height: 2.75rem;
    flex: 0 0 auto;
    align-items: center;
    gap: 0.55rem;
    padding: 0.55rem 0.75rem;
    border: 1px solid rgb(var(--wg-primary));
    border-radius: var(--wg-radius-sm);
    background: rgb(var(--wg-primary));
    color: #fff;
    box-shadow: 0 3px 9px rgb(var(--wg-primary) / 0.18);
    line-height: 1.2;
    text-align: left;
    transition: background 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.wg-category-filter__trigger:hover,
.wg-category-filter__trigger:focus-visible {
    border-color: rgb(var(--wg-primary-dark));
    background: rgb(var(--wg-primary-dark));
    box-shadow: 0 5px 14px rgb(var(--wg-primary) / 0.24);
}

.wg-category-filter__trigger-copy {
    display: grid;
    gap: 0.05rem;
}

.wg-category-filter__trigger-copy strong {
    font-size: 0.82rem;
    line-height: 1.2;
}

.wg-category-filter__trigger-copy small {
    max-width: 11rem;
    overflow: hidden;
    font-size: 0.68rem;
    font-weight: 500;
    opacity: 0.82;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.wg-category-filter__dialog {
    position: fixed;
    inset-block: 0;
    inset-inline-end: 0;
    width: min(31rem, 100%);
    max-width: none;
    height: 100dvh;
    max-height: none;
    margin: 0 0 0 auto;
    padding: 0;
    overflow: hidden;
    border: 0;
    border-left: 1px solid rgb(var(--wg-border));
    background: rgb(var(--wg-surface));
    color: rgb(var(--wg-on-surface));
    box-shadow: -18px 0 46px rgb(9 25 35 / 0.2);
}

.wg-category-filter__fallback-backdrop {
    position: fixed;
    z-index: 2390;
    inset: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    background: rgb(5 18 27 / 0.55);
    backdrop-filter: blur(2px);
}

.wg-category-filter__fallback-backdrop[hidden] {
    display: none;
}

.wg-category-filter__dialog.is-fallback-open {
    z-index: 2400;
    display: block;
}

.wg-category-filter__dialog[open] {
    animation: wg-category-filter-enter 0.22s var(--wg-ease) both;
}

.wg-category-filter__dialog::backdrop {
    background: rgb(5 18 27 / 0.55);
    backdrop-filter: blur(2px);
}

.wg-category-filter__panel {
    display: grid;
    height: 100%;
    grid-template-rows: auto minmax(0, 1fr) auto;
    background: rgb(var(--wg-surface));
}

.wg-category-filter__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.15rem 1.25rem;
    border-bottom: 1px solid rgb(var(--wg-border));
}

.wg-category-filter__eyebrow {
    display: block;
    margin-bottom: 0.2rem;
    color: rgb(var(--wg-primary));
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.wg-category-filter__head h2 {
    font-size: 1.2rem;
    line-height: 1.25;
}

.wg-category-filter__close {
    display: inline-grid;
    width: 2.75rem;
    height: 2.75rem;
    flex: 0 0 2.75rem;
    place-items: center;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: rgb(var(--wg-on-surface));
    font-size: 1.35rem;
}

.wg-category-filter__close:hover,
.wg-category-filter__close:focus-visible {
    background: rgb(var(--wg-surface-alt));
}

.wg-category-filter__links {
    overflow-y: auto;
    padding: 0.65rem 0.75rem 1rem;
    overscroll-behavior: contain;
}

.wg-category-filter__link {
    display: flex;
    min-height: 2.9rem;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.65rem 0.8rem;
    border-left: 3px solid transparent;
    border-radius: 0.25rem;
    color: rgb(var(--wg-on-surface));
    font-size: 0.9rem;
    font-weight: 650;
    line-height: 1.35;
}

.wg-category-filter__link:hover,
.wg-category-filter__link:focus-visible {
    background: rgb(var(--wg-primary-soft) / 0.62);
    color: rgb(var(--wg-primary-dark));
}

.wg-category-filter__link.is-active,
.wg-category-filter__link[aria-current="page"] {
    border-left-color: rgb(var(--wg-primary));
    background: rgb(var(--wg-primary-soft));
    color: rgb(var(--wg-primary-dark));
}

.wg-category-filter__link--depth-1 {
    padding-left: 1.6rem;
    font-weight: 600;
}

.wg-category-filter__link--depth-2 {
    padding-left: 2.4rem;
    font-weight: 550;
}

.wg-category-filter__link--depth-3 {
    padding-left: 3.2rem;
    font-weight: 500;
}

.wg-category-filter__footer {
    padding: 0.85rem 1.25rem max(0.85rem, env(safe-area-inset-bottom));
    border-top: 1px solid rgb(var(--wg-border));
    background: rgb(var(--wg-surface));
}

body.wg-category-filter-open {
    overflow: hidden;
}

@keyframes wg-category-filter-enter {
    from {
        opacity: 0;
        transform: translateX(1.5rem);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@media (max-width: 767.98px) {
    .wg-category-filter__toolbar {
        display: block;
        padding: 0;
        border: 0;
        background: transparent;
        box-shadow: none;
    }

    .wg-category-filter__quick {
        display: none;
    }

    .wg-category-filter__trigger {
        width: 100%;
        min-height: 3.25rem;
        justify-content: flex-start;
        padding-inline: 1rem;
    }

    .wg-category-filter__trigger-copy {
        min-width: 0;
        flex: 1;
    }

    .wg-category-filter__trigger-copy small {
        max-width: 100%;
    }

    .wg-category-filter__dialog {
        width: min(32rem, 100%);
    }

    .wg-category-filter__head {
        padding-inline: 1rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .wg-category-filter__dialog[open] {
        animation: none;
    }
}

/* Image presentation system: natural detail media, bounded technical art, cropped cards. */
.wg-article-media {
    width: 100%;
    max-width: none;
    aspect-ratio: 5 / 3;
    max-height: none;
    margin-inline: 0 auto;
    overflow: hidden;
    border: 1px solid rgb(var(--wg-border));
    border-radius: var(--wg-radius);
    background: rgb(var(--wg-surface));
}

.wg-article-media__stage {
    display: flex;
    width: 100%;
    height: 100%;
    max-height: inherit;
    align-items: center;
    justify-content: flex-start;
    overflow: hidden;
    background: rgb(var(--wg-surface-alt) / 0.35);
}

.wg-article-media img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: 100%;
    max-height: none;
    object-fit: cover;
    object-position: center;
}

.wg-article-media:hover,
.wg-article-media:hover img {
    border-color: rgb(var(--wg-border) / 0.8);
    box-shadow: none;
    transform: none;
}

.wg-article-hero--offer.wg-article-media,
.wg-article-hero--offer .wg-article-media__stage,
.wg-article-hero--offer .wg-article-media__stage img {
    max-height: min(72vh, 36rem);
}

.wg-prose figure {
    max-width: 100%;
    margin-block: clamp(1.25rem, 3vw, 2rem);
    margin-inline: 0 auto;
}

.wg-prose img {
    display: block;
    width: auto;
    max-width: 100% !important;
    height: auto !important;
    margin-inline: 0 auto;
    object-fit: contain;
}

.wg-prose .wp-caption,
.wg-prose figure.image {
    max-width: 100%;
    margin-inline: 0 auto;
}

.wg-prose figcaption {
    margin-top: 0.55rem;
    color: rgb(var(--wg-muted));
    font-size: 0.78rem;
    line-height: 1.5;
    text-align: center;
}

.wg-prose img.alignleft,
.wg-prose img[align="left"],
.wg-prose .alignleft,
.wg-prose .half-left-image,
.wg-prose figure.image-style-align-left {
    float: left;
    max-width: 50%;
    margin: 0.35rem 1.35rem 1rem 0;
}

.wg-prose img.alignright,
.wg-prose img[align="right"],
.wg-prose .alignright,
.wg-prose .half-right-image,
.wg-prose figure.image-style-align-right {
    float: right;
    max-width: 50%;
    margin: 0.35rem 0 1rem 1.35rem;
}

.wg-prose img.aligncenter,
.wg-prose .aligncenter,
.wg-prose figure.image-style-align-center {
    float: none;
    margin-inline: auto;
}

.wg-prose::after {
    display: block;
    clear: both;
    content: "";
}

.wg-prose h2,
.wg-prose h3,
.wg-prose h4 {
    clear: both;
}

.wg-gallery-main--detail {
    display: grid;
    min-height: 0;
    max-height: min(72vh, 38rem);
    place-items: center;
    padding: clamp(0.5rem, 1.5vw, 1rem);
    background: rgb(var(--wg-surface-alt) / 0.35);
}

.wg-gallery-main--detail > img {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: min(72vh, 36rem);
    object-fit: contain;
}

.wg-cad-detail__media {
    min-height: 0;
}

.wg-cad-detail__media img {
    width: auto;
    max-width: 100%;
    max-height: min(70vh, 34rem);
}

.wg-specification-figure__image {
    max-height: min(70vh, 34rem);
}

/* Category tiles keep the contained-on-white treatment; the sidebar product
   tile follows Preporucamo instead (filled, softly rounded). */
.wg-category-tile__media img {
    object-fit: contain;
    padding: 0.2rem;
    background: #fff;
}

.wg-catalogue-card__media {
    display: grid;
    width: 100%;
    min-height: 15rem;
    max-height: 19rem;
    place-items: center;
    overflow: hidden;
    border-bottom: 1px solid rgb(var(--wg-border));
    background: #fff;
}

.wg-catalogue-card__media > img {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 19rem;
    padding: 0.65rem;
    object-fit: contain;
}

.wg-product-gallery__stage,
.wg-product-gallery__placeholder {
    min-height: 0;
    max-height: 27rem;
    aspect-ratio: 4 / 3;
}

.wg-product-gallery__stage > img {
    max-width: 100%;
    max-height: 27rem;
}

@media (max-width: 575.98px) {
    .wg-article-media,
    .wg-article-media__stage,
    .wg-article-media img {
        max-height: 24rem;
    }

    .wg-article-hero--offer.wg-article-media,
    .wg-article-hero--offer .wg-article-media__stage,
    .wg-article-hero--offer .wg-article-media__stage img {
        max-height: min(68vh, 28rem);
    }

    .wg-prose img.alignleft,
    .wg-prose img.alignright,
    .wg-prose img[align="left"],
    .wg-prose img[align="right"],
    .wg-prose .alignleft,
    .wg-prose .alignright,
    .wg-prose .half-left-image,
    .wg-prose .half-right-image,
    .wg-prose figure.image-style-align-left,
    .wg-prose figure.image-style-align-right {
        float: none;
        max-width: 100%;
        margin-inline: auto;
    }

    .wg-gallery-main--detail,
    .wg-gallery-main--detail > img,
    .wg-cad-detail__media img,
    .wg-specification-figure__image {
        max-height: min(68vh, 28rem);
    }

    .wg-catalogue-card__media,
    .wg-catalogue-card__media > img {
        min-height: 0;
        max-height: 17rem;
    }

    .wg-product-gallery__stage,
    .wg-product-gallery__placeholder,
    .wg-product-gallery__stage > img {
        min-height: 0;
        max-height: 21rem;
    }
}


/* Columned footer (Podnožje: group headings as columns). Extracted from the
   kit's published stylesheet, where these rules lived UNPUBLISHED — the
   module source never carried them, so the registry never shipped them. */
.wg-footer {
        margin-top: clamp(3rem, 7vw, 6rem);
        background: rgb(var(--wg-secondary));
        color: rgb(255 255 255 / 0.76);
    }

.wg-footer__cols {
        padding-block: clamp(3.5rem, 7vw, 5.5rem);
    }

.wg-footer .wg-logo,
    .wg-footer .wg-logo__text,
    .wg-footer h2 {
        color: #fff;
    }

.wg-footer__tagline {
        margin: 1.2rem 0 0.55rem;
        color: #fff;
        font-weight: 700;
    }

.wg-footer__about {
        max-width: 30rem;
        color: rgb(255 255 255 / 0.68);
        font-size: 0.88rem;
    }

.wg-footer__title {
        margin-bottom: 1rem;
        font-size: 0.8rem;
        letter-spacing: 0.08em;
        text-transform: uppercase;
    }

.wg-footer__links {
        display: grid;
        gap: 0.7rem;
        padding: 0;
        list-style: none;
    }

.wg-footer a:not(.btn) {
        color: rgb(255 255 255 / 0.72);
    }

.wg-footer a:not(.btn):hover {
        color: #fff;
    }

.wg-footer__mid {
        border-top: 1px solid rgb(255 255 255 / 0.1);
        border-bottom: 1px solid rgb(255 255 255 / 0.1);
    }

.wg-footer__meta {
        display: flex;
        min-height: 4.5rem;
        flex-wrap: wrap;
        align-items: center;
        gap: 1rem;
        font-size: 0.82rem;
    }

.wg-footer__social {
        display: flex;
        align-items: center;
        gap: 0.45rem;
        margin-right: auto;
    }

.wg-footer__bottom {
        padding-block: 1.25rem;
        color: rgb(255 255 255 / 0.55);
        font-size: 0.75rem;
    }

@media (max-width: 575.98px) {
    .wg-footer__meta {
            justify-content: center;
            text-align: center;
        }
    .wg-footer__social {
            width: 100%;
            justify-content: center;
            margin-right: 0;
        }
}

@media print {
    .wg-topbar,
        .wg-header,
        .wg-drawer,
        .wg-overlay,
        .wg-footer,
        .wg-consent,
        .wg-totop,
        .wg-sidebar,
        .wg-adslot,
        .wg-card__actions {
            display: none !important;
        }
}

/* Compact, useful footer */
.wg-footer {
    margin-top: clamp(2rem, 4vw, 3rem);
    background:
        radial-gradient(circle at 12% 15%, rgb(var(--wg-primary) / 0.24), transparent 26rem),
        rgb(var(--wg-secondary));
}

.wg-footer__cols {
    padding-block: clamp(2.75rem, 5vw, 4rem);
}

.wg-footer__grid {
    display: grid;
    grid-template-columns: minmax(20rem, 1.4fr) repeat(auto-fit, minmax(12rem, 0.7fr));
    gap: clamp(2rem, 5vw, 5rem);
    align-items: start;
}

.wg-footer__brand-column {
    max-width: 35rem;
}

.wg-footer__brand {
    width: fit-content;
}

.wg-footer .wg-logo__fallback {
    color: #fff;
}

.wg-footer__tagline {
    margin-top: 1rem;
}

.wg-footer__about {
    margin-bottom: 0;
    line-height: 1.65;
}

.wg-footer__newsletter {
    margin-top: 1.15rem;
    border-color: rgb(255 255 255 / 0.16);
    background: rgb(255 255 255 / 0.11);
    color: #fff;
}

.wg-footer__newsletter:hover {
    border-color: rgb(var(--wg-primary));
    background: rgb(var(--wg-primary));
    color: #fff;
}

.wg-footer__menu {
    min-width: 0;
}

.wg-footer__links {
    gap: 0.35rem;
}

.wg-footer__link {
    display: inline-flex;
    padding-block: 0.2rem;
    line-height: 1.45;
    transition: color 0.18s ease, transform 0.18s ease;
}

.wg-footer__link:hover {
    transform: translateX(3px);
}

.wg-footer__meta {
    min-height: 4rem;
}

.wg-footer__bottom {
    padding-block: 1rem;
}

@media (max-width: 991.98px) {
    .wg-footer__grid {
        grid-template-columns: minmax(0, 1.25fr) minmax(12rem, 0.75fr);
        gap: 2.5rem;
    }
}

@media (max-width: 767.98px) {
    .wg-footer__grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
    .wg-footer__brand-column {
        max-width: none;
    }
}

/* Unified page heading: detail pages (articles, CAD, specifications,
   micropages, products) share the same wg-page-head band as the listing
   pages — the editorial header rides inside it instead of sitting bare on
   the surface. */
.wg-page-head--detail .wg-breadcrumbs {
    margin-bottom: 0.35rem;
}

.wg-page-head--detail .wg-article-header {
    padding-block: 0.15rem 1.1rem;
}

.wg-page-head--detail .wg-page-head__copy {
    padding-block: 0.15rem 1.1rem;
}

.wg-page-head--detail .wg-article-header__title,
.wg-page-head--detail .wg-h1 {
    max-width: 56rem;
}

/* Consent/remember checkboxes (kontakt & upit forms, newsletter consent):
   a comfortable touch row per checkbox — box centred on the label's first
   line, quiet primary focus ring instead of MDB's blob, an even rhythm
   between consecutive rows. */
.form-check {
    align-items: flex-start;
    gap: 0.7rem;
    /* MDB reserves 1.5em for its floated box; the flex layout does not use
       it, so without this reset the whole row looks pushed right. */
    padding-left: 0;
    padding-block: 0.1rem;
}

.form-check .form-check-input {
    width: 1.15rem;
    height: 1.15rem;
    margin: calc((1.5em - 1.15rem) / 2) 0 0;
    accent-color: rgb(var(--wg-primary));
}

.form-check .form-check-input:focus,
.form-check .form-check-input:focus-visible {
    outline: none;
    box-shadow: 0 0 0 3px rgb(var(--wg-primary) / 0.18);
}

.form-check .form-check-label {
    color: rgb(var(--wg-muted));
}

.form-check .form-check-label a {
    color: rgb(var(--wg-primary));
}

/* Consecutive consent rows keep the form's natural g-3 rhythm — flush
   left with the fields, breathing room between the two lines. */

/* ------------------------------------------------- specials (landing) chrome
   The legacy site served specials on a standalone layout: one slim navbar
   and a dark footer, nothing else. */
.wg-landing-topbar {
    border-bottom: 1px solid rgb(var(--wg-border));
    background: rgb(var(--wg-surface));
}

.wg-landing-topbar__inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem 1.5rem;
    padding-block: 0.85rem;
}

.wg-landing-topbar__brand img {
    display: block;
    width: auto;
    max-height: 2.25rem;
}

.wg-landing-topbar__name {
    font-size: 1.25rem;
    font-weight: 750;
}

.wg-landing-topbar__nav {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem 1.35rem;
}

.wg-landing-topbar__nav a {
    color: rgb(var(--wg-on-surface));
    font-size: 0.9375rem;
    font-weight: 650;
    text-decoration: none;
}

.wg-landing-topbar__nav a:hover,
.wg-landing-topbar__nav a:focus-visible {
    color: rgb(var(--wg-action));
}

.wg-landing-footer {
    margin-top: 3rem;
    padding-block: 2.25rem;
    background: #1e1e24;
    color: rgb(255 255 255 / 0.72);
}

.wg-landing-footer__brand img {
    display: block;
    width: auto;
    max-height: 1.875rem;
    margin-bottom: 1rem;
}

.wg-landing-footer__links {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1.5rem;
    margin-bottom: 1rem;
}

.wg-landing-footer__links a {
    color: rgb(255 255 255 / 0.72);
    font-size: 0.875rem;
    text-decoration: none;
}

.wg-landing-footer__links a:hover,
.wg-landing-footer__links a:focus-visible {
    color: #fff;
}

.wg-landing-footer__copyright {
    margin: 0;
    color: rgb(255 255 255 / 0.45);
    font-size: 0.8125rem;
}

/* Landing hero: full-bleed 65vh cover with the copy centred near the bottom,
   like the legacy banner-center. The transparent topbar floats above it. */
.wg-hero--landing {
    min-height: 65vh;
    border-radius: 0;
}

.wg-hero--landing > img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.wg-hero__overlay--landing {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    padding-bottom: clamp(2.5rem, 8vh, 5.5rem);
    background: linear-gradient(rgb(8 22 31 / 0.45), rgb(8 22 31 / 0.1) 35%, rgb(8 22 31 / 0.55));
    text-align: center;
}

.wg-hero__overlay--landing .wg-h1 a {
    color: inherit;
    text-decoration: none;
}

.wg-landing-topbar--overlay {
    position: absolute;
    z-index: 30;
    top: 0;
    right: 0;
    left: 0;
    border-bottom: 0;
    background: transparent;
}

.wg-landing-topbar--overlay .wg-landing-topbar__nav a,
.wg-landing-topbar--overlay .wg-landing-topbar__name {
    color: #fff;
    text-shadow: 0 1px 8px rgb(8 22 31 / 0.5);
}

.wg-landing-topbar--overlay .wg-landing-topbar__nav a:hover,
.wg-landing-topbar--overlay .wg-landing-topbar__nav a:focus-visible {
    color: rgb(var(--wg-primary-soft, 224 245 249));
}

.wg-landing-topbar--overlay .wg-landing-topbar__brand img {
    filter: drop-shadow(0 1px 6px rgb(8 22 31 / 0.55));
}

/* Landing text blocks: the legacy narrow centred column. */
.wg-landing-intro {
    max-width: 46rem;
    margin-inline: auto;
    text-align: center;
}

.wg-landing-sponsored-by {
    font-size: 1.05rem;
    text-align: right;
}

/* Landing sections: a tinted full-bleed band, whole-card links. */
.wg-landing-band {
    padding-block: 2.75rem 1.25rem;
    border-block: 1px solid rgb(var(--wg-border));
    background: rgb(var(--wg-surface-alt) / 0.55);
}

.wg-landing-section .wg-card__title {
    font-size: 1.25rem;
    line-height: 1.3;
}

.wg-landing-section {
    position: relative;
    height: calc(100% - 1.5rem);
    overflow: hidden;
    box-shadow: var(--wg-shadow-sm);
}

.wg-landing-section__link {
    position: absolute;
    z-index: 1;
    inset: 0;
}

.wg-landing-section__excerpt {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.wg-landing-section__more {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    margin-top: 0.85rem;
    color: rgb(var(--wg-action));
    font-size: 0.9375rem;
    font-weight: 650;
}

/* Horizontalno: image and body side by side, the image side alternating
   card by card, like the legacy two-column template. The legacy card keeps
   the product render UNCROPPED on its own raised white tile that floats a
   step above the card; the "+ Vise" cue sits on the far side of the image. */
.wg-landing-section--horizontal {
    display: grid;
    overflow: visible;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
    align-items: stretch;
    justify-items: stretch;
}

.wg-landing-section--horizontal .wg-landing-section__media,
.wg-landing-section--horizontal .wg-landing-section__body {
    width: 100%;
    min-width: 0;
    justify-self: stretch;
}

.wg-landing-section--horizontal .wg-landing-section__media {
    display: grid;
    min-height: 18rem;
    place-items: center;
    padding: 1rem;
    border-radius: var(--wg-radius-sm);
    margin: -0.85rem 0 0.85rem -0.85rem;
    background: #fff;
    box-shadow: var(--wg-shadow-md, 0 10px 28px rgb(15 34 52 / 0.14));
}

.wg-landing-section--flip.wg-landing-section--horizontal .wg-landing-section__media {
    margin: -0.85rem -0.85rem 0.85rem 0;
}

.wg-landing-section--horizontal .wg-landing-section__media img {
    width: 100%;
    height: 100%;
    max-height: 16rem;
    object-fit: contain;
}

.wg-landing-section--horizontal .wg-landing-section__body {
    display: flex;
    min-height: 18.125rem;
    flex-direction: column;
    padding-bottom: 2.9rem;
}

.wg-landing-section--horizontal .wg-landing-section__excerpt {
    -webkit-line-clamp: 6;
}

.wg-landing-section--horizontal .wg-landing-section__more {
    position: absolute;
    right: 1.5rem;
    bottom: 1rem;
    margin-top: 0;
}

.wg-landing-section--flip .wg-landing-section__media {
    order: 2;
}

/* Mirror the track ratio when the image moves right, so the body keeps
   the wider column on both variants. */
.wg-landing-section--flip.wg-landing-section--horizontal {
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
}

.wg-landing-section--flip .wg-landing-section__more {
    right: auto;
    left: 1.5rem;
}

/* Vertikalno: every card aligns - fixed image ratio, two-line title zone,
   clamped excerpt, the "+ Vise" cue pinned to the same bottom corner. */
.wg-landing-sections--vertikalno .wg-landing-section__media {
    width: 100%;
    aspect-ratio: 16 / 10;
}

.wg-landing-sections--vertikalno .wg-landing-section__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.wg-landing-sections--vertikalno .wg-landing-section__body {
    display: flex;
    flex-direction: column;
    padding-bottom: 3rem;
}

.wg-landing-sections--vertikalno .wg-card__title {
    display: -webkit-box;
    overflow: hidden;
    min-height: 2.5em;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.wg-landing-sections--vertikalno .wg-landing-section__more {
    position: absolute;
    right: 1.5rem;
    bottom: 1rem;
    margin-top: 0;
}

@media (max-width: 767.98px) {
    .wg-landing-section--horizontal {
        grid-template-columns: minmax(0, 1fr);
    }

    .wg-landing-section--horizontal .wg-landing-section__media,
    .wg-landing-section--flip.wg-landing-section--horizontal .wg-landing-section__media {
        min-height: 0;
        margin: 0;
        box-shadow: none;
    }

    .wg-landing-section--flip .wg-landing-section__media {
        order: 0;
    }

    .wg-hero--landing {
        min-height: 55vh;
    }
}

/* ------------------------------------------------------------- "Top teme"
   The legacy end-of-page strip: four slider slides above the footer. */
.wg-top-news {
    padding-block: 2rem 1rem;
    border-top: 1px solid rgb(var(--wg-border));
    margin-top: 2.5rem;
}

.wg-top-news__list {
    display: grid;
    gap: 1.25rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.wg-top-news__item {
    overflow: hidden;
    border: 1px solid rgb(var(--wg-border));
    border-radius: var(--wg-radius-sm);
    background: rgb(var(--wg-surface));
    box-shadow: var(--wg-shadow-sm);
}

.wg-top-news__media {
    position: relative;
    display: block;
    aspect-ratio: 16 / 9;
    background: rgb(var(--wg-surface-alt));
}

.wg-top-news__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.wg-top-news__badge {
    position: absolute;
    bottom: 0.6rem;
    left: 0.6rem;
    padding: 0.2rem 0.65rem;
    border-radius: 0.35rem;
    background: rgb(var(--wg-action));
    color: #fff;
    font-size: 0.6875rem;
    font-weight: 750;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.wg-top-news__title {
    margin: 0;
    padding: 0.85rem 1rem 1rem;
    font-size: 0.9375rem;
    font-weight: 650;
    line-height: 1.4;
}

.wg-top-news__title a {
    color: rgb(var(--wg-on-surface));
    text-decoration: none;
}

.wg-top-news__title a:hover,
.wg-top-news__title a:focus-visible {
    color: rgb(var(--wg-action));
}

@media (max-width: 991.98px) {
    .wg-top-news__list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .wg-top-news__list {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* --------------------------------------------------- company card polish
   The shared attribution card (posts, products, search, rails): calmer
   head with a framed logo tile, a hover affordance arrow, and a footer
   that always offers the profile. */
.wg-company-card {
    transition: box-shadow 0.18s ease, transform 0.18s ease;
}

.wg-company-card:hover {
    transform: translateY(-2px);
    box-shadow: var(--wg-shadow-md, 0 10px 28px rgb(15 34 52 / 0.12));
}

.wg-company-card__head {
    text-decoration: none;
}

.wg-company-card__head:hover .wg-card__title,
.wg-company-card__head:focus-visible .wg-card__title {
    color: rgb(var(--wg-action));
}

.wg-company-card__avatar {
    width: 4rem;
    height: 4rem;
    flex: 0 0 4rem;
    box-shadow: inset 0 0 0 1px rgb(var(--wg-border));
}

.wg-company-card__go {
    display: inline-grid;
    width: 2rem;
    height: 2rem;
    flex: 0 0 2rem;
    place-items: center;
    margin-left: auto;
    border-radius: 50%;
    background: rgb(var(--wg-action-soft, 224 245 249));
    color: rgb(var(--wg-action));
    opacity: 0;
    transform: translateX(-4px);
    transition: opacity 0.18s ease, transform 0.18s ease;
}

.wg-company-card:hover .wg-company-card__go,
.wg-company-card__head:focus-visible .wg-company-card__go {
    opacity: 1;
    transform: translateX(0);
}

.wg-company-card .wg-chips .badge-light {
    border: 1px solid rgb(var(--wg-border));
    background: rgb(var(--wg-surface-alt) / 0.6);
    color: rgb(var(--wg-muted));
}

.wg-company-card .wg-chips .badge-light:hover {
    border-color: rgb(var(--wg-action) / 0.4);
    color: rgb(var(--wg-action));
}

.wg-company-card__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    /* One line, always: the website truncates rather than pushing the
       profile link onto a second row in a narrow rail card. */
    flex-wrap: nowrap;
    gap: 0.6rem;
    min-width: 0;
}

.wg-company-card__footer .wg-company-card__site {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.wg-company-card__footer .wg-company-card__site {
    color: rgb(var(--wg-muted));
    font-size: 0.8125rem;
}

.wg-company-card__footer .wg-company-card__site:hover {
    color: rgb(var(--wg-action));
}

.wg-company-card__profile {
    margin-left: auto;
    color: rgb(var(--wg-action));
    font-size: 0.875rem;
    font-weight: 650;
    text-decoration: none;
    white-space: nowrap;
}

.wg-company-card__profile:hover,
.wg-company-card__profile:focus-visible {
    text-decoration: underline;
}

.wg-company-card--rail .wg-company-card__go {
    display: none;
}

/* Company card tab strip - the legacy card's nav, in the theme's clothes. */
.wg-company-card__tabs {
    display: flex;
    overflow-x: auto;
    flex-wrap: nowrap;
    padding: 0 0.35rem;
    border-bottom: 1px solid rgb(var(--wg-border));
    background: rgb(var(--wg-surface-alt) / 0.5);
    border-radius: var(--wg-radius) var(--wg-radius) 0 0;
    scrollbar-width: none;
}

.wg-company-card__tabs::-webkit-scrollbar {
    display: none;
}

.wg-company-card__tab {
    padding: 0.7rem 0.85rem;
    border-bottom: 2px solid transparent;
    margin-bottom: -1px;
    color: rgb(var(--wg-muted));
    font-size: 0.8125rem;
    font-weight: 700;
    letter-spacing: 0.03em;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
}

.wg-company-card__tab:hover,
.wg-company-card__tab:focus-visible {
    color: rgb(var(--wg-action));
}

.wg-company-card__tab.is-active {
    border-bottom-color: rgb(var(--wg-action));
    color: rgb(var(--wg-action));
}

/* Fax sits on the phone lines' grid: icon column, label, value. */
.wg-contact-fax__label::after {
    content: ":";
}

.wg-contact-fax__value {
    min-width: 0;
}

/* ------------------------------------------------------- company map popups */
.wg-map__canvas {
    min-height: 22.5rem;
    border-radius: var(--wg-radius-sm);
}

.wg-map-popup {
    display: grid;
    gap: 0.3rem;
    font-size: 0.875rem;
    line-height: 1.4;
}

.wg-map-popup__title {
    font-size: 0.9375rem;
}

.wg-map-popup__kind {
    padding: 0.1rem 0.4rem;
    border-radius: 999px;
    background: rgb(var(--wg-action-soft, 224 245 249));
    color: rgb(var(--wg-action));
    font-size: 0.6875rem;
    font-weight: 700;
    text-transform: uppercase;
}

.wg-map-popup__address {
    color: rgb(var(--wg-muted));
}

.wg-map-popup__row {
    color: rgb(var(--wg-on-surface));
    text-decoration: none;
}

a.wg-map-popup__row:hover {
    color: rgb(var(--wg-action));
    text-decoration: underline;
}

.wg-map__locations {
    max-height: 8.5rem;
    overflow-y: auto;
}

/* ------------------------------------------------------------ store locator
   The list and the map are one instrument: picking a row flies the map,
   clicking a pin scrolls the row into view. */
.wg-locator {
    display: grid;
    overflow: hidden;
    grid-template-columns: minmax(16rem, 21rem) minmax(0, 1fr);
    border: 1px solid rgb(var(--wg-border));
    border-radius: var(--wg-radius);
    background: rgb(var(--wg-surface));
    box-shadow: var(--wg-shadow-sm);
}

.wg-locator__panel {
    display: flex;
    min-width: 0;
    flex-direction: column;
    border-right: 1px solid rgb(var(--wg-border));
    background: rgb(var(--wg-surface-alt) / 0.45);
}

.wg-locator__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    padding: 0.75rem 0.9rem;
    border-bottom: 1px solid rgb(var(--wg-border));
}

.wg-locator__count {
    color: rgb(var(--wg-muted));
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.wg-locator__all {
    padding: 0.25rem 0.6rem;
    border: 1px solid rgb(var(--wg-action) / 0.35);
    border-radius: 999px;
    background: transparent;
    color: rgb(var(--wg-action));
    font-size: 0.75rem;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.18s ease, transform 0.18s ease;
}

.wg-locator__all:hover {
    background: rgb(var(--wg-action-soft, 224 245 249));
    transform: translateY(-1px);
}

.wg-locator__list {
    max-height: 28rem;
    overflow-y: auto;
    padding: 0.4rem;
    margin: 0;
    list-style: none;
    scrollbar-width: thin;
}

.wg-locator__item {
    display: flex;
    width: 100%;
    align-items: flex-start;
    gap: 0.65rem;
    padding: 0.6rem;
    border: 1px solid transparent;
    border-radius: var(--wg-radius-sm);
    background: transparent;
    text-align: left;
    cursor: pointer;
    transition: background 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
}

.wg-locator__item:hover {
    border-color: rgb(var(--wg-border));
    background: rgb(var(--wg-surface));
    transform: translateX(2px);
}

.wg-locator__item.is-active {
    border-color: rgb(var(--wg-action) / 0.45);
    background: rgb(var(--wg-surface));
    box-shadow: 0 4px 14px rgb(15 34 52 / 0.08);
}

.wg-locator__index {
    display: grid;
    width: 1.65rem;
    height: 1.65rem;
    flex: 0 0 1.65rem;
    place-items: center;
    border-radius: 50%;
    background: rgb(var(--wg-surface-alt));
    color: rgb(var(--wg-muted));
    font-size: 0.75rem;
    font-weight: 800;
    transition: background 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.wg-locator__item.is-active .wg-locator__index {
    background: rgb(var(--wg-action));
    color: #fff;
    transform: scale(1.08);
}

.wg-locator__body {
    display: grid;
    min-width: 0;
    gap: 0.1rem;
}

.wg-locator__title {
    font-size: 0.9rem;
    font-weight: 700;
}

.wg-locator__badge {
    padding: 0.05rem 0.4rem;
    border-radius: 999px;
    background: rgb(var(--wg-action-soft, 224 245 249));
    color: rgb(var(--wg-action));
    font-size: 0.625rem;
    font-weight: 700;
    text-transform: uppercase;
}

.wg-locator__line {
    font-size: 0.8125rem;
    line-height: 1.35;
}

.wg-locator__phone {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    color: rgb(var(--wg-action));
    font-weight: 650;
}

.wg-locator__map {
    min-height: 26rem;
}

.wg-locator .wg-map__canvas {
    height: 100%;
    min-height: 26rem;
    border-radius: 0;
}

/* Numbered pins: they drop in one after another, lift on hover, and the
   chosen one keeps a soft pulse so it stays findable. */
.wg-pin {
    position: relative;
    display: grid;
    width: 1.85rem;
    height: 1.85rem;
    place-items: center;
    border: 2px solid #fff;
    border-radius: 50% 50% 50% 6px;
    background: rgb(var(--wg-secondary, 18 40 58));
    box-shadow: 0 6px 14px rgb(15 34 52 / 0.35);
    color: #fff;
    font-size: 0.75rem;
    font-weight: 800;
    transform: rotate(-45deg) translateY(-6px) scale(0.6);
    opacity: 0;
    animation: wg-pin-drop 0.45s cubic-bezier(0.2, 1.1, 0.35, 1) forwards;
    transition: box-shadow 0.2s ease;
}

.wg-pin--primary {
    background: rgb(var(--wg-action));
}

.wg-pin__label {
    transform: rotate(45deg);
}

.wg-pin__pulse {
    position: absolute;
    inset: -0.35rem;
    border: 2px solid rgb(var(--wg-action));
    border-radius: 50%;
    opacity: 0;
    /* Decoration only - the ring must never swallow a click meant for the pin. */
    pointer-events: none;
}

.wg-pin-wrap:hover .wg-pin {
    box-shadow: 0 10px 20px rgb(15 34 52 / 0.45);
}

.wg-pin-wrap.is-active .wg-pin {
    background: rgb(var(--wg-action));
    z-index: 2;
}

.wg-pin-wrap.is-active .wg-pin__pulse {
    animation: wg-pin-pulse 1.8s ease-out infinite;
}

@keyframes wg-pin-drop {
    from { transform: rotate(-45deg) translateY(-14px) scale(0.5); opacity: 0; }
    to { transform: rotate(-45deg) translateY(0) scale(1); opacity: 1; }
}

@keyframes wg-pin-pulse {
    0% { opacity: 0.55; transform: scale(0.75); }
    70% { opacity: 0; transform: scale(1.5); }
    100% { opacity: 0; transform: scale(1.5); }
}

@media (prefers-reduced-motion: reduce) {
    .wg-pin { animation: none; opacity: 1; transform: rotate(-45deg); }
    .wg-pin-wrap.is-active .wg-pin__pulse { animation: none; }
    .wg-locator__item { transition: none; }
}

@media (max-width: 991.98px) {
    .wg-locator {
        grid-template-columns: minmax(0, 1fr);
    }

    .wg-locator__panel {
        order: 2;
        border-right: 0;
        border-top: 1px solid rgb(var(--wg-border));
    }

    .wg-locator__list {
        max-height: 17rem;
    }

    .wg-locator__map,
    .wg-locator .wg-map__canvas {
        min-height: 20rem;
    }
}
