/* Visual refresh overrides — loaded AFTER style.css, only adds/overrides the
   selectors listed below. Nothing in style.css is modified by this file. */

:root {
    --ink: #0e1116;
    --coal: #1a1f2b;
    --ash: #f3f0ea;
    --rust: #c36b2c;
    --gold: #f2c464;
    --steel: #3b4a5a;
    --panel: #ffffff;
    --shadow: 0 25px 50px rgba(13, 18, 28, 0.18);
    --radius: 22px;
}

body {
    font-family: "Space Grotesk", sans-serif;
    color: var(--ink);
    background: radial-gradient(circle at 20% 20%, #f6efe3 0, #f1e8dc 35%, #e9edf1 100%);
}

.site-wrap {
    background: transparent;
}

.page-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--ash);
    color: var(--coal);
    padding: 6px 14px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 12px;
}

.locos-title {
    font-family: "Source Serif 4", serif;
    font-size: clamp(28px, 3.5vw, 40px);
    font-weight: 700;
    color: var(--ink);
}

.technical-data-header {
    font-family: "Source Serif 4", serif;
    color: var(--rust);
    font-size: 20px;
    margin-bottom: 14px;
}

.technical-data-title {
    color: var(--rust);
    font-weight: 600;
}

.card-panel {
    background: var(--panel);
    border-radius: var(--radius);
    padding: 24px;
    box-shadow: var(--shadow);
    border: 1px solid rgba(26, 31, 43, 0.08);
    margin-bottom: 20px;
}

.table-responsive {
    background: var(--panel);
    border-radius: var(--radius);
    padding: 20px 24px;
    box-shadow: var(--shadow);
    border: 1px solid rgba(26, 31, 43, 0.08);
}

.table-responsive .table {
    margin-bottom: 0;
}

.table-responsive .table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(195, 107, 44, 0.05);
}

.locos-gallery {
    padding: 0;
    background: none;
    border: none;
    border-radius: var(--radius);
    overflow: hidden;
    box-shadow: var(--shadow);
    transition: transform 0.25s ease;
}

.locos-gallery:hover {
    transform: translateY(-4px);
}

.locos-gallery>a {
    position: relative;
    display: block;
}

.locos-gallery img {
    display: block;
    width: 100%;
}

.locos-gallery .locos-gallery-text {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to top, rgba(14, 17, 22, 0.88), transparent);
    color: #fff;
    text-align: right;
    padding: 34px 20px 14px;
    font-weight: 600;
    font-size: 20px;
}

.locos-gallery-text-only {
    background: linear-gradient(90deg, rgba(195, 107, 44, 0.55) 0%, var(--steel) 85%);
    border: none;
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    padding: 0;
    overflow: hidden;
    transition: transform 0.25s ease;
}

.locos-gallery-text-only:hover {
    transform: translateY(-4px);
}

.locos-gallery-text-only a {
    display: block;
}

.locos-gallery-text-only .locos-gallery-text {
    color: var(--gold);
    text-align: center;
    padding: 18px 20px;
    font-weight: 600;
    font-size: 18px;
}

.locos-gallery-group {
    border-radius: var(--radius);
    overflow: hidden;
    box-shadow: var(--shadow);
    background: var(--steel);
    transition: transform 0.25s ease;
}

.locos-gallery-group:hover {
    transform: translateY(-4px);
}

.locos-gallery-group .locos-gallery,
.locos-gallery-group .locos-gallery-text-only {
    border-radius: 0;
    box-shadow: none;
    background: none;
    transition: none;
}

.locos-gallery-group .locos-gallery:hover,
.locos-gallery-group .locos-gallery-text-only:hover {
    transform: none;
}

.locos-gallery-group .locos-gallery-text-only {
    background: linear-gradient(90deg, rgba(195, 107, 44, 0.4) 0%, transparent 85%);
    border-top: 1px solid rgba(242, 196, 100, 0.18);
}

.sidebar-locos {
    background-color: var(--coal);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    padding: 22px;
}

.sidebar-locos .sidebar-locos-title {
    border-top: none;
    border-bottom: 1px solid rgba(242, 196, 100, 0.35);
    color: var(--gold);
    font-family: "Source Serif 4", serif;
    font-weight: 700;
}

.sidebar-locos .sidebar-locos-title a {
    color: var(--gold);
}

.sidebar-locos .sidebar-locos-item-content a {
    color: #fff;
}

.sidebar-locos .sidebar-locos-item-content a:hover {
    color: var(--gold);
}

.sidebar-locos .sidebar-locos-item-image {
    border: 2px solid rgba(242, 196, 100, 0.4);
    border-radius: 8px;
    overflow: hidden;
    display: inline-block;
}

.cookiealert {
    background: linear-gradient(90deg, var(--coal) 0%, var(--steel) 100%);
    color: var(--ash);
    font-family: "Space Grotesk", sans-serif;
    border: 1px solid rgba(242, 196, 100, 0.25);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    padding: 20px 26px;
    left: 50%;
    bottom: 20px;
    width: calc(100% - 40px);
    max-width: 640px;
    transform: translate(-50%, 150%);
}

.cookiealert.show {
    transform: translate(-50%, 0);
}

.cookiealert b {
    color: var(--gold);
    font-family: "Source Serif 4", serif;
    font-size: 18px;
    font-weight: 600;
}

.cookiealert a {
    color: var(--gold);
    text-decoration: underline;
}

.cookiealert .acceptcookies {
    display: inline-block;
    margin: 14px 0 0;
    background: var(--gold);
    color: var(--coal);
    border: none;
    border-radius: 999px;
    padding: 8px 24px;
    font-weight: 600;
    transition: transform 0.2s ease;
}

.cookiealert .acceptcookies:hover {
    transform: translateY(-2px);
    color: var(--coal);
}
