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

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    background: var(--rehberim-background);
    color: var(--rehberim-text);
    font-family: Arial, Helvetica, sans-serif;
    font-size: 16px;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
}

body.admin-bar .site-header {
    top: 32px;
}

img {
    max-width: 100%;
    height: auto;
}

a {
    color: var(--rehberim-primary);
    text-decoration: none;
}

a:hover,
a:focus {
    color: var(--rehberim-primary-dark);
}

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

button,
.button {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--rehberim-primary);
    border-radius: 7px;
    background: var(--rehberim-primary);
    color: var(--rehberim-contrast-text);
    padding: 9px 18px;
    font-weight: 700;
    cursor: pointer;
    transition: background-color .2s ease, border-color .2s ease, color .2s ease, transform .2s ease;
}

button:hover,
button:focus,
.button:hover,
.button:focus {
    background: var(--rehberim-primary-dark);
    border-color: var(--rehberim-primary-dark);
    color: var(--rehberim-contrast-text);
    transform: translateY(-1px);
}

.button-small {
    min-height: 34px;
    padding: 6px 13px;
    font-size: 13px;
}

.button-outline {
    background: transparent;
    color: var(--rehberim-primary);
}

.button-outline:hover,
.button-outline:focus {
    background: var(--rehberim-primary);
    color: var(--rehberim-contrast-text);
}

.button-premium {
    border-color: var(--rehberim-secondary);
    background: var(--rehberim-secondary);
    color: var(--rehberim-text);
}

.site-shell {
    width: min(1440px, calc(100% - 40px));
    margin-inline: auto;
}

.screen-reader-text {
    position: absolute !important;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.screen-reader-text:focus,
.skip-link:focus {
    top: 10px;
    left: 10px;
    z-index: 100000;
    width: auto;
    height: auto;
    clip: auto;
    padding: 10px 14px;
    background: var(--rehberim-input-surface);
    color: var(--rehberim-text);
}

.site-header {
    position: relative;
    z-index: 50;
    background: var(--rehberim-header);
    border-bottom: 1px solid var(--rehberim-border);
}

.topbar {
    border-bottom: 1px solid var(--rehberim-border);
    background: var(--rehberim-surface);
    font-size: 13px;
}

.topbar-inner,
.topbar-contact,
.topbar-account {
    display: flex;
    align-items: center;
}

.topbar-inner {
    min-height: 38px;
    justify-content: space-between;
    gap: 20px;
}

.topbar-contact,
.topbar-account {
    gap: 18px;
}

.topbar a,
.topbar span {
    color: var(--rehberim-muted);
}

.topbar-cta {
    border-radius: 6px;
    background: var(--rehberim-success);
    color: var(--rehberim-contrast-text) !important;
    padding: 6px 12px;
    font-weight: 700;
}

.main-header {
    background: var(--rehberim-header);
}

.header-inner {
    min-height: 112px;
    display: grid;
    grid-template-columns: minmax(210px, 320px) minmax(0, 728px);
    align-items: center;
    justify-content: space-between;
    gap: 36px;
}

.site-branding .custom-logo-link,
.text-logo {
    display: inline-flex;
    flex-direction: column;
    color: var(--rehberim-text);
}

.custom-logo {
    max-height: 64px;
    width: auto;
}

.text-logo strong {
    font-size: 24px;
    line-height: 1.15;
    letter-spacing: .02em;
}

.text-logo span {
    color: var(--rehberim-muted);
    font-size: 12px;
}

.header-ad-slot {
    width: min(100%, 728px);
    justify-self: end;
}

.header-ad-slot .header-ad-728 {
    width: 100%;
    min-height: 90px;
    aspect-ratio: 728 / 90;
    border-style: solid;
    border-radius: 8px;
    overflow: hidden;
    padding: 0;
}

.header-ad-slot .header-ad-728 > span {
    display: flex;
    width: 100%;
    height: 100%;
    min-height: 90px;
    align-items: center;
    justify-content: center;
}

.header-ad-slot .header-ad-728 iframe,
.header-ad-slot .header-ad-728 img,
.header-ad-slot .header-ad-728 ins {
    display: block;
    max-width: 100%;
    max-height: 90px;
    margin: 0 auto;
}

.header-search {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    border: 1px solid var(--rehberim-border);
    border-radius: 9px;
    overflow: hidden;
    background: var(--rehberim-surface);
}

.header-search input {
    min-width: 0;
    height: 48px;
    border: 0;
    outline: 0;
    padding: 0 16px;
    color: var(--rehberim-text);
    background: transparent;
}

.header-search button {
    border-radius: 0;
    min-width: 100px;
}

.primary-navigation {
    background: var(--rehberim-nav);
}

.nav-inner {
    min-height: 50px;
    display: flex;
    align-items: center;
}

.primary-menu,
.primary-menu ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.primary-menu {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 2px;
}

.primary-menu li {
    position: relative;
}

.primary-menu a {
    display: flex;
    min-height: 50px;
    align-items: center;
    padding: 0 17px;
    color: var(--rehberim-nav-text);
    font-size: 14px;
    font-weight: 700;
}

.primary-menu a:hover,
.primary-menu a:focus,
.primary-menu .current-menu-item > a {
    background: color-mix(in srgb, var(--rehberim-contrast-text) 12%, transparent);
    color: var(--rehberim-nav-text);
}

.primary-menu .sub-menu {
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 220px;
    background: var(--rehberim-surface);
    border: 1px solid var(--rehberim-border);
    box-shadow: 0 14px 30px color-mix(in srgb, var(--rehberim-shadow) 14%, transparent);
    visibility: hidden;
    opacity: 0;
}

.primary-menu li:hover > .sub-menu,
.primary-menu li:focus-within > .sub-menu {
    visibility: visible;
    opacity: 1;
}

.primary-menu .sub-menu a {
    min-height: 42px;
    color: var(--rehberim-text);
}

.menu-toggle {
    display: none;
    min-height: 38px;
    margin: 6px 0;
    border-color: color-mix(in srgb, var(--rehberim-contrast-text) 55%, transparent);
    background: transparent;
}

.home-main {
    padding-bottom: 0;
}

.home-ad-top,
.home-ad-bottom,
.section-ad-horizontal {
    padding-top: 20px;
}

.rehberim-ad {
    min-height: 96px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border: 1px dashed var(--rehberim-border);
    border-radius: 8px;
    background: var(--rehberim-ad-surface);
    color: var(--rehberim-ad-text);
    text-align: center;
}

.rehberim-ad iframe,
.rehberim-ad img,
.rehberim-ad ins {
    max-width: 100%;
}

.home-hero {
    padding: 18px 0 0;
}

.hero-panel {
    position: relative;
    isolation: isolate;
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr);
    min-height: 390px;
    overflow: hidden;
    border: 1px solid var(--rehberim-border);
    border-radius: 12px;
    background: linear-gradient(120deg, var(--rehberim-hero-start) 0%, var(--rehberim-hero-end) 100%);
}

.hero-panel.has-hero-background {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

.hero-panel.has-hero-background::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background: linear-gradient(
        90deg,
        color-mix(in srgb, var(--rehberim-surface) 98%, transparent) 0%,
        color-mix(in srgb, var(--rehberim-surface) 95%, transparent) 42%,
        color-mix(in srgb, var(--rehberim-surface) 62%, transparent) 62%,
        color-mix(in srgb, var(--rehberim-surface) 12%, transparent) 82%,
        transparent 100%
    );
}

.hero-panel.has-hero-background > * {
    position: relative;
    z-index: 1;
}

.hero-content {
    padding: clamp(30px, 5vw, 66px);
}

.hero-eyebrow {
    margin: 0 0 6px;
    color: var(--rehberim-accent);
    font-weight: 700;
}

.hero-content h1 {
    max-width: 760px;
    margin: 0;
    font-size: clamp(36px, 5vw, 62px);
    line-height: 1.05;
    letter-spacing: -.035em;
}

.hero-description {
    max-width: 720px;
    margin: 18px 0 28px;
    color: var(--rehberim-muted);
    font-size: 18px;
}

.hero-search {
    display: grid;
    grid-template-columns: minmax(220px, 1.4fr) minmax(150px, .8fr) minmax(150px, .8fr) auto;
    gap: 10px;
    padding: 12px;
    border: 1px solid var(--rehberim-border);
    border-radius: 10px;
    background: var(--rehberim-surface);
    box-shadow: 0 12px 28px color-mix(in srgb, var(--rehberim-shadow) 8%, transparent);
}

.search-field label {
    display: block;
    margin-bottom: 3px;
    color: var(--rehberim-muted);
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .045em;
}

.search-field input,
.search-field select {
    width: 100%;
    height: 42px;
    border: 1px solid var(--rehberim-border);
    border-radius: 6px;
    background: var(--rehberim-input-surface);
    color: var(--rehberim-text);
    padding: 0 11px;
}

.hero-search > button {
    align-self: end;
    height: 42px;
}

.hero-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 22px;
}

.hero-stats > div {
    display: flex;
    min-height: 74px;
    flex-direction: column;
    justify-content: center;
    padding: 12px 16px;
    border: 1px solid var(--rehberim-border);
    border-radius: 8px;
    background: color-mix(in srgb, var(--rehberim-contrast-text) 78%, transparent);
}

.hero-stats strong {
    color: var(--rehberim-primary);
    font-size: 24px;
    line-height: 1.2;
}

.hero-stats span {
    color: var(--rehberim-muted);
    font-size: 12px;
}

.hero-visual {
    position: relative;
    min-height: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

.hero-panel.has-hero-background .hero-visual {
    background: transparent;
}

.hero-panel.has-hero-background .hero-visual::before,
.hero-panel.has-hero-background .hero-visual::after {
    display: none;
}

.hero-visual::before,
.hero-visual::after {
    content: '';
    position: absolute;
    border-radius: 50%;
    border: 18px solid color-mix(in srgb, var(--rehberim-primary) 10%, transparent);
}

.hero-visual::before {
    width: 280px;
    height: 280px;
    right: 12%;
    top: 13%;
}

.hero-visual::after {
    width: 130px;
    height: 130px;
    right: 35%;
    bottom: 10%;
    border-width: 10px;
}

.hero-visual-copy {
    position: absolute;
    inset: auto 10% 12%;
    z-index: 2;
    display: flex;
    flex-direction: column;
    padding: 24px;
    border-radius: 10px;
    background: color-mix(in srgb, var(--rehberim-contrast-text) 90%, transparent);
    box-shadow: 0 16px 40px color-mix(in srgb, var(--rehberim-shadow) 12%, transparent);
}

.hero-visual-copy strong {
    color: var(--rehberim-primary);
    font-size: 28px;
}

.hero-visual-copy span {
    color: var(--rehberim-muted);
}

.home-section {
    padding-top: 16px;
}

.section-surface,
.doping-surface {
    border: 1px solid var(--rehberim-border);
    border-radius: 10px;
    background: var(--rehberim-surface);
    padding: 20px;
}

.section-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 16px;
}

.section-heading h2 {
    margin: 0;
    font-size: clamp(20px, 2vw, 27px);
    line-height: 1.25;
}

.section-link {
    display: inline-flex;
    min-height: 34px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--rehberim-primary);
    border-radius: 6px;
    padding: 5px 11px;
    font-size: 12px;
    font-weight: 700;
    white-space: nowrap;
}

.category-strip {
    display: grid;
    grid-template-columns: repeat(10, minmax(120px, 1fr));
    gap: 10px;
    overflow-x: auto;
    padding-bottom: 4px;
    scrollbar-width: thin;
}

.category-card {
    min-height: 122px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 14px 12px;
    border: 1px solid var(--rehberim-border);
    border-radius: 8px;
    background: var(--rehberim-surface);
    color: var(--rehberim-text);
    text-align: center;
}

.category-card:hover,
.category-card:focus {
    border-color: var(--rehberim-primary);
    box-shadow: 0 8px 20px color-mix(in srgb, var(--rehberim-shadow) 8%, transparent);
}

.category-card-media {
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 12px;
    background: var(--rehberim-soft-surface);
    border: 1px solid var(--rehberim-border);
}

.category-card-media.has-image {
    background: #fff;
}

.category-card-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.category-card-placeholder span {
    color: var(--rehberim-primary);
    font-size: 18px;
    font-weight: 800;
    line-height: 1;
}

.category-card strong {
    font-size: 14px;
}

.category-card > span:last-child {
    margin-top: 0;
    color: var(--rehberim-muted);
    font-size: 11px;
}

.firm-grid,
.listing-grid,
.job-package-grid,
.campaign-grid,
.post-grid,
.rehberim-package-grid {
    display: grid;
    gap: 14px;
}

.firm-grid-featured,
.doping-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.firm-card,
.listing-card,
.job-package-card,
.campaign-card,
.content-card,
.rehberim-package-card {
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--rehberim-border);
    border-radius: 9px;
    background: var(--rehberim-surface);
    box-shadow: 0 6px 18px color-mix(in srgb, var(--rehberim-shadow) 5%, transparent);
}

.firm-card,
.listing-card,
.job-package-card,
.campaign-card,
.content-card {
    display: flex;
    flex-direction: column;
}

.firm-image,
.listing-image,
.content-card > a,
.campaign-card > a {
    display: block;
    overflow: hidden;
}

.firm-image {
    aspect-ratio: 16 / 8.8;
    background: var(--rehberim-soft-surface);
}

.listing-image,
.content-card > a,
.campaign-card > a {
    aspect-ratio: 16 / 10;
    background: var(--rehberim-soft-surface);
}

.rehberim-card-image,
.firm-image img,
.listing-image img,
.content-card > a img,
.campaign-card > a img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .25s ease;
}

.firm-card:hover img,
.listing-card:hover img,
.content-card:hover img,
.campaign-card:hover img {
    transform: scale(1.025);
}

.rehberim-image-placeholder {
    display: block;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, var(--rehberim-border), var(--rehberim-soft-surface));
}

.firm-card-body,
.listing-card-body,
.campaign-card-body,
.card-body {
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: flex-start;
    padding: 14px;
}

.firm-card h3,
.listing-card h3,
.job-package-card h3,
.campaign-card h3,
.content-card h2,
.news-list-item h3,
.rehberim-package-card h3 {
    margin: 0;
    line-height: 1.35;
}

.firm-card h3,
.listing-card h3,
.campaign-card h3,
.news-list-item h3 {
    font-size: 16px;
}

.firm-card h3 a,
.listing-card h3 a,
.job-package-card h3 a,
.campaign-card h3 a,
.news-list-item h3 a,
.content-card h2 a {
    color: var(--rehberim-text);
}

.card-meta,
.rating-text {
    margin: 4px 0 0;
    color: var(--rehberim-muted);
    font-size: 12px;
}

.rating-text {
    color: var(--rehberim-secondary);
    font-weight: 700;
}

.firm-card .button,
.listing-card .button,
.campaign-card .button {
    margin-top: auto;
}

.doping-surface {
    border-color: var(--rehberim-premium-surface);
    background: var(--rehberim-premium-surface);
    color: var(--rehberim-premium-text);
}

.doping-surface .section-heading h2,
.doping-surface .section-link {
    color: var(--rehberim-premium-text);
}

.doping-surface .section-link {
    border-color: var(--rehberim-secondary);
}

.doping-card {
    position: relative;
    border-color: color-mix(in srgb, var(--rehberim-secondary) 55%, transparent);
}

.doping-card:first-child {
    border-width: 2px;
}

.doping-badge,
.listing-label,
.campaign-label,
.job-package-label {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 5px;
    font-size: 11px;
    font-weight: 700;
}

.doping-badge {
    position: absolute;
    top: 9px;
    left: 9px;
    z-index: 3;
    background: var(--rehberim-secondary);
    color: var(--rehberim-text);
    padding: 4px 8px;
}

.premium-empty {
    color: var(--rehberim-premium-text);
}

.section-with-ad {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 16px;
}

.compact-firm-grid,
.listing-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.compact-firm-card .firm-image {
    aspect-ratio: 16 / 9;
}

.section-ad-side .rehberim-ad {
    min-height: 250px;
    height: 100%;
}

.listing-label,
.campaign-label {
    margin-bottom: 8px;
    padding: 3px 7px;
    background: var(--rehberim-accent);
    color: var(--rehberim-contrast-text);
}

.listing-price {
    margin: 8px 0 12px;
    color: var(--rehberim-primary);
    font-weight: 800;
}

.job-package-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.job-package-card {
    position: relative;
    padding: 18px;
    border-top: 4px solid var(--rehberim-primary);
}

.job-package-card.job-package-featured {
    border-top-color: var(--rehberim-secondary);
}

.job-package-card.job-package-urgent {
    border-top-color: var(--rehberim-danger);
}

.job-package-label {
    align-self: flex-start;
    margin-bottom: 12px;
    padding: 4px 8px;
    background: color-mix(in srgb, var(--rehberim-primary) 10%, var(--rehberim-surface));
    color: var(--rehberim-text);
}

.job-package-featured .job-package-label {
    background: color-mix(in srgb, var(--rehberim-secondary) 18%, var(--rehberim-surface));
}

.job-package-urgent .job-package-label {
    background: color-mix(in srgb, var(--rehberim-danger) 16%, var(--rehberim-surface));
    color: var(--rehberim-danger);
}

.job-company {
    margin: 7px 0 14px;
    color: var(--rehberim-primary);
    font-weight: 700;
}

.job-meta-list {
    margin: 0 0 16px;
}

.job-meta-list > div {
    display: grid;
    grid-template-columns: 70px 1fr;
    gap: 8px;
    padding: 4px 0;
    border-bottom: 1px solid var(--rehberim-border);
    font-size: 12px;
}

.job-meta-list dt {
    color: var(--rehberim-muted);
}

.job-meta-list dd {
    margin: 0;
    color: var(--rehberim-text);
    font-weight: 700;
}

.job-package-card .button {
    width: 100%;
    margin-top: auto;
}

.split-sections {
    display: grid;
    grid-template-columns: 1.12fr .88fr;
    gap: 16px;
}

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

.campaign-card p,
.news-list-item p,
.content-card p,
.rehberim-package-card p {
    color: var(--rehberim-muted);
    font-size: 13px;
}

.news-list {
    display: grid;
    gap: 8px;
}

.news-list-item {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid var(--rehberim-border);
}

.news-list-item time {
    display: flex;
    min-height: 58px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--rehberim-border);
    border-radius: 7px;
    color: var(--rehberim-primary);
}

.news-list-item time strong {
    font-size: 20px;
    line-height: 1;
}

.news-list-item time span {
    font-size: 11px;
    text-transform: uppercase;
}

.news-list-item p {
    margin: 4px 0;
}

.text-link {
    font-size: 12px;
    font-weight: 700;
}

.announcement-block {
    margin-top: 22px;
    padding-top: 18px;
    border-top: 1px solid var(--rehberim-border);
}

.announcement-list {
    display: grid;
    gap: 8px;
}

.announcement-list a {
    display: grid;
    grid-template-columns: 86px 1fr;
    gap: 10px;
    color: var(--rehberim-text);
}

.announcement-list span {
    color: var(--rehberim-muted);
    font-size: 12px;
}

.newsletter-panel {
    display: grid;
    grid-template-columns: minmax(0, .8fr) minmax(420px, 1.2fr);
    gap: 28px;
    align-items: center;
    border-radius: 10px 10px 0 0;
    background: var(--rehberim-primary);
    color: var(--rehberim-contrast-text);
    padding: 28px 36px;
}

.newsletter-panel h2,
.newsletter-panel p {
    margin: 0;
}

.newsletter-panel p {
    margin-top: 5px;
    color: color-mix(in srgb, var(--rehberim-contrast-text) 82%, transparent);
}

.newsletter-form form,
.newsletter-form .mc4wp-form-fields {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
}

.newsletter-form input[type="email"] {
    min-width: 0;
    height: 48px;
    border: 0;
    border-radius: 7px 0 0 7px;
    padding: 0 14px;
}

.newsletter-form button,
.newsletter-form input[type="submit"] {
    min-height: 48px;
    border-color: var(--rehberim-primary-dark);
    border-radius: 0 7px 7px 0;
    background: var(--rehberim-primary-dark);
}

.home-ad-bottom {
    padding-bottom: 20px;
}

.site-footer {
    background: var(--rehberim-footer);
    color: var(--rehberim-footer-text);
}

.footer-grid {
    display: grid;
    grid-template-columns: 1.35fr repeat(3, 1fr);
    gap: 44px;
    padding-top: 52px;
    padding-bottom: 46px;
}

.site-footer h2 {
    margin: 0 0 14px;
    color: var(--rehberim-footer-text);
    font-size: 18px;
}

.site-footer p,
.site-footer li,
.site-footer a {
    color: color-mix(in srgb, var(--rehberim-footer-text) 78%, transparent);
    font-size: 14px;
}

.site-footer ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.site-footer li + li {
    margin-top: 7px;
}

.site-footer a:hover,
.site-footer a:focus {
    color: var(--rehberim-contrast-text);
}

.footer-bottom {
    border-top: 1px solid color-mix(in srgb, var(--rehberim-contrast-text) 13%, transparent);
}

.footer-bottom p {
    margin: 0;
    padding: 16px 0;
    text-align: center;
}

.site-main:not(.home-main) {
    min-height: 60vh;
    padding: 42px 0 70px;
}

.content-shell {
    border: 1px solid var(--rehberim-border);
    border-radius: 10px;
    background: var(--rehberim-surface);
    padding: 28px;
}

.archive-header {
    margin-bottom: 24px;
}

.archive-header h1,
.single-header h1 {
    margin: 0;
    line-height: 1.18;
}

.archive-description {
    color: var(--rehberim-muted);
}

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

.content-card h2 {
    font-size: 20px;
}

.single-shell {
    max-width: 1000px;
}

.single-image {
    margin: 24px 0;
}

.single-image img {
    width: 100%;
    border-radius: 10px;
}

.content-date {
    color: var(--rehberim-muted);
}

.entry-content > * {
    max-width: 100%;
}

.entry-content a {
    text-decoration: underline;
}

.error-page {
    min-height: 55vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.error-code {
    margin: 0;
    color: var(--rehberim-primary);
    font-size: clamp(80px, 15vw, 180px);
    font-weight: 800;
    line-height: 1;
}

.woocommerce .site-main,
.woocommerce-page .site-main {
    padding: 40px 0 70px;
}

.woocommerce .button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce a.button {
    border-radius: 7px;
    background: var(--rehberim-primary);
    color: var(--rehberim-contrast-text);
}

.woocommerce ul.products li.product,
.woocommerce div.product,
.woocommerce-cart-form,
.woocommerce-checkout-review-order,
.woocommerce form.checkout,
.woocommerce-account .woocommerce-MyAccount-content {
    border: 1px solid var(--rehberim-border);
    border-radius: 9px;
    background: var(--rehberim-surface);
    padding: 18px;
}

.rehberim-product-firm-select {
    margin: 16px 0;
    padding: 14px;
    border: 1px solid var(--rehberim-border);
    border-radius: 7px;
    background: var(--rehberim-background);
}

.rehberim-product-firm-select label,
.rehberim-product-firm-select select {
    display: block;
    width: 100%;
}

.rehberim-product-firm-select label {
    margin-bottom: 6px;
    font-weight: 700;
}

.rehberim-product-firm-select select {
    min-height: 44px;
    border: 1px solid var(--rehberim-border);
    border-radius: 6px;
    background: var(--rehberim-input-surface);
    padding: 0 10px;
}

.rehberim-package-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.rehberim-package-card {
    padding: 22px;
}

.package-price {
    margin: 10px 0;
    color: var(--rehberim-primary);
    font-size: 26px;
    font-weight: 800;
}

.empty-message {
    grid-column: 1 / -1;
    margin: 0;
    padding: 24px;
    border: 1px dashed var(--rehberim-border);
    border-radius: 8px;
    color: var(--rehberim-muted);
    text-align: center;
}

.nav-links {
    display: flex;
    justify-content: center;
    gap: 6px;
    margin-top: 26px;
}

.nav-links .page-numbers {
    min-width: 38px;
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--rehberim-border);
    border-radius: 6px;
    background: var(--rehberim-input-surface);
}

.nav-links .current {
    border-color: var(--rehberim-primary);
    background: var(--rehberim-primary);
    color: var(--rehberim-contrast-text);
}

@media (max-width: 1180px) {
    .firm-grid-featured,
    .doping-grid,
    .job-package-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .compact-firm-grid,
    .listing-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .hero-panel {
        grid-template-columns: 1fr;
    }

    .hero-visual {
        min-height: 280px;
    }

    .section-with-ad {
        grid-template-columns: 1fr;
    }

    .section-ad-side {
        max-width: 100%;
    }

    .section-ad-side .rehberim-ad {
        min-height: 130px;
    }
}

@media (max-width: 920px) {
    .hero-panel {
        grid-template-columns: 1fr;
    }

    .hero-panel.has-hero-background {
        background-position: center center;
    }

    .hero-panel.has-hero-background::before {
        background: linear-gradient(
            180deg,
            color-mix(in srgb, var(--rehberim-surface) 98%, transparent) 0%,
            color-mix(in srgb, var(--rehberim-surface) 94%, transparent) 58%,
            color-mix(in srgb, var(--rehberim-surface) 28%, transparent) 78%,
            transparent 100%
        );
    }

    .hero-panel.has-hero-background .hero-visual {
        min-height: 260px;
    }

    body.admin-bar .site-header {
        top: 46px;
    }

    .topbar-inner,
    .header-inner {
        grid-template-columns: 1fr;
    }

    .topbar-inner {
        display: grid;
        padding: 9px 0;
    }

    .topbar-contact,
    .topbar-account {
        flex-wrap: wrap;
        gap: 8px 14px;
    }

    .header-inner {
        padding: 18px 0;
        gap: 16px;
    }


    .header-ad-slot {
        width: min(100%, 728px);
        justify-self: stretch;
    }

    .menu-toggle {
        display: inline-flex;
    }

    .nav-inner {
        display: block;
    }

    .primary-menu {
        display: none;
        padding-bottom: 8px;
    }

    .primary-menu.is-open {
        display: block;
    }

    .primary-menu a {
        min-height: 44px;
        padding: 0 10px;
    }

    .primary-menu .sub-menu {
        position: static;
        visibility: visible;
        opacity: 1;
        border: 0;
        box-shadow: none;
        background: color-mix(in srgb, var(--rehberim-contrast-text) 7%, transparent);
        padding-left: 14px;
    }

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

    .search-keyword {
        grid-column: 1 / -1;
    }

    .hero-search > button {
        grid-column: 1 / -1;
    }

    .split-sections,
    .newsletter-panel,
    .footer-grid {
        grid-template-columns: 1fr;
    }

    .post-grid,
    .campaign-grid,
    .rehberim-package-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 680px) {
    .site-shell {
        width: min(100% - 24px, 1440px);
    }

    .header-search {
        grid-template-columns: 1fr;
        border: 0;
        gap: 8px;
        background: transparent;
    }

    .header-search input,
    .header-search button {
        border: 1px solid var(--rehberim-border);
        border-radius: 7px;
    }

    .header-ad-slot .header-ad-728 {
        min-height: 48px;
    }

    .header-ad-slot .header-ad-728 > span {
        min-height: 48px;
        font-size: 12px;
    }

    .hero-content {
        padding: 28px 20px;
    }

    .hero-search,
    .hero-stats {
        grid-template-columns: 1fr;
    }

    .search-keyword,
    .hero-search > button {
        grid-column: auto;
    }

    .hero-visual {
        min-height: 220px;
    }

    .hero-visual-copy {
        inset: auto 18px 18px;
    }

    .section-surface,
    .doping-surface {
        padding: 14px;
    }

    .section-heading {
        align-items: flex-start;
    }

    .firm-grid-featured,
    .doping-grid,
    .compact-firm-grid,
    .listing-grid,
    .job-package-grid,
    .campaign-grid,
    .post-grid,
    .rehberim-package-grid {
        grid-template-columns: 1fr;
    }

    .category-strip {
        grid-template-columns: repeat(10, 132px);
    }

    .newsletter-panel {
        min-width: 0;
        padding: 24px 18px;
    }

    .newsletter-form form,
    .newsletter-form .mc4wp-form-fields {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .newsletter-form input[type="email"],
    .newsletter-form button,
    .newsletter-form input[type="submit"] {
        border-radius: 7px;
    }

    .footer-grid {
        gap: 28px;
    }

    .content-shell {
        padding: 18px;
    }
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        transition: none !important;
        animation: none !important;
    }
}

/* Firmalar archive page - v78 */
.firm-archive-page {
    padding-bottom: 0;
}

.firm-archive-top-ad {
    padding-top: 16px;
}

.firm-archive-top-ad .rehberim-ad {
    min-height: 90px;
}

.firm-archive-breadcrumb {
    display: flex;
    align-items: center;
    gap: 9px;
    padding-top: 14px;
    padding-bottom: 10px;
    color: var(--rehberim-muted);
    font-size: 13px;
}

.firm-archive-breadcrumb a {
    font-weight: 700;
}

.firm-archive-hero {
    position: relative;
    min-height: 265px;
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(420px, 1.1fr);
    overflow: hidden;
    border: 1px solid var(--rehberim-border);
    border-radius: 12px;
    background: linear-gradient(110deg, var(--rehberim-hero-start), var(--rehberim-hero-end));
    background-position: center;
    background-size: cover;
}

.firm-archive-hero.has-background-image::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, color-mix(in srgb, var(--rehberim-surface) 96%, transparent) 0%, color-mix(in srgb, var(--rehberim-surface) 88%, transparent) 44%, color-mix(in srgb, var(--rehberim-surface) 18%, transparent) 100%);
}

.firm-archive-hero-copy {
    position: relative;
    z-index: 2;
    align-self: center;
    padding: 34px 38px;
}

.firm-archive-hero-copy .section-eyebrow {
    margin: 0 0 5px;
    color: var(--rehberim-primary);
    font-size: 14px;
    font-weight: 800;
}

.firm-archive-hero-copy h1 {
    margin: 0 0 9px;
    font-size: clamp(34px, 4vw, 55px);
    line-height: 1.08;
}

.firm-archive-hero-copy > p:not(.section-eyebrow) {
    max-width: 620px;
    margin: 0;
    color: var(--rehberim-muted);
}

.firm-archive-total {
    display: inline-flex;
    min-width: 178px;
    flex-direction: column;
    margin-top: 22px;
    padding: 11px 15px;
    border: 1px solid color-mix(in srgb, var(--rehberim-primary) 16%, var(--rehberim-border));
    border-radius: 8px;
    background: color-mix(in srgb, var(--rehberim-surface) 84%, transparent);
}

.firm-archive-total span {
    color: var(--rehberim-muted);
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.firm-archive-total strong {
    color: var(--rehberim-primary);
    font-size: 24px;
    line-height: 1.25;
}

.firm-archive-hero-art {
    position: relative;
    min-height: 265px;
}

.archive-building,
.archive-storefront,
.archive-search-ring {
    position: absolute;
    display: block;
}

.archive-building {
    bottom: 45px;
    width: 80px;
    border: 10px solid color-mix(in srgb, var(--rehberim-primary) 58%, var(--rehberim-surface));
    border-bottom: 0;
    background: repeating-linear-gradient(90deg, transparent 0 12px, color-mix(in srgb, var(--rehberim-primary) 20%, transparent) 12px 18px);
}

.archive-building::before {
    content: '';
    position: absolute;
    left: 50%;
    top: -28px;
    width: 16px;
    height: 28px;
    transform: translateX(-50%);
    background: color-mix(in srgb, var(--rehberim-primary) 60%, var(--rehberim-surface));
}

.archive-building-one {
    right: 390px;
    height: 125px;
}

.archive-building-two {
    right: 85px;
    height: 165px;
}

.archive-building-three {
    right: 315px;
    width: 62px;
    height: 92px;
}

.archive-storefront {
    right: 155px;
    bottom: 42px;
    width: 230px;
    height: 118px;
    border: 8px solid var(--rehberim-primary);
    border-radius: 8px 8px 2px 2px;
    background: var(--rehberim-surface);
    box-shadow: inset 0 35px color-mix(in srgb, var(--rehberim-accent) 18%, var(--rehberim-surface));
}

.archive-storefront::before {
    content: '';
    position: absolute;
    left: -15px;
    right: -15px;
    top: -34px;
    height: 38px;
    border-radius: 7px 7px 2px 2px;
    background: repeating-linear-gradient(90deg, var(--rehberim-primary) 0 40px, var(--rehberim-secondary) 40px 78px, var(--rehberim-surface) 78px 116px);
    box-shadow: 0 6px 0 color-mix(in srgb, var(--rehberim-primary) 24%, transparent);
}

.archive-storefront::after {
    content: '';
    position: absolute;
    left: 22px;
    bottom: 0;
    width: 58px;
    height: 72px;
    border: 5px solid var(--rehberim-primary);
    background: color-mix(in srgb, var(--rehberim-accent) 12%, var(--rehberim-surface));
}

.archive-search-ring {
    right: 115px;
    top: 35px;
    width: 148px;
    height: 148px;
    border: 15px solid var(--rehberim-primary-dark);
    border-radius: 50%;
    box-shadow: 0 10px 28px color-mix(in srgb, var(--rehberim-shadow) 15%, transparent);
}

.archive-search-ring::after {
    content: '';
    position: absolute;
    width: 90px;
    height: 17px;
    right: -67px;
    bottom: -35px;
    border-radius: 9px;
    background: var(--rehberim-primary-dark);
    transform: rotate(48deg);
    transform-origin: left center;
}

.firm-filter-surface {
    margin-top: 14px;
    padding: 15px;
    border: 1px solid var(--rehberim-border);
    border-radius: 10px;
    background: var(--rehberim-surface);
}

.firm-archive-filter {
    display: grid;
    grid-template-columns: minmax(190px, 1.25fr) repeat(4, minmax(130px, .8fr)) auto;
    gap: 10px;
    align-items: end;
}

.firm-archive-filter label {
    display: grid;
    gap: 4px;
}

.firm-archive-filter label > span {
    color: var(--rehberim-muted);
    font-size: 11px;
    font-weight: 700;
}

.firm-archive-filter input,
.firm-archive-filter select {
    width: 100%;
    height: 43px;
    border: 1px solid var(--rehberim-border);
    border-radius: 7px;
    background: var(--rehberim-input-surface);
    color: var(--rehberim-text);
    padding: 0 11px;
}

.firm-archive-filter button {
    min-width: 112px;
    height: 43px;
}

.firm-archive-section {
    margin-top: 14px;
    padding: 18px;
    border: 1px solid var(--rehberim-border);
    border-radius: 10px;
    background: var(--rehberim-surface);
}

.firm-popular-categories {
    padding-bottom: 14px;
}

.firm-popular-categories .section-heading {
    margin-bottom: 12px;
}

.firm-popular-categories .section-heading h2 {
    font-size: 20px;
}

.firm-archive-category-strip {
    display: grid;
    grid-template-columns: repeat(10, minmax(122px, 1fr));
    gap: 9px;
    overflow-x: auto;
    padding-bottom: 3px;
}

.firm-archive-category-card {
    min-height: 78px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--rehberim-border);
    border-radius: 8px;
    background: var(--rehberim-surface);
    color: var(--rehberim-text);
    padding: 10px;
    text-align: center;
}

.firm-archive-category-card::before {
    content: '';
    width: 30px;
    height: 5px;
    margin-bottom: 8px;
    border-radius: 10px;
    background: var(--rehberim-primary);
}

.firm-archive-category-card:nth-child(3n+2)::before {
    background: var(--rehberim-success);
}

.firm-archive-category-card:nth-child(3n)::before {
    background: var(--rehberim-secondary);
}

.firm-archive-category-card strong {
    font-size: 13px;
    line-height: 1.25;
}

.firm-archive-category-card span {
    margin-top: 3px;
    color: var(--rehberim-muted);
    font-size: 10px;
}

.firm-archive-category-card:hover,
.firm-archive-category-card:focus {
    border-color: var(--rehberim-primary);
    box-shadow: 0 8px 20px color-mix(in srgb, var(--rehberim-shadow) 7%, transparent);
}

.firm-archive-premium-band {
    position: relative;
    margin-top: 14px;
    overflow: hidden;
    border: 1px solid color-mix(in srgb, var(--rehberim-secondary) 55%, var(--rehberim-premium-surface));
    border-radius: 12px;
    background: var(--rehberim-premium-surface);
    color: var(--rehberim-premium-text);
    padding: 20px;
}

.firm-archive-premium-band::before,
.firm-archive-premium-band::after {
    content: '';
    position: absolute;
    width: 130px;
    height: 130px;
    border: 1px solid color-mix(in srgb, var(--rehberim-secondary) 40%, transparent);
    border-radius: 50%;
    opacity: .4;
}

.firm-archive-premium-band::before {
    top: -75px;
    left: 45%;
}

.firm-archive-premium-band::after {
    right: -65px;
    bottom: -80px;
}

.firm-archive-premium-heading {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 16px;
}

.firm-archive-premium-heading h2 {
    margin: 0;
    color: var(--rehberim-premium-text);
    font-size: 25px;
}

.firm-archive-premium-heading p {
    margin: 2px 0 0;
    color: color-mix(in srgb, var(--rehberim-premium-text) 72%, transparent);
    font-size: 12px;
}

.firm-archive-premium-heading > a {
    min-height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--rehberim-secondary);
    border-radius: 6px;
    color: var(--rehberim-premium-text);
    padding: 6px 13px;
    font-size: 12px;
    font-weight: 800;
}

.firm-archive-premium-grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(6, minmax(180px, 1fr));
    gap: 11px;
    overflow-x: auto;
    padding-bottom: 3px;
}

.firm-archive-featured-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(180px, 1fr));
    gap: 11px;
    overflow-x: auto;
    padding-bottom: 3px;
}

.firm-archive-card {
    min-width: 0;
    display: flex;
    overflow: hidden;
    border: 1px solid var(--rehberim-border);
    border-radius: 9px;
    background: var(--rehberim-surface);
    box-shadow: 0 5px 18px color-mix(in srgb, var(--rehberim-shadow) 5%, transparent);
}

.firm-archive-card-premium,
.firm-archive-card-featured {
    flex-direction: column;
}

.firm-archive-card-premium {
    border: 2px solid color-mix(in srgb, var(--rehberim-secondary) 65%, var(--rehberim-border));
}

.firm-archive-card-premium:first-child {
    border-color: var(--rehberim-secondary);
    box-shadow: 0 12px 26px color-mix(in srgb, var(--rehberim-secondary) 20%, transparent);
}

.firm-archive-logo {
    flex: 0 0 132px;
    min-height: 118px;
    display: block;
    overflow: hidden;
    background: var(--rehberim-soft-surface);
}

.firm-archive-card-premium .firm-archive-logo,
.firm-archive-card-featured .firm-archive-logo {
    flex-basis: auto;
    width: 100%;
    min-height: 105px;
    aspect-ratio: 16 / 8.5;
}

.firm-archive-logo .rehberim-card-image,
.firm-archive-logo .rehberim-image-placeholder {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.firm-archive-card-body {
    min-width: 0;
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 12px;
}

.firm-archive-card-topline {
    min-height: 23px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 4px;
}

.firm-status-label {
    display: inline-flex;
    max-width: 125px;
    align-items: center;
    border-radius: 5px;
    background: var(--rehberim-secondary);
    color: var(--rehberim-text);
    padding: 3px 7px;
    font-size: 10px;
    font-weight: 800;
    line-height: 1.2;
}

.firm-archive-card-featured .firm-status-label {
    background: color-mix(in srgb, var(--rehberim-secondary) 84%, var(--rehberim-surface));
}

.firm-rating {
    margin-left: auto;
    color: var(--rehberim-secondary);
    font-size: 11px;
    font-weight: 800;
    white-space: nowrap;
}

.firm-archive-card h3 {
    margin: 0;
    font-size: 14px;
    line-height: 1.3;
}

.firm-archive-card h3 a {
    color: var(--rehberim-text);
}

.firm-archive-category,
.firm-archive-location,
.firm-archive-excerpt {
    margin: 4px 0 0;
    color: var(--rehberim-muted);
    font-size: 11px;
    line-height: 1.45;
}

.firm-archive-excerpt {
    margin-top: 7px;
}

.firm-archive-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px;
    margin-top: auto;
    padding-top: 10px;
}

.firm-archive-actions .button {
    margin-left: auto;
}

.firm-contact-link {
    color: var(--rehberim-success);
    font-size: 10px;
    font-weight: 700;
}

.firm-archive-card-premium .firm-archive-actions .button {
    width: 100%;
    margin-left: 0;
    border-color: var(--rehberim-primary-dark);
    background: var(--rehberim-primary-dark);
}

.firm-archive-card-featured .firm-archive-actions .firm-contact-link {
    display: none;
}

.firm-archive-content-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 16px;
    margin-top: 14px;
    padding-bottom: 18px;
}

.firm-archive-content-layout.no-sidebar {
    grid-template-columns: 1fr;
}

.firm-archive-results {
    min-width: 0;
    padding: 18px;
    border: 1px solid var(--rehberim-border);
    border-radius: 10px;
    background: var(--rehberim-surface);
}

.firm-archive-results .section-heading {
    margin-bottom: 13px;
}

.firm-archive-results .section-heading h2 {
    font-size: 22px;
}

.firm-result-count {
    color: var(--rehberim-muted);
    font-size: 12px;
    font-weight: 700;
}

.firm-archive-results-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 11px;
}

.firm-archive-results-grid .firm-archive-card-standard {
    min-height: 155px;
}

.firm-archive-sidebar {
    display: grid;
    align-content: start;
    gap: 14px;
}

.firm-archive-sidebar .rehberim-ad {
    min-height: 250px;
}

.firm-sidebar-box {
    padding: 16px;
    border: 1px solid var(--rehberim-border);
    border-radius: 9px;
    background: var(--rehberim-surface);
}

.firm-sidebar-box h2 {
    margin: 0 0 10px;
    font-size: 17px;
}

.firm-sidebar-box ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.firm-sidebar-box li + li {
    border-top: 1px solid var(--rehberim-border);
}

.firm-sidebar-box li a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 7px 0;
    color: var(--rehberim-muted);
    font-size: 12px;
}

.firm-sidebar-box li a strong {
    color: var(--rehberim-text);
    font-size: 11px;
}

.firm-sidebar-latest-list {
    display: grid;
    gap: 8px;
}

.firm-sidebar-latest-list > a {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr);
    gap: 9px;
    align-items: center;
    color: var(--rehberim-text);
}

.firm-sidebar-thumb {
    width: 52px;
    height: 42px;
    display: block;
    overflow: hidden;
    border-radius: 5px;
    background: var(--rehberim-soft-surface);
}

.firm-sidebar-thumb img,
.firm-sidebar-thumb .rehberim-image-placeholder {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.firm-sidebar-latest-list strong,
.firm-sidebar-latest-list small {
    display: block;
}

.firm-sidebar-latest-list strong {
    overflow: hidden;
    font-size: 11px;
    line-height: 1.3;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.firm-sidebar-latest-list small {
    color: var(--rehberim-muted);
    font-size: 10px;
}

.firm-empty-state {
    grid-column: 1 / -1;
    padding: 40px 20px;
    border: 1px dashed var(--rehberim-border);
    border-radius: 9px;
    text-align: center;
}

.firm-empty-state h2 {
    margin: 0;
    font-size: 22px;
}

.firm-empty-state p {
    color: var(--rehberim-muted);
}

@media (max-width: 1280px) {
    .firm-archive-filter {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .firm-archive-filter button {
        width: 100%;
    }

    .firm-archive-premium-grid,
    .firm-archive-featured-grid {
        grid-template-columns: repeat(6, 210px);
    }

    .firm-archive-results-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 1020px) {
    .firm-archive-hero {
        grid-template-columns: 1fr;
    }

    .firm-archive-hero-art {
        min-height: 220px;
    }

    .firm-archive-content-layout {
        grid-template-columns: 1fr;
    }

    .firm-archive-sidebar {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .firm-archive-sidebar .rehberim-ad {
        min-height: 180px;
    }
}

@media (max-width: 760px) {
    .firm-archive-hero-copy {
        padding: 27px 22px;
    }

    .firm-archive-hero-art {
        display: none;
    }

    .firm-archive-filter {
        grid-template-columns: 1fr 1fr;
    }

    .firm-archive-category-strip {
        grid-template-columns: repeat(10, 130px);
    }

    .firm-archive-premium-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .firm-archive-results-grid {
        grid-template-columns: 1fr;
    }

    .firm-archive-sidebar {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 520px) {
    .firm-archive-filter {
        grid-template-columns: 1fr;
    }

    .firm-archive-card-standard {
        flex-direction: column;
    }

    .firm-archive-card-standard .firm-archive-logo {
        width: 100%;
        min-height: 135px;
        flex-basis: auto;
        aspect-ratio: 16 / 8;
    }

    .firm-archive-actions .button {
        width: 100%;
        margin-left: 0;
    }
}

/* Firma ekleme sayfası */
.rehberim-submit-main { padding: 32px 0 64px; }
.rehberim-breadcrumb { display:flex; gap:8px; align-items:center; color:var(--rehberim-muted); font-size:.95rem; margin-bottom:18px; }
.rehberim-breadcrumb a { color:var(--rehberim-primary); text-decoration:none; }
.rehberim-notice { border-radius:18px; padding:16px 20px; margin:0 0 22px; border:1px solid var(--rehberim-border); background:var(--rehberim-surface); }
.rehberim-notice.success { border-color:rgba(46,125,85,.25); background:#edf8f2; color:#17553a; }
.rehberim-notice.error { border-color:rgba(163,59,59,.25); background:#fbefef; color:#7b2525; }
.submit-hero-card { display:grid; grid-template-columns: 1.3fr .7fr; gap:24px; padding:34px; background:linear-gradient(135deg, var(--rehberim-hero-start), var(--rehberim-hero-end)); border:1px solid var(--rehberim-border); border-radius:28px; margin-bottom:28px; box-shadow:0 14px 34px rgba(31,41,51,.08); }
.section-eyebrow { display:inline-flex; padding:8px 14px; border-radius:999px; background:rgba(18,63,120,.09); color:var(--rehberim-primary); font-size:.88rem; font-weight:700; letter-spacing:.02em; margin-bottom:14px; }
.submit-hero-card h1 { margin:0 0 12px; font-size:2.35rem; line-height:1.1; color:var(--rehberim-primary-dark); }
.submit-hero-card p { margin:0 0 20px; max-width:58ch; color:var(--rehberim-text); }
.submit-benefit-list { display:grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap:12px 18px; margin:0; padding:0; list-style:none; }
.submit-benefit-list li { position:relative; padding-left:20px; font-weight:600; }
.submit-benefit-list li::before { content:''; position:absolute; left:0; top:.55em; width:8px; height:8px; border-radius:50%; background:var(--rehberim-success); }
.submit-hero-visual { display:flex; align-items:center; justify-content:center; }
.submit-hero-illustration { position:relative; width:100%; min-height:260px; border-radius:24px; background:linear-gradient(160deg, rgba(18,63,120,.12), rgba(18,63,120,.03)); border:1px dashed rgba(18,63,120,.2); overflow:hidden; }
.submit-hero-illustration .shop-roof { position:absolute; left:50%; top:28px; width:180px; height:36px; background:var(--rehberim-primary); transform:translateX(-50%); border-radius:18px 18px 10px 10px; }
.submit-hero-illustration .shop-body { position:absolute; left:50%; top:72px; width:210px; height:138px; background:var(--rehberim-surface); transform:translateX(-50%); border-radius:22px; box-shadow:0 18px 36px rgba(18,63,120,.12); border:1px solid rgba(18,63,120,.08); }
.submit-hero-illustration .shop-badge { position:absolute; right:28px; top:28px; width:58px; height:58px; border-radius:50%; background:var(--rehberim-success); color:#fff; display:flex; align-items:center; justify-content:center; font-size:2rem; font-weight:700; box-shadow:0 12px 20px rgba(46,125,85,.25); }
.submit-hero-illustration .shop-card-lines { position:absolute; left:50%; top:112px; width:140px; transform:translateX(-50%); display:grid; gap:12px; }
.submit-hero-illustration .shop-card-lines span { display:block; height:14px; border-radius:999px; background:linear-gradient(90deg, rgba(18,63,120,.2), rgba(18,63,120,.06)); }
.submit-step-nav { display:grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:26px; }
.submit-step-nav button { display:flex; align-items:center; gap:12px; justify-content:flex-start; padding:14px 16px; border-radius:18px; border:1px solid var(--rehberim-border); background:var(--rehberim-surface); color:var(--rehberim-text); font-weight:700; cursor:pointer; }
.submit-step-nav button span { width:30px; height:30px; flex:0 0 30px; border-radius:50%; display:flex; align-items:center; justify-content:center; background:var(--rehberim-soft-surface); color:var(--rehberim-primary); }
.submit-step-nav button.is-active { border-color:rgba(18,63,120,.3); box-shadow:0 10px 24px rgba(18,63,120,.08); }
.submit-step-nav button.is-active span,
.submit-step-nav button.is-done span { background:var(--rehberim-primary); color:#fff; }
.submit-layout-grid { display:grid; grid-template-columns: minmax(0,1.68fr) minmax(280px,.8fr); gap:24px; align-items:start; }
.submit-panel,
.submit-sidebar-box,
.submit-preview-card,
.submit-review-list,
.rehberim-submit-form .rehberim-ad { background:var(--rehberim-surface); border:1px solid var(--rehberim-border); border-radius:24px; box-shadow:0 12px 28px rgba(31,41,51,.06); }
.submit-panel { padding:28px; }
.submit-panel h2 { margin:0 0 8px; color:var(--rehberim-primary-dark); }
.submit-panel > p { margin-top:0; color:var(--rehberim-muted); }
.submit-form-section { margin-top:24px; padding-top:24px; border-top:1px solid var(--rehberim-border); }
.submit-form-section h3 { margin:0 0 16px; color:var(--rehberim-primary-dark); }
.submit-fields { display:grid; gap:18px; }
.submit-fields.two-col { grid-template-columns: repeat(2,minmax(0,1fr)); }
.submit-field { display:flex; flex-direction:column; gap:8px; }
.submit-field.full-width { grid-column:1/-1; }
.submit-field span { font-weight:700; color:var(--rehberim-primary-dark); }
.submit-field input,
.submit-field select,
.submit-field textarea { width:100%; border:1px solid var(--rehberim-border); border-radius:14px; background:var(--rehberim-input-surface); color:var(--rehberim-text); padding:14px 16px; font:inherit; resize:vertical; }
.submit-field input:focus,
.submit-field select:focus,
.submit-field textarea:focus { outline:2px solid rgba(18,63,120,.16); border-color:var(--rehberim-primary); }
.submit-check { display:flex; align-items:flex-start; gap:10px; margin-top:12px; color:var(--rehberim-text); }
.submit-check input { margin-top:3px; }
.submit-check.chip { border:1px solid var(--rehberim-border); border-radius:999px; padding:10px 14px; background:var(--rehberim-soft-surface); margin-top:0; }
.submit-check.inline { margin-top:0; white-space:nowrap; }
.submit-checkbox-grid { display:flex; flex-wrap:wrap; gap:12px; }
.submit-actions { display:flex; justify-content:flex-end; gap:12px; margin-top:24px; }
.submit-actions.between { justify-content:space-between; }
.button-success { background:var(--rehberim-success); color:#fff; border:0; }
.submit-package-grid { display:grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap:18px; align-items:stretch; }
.submit-package-card { position:relative; display:flex; flex-direction:column; align-items:flex-start; justify-content:flex-start; width:100%; min-height:100%; text-align:left; white-space:normal; padding:24px; padding-top:60px; border:1px solid var(--rehberim-border); background:var(--rehberim-surface); border-radius:22px; cursor:pointer; transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background-color .18s ease; }
.submit-package-card:hover { transform:translateY(-2px); box-shadow:0 12px 28px rgba(31,41,51,.08); }
.submit-package-card.is-selected { border-color:rgba(18,63,120,.35); box-shadow:0 14px 28px rgba(18,63,120,.12); background:linear-gradient(180deg, rgba(18,63,120,.02) 0%, rgba(18,63,120,.05) 100%); }
.submit-package-head { width:100%; display:flex; flex-direction:column; gap:12px; margin-bottom:16px; }
.submit-package-card strong { display:block; margin:0; font-size:1.75rem; line-height:1.25; color:var(--rehberim-primary-dark); }
.submit-package-price { display:flex; flex-wrap:wrap; align-items:flex-end; gap:8px; margin:0; font-size:2rem; line-height:1; font-weight:800; color:var(--rehberim-primary); }
.submit-package-price small { font-size:.95rem; line-height:1.2; color:var(--rehberim-muted); font-weight:600; }
.submit-package-features { width:100%; margin:0; padding:0; list-style:none; display:grid; gap:10px; color:var(--rehberim-text); }
.submit-package-features li { position:relative; padding-left:18px; font-weight:600; line-height:1.5; }
.submit-package-features li::before { content:''; position:absolute; left:0; top:10px; width:7px; height:7px; border-radius:50%; background:var(--rehberim-secondary); }
.submit-package-badge { position:absolute; right:18px; top:18px; display:inline-flex; align-items:center; justify-content:center; padding:8px 13px; border-radius:999px; font-size:.8rem; background:rgba(196,138,34,.14); color:#8a5b12; font-weight:700; }
.submit-info-text { margin:0; padding:14px 16px; background:var(--rehberim-soft-surface); border-radius:14px; border:1px solid var(--rehberim-border); }
.submit-upload-grid { display:grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap:18px; margin-top:24px; }
.submit-upload-card { display:flex; flex-direction:column; gap:10px; padding:22px; border-radius:20px; border:1px dashed rgba(18,63,120,.26); background:var(--rehberim-soft-surface); min-height:156px; }
.submit-upload-card.full-width { grid-column:1/-1; }
.submit-upload-card span { font-weight:700; color:var(--rehberim-primary-dark); }
.submit-upload-card small { color:var(--rehberim-muted); }
.submit-hours-table { display:grid; gap:12px; }
.submit-hours-row { display:grid; grid-template-columns: minmax(130px,1fr) 1fr 1fr auto; gap:12px; align-items:center; padding:12px 14px; background:var(--rehberim-soft-surface); border-radius:16px; }
.submit-hours-row strong { color:var(--rehberim-primary-dark); }
.submit-sidebar-column { display:grid; gap:20px; }
.submit-sidebar-box { padding:22px; }
.submit-sidebar-box h2 { margin:0 0 12px; font-size:1.15rem; color:var(--rehberim-primary-dark); }
.submit-sidebar-box p { margin:0 0 12px; color:var(--rehberim-muted); }
.submit-sidebar-box strong { display:block; color:var(--rehberim-primary); font-size:1.15rem; }
.submit-sidebar-box small { display:block; margin-top:6px; color:var(--rehberim-muted); }
.submit-sidebar-note { margin-top:14px; display:inline-flex; padding:10px 14px; border-radius:999px; background:rgba(46,125,85,.09); color:var(--rehberim-success); font-weight:700; }
.submit-side-list { margin:0; padding-left:18px; display:grid; gap:10px; }
.submit-side-list.compact { gap:8px; }
.package-summary-box .sidebar-package-price { margin-top:10px; font-size:1.5rem; font-weight:800; color:var(--rehberim-primary-dark); }
.package-summary-box .sidebar-package-price small { font-size:.95rem; font-weight:600; }
.submit-preview-card { overflow:hidden; }
.preview-cover { min-height:210px; background:linear-gradient(135deg, rgba(18,63,120,.16), rgba(18,63,120,.06)); }
.preview-cover.has-image { background-size:cover; background-position:center; }
.preview-headline { display:grid; grid-template-columns: 88px 1fr auto; gap:18px; align-items:center; padding:20px 22px 0; }
.preview-logo { width:88px; height:88px; border-radius:22px; background:var(--rehberim-soft-surface); border:1px solid var(--rehberim-border); display:flex; align-items:center; justify-content:center; font-weight:700; color:var(--rehberim-primary); background-size:cover; background-position:center; overflow:hidden; }
.preview-logo.has-image { text-indent:-999px; }
.preview-headline h3 { margin:0 0 6px; color:var(--rehberim-primary-dark); font-size:1.4rem; }
.preview-headline p { margin:0; color:var(--rehberim-muted); }
.preview-package { display:inline-flex; padding:10px 14px; border-radius:999px; background:rgba(196,138,34,.12); color:#8a5b12; font-weight:700; }
.preview-description { padding:18px 22px 10px; margin:0; color:var(--rehberim-text); }
.preview-contact-row { display:flex; flex-wrap:wrap; gap:18px; padding:0 22px 16px; color:var(--rehberim-muted); }
.preview-tag-list { display:flex; flex-wrap:wrap; gap:10px; padding:0 22px 18px; }
.preview-tag-list span { display:inline-flex; padding:9px 12px; border-radius:999px; background:rgba(46,125,85,.1); color:var(--rehberim-success); font-weight:700; font-size:.92rem; }
.preview-gallery-grid { display:grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap:12px; padding:0 22px 22px; }
.preview-gallery-thumb { border-radius:16px; min-height:92px; background-size:cover; background-position:center; background-color:var(--rehberim-soft-surface); }
.submit-review-list { display:grid; gap:14px; padding:22px; margin-top:20px; }
.submit-review-list > div { display:flex; justify-content:space-between; gap:20px; align-items:center; padding-bottom:14px; border-bottom:1px solid var(--rehberim-border); }
.submit-review-list > div:last-child { padding-bottom:0; border-bottom:0; }
.submit-review-list strong { color:var(--rehberim-primary-dark); }
.submit-review-list span { text-align:right; color:var(--rehberim-muted); }
.submit-content-column .is-hidden { display:none; }
.rehberim-submit-form .rehberim-ad { margin-top:0; padding:22px; }
@media (max-width: 1180px) {
    .submit-layout-grid { grid-template-columns: 1fr; }
    .submit-sidebar-column { order:2; }
    .submit-content-column { order:1; }
}
@media (max-width: 980px) {
    .submit-hero-card,
    .submit-package-grid,
    .submit-step-nav,
    .submit-fields.two-col,
    .submit-upload-grid { grid-template-columns: 1fr; }
    .submit-benefit-list { grid-template-columns: 1fr; }
    .preview-headline { grid-template-columns: 72px 1fr; }
    .preview-package { grid-column: 1 / -1; justify-self:start; }
}
@media (max-width: 720px) {
    .submit-hero-card { padding:24px; }
    .submit-panel,
    .submit-sidebar-box,
    .submit-review-list,
    .rehberim-submit-form .rehberim-ad { border-radius:18px; }
    .submit-step-nav button { font-size:.9rem; padding:12px; }
    .submit-step-nav button span { width:28px; height:28px; flex-basis:28px; }
    .submit-hours-row { grid-template-columns: 1fr 1fr; }
    .submit-hours-row strong { grid-column:1/-1; }
    .submit-hours-row .submit-check.inline { grid-column:1/-1; }
    .submit-actions.between { flex-direction:column; }
    .submit-review-list > div { flex-direction:column; align-items:flex-start; }
    .preview-gallery-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

.home-doping-packages-block {
    margin-top: 22px;
}

.home-doping-packages-title {
    margin: 0 0 14px;
    color: var(--rehberim-text);
    font-size: 19px;
}

.home-doping-packages-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.home-doping-package-card {
    position: relative;
    display: flex;
    min-width: 0;
    flex-direction: column;
    min-height: 100%;
    padding: 18px 16px;
    border: 1px solid var(--rehberim-border);
    border-radius: 12px;
    background: linear-gradient(180deg, #ffffff 0%, #fbfcfd 100%);
    box-shadow: 0 10px 24px color-mix(in srgb, var(--rehberim-shadow) 5%, transparent);
}

.home-doping-package-card.level-premium {
    border-color: color-mix(in srgb, var(--rehberim-primary) 45%, var(--rehberim-border));
    box-shadow: 0 12px 26px color-mix(in srgb, var(--rehberim-primary) 10%, transparent);
}

.home-doping-package-card.level-showcase {
    border-color: color-mix(in srgb, var(--rehberim-secondary) 32%, var(--rehberim-border));
}

.home-doping-package-badge {
    position: absolute;
    top: -11px;
    left: 50%;
    transform: translateX(-50%);
    padding: 5px 11px;
    border-radius: 999px;
    background: var(--rehberim-accent);
    color: var(--rehberim-contrast-text);
    font-size: 11px;
    font-weight: 700;
    white-space: nowrap;
}

.home-doping-package-icon {
    width: 58px;
    height: 58px;
    margin: 10px auto 14px;
    border-radius: 50%;
    background: color-mix(in srgb, var(--rehberim-primary) 8%, var(--rehberim-surface));
    border: 1px solid color-mix(in srgb, var(--rehberim-primary) 10%, var(--rehberim-border));
    display: flex;
    align-items: center;
    justify-content: center;
}

.home-doping-package-icon span {
    display: block;
    width: 22px;
    height: 22px;
    border-radius: 6px;
    border: 2px solid var(--rehberim-primary);
    transform: rotate(45deg);
}

.home-doping-package-card.level-premium .home-doping-package-icon span {
    border-radius: 50%;
}

.home-doping-package-card.level-showcase .home-doping-package-icon span {
    clip-path: polygon(50% 0%, 100% 38%, 82% 100%, 18% 100%, 0% 38%);
    transform: none;
    border-radius: 0;
}

.home-doping-package-card h3 {
    margin: 0;
    text-align: center;
    color: var(--rehberim-text);
    font-size: 17px;
}

.home-doping-package-card p {
    min-height: 54px;
    margin: 10px 0 14px;
    color: var(--rehberim-muted);
    font-size: 13px;
    text-align: center;
}

.home-doping-package-price {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 6px;
    margin-bottom: 14px;
    color: var(--rehberim-primary);
}

.home-doping-package-price strong {
    font-size: 17px;
    font-weight: 800;
}

.home-doping-package-price span {
    color: var(--rehberim-muted);
    font-weight: 700;
    font-size: 12px;
}

.home-doping-package-features {
    margin: 0 0 18px;
    padding: 14px 0 0;
    list-style: none;
    border-top: 1px solid var(--rehberim-border);
    display: grid;
    gap: 8px;
}

.home-doping-package-features li {
    position: relative;
    padding-left: 18px;
    color: var(--rehberim-text);
    font-size: 13px;
}

.home-doping-package-features li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 6px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--rehberim-accent);
}

.home-doping-package-card .button {
    width: 100%;
    margin-top: auto;
    text-align: center;
}

@media (max-width: 1392px) {
    .home-doping-packages-grid {
        grid-template-columns: 1fr;
    }

    .home-doping-package-card p {
        min-height: 0;
    }
}


.rehberim-term-media-preview {
    margin: 10px 0;
}

.rehberim-term-media-preview img {
    width: 64px;
    height: 64px;
    object-fit: cover;
    border-radius: 10px;
    border: 1px solid #d0d6dd;
    background: #fff;
}

/* Firma detay sayfası */
.firm-detail-main {
    padding: 28px 0 64px;
}

.firm-detail-page {
    display: grid;
    gap: 24px;
}

.firm-hero {
    position: relative;
    overflow: hidden;
    border-radius: 28px;
    border: 1px solid var(--rehberim-border);
    background: linear-gradient(135deg, var(--rehberim-hero-start), var(--rehberim-hero-end));
    background-size: cover;
    background-position: center;
    min-height: 330px;
    box-shadow: 0 16px 36px rgba(31, 41, 51, .08);
}

.firm-hero.tier-showcase {
    border-color: rgba(196, 138, 34, .24);
    box-shadow: 0 20px 40px rgba(11, 43, 84, .16);
}

.firm-hero-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(255,255,255,.95) 0%, rgba(255,255,255,.90) 42%, rgba(255,255,255,.52) 74%, rgba(255,255,255,.18) 100%);
}

.tier-showcase .firm-hero-overlay {
    background: linear-gradient(90deg, rgba(11,43,84,.92) 0%, rgba(11,43,84,.86) 46%, rgba(11,43,84,.40) 74%, rgba(11,43,84,.12) 100%);
}

.firm-hero-inner {
    position: relative;
    z-index: 2;
    min-height: 330px;
    display: flex;
    justify-content: space-between;
    gap: 24px;
    align-items: flex-end;
    padding: 34px;
}

.firm-hero-brand {
    display: flex;
    gap: 20px;
    align-items: flex-start;
    max-width: 760px;
}

.firm-hero-logo {
    width: 96px;
    height: 96px;
    flex: 0 0 96px;
    border-radius: 24px;
    overflow: hidden;
    border: 1px solid rgba(18, 63, 120, .12);
    background: var(--rehberim-surface);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    font-weight: 800;
    color: var(--rehberim-primary);
    box-shadow: 0 10px 22px rgba(31, 41, 51, .10);
}

.firm-hero-logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tier-showcase .firm-hero-logo {
    border-color: rgba(255,255,255,.12);
}

.firm-membership-badge {
    display: inline-flex;
    align-items: center;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(18, 63, 120, .10);
    color: var(--rehberim-primary);
    font-size: .9rem;
    font-weight: 800;
    margin-bottom: 12px;
}

.tier-showcase .firm-membership-badge {
    background: rgba(196, 138, 34, .18);
    color: #ffde9e;
}

.firm-hero-copy h1 {
    margin: 0 0 10px;
    font-size: clamp(2rem, 4vw, 3.4rem);
    line-height: 1.02;
    color: var(--rehberim-primary-dark);
}

.tier-showcase .firm-hero-copy h1,
.tier-showcase .firm-hero-text,
.tier-showcase .firm-hero-meta span {
    color: var(--rehberim-premium-text);
}

.firm-hero-text {
    margin: 0 0 14px;
    color: var(--rehberim-text);
    font-size: 1.04rem;
    max-width: 58ch;
}

.firm-hero-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.firm-hero-meta span {
    display: inline-flex;
    padding: 9px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,.78);
    color: var(--rehberim-text);
    font-size: .92rem;
    border: 1px solid rgba(18, 63, 120, .08);
}

.tier-showcase .firm-hero-meta span {
    background: rgba(255,255,255,.10);
    border-color: rgba(255,255,255,.08);
}

.firm-hero-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 12px;
    align-self: flex-end;
}

.button.button-light {
    background: rgba(255,255,255,.92);
    color: var(--rehberim-primary-dark);
    border: 1px solid rgba(18,63,120,.12);
}

.firm-detail-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.6fr) minmax(300px, .84fr);
    gap: 24px;
    align-items: start;
}

.firm-detail-main-column,
.firm-detail-sidebar {
    display: grid;
    gap: 24px;
}

.firm-detail-card {
    background: var(--rehberim-surface);
    border: 1px solid var(--rehberim-border);
    border-radius: 24px;
    padding: 26px;
    box-shadow: 0 12px 28px rgba(31, 41, 51, .06);
}

.tier-showcase .firm-detail-card {
    border-color: rgba(196, 138, 34, .14);
}

.firm-section-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 16px;
}

.firm-section-heading h2 {
    margin: 0;
    color: var(--rehberim-primary-dark);
    font-size: 1.3rem;
}

.firm-about-content {
    color: var(--rehberim-text);
}

.firm-about-content > *:first-child {
    margin-top: 0;
}

.firm-about-content > *:last-child {
    margin-bottom: 0;
}

.firm-chip-group {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 18px;
}

.firm-chip-group span {
    display: inline-flex;
    padding: 9px 13px;
    border-radius: 999px;
    background: rgba(18, 63, 120, .08);
    color: var(--rehberim-primary);
    font-size: .92rem;
    font-weight: 700;
}

.firm-chip-group.compact span {
    background: rgba(46, 125, 85, .10);
    color: var(--rehberim-success);
}

.firm-info-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.firm-info-grid div,
.firm-hours-table div,
.firm-contact-list div {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 14px 16px;
    border-radius: 16px;
    background: var(--rehberim-soft-surface);
    border: 1px solid rgba(18, 63, 120, .06);
}

.firm-info-grid strong,
.firm-hours-table strong,
.firm-contact-list strong {
    color: var(--rehberim-primary-dark);
    font-size: .92rem;
}

.firm-info-grid span,
.firm-hours-table span,
.firm-contact-list span,
.firm-contact-list a {
    color: var(--rehberim-text);
}

.firm-gallery-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.firm-gallery-item {
    overflow: hidden;
    border-radius: 20px;
    min-height: 210px;
    background: var(--rehberim-soft-surface);
}

.firm-gallery-item img {
    width: 100%;
    height: 100%;
    min-height: 210px;
    object-fit: cover;
    display: block;
}

.firm-hours-table,
.firm-contact-list,
.firm-social-links {
    display: grid;
    gap: 12px;
}

.firm-social-links a {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px 14px;
    border-radius: 14px;
    border: 1px solid var(--rehberim-border);
    background: var(--rehberim-soft-surface);
    font-weight: 700;
}

.upgrade-card p {
    margin-top: 0;
    color: var(--rehberim-muted);
}

.upgrade-package-box {
    padding: 18px;
    border-radius: 18px;
    background: linear-gradient(180deg, rgba(18,63,120,.06) 0%, rgba(18,63,120,.02) 100%);
    border: 1px solid rgba(18,63,120,.12);
}

.upgrade-package-box strong {
    display: block;
    margin-bottom: 12px;
    color: var(--rehberim-primary-dark);
    font-size: 1.08rem;
}

.upgrade-package-box ul,
.home-doping-package-features,
.submit-side-list,

.upgrade-package-box ul {
    margin: 0 0 18px;
    padding: 0;
    display: grid;
    gap: 8px;
}

.upgrade-package-box li {
    position: relative;
    padding-left: 18px;
}

.upgrade-package-box li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 7px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--rehberim-accent);
}

.firm-related-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.firm-related-card {
    display: grid;
    grid-template-columns: 120px 1fr;
    gap: 14px;
    border: 1px solid var(--rehberim-border);
    border-radius: 18px;
    overflow: hidden;
    background: var(--rehberim-surface);
}

.firm-related-card .rehberim-card-image,
.firm-related-card .rehberim-image-placeholder {
    width: 100%;
    height: 100%;
    min-height: 128px;
    object-fit: cover;
    display: block;
}

.firm-related-card > div {
    padding: 14px 14px 14px 0;
}

.firm-related-card h3 {
    margin: 0 0 8px;
    font-size: 1rem;
}

.firm-related-card p,
.firm-mini-row span,
.showcase-message-card p {
    color: var(--rehberim-muted);
}

.firm-extra-columns {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.firm-extra-column {
    display: grid;
    gap: 10px;
}

.firm-mini-row {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 14px 16px;
    border-radius: 16px;
    background: var(--rehberim-soft-surface);
    border: 1px solid rgba(18,63,120,.08);
}

.firm-message-form {
    display: grid;
    gap: 16px;
}

.firm-message-fields {
    display: grid;
    gap: 12px;
}

.firm-message-form input,
.firm-message-form textarea {
    width: 100%;
    border: 1px solid var(--rehberim-border);
    background: var(--rehberim-input-surface);
    border-radius: 14px;
    padding: 14px 16px;
    font: inherit;
}

.firm-message-form textarea {
    resize: vertical;
}

.tier-showcase .showcase-message-card {
    background: linear-gradient(180deg, rgba(11,43,84,.05) 0%, rgba(196,138,34,.08) 100%);
}

.firm-video-link {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

@media (max-width: 1100px) {
    .firm-detail-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 900px) {
    .firm-hero-inner {
        flex-direction: column;
        align-items: flex-start;
    }

    .firm-hero-actions {
        justify-content: flex-start;
    }

    .firm-info-grid,
    .firm-extra-columns,
    .firm-related-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 680px) {
    .firm-hero,
    .firm-detail-card {
        border-radius: 18px;
    }

    .firm-hero-inner {
        min-height: 280px;
        padding: 22px;
    }

    .firm-hero-brand {
        flex-direction: column;
    }

    .firm-hero-logo {
        width: 82px;
        height: 82px;
        flex-basis: 82px;
    }

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

    .firm-related-card {
        grid-template-columns: 1fr;
    }

    .firm-related-card > div {
        padding: 0 14px 14px;
    }
}

/* İlanlar arşiv sayfası */
.listing-archive-main {
    padding-bottom: 56px;
}

.listing-archive-hero {
    position: relative;
    min-height: 280px;
    background: linear-gradient(120deg, var(--rehberim-hero-start), var(--rehberim-hero-end));
    background-size: cover;
    background-position: center;
    overflow: hidden;
    border-bottom: 1px solid var(--rehberim-border);
}

.listing-archive-hero-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(255,255,255,.96) 0%, rgba(255,255,255,.88) 48%, rgba(255,255,255,.24) 80%, rgba(255,255,255,.06) 100%);
}

.listing-archive-hero-inner {
    position: relative;
    z-index: 2;
    min-height: 280px;
    display: flex;
    align-items: center;
    padding-block: 42px;
}

.listing-archive-hero-inner > div {
    max-width: 680px;
}

.listing-archive-eyebrow {
    margin: 0 0 6px;
    color: var(--rehberim-accent);
    font-weight: 800;
}

.listing-archive-hero h1 {
    margin: 0;
    font-size: clamp(36px, 5vw, 60px);
    line-height: 1.05;
    letter-spacing: -.035em;
}

.listing-archive-hero p:not(.listing-archive-eyebrow) {
    margin: 14px 0 0;
    color: var(--rehberim-muted);
    font-size: 18px;
}

.listing-archive-breadcrumb {
    display: flex;
    gap: 8px;
    align-items: center;
    margin-top: 20px;
    color: var(--rehberim-muted);
    font-size: 13px;
}

.listing-archive-shell {
    padding-top: 20px;
}

.listing-archive-ad {
    margin-bottom: 18px;
}

.listing-archive-filter {
    display: grid;
    grid-template-columns: 1.35fr repeat(6, minmax(130px, .8fr)) auto auto;
    gap: 10px;
    align-items: end;
    padding: 16px;
    margin-bottom: 18px;
    border: 1px solid var(--rehberim-border);
    border-radius: 12px;
    background: var(--rehberim-surface);
    box-shadow: 0 10px 28px color-mix(in srgb, var(--rehberim-shadow) 6%, transparent);
}

.listing-archive-filter label {
    min-width: 0;
}

.listing-archive-filter label > span {
    display: block;
    margin-bottom: 4px;
    color: var(--rehberim-muted);
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.listing-archive-filter input,
.listing-archive-filter select {
    width: 100%;
    min-width: 0;
    height: 42px;
    border: 1px solid var(--rehberim-border);
    border-radius: 7px;
    background: var(--rehberim-input-surface);
    color: var(--rehberim-text);
    padding: 0 11px;
}

.listing-archive-filter > button {
    height: 42px;
    padding-inline: 24px;
}

.listing-filter-clear {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 8px;
    font-size: 13px;
    font-weight: 700;
}

.listing-archive-layout {
    display: grid;
    grid-template-columns: 210px minmax(0, 1fr) 300px;
    gap: 16px;
    align-items: start;
}

.listing-archive-layout.no-sidebars {
    grid-template-columns: minmax(0, 1fr);
}

.listing-archive-left-sidebar,
.listing-archive-right-sidebar,
.listing-archive-content {
    display: grid;
    gap: 16px;
}

.listing-sidebar-box,
.listing-archive-section {
    border: 1px solid var(--rehberim-border);
    border-radius: 10px;
    background: var(--rehberim-surface);
    box-shadow: 0 6px 18px color-mix(in srgb, var(--rehberim-shadow) 4%, transparent);
}

.listing-sidebar-box {
    padding: 16px;
}

.listing-sidebar-box h2,
.listing-section-heading h2 {
    margin: 0;
    color: var(--rehberim-text);
}

.listing-sidebar-box h2 {
    margin-bottom: 12px;
    font-size: 16px;
}

.listing-category-list,
.listing-type-links {
    display: grid;
    gap: 2px;
}

.listing-category-list a,
.listing-type-links a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 34px;
    gap: 8px;
    padding: 7px 8px;
    border-radius: 7px;
    color: var(--rehberim-text);
    font-size: 13px;
}

.listing-category-list a:hover,
.listing-category-list a:focus,
.listing-type-links a:hover,
.listing-type-links a:focus,
.listing-type-links a.is-active {
    background: var(--rehberim-soft-surface);
    color: var(--rehberim-primary);
}

.listing-category-list small {
    color: var(--rehberim-muted);
    font-size: 11px;
}

.listing-sidebar-filter {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.listing-sidebar-filter input {
    min-width: 0;
    height: 38px;
    border: 1px solid var(--rehberim-border);
    border-radius: 7px;
    padding: 0 9px;
}

.listing-sidebar-filter .button {
    grid-column: 1 / -1;
    width: 100%;
}

.listing-archive-right-sidebar .rehberim-ad:first-child {
    min-height: 250px;
}

.listing-archive-right-sidebar .rehberim-ad:last-child {
    min-height: 600px;
}

.listing-archive-section {
    padding: 14px;
}

.listing-section-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 12px;
}

.listing-section-heading h2 {
    font-size: 19px;
}

.listing-section-heading a,
.listing-section-heading span {
    color: var(--rehberim-primary);
    font-size: 12px;
    font-weight: 700;
}

.listing-doping-section {
    border-color: color-mix(in srgb, var(--rehberim-secondary) 26%, var(--rehberim-border));
    background: linear-gradient(180deg, color-mix(in srgb, var(--rehberim-secondary) 8%, var(--rehberim-surface)) 0%, var(--rehberim-surface) 100%);
}

.listing-doping-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 12px;
}

.listing-featured-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.listing-results-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 12px;
}

.listing-archive-card {
    min-width: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--rehberim-border);
    border-radius: 9px;
    background: var(--rehberim-surface);
    box-shadow: 0 6px 18px color-mix(in srgb, var(--rehberim-shadow) 5%, transparent);
}

.listing-archive-card-doping {
    border-color: color-mix(in srgb, var(--rehberim-secondary) 40%, var(--rehberim-border));
}

.listing-archive-card-featured {
    border-color: color-mix(in srgb, var(--rehberim-primary) 25%, var(--rehberim-border));
}

.listing-archive-image {
    position: relative;
    display: block;
    aspect-ratio: 16 / 9.5;
    overflow: hidden;
    background: var(--rehberim-soft-surface);
}

.listing-archive-image img,
.listing-archive-image .rehberim-image-placeholder {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform .22s ease;
}

.listing-archive-card:hover .listing-archive-image img {
    transform: scale(1.025);
}

.listing-status-label {
    position: absolute;
    top: 8px;
    left: 8px;
    z-index: 2;
    display: inline-flex;
    padding: 4px 8px;
    border-radius: 5px;
    background: var(--rehberim-primary);
    color: var(--rehberim-contrast-text);
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
}

.listing-archive-card-doping .listing-status-label {
    background: var(--rehberim-secondary);
    color: var(--rehberim-text);
}

.listing-archive-card-body {
    display: flex;
    flex: 1;
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
    padding: 11px;
}

.listing-archive-card h3 {
    width: 100%;
    margin: 0;
    font-size: 14px;
    line-height: 1.35;
}

.listing-archive-card h3 a {
    display: block;
    color: var(--rehberim-text);
    overflow-wrap: anywhere;
}

.listing-archive-category,
.listing-archive-location {
    margin: 4px 0 0;
    color: var(--rehberim-muted);
    font-size: 11px;
    line-height: 1.35;
}

.listing-archive-card-footer {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-top: auto;
    padding-top: 10px;
}

.listing-archive-price {
    min-width: 0;
    color: var(--rehberim-primary);
    font-size: 13px;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.listing-archive-card-footer .button {
    flex: 0 0 auto;
    min-height: 30px;
    padding: 5px 10px;
    font-size: 11px;
}

.listing-results-section .empty-message,
.listing-featured-section .empty-message,
.listing-doping-section .empty-message {
    margin: 0;
    padding: 18px;
    border-radius: 8px;
    background: var(--rehberim-soft-surface);
    color: var(--rehberim-muted);
}

.listing-pagination {
    margin-top: 18px;
}

.listing-pagination .page-numbers {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 7px;
    margin: 0;
    padding: 0;
}

.listing-pagination .page-numbers a,
.listing-pagination .page-numbers span {
    min-width: 38px;
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 7px 10px;
    border: 1px solid var(--rehberim-border);
    border-radius: 7px;
    background: var(--rehberim-surface);
    color: var(--rehberim-text);
}

.listing-pagination .page-numbers .current {
    background: var(--rehberim-primary);
    border-color: var(--rehberim-primary);
    color: var(--rehberim-contrast-text);
}

@media (max-width: 1380px) {
    .listing-archive-filter {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .listing-archive-layout {
        grid-template-columns: 200px minmax(0, 1fr) 260px;
    }

    .listing-doping-grid,
    .listing-results-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

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

@media (max-width: 1080px) {
    .listing-archive-layout {
        grid-template-columns: 210px minmax(0, 1fr);
    }

    .listing-archive-right-sidebar {
        grid-column: 1 / -1;
        grid-template-columns: 1fr 1fr;
    }

    .listing-archive-right-sidebar .rehberim-ad:last-child {
        min-height: 250px;
    }
}

@media (max-width: 820px) {
    .listing-archive-filter {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .listing-archive-layout {
        grid-template-columns: 1fr;
    }

    .listing-archive-left-sidebar,
    .listing-archive-right-sidebar {
        grid-column: auto;
    }

    .listing-archive-left-sidebar {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .listing-doping-grid,
    .listing-featured-grid,
    .listing-results-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 560px) {
    .listing-archive-hero-inner {
        min-height: 230px;
        padding-block: 30px;
    }

    .listing-archive-filter,
    .listing-archive-left-sidebar,
    .listing-archive-right-sidebar,
    .listing-doping-grid,
    .listing-featured-grid,
    .listing-results-grid {
        grid-template-columns: 1fr;
    }

    .listing-filter-clear {
        justify-content: flex-start;
    }
}

.submit-package-description {
    width: 100%;
    margin: 0 0 16px;
    color: var(--rehberim-muted);
    font-size: 13px;
    line-height: 1.55;
}

/* v90 - Yenilenen firma kartları */
.firm-image,
.firm-archive-logo,
.firm-sidebar-thumb {
    background: #ffffff;
}

.firm-image .firm-logo-image,
.firm-archive-logo .firm-logo-image,
.firm-sidebar-thumb .firm-logo-image {
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    object-fit: contain;
    object-position: center;
    padding: 14px;
    background: #ffffff;
    transform: none;
}

.firm-sidebar-thumb .firm-logo-image {
    padding: 5px;
}

.firm-image .firm-cover-image,
.firm-archive-logo .firm-cover-image,
.firm-sidebar-thumb .firm-cover-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.firm-card:hover .firm-logo-image,
.firm-archive-card:hover .firm-logo-image {
    transform: none;
}

.firm-image-placeholder {
    background:
        linear-gradient(135deg, transparent 44%, rgba(18,63,120,.08) 45%, rgba(18,63,120,.08) 55%, transparent 56%),
        var(--rehberim-soft-surface);
}

.firm-card-body {
    gap: 12px;
    padding: 16px;
}

.firm-card-title-row {
    width: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
}

.firm-card-title-row h3 {
    min-width: 0;
    flex: 1;
    font-size: 17px;
}

.firm-card-title-row h3 a {
    overflow-wrap: anywhere;
}

.firm-card-rating {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 27px;
    padding: 4px 8px;
    border-radius: 999px;
    background: rgba(196,138,34,.13);
    color: #8a5b12;
    font-size: 11px;
    font-weight: 800;
    white-space: nowrap;
}

.firm-card-excerpt {
    width: 100%;
    min-height: 58px;
    margin: 0;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    color: var(--rehberim-muted);
    font-size: 13px;
    line-height: 1.48;
}

.firm-card-info-grid {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.firm-card-info-grid > div {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
    padding: 9px 10px;
    border: 1px solid var(--rehberim-border);
    border-radius: 9px;
    background: var(--rehberim-soft-surface);
}

.firm-card-info-grid span {
    color: var(--rehberim-muted);
    font-size: 10px;
    font-weight: 700;
}

.firm-card-info-grid strong {
    margin: 0;
    overflow: hidden;
    color: var(--rehberim-text);
    font-size: 12px;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.firm-card .firm-card-detail-button {
    width: 100%;
    margin-top: auto;
    text-align: center;
}

.doping-card .firm-card-info-grid > div {
    background: color-mix(in srgb, var(--rehberim-surface) 94%, var(--rehberim-secondary));
}

/* Firma arşivi kartları */
.firm-archive-card-body {
    gap: 9px;
    padding: 14px;
}

.firm-archive-card h3 {
    font-size: 15px;
}

.firm-archive-card h3 a {
    overflow-wrap: anywhere;
}

.firm-archive-excerpt {
    min-height: 47px;
    margin: 0;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    color: var(--rehberim-muted);
    font-size: 11px;
    line-height: 1.45;
}

.firm-archive-info-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
}

.firm-archive-info-grid > div {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 8px 9px;
    border-radius: 8px;
    border: 1px solid var(--rehberim-border);
    background: var(--rehberim-soft-surface);
}

.firm-archive-info-grid span {
    color: var(--rehberim-muted);
    font-size: 9px;
    font-weight: 700;
}

.firm-archive-info-grid strong {
    overflow: hidden;
    color: var(--rehberim-text);
    font-size: 10px;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.firm-archive-actions {
    width: 100%;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 9px;
    align-items: end;
    margin-top: auto;
    padding-top: 4px;
}

.firm-archive-contact-group {
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
}

.firm-archive-actions .button {
    margin-left: 0;
    align-self: end;
}

.firm-archive-card-premium .firm-archive-info-grid,
.firm-archive-card-featured .firm-archive-info-grid {
    grid-template-columns: 1fr;
}

.firm-archive-card-premium .firm-archive-actions,
.firm-archive-card-featured .firm-archive-actions {
    grid-template-columns: 1fr;
}

.firm-archive-card-premium .firm-archive-actions .button,
.firm-archive-card-featured .firm-archive-actions .button {
    width: 100%;
}

.firm-archive-card-featured .firm-archive-actions .firm-contact-link {
    display: inline-flex;
}

@media (max-width: 1180px) {
    .firm-card-excerpt {
        min-height: 0;
    }
}

@media (max-width: 640px) {
    .firm-card-info-grid,
    .firm-archive-info-grid {
        grid-template-columns: 1fr;
    }

    .firm-archive-actions {
        grid-template-columns: 1fr;
    }

    .firm-archive-actions .button {
        width: 100%;
    }
}

/* v91: Nizami firma kartları, detaylı ilan kartları ve renkli paketler */
.firm-card-title-row h3 {
    min-height: 42px;
    max-height: 42px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    font-size: 15px;
    line-height: 1.4;
}

.firm-card-title-row h3 a {
    overflow-wrap: break-word;
}

.firm-card-excerpt {
    min-height: 58px;
    max-height: 58px;
}

.firm-card-info-grid {
    min-height: 58px;
}

.home-listing-grid {
    align-items: stretch;
}

.home-listing-card {
    min-height: 100%;
}

.home-listing-card .listing-card-body {
    width: 100%;
    gap: 11px;
    padding: 15px;
}

.listing-card-label-row {
    width: 100%;
    min-height: 26px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.listing-card-label-row .listing-label {
    margin: 0;
}

.listing-type-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 24px;
    padding: 4px 8px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--rehberim-primary) 9%, var(--rehberim-surface));
    color: var(--rehberim-primary);
    font-size: 10px;
    font-weight: 800;
    white-space: nowrap;
}

.home-listing-card h3 {
    min-height: 44px;
    max-height: 44px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    font-size: 15px;
    line-height: 1.45;
}

.listing-card-excerpt {
    min-height: 58px;
    max-height: 58px;
    margin: 0;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    color: var(--rehberim-muted);
    font-size: 12px;
    line-height: 1.55;
}

.listing-card-details {
    width: 100%;
    min-height: 102px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
}

.listing-card-details > div {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
    padding: 8px 9px;
    border: 1px solid var(--rehberim-border);
    border-radius: 9px;
    background: var(--rehberim-soft-surface);
}

.listing-card-details > div.full-width {
    grid-column: 1 / -1;
}

.listing-card-details span {
    color: var(--rehberim-muted);
    font-size: 9px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .025em;
}

.listing-card-details strong {
    overflow: hidden;
    color: var(--rehberim-text);
    font-size: 11px;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.listing-card-footer {
    width: 100%;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 10px;
    margin-top: auto;
    padding-top: 4px;
}

.listing-card-footer > div {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.listing-card-footer .listing-price {
    margin: 0;
    color: var(--rehberim-primary);
    font-size: 16px;
    line-height: 1.2;
}

.listing-card-footer time {
    color: var(--rehberim-muted);
    font-size: 10px;
}

.listing-card-footer .button {
    flex: 0 0 auto;
    margin-top: 0;
}

.home-doping-packages-grid {
    align-items: stretch;
}

.home-doping-package-card {
    display: grid;
    grid-template-rows: auto 48px 72px auto 1fr auto;
    align-content: stretch;
    overflow: visible;
    padding: 22px 20px 20px;
    border-width: 2px;
    box-shadow: 0 14px 30px color-mix(in srgb, var(--rehberim-shadow) 8%, transparent);
}

.home-doping-package-card.level-standard {
    border-color: var(--rehberim-pkg-basic-accent);
    background: linear-gradient(180deg, var(--rehberim-pkg-basic-bg) 0%, var(--rehberim-surface) 78%);
}

.home-doping-package-card.level-premium {
    border-color: var(--rehberim-pkg-premium-accent);
    background: linear-gradient(180deg, var(--rehberim-pkg-premium-bg) 0%, var(--rehberim-surface) 78%);
    box-shadow: 0 16px 34px color-mix(in srgb, var(--rehberim-pkg-premium-accent) 17%, transparent);
}

.home-doping-package-card.level-showcase {
    border-color: var(--rehberim-pkg-showcase-accent);
    background: linear-gradient(180deg, var(--rehberim-pkg-showcase-bg) 0%, var(--rehberim-surface) 78%);
    box-shadow: 0 16px 34px color-mix(in srgb, var(--rehberim-pkg-showcase-accent) 17%, transparent);
}

.home-doping-package-card.level-standard .home-doping-package-icon {
    background: color-mix(in srgb, var(--rehberim-pkg-basic-accent) 13%, var(--rehberim-surface));
    border-color: color-mix(in srgb, var(--rehberim-pkg-basic-accent) 35%, var(--rehberim-border));
}

.home-doping-package-card.level-premium .home-doping-package-icon {
    background: color-mix(in srgb, var(--rehberim-pkg-premium-accent) 13%, var(--rehberim-surface));
    border-color: color-mix(in srgb, var(--rehberim-pkg-premium-accent) 35%, var(--rehberim-border));
}

.home-doping-package-card.level-showcase .home-doping-package-icon {
    background: color-mix(in srgb, var(--rehberim-pkg-showcase-accent) 13%, var(--rehberim-surface));
    border-color: color-mix(in srgb, var(--rehberim-pkg-showcase-accent) 35%, var(--rehberim-border));
}

.home-doping-package-card.level-standard .home-doping-package-icon span,
.home-doping-package-card.level-standard .home-doping-package-price,
.home-doping-package-card.level-standard .home-doping-package-price strong {
    color: var(--rehberim-pkg-basic-accent);
    border-color: var(--rehberim-pkg-basic-accent);
}

.home-doping-package-card.level-premium .home-doping-package-icon span,
.home-doping-package-card.level-premium .home-doping-package-price,
.home-doping-package-card.level-premium .home-doping-package-price strong {
    color: var(--rehberim-pkg-premium-accent);
    border-color: var(--rehberim-pkg-premium-accent);
}

.home-doping-package-card.level-showcase .home-doping-package-icon span,
.home-doping-package-card.level-showcase .home-doping-package-price,
.home-doping-package-card.level-showcase .home-doping-package-price strong {
    color: var(--rehberim-pkg-showcase-accent);
    border-color: var(--rehberim-pkg-showcase-accent);
}

.home-doping-package-card h3 {
    min-height: 48px;
    max-height: 48px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    font-size: 17px;
    line-height: 1.4;
}

.home-doping-package-card p {
    min-height: 72px;
    max-height: 72px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    margin: 8px 0 14px;
    line-height: 1.5;
}

.home-doping-package-features {
    min-height: 174px;
    align-content: start;
}

.home-doping-package-card.level-standard .home-doping-package-features li::before {
    background: var(--rehberim-pkg-basic-accent);
}

.home-doping-package-card.level-premium .home-doping-package-features li::before {
    background: var(--rehberim-pkg-premium-accent);
}

.home-doping-package-card.level-showcase .home-doping-package-features li::before {
    background: var(--rehberim-pkg-showcase-accent);
}

.home-doping-package-card.level-standard .button {
    border-color: var(--rehberim-pkg-basic-accent);
    background: var(--rehberim-pkg-basic-accent);
}

.home-doping-package-card.level-premium .button,
.home-doping-package-card.level-premium .home-doping-package-badge {
    border-color: var(--rehberim-pkg-premium-accent);
    background: var(--rehberim-pkg-premium-accent);
}

.home-doping-package-card.level-showcase .button,
.home-doping-package-card.level-showcase .home-doping-package-badge {
    border-color: var(--rehberim-pkg-showcase-accent);
    background: var(--rehberim-pkg-showcase-accent);
}

.home-doping-package-card .button {
    min-height: 48px;
    color: var(--rehberim-contrast-text);
    font-size: 15px;
}

@media (max-width: 720px) {
    .firm-card-title-row h3,
    .firm-card-excerpt,
    .home-listing-card h3,
    .listing-card-excerpt,
    .home-doping-package-card h3,
    .home-doping-package-card p {
        min-height: 0;
        max-height: none;
    }

    .listing-card-details {
        min-height: 0;
        grid-template-columns: 1fr;
    }

    .listing-card-details > div.full-width {
        grid-column: auto;
    }

    .listing-card-footer {
        align-items: stretch;
        flex-direction: column;
    }

    .listing-card-footer .button {
        width: 100%;
    }

    .home-doping-package-card {
        grid-template-rows: auto;
    }

    .home-doping-package-features {
        min-height: 0;
    }
}


/* v92 - paket ikon kaldırma, kart ayırıcı ve ilan fiyat düzeltmeleri */
.home-doping-package-card {
    grid-template-rows: 48px 72px auto 1fr auto;
    padding-top: 20px;
}

.home-doping-package-icon {
    display: none !important;
}

.home-doping-package-card h3 {
    align-self: start;
}

.firm-image {
    position: relative;
    border-bottom: 1px solid var(--rehberim-border);
}

.firm-card-body {
    padding-top: 18px;
}

.listing-card-footer {
    align-items: center;
    flex-wrap: nowrap;
    gap: 12px;
}

.listing-card-footer > div {
    flex: 1 1 auto;
    min-width: 0;
}

.listing-card-footer .listing-price {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: clamp(1.15rem, 1.55vw, 1.5rem);
    line-height: 1.15;
    letter-spacing: -0.01em;
}

.listing-card-footer time {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.listing-card-footer .button {
    flex: 0 0 auto;
    min-width: 94px;
}

@media (max-width: 640px) {
    .listing-card-footer {
        align-items: stretch;
    }

    .listing-card-footer .listing-price {
        font-size: 1.15rem;
    }
}


/* v93 - ilan kartı fiyat ve buton düzeni */
.listing-card-footer {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
    margin-top: auto;
    padding-top: 8px;
}

.listing-card-footer .listing-price {
    width: 100%;
    display: block;
    text-align: left;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: clamp(1.5rem, 2vw, 2rem);
    line-height: 1.1;
    font-weight: 800;
    color: var(--rehberim-primary);
}

.listing-card-footer .listing-detail-button {
    width: 140px;
    justify-content: center;
    text-align: center;
    margin: 0 auto;
    border-color: #ff7a1a;
    background: #ff7a1a;
    color: #ffffff;
    box-shadow: 0 10px 18px rgba(255, 122, 26, 0.22);
}

.listing-card-footer .listing-detail-button:hover,
.listing-card-footer .listing-detail-button:focus {
    border-color: #e76506;
    background: #e76506;
    color: #ffffff;
}


/* v94 - ilan fiyat alanını profesyonel dengeleme */
.listing-card-footer {
    gap: 10px;
    padding-top: 10px;
}

.listing-card-footer .listing-price {
    width: 100%;
    display: block;
    text-align: left;
    white-space: nowrap;
    overflow: visible;
    text-overflow: clip;
    font-size: clamp(1.18rem, 1.45vw, 1.42rem);
    line-height: 1.2;
    letter-spacing: -0.01em;
    font-weight: 800;
    color: var(--rehberim-primary);
}

.listing-card-footer .listing-detail-button {
    width: 132px;
    padding-top: 11px;
    padding-bottom: 11px;
    border-radius: 12px;
    font-size: 0.98rem;
    font-weight: 700;
}

@media (max-width: 640px) {
    .listing-card-footer .listing-price {
        font-size: 1.12rem;
    }
}


/* v95 - firma arşivi kurumsal görünüm iyileştirmeleri */
.firm-archive-top-ad .rehberim-ad {
    max-width: 1200px;
    min-height: 150px;
    height: 150px;
    margin-inline: auto;
    overflow: hidden;
    border-radius: 12px;
}

.firm-archive-top-ad .rehberim-ad > img,
.firm-archive-top-ad .rehberim-ad img,
.firm-archive-top-ad .rehberim-ad iframe,
.firm-archive-top-ad .rehberim-ad ins,
.firm-archive-top-ad .rehberim-ad > a {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    display: block;
}

.firm-archive-top-ad .rehberim-ad img {
    object-fit: cover;
}

.firm-archive-hero {
    grid-template-columns: minmax(0, .88fr) minmax(380px, 1.12fr);
}

.firm-archive-hero.has-background-image {
    background: linear-gradient(110deg, var(--rehberim-hero-start), var(--rehberim-hero-end));
}

.firm-archive-hero.has-background-image::before {
    background: linear-gradient(90deg, color-mix(in srgb, var(--rehberim-surface) 96%, transparent) 0%, color-mix(in srgb, var(--rehberim-surface) 92%, transparent) 40%, color-mix(in srgb, var(--rehberim-surface) 46%, transparent) 66%, transparent 100%);
}

.firm-archive-hero-media {
    position: relative;
    min-height: 265px;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

.firm-archive-hero-media::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0));
}

.firm-archive-category-strip {
    grid-template-columns: repeat(5, minmax(150px, 1fr));
    gap: 12px;
}

.firm-archive-category-card {
    min-height: 118px;
    gap: 8px;
    justify-content: center;
    padding: 14px 10px;
}

.firm-archive-category-card::before {
    display: none;
}

.firm-archive-category-card .category-card-media {
    width: 48px;
    height: 48px;
    margin-bottom: 2px;
}

.firm-archive-category-card strong {
    font-size: 14px;
}

.firm-archive-category-card span {
    font-size: 11px;
}

.firm-archive-premium-band {
    padding: 24px;
    border-radius: 16px;
    border-color: color-mix(in srgb, var(--rehberim-secondary) 42%, var(--rehberim-premium-surface));
    box-shadow: 0 18px 38px color-mix(in srgb, var(--rehberim-shadow) 12%, transparent);
}

.firm-archive-premium-heading,
.firm-archive-section .section-heading {
    margin-bottom: 18px;
}

.firm-archive-premium-grid,
.firm-archive-featured-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    overflow: visible;
}

.firm-archive-card-premium,
.firm-archive-card-featured {
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 14px 28px color-mix(in srgb, var(--rehberim-shadow) 8%, transparent);
}

.firm-archive-card-premium {
    border-width: 1px;
}

.firm-archive-card-premium:first-child {
    border-width: 1px;
    box-shadow: 0 14px 28px color-mix(in srgb, var(--rehberim-shadow) 10%, transparent);
}

.firm-archive-card-premium .firm-archive-logo,
.firm-archive-card-featured .firm-archive-logo {
    min-height: 160px;
    aspect-ratio: 16 / 8.7;
    border-bottom: 1px solid var(--rehberim-border);
}

.firm-archive-card-topline {
    min-height: auto;
    margin-bottom: 8px;
}

.firm-status-label {
    max-width: none;
    border-radius: 999px;
    padding: 5px 10px;
    font-size: 11px;
}

.firm-archive-card h3 {
    font-size: 16px;
    min-height: 42px;
}

.firm-archive-excerpt {
    margin-top: 6px;
    min-height: 54px;
    font-size: 12px;
    line-height: 1.55;
}

.firm-archive-card-premium .firm-archive-info-grid,
.firm-archive-card-featured .firm-archive-info-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin-top: 12px;
}

.firm-archive-card-premium .firm-archive-info-grid > div,
.firm-archive-card-featured .firm-archive-info-grid > div {
    padding: 10px 11px;
    border-radius: 10px;
}

.firm-archive-card-premium .firm-archive-info-grid strong,
.firm-archive-card-featured .firm-archive-info-grid strong {
    font-size: 12px;
}

.firm-archive-card-premium .firm-archive-actions,
.firm-archive-card-featured .firm-archive-actions {
    gap: 10px;
    padding-top: 12px;
}

.firm-archive-card-premium .firm-contact-link,
.firm-archive-card-featured .firm-contact-link {
    font-size: 12px;
}

.firm-archive-card-premium .firm-archive-actions .button,
.firm-archive-card-featured .firm-archive-actions .button {
    min-height: 44px;
    border-radius: 10px;
}

.firm-archive-results-grid .firm-archive-card-standard {
    min-height: 148px;
}

.firm-archive-card-standard .firm-archive-excerpt {
    min-height: 42px;
    margin-bottom: 4px;
}

.firm-archive-card-standard .firm-archive-actions {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
}

.firm-archive-card-standard .firm-archive-logo {
    border-right: 1px solid var(--rehberim-border);
}

@media (max-width: 1180px) {
    .firm-archive-premium-grid,
    .firm-archive-featured-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    

    .firm-archive-category-strip {
        grid-template-columns: repeat(5, minmax(134px, 1fr));
    }
}

@media (max-width: 780px) {
    .firm-archive-top-ad .rehberim-ad {
        height: auto;
        min-height: 90px;
        aspect-ratio: 12 / 1.5;
    }

    .firm-archive-hero {
        grid-template-columns: 1fr;
    }

    .firm-archive-hero-media,
    .firm-archive-hero-art {
        min-height: 220px;
    }

    .firm-archive-category-strip,
    .firm-archive-premium-grid,
    .firm-archive-featured-grid,
    .firm-archive-results-grid {
        grid-template-columns: 1fr;
    }
}


/* v96 - Tum Firmalar kartlarini 2 kolon ve daha saglikli gorsel alani */
.firm-archive-results-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.firm-archive-results-grid .firm-archive-card-standard {
    min-height: 188px;
    border-radius: 12px;
}

.firm-archive-card-standard .firm-archive-logo {
    flex: 0 0 165px;
    min-height: 188px;
    background: var(--rehberim-surface);
}

.firm-archive-card-standard .firm-archive-logo .rehberim-card-image,
.firm-archive-card-standard .firm-archive-logo .rehberim-image-placeholder {
    object-fit: contain;
    padding: 18px;
    background: var(--rehberim-surface);
}

.firm-archive-card-standard .firm-archive-card-body {
    padding: 16px 18px;
}

.firm-archive-card-standard .firm-archive-card-topline {
    margin-bottom: 10px;
}

.firm-archive-card-standard h3 {
    font-size: 17px;
    line-height: 1.28;
}

.firm-archive-card-standard .firm-archive-excerpt {
    min-height: 56px;
    margin-top: 8px;
    margin-bottom: 10px;
    font-size: 12px;
    line-height: 1.55;
}

.firm-archive-card-standard .firm-archive-actions {
    gap: 10px;
    padding-top: 8px;
}

.firm-archive-card-standard .firm-contact-link {
    font-size: 12px;
}

.firm-archive-card-standard .button {
    min-width: 134px;
    min-height: 42px;
    border-radius: 10px;
}

@media (max-width: 1180px) {
    .firm-archive-results-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 780px) {
    

    .firm-archive-card-standard .firm-archive-logo {
        flex-basis: auto;
        min-height: 180px;
        border-right: 0;
        border-bottom: 1px solid var(--rehberim-border);
    }

    .firm-archive-card-standard .firm-archive-logo .rehberim-card-image,
    .firm-archive-card-standard .firm-archive-logo .rehberim-image-placeholder {
        padding: 14px;
    }
}


/* v97 - firmalar arşivi tasarım düzenlemeleri */
.firm-archive-top-ad {
    width: min(100%, calc(var(--rehberim-shell-width) + 24px));
}

.firm-archive-top-ad .rehberim-ad {
    width: 100%;
    max-width: none;
    min-height: 150px;
    height: 150px;
}

.firm-archive-hero.has-background-image::before,
.firm-archive-hero-media::after {
    display: none;
}

.firm-archive-hero.has-background-image {
    background: #eef3f7;
}

.firm-archive-hero-media {
    background-size: contain;
    background-position: center center;
    background-color: #eef3f7;
}

.firm-archive-category-strip {
    display: flex;
    flex-wrap: nowrap;
    gap: 14px;
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: 8px;
    scrollbar-width: thin;
}

.firm-archive-category-card {
    flex: 0 0 168px;
    min-height: 116px;
}

.firm-archive-results-grid .firm-archive-card-standard {
    grid-template-columns: 132px minmax(0,1fr);
    min-height: 172px;
    align-items: stretch;
}

.firm-archive-card-standard .firm-archive-logo {
    flex: 0 0 132px;
    min-height: 172px;
    background: linear-gradient(180deg, #f9fbfc 0%, #f1f4f7 100%);
}

.firm-archive-card-standard .firm-archive-logo .rehberim-card-image,
.firm-archive-card-standard .firm-archive-logo .rehberim-image-placeholder {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 20px;
}

.firm-archive-card-standard .firm-archive-card-body {
    display: flex;
    flex-direction: column;
    padding: 16px 18px;
}

.firm-archive-card-standard .firm-archive-card-topline {
    margin-bottom: 12px;
}

.firm-archive-card-standard h3 {
    font-size: 16px;
    line-height: 1.28;
    margin-bottom: 10px;
}

.firm-archive-card-standard .firm-archive-excerpt {
    min-height: 46px;
    margin: 0 0 12px;
    line-height: 1.55;
}

.firm-archive-card-standard .firm-archive-actions {
    margin-top: auto;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 14px;
}

.firm-archive-card-standard .firm-archive-contact-group {
    gap: 5px;
}

.firm-archive-card-standard .button {
    min-width: 146px;
}

.firm-archive-card-premium .firm-archive-actions,
.firm-archive-card-featured .firm-archive-actions {
    grid-template-columns: 1fr;
    gap: 12px;
}

.firm-archive-contact-group-premium {
    display: grid;
    grid-template-columns: minmax(0,1fr) minmax(0,1fr);
    gap: 10px;
    align-items: stretch;
}

.firm-whatsapp-button {
    min-height: 42px;
    justify-content: center;
    text-align: center;
    background: #1f9d55;
    border-color: #1f9d55;
    color: #fff;
    box-shadow: 0 10px 18px rgba(31,157,85,.16);
}

.firm-whatsapp-button:hover,
.firm-whatsapp-button:focus {
    background: #187c43;
    border-color: #187c43;
    color: #fff;
}

.firm-contact-meta {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 42px;
    padding: 8px 12px;
    border: 1px solid var(--rehberim-border);
    border-radius: 10px;
    background: #f6f8fa;
}

.firm-contact-meta span {
    display: block;
    font-size: 11px;
    color: var(--rehberim-muted);
    margin-bottom: 2px;
}

.firm-contact-meta strong {
    display: block;
    font-size: 13px;
    color: var(--rehberim-text);
}

@media (max-width: 780px) {
    .firm-archive-top-ad .rehberim-ad {
        height: auto;
        aspect-ratio: 12 / 1.5;
    }

    .firm-archive-card-standard {
        flex-direction: column;
    }

    .firm-archive-results-grid .firm-archive-card-standard {
        grid-template-columns: 1fr;
    }

    .firm-archive-card-standard .firm-archive-logo {
        min-height: 160px;
        flex-basis: auto;
        border-right: 0;
        border-bottom: 1px solid var(--rehberim-border);
    }

    .firm-archive-card-standard .firm-archive-actions {
        flex-direction: column;
        align-items: stretch;
    }

    .firm-archive-contact-group-premium {
        grid-template-columns: 1fr;
    }
}


/* v98 - kategori seridi ve Tum Firmalar kart sadelestirme */
.firm-archive-category-strip {
    display: grid;
    grid-template-columns: repeat(10, minmax(0, 1fr));
    gap: 10px;
    overflow: visible;
    padding-bottom: 0;
}

.firm-archive-category-card {
    flex: initial;
    min-height: 96px;
    padding: 10px 8px;
    gap: 6px;
}

.firm-archive-category-card .category-card-media {
    width: 34px;
    height: 34px;
}

.firm-archive-category-card strong {
    font-size: 12px;
    line-height: 1.25;
}

.firm-archive-category-card span {
    font-size: 10px;
}

.firm-archive-results-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.firm-archive-results-grid .firm-archive-card-standard {
    display: flex;
    flex-direction: column;
    min-height: 320px;
}

.firm-archive-card-standard .firm-archive-logo {
    flex: 0 0 auto;
    width: 100%;
    min-height: 118px;
    aspect-ratio: 16 / 8.4;
    border-right: 0;
    border-bottom: 1px solid var(--rehberim-border);
    background: var(--rehberim-soft-surface);
}

.firm-archive-card-standard .firm-archive-logo .rehberim-card-image,
.firm-archive-card-standard .firm-archive-logo .rehberim-image-placeholder {
    width: 100%;
    height: 100%;
    padding: 0;
    object-fit: cover;
}

.firm-archive-card-standard .firm-archive-card-body {
    padding: 14px 16px 16px;
}


.firm-archive-card-standard h3 {
    font-size: 15px;
    line-height: 1.32;
    min-height: 40px;
    margin-bottom: 8px;
}

.firm-archive-card-standard .firm-archive-excerpt {
    min-height: 48px;
    margin: 0;
    font-size: 12px;
    line-height: 1.55;
}

.firm-archive-card-standard .firm-archive-actions {
    margin-top: auto;
    padding-top: 14px;
    display: block;
}

.firm-archive-card-standard .firm-archive-actions .button {
    width: 100%;
    margin-left: 0;
    min-width: 0;
    min-height: 40px;
}

@media (max-width: 1400px) {
    .firm-archive-category-strip {
        grid-template-columns: repeat(8, minmax(0, 1fr));
        overflow-x: auto;
        padding-bottom: 6px;
    }
}

@media (max-width: 1180px) {
    .firm-archive-results-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 780px) {
    .firm-archive-category-strip {
        display: flex;
        flex-wrap: nowrap;
        overflow-x: auto;
    }

    .firm-archive-category-card {
        flex: 0 0 132px;
    }

    .firm-archive-results-grid {
        grid-template-columns: 1fr;
    }
}


/* v99 - kart medya ve hero arkaplan düzeltmeleri */
.firm-contact-meta {
    overflow: hidden;
}

.firm-contact-meta strong {
    font-size: 12px;
    line-height: 1.35;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.firm-archive-card-standard .firm-archive-logo,
.firm-archive-card-premium .firm-archive-logo,
.firm-archive-card-featured .firm-archive-logo {
    background: #ffffff;
}

.firm-archive-card-standard .firm-archive-logo .rehberim-card-image,
.firm-archive-card-standard .firm-archive-logo .rehberim-image-placeholder,
.firm-archive-card-premium .firm-archive-logo .rehberim-card-image,
.firm-archive-card-premium .firm-archive-logo .rehberim-image-placeholder,
.firm-archive-card-featured .firm-archive-logo .rehberim-card-image,
.firm-archive-card-featured .firm-archive-logo .rehberim-image-placeholder {
    width: 100%;
    height: 100%;
    object-fit: contain;
    background: #ffffff;
    padding: 12px;
}

.firm-archive-hero.has-background-image {
    position: relative;
    display: block;
    min-height: 360px;
    background: #eef3f7;
    overflow: hidden;
}

.firm-archive-hero.has-background-image::before {
    display: none !important;
}

.firm-archive-hero.has-background-image .firm-archive-hero-media {
    position: absolute;
    inset: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    min-height: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    display: block;
}

.firm-archive-hero.has-background-image .firm-archive-hero-copy {
    position: relative;
    z-index: 2;
    max-width: 620px;
    padding: 38px 32px;
}

@media (max-width: 780px) {
    .firm-archive-hero.has-background-image {
        min-height: 300px;
    }

    .firm-archive-hero.has-background-image .firm-archive-hero-copy {
        max-width: 100%;
        padding: 26px 20px;
    }
}


/* v100 - uzun alan adı yerine web sitesi bağlantısı */
.firm-website-link {
    text-decoration: none;
    transition: border-color .2s ease, background-color .2s ease, transform .2s ease;
}

.firm-website-link strong {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.firm-website-link:hover,
.firm-website-link:focus {
    border-color: var(--rehberim-primary);
    background: color-mix(in srgb, var(--rehberim-primary) 7%, #ffffff);
    transform: translateY(-1px);
}

/* v101 - yeni Tüm İlanlar kategori sayfası */
.listing-directory-main {
    padding: 20px 0 48px;
    background: #f6f8fb;
}

.listing-directory-shell {
    display: grid;
    gap: 16px;
}

.listing-directory-top-ad .listing-archive-ad,
.listing-directory-bottom-ad .listing-archive-ad,
.listing-directory-middle-ad .listing-archive-ad {
    width: 100%;
    max-width: 1200px;
    margin-inline: auto;
    overflow: hidden;
    border-radius: 6px;
}

.listing-directory-top-ad .listing-archive-ad {
    min-height: 150px;
    height: 150px;
}

.listing-directory-bottom-ad .listing-archive-ad,
.listing-directory-middle-ad .listing-archive-ad {
    min-height: 90px;
    height: 90px;
}

.listing-directory-top-ad .listing-archive-ad img,
.listing-directory-top-ad .listing-archive-ad iframe,
.listing-directory-top-ad .listing-archive-ad ins,
.listing-directory-bottom-ad .listing-archive-ad img,
.listing-directory-bottom-ad .listing-archive-ad iframe,
.listing-directory-middle-ad .listing-archive-ad img,
.listing-directory-middle-ad .listing-archive-ad iframe {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    display: block;
    object-fit: cover;
}

.listing-directory-breadcrumb {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 9px;
    color: var(--rehberim-muted);
    font-size: 13px;
    padding: 0 14px;
}

.listing-directory-breadcrumb a {
    color: var(--rehberim-primary-dark);
    font-weight: 700;
}

.listing-directory-hero {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, .72fr) minmax(440px, 1.28fr);
    min-height: 270px;
    overflow: hidden;
    border-radius: 10px;
    background: linear-gradient(120deg, #ffffff 0%, #f1f6fb 54%, #e4eef9 100%);
    border: 1px solid var(--rehberim-border);
}

.listing-directory-hero-copy {
    position: relative;
    z-index: 2;
    align-self: center;
    padding: 32px 28px;
}

.listing-directory-eyebrow {
    margin: 0 0 10px;
    color: var(--rehberim-primary);
    font-size: 14px;
    font-weight: 800;
}

.listing-directory-hero h1 {
    margin: 0 0 10px;
    color: var(--rehberim-primary-dark);
    font-size: clamp(2.1rem, 4vw, 3.45rem);
    line-height: 1.02;
}

.listing-directory-hero-copy > p:last-child {
    max-width: 54ch;
    margin: 0;
    color: var(--rehberim-muted);
    font-size: 15px;
    line-height: 1.55;
}

.listing-directory-hero-media {
    min-height: 270px;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

.listing-directory-hero-art {
    position: relative;
    min-height: 270px;
    overflow: hidden;
    background: linear-gradient(180deg, #f8fbff 0%, #e8f1fb 100%);
}

.listing-directory-hero-art::before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 30px;
    height: 2px;
    background: rgba(18,63,120,.18);
}

.listing-skyline {
    position: absolute;
    bottom: 32px;
    display: block;
    background: rgba(47,105,173,.20);
    box-shadow: 32px -34px 0 rgba(47,105,173,.16), 66px -12px 0 rgba(47,105,173,.22), 104px -58px 0 rgba(47,105,173,.14), 146px -26px 0 rgba(47,105,173,.20);
}

.skyline-one { left: 18%; width: 26px; height: 82px; }
.skyline-two { left: 46%; width: 34px; height: 112px; }
.skyline-three { right: 14%; width: 28px; height: 92px; }

.listing-bridge {
    position: absolute;
    left: 6%;
    right: 6%;
    bottom: 58px;
    height: 35px;
    border-bottom: 5px solid rgba(18,63,120,.32);
    border-radius: 0 0 50% 50%;
}

.listing-people {
    position: absolute;
    right: 10%;
    bottom: 32px;
    width: 120px;
    height: 58px;
    background: linear-gradient(90deg, transparent 0 12%, rgba(11,43,84,.85) 12% 18%, transparent 18% 42%, rgba(11,43,84,.78) 42% 49%, transparent 49% 72%, rgba(11,43,84,.88) 72% 79%, transparent 79%);
}

.listing-directory-filter {
    display: grid;
    grid-template-columns: 1.15fr 1fr .82fr .82fr .9fr .82fr auto;
    gap: 12px;
    align-items: end;
    padding: 16px;
    border: 1px solid var(--rehberim-border);
    border-radius: 10px;
    background: var(--rehberim-surface);
    box-shadow: 0 10px 24px rgba(31,41,51,.06);
}

.listing-directory-filter label {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 7px;
}

.listing-directory-filter label > span {
    color: var(--rehberim-text);
    font-size: 11px;
    font-weight: 800;
}

.listing-directory-filter input,
.listing-directory-filter select {
    width: 100%;
    min-width: 0;
    height: 44px;
    padding: 0 13px;
    border: 1px solid var(--rehberim-border);
    border-radius: 7px;
    background: var(--rehberim-input-surface);
    color: var(--rehberim-text);
    font: inherit;
}

.listing-directory-filter button {
    min-width: 110px;
    height: 44px;
    border-radius: 6px;
}

.listing-directory-categories {
    display: grid;
    grid-template-columns: repeat(8, minmax(0,1fr));
    border: 1px solid var(--rehberim-border);
    border-radius: 9px;
    background: var(--rehberim-surface);
    overflow: hidden;
}

.listing-directory-category {
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 14px 10px;
    color: var(--rehberim-text);
    border-right: 1px solid var(--rehberim-border);
}

.listing-directory-category:last-child {
    border-right: 0;
}

.listing-directory-category .category-card-media {
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    border: 0;
    border-radius: 8px;
    background: transparent;
}

.listing-directory-category .category-card-image {
    object-fit: contain;
}

.listing-directory-category > span:last-child {
    min-width: 0;
    display: flex;
    flex-direction: column;
    line-height: 1.2;
}

.listing-directory-category strong {
    overflow: hidden;
    color: var(--rehberim-primary-dark);
    font-size: 13px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.listing-directory-category small {
    margin-top: 3px;
    color: var(--rehberim-muted);
    font-size: 11px;
}

.listing-directory-doping,
.listing-directory-results {
    padding: 14px;
    border: 1px solid var(--rehberim-border);
    border-radius: 10px;
    background: var(--rehberim-surface);
}

.listing-directory-doping {
    border-color: rgba(196,138,34,.38);
    background: linear-gradient(180deg, #fffaf0 0%, #fffdf8 100%);
}

.listing-directory-section-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 12px;
}

.listing-directory-section-title > div {
    display: flex;
    align-items: center;
    gap: 9px;
}

.listing-directory-section-title h2 {
    margin: 0;
    color: var(--rehberim-primary-dark);
    font-size: 20px;
}

.listing-directory-section-title > a,
.listing-directory-section-title > span {
    color: var(--rehberim-muted);
    font-size: 12px;
    font-weight: 700;
}

.listing-directory-star {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: var(--rehberim-secondary);
    position: relative;
}

.listing-directory-star::before,
.listing-directory-star::after {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    width: 9px;
    height: 9px;
    background: #fff;
    transform: translate(-50%,-50%) rotate(45deg);
}

.listing-directory-star::after {
    transform: translate(-50%,-50%) rotate(0deg) scale(.58);
    background: var(--rehberim-secondary);
}

.listing-directory-doping-grid,
.listing-directory-results-grid {
    display: grid;
    gap: 12px;
}

.listing-directory-doping-grid {
    grid-template-columns: repeat(3, minmax(0,1fr));
}

.listing-directory-results-grid {
    grid-template-columns: repeat(3, minmax(0,1fr));
}

.listing-directory-main .listing-archive-card {
    min-width: 0;
    display: grid;
    grid-template-columns: 43% minmax(0,57%);
    min-height: 152px;
    overflow: hidden;
    border: 1px solid var(--rehberim-border);
    border-radius: 8px;
    background: var(--rehberim-surface);
    box-shadow: 0 6px 16px rgba(31,41,51,.05);
}

.listing-directory-main .listing-archive-card-doping {
    min-height: 166px;
    border-color: rgba(196,138,34,.24);
}

.listing-directory-main .listing-archive-image {
    min-height: 100%;
    overflow: hidden;
    background: var(--rehberim-soft-surface);
}

.listing-directory-main .listing-archive-image img,
.listing-directory-main .listing-archive-image .rehberim-image-placeholder {
    width: 100%;
    height: 100%;
    min-height: 152px;
    display: block;
    object-fit: cover;
}

.listing-directory-main .listing-archive-card-body {
    min-width: 0;
    display: flex;
    flex-direction: column;
    padding: 11px 12px;
}

.listing-card-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-bottom: 7px;
}

.listing-card-badge {
    display: inline-flex;
    align-items: center;
    min-height: 19px;
    padding: 3px 7px;
    border-radius: 4px;
    font-size: 9px;
    font-weight: 800;
    line-height: 1;
}

.listing-card-badge.category {
    background: var(--rehberim-primary-dark);
    color: #fff;
}

.listing-card-badge.type {
    background: var(--rehberim-secondary);
    color: var(--rehberim-text);
}

.listing-card-badge.doping {
    background: var(--rehberim-primary);
    color: #fff;
}

.listing-directory-main .listing-archive-card h3 {
    margin: 0 0 5px;
    font-size: 14px;
    line-height: 1.28;
}

.listing-directory-main .listing-archive-card h3 a {
    color: var(--rehberim-text);
}

.listing-card-excerpt {
    display: -webkit-box;
    overflow: hidden;
    margin: 0 0 5px;
    color: var(--rehberim-muted);
    font-size: 10px;
    line-height: 1.4;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.listing-directory-main .listing-archive-location {
    margin: auto 0 5px;
    color: var(--rehberim-muted);
    font-size: 10px;
}

.listing-directory-main .listing-archive-card-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-top: auto;
}

.listing-directory-main .listing-archive-price {
    min-width: 0;
    overflow: hidden;
    color: var(--rehberim-primary-dark);
    font-size: 14px;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.listing-directory-main .listing-card-detail {
    flex: 0 0 auto;
    min-width: 72px;
    min-height: 30px;
    padding: 5px 11px;
    border-radius: 4px;
    background: var(--rehberim-primary-dark);
    border-color: var(--rehberim-primary-dark);
    color: #fff;
    justify-content: center;
}

.listing-directory-results .results-title {
    padding-bottom: 8px;
    border-bottom: 2px solid rgba(196,138,34,.32);
}

.listing-directory-main .listing-pagination {
    margin-top: 18px;
}

.listing-directory-main .listing-pagination .page-numbers {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.listing-directory-main .listing-pagination a,
.listing-directory-main .listing-pagination span {
    min-width: 38px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--rehberim-border);
    border-radius: 5px;
    background: #fff;
    color: var(--rehberim-primary-dark);
    padding: 0 10px;
}

.listing-directory-main .listing-pagination .current {
    background: var(--rehberim-primary-dark);
    color: #fff;
    border-color: var(--rehberim-primary-dark);
}

@media (max-width: 1250px) {
    .listing-directory-filter {
        grid-template-columns: repeat(3, minmax(0,1fr));
    }

    .listing-directory-filter button {
        width: 100%;
    }

    .listing-directory-categories {
        grid-template-columns: repeat(4, minmax(0,1fr));
    }

    .listing-directory-category:nth-child(4n) {
        border-right: 0;
    }

    .listing-directory-doping-grid,
    .listing-directory-results-grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
}

@media (max-width: 820px) {
    .listing-directory-top-ad .listing-archive-ad {
        height: auto;
        min-height: 90px;
        aspect-ratio: 8 / 1;
    }

    .listing-directory-hero {
        grid-template-columns: 1fr;
    }

    .listing-directory-hero-media,
    .listing-directory-hero-art {
        min-height: 210px;
    }

    .listing-directory-filter {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }

    .listing-directory-categories {
        display: flex;
        overflow-x: auto;
    }

    .listing-directory-category {
        flex: 0 0 170px;
        border-right: 1px solid var(--rehberim-border);
    }

    .listing-directory-doping-grid,
    .listing-directory-results-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 560px) {
    .listing-directory-filter {
        grid-template-columns: 1fr;
    }

    .listing-directory-hero-copy {
        padding: 24px 20px;
    }

    .listing-directory-main .listing-archive-card {
        grid-template-columns: 1fr;
    }

    .listing-directory-main .listing-archive-image img,
    .listing-directory-main .listing-archive-image .rehberim-image-placeholder {
        min-height: 180px;
    }

    .listing-directory-section-title {
        align-items: flex-start;
        flex-direction: column;
    }
}


/* v102 - ilanlar sayfasi profesyonel duzenleme */
.listing-directory-shell {
    gap: 18px;
}

.listing-directory-top-ad,
.listing-directory-middle-ad,
.listing-directory-bottom-ad {
    width: 100%;
}

.listing-directory-top-ad .listing-archive-ad,
.listing-directory-bottom-ad .listing-archive-ad,
.listing-directory-middle-ad .listing-archive-ad {
    width: 100%;
    max-width: none;
    margin-inline: 0;
    border-radius: 10px;
}


.listing-directory-categories {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 12px;
    border: 0;
    border-radius: 0;
    background: transparent;
    overflow: visible;
}

.listing-directory-category {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 108px;
    padding: 14px 12px;
    border: 1px solid var(--rehberim-border);
    border-radius: 10px;
    background: var(--rehberim-surface);
    box-shadow: 0 8px 18px rgba(31,41,51,.05);
}

.listing-directory-category:last-child {
    border-right: 1px solid var(--rehberim-border);
}

.listing-directory-category .category-card-media {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    border-radius: 12px;
    background: var(--rehberim-soft-surface);
}

.listing-directory-category > span:last-child {
    align-items: center;
    text-align: center;
}

.listing-directory-category strong {
    width: 100%;
    white-space: normal;
    text-overflow: initial;
    font-size: 14px;
    line-height: 1.35;
}

.listing-directory-category small {
    font-size: 12px;
}

.listing-directory-doping,
.listing-directory-results {
    padding: 18px;
    border-radius: 12px;
}

.listing-directory-doping-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 16px;
}

.listing-directory-results-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.listing-directory-main .listing-archive-card {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 12px 28px rgba(31,41,51,.07);
}

.listing-directory-main .listing-archive-card-doping {
    border-color: rgba(196,138,34,.32);
    background: linear-gradient(180deg, #ffffff 0%, #fffaf1 100%);
}

.listing-directory-main .listing-archive-image {
    width: 100%;
    min-height: 0;
    aspect-ratio: 16 / 10;
    background: var(--rehberim-soft-surface);
}

.listing-directory-main .listing-archive-image img,
.listing-directory-main .listing-archive-image .rehberim-image-placeholder {
    width: 100%;
    height: 100%;
    min-height: 0;
    object-fit: cover;
}

.listing-directory-main .listing-archive-card-body {
    padding: 14px 14px 16px;
    flex: 1 1 auto;
}

.listing-card-badges {
    gap: 6px;
    margin-bottom: 10px;
}

.listing-card-badge {
    min-height: 22px;
    padding: 4px 9px;
    border-radius: 999px;
    font-size: 10px;
}

.listing-directory-main .listing-archive-card h3 {
    margin: 0 0 8px;
    font-size: 16px;
    line-height: 1.35;
}

.listing-card-excerpt {
    margin: 0 0 10px;
    font-size: 13px;
    line-height: 1.55;
    -webkit-line-clamp: 2;
    min-height: 40px;
}

.listing-directory-main .listing-archive-location {
    margin: 0 0 12px;
    font-size: 12px;
}

.listing-directory-main .listing-archive-card-footer {
    margin-top: auto;
    padding-top: 10px;
    border-top: 1px solid var(--rehberim-border);
}

.listing-directory-main .listing-archive-price {
    font-size: 18px;
    line-height: 1.2;
}

.listing-directory-main .listing-card-detail {
    min-width: 88px;
    min-height: 36px;
    padding: 7px 14px;
    border-radius: 8px;
}

.listing-directory-doping .empty-message {
    display: none;
}

@media (max-width: 1360px) {
    .listing-directory-doping-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (max-width: 1250px) {
    .listing-directory-categories {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .listing-directory-doping-grid,
    .listing-directory-results-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 820px) {
    .listing-directory-categories {
        display: flex;
        gap: 10px;
        overflow-x: auto;
        padding-bottom: 4px;
    }

    .listing-directory-category {
        flex: 0 0 180px;
    }

    
}


/* v103 - ilan kartlarini masaustunde 4'lu duzen */
.listing-directory-results-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.listing-directory-results-grid .listing-archive-card {
    min-height: 100%;
}

.listing-directory-results-grid .listing-archive-image {
    aspect-ratio: 16 / 10;
}

.listing-directory-results-grid .listing-archive-card h3 {
    font-size: 15px;
}

.listing-directory-results-grid .listing-card-excerpt {
    font-size: 12px;
    min-height: 38px;
}

.listing-directory-results-grid .listing-archive-price {
    font-size: 16px;
}

@media (max-width: 1500px) {
    .listing-directory-results-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 1180px) {
    .listing-directory-results-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 820px) {
    .listing-directory-results-grid {
        grid-template-columns: 1fr;
    }
}

/* v104 - profesyonel İş İlanları sayfası */
.job-directory-main {
    background: var(--rehberim-background);
    padding: 0 0 56px;
}

.job-directory-hero {
    position: relative;
    min-height: 250px;
    background: linear-gradient(120deg, var(--rehberim-primary-dark), var(--rehberim-primary));
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    overflow: hidden;
}

.job-directory-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, color-mix(in srgb, var(--rehberim-primary-dark) 96%, transparent) 0%, color-mix(in srgb, var(--rehberim-primary-dark) 82%, transparent) 54%, color-mix(in srgb, var(--rehberim-primary-dark) 55%, transparent) 100%);
}

.job-directory-hero-inner {
    position: relative;
    z-index: 2;
    min-height: 250px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 32px;
}

.job-directory-hero-copy {
    max-width: 720px;
    padding: 34px 0;
}

.job-directory-eyebrow {
    margin: 0 0 9px;
    color: color-mix(in srgb, var(--rehberim-secondary) 78%, #ffffff);
    font-weight: 800;
    font-size: 13px;
    letter-spacing: .02em;
}

.job-directory-hero h1,
.job-submit-hero h1 {
    margin: 0 0 12px;
    color: var(--rehberim-premium-text);
    font-size: clamp(2.2rem, 4.6vw, 4rem);
    line-height: 1;
}

.job-directory-hero-copy > p:last-child {
    max-width: 68ch;
    margin: 0;
    color: color-mix(in srgb, var(--rehberim-premium-text) 82%, transparent);
    font-size: 16px;
    line-height: 1.65;
}

.job-directory-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    align-items: center;
    color: color-mix(in srgb, var(--rehberim-premium-text) 76%, transparent);
    font-size: 13px;
}

.job-directory-breadcrumb a,
.job-directory-breadcrumb strong {
    color: var(--rehberim-premium-text);
}

.job-directory-shell {
    display: grid;
    gap: 18px;
    padding-top: 18px;
}

.job-directory-top-ad {
    width: 100%;
}

.job-directory-top-ad .job-archive-ad {
    width: 100%;
    min-height: 90px;
    height: clamp(90px, 10vw, 150px);
    margin-inline: 0;
    overflow: hidden;
    border-radius: 12px;
}

.job-directory-bottom-ad .job-archive-ad {
    width: 100%;
    min-height: 90px;
    height: 90px;
    overflow: hidden;
    border-radius: 8px;
}

.job-sidebar-ad .job-archive-ad {
    width: 100%;
    min-height: 250px;
    aspect-ratio: 6 / 5;
    overflow: hidden;
    border-radius: 14px;
}

.job-archive-ad img,
.job-archive-ad iframe,
.job-archive-ad ins,
.job-archive-ad > a {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    display: block;
}

.job-archive-ad img {
    object-fit: cover;
}

.job-directory-filter {
    display: grid;
    grid-template-columns: 1.2fr 1fr .8fr 1fr 1fr .8fr auto;
    gap: 12px;
    align-items: end;
    padding: 16px;
    border: 1px solid var(--rehberim-border);
    border-radius: 14px;
    background: var(--rehberim-surface);
    box-shadow: 0 14px 30px color-mix(in srgb, var(--rehberim-shadow) 7%, transparent);
}

.job-directory-filter label {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.job-directory-filter label > span {
    color: var(--rehberim-text);
    font-size: 11px;
    font-weight: 800;
}

.job-directory-filter input,
.job-directory-filter select {
    width: 100%;
    height: 44px;
    min-width: 0;
    padding: 0 13px;
    border: 1px solid var(--rehberim-border);
    border-radius: 8px;
    background: var(--rehberim-input-surface);
    color: var(--rehberim-text);
    font: inherit;
}

.job-directory-filter button {
    min-width: 112px;
    height: 44px;
    border-radius: 8px;
}

.job-directory-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(310px, 350px);
    gap: 20px;
    align-items: start;
}

.job-directory-content,
.job-directory-sidebar {
    display: grid;
    gap: 18px;
}

.job-directory-section {
    padding: 18px;
    border: 1px solid var(--rehberim-border);
    border-radius: 16px;
    background: var(--rehberim-surface);
    box-shadow: 0 12px 28px color-mix(in srgb, var(--rehberim-shadow) 5%, transparent);
}

.job-section-heading {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 18px;
    margin-bottom: 14px;
}

.job-section-heading > div {
    display: flex;
    align-items: center;
    gap: 11px;
}

.job-section-heading h2 {
    margin: 0 0 3px;
    color: var(--rehberim-primary-dark);
    font-size: 19px;
}

.job-section-heading p {
    margin: 0;
    color: var(--rehberim-muted);
    font-size: 12px;
}

.job-section-heading > a,
.job-section-heading > span {
    color: var(--rehberim-primary);
    font-size: 12px;
    font-weight: 800;
}

.job-heading-mark,
.job-heading-clock {
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    position: relative;
    border-radius: 50%;
    border: 2px solid var(--rehberim-secondary);
}

.job-heading-mark::before {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    width: 11px;
    height: 11px;
    border-radius: 3px;
    background: var(--rehberim-secondary);
    transform: translate(-50%, -50%) rotate(45deg);
}

.job-heading-clock {
    border-color: var(--rehberim-border);
}

.job-heading-clock::before,
.job-heading-clock::after {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    width: 2px;
    background: var(--rehberim-primary);
    transform-origin: bottom center;
}

.job-heading-clock::before {
    height: 8px;
    transform: translate(-50%, -100%);
}

.job-heading-clock::after {
    height: 6px;
    transform: translate(-50%, -100%) rotate(125deg);
}

.featured-job-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.recent-job-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.job-archive-card {
    min-width: 0;
    display: grid;
    grid-template-columns: 92px minmax(0, 1fr);
    gap: 14px;
    padding: 14px;
    border: 1px solid var(--rehberim-border);
    border-radius: 13px;
    background: var(--rehberim-surface);
    box-shadow: 0 8px 18px color-mix(in srgb, var(--rehberim-shadow) 4%, transparent);
}

.job-archive-card-featured {
    grid-template-columns: 104px minmax(0, 1fr);
    min-height: 190px;
}

.job-company-logo {
    width: 92px;
    height: 92px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 12px;
    background: var(--rehberim-soft-surface);
    border: 1px solid var(--rehberim-border);
    color: var(--rehberim-primary);
    font-size: 26px;
    font-weight: 800;
}

.job-archive-card-featured .job-company-logo {
    width: 104px;
    height: 104px;
}

.job-company-logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 9px;
    background: var(--rehberim-surface);
}

.job-card-content {
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.job-card-topline {
    min-height: 22px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 8px;
    margin-bottom: 5px;
}

.job-featured-badge {
    display: inline-flex;
    padding: 5px 9px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--rehberim-secondary) 18%, var(--rehberim-surface));
    color: color-mix(in srgb, var(--rehberim-secondary) 78%, var(--rehberim-text));
    font-size: 9px;
    font-weight: 800;
}

.job-bookmark {
    width: 15px;
    height: 18px;
    display: block;
    border: 1.5px solid var(--rehberim-primary);
    border-radius: 3px 3px 1px 1px;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 50% 75%, 0 100%);
}

.job-archive-card h3 {
    margin: 0 0 4px;
    color: var(--rehberim-primary-dark);
    font-size: 15px;
    line-height: 1.35;
}

.job-archive-card h3 a {
    color: inherit;
}

.job-company-name {
    margin: 0 0 7px;
    color: var(--rehberim-primary);
    font-size: 12px;
    font-weight: 800;
}

.job-card-excerpt {
    display: -webkit-box;
    overflow: hidden;
    margin: 0 0 9px;
    color: var(--rehberim-muted);
    font-size: 11px;
    line-height: 1.5;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.job-card-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
    margin-top: auto;
    padding-top: 8px;
    border-top: 1px solid var(--rehberim-border);
}

.job-card-meta span {
    color: var(--rehberim-text);
    font-size: 11px;
    font-weight: 700;
}

.job-card-footer {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 10px;
    margin-top: 9px;
}

.job-card-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

.job-card-tags span {
    display: inline-flex;
    padding: 4px 8px;
    border-radius: 6px;
    background: color-mix(in srgb, var(--rehberim-accent) 9%, var(--rehberim-surface));
    color: var(--rehberim-primary);
    font-size: 9px;
    font-weight: 800;
}

.job-relative-date {
    flex: 0 0 auto;
    color: var(--rehberim-muted);
    font-size: 10px;
}

.job-detail-link {
    flex: 0 0 auto;
    display: inline-flex;
    justify-content: center;
    min-width: 74px;
    padding: 7px 12px;
    border: 1px solid var(--rehberim-border);
    border-radius: 8px;
    color: var(--rehberim-primary);
    font-size: 10px;
    font-weight: 800;
}

.free-job-cta {
    position: relative;
    overflow: hidden;
    padding: 28px 24px;
    border-radius: 17px;
    background: linear-gradient(145deg, var(--rehberim-primary-dark), var(--rehberim-primary));
    color: var(--rehberim-premium-text);
    box-shadow: 0 18px 36px color-mix(in srgb, var(--rehberim-primary-dark) 22%, transparent);
}

.free-job-cta::before {
    content: '';
    position: absolute;
    right: -60px;
    top: -70px;
    width: 190px;
    height: 190px;
    border: 1px solid color-mix(in srgb, var(--rehberim-secondary) 30%, transparent);
    border-radius: 50%;
}

.free-job-cta-icon {
    position: relative;
    z-index: 1;
    width: 66px;
    height: 66px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--rehberim-secondary);
    margin-bottom: 16px;
}

.free-job-cta-icon span {
    width: 28px;
    height: 21px;
    position: relative;
    display: block;
    border: 3px solid var(--rehberim-premium-text);
    border-radius: 4px;
}

.free-job-cta-icon span::before {
    content: '';
    position: absolute;
    left: 6px;
    right: 6px;
    top: -9px;
    height: 8px;
    border: 3px solid var(--rehberim-premium-text);
    border-bottom: 0;
    border-radius: 5px 5px 0 0;
}

.free-job-cta h2 {
    position: relative;
    z-index: 1;
    margin: 0 0 10px;
    color: var(--rehberim-premium-text);
    font-size: 23px;
}

.free-job-cta p {
    position: relative;
    z-index: 1;
    margin: 0 0 18px;
    color: color-mix(in srgb, var(--rehberim-premium-text) 82%, transparent);
    font-size: 13px;
    line-height: 1.55;
}

.free-job-cta ul {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 10px;
    list-style: none;
    margin: 0 0 22px;
    padding: 0;
}

.free-job-cta li {
    position: relative;
    padding-left: 22px;
    font-size: 12px;
}

.free-job-cta li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 4px;
    width: 11px;
    height: 7px;
    border-left: 2px solid var(--rehberim-secondary);
    border-bottom: 2px solid var(--rehberim-secondary);
    transform: rotate(-45deg);
}

.free-job-submit-button {
    position: relative;
    z-index: 1;
    width: 100%;
    min-height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    background: var(--rehberim-secondary);
    color: var(--rehberim-text);
    font-weight: 800;
    box-shadow: 0 10px 20px color-mix(in srgb, var(--rehberim-secondary) 22%, transparent);
}

.job-seeker-box {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 14px;
    padding: 19px;
    border: 1px solid var(--rehberim-border);
    border-radius: 14px;
    background: color-mix(in srgb, var(--rehberim-accent) 5%, var(--rehberim-surface));
}

.job-seeker-icon {
    width: 46px;
    height: 46px;
    border: 2px solid var(--rehberim-accent);
    border-radius: 50%;
    position: relative;
}

.job-seeker-icon::before {
    content: '';
    position: absolute;
    left: 50%;
    top: 8px;
    width: 10px;
    height: 10px;
    border: 2px solid var(--rehberim-accent);
    border-radius: 50%;
    transform: translateX(-50%);
}

.job-seeker-icon::after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: 8px;
    width: 22px;
    height: 12px;
    border: 2px solid var(--rehberim-accent);
    border-radius: 14px 14px 6px 6px;
    transform: translateX(-50%);
}

.job-seeker-box h3 {
    margin: 0 0 6px;
    color: var(--rehberim-primary-dark);
    font-size: 16px;
}

.job-seeker-box p {
    margin: 0 0 8px;
    color: var(--rehberim-muted);
    font-size: 12px;
    line-height: 1.5;
}

.job-seeker-box a {
    color: var(--rehberim-primary);
    font-size: 11px;
    font-weight: 800;
}

.job-pagination {
    margin-top: 18px;
}

.job-pagination .page-numbers {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 7px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.job-pagination a,
.job-pagination span {
    min-width: 38px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--rehberim-border);
    border-radius: 7px;
    background: var(--rehberim-surface);
    color: var(--rehberim-primary-dark);
    padding: 0 11px;
}

.job-pagination .current {
    background: var(--rehberim-primary-dark);
    border-color: var(--rehberim-primary-dark);
    color: var(--rehberim-premium-text);
}

/* Ücretsiz iş ilanı formu */
.job-submit-main {
    padding-bottom: 60px;
    background: var(--rehberim-background);
}

.job-submit-hero {
    padding: 48px 0;
    background: linear-gradient(120deg, var(--rehberim-primary-dark), var(--rehberim-primary));
}

.job-submit-hero p:last-child {
    max-width: 70ch;
    color: color-mix(in srgb, var(--rehberim-premium-text) 82%, transparent);
}

.job-submit-shell {
    padding-top: 28px;
}

.job-submit-form,
.job-submit-login-card {
    max-width: 980px;
    margin-inline: auto;
    padding: 28px;
    border: 1px solid var(--rehberim-border);
    border-radius: 18px;
    background: var(--rehberim-surface);
    box-shadow: 0 16px 34px color-mix(in srgb, var(--rehberim-shadow) 7%, transparent);
}

.job-submit-form-heading h2,
.job-submit-login-card h2 {
    margin: 0 0 7px;
    color: var(--rehberim-primary-dark);
}

.job-submit-form-heading p,
.job-submit-login-card p {
    margin: 0 0 22px;
    color: var(--rehberim-muted);
}

.job-submit-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.job-submit-grid label {
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.job-submit-grid label > span {
    font-size: 12px;
    font-weight: 800;
}

.job-submit-grid input,
.job-submit-grid select,
.job-submit-grid textarea {
    width: 100%;
    border: 1px solid var(--rehberim-border);
    border-radius: 10px;
    background: var(--rehberim-input-surface);
    padding: 12px 14px;
    font: inherit;
}

.job-submit-grid input,
.job-submit-grid select {
    height: 46px;
}

.job-submit-wide {
    grid-column: 1 / -1;
}

.job-submit-actions {
    display: flex;
    justify-content: flex-end;
    margin-top: 20px;
}

.job-submit-actions button {
    min-width: 210px;
}

.job-submit-notice {
    max-width: 980px;
    margin: 0 auto 18px;
    padding: 15px 18px;
    border-radius: 11px;
    font-weight: 700;
}

.job-submit-notice.success {
    background: color-mix(in srgb, var(--rehberim-success) 10%, var(--rehberim-surface));
    color: var(--rehberim-success);
}

.job-submit-notice.error {
    background: color-mix(in srgb, var(--rehberim-danger) 10%, var(--rehberim-surface));
    color: var(--rehberim-danger);
}

@media (max-width: 1280px) {
    .job-directory-filter {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .job-directory-filter button {
        width: 100%;
    }

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

@media (max-width: 980px) {
    .job-directory-layout {
        grid-template-columns: 1fr;
    }

    .job-directory-sidebar {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .job-sidebar-ad {
        grid-column: 1 / -1;
        max-width: 400px;
    }
}

@media (max-width: 780px) {
    .job-directory-hero-inner {
        align-items: flex-start;
        flex-direction: column;
        justify-content: center;
        padding-block: 26px;
    }

    .job-directory-hero-copy {
        padding: 0;
    }

    .job-directory-filter,
    .job-submit-grid {
        grid-template-columns: 1fr;
    }

    .job-filter-order {
        display: none !important;
    }

    .featured-job-grid,
    .recent-job-grid,
    .job-directory-sidebar {
        grid-template-columns: 1fr;
    }

    .job-archive-card,
    .job-archive-card-featured {
        grid-template-columns: 74px minmax(0, 1fr);
    }

    .job-company-logo,
    .job-archive-card-featured .job-company-logo {
        width: 74px;
        height: 74px;
    }

    .job-submit-wide {
        grid-column: auto;
    }
}

@media (max-width: 520px) {
    .job-archive-card,
    .job-archive-card-featured {
        grid-template-columns: 1fr;
    }

    .job-company-logo,
    .job-archive-card-featured .job-company-logo {
        width: 82px;
        height: 82px;
    }

    .job-section-heading {
        align-items: flex-start;
        flex-direction: column;
    }
}


/* v105 - is ilani kart gorsel buyutme ve gereksiz ikon kaldirma */
.job-archive-card {
    grid-template-columns: 108px minmax(0, 1fr);
}

.job-archive-card-featured {
    grid-template-columns: 124px minmax(0, 1fr);
    min-height: 200px;
}

.job-company-logo {
    width: 108px;
    height: 108px;
}

.job-archive-card-featured .job-company-logo {
    width: 124px;
    height: 124px;
}

.job-company-logo img {
    padding: 6px;
}

.job-card-topline {
    justify-content: flex-start;
}

.job-bookmark {
    display: none !important;
}

@media (max-width: 980px) {
    .job-archive-card,
    .job-archive-card-featured {
        grid-template-columns: 96px minmax(0, 1fr);
    }

    .job-company-logo,
    .job-archive-card-featured .job-company-logo {
        width: 96px;
        height: 96px;
    }
}


/* v106 - is ilanlari etiket ve one cikan kart duzenleme */
.job-card-tags {
    flex-wrap: nowrap;
    overflow: hidden;
    gap: 6px;
    min-width: 0;
}

.job-card-tags span {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 150px;
    font-size: 9px;
    padding: 4px 7px;
}

.recent-job-grid .job-card-footer {
    align-items: center;
    gap: 8px;
}

.recent-job-grid .job-detail-link {
    min-width: 82px;
}

.featured-job-grid .job-archive-card-featured {
    grid-template-columns: 148px minmax(0, 1fr);
    gap: 18px;
    min-height: 214px;
}

.featured-job-grid .job-archive-card-featured .job-company-logo {
    width: 148px;
    height: 148px;
}

.featured-job-grid .job-archive-card-featured .job-card-content {
    padding-right: 4px;
}

.featured-job-grid .job-archive-card-featured h3 {
    font-size: 16px;
    margin-bottom: 6px;
}

.featured-job-grid .job-archive-card-featured .job-company-name {
    margin-bottom: 10px;
}

@media (max-width: 980px) {
    .featured-job-grid .job-archive-card-featured {
        grid-template-columns: 118px minmax(0, 1fr);
        gap: 14px;
        min-height: 196px;
    }

    .featured-job-grid .job-archive-card-featured .job-company-logo {
        width: 118px;
        height: 118px;
    }

    .job-card-tags span {
        max-width: 132px;
    }
}

@media (max-width: 640px) {
    .job-card-tags span {
        max-width: 118px;
    }
}


/* v107 - is ilani kart alt etiket ve gorsel sadeleştirme */
.job-archive-card,
.job-archive-card-featured {
    align-items: start;
    grid-template-rows: auto auto;
}

.job-company-logo {
    width: 116px;
    height: 116px;
    border: 0;
    border-radius: 14px;
    background: transparent;
    box-shadow: none;
    padding: 0;
}

.job-company-logo.has-image {
    background: transparent;
}

.job-archive-card-featured .job-company-logo {
    width: 136px;
    height: 136px;
}

.job-company-logo img {
    width: 100%;
    height: 100%;
    padding: 0;
    border-radius: 12px;
    object-fit: cover;
    background: transparent;
}

.job-card-content {
    padding-top: 4px;
}

.job-card-footer {
    grid-column: 1 / -1;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 6px;
    padding-top: 12px;
    border-top: 1px solid var(--rehberim-border);
}

.job-card-tags {
    flex: 1 1 auto;
    flex-wrap: nowrap;
    overflow: hidden;
    min-width: 0;
}

.job-card-tags span {
    max-width: 170px;
}

.recent-job-grid .job-card-footer {
    align-items: center;
}

.featured-job-grid .job-archive-card-featured {
    grid-template-columns: 164px minmax(0, 1fr);
    gap: 22px;
}

.featured-job-grid .job-archive-card-featured .job-company-logo {
    width: 164px;
    height: 164px;
}

.featured-job-grid .job-archive-card-featured .job-card-content {
    padding-top: 8px;
}

@media (max-width: 980px) {
    .job-company-logo,
    .job-archive-card-featured .job-company-logo {
        width: 104px;
        height: 104px;
    }

    .featured-job-grid .job-archive-card-featured {
        grid-template-columns: 120px minmax(0, 1fr);
        gap: 16px;
    }

    .featured-job-grid .job-archive-card-featured .job-company-logo {
        width: 120px;
        height: 120px;
    }

    .job-card-tags span {
        max-width: 135px;
    }
}

@media (max-width: 640px) {
    .job-card-footer {
        gap: 10px;
    }

    .job-card-tags span {
        max-width: 120px;
    }
}


/* v108 - standart is ilani kartlarinda metni gorsel baslangicina hizala */
.job-archive-card-standard .job-card-topline {
    display: none;
}

.job-archive-card-standard .job-card-content {
    padding-top: 0;
}

.job-archive-card-standard h3 {
    margin-top: 0;
}


/* v109 - is ilanlari ust reklam alani tam genislik */
.job-directory-top-ad .job-archive-ad img,
.job-directory-top-ad .job-archive-ad iframe,
.job-directory-top-ad .job-archive-ad ins,
.job-directory-top-ad .job-archive-ad > a {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    display: block;
}

.job-directory-top-ad .job-archive-ad img {
    object-fit: cover;
}

@media (max-width: 767px) {
    .job-directory-top-ad .job-archive-ad {
        height: clamp(90px, 16vw, 120px);
        border-radius: 10px;
    }
}

/* v110 - İş ilanı detay ve ücretsiz iş ilanı formu */
.job-detail-main,
.job-submit-main-v110 {
    background: var(--rehberim-background);
    padding-bottom: 56px;
}

.job-detail-hero,
.job-submit-main-v110 .job-submit-hero {
    position: relative;
    overflow: hidden;
    background: linear-gradient(120deg, var(--rehberim-primary-dark), var(--rehberim-primary));
    background-position: center;
    background-size: cover;
}

.job-detail-hero::before,
.job-submit-main-v110 .job-submit-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(7, 35, 72, .96) 0%, rgba(7, 35, 72, .86) 48%, rgba(7, 35, 72, .50) 100%);
}

.job-detail-hero-inner,
.job-submit-hero-inner {
    position: relative;
    z-index: 2;
    padding-top: 32px;
    padding-bottom: 34px;
}

.job-detail-breadcrumb,
.job-submit-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-bottom: 15px;
    color: rgba(255,255,255,.78);
    font-size: 12px;
}

.job-detail-breadcrumb a,
.job-submit-breadcrumb a,
.job-submit-breadcrumb strong {
    color: #fff;
}

.job-detail-hero h1,
.job-submit-main-v110 .job-submit-hero h1 {
    max-width: 900px;
    margin: 0 0 8px;
    color: #fff;
    font-size: clamp(2rem, 4vw, 3.2rem);
    line-height: 1.08;
}

.job-detail-company-name,
.job-submit-main-v110 .job-submit-hero p {
    max-width: 760px;
    margin: 0;
    color: rgba(255,255,255,.88);
    font-size: 17px;
    font-weight: 700;
}

.job-detail-hero-tags,
.job-submit-hero-benefits {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 16px;
}

.job-detail-hero-tags span,
.job-submit-hero-benefits span {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 6px 12px;
    border: 1px solid rgba(255,255,255,.20);
    border-radius: 8px;
    background: rgba(255,255,255,.10);
    color: #fff;
    font-size: 11px;
    font-weight: 800;
}

.job-detail-hero-tags .urgent {
    border-color: #df4d36;
    background: #df4d36;
}

.job-submit-hero-benefits span::before {
    content: '';
    width: 8px;
    height: 8px;
    margin-right: 8px;
    border: 2px solid var(--rehberim-secondary);
    border-radius: 50%;
}

.job-detail-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 340px;
    gap: 22px;
    align-items: start;
    padding-top: 22px;
}

.job-detail-content,
.job-detail-sidebar,
.job-submit-content-v110,
.job-submit-sidebar-v110 {
    display: grid;
    gap: 16px;
}

.job-detail-overview-card,
.job-detail-body-card,
.job-detail-related-section,
.job-detail-submit-box,
.job-detail-summary-box,
.job-detail-sidebar-related,
.job-submit-form-v110,
.job-submit-why-box,
.job-submit-packages-box,
.job-submit-support-box,
.job-submit-login-card {
    border: 1px solid var(--rehberim-border);
    border-radius: 14px;
    background: var(--rehberim-surface);
    box-shadow: 0 12px 28px color-mix(in srgb, var(--rehberim-shadow) 6%, transparent);
}

.job-detail-overview-card {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr);
    gap: 18px;
    padding: 16px;
}

.job-detail-company-logo {
    grid-row: span 2;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 128px;
    border: 1px solid var(--rehberim-border);
    border-radius: 12px;
    background: var(--rehberim-soft-surface);
    overflow: hidden;
}

.job-detail-company-logo .job-company-logo {
    width: 128px;
    height: 128px;
    border-radius: 10px;
}

.job-detail-company-logo .job-company-logo img {
    object-fit: contain;
    background: #fff;
}

.job-detail-facts {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
}

.job-detail-facts > div {
    min-width: 0;
    padding: 10px 11px;
    border-radius: 10px;
    background: var(--rehberim-soft-surface);
}

.job-detail-facts span,
.job-detail-contact-grid span,
.job-detail-submit-box p,
.job-detail-summary-box dt,
.job-contact-meta span {
    color: var(--rehberim-muted);
    font-size: 10px;
}

.job-detail-facts strong {
    display: block;
    margin-top: 4px;
    color: var(--rehberim-text);
    font-size: 12px;
    line-height: 1.35;
}

.job-detail-primary-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    align-self: end;
}

.job-detail-primary-actions a,
.job-detail-submit-box > a,
.job-submit-packages-box > a,
.job-submit-support-box > a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 10px 18px;
    border-radius: 9px;
    font-weight: 800;
}

.job-detail-apply-button,
.job-detail-submit-box > a,
.job-submit-support-box > a {
    border: 1px solid var(--rehberim-secondary);
    background: var(--rehberim-secondary);
    color: var(--rehberim-contrast-text);
}

.job-detail-company-button {
    border: 1px solid var(--rehberim-secondary);
    background: transparent;
    color: color-mix(in srgb, var(--rehberim-secondary) 78%, var(--rehberim-text));
}

.job-detail-body-card {
    overflow: hidden;
}

.job-detail-tabs {
    display: flex;
    gap: 26px;
    overflow-x: auto;
    padding: 0 20px;
    border-bottom: 1px solid var(--rehberim-border);
}

.job-detail-tabs a {
    flex: 0 0 auto;
    padding: 16px 0 13px;
    border-bottom: 2px solid transparent;
    color: var(--rehberim-muted);
    font-size: 12px;
    font-weight: 800;
}

.job-detail-tabs a:first-child {
    border-bottom-color: var(--rehberim-secondary);
    color: color-mix(in srgb, var(--rehberim-secondary) 80%, var(--rehberim-text));
}

.job-detail-summary,
.job-detail-company-section,
.job-detail-contact-section {
    padding: 20px;
    border-bottom: 1px solid var(--rehberim-border);
}

.job-detail-body-card h2,
.job-detail-section-heading h2,
.job-detail-sidebar h2,
.job-submit-sidebar-v110 h2,
.job-submit-form-section h2 {
    margin: 0 0 10px;
    color: var(--rehberim-primary-dark);
    font-size: 16px;
}

.job-detail-entry-content,
.job-detail-company-section p {
    color: var(--rehberim-text);
    font-size: 13px;
    line-height: 1.75;
}

.job-detail-entry-content p:first-child {
    margin-top: 0;
}

.job-detail-two-columns {
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.job-detail-two-columns > section {
    padding: 20px;
    border-bottom: 1px solid var(--rehberim-border);
}

.job-detail-two-columns > section:nth-child(odd) {
    border-right: 1px solid var(--rehberim-border);
}

.rehberim-job-clean-list,
.job-application-steps {
    display: grid;
    gap: 7px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.rehberim-job-clean-list li,
.job-application-steps li {
    position: relative;
    padding-left: 18px;
    color: var(--rehberim-text);
    font-size: 12px;
    line-height: 1.55;
}

.rehberim-job-clean-list li::before {
    content: '';
    position: absolute;
    left: 0;
    top: .6em;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--rehberim-secondary);
}

.job-application-steps {
    counter-reset: steps;
}

.job-application-steps li {
    counter-increment: steps;
    padding-left: 27px;
}

.job-application-steps li::before {
    content: counter(steps);
    position: absolute;
    left: 0;
    top: 0;
    width: 19px;
    height: 19px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--rehberim-secondary);
    color: var(--rehberim-contrast-text);
    font-size: 10px;
    font-weight: 800;
}

.job-detail-contact-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.job-detail-contact-grid a {
    min-width: 0;
    padding: 12px;
    border: 1px solid var(--rehberim-border);
    border-radius: 10px;
    background: var(--rehberim-soft-surface);
}

.job-detail-contact-grid strong {
    display: block;
    margin-top: 4px;
    overflow-wrap: anywhere;
    color: var(--rehberim-primary-dark);
    font-size: 12px;
}

.job-detail-related-section {
    padding: 18px;
}

.job-detail-section-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 14px;
}

.job-detail-section-heading a {
    color: var(--rehberim-primary);
    font-size: 11px;
    font-weight: 800;
}

.job-detail-related-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.job-detail-related-grid .job-archive-card {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 12px;
}

.job-detail-related-grid .job-company-logo {
    width: 100%;
    height: 92px;
}

.job-detail-related-grid .job-card-footer {
    margin-top: auto;
}

.job-detail-submit-box,
.job-submit-why-box,
.job-submit-packages-box,
.job-submit-support-box {
    padding: 20px;
}

.job-detail-submit-box {
    border-color: color-mix(in srgb, var(--rehberim-secondary) 45%, var(--rehberim-border));
    background: linear-gradient(145deg, color-mix(in srgb, var(--rehberim-secondary) 7%, #fff), #fff);
}

.job-detail-submit-box p,
.job-submit-support-box p {
    margin: 0 0 14px;
    font-size: 12px;
    line-height: 1.6;
}

.job-detail-sidebar-ad .job-archive-ad,
.job-submit-sidebar-ad-v110 .job-archive-ad {
    width: 100%;
    min-height: 250px;
    aspect-ratio: 6 / 5;
    overflow: hidden;
    border-radius: 14px;
}

.job-detail-summary-box,
.job-detail-sidebar-related {
    padding: 18px;
}

.job-detail-summary-box dl {
    display: grid;
    grid-template-columns: 110px minmax(0, 1fr);
    gap: 8px 10px;
    margin: 0;
}

.job-detail-summary-box dt,
.job-detail-summary-box dd {
    margin: 0;
    font-size: 11px;
}

.job-detail-summary-box dd {
    color: var(--rehberim-text);
    font-weight: 700;
}

.job-detail-sidebar-related a {
    display: block;
    padding: 10px 0;
    border-bottom: 1px solid var(--rehberim-border);
}

.job-detail-sidebar-related a:last-child {
    border-bottom: 0;
}

.job-detail-sidebar-related span,
.job-detail-sidebar-related small {
    display: block;
}

.job-detail-sidebar-related span {
    color: var(--rehberim-primary-dark);
    font-size: 12px;
    font-weight: 800;
}

.job-detail-sidebar-related small {
    margin-top: 3px;
    color: var(--rehberim-muted);
    font-size: 10px;
}

/* v110 - Ücretsiz iş ilanı formu */
.job-submit-layout-v110 {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 340px;
    gap: 22px;
    align-items: start;
    padding-top: 22px;
}

.job-submit-form-v110 {
    overflow: hidden;
}

.job-submit-steps {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-bottom: 1px solid var(--rehberim-border);
}

.job-submit-steps span {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 58px;
    padding: 10px;
    border-bottom: 2px solid transparent;
    color: var(--rehberim-muted);
    font-size: 11px;
    font-weight: 700;
    text-align: center;
}

.job-submit-steps span.is-active,
.job-submit-steps span:nth-child(2) {
    border-bottom-color: var(--rehberim-secondary);
    color: color-mix(in srgb, var(--rehberim-secondary) 78%, var(--rehberim-text));
}

.job-submit-steps b {
    width: 24px;
    height: 24px;
    display: grid;
    place-items: center;
    flex: 0 0 24px;
    border: 1px solid currentColor;
    border-radius: 50%;
    font-size: 10px;
}

.job-submit-form-section {
    padding: 20px;
    border-bottom: 1px solid var(--rehberim-border);
}

.job-submit-form-grid {
    display: grid;
    gap: 13px;
}

.job-submit-form-grid.five-columns {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.job-submit-form-grid.four-columns {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.job-submit-form-grid.three-columns {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 14px;
}

.job-submit-form-grid.two-columns {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.job-submit-form-v110 label {
    min-width: 0;
}

.job-submit-form-grid label {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.job-submit-form-grid label > span,
.job-logo-upload > span {
    color: var(--rehberim-text);
    font-size: 11px;
    font-weight: 800;
}

.job-submit-form-v110 input,
.job-submit-form-v110 select,
.job-submit-form-v110 textarea {
    width: 100%;
    border: 1px solid var(--rehberim-border);
    border-radius: 8px;
    background: var(--rehberim-input-surface);
    color: var(--rehberim-text);
    font: inherit;
}

.job-submit-form-v110 input,
.job-submit-form-v110 select {
    height: 44px;
    padding: 0 11px;
}

.job-submit-form-v110 textarea {
    min-height: 140px;
    padding: 11px;
    resize: vertical;
}

.job-logo-upload {
    display: grid;
    gap: 6px;
    margin-top: 14px;
    padding: 18px;
    border: 1px dashed color-mix(in srgb, var(--rehberim-primary) 48%, var(--rehberim-border));
    border-radius: 10px;
    background: var(--rehberim-soft-surface);
    text-align: center;
}

.job-logo-upload input {
    height: auto;
    padding: 8px;
    background: transparent;
}

.job-logo-upload strong {
    color: var(--rehberim-primary-dark);
    font-size: 12px;
}

.job-logo-upload small {
    color: var(--rehberim-muted);
    font-size: 10px;
}

.job-submit-consents {
    display: grid;
    gap: 9px;
    padding: 18px 20px 4px;
}

.job-submit-consents label {
    color: var(--rehberim-text);
    font-size: 11px;
    font-weight: 700;
}

.job-submit-consents input {
    width: auto;
    height: auto;
    margin-right: 6px;
}

.job-submit-actions-v110 {
    display: flex;
    justify-content: space-between;
    gap: 14px;
    padding: 18px 20px 22px;
}

.job-submit-actions-v110 button {
    min-width: 190px;
    min-height: 44px;
    border-radius: 9px;
    font-weight: 800;
}

.job-save-draft {
    border: 1px solid var(--rehberim-secondary);
    background: transparent;
    color: color-mix(in srgb, var(--rehberim-secondary) 80%, var(--rehberim-text));
}

.job-submit-continue {
    border: 1px solid var(--rehberim-secondary);
    background: var(--rehberim-secondary);
    color: var(--rehberim-contrast-text);
}

.job-submit-why-box {
    border-color: color-mix(in srgb, var(--rehberim-secondary) 42%, var(--rehberim-border));
    background: linear-gradient(145deg, color-mix(in srgb, var(--rehberim-secondary) 6%, #fff), #fff);
}

.job-submit-packages-box {
    display: grid;
    gap: 8px;
}

.job-submit-packages-box > div {
    display: grid;
    gap: 3px;
    padding: 11px 12px;
    border: 1px solid var(--rehberim-border);
    border-radius: 9px;
}

.job-submit-packages-box strong {
    color: var(--rehberim-primary-dark);
    font-size: 12px;
}

.job-submit-packages-box span {
    color: var(--rehberim-muted);
    font-size: 10px;
}

.job-submit-packages-box > a {
    min-height: 38px;
    border: 1px solid var(--rehberim-secondary);
    color: color-mix(in srgb, var(--rehberim-secondary) 80%, var(--rehberim-text));
}

.job-submit-notice {
    max-width: none;
}

@media (max-width: 1250px) {
    .job-detail-facts {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .job-submit-form-grid.five-columns {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .job-submit-form-grid.four-columns {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 980px) {
    .job-detail-layout,
    .job-submit-layout-v110 {
        grid-template-columns: 1fr;
    }

    .job-detail-sidebar,
    .job-submit-sidebar-v110 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .job-detail-sidebar-ad,
    .job-submit-sidebar-ad-v110 {
        grid-row: span 2;
    }
}

@media (max-width: 760px) {
    .job-detail-overview-card {
        grid-template-columns: 1fr;
    }

    .job-detail-company-logo {
        grid-row: auto;
        min-height: 150px;
    }

    .job-detail-facts {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .job-detail-two-columns,
    .job-detail-contact-grid,
    .job-detail-related-grid,
    .job-submit-form-grid.five-columns,
    .job-submit-form-grid.four-columns,
    .job-submit-form-grid.three-columns,
    .job-submit-form-grid.two-columns,
    .job-detail-sidebar,
    .job-submit-sidebar-v110 {
        grid-template-columns: 1fr;
    }

    .job-detail-two-columns > section:nth-child(odd) {
        border-right: 0;
    }

    .job-submit-steps {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .job-submit-actions-v110 {
        flex-direction: column;
    }

    .job-submit-actions-v110 button {
        width: 100%;
    }
}

@media (max-width: 520px) {
    .job-detail-facts,
    .job-detail-primary-actions {
        grid-template-columns: 1fr;
    }

    .job-detail-tabs {
        gap: 18px;
    }

    .job-submit-steps {
        grid-template-columns: 1fr;
    }
}


/* v110 son uyumluluk düzeltmeleri */
.job-submit-main-v110 .job-submit-hero {
    padding: 0;
}

.job-detail-contact-grid:has(a:nth-child(4)) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}


/* v111 - son eklenen is ilanlari kartlarini ust gorselli yap */
.recent-job-grid .job-archive-card-standard {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto;
    gap: 0;
    overflow: hidden;
    padding: 0;
}

.recent-job-grid .job-archive-card-standard .job-company-logo {
    width: 100%;
    height: 170px;
    border-radius: 12px 12px 0 0;
    overflow: hidden;
    display: block;
}

.recent-job-grid .job-archive-card-standard .job-company-logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 0;
}

.recent-job-grid .job-archive-card-standard .job-card-content {
    padding: 16px 16px 10px;
}

.recent-job-grid .job-archive-card-standard .job-card-topline {
    min-height: 0;
    margin-bottom: 0;
}

.recent-job-grid .job-archive-card-standard h3 {
    font-size: 16px;
    margin: 0 0 6px;
}

.recent-job-grid .job-archive-card-standard .job-company-name {
    margin-bottom: 8px;
}

.recent-job-grid .job-archive-card-standard .job-card-excerpt {
    margin-bottom: 10px;
    -webkit-line-clamp: 2;
}

.recent-job-grid .job-archive-card-standard .job-card-meta {
    margin-top: 0;
    padding-top: 10px;
}

.recent-job-grid .job-archive-card-standard .job-card-footer {
    grid-column: auto;
    padding: 12px 16px 16px;
    margin-top: 0;
}

.recent-job-grid .job-archive-card-standard .job-card-tags {
    max-width: calc(100% - 98px);
}


@media (max-width: 980px) {
    .recent-job-grid .job-archive-card-standard .job-company-logo {
        height: 150px;
    }
}

@media (max-width: 640px) {
    .recent-job-grid .job-archive-card-standard .job-company-logo {
        height: 136px;
    }

    .recent-job-grid .job-archive-card-standard .job-card-footer {
        flex-wrap: wrap;
    }

    .recent-job-grid .job-archive-card-standard .job-card-tags {
        max-width: 100%;
    }
}


/* v112 - son eklenen is ilanlari gorsel iyilestirme ve 300x900 yan reklam */
.recent-job-grid .job-archive-card-standard {
    border-radius: 14px;
}

.recent-job-grid .job-archive-card-standard .job-company-logo {
    width: 100%;
    height: 185px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: var(--rehberim-surface);
    border-bottom: 1px solid var(--rehberim-border);
}

.recent-job-grid .job-archive-card-standard .job-company-logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    padding: 10px;
    background: var(--rehberim-surface);
}

.job-detail-sidebar-ad .job-archive-ad {
    width: 100%;
    min-height: 900px;
    aspect-ratio: 1 / 3;
    overflow: hidden;
    border-radius: 14px;
}

.job-detail-sidebar-ad .job-archive-ad img,
.job-detail-sidebar-ad .job-archive-ad iframe,
.job-detail-sidebar-ad .job-archive-ad ins,
.job-detail-sidebar-ad .job-archive-ad > a {
    display: block;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
}

.job-detail-sidebar-ad .job-archive-ad img {
    object-fit: cover;
}

@media (max-width: 980px) {
    .recent-job-grid .job-archive-card-standard .job-company-logo {
        height: 165px;
    }

    .job-detail-sidebar-ad .job-archive-ad {
        min-height: 420px;
        aspect-ratio: auto;
    }
}

@media (max-width: 640px) {
    .recent-job-grid .job-archive-card-standard .job-company-logo {
        height: 150px;
    }

    .recent-job-grid .job-archive-card-standard .job-company-logo img {
        padding: 8px;
    }

    .job-detail-sidebar-ad .job-archive-ad {
        min-height: 320px;
    }
}


/* v113 - premium job card details + 300x900 sidebar ad */
.job-card-premium-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
}

.job-info-badge {
    display: inline-flex;
    align-items: center;
    padding: 5px 9px;
    border-radius: 999px;
    font-size: 9px;
    font-weight: 800;
    line-height: 1.2;
}

.job-info-badge.salary {
    background: color-mix(in srgb, var(--rehberim-primary) 10%, var(--rehberim-surface));
    color: var(--rehberim-primary-dark);
}

.job-info-badge.type {
    background: color-mix(in srgb, var(--rehberim-accent) 14%, var(--rehberim-surface));
    color: var(--rehberim-primary);
}

.job-card-tags .job-tag-urgent {
    background: color-mix(in srgb, #d97706 18%, var(--rehberim-surface));
    color: #8a4b00;
}

.job-sidebar-ad .job-archive-ad {
    width: 100%;
    min-height: 900px;
    aspect-ratio: 1 / 3;
    overflow: hidden;
    border-radius: 16px;
}

.job-sidebar-ad .job-archive-ad img,
.job-sidebar-ad .job-archive-ad iframe,
.job-sidebar-ad .job-archive-ad ins,
.job-sidebar-ad .job-archive-ad > a {
    display: block;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
}

.job-sidebar-ad .job-archive-ad img {
    object-fit: cover;
}

@media (max-width: 1100px) {
    .job-sidebar-ad .job-archive-ad {
        min-height: 500px;
        aspect-ratio: auto;
    }
}

@media (max-width: 640px) {
    .job-card-premium-badges {
        gap: 5px;
    }

    .job-info-badge {
        font-size: 8px;
        padding: 4px 8px;
    }

    .job-sidebar-ad .job-archive-ad {
        min-height: 320px;
    }
}


/* v114 - premium is ilani kart renk sistemi */
.job-archive-card {
    position: relative;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.job-archive-card:hover {
    transform: translateY(-3px);
    border-color: color-mix(in srgb, var(--rehberim-primary) 28%, var(--rehberim-border));
    box-shadow: 0 18px 34px color-mix(in srgb, var(--rehberim-shadow) 11%, transparent);
}

.job-archive-card-featured {
    overflow: hidden;
    border-color: color-mix(in srgb, var(--rehberim-primary) 26%, var(--rehberim-border));
    background: linear-gradient(180deg, color-mix(in srgb, var(--rehberim-primary) 5%, var(--rehberim-surface)) 0%, var(--rehberim-surface) 52%);
}

.job-archive-card-featured::before {
    content: '';
    position: absolute;
    inset: 0 auto 0 0;
    width: 5px;
    background: var(--rehberim-primary);
}

.job-archive-card.job-package-featured {
    border-color: color-mix(in srgb, var(--rehberim-primary) 34%, var(--rehberim-border));
    box-shadow: 0 14px 30px color-mix(in srgb, var(--rehberim-primary) 12%, transparent);
}

.job-archive-card.job-package-featured::before {
    background: linear-gradient(180deg, var(--rehberim-primary), var(--rehberim-accent));
}

.job-archive-card.job-package-urgent {
    border-color: color-mix(in srgb, var(--rehberim-secondary) 55%, var(--rehberim-border));
    background: linear-gradient(180deg, color-mix(in srgb, var(--rehberim-secondary) 11%, var(--rehberim-surface)) 0%, var(--rehberim-surface) 58%);
    box-shadow: 0 16px 32px color-mix(in srgb, var(--rehberim-secondary) 16%, transparent);
}

.job-archive-card.job-package-urgent::before {
    background: linear-gradient(180deg, var(--rehberim-secondary), color-mix(in srgb, var(--rehberim-secondary) 72%, #8a4b00));
}

.job-package-featured .job-featured-badge {
    background: var(--rehberim-primary);
    color: #fff;
    box-shadow: 0 6px 14px color-mix(in srgb, var(--rehberim-primary) 24%, transparent);
}

.job-package-urgent .job-featured-badge,
.job-package-urgent .job-tag-urgent {
    background: var(--rehberim-secondary);
    color: color-mix(in srgb, var(--rehberim-text) 82%, #000);
    box-shadow: 0 6px 14px color-mix(in srgb, var(--rehberim-secondary) 24%, transparent);
}

.job-info-badge.salary {
    border: 1px solid color-mix(in srgb, var(--rehberim-primary) 22%, var(--rehberim-border));
    background: color-mix(in srgb, var(--rehberim-primary) 8%, var(--rehberim-surface));
}

.job-info-badge.salary.negotiable {
    border-color: color-mix(in srgb, var(--rehberim-secondary) 58%, var(--rehberim-border));
    background: color-mix(in srgb, var(--rehberim-secondary) 14%, var(--rehberim-surface));
    color: color-mix(in srgb, var(--rehberim-secondary) 65%, var(--rehberim-text));
    letter-spacing: .01em;
}

.job-info-badge.type {
    border: 1px solid color-mix(in srgb, var(--rehberim-accent) 24%, var(--rehberim-border));
}

.job-archive-card .job-detail-link {
    border-color: color-mix(in srgb, var(--rehberim-primary) 48%, var(--rehberim-border));
    background: var(--rehberim-primary);
    color: #fff;
}

.job-archive-card .job-detail-link:hover,
.job-archive-card .job-detail-link:focus {
    background: var(--rehberim-primary-dark);
    border-color: var(--rehberim-primary-dark);
    color: #fff;
}

.job-package-urgent .job-detail-link {
    border-color: var(--rehberim-secondary);
    background: var(--rehberim-secondary);
    color: color-mix(in srgb, var(--rehberim-text) 86%, #000);
}

.job-package-urgent .job-detail-link:hover,
.job-package-urgent .job-detail-link:focus {
    background: color-mix(in srgb, var(--rehberim-secondary) 82%, #8a4b00);
    border-color: color-mix(in srgb, var(--rehberim-secondary) 82%, #8a4b00);
}

@media (max-width: 640px) {
    .job-archive-card-featured::before {
        width: 4px;
    }
}


/* v116 - featured job card duplicate tag cleanup and detail button restore */
.job-card-actions {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex: 0 0 auto;
}

.featured-job-grid .job-card-footer {
    align-items: center;
}

.featured-job-grid .job-card-actions .job-detail-link {
    min-width: 88px;
}

@media (max-width: 640px) {
    .job-card-actions {
        gap: 8px;
    }

    .featured-job-grid .job-card-actions .job-detail-link {
        min-width: 78px;
    }
}


/* v117 - premium featured cards, meta row and stronger detail button */
.job-card-premium-meta {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin-top: auto;
    padding-top: 12px;
    border-top: 1px solid var(--rehberim-border);
}

.job-premium-meta-item {
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 54px;
    padding: 8px 10px;
    border: 1px solid color-mix(in srgb, var(--rehberim-primary) 16%, var(--rehberim-border));
    border-radius: 10px;
    background: color-mix(in srgb, var(--rehberim-primary) 4%, var(--rehberim-surface));
}

.job-premium-meta-item small {
    display: block;
    margin-bottom: 3px;
    color: var(--rehberim-muted);
    font-size: 9px;
    font-weight: 700;
    line-height: 1.2;
}

.job-premium-meta-item strong {
    display: block;
    overflow: hidden;
    color: var(--rehberim-primary-dark);
    font-size: 11px;
    font-weight: 800;
    line-height: 1.3;
    text-overflow: ellipsis;
}

.job-premium-meta-item.salary {
    border-color: color-mix(in srgb, var(--rehberim-primary) 28%, var(--rehberim-border));
    background: color-mix(in srgb, var(--rehberim-primary) 8%, var(--rehberim-surface));
}

.job-premium-meta-item.salary.negotiable {
    border-color: color-mix(in srgb, var(--rehberim-secondary) 55%, var(--rehberim-border));
    background: color-mix(in srgb, var(--rehberim-secondary) 13%, var(--rehberim-surface));
}

.job-premium-meta-item.salary.negotiable strong {
    color: color-mix(in srgb, var(--rehberim-secondary) 64%, var(--rehberim-text));
}

.job-archive-card-featured {
    border-width: 1px;
    border-color: color-mix(in srgb, var(--rehberim-primary) 52%, var(--rehberim-border));
    background:
        radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--rehberim-accent) 12%, transparent) 0%, transparent 34%),
        linear-gradient(145deg, color-mix(in srgb, var(--rehberim-primary) 9%, var(--rehberim-surface)) 0%, var(--rehberim-surface) 62%);
    box-shadow: 0 18px 38px color-mix(in srgb, var(--rehberim-primary) 17%, transparent);
}

.job-archive-card-featured::after {
    content: '';
    position: absolute;
    inset: 0 0 auto 0;
    height: 4px;
    background: linear-gradient(90deg, var(--rehberim-primary), var(--rehberim-accent));
}

.job-archive-card-featured:hover {
    border-color: var(--rehberim-primary);
    box-shadow: 0 22px 44px color-mix(in srgb, var(--rehberim-primary) 22%, transparent);
}

.job-archive-card-featured.job-package-urgent {
    border-color: color-mix(in srgb, var(--rehberim-secondary) 70%, var(--rehberim-border));
    background:
        radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--rehberim-secondary) 20%, transparent) 0%, transparent 36%),
        linear-gradient(145deg, color-mix(in srgb, var(--rehberim-secondary) 14%, var(--rehberim-surface)) 0%, var(--rehberim-surface) 64%);
}

.job-archive-card-featured.job-package-urgent::after {
    background: linear-gradient(90deg, var(--rehberim-secondary), color-mix(in srgb, var(--rehberim-secondary) 58%, #8a4b00));
}

.job-archive-card .job-detail-link {
    min-width: 112px;
    min-height: 40px;
    align-items: center;
    padding: 9px 17px;
    border: 0;
    border-radius: 10px;
    background: linear-gradient(135deg, var(--rehberim-primary), var(--rehberim-primary-dark));
    color: #fff;
    box-shadow: 0 9px 18px color-mix(in srgb, var(--rehberim-primary) 26%, transparent);
    font-size: 10px;
    letter-spacing: .01em;
}

.job-archive-card .job-detail-link:hover,
.job-archive-card .job-detail-link:focus {
    transform: translateY(-1px);
    background: linear-gradient(135deg, var(--rehberim-primary-dark), var(--rehberim-primary));
    box-shadow: 0 12px 22px color-mix(in srgb, var(--rehberim-primary) 32%, transparent);
}

.job-package-urgent .job-detail-link {
    background: linear-gradient(135deg, var(--rehberim-secondary), color-mix(in srgb, var(--rehberim-secondary) 72%, #8a4b00));
    color: color-mix(in srgb, var(--rehberim-text) 90%, #000);
    box-shadow: 0 9px 18px color-mix(in srgb, var(--rehberim-secondary) 30%, transparent);
}

.job-card-tags:empty {
    display: none;
}

.featured-job-grid .job-card-footer {
    min-height: 52px;
}

@media (max-width: 1180px) {
    .job-card-premium-meta {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .job-premium-meta-item.salary {
        grid-column: 1 / -1;
    }
}

@media (max-width: 640px) {
    .job-card-premium-meta {
        grid-template-columns: 1fr;
    }

    .job-premium-meta-item.salary {
        grid-column: auto;
    }

    .job-archive-card .job-detail-link {
        min-width: 96px;
        min-height: 38px;
        padding: 8px 13px;
    }
}

/* v118 - Kampanyalar sayfası */
.campaign-directory-main {
    background: var(--rehberim-background);
}

.campaign-directory-hero {
    position: relative;
    overflow: hidden;
    min-height: 310px;
    background:
        radial-gradient(circle at 82% 28%, rgba(255,255,255,.12) 0 7%, transparent 7.5%),
        radial-gradient(circle at 72% 72%, rgba(196,138,34,.2) 0 9%, transparent 9.5%),
        linear-gradient(135deg, var(--rehberim-primary-dark), #172c76 62%, #241d73);
    color: var(--rehberim-premium-text);
}

.campaign-directory-hero.has-image {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.campaign-directory-hero.has-image::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(8,31,66,.94) 0%, rgba(16,45,95,.84) 48%, rgba(24,31,101,.42) 100%);
}

.campaign-directory-hero-inner {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(300px, .85fr);
    gap: 44px;
    align-items: center;
    min-height: 310px;
    padding-top: 34px;
    padding-bottom: 34px;
}

.campaign-directory-copy {
    max-width: 760px;
}

.campaign-directory-eyebrow {
    margin: 0 0 10px;
    color: color-mix(in srgb, var(--rehberim-secondary) 88%, #fff);
    font-size: 15px;
    font-weight: 800;
    letter-spacing: .02em;
}

.campaign-directory-copy h1 {
    max-width: 820px;
    margin: 0 0 14px;
    color: #fff;
    font-size: clamp(32px, 4vw, 54px);
    line-height: 1.08;
    letter-spacing: -.025em;
}

.campaign-directory-copy > p:not(.campaign-directory-eyebrow) {
    max-width: 680px;
    margin: 0;
    color: rgba(255,255,255,.84);
    font-size: 16px;
    line-height: 1.7;
}

.campaign-hero-points {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 24px;
}

.campaign-hero-points span {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 8px 13px;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 999px;
    background: rgba(255,255,255,.08);
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    backdrop-filter: blur(8px);
}

.campaign-directory-art {
    position: relative;
    min-height: 230px;
}

.campaign-directory-art::before {
    content: '';
    position: absolute;
    left: 50%;
    top: 52%;
    width: 210px;
    height: 150px;
    transform: translate(-50%,-50%) rotate(-7deg);
    border: 14px solid rgba(255,255,255,.94);
    border-left-width: 52px;
    border-radius: 50% 16px 16px 50%;
    box-shadow: 0 24px 54px rgba(0,0,0,.2);
}

.campaign-directory-art::after {
    content: '%';
    position: absolute;
    right: 12%;
    top: 15%;
    display: grid;
    place-items: center;
    width: 74px;
    height: 74px;
    border-radius: 20px;
    background: var(--rehberim-secondary);
    color: #fff;
    font-size: 34px;
    font-weight: 900;
    transform: rotate(9deg);
    box-shadow: 0 18px 36px rgba(0,0,0,.18);
}

.campaign-directory-art span {
    position: absolute;
    display: block;
    border-radius: 50%;
    background: color-mix(in srgb, var(--rehberim-secondary) 78%, #ffdd6b);
}

.campaign-directory-art span:nth-child(1) { width: 22px; height: 22px; left: 12%; top: 22%; }
.campaign-directory-art span:nth-child(2) { width: 15px; height: 15px; right: 20%; bottom: 18%; }
.campaign-directory-art span:nth-child(3) { width: 11px; height: 11px; left: 25%; bottom: 12%; }

.campaign-directory-shell {
    display: grid;
    gap: 20px;
    padding-top: 22px;
    padding-bottom: 42px;
}

.campaign-directory-ad .rehberim-ad {
    width: 100%;
    min-height: 150px;
    height: 150px;
    overflow: hidden;
    border-radius: 14px;
}

.campaign-directory-ad .rehberim-ad img,
.campaign-directory-ad .rehberim-ad iframe,
.campaign-directory-ad .rehberim-ad ins,
.campaign-directory-ad .rehberim-ad > a {
    display: block;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
}

.campaign-directory-ad .rehberim-ad img { object-fit: cover; }

.campaign-benefit-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    overflow: hidden;
    border: 1px solid var(--rehberim-border);
    border-radius: 16px;
    background: var(--rehberim-surface);
    box-shadow: 0 12px 28px color-mix(in srgb, var(--rehberim-shadow) 5%, transparent);
}

.campaign-benefit-strip > div {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 90px;
    padding: 18px 20px;
    border-right: 1px solid var(--rehberim-border);
}

.campaign-benefit-strip > div:last-child { border-right: 0; }

.campaign-benefit-strip span {
    display: grid;
    place-items: center;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: color-mix(in srgb, var(--rehberim-accent) 11%, var(--rehberim-surface));
    color: var(--rehberim-primary);
    font-size: 14px;
    font-weight: 900;
}

.campaign-benefit-strip strong {
    color: var(--rehberim-text);
    font-size: 13px;
    line-height: 1.45;
}

.campaign-directory-filter {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 280px auto;
    gap: 14px;
    align-items: end;
    padding: 16px;
    border: 1px solid var(--rehberim-border);
    border-radius: 14px;
    background: var(--rehberim-surface);
}

.campaign-directory-filter label {
    display: grid;
    gap: 7px;
}

.campaign-directory-filter label > span {
    color: var(--rehberim-muted);
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.campaign-directory-filter select {
    width: 100%;
    min-height: 46px;
    padding: 0 13px;
    border: 1px solid var(--rehberim-border);
    border-radius: 10px;
    background: var(--rehberim-input-surface);
    color: var(--rehberim-text);
}

.campaign-directory-filter button {
    min-height: 46px;
    padding: 0 24px;
    border: 0;
    border-radius: 10px;
    background: var(--rehberim-primary);
    color: #fff;
    font-weight: 800;
    cursor: pointer;
}

.campaign-directory-results,
.campaign-package-section {
    padding: 22px;
    border: 1px solid var(--rehberim-border);
    border-radius: 16px;
    background: var(--rehberim-surface);
}

.campaign-directory-heading {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 18px;
    margin-bottom: 18px;
}

.campaign-directory-heading p {
    margin: 0 0 4px;
    color: var(--rehberim-secondary);
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.campaign-directory-heading h2 {
    margin: 0;
    color: var(--rehberim-primary-dark);
    font-size: clamp(24px, 2.4vw, 34px);
}

.campaign-directory-heading > span {
    color: var(--rehberim-muted);
    font-size: 12px;
    font-weight: 700;
}

.campaign-directory-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.campaign-archive-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--rehberim-border);
    border-radius: 14px;
    background: var(--rehberim-surface);
    box-shadow: 0 10px 24px color-mix(in srgb, var(--rehberim-shadow) 5%, transparent);
    transition: transform .2s ease, box-shadow .2s ease;
}

.campaign-archive-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 34px color-mix(in srgb, var(--rehberim-shadow) 10%, transparent);
}

.campaign-archive-image {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background: var(--rehberim-soft-surface);
}

.campaign-archive-image img,
.campaign-image-placeholder {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.campaign-image-placeholder {
    background:
        linear-gradient(135deg, transparent 48%, color-mix(in srgb, var(--rehberim-primary) 16%, transparent) 49% 51%, transparent 52%),
        var(--rehberim-soft-surface);
}

.campaign-archive-card-body {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    padding: 15px;
}

.campaign-archive-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 10px;
}

.campaign-discount-badge,
.campaign-category-badge {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 4px 9px;
    border-radius: 999px;
    font-size: 10px;
    font-weight: 900;
}

.campaign-discount-badge {
    background: var(--rehberim-secondary);
    color: #fff;
}

.campaign-category-badge {
    background: color-mix(in srgb, var(--rehberim-primary) 9%, var(--rehberim-surface));
    color: var(--rehberim-primary);
}

.campaign-archive-card h2 {
    margin: 0 0 7px;
    font-size: 17px;
    line-height: 1.35;
}

.campaign-archive-card h2 a { color: var(--rehberim-primary-dark); }

.campaign-firm-name {
    margin: 0 0 8px;
    color: var(--rehberim-primary);
    font-size: 12px;
    font-weight: 800;
}

.campaign-archive-excerpt {
    margin: 0 0 14px;
    color: var(--rehberim-muted);
    font-size: 12px;
    line-height: 1.6;
}

.campaign-archive-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    margin-top: auto;
    padding-top: 12px;
    border-top: 1px solid var(--rehberim-border);
}

.campaign-archive-footer span {
    color: var(--rehberim-muted);
    font-size: 10px;
}

.campaign-archive-footer a {
    display: inline-flex;
    justify-content: center;
    min-height: 36px;
    padding: 8px 12px;
    border-radius: 8px;
    background: var(--rehberim-primary);
    color: #fff;
    font-size: 10px;
    font-weight: 800;
}

.campaign-pagination {
    display: flex;
    justify-content: center;
    gap: 6px;
    margin-top: 22px;
}

.campaign-pagination .page-numbers {
    display: grid;
    place-items: center;
    min-width: 38px;
    min-height: 38px;
    padding: 5px 10px;
    border: 1px solid var(--rehberim-border);
    border-radius: 8px;
    background: var(--rehberim-surface);
    color: var(--rehberim-primary);
    font-size: 12px;
    font-weight: 800;
}

.campaign-pagination .current {
    border-color: var(--rehberim-primary);
    background: var(--rehberim-primary);
    color: #fff;
}

.campaign-package-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.campaign-package-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 500px;
    padding: 22px;
    border: 1px solid var(--rehberim-border);
    border-radius: 16px;
    background: var(--rehberim-surface);
    box-shadow: 0 12px 28px color-mix(in srgb, var(--rehberim-shadow) 5%, transparent);
}

.campaign-package-card.package-premium {
    border-color: color-mix(in srgb, var(--rehberim-secondary) 70%, var(--rehberim-border));
    box-shadow: 0 18px 38px color-mix(in srgb, var(--rehberim-secondary) 14%, transparent);
}

.campaign-package-card.package-showcase {
    border-color: color-mix(in srgb, var(--rehberim-accent) 60%, var(--rehberim-border));
    background: linear-gradient(180deg, color-mix(in srgb, var(--rehberim-accent) 5%, #fff), #fff 42%);
}

.campaign-package-badge {
    align-self: flex-start;
    display: inline-flex;
    padding: 5px 10px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--rehberim-primary) 9%, var(--rehberim-surface));
    color: var(--rehberim-primary);
    font-size: 10px;
    font-weight: 900;
}

.package-premium .campaign-package-badge {
    background: color-mix(in srgb, var(--rehberim-secondary) 18%, #fff);
    color: #8a5c00;
}

.package-showcase .campaign-package-badge {
    background: color-mix(in srgb, var(--rehberim-accent) 14%, #fff);
}

.campaign-package-card h3 {
    margin: 18px 0 8px;
    color: var(--rehberim-primary-dark);
    font-size: 23px;
}

.campaign-package-card > p {
    min-height: 58px;
    margin: 0 0 14px;
    color: var(--rehberim-muted);
    font-size: 13px;
    line-height: 1.6;
}

.campaign-package-price {
    padding: 14px 0;
    border-top: 1px solid var(--rehberim-border);
    border-bottom: 1px solid var(--rehberim-border);
    color: var(--rehberim-primary);
    font-size: 26px;
    font-weight: 900;
}

.campaign-package-price small {
    color: var(--rehberim-muted);
    font-size: 11px;
    font-weight: 700;
}

.campaign-package-card ul {
    display: grid;
    gap: 10px;
    margin: 18px 0 22px;
    padding: 0;
    list-style: none;
}

.campaign-package-card li {
    position: relative;
    padding-left: 18px;
    color: var(--rehberim-text);
    font-size: 12px;
    line-height: 1.45;
}

.campaign-package-card li::before {
    content: '';
    position: absolute;
    left: 0;
    top: .5em;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--rehberim-success);
}

.campaign-package-card > a {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-height: 46px;
    margin-top: auto;
    border-radius: 10px;
    background: var(--rehberim-primary);
    color: #fff;
    font-weight: 800;
}

.package-premium > a { background: var(--rehberim-secondary); }
.package-showcase > a { background: var(--rehberim-accent); }

.campaign-contact-cta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    padding: 22px 26px;
    border: 1px solid color-mix(in srgb, var(--rehberim-accent) 26%, var(--rehberim-border));
    border-radius: 15px;
    background: linear-gradient(90deg, color-mix(in srgb, var(--rehberim-accent) 7%, #fff), #fff);
}

.campaign-contact-cta h2 {
    margin: 0 0 5px;
    color: var(--rehberim-primary-dark);
    font-size: 21px;
}

.campaign-contact-cta p {
    margin: 0;
    color: var(--rehberim-muted);
    font-size: 13px;
}

.campaign-contact-cta > a {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-width: 170px;
    min-height: 44px;
    padding: 8px 18px;
    border: 1px solid var(--rehberim-primary);
    border-radius: 9px;
    color: var(--rehberim-primary);
    font-size: 13px;
    font-weight: 800;
}

@media (max-width: 1250px) {
    .campaign-directory-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 980px) {
    .campaign-directory-hero-inner { grid-template-columns: 1fr; }
    .campaign-directory-art { display: none; }
    .campaign-benefit-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .campaign-benefit-strip > div:nth-child(2) { border-right: 0; }
    .campaign-benefit-strip > div:nth-child(-n+2) { border-bottom: 1px solid var(--rehberim-border); }
    .campaign-directory-filter { grid-template-columns: 1fr 1fr auto; }
    .campaign-directory-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .campaign-package-grid { grid-template-columns: 1fr; }
    .campaign-package-card { min-height: auto; }
}

@media (max-width: 680px) {
    .campaign-directory-hero-inner { min-height: 280px; padding-top: 28px; padding-bottom: 28px; }
    .campaign-directory-copy h1 { font-size: 34px; }
    .campaign-hero-points { display: grid; }
    .campaign-benefit-strip { grid-template-columns: 1fr; }
    .campaign-benefit-strip > div { border-right: 0; border-bottom: 1px solid var(--rehberim-border); }
    .campaign-benefit-strip > div:last-child { border-bottom: 0; }
    .campaign-directory-filter { grid-template-columns: 1fr; }
    .campaign-directory-grid { grid-template-columns: 1fr; }
    .campaign-directory-results,
    .campaign-package-section { padding: 16px; }
    .campaign-directory-heading { align-items: flex-start; }
    .campaign-contact-cta { flex-direction: column; align-items: flex-start; }
    .campaign-contact-cta > a { width: 100%; }
    .campaign-directory-ad .rehberim-ad { min-height: 90px; height: 90px; }
}


/* v119 - Kampanya detay sayfası */
.campaign-detail-main {
    padding: 24px 0 56px;
}
.campaign-detail-shell {
    display: grid;
    gap: 22px;
}
.campaign-detail-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    color: #58709a;
    font-size: 15px;
}
.campaign-detail-breadcrumb a { color: var(--rehberim-primary-dark); }
.campaign-detail-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 320px;
    gap: 22px;
    align-items: start;
}
.campaign-detail-content,
.campaign-detail-sidebar {
    display: grid;
    gap: 18px;
}
.campaign-detail-hero-card,
.campaign-detail-firm-card,
.campaign-detail-info-grid article,
.campaign-detail-cta-box,
.campaign-detail-summary-box,
.campaign-detail-benefit-strip,
.campaign-detail-related-section {
    background: #fff;
    border: 1px solid rgba(14, 42, 90, 0.12);
    border-radius: 20px;
    box-shadow: 0 14px 40px rgba(17, 45, 94, 0.06);
}
.campaign-detail-hero-card {
    display: grid;
    grid-template-columns: minmax(360px, 1.05fr) minmax(0, 1fr);
    overflow: hidden;
}
.campaign-detail-visual {
    position: relative;
    min-height: 360px;
    background: #e8edf6;
}
.campaign-detail-visual img,
.campaign-detail-image-placeholder {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}
.campaign-detail-image-placeholder {
    background: linear-gradient(135deg, #d9e5fa, #eef4ff);
}
.campaign-detail-discount {
    position: absolute;
    top: 22px;
    left: 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 120px;
    min-height: 120px;
    padding: 16px;
    border-radius: 24px;
    background: linear-gradient(135deg, #f5af19, #f1c14b);
    color: #fff;
    font-size: 30px;
    font-weight: 800;
    line-height: 1.05;
    text-align: center;
    box-shadow: 0 14px 30px rgba(228, 161, 16, 0.26);
}
.campaign-detail-hero-copy {
    display: grid;
    align-content: center;
    gap: 18px;
    padding: 34px 32px;
}
.campaign-detail-category {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(26, 91, 220, 0.08);
    color: var(--rehberim-primary-dark);
    font-size: 14px;
    font-weight: 700;
}
.campaign-detail-hero-copy h1 {
    margin: 0;
    font-size: clamp(30px, 3vw, 48px);
    line-height: 1.12;
    color: var(--rehberim-primary-dark);
}
.campaign-detail-hero-copy > p {
    margin: 0;
    font-size: 20px;
    line-height: 1.7;
    color: #4e6285;
}
.campaign-detail-dates {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}
.campaign-detail-dates div {
    background: #f5f8ff;
    border: 1px solid rgba(26, 91, 220, 0.10);
    border-radius: 14px;
    padding: 14px 16px;
    display: grid;
    gap: 4px;
}
.campaign-detail-dates span { color: #5a6f93; font-size: 14px; }
.campaign-detail-dates strong { color: var(--rehberim-primary-dark); font-size: 16px; }
.campaign-detail-firm-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 18px 24px;
}
.campaign-detail-firm-meta { display: flex; align-items: center; gap: 18px; min-width: 0; }
.campaign-detail-firm-meta h2 { margin: 0 0 8px; font-size: 28px; color: var(--rehberim-primary-dark); }
.campaign-detail-firm-meta p,
.campaign-detail-firm-meta span { margin: 0; color: #61759a; font-size: 17px; }
.campaign-detail-firm-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 14px 24px;
    border-radius: 14px;
    border: 1px solid rgba(26, 91, 220, 0.3);
    background: #f7faff;
    color: var(--rehberim-primary-dark);
    font-weight: 700;
    white-space: nowrap;
}
.campaign-detail-firm-logo .campaign-company-logo,
.campaign-company-logo {
    width: 88px;
    height: 88px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 20px;
    background: #eef4ff;
    color: var(--rehberim-primary-dark);
    font-size: 34px;
    font-weight: 800;
    overflow: hidden;
}
.campaign-company-logo.has-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.campaign-detail-info-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}
.campaign-detail-info-grid article {
    padding: 22px 20px;
}
.campaign-detail-info-grid h3 {
    margin: 0 0 14px;
    font-size: 22px;
    color: var(--rehberim-primary-dark);
}
.campaign-detail-entry-content {
    color: #4d648b;
    line-height: 1.8;
    margin-bottom: 14px;
}
.rehberim-campaign-clean-list {
    margin: 0;
    padding-left: 18px;
    display: grid;
    gap: 10px;
    color: #3f5577;
    line-height: 1.7;
}
.campaign-detail-benefit-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
    overflow: hidden;
}
.campaign-detail-benefit-strip > div {
    padding: 18px 20px;
    border-right: 1px solid rgba(14, 42, 90, 0.08);
    display: grid;
    gap: 6px;
}
.campaign-detail-benefit-strip > div:last-child { border-right: 0; }
.campaign-detail-benefit-strip strong { color: var(--rehberim-primary-dark); font-size: 18px; }
.campaign-detail-benefit-strip span { color: #60759a; line-height: 1.6; }
.campaign-detail-ad-bottom .rehberim-ad {
    min-height: 150px;
    border-radius: 18px;
}
.campaign-detail-related-section { padding: 22px; display: grid; gap: 18px; }
.campaign-detail-section-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}
.campaign-detail-section-heading h2 {
    margin: 0;
    color: var(--rehberim-primary-dark);
    font-size: 30px;
}
.campaign-detail-section-heading a { color: var(--rehberim-primary-dark); font-weight: 700; }
.campaign-detail-related-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}
.campaign-detail-related-grid .campaign-archive-card { margin: 0; }
.campaign-detail-cta-box {
    background: linear-gradient(180deg, #062d6e 0%, #0c387f 100%);
    padding: 28px 22px;
    color: #fff;
    position: sticky;
    top: 22px;
}
.campaign-detail-cta-box h2 { margin: 0 0 12px; color: #fff; font-size: 34px; line-height: 1.15; }
.campaign-detail-cta-box p { margin: 0; color: rgba(255,255,255,0.85); line-height: 1.7; }
.campaign-detail-cta-actions { margin-top: 20px; display: grid; gap: 12px; }
.campaign-detail-cta-actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 54px;
    padding: 12px 18px;
    border-radius: 14px;
    font-weight: 800;
    text-align: center;
}
.campaign-detail-whatsapp { background: #2abf4b; color: #fff; }
.campaign-detail-phone { background: #fff; color: var(--rehberim-primary-dark); }
.campaign-detail-firm-link { background: transparent; border: 1px solid rgba(255,255,255,0.35); color: #fff; }
.campaign-detail-summary-box { padding: 24px 22px; }
.campaign-detail-summary-box h2 { margin: 0 0 18px; color: var(--rehberim-primary-dark); font-size: 28px; }
.campaign-detail-summary-box dl {
    margin: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 12px 16px;
}
.campaign-detail-summary-box dt,
.campaign-detail-summary-box dd {
    margin: 0;
    padding: 10px 0;
    border-bottom: 1px solid rgba(14, 42, 90, 0.08);
}
.campaign-detail-summary-box dt { color: #5d7398; font-weight: 600; }
.campaign-detail-summary-box dd { color: var(--rehberim-primary-dark); font-weight: 700; text-align: right; }
.campaign-detail-verified {
    margin: 18px 0 0;
    color: #26a244;
    font-weight: 700;
}
@media (max-width: 1280px) {
    .campaign-detail-hero-card,
    .campaign-detail-layout,
    .campaign-detail-info-grid,
    .campaign-detail-related-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .campaign-detail-layout { grid-template-columns: minmax(0, 1fr); }
    .campaign-detail-sidebar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .campaign-detail-cta-box { position: static; }
}
@media (max-width: 991px) {
    .campaign-detail-hero-card,
    .campaign-detail-info-grid,
    .campaign-detail-benefit-strip,
    .campaign-detail-related-grid,
    .campaign-detail-sidebar,
    .campaign-detail-dates,
    .campaign-detail-summary-box dl {
        grid-template-columns: minmax(0, 1fr);
    }
    .campaign-detail-firm-card {
        flex-direction: column;
        align-items: stretch;
    }
    .campaign-detail-firm-button { width: 100%; }
}
@media (max-width: 767px) {
    .campaign-detail-main { padding: 16px 0 40px; }
    .campaign-detail-hero-copy { padding: 24px 20px; }
    .campaign-detail-hero-copy > p { font-size: 17px; }
    .campaign-detail-discount { min-width: 96px; min-height: 96px; font-size: 24px; }
    .campaign-detail-firm-meta { flex-direction: column; align-items: flex-start; }
    .campaign-detail-cta-box h2,
    .campaign-detail-summary-box h2,
    .campaign-detail-section-heading h2,
    .campaign-detail-firm-meta h2 { font-size: 24px; }
}

/* v120 - Kampanya arşivi ve detay sayfası premium tasarım eşleştirmesi */
.campaign-directory-main,
.campaign-detail-main {
    --campaign-navy: #092b61;
    --campaign-navy-deep: #061f49;
    --campaign-blue: #1459b8;
    --campaign-blue-soft: #edf4ff;
    --campaign-gold: #c88b19;
    --campaign-gold-bright: #e0a62e;
    --campaign-gold-soft: #fff8e9;
    --campaign-border: rgba(9, 43, 97, 0.14);
    --campaign-shadow: 0 18px 44px rgba(9, 43, 97, 0.10);
}

.campaign-directory-main {
    background:
        radial-gradient(circle at 12% 8%, rgba(20, 89, 184, 0.05), transparent 28%),
        linear-gradient(180deg, #f7f9fc 0%, #ffffff 40%, #f8fafc 100%);
}

.campaign-directory-results,
.campaign-package-section {
    border-color: var(--campaign-border);
    box-shadow: 0 16px 38px rgba(9, 43, 97, 0.06);
}

.campaign-archive-card {
    position: relative;
    border: 1px solid var(--campaign-border);
    border-top: 3px solid var(--campaign-gold);
    border-radius: 16px;
    background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
    box-shadow: 0 12px 30px rgba(9, 43, 97, 0.08);
    transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}

.campaign-archive-card:hover {
    transform: translateY(-6px);
    border-color: rgba(20, 89, 184, 0.28);
    box-shadow: 0 22px 46px rgba(9, 43, 97, 0.14);
}

.campaign-archive-image {
    position: relative;
    background: var(--campaign-blue-soft);
}

.campaign-archive-image::after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    height: 42%;
    background: linear-gradient(180deg, transparent, rgba(6, 31, 73, 0.18));
    pointer-events: none;
}

.campaign-archive-image img {
    transition: transform .35s ease;
}

.campaign-archive-card:hover .campaign-archive-image img {
    transform: scale(1.035);
}

.campaign-archive-badges {
    margin-bottom: 12px;
}

.campaign-discount-badge {
    border: 1px solid rgba(200, 139, 25, 0.35);
    background: linear-gradient(135deg, var(--campaign-gold), var(--campaign-gold-bright));
    color: #fff;
    box-shadow: 0 8px 18px rgba(200, 139, 25, 0.18);
}

.campaign-category-badge {
    border: 1px solid rgba(20, 89, 184, 0.16);
    background: var(--campaign-blue-soft);
    color: var(--campaign-navy);
}

.campaign-archive-card h2 a,
.campaign-firm-name {
    color: var(--campaign-navy);
}

.campaign-archive-excerpt {
    color: #536886;
}

.campaign-archive-footer {
    border-top-color: rgba(9, 43, 97, 0.10);
}

.campaign-archive-footer span {
    color: #637796;
    font-weight: 600;
}

.campaign-archive-footer a {
    min-height: 40px;
    padding: 9px 15px;
    border: 1px solid var(--campaign-navy);
    border-radius: 10px;
    background: linear-gradient(180deg, var(--campaign-navy) 0%, var(--campaign-navy-deep) 100%);
    box-shadow: 0 9px 18px rgba(9, 43, 97, 0.15);
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.campaign-archive-footer a:hover,
.campaign-archive-footer a:focus {
    transform: translateY(-1px);
    background: linear-gradient(180deg, var(--campaign-blue) 0%, var(--campaign-navy) 100%);
    box-shadow: 0 12px 24px rgba(9, 43, 97, 0.22);
    color: #fff;
}

.campaign-detail-main {
    background:
        radial-gradient(circle at 8% 4%, rgba(20, 89, 184, 0.05), transparent 26%),
        linear-gradient(180deg, #f5f8fc 0%, #ffffff 34%, #f8fafc 100%);
}

.campaign-detail-breadcrumb {
    color: #607493;
}

.campaign-detail-breadcrumb a {
    color: var(--campaign-navy);
    font-weight: 700;
}

.campaign-detail-hero-card,
.campaign-detail-firm-card,
.campaign-detail-info-grid article,
.campaign-detail-cta-box,
.campaign-detail-summary-box,
.campaign-detail-benefit-strip,
.campaign-detail-related-section {
    border-color: var(--campaign-border);
    box-shadow: var(--campaign-shadow);
}

.campaign-detail-hero-card {
    border-top: 3px solid var(--campaign-gold);
    background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
}

.campaign-detail-visual::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(6, 31, 73, 0.02), rgba(6, 31, 73, 0.16));
    pointer-events: none;
}

.campaign-detail-discount {
    z-index: 2;
    border: 1px solid rgba(255, 255, 255, 0.48);
    background: linear-gradient(135deg, var(--campaign-gold), var(--campaign-gold-bright));
    box-shadow: 0 18px 36px rgba(200, 139, 25, 0.28);
}

.campaign-detail-category {
    border: 1px solid rgba(20, 89, 184, 0.16);
    background: var(--campaign-blue-soft);
    color: var(--campaign-navy);
}

.campaign-detail-hero-copy h1,
.campaign-detail-firm-meta h2,
.campaign-detail-info-grid h3,
.campaign-detail-benefit-strip strong,
.campaign-detail-section-heading h2,
.campaign-detail-summary-box h2 {
    color: var(--campaign-navy-deep);
}

.campaign-detail-dates div {
    border-color: rgba(20, 89, 184, 0.12);
    background: linear-gradient(180deg, #f9fbff, var(--campaign-blue-soft));
}

.campaign-detail-dates strong {
    color: var(--campaign-navy);
}

.campaign-detail-firm-card {
    border-left: 4px solid var(--campaign-blue);
    background: linear-gradient(90deg, #ffffff 0%, #f7faff 100%);
}

.campaign-detail-firm-button {
    border-color: rgba(20, 89, 184, 0.24);
    background: var(--campaign-blue-soft);
    color: var(--campaign-navy);
    box-shadow: 0 8px 18px rgba(20, 89, 184, 0.08);
}

.campaign-detail-firm-button:hover,
.campaign-detail-firm-button:focus {
    border-color: var(--campaign-blue);
    background: var(--campaign-navy);
    color: #fff;
}

.campaign-detail-firm-logo .campaign-company-logo,
.campaign-company-logo {
    border: 1px solid rgba(20, 89, 184, 0.12);
    background: var(--campaign-blue-soft);
    color: var(--campaign-navy);
}

.campaign-detail-info-grid article {
    position: relative;
    overflow: hidden;
    background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
}

.campaign-detail-info-grid article::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: var(--campaign-blue);
}

.campaign-detail-info-grid article:nth-child(2)::before,
.campaign-detail-info-grid article:nth-child(4)::before {
    background: var(--campaign-gold);
}

.rehberim-campaign-clean-list li::marker {
    color: var(--campaign-blue);
    font-weight: 800;
}

.campaign-detail-benefit-strip {
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
}

.campaign-detail-benefit-strip > div {
    position: relative;
    padding-left: 54px;
}

.campaign-detail-benefit-strip > div::before {
    content: "";
    position: absolute;
    left: 18px;
    top: 22px;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    border: 5px solid var(--campaign-blue-soft);
    background: var(--campaign-blue);
    box-shadow: 0 0 0 1px rgba(20, 89, 184, 0.12);
}

.campaign-detail-benefit-strip > div:nth-child(even)::before {
    border-color: var(--campaign-gold-soft);
    background: var(--campaign-gold);
}

.campaign-detail-ad-bottom .rehberim-ad {
    border-color: rgba(9, 43, 97, 0.12);
    background: linear-gradient(180deg, #f8fafc, #eef3f9);
}

.campaign-detail-related-section {
    background: linear-gradient(180deg, #ffffff 0%, #f9fbff 100%);
}

.campaign-detail-section-heading a {
    color: var(--campaign-blue);
}

.campaign-detail-sidebar {
    position: sticky;
    top: 18px;
    align-self: start;
    max-height: calc(100vh - 36px);
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
    padding-right: 4px;
}

.campaign-detail-sidebar::-webkit-scrollbar {
    width: 7px;
}

.campaign-detail-sidebar::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: rgba(9, 43, 97, 0.22);
}

.campaign-detail-cta-box {
    position: relative;
    top: auto;
    overflow: hidden;
    border: 1px solid rgba(200, 139, 25, 0.42);
    background:
        radial-gradient(circle at 88% 12%, rgba(224, 166, 46, 0.22), transparent 28%),
        linear-gradient(145deg, var(--campaign-navy-deep) 0%, var(--campaign-navy) 58%, #103d82 100%);
    box-shadow: 0 22px 48px rgba(6, 31, 73, 0.26);
}

.campaign-detail-cta-box::after {
    content: "";
    position: absolute;
    width: 120px;
    height: 120px;
    right: -58px;
    bottom: -58px;
    border-radius: 50%;
    border: 1px solid rgba(224, 166, 46, 0.28);
}

.campaign-detail-cta-box h2,
.campaign-detail-cta-box p,
.campaign-detail-cta-actions {
    position: relative;
    z-index: 1;
}

.campaign-detail-whatsapp {
    background: linear-gradient(180deg, #31c85a, #21a946);
    box-shadow: 0 10px 20px rgba(33, 169, 70, 0.24);
}

.campaign-detail-whatsapp:hover,
.campaign-detail-whatsapp:focus {
    background: linear-gradient(180deg, #39d164, #25b64d);
    color: #fff;
    transform: translateY(-1px);
}

.campaign-detail-phone {
    border: 1px solid rgba(255, 255, 255, 0.65);
    box-shadow: 0 9px 18px rgba(0, 0, 0, 0.10);
}

.campaign-detail-firm-link {
    border-color: rgba(224, 166, 46, 0.70);
    background: rgba(255, 255, 255, 0.04);
}

.campaign-detail-firm-link:hover,
.campaign-detail-firm-link:focus {
    background: var(--campaign-gold);
    border-color: var(--campaign-gold);
    color: #fff;
}

.campaign-detail-summary-box {
    border-top: 3px solid var(--campaign-blue);
    background: linear-gradient(180deg, #ffffff 0%, #f9fbff 100%);
}

.campaign-detail-summary-box dt,
.campaign-detail-summary-box dd {
    border-bottom-color: rgba(9, 43, 97, 0.09);
}

.campaign-detail-summary-box dd {
    color: var(--campaign-navy);
}

.campaign-detail-verified {
    display: inline-flex;
    align-items: center;
    padding: 9px 12px;
    border: 1px solid rgba(38, 162, 68, 0.18);
    border-radius: 10px;
    background: rgba(38, 162, 68, 0.07);
}

.campaign-detail-related-grid .campaign-archive-card {
    border-top-color: var(--campaign-gold);
}

@media (max-width: 1280px) {
    .campaign-detail-sidebar {
        position: static;
        max-height: none;
        overflow: visible;
        padding-right: 0;
    }
}

@media (max-width: 991px) {
    .campaign-detail-benefit-strip > div {
        padding-left: 54px;
    }
}


/* v121 - kampanya detay üst alanı premium yeniden tasarım */
.campaign-detail-hero-card {
    grid-template-columns: minmax(0, 1.04fr) minmax(440px, .96fr);
    min-height: 500px;
    border: 1px solid rgba(200, 139, 25, .48);
    border-top-width: 2px;
    border-radius: 26px;
    background: #fff;
    box-shadow: 0 24px 58px rgba(6, 31, 73, .15);
    isolation: isolate;
}

.campaign-detail-visual {
    min-height: 500px;
    overflow: hidden;
    background: linear-gradient(145deg, #0a2d5a, #061f49);
}

.campaign-detail-visual img,
.campaign-detail-image-placeholder {
    object-fit: cover;
    object-position: center;
    transform: scale(1.002);
}

.campaign-detail-visual img {
    filter: saturate(.88) contrast(1.04);
}

.campaign-detail-visual::after {
    z-index: 1;
    background:
        linear-gradient(90deg, rgba(4, 24, 55, .22) 0%, rgba(4, 24, 55, .03) 56%, rgba(4, 24, 55, .16) 100%),
        linear-gradient(180deg, rgba(4, 24, 55, .04) 42%, rgba(4, 24, 55, .28) 100%);
}

.campaign-detail-discount {
    top: 28px;
    left: 28px;
    min-width: 0;
    min-height: 0;
    max-width: calc(100% - 56px);
    padding: 15px 24px 16px;
    border: 1px solid rgba(255, 255, 255, .48);
    border-radius: 16px 16px 16px 5px;
    background: linear-gradient(145deg, #e2a520 0%, #c88912 100%);
    color: #fff;
    font-size: clamp(18px, 1.7vw, 25px);
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: .01em;
    white-space: nowrap;
    box-shadow: 0 14px 32px rgba(6, 31, 73, .28), inset 0 1px 0 rgba(255,255,255,.28);
}

.campaign-detail-discount::before {
    content: "";
    width: 7px;
    height: 7px;
    margin-right: 12px;
    border-radius: 50%;
    background: #fff4cf;
    box-shadow: 0 0 0 5px rgba(255,255,255,.10);
}

.campaign-detail-hero-copy {
    position: relative;
    align-content: center;
    gap: 22px;
    padding: 52px 46px 46px;
    background:
        radial-gradient(circle at 96% 4%, rgba(200, 139, 25, .08), transparent 31%),
        linear-gradient(180deg, #fff 0%, #fcfdff 100%);
}

.campaign-detail-hero-copy::before {
    content: "";
    position: absolute;
    left: 0;
    top: 38px;
    bottom: 38px;
    width: 1px;
    background: linear-gradient(180deg, transparent, rgba(200,139,25,.48), transparent);
}

.campaign-detail-category {
    gap: 10px;
    padding: 10px 17px;
    border: 1px solid rgba(200, 139, 25, .54);
    border-radius: 999px;
    background: linear-gradient(180deg, #0c376f 0%, #082957 100%);
    color: #fff;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .015em;
    box-shadow: 0 9px 22px rgba(6, 31, 73, .14);
}

.campaign-detail-category::before {
    content: "";
    width: 9px;
    height: 9px;
    border: 2px solid #e2a520;
    transform: rotate(45deg);
}

.campaign-detail-hero-copy h1 {
    max-width: 720px;
    font-size: clamp(38px, 3.25vw, 58px);
    line-height: 1.08;
    letter-spacing: -.025em;
    text-wrap: balance;
}

.campaign-detail-hero-copy > p {
    max-width: 690px;
    font-size: clamp(17px, 1.3vw, 21px);
    line-height: 1.75;
    color: #596b87;
}

.campaign-detail-dates {
    gap: 16px;
    margin-top: 3px;
}

.campaign-detail-dates div {
    position: relative;
    min-height: 92px;
    padding: 18px 18px 17px 23px;
    border: 1px solid rgba(9, 43, 97, .13);
    border-radius: 17px;
    background: linear-gradient(180deg, #fff 0%, #f7faff 100%);
    box-shadow: 0 10px 24px rgba(9, 43, 97, .06);
    overflow: hidden;
}

.campaign-detail-dates div::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 5px;
    background: linear-gradient(180deg, #e2a520, #c88912);
}

.campaign-detail-dates span {
    color: #6a7890;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .025em;
    text-transform: uppercase;
}

.campaign-detail-dates strong {
    color: #071f48;
    font-size: clamp(16px, 1.15vw, 20px);
    line-height: 1.35;
}

@media (max-width: 1280px) {
    .campaign-detail-hero-card {
        grid-template-columns: minmax(0, 1fr) minmax(390px, .9fr);
        min-height: 450px;
    }

    .campaign-detail-visual {
        min-height: 450px;
    }

    .campaign-detail-hero-copy {
        padding: 42px 34px 38px;
    }
}

@media (max-width: 991px) {
    .campaign-detail-hero-card {
        grid-template-columns: 1fr;
        min-height: 0;
    }

    .campaign-detail-visual {
        min-height: clamp(290px, 54vw, 440px);
    }

    .campaign-detail-hero-copy::before {
        display: none;
    }
}

@media (max-width: 767px) {
    .campaign-detail-hero-card {
        border-radius: 19px;
    }

    .campaign-detail-discount {
        top: 18px;
        left: 18px;
        max-width: calc(100% - 36px);
        padding: 12px 16px 13px;
        border-radius: 13px 13px 13px 4px;
        font-size: 17px;
    }

    .campaign-detail-discount::before {
        width: 6px;
        height: 6px;
        margin-right: 9px;
    }

    .campaign-detail-hero-copy {
        gap: 17px;
        padding: 28px 20px 24px;
    }

    .campaign-detail-hero-copy h1 {
        font-size: 32px;
    }

    .campaign-detail-dates div {
        min-height: 82px;
    }
}

/* v122 - Duyurular sayfası */
.announcement-directory-main {
    padding: 22px 0 58px;
    background: #f5f7fb;
}
.announcement-top-ad {
    margin-bottom: 20px;
}
.announcement-top-ad .rehberim-ad {
    width: 100%;
    min-height: 150px;
    height: 150px;
    border-radius: 14px;
    overflow: hidden;
}
.announcement-top-ad .rehberim-ad img,
.announcement-top-ad .rehberim-ad iframe,
.announcement-top-ad .rehberim-ad ins,
.announcement-top-ad .rehberim-ad > a {
    display: block;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
}
.announcement-top-ad .rehberim-ad img { object-fit: cover; }
.announcement-directory-hero {
    position: relative;
    min-height: 280px;
    margin-bottom: 22px;
    overflow: hidden;
    background:
        radial-gradient(circle at 74% 42%, rgba(209, 151, 36, 0.24), transparent 27%),
        linear-gradient(118deg, #061f49 0%, #0a326f 54%, #061a3d 100%);
    color: #fff;
}
.announcement-directory-hero.has-image {
    background-position: center;
    background-size: cover;
}
.announcement-directory-hero.has-image::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(5, 25, 61, 0.96) 0%, rgba(5, 34, 78, 0.82) 52%, rgba(5, 25, 61, 0.42) 100%);
}
.announcement-directory-hero-inner {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 420px;
    align-items: center;
    gap: 30px;
    min-height: 280px;
    padding-block: 34px;
}
.announcement-directory-eyebrow {
    margin: 0 0 10px;
    color: #e1ad42;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.announcement-directory-hero h1 {
    margin: 0 0 14px;
    color: #fff;
    font-size: clamp(42px, 5vw, 72px);
    line-height: 1;
}
.announcement-directory-hero-inner > div:first-child > p:not(.announcement-directory-eyebrow) {
    max-width: 760px;
    margin: 0;
    color: rgba(255,255,255,.82);
    font-size: 18px;
    line-height: 1.75;
}
.announcement-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 9px;
    margin-top: 20px;
    color: rgba(255,255,255,.7);
    font-size: 13px;
}
.announcement-breadcrumb a { color: #fff; }
.announcement-hero-art {
    position: relative;
    width: 330px;
    height: 190px;
    justify-self: end;
}
.announcement-hero-art::before {
    content: "";
    position: absolute;
    right: 48px;
    top: 25px;
    width: 142px;
    height: 105px;
    border-radius: 28px 58px 58px 28px;
    background: linear-gradient(135deg, #e5b144, #b97813);
    transform: rotate(-12deg);
    box-shadow: 0 18px 45px rgba(0,0,0,.28);
}
.announcement-hero-art::after {
    content: "";
    position: absolute;
    right: 2px;
    top: 48px;
    width: 90px;
    height: 58px;
    border: 14px solid #f2c862;
    border-left: 0;
    border-radius: 0 50% 50% 0;
    transform: rotate(-12deg);
}
.announcement-hero-art span:nth-child(1) {
    position: absolute;
    right: 179px;
    top: 95px;
    width: 26px;
    height: 82px;
    border-radius: 10px;
    background: #d79825;
    transform: rotate(24deg);
}
.announcement-hero-art span:nth-child(2),
.announcement-hero-art span:nth-child(3) {
    position: absolute;
    right: 6px;
    width: 96px;
    height: 4px;
    border-radius: 99px;
    background: rgba(230, 175, 61, .82);
}
.announcement-hero-art span:nth-child(2) { top: 25px; transform: rotate(-17deg); }
.announcement-hero-art span:nth-child(3) { top: 132px; transform: rotate(16deg); }
.announcement-directory-shell {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 310px;
    gap: 22px;
    align-items: start;
}
.announcement-main-column,
.announcement-sidebar {
    display: grid;
    gap: 20px;
}
.announcement-filter-bar {
    display: grid;
    grid-template-columns: minmax(260px, 1.45fr) repeat(3, minmax(150px, .7fr)) auto;
    gap: 10px;
    padding: 14px;
    border: 1px solid #dfe5ef;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(12, 41, 86, .05);
}
.announcement-filter-bar label,
.announcement-filter-bar input,
.announcement-filter-bar select,
.announcement-filter-bar button {
    min-width: 0;
}
.announcement-filter-bar input,
.announcement-filter-bar select {
    width: 100%;
    min-height: 48px;
    border: 1px solid #d9e1ec;
    border-radius: 10px;
    background: #fff;
    color: #17325f;
    padding: 0 14px;
    font: inherit;
}
.announcement-search-field {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
}
.announcement-search-field input {
    border-radius: 10px 0 0 10px;
}
.announcement-search-field button {
    min-width: 72px;
    border: 0;
    border-radius: 0 10px 10px 0;
    background: #082c67;
    color: #fff;
    font-weight: 800;
}
.announcement-filter-button {
    min-height: 48px;
    padding: 0 22px;
    border: 0;
    border-radius: 10px;
    background: linear-gradient(135deg, #d49a24, #e5b84f);
    color: #fff;
    font-weight: 800;
}
.announcement-featured-section,
.announcement-results-section {
    display: grid;
    gap: 14px;
}
.announcement-section-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    border-bottom: 1px solid rgba(207, 151, 32, .45);
    padding-bottom: 10px;
}
.announcement-section-heading h2 {
    margin: 0;
    color: #082b62;
    font-size: 20px;
    letter-spacing: .01em;
}
.announcement-section-heading span {
    color: #667895;
    font-size: 12px;
    font-weight: 700;
}
.announcement-featured-grid,
.announcement-results-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}
.announcement-archive-card {
    display: grid;
    grid-template-columns: 112px minmax(0, 1fr);
    min-height: 176px;
    overflow: hidden;
    border: 1px solid #dfe5ef;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 9px 26px rgba(12, 42, 85, .05);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.announcement-archive-card:hover {
    transform: translateY(-3px);
    border-color: rgba(205, 145, 25, .55);
    box-shadow: 0 16px 34px rgba(12, 42, 85, .10);
}
.announcement-card-featured {
    border-color: rgba(211, 153, 34, .46);
    background: linear-gradient(180deg, #fffdf8, #fff);
}
.announcement-card-image {
    display: block;
    min-height: 100%;
    overflow: hidden;
    background: #082b62;
}
.announcement-card-image img,
.announcement-image-placeholder {
    width: 100%;
    height: 100%;
    min-height: 176px;
    display: block;
    object-fit: cover;
}
.announcement-image-placeholder {
    position: relative;
    background:
        linear-gradient(145deg, transparent 42%, rgba(215, 160, 43, .18) 43% 45%, transparent 46%),
        radial-gradient(circle at 72% 28%, rgba(220, 169, 59, .32), transparent 24%),
        linear-gradient(150deg, #09234e, #0c3b7b);
}
.announcement-image-placeholder::before {
    content: "";
    position: absolute;
    left: 23px;
    top: 48px;
    width: 54px;
    height: 44px;
    border: 4px solid #e3ad3f;
    border-radius: 9px;
}
.announcement-image-placeholder::after {
    content: "";
    position: absolute;
    left: 38px;
    top: 91px;
    width: 25px;
    height: 42px;
    border-radius: 0 0 10px 10px;
    background: #d69b27;
    transform: rotate(-8deg);
}
.announcement-card-body {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 13px 13px 12px;
}
.announcement-card-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 7px;
}
.announcement-featured-badge,
.announcement-status-badge {
    display: inline-flex;
    align-items: center;
    padding: 4px 8px;
    border-radius: 999px;
    font-size: 9px;
    line-height: 1;
    font-weight: 800;
}
.announcement-featured-badge {
    border: 1px solid rgba(205, 145, 25, .42);
    background: #fff8e8;
    color: #99650a;
}
.announcement-status-badge {
    margin-left: auto;
    border: 1px solid #c8e9d1;
    background: #effbf2;
    color: #19833d;
}
.status-important .announcement-status-badge,
.status-maintenance .announcement-status-badge {
    border-color: #f0d09b;
    background: #fff6e6;
    color: #a86508;
}
.status-security .announcement-status-badge {
    border-color: #c7d9f7;
    background: #eff5ff;
    color: #235ba8;
}
.status-event .announcement-status-badge,
.status-campaign .announcement-status-badge {
    border-color: #d6c9f1;
    background: #f6f0ff;
    color: #6d3db0;
}
.announcement-archive-card h2 {
    margin: 0 0 7px;
    font-size: 15px;
    line-height: 1.32;
}
.announcement-archive-card h2 a { color: #082b62; }
.announcement-archive-card p {
    display: -webkit-box;
    overflow: hidden;
    margin: 0 0 9px;
    color: #566b8d;
    font-size: 11px;
    line-height: 1.5;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}
.announcement-card-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 5px 10px;
    margin-top: auto;
    padding-top: 9px;
    border-top: 1px solid #e5eaf2;
    color: #6d7f9a;
    font-size: 9px;
}
.announcement-detail-button {
    position: absolute;
    right: 12px;
    bottom: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 54px;
    min-height: 30px;
    padding: 6px 10px;
    border-radius: 8px;
    background: #082b62;
    color: #fff;
    font-size: 10px;
    font-weight: 800;
}
.announcement-card-meta { padding-right: 60px; }
.announcement-pagination {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 4px;
}
.announcement-pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 38px;
    min-height: 38px;
    padding: 7px 11px;
    border: 1px solid #dce3ed;
    border-radius: 8px;
    background: #fff;
    color: #193968;
    font-size: 12px;
    font-weight: 700;
}
.announcement-pagination .current {
    border-color: #082b62;
    background: #082b62;
    color: #fff;
}
.announcement-sidebar {
    position: sticky;
    top: 20px;
}
.announcement-submit-cta,
.announcement-reminders-box {
    border: 1px solid #dfe5ef;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 10px 30px rgba(12, 42, 85, .06);
}
.announcement-submit-cta {
    overflow: hidden;
    padding: 24px 22px;
    background:
        radial-gradient(circle at 100% 0, rgba(215, 159, 42, .22), transparent 32%),
        linear-gradient(180deg, #082b62, #061f49);
    color: #fff;
    text-align: center;
}
.announcement-submit-symbol {
    display: block;
    width: 64px;
    height: 64px;
    margin: 0 auto 14px;
    border: 2px solid #d8a43b;
    border-radius: 50%;
    position: relative;
}
.announcement-submit-symbol::before {
    content: "";
    position: absolute;
    left: 17px;
    top: 19px;
    width: 29px;
    height: 21px;
    border: 2px solid #e5b64f;
    transform: skew(-18deg) rotate(-22deg);
}
.announcement-submit-eyebrow {
    margin: 0 0 14px;
    color: #e4b34d;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.announcement-submit-cta h2 {
    margin: 0 0 10px;
    color: #fff;
    font-size: 23px;
}
.announcement-submit-cta > p:not(.announcement-submit-eyebrow) {
    margin: 0;
    color: rgba(255,255,255,.8);
    font-size: 13px;
    line-height: 1.7;
}
.announcement-submit-cta > a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 46px;
    margin-top: 18px;
    border-radius: 9px;
    background: linear-gradient(135deg, #d19621, #e6b94d);
    color: #fff;
    font-weight: 800;
}
.announcement-sidebar-ad .rehberim-ad {
    width: 100%;
    min-height: 250px;
    height: 250px;
    border-radius: 14px;
    overflow: hidden;
}
.announcement-sidebar-ad .rehberim-ad img,
.announcement-sidebar-ad .rehberim-ad iframe,
.announcement-sidebar-ad .rehberim-ad ins,
.announcement-sidebar-ad .rehberim-ad > a {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    display: block;
}
.announcement-sidebar-ad .rehberim-ad img { object-fit: cover; }
.announcement-reminders-box {
    padding: 20px;
}
.announcement-reminders-box h2 {
    margin: 0 0 13px;
    color: #0a2c62;
    font-size: 17px;
}
.announcement-reminders-box > div {
    display: grid;
}
.announcement-reminders-box > div a {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    padding: 11px 0;
    border-bottom: 1px solid #e8edf4;
    color: #344e75;
    font-size: 11px;
}
.announcement-reminders-box time {
    color: #9d6b14;
    font-size: 9px;
    white-space: nowrap;
}
.announcement-reminders-all {
    display: block;
    margin-top: 16px;
    color: #155ac3;
    font-size: 11px;
    font-weight: 800;
    text-align: center;
}

/* Duyuru gönder sayfası */
.announcement-submit-main { padding-bottom: 56px; background: #f5f7fb; }
.announcement-submit-hero {
    padding: 48px 0;
    background: linear-gradient(120deg, #061f49, #0b397c);
    color: #fff;
}
.announcement-submit-hero nav { display: flex; gap: 9px; color: rgba(255,255,255,.7); font-size: 13px; }
.announcement-submit-hero nav a { color: #fff; }
.announcement-submit-hero h1 { margin: 14px 0 8px; color: #fff; font-size: clamp(34px, 5vw, 56px); }
.announcement-submit-hero p { max-width: 760px; margin: 0; color: rgba(255,255,255,.82); line-height: 1.7; }
.announcement-submit-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 310px;
    gap: 22px;
    align-items: start;
    padding-top: 24px;
}
.announcement-submit-content,
.announcement-submit-sidebar { display: grid; gap: 18px; }
.announcement-submit-form,
.announcement-submit-login-card,
.announcement-submit-sidebar section {
    border: 1px solid #dfe5ef;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 10px 30px rgba(12,42,85,.05);
}
.announcement-submit-form { display: grid; gap: 18px; padding: 22px; }
.announcement-submit-form section { display: grid; gap: 15px; padding-bottom: 18px; border-bottom: 1px solid #e5eaf2; }
.announcement-submit-form section:last-of-type { border-bottom: 0; padding-bottom: 0; }
.announcement-submit-form h2,
.announcement-submit-login-card h2,
.announcement-submit-sidebar h2 { margin: 0; color: #082b62; font-size: 22px; }
.announcement-submit-grid { display: grid; gap: 14px; }
.announcement-submit-grid.two-columns { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.announcement-submit-form label { display: grid; gap: 7px; color: #29476f; font-weight: 700; font-size: 13px; }
.announcement-submit-form input,
.announcement-submit-form select,
.announcement-submit-form textarea {
    width: 100%;
    border: 1px solid #d9e1ec;
    border-radius: 10px;
    background: #fff;
    color: #17325f;
    padding: 12px 13px;
    font: inherit;
}
.announcement-image-upload {
    min-height: 145px;
    align-content: center;
    justify-items: center;
    border: 1px dashed #9db2d1;
    border-radius: 12px;
    background: #f7faff;
    text-align: center;
}
.announcement-image-upload input { max-width: 320px; border: 0; background: transparent; }
.announcement-image-upload small { color: #71829d; font-weight: 400; }
.announcement-submit-consent { grid-template-columns: auto 1fr; align-items: start; }
.announcement-submit-consent input { width: auto; margin-top: 3px; }
.announcement-submit-form > button,
.announcement-submit-login-card a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    border: 0;
    border-radius: 10px;
    background: #082b62;
    color: #fff;
    font-weight: 800;
}
.announcement-submit-login-card { padding: 28px; }
.announcement-submit-login-card p { color: #5b7093; line-height: 1.7; }
.announcement-submit-login-card a { max-width: 170px; padding: 0 22px; }
.announcement-submit-sidebar { position: sticky; top: 20px; }
.announcement-submit-sidebar section { padding: 22px; }
.announcement-submit-sidebar ol,
.announcement-submit-sidebar ul { margin: 14px 0 0; padding-left: 20px; display: grid; gap: 11px; color: #4c6387; line-height: 1.6; }
.announcement-submit-notice { padding: 14px 16px; border-radius: 10px; font-weight: 700; }
.announcement-submit-notice.success { background: #eaf8ee; color: #19733a; border: 1px solid #bce1c6; }
.announcement-submit-notice.error { background: #fff1ed; color: #9a3d27; border: 1px solid #f1c2b7; }

@media (max-width: 1380px) {
    .announcement-featured-grid,
    .announcement-results-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 1100px) {
    .announcement-directory-hero-inner { grid-template-columns: minmax(0, 1fr) 270px; }
    .announcement-directory-shell,
    .announcement-submit-layout { grid-template-columns: minmax(0, 1fr); }
    .announcement-sidebar,
    .announcement-submit-sidebar { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .announcement-reminders-box { grid-column: 1 / -1; }
    .announcement-filter-bar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .announcement-search-field { grid-column: 1 / -1; }
}
@media (max-width: 760px) {
    .announcement-directory-main { padding-top: 12px; }
    .announcement-top-ad .rehberim-ad { height: 110px; min-height: 110px; }
    .announcement-directory-hero-inner { grid-template-columns: 1fr; min-height: 245px; }
    .announcement-hero-art { display: none; }
    .announcement-directory-hero h1 { font-size: 45px; }
    .announcement-filter-bar,
    .announcement-featured-grid,
    .announcement-results-grid,
    .announcement-sidebar,
    .announcement-submit-sidebar,
    .announcement-submit-grid.two-columns { grid-template-columns: 1fr; }
    .announcement-search-field { grid-column: auto; }
    .announcement-archive-card { grid-template-columns: 100px minmax(0, 1fr); }
    .announcement-reminders-box { grid-column: auto; }
}
@media (max-width: 480px) {
    .announcement-archive-card { grid-template-columns: 1fr; }
    .announcement-card-image img,
    .announcement-image-placeholder { min-height: 150px; height: 150px; }
    .announcement-detail-button { position: static; width: 100%; margin-top: 10px; }
    .announcement-card-meta { padding-right: 0; }
}

/* v123 - Haberler sayfası */
.news-archive-main {
    padding-bottom: 56px;
    background: var(--rehberim-background);
}

.news-archive-hero {
    position: relative;
    overflow: hidden;
    min-height: 260px;
    background:
        radial-gradient(circle at 74% 40%, color-mix(in srgb, var(--rehberim-primary) 38%, transparent) 0 2px, transparent 3px) 0 0 / 28px 28px,
        linear-gradient(115deg, var(--rehberim-primary-dark) 0%, color-mix(in srgb, var(--rehberim-primary-dark) 84%, var(--rehberim-primary)) 58%, var(--rehberim-primary) 100%);
    color: var(--rehberim-contrast-text);
}

.news-archive-hero.has-image {
    background-position: center;
    background-size: cover;
}

.news-archive-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, color-mix(in srgb, var(--rehberim-primary-dark) 96%, transparent) 0%, color-mix(in srgb, var(--rehberim-primary-dark) 80%, transparent) 52%, color-mix(in srgb, var(--rehberim-primary-dark) 22%, transparent) 100%);
}

.news-archive-hero::after {
    content: "";
    position: absolute;
    right: 7%;
    bottom: -70px;
    width: 360px;
    height: 240px;
    border: 34px solid color-mix(in srgb, var(--rehberim-secondary) 28%, transparent);
    border-radius: 50%;
    transform: rotate(-12deg);
    opacity: .6;
}

.news-archive-hero-inner {
    position: relative;
    z-index: 1;
    display: grid;
    align-content: center;
    min-height: 260px;
    padding-block: 46px;
}

.news-archive-hero h1 {
    margin: 0 0 12px;
    max-width: 720px;
    color: var(--rehberim-contrast-text);
    font-size: clamp(38px, 5vw, 66px);
    line-height: 1.04;
    letter-spacing: -.025em;
    text-transform: uppercase;
}

.news-archive-hero nav {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    align-items: center;
    margin-bottom: 13px;
    font-size: 14px;
    color: color-mix(in srgb, var(--rehberim-contrast-text) 76%, transparent);
}

.news-archive-hero nav a {
    color: var(--rehberim-contrast-text);
    font-weight: 700;
}

.news-archive-hero p {
    max-width: 680px;
    margin: 0;
    color: color-mix(in srgb, var(--rehberim-contrast-text) 84%, transparent);
    font-size: 17px;
    line-height: 1.65;
}

.news-archive-shell {
    display: grid;
    gap: 22px;
    padding-top: 24px;
}

.news-archive-ad .rehberim-ad {
    width: 100%;
    min-height: 150px;
    height: 150px;
    overflow: hidden;
    border-radius: 16px;
    border: 1px solid color-mix(in srgb, var(--rehberim-primary) 9%, var(--rehberim-border));
    background: var(--rehberim-ad-surface);
}

.news-archive-ad .rehberim-ad img,
.news-archive-ad .rehberim-ad iframe,
.news-archive-ad .rehberim-ad ins,
.news-archive-ad .rehberim-ad > a {
    display: block;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
}

.news-archive-ad .rehberim-ad img {
    object-fit: cover;
}

.news-archive-tabs {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 7px;
    overflow-x: auto;
    border: 1px solid var(--rehberim-border);
    border-radius: 14px;
    background: var(--rehberim-surface);
    box-shadow: 0 12px 28px color-mix(in srgb, var(--rehberim-shadow) 5%, transparent);
}

.news-archive-tabs a {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 9px 16px;
    border-radius: 9px;
    color: var(--rehberim-text);
    font-size: 13px;
    font-weight: 750;
    white-space: nowrap;
}

.news-archive-tabs a:hover,
.news-archive-tabs a.is-active {
    background: var(--rehberim-primary-dark);
    color: var(--rehberim-contrast-text);
}

.news-archive-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 24px;
    align-items: start;
}

.news-archive-content,
.news-archive-sidebar {
    display: grid;
    gap: 22px;
    min-width: 0;
}

.news-featured-section {
    display: grid;
    grid-template-columns: minmax(0, 1.68fr) minmax(300px, .92fr);
    gap: 14px;
    padding: 14px;
    border: 1px solid var(--rehberim-border);
    border-radius: 18px;
    background: var(--rehberim-surface);
    box-shadow: 0 16px 34px color-mix(in srgb, var(--rehberim-shadow) 6%, transparent);
}

.news-featured-main {
    position: relative;
    min-height: 500px;
    overflow: hidden;
    border-radius: 14px;
    background: var(--rehberim-primary-dark);
}

.news-featured-main-image,
.news-featured-main-image img,
.news-featured-main-image .news-image-placeholder {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    display: block;
}

.news-featured-main-image img {
    object-fit: cover;
    transition: transform .45s ease;
}

.news-featured-main:hover .news-featured-main-image img {
    transform: scale(1.035);
}

.news-image-placeholder {
    background:
        linear-gradient(135deg, color-mix(in srgb, var(--rehberim-primary) 38%, var(--rehberim-soft-surface)), var(--rehberim-primary-dark));
}

.news-featured-main-overlay {
    position: absolute;
    inset: 0;
    display: grid;
    align-content: end;
    padding: 32px;
    background: linear-gradient(180deg, transparent 15%, color-mix(in srgb, var(--rehberim-primary-dark) 24%, transparent) 44%, color-mix(in srgb, var(--rehberim-primary-dark) 94%, transparent) 100%);
    color: var(--rehberim-contrast-text);
}

.news-category-label {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    max-width: 100%;
    min-height: 24px;
    padding: 5px 9px;
    overflow: hidden;
    border-radius: 6px;
    background: var(--rehberim-accent);
    color: var(--rehberim-contrast-text);
    font-size: 10px;
    font-weight: 800;
    line-height: 1.2;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.news-featured-main-overlay h2 {
    max-width: 760px;
    margin: 15px 0 10px;
    font-size: clamp(28px, 3.1vw, 47px);
    line-height: 1.08;
}

.news-featured-main-overlay h2 a,
.news-featured-main-overlay h2 a:hover {
    color: var(--rehberim-contrast-text);
}

.news-featured-main-overlay p {
    max-width: 680px;
    margin: 0 0 18px;
    color: color-mix(in srgb, var(--rehberim-contrast-text) 84%, transparent);
    font-size: 16px;
    line-height: 1.65;
}

.news-meta-line {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 18px;
    align-items: center;
    color: var(--rehberim-muted);
    font-size: 12px;
}

.news-featured-main .news-meta-line {
    color: color-mix(in srgb, var(--rehberim-contrast-text) 75%, transparent);
}

.news-featured-side {
    display: grid;
    grid-template-rows: repeat(4, minmax(0, 1fr));
    gap: 10px;
}

.news-featured-compact {
    display: grid;
    grid-template-columns: 132px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    min-height: 112px;
    padding: 8px;
    border: 1px solid color-mix(in srgb, var(--rehberim-primary) 8%, var(--rehberim-border));
    border-radius: 12px;
    background: var(--rehberim-surface);
    transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}

.news-featured-compact:hover {
    transform: translateY(-2px);
    border-color: color-mix(in srgb, var(--rehberim-primary) 35%, var(--rehberim-border));
    box-shadow: 0 10px 22px color-mix(in srgb, var(--rehberim-shadow) 7%, transparent);
}

.news-featured-compact-image {
    display: block;
    width: 132px;
    height: 94px;
    overflow: hidden;
    border-radius: 9px;
    background: var(--rehberim-soft-surface);
}

.news-featured-compact-image img,
.news-featured-compact-image .news-image-placeholder {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.news-featured-compact h3 {
    margin: 7px 0 8px;
    font-size: 15px;
    line-height: 1.3;
}

.news-featured-compact h3 a {
    color: var(--rehberim-primary-dark);
}

.news-results-section {
    display: grid;
    gap: 16px;
}

.news-section-heading {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    align-items: center;
    padding-bottom: 12px;
    border-bottom: 2px solid color-mix(in srgb, var(--rehberim-secondary) 55%, var(--rehberim-border));
}

.news-section-heading h2 {
    margin: 0;
    color: var(--rehberim-primary-dark);
    font-size: 27px;
}

.news-section-heading span {
    color: var(--rehberim-muted);
    font-size: 13px;
    font-weight: 700;
}

.news-filter-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
    gap: 12px;
    align-items: end;
    padding: 14px;
    border: 1px solid var(--rehberim-border);
    border-radius: 14px;
    background: var(--rehberim-surface);
}

.news-filter-form label {
    display: grid;
    gap: 6px;
}

.news-filter-form label > span {
    color: var(--rehberim-primary-dark);
    font-size: 12px;
    font-weight: 750;
}

.news-filter-form select {
    width: 100%;
    height: 44px;
    padding: 0 12px;
    border: 1px solid var(--rehberim-border);
    border-radius: 9px;
    background: var(--rehberim-input-surface);
    color: var(--rehberim-text);
}

.news-filter-form button {
    min-width: 110px;
    height: 44px;
    padding: 0 18px;
    border: 0;
    border-radius: 9px;
    background: var(--rehberim-primary-dark);
    color: var(--rehberim-contrast-text);
    font-weight: 800;
    cursor: pointer;
}

.news-archive-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 15px;
}

.news-archive-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--rehberim-border);
    border-radius: 14px;
    background: var(--rehberim-surface);
    box-shadow: 0 10px 22px color-mix(in srgb, var(--rehberim-shadow) 4%, transparent);
    transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}

.news-archive-card:hover {
    transform: translateY(-4px);
    border-color: color-mix(in srgb, var(--rehberim-primary) 32%, var(--rehberim-border));
    box-shadow: 0 16px 30px color-mix(in srgb, var(--rehberim-shadow) 8%, transparent);
}

.news-archive-card-image {
    position: relative;
    display: block;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background: var(--rehberim-soft-surface);
}

.news-archive-card-image img,
.news-archive-card-image .news-image-placeholder {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform .35s ease;
}

.news-archive-card:hover .news-archive-card-image img {
    transform: scale(1.035);
}

.news-archive-card-image .news-category-label {
    position: absolute;
    left: 10px;
    bottom: 10px;
    z-index: 1;
}

.news-archive-card-body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    padding: 14px;
}

.news-archive-card-body time {
    color: var(--rehberim-muted);
    font-size: 11px;
}

.news-archive-card-body h2 {
    margin: 8px 0;
    font-size: 16px;
    line-height: 1.36;
}

.news-archive-card-body h2 a {
    color: var(--rehberim-primary-dark);
}

.news-archive-card-body > p {
    margin: 0 0 14px;
    color: var(--rehberim-muted);
    font-size: 13px;
    line-height: 1.55;
}

.news-archive-card-footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 6px 10px;
    margin-top: auto;
    padding-top: 11px;
    border-top: 1px solid var(--rehberim-border);
    color: var(--rehberim-muted);
    font-size: 10px;
}

.news-pagination {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
    padding-top: 10px;
}

.news-pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 38px;
    min-height: 38px;
    padding: 6px 11px;
    border: 1px solid var(--rehberim-border);
    border-radius: 8px;
    background: var(--rehberim-surface);
    color: var(--rehberim-primary-dark);
    font-weight: 750;
}

.news-pagination .current,
.news-pagination .page-numbers:hover {
    border-color: var(--rehberim-primary-dark);
    background: var(--rehberim-primary-dark);
    color: var(--rehberim-contrast-text);
}

.news-archive-sidebar {
    position: sticky;
    top: 22px;
    align-self: start;
}

.news-sidebar-box,
.news-newsletter-box {
    overflow: hidden;
    border: 1px solid var(--rehberim-border);
    border-radius: 15px;
    background: var(--rehberim-surface);
    box-shadow: 0 12px 26px color-mix(in srgb, var(--rehberim-shadow) 5%, transparent);
}

.news-sidebar-box > h2,
.news-newsletter-box > h2 {
    margin: 0;
    padding: 16px 17px;
    color: var(--rehberim-primary-dark);
    font-size: 17px;
    text-transform: uppercase;
}

.news-search-box > h2 {
    background: var(--rehberim-primary-dark);
    color: var(--rehberim-contrast-text);
}

.news-search-box form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    padding: 14px;
}

.news-search-box input {
    width: 100%;
    height: 44px;
    min-width: 0;
    padding: 0 12px;
    border: 1px solid var(--rehberim-border);
    border-radius: 9px;
    background: var(--rehberim-input-surface);
}

.news-search-box button {
    min-width: 62px;
    height: 44px;
    border: 0;
    border-radius: 9px;
    background: var(--rehberim-primary-dark);
    color: var(--rehberim-contrast-text);
    font-weight: 800;
    cursor: pointer;
}

.news-categories-box > div {
    padding: 0 16px 13px;
}

.news-categories-box a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 46px;
    border-bottom: 1px solid var(--rehberim-border);
    color: var(--rehberim-text);
    font-size: 13px;
}

.news-categories-box a:last-child {
    border-bottom: 0;
}

.news-categories-box a strong {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 30px;
    min-height: 24px;
    padding: 3px 8px;
    border-radius: 999px;
    background: var(--rehberim-soft-surface);
    color: var(--rehberim-primary-dark);
    font-size: 11px;
}

.news-newsletter-box {
    padding: 20px;
    background:
        linear-gradient(135deg, color-mix(in srgb, var(--rehberim-primary-dark) 96%, transparent), color-mix(in srgb, var(--rehberim-primary) 92%, transparent));
    color: var(--rehberim-contrast-text);
}

.news-newsletter-box > h2 {
    padding: 0;
    color: var(--rehberim-secondary);
    font-size: 18px;
}

.news-newsletter-box p {
    margin: 12px 0 18px;
    color: color-mix(in srgb, var(--rehberim-contrast-text) 82%, transparent);
    font-size: 13px;
    line-height: 1.6;
}

.news-newsletter-box > a,
.news-newsletter-box form [type="submit"] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 44px;
    padding: 9px 16px;
    border: 0;
    border-radius: 9px;
    background: var(--rehberim-secondary);
    color: var(--rehberim-primary-dark);
    font-weight: 800;
}

.news-popular-list {
    display: grid;
    gap: 1px;
    padding: 0 14px 14px;
}

.news-popular-list > a {
    display: grid;
    grid-template-columns: 92px minmax(0, 1fr);
    gap: 11px;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px solid var(--rehberim-border);
}

.news-popular-list > a:last-child {
    border-bottom: 0;
}

.news-popular-image {
    display: block;
    width: 92px;
    height: 68px;
    overflow: hidden;
    border-radius: 8px;
    background: var(--rehberim-soft-surface);
}

.news-popular-image img,
.news-popular-image .news-image-placeholder {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.news-popular-list strong {
    display: block;
    color: var(--rehberim-primary-dark);
    font-size: 13px;
    line-height: 1.35;
}

.news-popular-list small {
    display: block;
    margin-top: 7px;
    color: var(--rehberim-muted);
    font-size: 10px;
}

@media (max-width: 1450px) {
    .news-archive-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 1180px) {
    .news-archive-layout {
        grid-template-columns: minmax(0, 1fr);
    }

    .news-archive-sidebar {
        position: static;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .news-featured-section {
        grid-template-columns: minmax(0, 1.4fr) minmax(280px, .9fr);
    }
}

@media (max-width: 900px) {
    .news-featured-section {
        grid-template-columns: minmax(0, 1fr);
    }

    .news-featured-main {
        min-height: 440px;
    }

    .news-featured-side {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-rows: none;
    }

    .news-featured-compact {
        grid-template-columns: 115px minmax(0, 1fr);
    }

    .news-featured-compact-image {
        width: 115px;
    }

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

@media (max-width: 680px) {
    .news-archive-hero,
    .news-archive-hero-inner {
        min-height: 220px;
    }

    .news-archive-hero-inner {
        padding-block: 34px;
    }

    .news-archive-ad .rehberim-ad {
        height: 110px;
        min-height: 110px;
    }

    .news-featured-section {
        padding: 9px;
    }

    .news-featured-main {
        min-height: 390px;
    }

    .news-featured-main-overlay {
        padding: 22px;
    }

    .news-featured-main-overlay h2 {
        font-size: 29px;
    }

    .news-featured-main-overlay p {
        font-size: 14px;
    }

    .news-featured-side,
    .news-archive-grid,
    .news-archive-sidebar,
    .news-filter-form {
        grid-template-columns: minmax(0, 1fr);
    }

    .news-featured-compact {
        grid-template-columns: 105px minmax(0, 1fr);
    }

    .news-featured-compact-image {
        width: 105px;
        height: 82px;
    }

    .news-filter-form button {
        width: 100%;
    }

    .news-section-heading {
        align-items: flex-start;
        flex-direction: column;
    }
}


/* Announcement detail page */
.announcement-single-main {
    padding: 28px 0 56px;
}
.announcement-single-shell {
    display: grid;
    gap: 24px;
}
.announcement-single-hero {
    position: relative;
    overflow: hidden;
    border-radius: 24px;
    background: linear-gradient(135deg, #082b62 0%, #0b3a84 55%, #061a39 100%);
    color: #fff;
    box-shadow: 0 20px 46px rgba(8, 43, 98, 0.16);
}
.announcement-single-hero.has-image {
    background-size: cover;
    background-position: center;
}
.announcement-single-hero-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(3, 19, 47, 0.96) 0%, rgba(5, 34, 84, 0.88) 45%, rgba(5, 28, 66, 0.54) 100%);
}
.announcement-single-hero-inner {
    position: relative;
    z-index: 1;
    padding: 28px 38px 34px;
}
.announcement-single-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    font-size: 14px;
    color: rgba(255,255,255,0.84);
    margin-bottom: 22px;
}
.announcement-single-breadcrumb a,
.announcement-single-breadcrumb strong { color: #fff; }
.announcement-single-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 290px;
    gap: 30px;
    align-items: center;
}
.announcement-single-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 18px;
}
.announcement-single-badge {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 0 16px;
    border-radius: 999px;
    background: rgba(255,255,255,0.14);
    border: 1px solid rgba(255,255,255,0.18);
    color: #fff;
    font-size: 14px;
    font-weight: 700;
}
.announcement-single-badge.primary,
.announcement-single-mini-badge { background: #d39a1d; color: #fff; border-color: #d39a1d; }
.announcement-single-badge.accent { background: #0f8d50; border-color: #0f8d50; }
.announcement-single-hero-copy h1 {
    margin: 0 0 16px;
    font-size: clamp(34px, 4vw, 58px);
    line-height: 1.08;
    color: #fff;
}
.announcement-single-hero-copy p {
    max-width: 760px;
    margin: 0;
    font-size: 17px;
    line-height: 1.8;
    color: rgba(255,255,255,0.86);
}
.announcement-single-meta-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 22px;
}
.announcement-single-meta-strip span {
    display: inline-flex;
    align-items: center;
    min-height: 42px;
    padding: 0 16px;
    border-radius: 999px;
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.16);
    font-weight: 600;
}
.announcement-single-hero-art {
    min-height: 210px;
    border-radius: 22px;
    background:
        radial-gradient(circle at 25% 35%, rgba(255,255,255,0.22) 0 14%, transparent 15%),
        radial-gradient(circle at 72% 28%, rgba(211,154,29,0.42) 0 11%, transparent 12%),
        linear-gradient(135deg, rgba(255,255,255,0.08) 0%, rgba(255,255,255,0.02) 100%);
    border: 1px solid rgba(255,255,255,0.1);
    position: relative;
}
.announcement-single-hero-art::before,
.announcement-single-hero-art::after {
    content: "";
    position: absolute;
    border-radius: 20px;
    background: rgba(255,255,255,0.1);
}
.announcement-single-hero-art::before {
    width: 72px; height: 72px; right: 28px; top: 22px;
}
.announcement-single-hero-art::after {
    width: 120px; height: 120px; left: 36px; bottom: 26px;
    border-radius: 999px;
}
.announcement-single-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.7fr) minmax(300px, 0.83fr);
    gap: 22px;
    align-items: start;
}
.announcement-single-content,
.announcement-single-sidebar {
    display: grid;
    gap: 22px;
}
.announcement-single-entry-card,
.announcement-single-source-card,
.announcement-single-contact-card,
.announcement-single-summary-card,
.announcement-single-share-card,
.announcement-single-info-section,
.announcement-single-related-section {
    background: #fff;
    border: 1px solid #dbe4ef;
    border-radius: 22px;
    box-shadow: 0 10px 32px rgba(5, 35, 74, 0.06);
}
.announcement-single-entry-card {
    padding: 18px;
}
.announcement-single-featured-image {
    overflow: hidden;
    border-radius: 18px;
    margin-bottom: 18px;
}
.announcement-single-featured-image img {
    display: block;
    width: 100%;
    height: clamp(260px, 31vw, 420px);
    object-fit: cover;
}
.announcement-single-summary {
    margin: 0 0 18px;
    color: #334b6b;
    font-size: 17px;
    line-height: 1.85;
}
.announcement-single-content-body,
.announcement-single-content-body p {
    color: #213759;
    line-height: 1.9;
}
.announcement-single-content-body > *:first-child { margin-top: 0; }
.announcement-single-content-body > *:last-child { margin-bottom: 0; }
.announcement-single-section-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 24px 26px 0;
}
.announcement-single-section-title h2 {
    margin: 0;
    font-size: 28px;
    color: #082b62;
}
.announcement-single-section-title h2::after {
    content: "";
    display: block;
    width: 46px;
    height: 3px;
    margin-top: 10px;
    border-radius: 999px;
    background: #d39a1d;
}
.announcement-single-section-title.with-link a {
    color: #082b62;
    font-weight: 700;
}
.announcement-single-info-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    padding: 22px 26px 26px;
}
.announcement-single-info-grid article {
    border: 1px solid #dde6f1;
    border-radius: 18px;
    background: #f7fafd;
    padding: 18px 20px;
}
.announcement-single-info-grid article span,
.announcement-single-info-grid article small {
    display: block;
    color: #667b99;
}
.announcement-single-info-grid article strong {
    display: block;
    margin-top: 8px;
    color: #082b62;
    font-size: 26px;
    line-height: 1.2;
}
.announcement-single-info-grid article small { margin-top: 6px; }
.announcement-single-card-heading {
    padding: 18px 22px;
    border-bottom: 1px solid #e4ebf4;
    font-weight: 800;
    font-size: 18px;
    color: #082b62;
}
.announcement-single-source-body {
    display: grid;
    grid-template-columns: 82px minmax(0, 1fr);
    gap: 18px;
    align-items: center;
    padding: 22px;
}
.announcement-single-source-logo {
    width: 82px;
    height: 82px;
    border-radius: 22px;
    background: linear-gradient(135deg, #082b62 0%, #0d4ca8 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    color: #fff;
    font-size: 34px;
    font-weight: 800;
}
.announcement-single-source-logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    background: #fff;
}
.announcement-single-source-body h2,
.announcement-single-related-card h3 { margin: 0; color: #102c57; }
.announcement-single-source-body p,
.announcement-single-source-body span,
.announcement-single-contact-card p,
.announcement-single-share-card p { color: #5b7093; }
.announcement-single-source-body span {
    display: block;
    margin-top: 10px;
    line-height: 1.7;
}
.announcement-single-outline-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    margin: 0 22px 22px;
    padding: 0 18px;
    border-radius: 14px;
    border: 1px solid #cbd7e6;
    color: #082b62;
    font-weight: 700;
}
.announcement-single-contact-card,
.announcement-single-share-card { padding-bottom: 22px; }
.announcement-single-contact-card p,
.announcement-single-share-card p { margin: 18px 22px 0; line-height: 1.7; }
.announcement-single-contact-actions,
.announcement-single-share-actions {
    display: grid;
    gap: 12px;
    padding: 18px 22px 0;
}
.announcement-single-contact-actions a,
.announcement-single-share-actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    border-radius: 14px;
    padding: 0 16px;
    font-weight: 700;
    text-align: center;
}
.announcement-single-contact-primary { background: #29b254; color: #fff; }
.announcement-single-contact-dark { background: #082b62; color: #fff; }
.announcement-single-contact-light,
.announcement-single-share-actions a { background: #f5f8fc; border: 1px solid #d7e1ed; color: #082b62; }
.announcement-single-summary-card dl {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px 16px;
    padding: 20px 22px 22px;
    margin: 0;
}
.announcement-single-summary-card dt { color: #607495; }
.announcement-single-summary-card dd { margin: 0; color: #082b62; font-weight: 700; text-align: right; }
.announcement-single-mini-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 28px;
    padding: 0 12px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
}
.announcement-single-related-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    padding: 22px 26px 26px;
}
.announcement-single-related-card {
    display: grid;
    grid-template-columns: 112px minmax(0, 1fr);
    gap: 14px;
    padding: 12px;
    border: 1px solid #dbe4ef;
    border-radius: 18px;
    background: #fffdf8;
}
.announcement-single-related-thumb {
    border-radius: 14px;
    overflow: hidden;
}
.announcement-single-related-thumb img,
.announcement-single-related-thumb .announcement-image-placeholder {
    width: 100%;
    height: 100%;
    min-height: 94px;
    object-fit: cover;
}
.announcement-single-related-tag {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 0 10px;
    border-radius: 999px;
    background: #edf3fb;
    color: #0d4ca8;
    font-size: 12px;
    font-weight: 700;
    margin-bottom: 10px;
}
.announcement-single-related-meta { margin-top: 10px; color: #71829d; font-size: 14px; }
@media (max-width: 1180px) {
    .announcement-single-hero-grid,
    .announcement-single-layout,
    .announcement-single-related-grid {
        grid-template-columns: 1fr;
    }
    .announcement-single-sidebar {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        align-items: start;
    }
    .announcement-single-summary-card,
    .announcement-single-share-card { grid-column: auto; }
}
@media (max-width: 820px) {
    .announcement-single-main { padding: 18px 0 42px; }
    .announcement-single-hero-inner { padding: 22px 20px 24px; }
    .announcement-single-hero-copy h1 { font-size: 34px; }
    .announcement-single-hero-copy p { font-size: 16px; }
    .announcement-single-hero-art { display: none; }
    .announcement-single-sidebar,
    .announcement-single-info-grid,
    .announcement-single-related-grid { grid-template-columns: 1fr; }
    .announcement-single-section-title,
    .announcement-single-info-grid,
    .announcement-single-related-grid { padding-left: 18px; padding-right: 18px; }
    .announcement-single-section-title { padding-top: 20px; }
}
@media (max-width: 560px) {
    .announcement-single-source-body,
    .announcement-single-related-card { grid-template-columns: 1fr; }
    .announcement-single-source-logo { width: 76px; height: 76px; }
    .announcement-single-summary-card dl { grid-template-columns: 1fr; }
    .announcement-single-summary-card dd { text-align: left; }
}


/* News detail page */

.news-single-main {
    padding: 36px 0 72px;
}

.news-single-top-ad {
    margin-bottom: 28px;
}

.news-single-top-ad .rehberim-ad {
    min-height: 150px;
    border-radius: 24px;
    border: 1px dashed var(--rehberim-border);
    background: var(--rehberim-surface);
    box-shadow: 0 16px 34px rgba(15, 23, 42, .05);
}

.news-single-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 28px;
    align-items: start;
}

.news-single-article {
    background: var(--rehberim-surface);
    border: 1px solid var(--rehberim-border);
    border-radius: 28px;
    padding: 30px;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .06);
}

.news-single-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-bottom: 18px;
    color: var(--rehberim-muted);
    font-size: 14px;
}

.news-single-breadcrumb a,
.news-single-breadcrumb strong {
    color: var(--rehberim-primary);
}

.news-single-header h1 {
    margin: 12px 0 12px;
    font-size: clamp(36px, 5vw, 58px);
    line-height: 1.05;
    letter-spacing: -0.03em;
}

.news-single-category {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 6px 14px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--rehberim-primary) 10%, var(--rehberim-surface));
    color: var(--rehberim-primary-dark);
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.news-single-summary {
    margin: 0 0 12px;
    color: color-mix(in srgb, var(--rehberim-text) 72%, white);
    font-size: 21px;
    line-height: 1.55;
    max-width: 880px;
}

.news-single-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    color: var(--rehberim-muted);
    font-size: 15px;
}

.news-single-actions-bar {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    margin: 24px 0 26px;
    padding: 18px 0;
    border-top: 1px solid var(--rehberim-border);
    border-bottom: 1px solid var(--rehberim-border);
}

.news-single-share-group,
.news-single-utility-group {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.news-single-share-title {
    color: var(--rehberim-primary-dark);
    font-weight: 800;
    margin-right: 4px;
    text-transform: uppercase;
    font-size: 13px;
    letter-spacing: .05em;
}

.news-share-button,
.news-font-button,
.news-save-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    min-height: 42px;
    padding: 9px 13px;
    border-radius: 12px;
    border: 1px solid var(--rehberim-border);
    background: var(--rehberim-surface);
    color: var(--rehberim-primary-dark);
    font-weight: 800;
    line-height: 1;
    cursor: pointer;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background-color .18s ease;
}

.news-share-button:hover,
.news-font-button:hover,
.news-save-button:hover,
.news-share-button:focus,
.news-font-button:focus,
.news-save-button:focus {
    transform: translateY(-1px);
    border-color: color-mix(in srgb, var(--rehberim-primary) 30%, var(--rehberim-border));
    box-shadow: 0 10px 24px rgba(18, 63, 120, .1);
}

.news-share-button.is-facebook {
    background: #ebf3ff;
    color: #1d4ed8;
}

.news-share-button.is-x {
    background: #111827;
    color: #fff;
}

.news-share-button.is-linkedin {
    background: #eff6ff;
    color: #1e40af;
}

.news-share-button.is-whatsapp {
    background: #ebfff3;
    color: #15803d;
}

.news-save-button.is-saved {
    background: var(--rehberim-primary);
    color: var(--rehberim-contrast-text);
    border-color: var(--rehberim-primary);
}

.news-single-image {
    margin-bottom: 24px;
}

.news-single-image img {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    border-radius: 24px;
    display: block;
}

.news-single-entry {
    font-size: 18px;
    line-height: 1.85;
}

.news-single-entry > *:first-child { margin-top: 0; }
.news-single-entry > *:last-child { margin-bottom: 0; }
.news-single-entry h2,
.news-single-entry h3,
.news-single-entry h4 {
    color: var(--rehberim-primary-dark);
    line-height: 1.22;
    margin: 1.45em 0 .55em;
}

.news-single-entry h2 { font-size: clamp(28px, 3vw, 36px); }
.news-single-entry h3 { font-size: clamp(22px, 2.4vw, 28px); }
.news-single-entry ul,
.news-single-entry ol {
    padding-left: 22px;
}

.news-single-tags {
    margin-top: 30px;
    padding-top: 22px;
    border-top: 1px solid var(--rehberim-border);
}

.news-single-tags h2,
.news-single-author-box h2,
.news-single-sidebar-box h2,
.news-single-newsletter-box h2,
.news-single-cta-box h2,
.news-single-related-section h2 {
    margin: 0 0 14px;
    color: var(--rehberim-primary-dark);
    font-size: 22px;
    line-height: 1.2;
}

.news-single-tags div {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.news-single-tags a {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 7px 14px;
    border-radius: 999px;
    border: 1px solid var(--rehberim-border);
    background: color-mix(in srgb, var(--rehberim-primary) 6%, var(--rehberim-surface));
    color: var(--rehberim-primary-dark);
    font-size: 14px;
    font-weight: 700;
}

.news-single-author-box {
    display: grid;
    grid-template-columns: 86px minmax(0, 1fr);
    gap: 18px;
    margin-top: 30px;
    padding: 24px;
    border: 1px solid var(--rehberim-border);
    border-radius: 24px;
    background: linear-gradient(180deg, color-mix(in srgb, var(--rehberim-primary) 4%, var(--rehberim-surface)) 0%, var(--rehberim-surface) 100%);
}

.news-single-author-avatar img {
    display: block;
    width: 86px;
    height: 86px;
    border-radius: 50%;
}

.news-single-author-content p {
    margin: 0 0 12px;
    color: var(--rehberim-muted);
}

.news-single-author-content a {
    font-weight: 800;
}

.news-single-related-section {
    margin-top: 32px;
}

.news-single-section-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 16px;
}

.news-single-section-heading a {
    color: var(--rehberim-primary-dark);
    font-weight: 800;
}

.news-single-related-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.news-related-card {
    overflow: hidden;
    border: 1px solid var(--rehberim-border);
    border-radius: 20px;
    background: var(--rehberim-surface);
    box-shadow: 0 12px 28px rgba(15, 23, 42, .05);
}

.news-related-card-image {
    display: block;
    position: relative;
}

.news-related-card-image img,
.news-popular-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.news-related-card-image img {
    aspect-ratio: 16 / 10;
}

.news-related-card-body {
    padding: 16px;
}

.news-related-card-body h3 {
    margin: 10px 0 8px;
    font-size: 18px;
    line-height: 1.35;
}

.news-related-card-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    color: var(--rehberim-muted);
    font-size: 13px;
}

.news-single-sidebar {
    position: sticky;
    top: 108px;
    display: grid;
    gap: 20px;
}

.news-single-sidebar-box,
.news-single-newsletter-box,
.news-single-cta-box,
.news-single-sidebar-ad .rehberim-ad {
    border: 1px solid var(--rehberim-border);
    border-radius: 24px;
    background: var(--rehberim-surface);
    padding: 22px;
    box-shadow: 0 12px 28px rgba(15, 23, 42, .05);
}

.news-single-popular-box {
    overflow: hidden;
    padding: 0;
}

.news-single-popular-box h2 {
    margin: 0;
    padding: 18px 22px;
    color: #fff;
    background: linear-gradient(135deg, var(--rehberim-primary-dark) 0%, var(--rehberim-primary) 100%);
}

.news-single-popular-list {
    padding: 10px 12px 14px;
}

.news-single-popular-list a {
    display: grid;
    grid-template-columns: 34px 84px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    padding: 12px 10px;
    border-radius: 16px;
    color: var(--rehberim-text);
}

.news-single-popular-list a + a {
    margin-top: 6px;
}

.news-single-popular-list a:hover {
    background: color-mix(in srgb, var(--rehberim-primary) 4%, var(--rehberim-surface));
}

.news-popular-rank {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 12px;
    background: var(--rehberim-primary);
    color: var(--rehberim-contrast-text);
    font-weight: 800;
}

.news-popular-thumb {
    display: block;
    overflow: hidden;
    border-radius: 14px;
    height: 68px;
}

.news-popular-copy strong {
    display: block;
    margin-bottom: 6px;
    color: var(--rehberim-primary-dark);
    line-height: 1.4;
}

.news-popular-copy small {
    display: block;
    color: var(--rehberim-muted);
}

.news-single-newsletter-box {
    color: #fff;
    background: linear-gradient(135deg, var(--rehberim-primary-dark) 0%, color-mix(in srgb, var(--rehberim-primary) 85%, black) 100%);
}

.news-single-newsletter-box h2,
.news-single-newsletter-box p {
    color: #fff;
}

.news-single-newsletter-form {
    display: grid;
    gap: 12px;
    margin-top: 16px;
}

.news-single-newsletter-form input {
    min-height: 48px;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 14px;
    background: rgba(255, 255, 255, .12);
    color: #fff;
    padding: 0 16px;
}

.news-single-newsletter-form input::placeholder {
    color: rgba(255, 255, 255, .75);
}

.news-single-newsletter-form button {
    border-color: var(--rehberim-secondary);
    background: var(--rehberim-secondary);
    color: var(--rehberim-text);
}

.news-single-categories-list {
    display: grid;
    gap: 10px;
}

.news-single-categories-list a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 50px;
    padding: 12px 14px;
    border-radius: 16px;
    background: color-mix(in srgb, var(--rehberim-primary) 4%, var(--rehberim-surface));
    color: var(--rehberim-text);
}

.news-single-categories-list strong {
    min-width: 34px;
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 8px;
    border-radius: 999px;
    background: rgba(18, 63, 120, .08);
    color: var(--rehberim-primary-dark);
}

.news-single-cta-box {
    background: linear-gradient(180deg, color-mix(in srgb, var(--rehberim-secondary) 15%, var(--rehberim-surface)) 0%, var(--rehberim-surface) 100%);
}

.news-single-cta-box p {
    margin: 0 0 16px;
    color: var(--rehberim-muted);
}

.news-single-cta-box a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 0 20px;
    border-radius: 14px;
    background: var(--rehberim-primary-dark);
    color: #fff;
    font-weight: 800;
}

.news-single-sidebar-ad .rehberim-ad {
    min-height: 250px;
}

@media (max-width: 1200px) {
    .news-single-related-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 1024px) {
    .news-single-layout {
        grid-template-columns: 1fr;
    }

    .news-single-sidebar {
        position: static;
    }
}

@media (max-width: 767px) {
    .news-single-main {
        padding: 28px 0 56px;
    }

    .news-single-article {
        padding: 20px;
        border-radius: 22px;
    }

    .news-single-header h1 {
        font-size: clamp(30px, 9vw, 40px);
    }

    .news-single-summary {
        font-size: 18px;
    }

    .news-single-meta,
    .news-single-actions-bar,
    .news-single-section-heading {
        gap: 12px;
    }

    .news-single-author-box {
        grid-template-columns: 1fr;
    }

    .news-single-related-grid {
        grid-template-columns: 1fr;
    }

    .news-single-popular-list a {
        grid-template-columns: 32px 72px minmax(0, 1fr);
    }

    .news-single-sidebar-box,
    .news-single-newsletter-box,
    .news-single-cta-box,
    .news-single-sidebar-ad .rehberim-ad {
        padding: 18px;
        border-radius: 20px;
    }
}

/* v127 - Customer portal, authentication and account pages */
.customer-portal-notice {
    margin: 0 0 20px;
    padding: 14px 18px;
    border: 1px solid color-mix(in srgb, #18864b 28%, var(--rehberim-border));
    border-radius: 14px;
    background: color-mix(in srgb, #18864b 8%, var(--rehberim-surface));
    color: #126a3d;
    font-weight: 700;
}

.customer-portal-notice.is-error {
    border-color: color-mix(in srgb, var(--rehberim-danger) 28%, var(--rehberim-border));
    background: color-mix(in srgb, var(--rehberim-danger) 8%, var(--rehberim-surface));
    color: var(--rehberim-danger);
}

.customer-panel-card {
    background: var(--rehberim-surface);
    border: 1px solid var(--rehberim-border);
    border-radius: 22px;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .055);
}

.customer-auth-main {
    min-height: 760px;
    padding: 52px 0 70px;
    background:
        radial-gradient(circle at 9% 15%, color-mix(in srgb, var(--rehberim-primary) 16%, transparent) 0 170px, transparent 171px),
        linear-gradient(135deg, var(--rehberim-primary-dark) 0%, color-mix(in srgb, var(--rehberim-primary) 78%, #03142f) 62%, #06182f 100%);
}

.customer-auth-shell {
    display: grid;
    grid-template-columns: minmax(420px, 560px) minmax(0, 1fr);
    gap: 48px;
    align-items: center;
}

.customer-auth-card {
    padding: 34px;
    border-radius: 26px;
    background: var(--rehberim-surface);
    border: 1px solid rgba(255,255,255,.6);
    box-shadow: 0 28px 70px rgba(0,0,0,.22);
}

.customer-auth-brand {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding-bottom: 22px;
    margin-bottom: 22px;
    border-bottom: 1px solid var(--rehberim-border);
}

.customer-auth-brand > span,
.customer-register-header > span,
.customer-lost-copy > span,
.customer-submit-heading > div > span,
.customer-panel-heading > div > span {
    color: var(--rehberim-primary);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.customer-auth-logo img {
    max-width: 210px;
    max-height: 72px;
    object-fit: contain;
}

.customer-auth-card h1,
.customer-register-header h1,
.customer-lost-copy h1 {
    margin: 0 0 10px;
    color: var(--rehberim-primary-dark);
    font-size: clamp(32px, 4vw, 46px);
    line-height: 1.1;
}

.customer-auth-card > p,
.customer-register-header p,
.customer-lost-copy p {
    margin: 0 0 24px;
    color: var(--rehberim-muted);
}

.customer-auth-form,
.customer-register-form,
.customer-settings-form,
.customer-security-card form,
.customer-submit-form {
    display: grid;
    gap: 18px;
}

.customer-auth-form label,
.customer-register-form > label,
.customer-register-form .customer-form-grid label,
.customer-settings-form label,
.customer-security-card label,
.customer-submit-form label {
    display: grid;
    gap: 7px;
    color: var(--rehberim-text);
    font-weight: 700;
}

.customer-auth-form label > span:first-child,
.customer-register-form label > span:first-child,
.customer-settings-form label > span:first-child,
.customer-security-card label > span:first-child,
.customer-submit-form label > span:first-child {
    font-size: 14px;
}

.customer-auth-form input,
.customer-register-form input,
.customer-register-form select,
.customer-settings-form input,
.customer-settings-form textarea,
.customer-security-card input,
.customer-submit-form input,
.customer-submit-form select,
.customer-submit-form textarea,
.customer-message-form textarea {
    width: 100%;
    min-height: 50px;
    padding: 12px 14px;
    border: 1px solid var(--rehberim-border);
    border-radius: 12px;
    background: var(--rehberim-surface);
    color: var(--rehberim-text);
    outline: 0;
    transition: border-color .18s ease, box-shadow .18s ease;
}

.customer-auth-form input:focus,
.customer-register-form input:focus,
.customer-register-form select:focus,
.customer-settings-form input:focus,
.customer-settings-form textarea:focus,
.customer-security-card input:focus,
.customer-submit-form input:focus,
.customer-submit-form select:focus,
.customer-submit-form textarea:focus,
.customer-message-form textarea:focus {
    border-color: var(--rehberim-primary);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--rehberim-primary) 12%, transparent);
}

.customer-password-field {
    position: relative;
    display: block;
}

.customer-password-field input {
    padding-right: 78px;
}

.customer-password-field button {
    position: absolute;
    top: 50%;
    right: 6px;
    min-height: 36px;
    padding: 4px 10px;
    border: 0;
    background: transparent;
    color: var(--rehberim-primary);
    transform: translateY(-50%);
    font-size: 12px;
}

.customer-password-field button:hover,
.customer-password-field button:focus {
    background: color-mix(in srgb, var(--rehberim-primary) 7%, var(--rehberim-surface));
    transform: translateY(-50%);
}

.customer-auth-options {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    font-size: 14px;
}

.customer-auth-options label {
    display: inline-flex;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 8px;
    font-weight: 500;
}

.customer-auth-options input,
.customer-register-consent input {
    width: 18px;
    min-height: 18px;
}

.customer-auth-submit,
.customer-submit-button,
.customer-settings-fields > button,
.customer-security-card button {
    width: 100%;
    min-height: 52px;
    border-radius: 12px;
    background: var(--rehberim-primary-dark);
    border-color: var(--rehberim-primary-dark);
    color: #fff;
}

.customer-auth-footer {
    margin-top: 24px;
    padding-top: 18px;
    border-top: 1px solid var(--rehberim-border);
    text-align: center;
    color: var(--rehberim-muted);
}

.customer-auth-footer a {
    color: var(--rehberim-primary);
    font-weight: 800;
}

.customer-auth-benefits {
    color: #fff;
    padding: 34px;
}

.customer-auth-benefits > span {
    display: inline-flex;
    min-height: 34px;
    align-items: center;
    padding: 6px 13px;
    border-radius: 999px;
    background: rgba(255,255,255,.1);
    border: 1px solid rgba(255,255,255,.18);
    font-weight: 800;
}

.customer-auth-benefits h2 {
    margin: 24px 0 18px;
    color: #fff;
    font-size: clamp(36px, 4vw, 58px);
    line-height: 1.08;
}

.customer-auth-benefits ul {
    display: grid;
    gap: 14px;
    margin: 0 0 28px;
    padding: 0;
    list-style: none;
}

.customer-auth-benefits li {
    position: relative;
    padding-left: 28px;
    color: rgba(255,255,255,.86);
}

.customer-auth-benefits li::before,
.customer-register-benefits li::before,
.customer-submit-help li::before,
.customer-package-summary li::before {
    content: "";
    position: absolute;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--rehberim-secondary);
}

.customer-auth-benefits li::before {
    left: 2px;
    top: .55em;
}

.customer-auth-benefits > a {
    display: inline-flex;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    padding: 0 22px;
    border-radius: 12px;
    background: var(--rehberim-secondary);
    color: var(--rehberim-text);
    font-weight: 800;
}

.customer-register-main {
    background: var(--rehberim-background);
}

.customer-register-shell,
.customer-lost-shell {
    display: grid;
    gap: 26px;
}

.customer-register-header {
    max-width: 760px;
}

.customer-register-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(300px, .75fr);
    gap: 24px;
    align-items: start;
}

.customer-register-form {
    padding: 32px;
}

.customer-register-steps,
.customer-submit-steps {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 8px;
}

.customer-register-steps span,
.customer-submit-steps span {
    display: flex;
    align-items: center;
    gap: 9px;
    color: var(--rehberim-muted);
    font-size: 13px;
    font-weight: 700;
}

.customer-register-steps b,
.customer-submit-steps b {
    display: inline-flex;
    width: 30px;
    height: 30px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: color-mix(in srgb, var(--rehberim-primary) 8%, var(--rehberim-surface));
    color: var(--rehberim-primary);
}

.customer-register-steps .is-active,
.customer-submit-steps .is-active {
    color: var(--rehberim-primary-dark);
}

.customer-register-steps .is-active b,
.customer-submit-steps .is-active b {
    background: var(--rehberim-primary-dark);
    color: #fff;
}

.customer-form-grid {
    display: grid;
    gap: 16px;
}

.customer-form-grid.two {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.customer-register-consent {
    display: grid !important;
    grid-template-columns: auto 1fr;
    align-items: start;
    gap: 10px !important;
    font-size: 13px;
    font-weight: 500 !important;
}

.customer-register-benefits {
    padding: 28px;
    border-radius: 24px;
    background: linear-gradient(160deg, var(--rehberim-primary-dark), var(--rehberim-primary));
    color: #fff;
    position: sticky;
    top: 110px;
}

.customer-register-benefits h2 {
    color: #fff;
    margin: 0 0 22px;
}

.customer-register-benefits ul {
    display: grid;
    gap: 18px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.customer-register-benefits li {
    position: relative;
    padding-left: 26px;
}

.customer-register-benefits li::before {
    left: 0;
    top: 7px;
}

.customer-register-benefits strong,
.customer-register-benefits span {
    display: block;
}

.customer-register-benefits span {
    margin-top: 4px;
    color: rgba(255,255,255,.78);
    font-size: 14px;
}

.customer-lost-main {
    display: flex;
    align-items: center;
}

.customer-lost-shell {
    grid-template-columns: minmax(420px, 620px) minmax(300px, 1fr);
    align-items: stretch;
}

.customer-lost-card {
    padding: 34px;
}

.customer-lost-visual {
    display: flex;
    align-items: flex-end;
    min-height: 470px;
    padding: 32px;
    border-radius: 26px;
    color: #fff;
    background:
        radial-gradient(circle at 65% 30%, rgba(255,255,255,.2) 0 72px, transparent 73px),
        linear-gradient(145deg, var(--rehberim-primary-dark), var(--rehberim-primary));
}

.customer-lost-visual div {
    max-width: 380px;
}

.customer-lost-visual strong {
    display: block;
    font-size: 26px;
}

.customer-lost-visual p {
    color: rgba(255,255,255,.8);
}

.customer-panel-main {
    padding: 34px 0 72px;
    background: var(--rehberim-background);
}

.customer-panel-shell {
    position: relative;
}

.customer-panel-layout {
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 24px;
    align-items: start;
}

.customer-panel-sidebar {
    position: sticky;
    top: 108px;
    overflow: hidden;
    border-radius: 24px;
    background: linear-gradient(180deg, var(--rehberim-primary-dark), color-mix(in srgb, var(--rehberim-primary) 78%, #05162d));
    color: #fff;
    box-shadow: 0 18px 36px rgba(13, 39, 78, .16);
}

.customer-panel-profile {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    padding: 24px 20px;
    border-bottom: 1px solid rgba(255,255,255,.12);
}

.customer-panel-avatar {
    width: 64px;
    height: 64px;
    border-radius: 18px;
    overflow: hidden;
    background: #fff;
}

.customer-avatar-image {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.customer-panel-profile strong,
.customer-panel-profile span {
    display: block;
}

.customer-panel-profile strong {
    color: #fff;
    line-height: 1.25;
}

.customer-panel-profile span {
    margin-top: 4px;
    color: rgba(255,255,255,.65);
    font-size: 12px;
    overflow-wrap: anywhere;
}

.customer-panel-navigation {
    display: grid;
    gap: 4px;
    padding: 16px 12px;
}

.customer-panel-navigation a {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr) auto;
    gap: 10px;
    align-items: center;
    min-height: 48px;
    padding: 8px 12px;
    border-radius: 13px;
    color: rgba(255,255,255,.82);
    font-weight: 700;
}

.customer-panel-navigation a > span {
    display: inline-flex;
    width: 30px;
    height: 30px;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: rgba(255,255,255,.1);
    font-size: 12px;
}

.customer-panel-navigation a:hover,
.customer-panel-navigation a.is-active {
    background: #fff;
    color: var(--rehberim-primary-dark);
}

.customer-panel-navigation a.is-active > span {
    background: color-mix(in srgb, var(--rehberim-secondary) 24%, #fff);
}

.customer-panel-navigation em {
    min-width: 24px;
    height: 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: var(--rehberim-secondary);
    color: var(--rehberim-text);
    font-size: 11px;
    font-style: normal;
}

.customer-panel-logout {
    display: flex;
    min-height: 50px;
    align-items: center;
    justify-content: center;
    margin: 0 16px 18px;
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 13px;
    color: #fff;
    font-weight: 800;
}

.customer-panel-content {
    min-width: 0;
}

.customer-panel-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 22px;
}

.customer-panel-heading h1 {
    margin: 4px 0 4px;
    color: var(--rehberim-primary-dark);
    font-size: clamp(30px, 3vw, 42px);
    line-height: 1.15;
}

.customer-panel-heading p {
    margin: 0;
    color: var(--rehberim-muted);
}

.customer-panel-heading > a {
    display: inline-flex;
    min-height: 46px;
    align-items: center;
    justify-content: center;
    padding: 0 20px;
    border-radius: 12px;
    background: var(--rehberim-secondary);
    color: var(--rehberim-text);
    font-weight: 800;
    white-space: nowrap;
}

.customer-panel-menu-toggle {
    display: none;
    margin: 0 0 16px;
}

.customer-dashboard-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 22px;
}

.customer-dashboard-stats article {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 13px;
    align-items: center;
    padding: 20px;
    border: 1px solid var(--rehberim-border);
    border-radius: 20px;
    background: var(--rehberim-surface);
    box-shadow: 0 12px 28px rgba(15,23,42,.045);
}

.customer-dashboard-stats article > span,
.customer-dashboard-action-grid a > span,
.customer-premium-banner > div > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: color-mix(in srgb, var(--rehberim-primary) 9%, var(--rehberim-surface));
    color: var(--rehberim-primary);
    font-weight: 900;
}

.customer-dashboard-stats article > span {
    width: 48px;
    height: 48px;
}

.customer-dashboard-stats small,
.customer-dashboard-stats strong,
.customer-dashboard-stats p {
    display: block;
}

.customer-dashboard-stats small {
    color: var(--rehberim-muted);
}

.customer-dashboard-stats strong {
    margin-top: 2px;
    color: var(--rehberim-primary-dark);
    font-size: 28px;
    line-height: 1;
}

.customer-dashboard-stats p {
    margin: 6px 0 0;
    color: var(--rehberim-muted);
    font-size: 12px;
}

.customer-panel-card-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 20px 22px;
    border-bottom: 1px solid var(--rehberim-border);
}

.customer-panel-card-heading h2 {
    margin: 0;
    color: var(--rehberim-primary-dark);
    font-size: 22px;
}

.customer-panel-card-heading a {
    color: var(--rehberim-primary);
    font-weight: 800;
    font-size: 14px;
}

.customer-dashboard-actions {
    margin-bottom: 22px;
}

.customer-dashboard-action-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 14px;
    padding: 20px;
}

.customer-dashboard-action-grid a {
    display: grid;
    gap: 8px;
    justify-items: start;
    min-height: 150px;
    padding: 18px;
    border: 1px solid var(--rehberim-border);
    border-radius: 18px;
    background: var(--rehberim-surface);
    color: var(--rehberim-text);
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.customer-dashboard-action-grid a:hover {
    transform: translateY(-3px);
    border-color: color-mix(in srgb, var(--rehberim-primary) 32%, var(--rehberim-border));
    box-shadow: 0 14px 28px rgba(18,63,120,.08);
}

.customer-dashboard-action-grid a > span {
    width: 46px;
    height: 46px;
}

.customer-dashboard-action-grid strong {
    color: var(--rehberim-primary-dark);
}

.customer-dashboard-action-grid small {
    color: var(--rehberim-muted);
    line-height: 1.45;
}

.customer-dashboard-columns {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) minmax(270px, .55fr);
    gap: 22px;
    margin-bottom: 22px;
}

.customer-package-summary {
    padding-bottom: 20px;
}

.customer-package-name {
    display: block;
    margin: 20px 22px 8px;
    color: var(--rehberim-primary-dark);
    font-size: 22px;
}

.customer-package-summary > p {
    margin: 0 22px 16px;
    color: var(--rehberim-muted);
}

.customer-package-summary ul {
    display: grid;
    gap: 10px;
    margin: 0 22px 18px;
    padding: 0;
    list-style: none;
}

.customer-package-summary li {
    position: relative;
    padding-left: 20px;
    font-size: 14px;
}

.customer-package-summary li::before {
    left: 0;
    top: 7px;
    width: 8px;
    height: 8px;
}

.customer-package-summary > a {
    display: flex;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    margin: 0 22px;
    border-radius: 12px;
    background: var(--rehberim-primary-dark);
    color: #fff;
    font-weight: 800;
}

.customer-premium-banner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 24px 28px;
    border-radius: 22px;
    background: linear-gradient(135deg, var(--rehberim-primary-dark), var(--rehberim-primary));
    color: #fff;
}

.customer-premium-banner > div {
    display: flex;
    align-items: center;
    gap: 16px;
}

.customer-premium-banner > div > span {
    width: 58px;
    height: 58px;
    background: var(--rehberim-secondary);
    color: var(--rehberim-text);
}

.customer-premium-banner strong {
    display: block;
    color: #fff;
    font-size: 21px;
}

.customer-premium-banner p {
    margin: 4px 0 0;
    color: rgba(255,255,255,.76);
}

.customer-premium-banner > a {
    display: inline-flex;
    min-height: 46px;
    align-items: center;
    justify-content: center;
    padding: 0 20px;
    border-radius: 12px;
    background: var(--rehberim-secondary);
    color: var(--rehberim-text);
    font-weight: 800;
    white-space: nowrap;
}

.customer-list-section {
    overflow: hidden;
}

.customer-content-list {
    padding: 8px 20px 20px;
}

.customer-content-row {
    display: grid;
    grid-template-columns: 86px minmax(0, 1fr) 145px auto;
    gap: 16px;
    align-items: center;
    padding: 16px 0;
    border-bottom: 1px solid var(--rehberim-border);
}

.customer-content-row:last-child {
    border-bottom: 0;
}

.customer-content-thumb {
    width: 86px;
    height: 68px;
    overflow: hidden;
    border-radius: 14px;
    background: color-mix(in srgb, var(--rehberim-primary) 8%, var(--rehberim-surface));
}

.customer-content-thumb img,
.customer-content-placeholder {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.customer-content-placeholder {
    background: linear-gradient(135deg, color-mix(in srgb, var(--rehberim-primary) 12%, var(--rehberim-surface)), color-mix(in srgb, var(--rehberim-secondary) 12%, var(--rehberim-surface)));
}

.customer-content-type {
    color: var(--rehberim-primary);
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
}

.customer-content-main h3 {
    margin: 3px 0 3px;
    color: var(--rehberim-primary-dark);
    font-size: 18px;
}

.customer-content-main p,
.customer-content-status small {
    margin: 0;
    color: var(--rehberim-muted);
    font-size: 13px;
}

.customer-content-status {
    display: grid;
    gap: 4px;
}

.customer-content-status > span {
    display: inline-flex;
    width: fit-content;
    min-height: 30px;
    align-items: center;
    padding: 5px 11px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--rehberim-primary) 8%, var(--rehberim-surface));
    color: var(--rehberim-primary);
    font-size: 12px;
    font-weight: 800;
}

.customer-content-status.status-publish > span {
    background: color-mix(in srgb, #18864b 10%, var(--rehberim-surface));
    color: #167241;
}

.customer-content-status.status-pending > span {
    background: color-mix(in srgb, var(--rehberim-secondary) 18%, var(--rehberim-surface));
    color: color-mix(in srgb, var(--rehberim-secondary) 65%, #5b3a00);
}

.customer-content-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
}

.customer-content-actions a {
    display: inline-flex;
    min-height: 38px;
    align-items: center;
    justify-content: center;
    padding: 6px 12px;
    border: 1px solid var(--rehberim-border);
    border-radius: 10px;
    color: var(--rehberim-primary-dark);
    font-size: 13px;
    font-weight: 800;
}

.customer-content-actions a.is-danger {
    color: var(--rehberim-danger);
}

.customer-panel-empty,
.customer-message-empty,
.customer-message-start {
    padding: 36px 24px;
    text-align: center;
    color: var(--rehberim-muted);
}

.customer-panel-empty strong,
.customer-message-start strong {
    display: block;
    color: var(--rehberim-primary-dark);
    font-size: 20px;
}

.customer-panel-empty p,
.customer-message-start p {
    margin: 7px 0 0;
}

.customer-panel-pagination {
    display: flex;
    gap: 8px;
    justify-content: center;
    padding: 0 20px 24px;
}

.customer-panel-pagination .page-numbers {
    display: inline-flex;
    min-width: 38px;
    height: 38px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--rehberim-border);
    border-radius: 10px;
}

.customer-panel-pagination .current {
    background: var(--rehberim-primary);
    color: #fff;
}

.customer-favorite-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    padding: 20px;
}

.customer-favorite-grid article {
    overflow: hidden;
    border: 1px solid var(--rehberim-border);
    border-radius: 18px;
    background: var(--rehberim-surface);
}

.customer-favorite-image,
.customer-favorite-image img,
.customer-favorite-image > span {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
}

.customer-favorite-image > span {
    background: linear-gradient(135deg, color-mix(in srgb, var(--rehberim-primary) 12%, var(--rehberim-surface)), color-mix(in srgb, var(--rehberim-secondary) 12%, var(--rehberim-surface)));
}

.customer-favorite-grid article > div {
    padding: 17px;
}

.customer-favorite-grid small {
    color: var(--rehberim-primary);
    font-weight: 800;
}

.customer-favorite-grid h2 {
    margin: 7px 0;
    font-size: 19px;
    line-height: 1.35;
}

.customer-favorite-grid p {
    color: var(--rehberim-muted);
    font-size: 14px;
}

.customer-favorite-remove {
    display: inline-flex;
    min-height: 38px;
    align-items: center;
    padding: 6px 12px;
    border-radius: 10px;
    background: color-mix(in srgb, var(--rehberim-danger) 8%, var(--rehberim-surface));
    color: var(--rehberim-danger);
    font-weight: 800;
    font-size: 13px;
}

.customer-favorite-action {
    margin-top: 24px;
    padding-top: 18px;
    border-top: 1px solid var(--rehberim-border);
}

.customer-favorite-action a {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    padding: 0 18px;
    border-radius: 12px;
    background: color-mix(in srgb, var(--rehberim-secondary) 22%, var(--rehberim-surface));
    color: var(--rehberim-primary-dark);
    font-weight: 800;
}

.customer-message-layout {
    display: grid;
    grid-template-columns: 320px minmax(0, 1fr);
    min-height: 620px;
    overflow: hidden;
}

.customer-message-threads {
    border-right: 1px solid var(--rehberim-border);
    background: color-mix(in srgb, var(--rehberim-primary) 2%, var(--rehberim-surface));
}

.customer-message-threads h2 {
    margin: 0;
    padding: 20px;
    border-bottom: 1px solid var(--rehberim-border);
    color: var(--rehberim-primary-dark);
    font-size: 20px;
}

.customer-message-threads > a {
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr) auto;
    gap: 11px;
    align-items: center;
    padding: 14px 16px;
    border-bottom: 1px solid var(--rehberim-border);
    color: var(--rehberim-text);
}

.customer-message-threads > a.is-active,
.customer-message-threads > a:hover {
    background: var(--rehberim-surface);
}

.customer-message-avatar {
    width: 44px;
    height: 44px;
    overflow: hidden;
    border-radius: 50%;
}

.customer-message-threads strong,
.customer-message-threads small {
    display: block;
}

.customer-message-threads small,
.customer-message-threads time {
    color: var(--rehberim-muted);
    font-size: 11px;
}

.customer-message-conversation {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    min-width: 0;
}

.customer-message-conversation > header {
    padding: 18px 22px;
    border-bottom: 1px solid var(--rehberim-border);
}

.customer-message-conversation > header strong,
.customer-message-conversation > header span {
    display: block;
}

.customer-message-conversation > header strong {
    color: var(--rehberim-primary-dark);
}

.customer-message-conversation > header span {
    color: var(--rehberim-muted);
    font-size: 12px;
}

.customer-message-bubbles {
    max-height: 500px;
    overflow-y: auto;
    padding: 22px;
    background: color-mix(in srgb, var(--rehberim-primary) 2%, var(--rehberim-background));
}

.customer-message-bubble {
    width: fit-content;
    max-width: min(78%, 600px);
    margin-bottom: 14px;
    padding: 13px 16px;
    border-radius: 16px;
    background: var(--rehberim-surface);
    border: 1px solid var(--rehberim-border);
}

.customer-message-bubble.is-mine {
    margin-left: auto;
    background: color-mix(in srgb, var(--rehberim-primary) 10%, var(--rehberim-surface));
    border-color: color-mix(in srgb, var(--rehberim-primary) 24%, var(--rehberim-border));
}

.customer-message-bubble p {
    margin: 0;
}

.customer-message-bubble time {
    display: block;
    margin-top: 6px;
    color: var(--rehberim-muted);
    font-size: 10px;
    text-align: right;
}

.customer-message-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    padding: 16px;
    border-top: 1px solid var(--rehberim-border);
}

.customer-message-form textarea {
    min-height: 52px;
    resize: vertical;
}

.customer-message-form button {
    min-width: 92px;
    border-radius: 12px;
}

.customer-settings-layout {
    overflow: hidden;
}

.customer-settings-tabs {
    display: flex;
    gap: 8px;
    padding: 18px 22px 0;
    border-bottom: 1px solid var(--rehberim-border);
}

.customer-settings-tabs a {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    padding: 0 16px;
    border-radius: 12px 12px 0 0;
    color: var(--rehberim-muted);
    font-weight: 800;
}

.customer-settings-tabs a.is-active {
    background: color-mix(in srgb, var(--rehberim-primary) 8%, var(--rehberim-surface));
    color: var(--rehberim-primary-dark);
}

.customer-settings-form {
    grid-template-columns: minmax(0, 1fr) 260px;
    gap: 28px;
    padding: 28px;
}

.customer-settings-fields {
    display: grid;
    gap: 18px;
}

.customer-profile-photo-card {
    display: grid;
    justify-items: center;
    align-content: start;
    gap: 10px;
    padding: 22px;
    border: 1px solid var(--rehberim-border);
    border-radius: 18px;
    background: color-mix(in srgb, var(--rehberim-primary) 3%, var(--rehberim-surface));
    text-align: center;
}

.customer-profile-photo-card > div {
    width: 128px;
    height: 128px;
    overflow: hidden;
    border-radius: 24px;
}

.customer-profile-photo-card span,
.customer-profile-photo-card small {
    color: var(--rehberim-muted);
    overflow-wrap: anywhere;
}

.customer-profile-photo-card label {
    width: 100%;
    display: block;
}

.customer-profile-photo-card label input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
}

.customer-profile-photo-card label b {
    display: flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--rehberim-border);
    border-radius: 11px;
    background: var(--rehberim-surface);
    color: var(--rehberim-primary-dark);
    cursor: pointer;
}

.customer-security-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, .7fr);
    gap: 22px;
}

.customer-security-card form {
    padding: 24px;
}

.customer-security-info ul {
    display: grid;
    gap: 0;
    margin: 0;
    padding: 8px 22px 22px;
    list-style: none;
}

.customer-security-info li {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    padding: 14px 0;
    border-bottom: 1px solid var(--rehberim-border);
}

.customer-security-info li:last-child {
    border-bottom: 0;
}

.customer-security-info span {
    color: var(--rehberim-muted);
    text-align: right;
}

.customer-delete-account {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 24px;
    border-color: color-mix(in srgb, var(--rehberim-danger) 24%, var(--rehberim-border));
}

.customer-delete-account h2 {
    margin: 0;
    color: var(--rehberim-danger);
}

.customer-delete-account p {
    margin: 5px 0 0;
    color: var(--rehberim-muted);
}

.customer-delete-account button {
    border-color: var(--rehberim-danger);
    background: var(--rehberim-danger);
    color: #fff;
    white-space: nowrap;
}

.customer-submit-main {
    padding: 34px 0 72px;
    background: var(--rehberim-background);
}

.customer-submit-shell {
    display: grid;
    gap: 20px;
}

.customer-submit-breadcrumb {
    display: flex;
    gap: 9px;
    flex-wrap: wrap;
    color: var(--rehberim-muted);
    font-size: 14px;
}

.customer-submit-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
}

.customer-submit-heading h1 {
    margin: 4px 0;
    color: var(--rehberim-primary-dark);
    font-size: clamp(34px, 4vw, 48px);
}

.customer-submit-heading p {
    margin: 0;
    color: var(--rehberim-muted);
}

.customer-submit-heading > a {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    padding: 0 18px;
    border: 1px solid var(--rehberim-border);
    border-radius: 12px;
    background: var(--rehberim-surface);
    color: var(--rehberim-primary-dark);
    font-weight: 800;
}

.customer-submit-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(290px, .55fr);
    gap: 24px;
    align-items: start;
}

.customer-submit-form {
    padding: 30px;
}

.customer-submit-form h2 {
    margin: 2px 0 0;
    color: var(--rehberim-primary-dark);
}

.customer-submit-steps {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    padding-bottom: 20px;
    border-bottom: 1px solid var(--rehberim-border);
}

.customer-submit-sidebar {
    display: grid;
    gap: 18px;
    position: sticky;
    top: 108px;
}

.customer-submit-help,
.customer-submit-package {
    padding: 24px;
    border: 1px solid var(--rehberim-border);
    border-radius: 22px;
    background: var(--rehberim-surface);
    box-shadow: 0 14px 30px rgba(15,23,42,.05);
}

.customer-submit-help h2,
.customer-submit-package h2 {
    margin: 0 0 16px;
    color: var(--rehberim-primary-dark);
}

.customer-submit-help ul {
    display: grid;
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.customer-submit-help li {
    position: relative;
    padding-left: 22px;
    color: var(--rehberim-muted);
}

.customer-submit-help li::before {
    left: 0;
    top: 7px;
    width: 8px;
    height: 8px;
}

.customer-submit-package {
    background: linear-gradient(160deg, var(--rehberim-primary-dark), var(--rehberim-primary));
    color: #fff;
}

.customer-submit-package span {
    display: inline-flex;
    padding: 6px 12px;
    border-radius: 999px;
    background: var(--rehberim-secondary);
    color: var(--rehberim-text);
    font-size: 12px;
    font-weight: 800;
}

.customer-submit-package h2 {
    margin-top: 14px;
    color: #fff;
}

.customer-submit-package p {
    color: rgba(255,255,255,.78);
}

@media (max-width: 1280px) {
    .customer-dashboard-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .customer-dashboard-action-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

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

@media (max-width: 1080px) {
    .customer-auth-shell,
    .customer-register-layout,
    .customer-lost-shell,
    .customer-submit-layout {
        grid-template-columns: 1fr;
    }

    .customer-auth-benefits,
    .customer-register-benefits,
    .customer-submit-sidebar {
        position: static;
    }

    .customer-panel-layout {
        grid-template-columns: 1fr;
    }

    .customer-panel-menu-toggle {
        display: inline-flex;
    }

    .customer-panel-sidebar {
        display: none;
        position: static;
    }

    .customer-panel-sidebar.is-open {
        display: block;
    }

    .customer-dashboard-columns,
    .customer-settings-form,
    .customer-security-grid {
        grid-template-columns: 1fr;
    }

    .customer-settings-form {
        gap: 20px;
    }

    .customer-profile-photo-card {
        order: -1;
    }

    .customer-message-layout {
        grid-template-columns: 270px minmax(0, 1fr);
    }
}

@media (max-width: 820px) {
    .customer-auth-main,
    .customer-panel-main,
    .customer-submit-main {
        padding: 24px 0 52px;
    }

    .customer-auth-card,
    .customer-register-form,
    .customer-lost-card,
    .customer-submit-form {
        padding: 22px;
    }

    .customer-auth-benefits,
    .customer-lost-visual {
        padding: 24px;
    }

    .customer-form-grid.two,
    .customer-register-steps,
    .customer-submit-steps,
    .customer-dashboard-stats,
    .customer-dashboard-action-grid,
    .customer-favorite-grid {
        grid-template-columns: 1fr;
    }

    .customer-dashboard-action-grid a {
        min-height: 120px;
    }

    .customer-panel-heading,
    .customer-submit-heading,
    .customer-premium-banner,
    .customer-delete-account {
        align-items: flex-start;
        flex-direction: column;
    }

    .customer-panel-heading > a,
    .customer-submit-heading > a,
    .customer-premium-banner > a {
        width: 100%;
    }

    .customer-content-row {
        grid-template-columns: 74px minmax(0, 1fr);
    }

    .customer-content-thumb {
        width: 74px;
        height: 64px;
    }

    .customer-content-status,
    .customer-content-actions {
        grid-column: 2;
    }

    .customer-content-actions {
        justify-content: flex-start;
    }

    .customer-message-layout {
        grid-template-columns: 1fr;
    }

    .customer-message-threads {
        border-right: 0;
        border-bottom: 1px solid var(--rehberim-border);
        max-height: 300px;
        overflow-y: auto;
    }
}

@media (max-width: 540px) {
    .customer-auth-shell {
        grid-template-columns: minmax(0, 1fr);
    }

    .customer-auth-options,
    .customer-panel-card-heading,
    .customer-security-info li,
    .customer-message-form {
        align-items: flex-start;
        flex-direction: column;
    }

    .customer-message-form {
        display: flex;
    }

    .customer-message-form button {
        width: 100%;
    }

    .customer-content-row {
        grid-template-columns: 1fr;
    }

    .customer-content-status,
    .customer-content-actions {
        grid-column: 1;
    }

    .customer-content-thumb {
        width: 100%;
        height: 150px;
    }

    .customer-premium-banner > div {
        align-items: flex-start;
    }
}

.customer-panel-ad {
    margin-top: 22px;
}

.customer-panel-ad .rehberim-ad {
    min-height: 120px;
    border-radius: 20px;
    border: 1px dashed var(--rehberim-border);
    background: var(--rehberim-surface);
}

/* Single firm listing safety template */
.listing-detail-main { padding: 34px 0 72px; background: var(--rehberim-background); }
.listing-detail-shell { display: grid; gap: 20px; }
.listing-detail-breadcrumb { display: flex; flex-wrap: wrap; gap: 8px; color: var(--rehberim-muted); font-size: 14px; }
.listing-detail-layout { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 22px; align-items: start; }
.listing-detail-content { overflow: hidden; }
.listing-detail-image img { display: block; width: 100%; max-height: 560px; object-fit: cover; }
.listing-detail-body { padding: 28px; }
.listing-detail-badges { display: flex; flex-wrap: wrap; gap: 9px; }
.listing-detail-badges span { display: inline-flex; min-height: 32px; align-items: center; padding: 5px 12px; border-radius: 999px; background: color-mix(in srgb, var(--rehberim-primary) 9%, var(--rehberim-surface)); color: var(--rehberim-primary); font-size: 12px; font-weight: 800; }
.listing-detail-body h1 { margin: 16px 0 8px; color: var(--rehberim-primary-dark); font-size: clamp(32px, 4vw, 48px); line-height: 1.15; }
.listing-detail-meta { display: flex; flex-wrap: wrap; gap: 15px; color: var(--rehberim-muted); }
.listing-detail-price { margin: 20px 0; color: var(--rehberim-primary-dark); font-size: 30px; font-weight: 900; }
.listing-detail-entry { font-size: 17px; line-height: 1.85; }
.listing-detail-sidebar { display: grid; gap: 18px; position: sticky; top: 108px; }
.listing-detail-contact, .listing-detail-summary { padding: 22px; }
.listing-detail-contact h2, .listing-detail-summary h2 { margin: 0 0 16px; color: var(--rehberim-primary-dark); }
.listing-detail-contact strong { display: block; margin-bottom: 10px; }
.listing-detail-contact > a { display: flex; min-height: 44px; align-items: center; justify-content: center; margin-top: 10px; border-radius: 12px; background: color-mix(in srgb, var(--rehberim-primary) 8%, var(--rehberim-surface)); color: var(--rehberim-primary-dark); font-weight: 800; }
.listing-detail-contact > a.listing-detail-firm-button { background: var(--rehberim-primary-dark); color: #fff; }
.listing-detail-summary dl { display: grid; grid-template-columns: 1fr auto; gap: 12px; margin: 0; }
.listing-detail-summary dt { color: var(--rehberim-muted); }
.listing-detail-summary dd { margin: 0; color: var(--rehberim-primary-dark); font-weight: 800; text-align: right; }
@media (max-width: 960px) { .listing-detail-layout { grid-template-columns: 1fr; } .listing-detail-sidebar { position: static; } }

/* v128 - customer listing editing and professional support tickets */
.customer-content-actions a.is-edit {
    border-color: color-mix(in srgb, var(--rehberim-secondary) 58%, var(--rehberim-border));
    background: color-mix(in srgb, var(--rehberim-secondary) 14%, var(--rehberim-surface));
    color: var(--rehberim-primary-dark);
}

.customer-edit-notice {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 22px;
    padding: 14px 16px;
    border: 1px solid color-mix(in srgb, var(--rehberim-secondary) 55%, var(--rehberim-border));
    border-radius: 14px;
    background: color-mix(in srgb, var(--rehberim-secondary) 10%, var(--rehberim-surface));
}

.customer-edit-notice strong {
    color: var(--rehberim-primary-dark);
    white-space: nowrap;
}

.customer-edit-notice span {
    color: var(--rehberim-muted);
}

.customer-current-image,
.job-current-logo {
    display: grid;
    gap: 10px;
    margin: 0 0 22px;
    padding: 14px;
    border: 1px solid var(--rehberim-border);
    border-radius: 16px;
    background: color-mix(in srgb, var(--rehberim-primary) 3%, var(--rehberim-surface));
}

.customer-current-image > span,
.job-current-logo > span {
    color: var(--rehberim-primary-dark);
    font-weight: 800;
}

.customer-current-image img,
.job-current-logo img {
    width: 180px;
    height: 120px;
    object-fit: contain;
    border-radius: 12px;
    background: #fff;
}

.customer-ticket-layout {
    display: grid;
    grid-template-columns: 330px minmax(0, 1fr);
    min-height: 680px;
    overflow: hidden;
    padding: 0;
}

.customer-ticket-list {
    border-right: 1px solid var(--rehberim-border);
    background: color-mix(in srgb, var(--rehberim-primary) 2.5%, var(--rehberim-surface));
}

.customer-ticket-list > header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 20px;
    border-bottom: 1px solid var(--rehberim-border);
}

.customer-ticket-list > header h2 {
    margin: 0;
    color: var(--rehberim-primary-dark);
    font-size: 20px;
}

.customer-ticket-list > header span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    min-height: 34px;
    padding: 0 8px;
    border-radius: 999px;
    background: var(--rehberim-primary);
    color: var(--rehberim-contrast-text);
    font-weight: 800;
}

.customer-new-ticket-link {
    display: grid;
    gap: 4px;
    margin: 16px;
    padding: 15px 16px;
    border: 1px solid color-mix(in srgb, var(--rehberim-secondary) 55%, var(--rehberim-border));
    border-radius: 15px;
    background: color-mix(in srgb, var(--rehberim-secondary) 13%, var(--rehberim-surface));
    color: var(--rehberim-primary-dark);
}

.customer-new-ticket-link.is-active,
.customer-new-ticket-link:hover {
    border-color: var(--rehberim-secondary);
    box-shadow: 0 10px 24px rgba(18, 63, 120, .08);
}

.customer-new-ticket-link small {
    color: var(--rehberim-muted);
}

.customer-ticket-items {
    display: grid;
    gap: 8px;
    padding: 0 12px 18px;
    max-height: 650px;
    overflow-y: auto;
}

.customer-ticket-item {
    display: grid;
    gap: 8px;
    padding: 14px;
    border: 1px solid transparent;
    border-radius: 15px;
    color: var(--rehberim-text);
    background: var(--rehberim-surface);
}

.customer-ticket-item:hover,
.customer-ticket-item.is-active {
    border-color: color-mix(in srgb, var(--rehberim-primary) 28%, var(--rehberim-border));
    background: color-mix(in srgb, var(--rehberim-primary) 6%, var(--rehberim-surface));
}

.customer-ticket-item-top,
.customer-ticket-item-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.customer-ticket-item-top strong {
    color: var(--rehberim-primary);
    font-size: 12px;
    letter-spacing: .04em;
}

.customer-ticket-item-top em {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    height: 24px;
    padding: 0 7px;
    border-radius: 999px;
    background: var(--rehberim-danger);
    color: #fff;
    font-size: 12px;
    font-style: normal;
    font-weight: 800;
}

.customer-ticket-item > b {
    color: var(--rehberim-primary-dark);
    line-height: 1.4;
}

.customer-ticket-item time {
    color: var(--rehberim-muted);
    font-size: 12px;
}

.ticket-status {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 4px 10px;
    border-radius: 999px;
    background: #edf2f7;
    color: #40536d;
    font-size: 11px;
    font-weight: 800;
}

.ticket-status.status-waiting_admin {
    background: #fff1c7;
    color: #8a5a00;
}

.ticket-status.status-answered {
    background: #dcf7e8;
    color: #15713d;
}

.ticket-status.status-closed {
    background: #e8ebef;
    color: #4b5563;
}

.customer-ticket-detail {
    display: flex;
    min-width: 0;
    flex-direction: column;
    background: var(--rehberim-surface);
}

.customer-ticket-detail-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    padding: 22px 24px;
    border-bottom: 1px solid var(--rehberim-border);
}

.customer-ticket-detail-header > div > span {
    display: block;
    margin-bottom: 5px;
    color: var(--rehberim-primary);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.customer-ticket-detail-header h2 {
    margin: 0;
    color: var(--rehberim-primary-dark);
    font-size: 24px;
}

.customer-ticket-detail-header p {
    margin: 6px 0 0;
    color: var(--rehberim-muted);
}

.customer-new-ticket-form {
    display: grid;
    gap: 18px;
    padding: 26px;
}

.customer-new-ticket-form label {
    display: grid;
    gap: 8px;
}

.customer-new-ticket-form label > span {
    color: var(--rehberim-primary-dark);
    font-weight: 800;
}

.customer-new-ticket-form input,
.customer-new-ticket-form select,
.customer-new-ticket-form textarea,
.customer-ticket-reply-box textarea {
    width: 100%;
    border: 1px solid var(--rehberim-border);
    border-radius: 13px;
    background: var(--rehberim-surface);
    color: var(--rehberim-text);
    padding: 12px 14px;
}

.customer-new-ticket-form textarea,
.customer-ticket-reply-box textarea {
    resize: vertical;
}

.customer-new-ticket-form input:focus,
.customer-new-ticket-form select:focus,
.customer-new-ticket-form textarea:focus,
.customer-ticket-reply-box textarea:focus {
    outline: 0;
    border-color: var(--rehberim-primary);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--rehberim-primary) 12%, transparent);
}

.customer-new-ticket-form > button,
.customer-ticket-reply-box button {
    min-height: 50px;
    border-radius: 13px;
    background: var(--rehberim-primary-dark);
    border-color: var(--rehberim-primary-dark);
}

.customer-ticket-form-note {
    padding: 14px 16px;
    border: 1px solid color-mix(in srgb, var(--rehberim-primary) 15%, var(--rehberim-border));
    border-radius: 14px;
    background: color-mix(in srgb, var(--rehberim-primary) 4%, var(--rehberim-surface));
}

.customer-ticket-form-note p {
    margin: 4px 0 0;
    color: var(--rehberim-muted);
}

.customer-ticket-conversation {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 14px;
    min-height: 390px;
    max-height: 620px;
    overflow-y: auto;
    padding: 24px;
    background: color-mix(in srgb, var(--rehberim-background) 62%, var(--rehberim-surface));
}

.customer-ticket-message {
    width: min(76%, 680px);
    padding: 15px 17px;
    border: 1px solid var(--rehberim-border);
    border-radius: 16px 16px 16px 5px;
    background: var(--rehberim-surface);
    box-shadow: 0 8px 22px rgba(15, 23, 42, .05);
}

.customer-ticket-message.is-customer {
    margin-left: auto;
    border-radius: 16px 16px 5px 16px;
    border-color: color-mix(in srgb, var(--rehberim-primary) 18%, var(--rehberim-border));
    background: color-mix(in srgb, var(--rehberim-primary) 7%, var(--rehberim-surface));
}

.customer-ticket-message header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 8px;
}

.customer-ticket-message header strong {
    color: var(--rehberim-primary-dark);
}

.customer-ticket-message header time {
    color: var(--rehberim-muted);
    font-size: 12px;
}

.customer-ticket-message p {
    margin: 0;
    color: var(--rehberim-text);
    line-height: 1.75;
}

.customer-ticket-reply-box {
    padding: 22px 24px;
    border-top: 1px solid var(--rehberim-border);
}

.customer-ticket-reply-box > div {
    margin-bottom: 13px;
}

.customer-ticket-reply-box h3 {
    margin: 0;
    color: var(--rehberim-primary-dark);
    font-size: 20px;
}

.customer-ticket-reply-box p {
    margin: 4px 0 0;
    color: var(--rehberim-muted);
}

.customer-ticket-reply-box form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
    align-items: end;
}

.customer-ticket-reply-box button {
    padding-inline: 22px;
}

@media (max-width: 1100px) {
    .customer-ticket-layout {
        grid-template-columns: 280px minmax(0, 1fr);
    }
}

@media (max-width: 820px) {
    .customer-ticket-layout {
        grid-template-columns: 1fr;
    }

    .customer-ticket-list {
        border-right: 0;
        border-bottom: 1px solid var(--rehberim-border);
    }

    .customer-ticket-items {
        max-height: 330px;
    }
}

@media (max-width: 600px) {
    .customer-edit-notice,
    .customer-ticket-detail-header,
    .customer-ticket-message header {
        align-items: flex-start;
        flex-direction: column;
    }

    .customer-ticket-message {
        width: 94%;
    }

    .customer-ticket-reply-box form {
        grid-template-columns: 1fr;
    }

    .customer-ticket-reply-box button {
        width: 100%;
    }
}


/* v129 - Simple corporate/legal pages and mandatory agreements */
.corporate-page-main {
    padding: 34px 0 64px;
}
.corporate-page-shell {
    max-width: 1120px;
    display: grid;
    gap: 20px;
}
.corporate-breadcrumb {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    color: var(--rehberim-muted);
    font-size: 14px;
}
.corporate-breadcrumb a { color: var(--rehberim-primary); font-weight: 700; }
.corporate-page-header {
    padding: 26px 30px;
    border-radius: 20px;
    border: 1px solid var(--rehberim-border);
    background: var(--rehberim-surface);
}
.corporate-page-header > span {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 5px 12px;
    margin-bottom: 10px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--rehberim-primary) 10%, var(--rehberim-surface));
    color: var(--rehberim-primary-dark);
    font-size: 13px;
    font-weight: 800;
}
.corporate-page-header h1 {
    margin: 0;
    color: var(--rehberim-primary-dark);
    font-size: clamp(30px, 4vw, 46px);
    line-height: 1.12;
}
.corporate-page-header p {
    max-width: 820px;
    margin: 10px 0 0;
    color: var(--rehberim-muted);
    font-size: 17px;
}
.corporate-page-card {
    padding: 30px;
    border-radius: 20px;
    border: 1px solid var(--rehberim-border);
    background: var(--rehberim-surface);
    box-shadow: 0 14px 34px rgba(15,23,42,.05);
}
.corporate-page-content {
    color: var(--rehberim-text);
    font-size: 17px;
    line-height: 1.8;
}
.corporate-page-content h2 {
    margin: 26px 0 8px;
    color: var(--rehberim-primary-dark);
    font-size: 23px;
}
.corporate-page-content h2:first-child { margin-top: 0; }
.corporate-page-content p { margin: 0 0 14px; }
.corporate-page-content a { text-decoration: underline; }
.corporate-contact-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}
.corporate-contact-grid article {
    display: grid;
    gap: 7px;
    padding: 24px;
    border: 1px solid var(--rehberim-border);
    border-radius: 18px;
    background: var(--rehberim-surface);
}
.corporate-contact-grid span,
.corporate-contact-grid small { color: var(--rehberim-muted); }
.corporate-contact-grid strong { color: var(--rehberim-primary-dark); font-size: 19px; word-break: break-word; }
.corporate-simple-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 24px 28px;
    border-radius: 18px;
    background: var(--rehberim-primary-dark);
    color: #fff;
}
.corporate-simple-cta h2 { margin: 0 0 6px; color: #fff; }
.corporate-simple-cta p { margin: 0; color: rgba(255,255,255,.82); }
.corporate-simple-cta a {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 0 20px;
    border-radius: 12px;
    background: var(--rehberim-secondary);
    color: var(--rehberim-text);
    font-weight: 800;
}
.corporate-imprint-list { margin: 0; display: grid; }
.corporate-imprint-list > div {
    display: grid;
    grid-template-columns: 210px minmax(0, 1fr);
    gap: 20px;
    padding: 15px 0;
    border-bottom: 1px solid var(--rehberim-border);
}
.corporate-imprint-list > div:last-child { border-bottom: 0; }
.corporate-imprint-list dt { color: var(--rehberim-muted); font-weight: 700; }
.corporate-imprint-list dd { margin: 0; color: var(--rehberim-primary-dark); font-weight: 700; word-break: break-word; }
.corporate-bank-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr);
    gap: 18px;
}
.corporate-bank-card,
.corporate-bank-steps {
    padding: 26px;
    border-radius: 20px;
    border: 1px solid var(--rehberim-border);
    background: var(--rehberim-surface);
}
.corporate-bank-brand {
    display: flex;
    align-items: center;
    gap: 16px;
    padding-bottom: 18px;
    border-bottom: 1px solid var(--rehberim-border);
}
.corporate-bank-brand > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    border-radius: 18px;
    background: #0a7b43;
    color: #fff;
    font-size: 28px;
    font-weight: 900;
}
.corporate-bank-brand strong { display: block; color: var(--rehberim-primary-dark); font-size: 22px; }
.corporate-bank-brand small { color: var(--rehberim-muted); }
.corporate-bank-card dl { margin: 16px 0 0; display: grid; }
.corporate-bank-card dl > div {
    display: grid;
    grid-template-columns: 170px minmax(0,1fr);
    gap: 16px;
    padding: 13px 0;
    border-bottom: 1px solid var(--rehberim-border);
}
.corporate-bank-card dl > div:last-child { border-bottom: 0; }
.corporate-bank-card dt { color: var(--rehberim-muted); }
.corporate-bank-card dd { margin: 0; color: var(--rehberim-primary-dark); font-weight: 800; word-break: break-word; }
.corporate-bank-steps h2 { margin: 0 0 14px; color: var(--rehberim-primary-dark); }
.corporate-bank-steps ol { margin: 0 0 20px; padding-left: 22px; display: grid; gap: 12px; color: var(--rehberim-text); }
.corporate-bank-steps a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 48px;
    border-radius: 12px;
    background: var(--rehberim-primary-dark);
    color: #fff;
    font-weight: 800;
}
.corporate-bank-notice {
    margin: 0;
    padding: 16px 18px;
    border-radius: 14px;
    border: 1px solid color-mix(in srgb, var(--rehberim-secondary) 45%, var(--rehberim-border));
    background: color-mix(in srgb, var(--rehberim-secondary) 10%, var(--rehberim-surface));
}
.footer-corporate-links { margin: 0; padding: 0; list-style: none; display: grid; gap: 6px; }
.legal-consent-box {
    display: grid;
    gap: 10px;
    margin: 18px 0;
    padding: 18px;
    border: 1px solid color-mix(in srgb, var(--rehberim-secondary) 45%, var(--rehberim-border));
    border-radius: 16px;
    background: color-mix(in srgb, var(--rehberim-secondary) 7%, var(--rehberim-surface));
}
.legal-consent-box > strong { color: var(--rehberim-primary-dark); }
.legal-consent-box label {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    color: var(--rehberim-text);
    line-height: 1.55;
}
.legal-consent-box input[type="checkbox"] {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    margin-top: 3px;
}
.legal-consent-box p { margin: 2px 0 0; color: var(--rehberim-muted); font-size: 14px; }
.legal-consent-box a { color: var(--rehberim-primary-dark); font-weight: 800; text-decoration: underline; }
@media (max-width: 900px) {
    .corporate-contact-grid,
    .corporate-bank-layout { grid-template-columns: 1fr; }
    .corporate-simple-cta { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 620px) {
    .corporate-page-main { padding: 22px 0 48px; }
    .corporate-page-header,
    .corporate-page-card,
    .corporate-bank-card,
    .corporate-bank-steps { padding: 20px; }
    .corporate-imprint-list > div,
    .corporate-bank-card dl > div { grid-template-columns: 1fr; gap: 5px; }
}


/* v131 legacy three-package page */
.doping-packages-page {
    padding-bottom: 64px;
}
.doping-packages-hero {
    padding: 44px 0 38px;
    background: linear-gradient(135deg, color-mix(in srgb, var(--rehberim-primary) 8%, var(--rehberim-background)) 0%, var(--rehberim-background) 72%);
    border-bottom: 1px solid var(--rehberim-border);
}
.doping-packages-hero h1 {
    margin: 10px 0 8px;
    font-size: clamp(34px, 5vw, 54px);
    line-height: 1.08;
}
.doping-packages-hero p {
    max-width: 760px;
    margin: 0;
    color: var(--rehberim-muted);
    font-size: 18px;
}
.doping-packages-eyebrow {
    display: inline-flex;
    padding: 7px 13px;
    border-radius: 999px;
    background: var(--rehberim-primary);
    color: var(--rehberim-contrast-text);
    font-size: 13px;
    font-weight: 800;
}
.doping-packages-page-content {
    padding-top: 32px;
}
.legacy-package-grid {
    align-items: stretch;
    gap: 20px;
}
.legacy-package-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 100%;
    padding: 28px;
    border-width: 2px;
    border-radius: 22px;
    box-shadow: 0 16px 36px color-mix(in srgb, var(--rehberim-shadow) 8%, transparent);
}
.legacy-package-card.level-standard {
    border-color: var(--rehberim-pkg-basic-accent);
    background: linear-gradient(180deg, var(--rehberim-pkg-basic-bg), var(--rehberim-surface) 48%);
}
.legacy-package-card.level-premium {
    border-color: var(--rehberim-pkg-premium-accent);
    background: linear-gradient(180deg, var(--rehberim-pkg-premium-bg), var(--rehberim-surface) 48%);
}
.legacy-package-card.level-showcase {
    border-color: var(--rehberim-pkg-showcase-accent);
    background: linear-gradient(180deg, var(--rehberim-pkg-showcase-bg), var(--rehberim-surface) 48%);
}
.legacy-package-card h3 {
    margin: 0;
    padding-right: 24px;
    font-size: 25px;
}
.legacy-package-text {
    min-height: 78px;
    margin: 12px 0;
    color: var(--rehberim-muted);
    line-height: 1.65;
}
.legacy-package-badge {
    position: absolute;
    top: -13px;
    right: 22px;
    padding: 7px 14px;
    border-radius: 999px;
    color: #fff;
    font-size: 12px;
    font-weight: 800;
}
.level-premium .legacy-package-badge { background: var(--rehberim-pkg-premium-accent); }
.level-showcase .legacy-package-badge { background: var(--rehberim-pkg-showcase-accent); }
.legacy-package-card .package-price {
    display: flex;
    align-items: baseline;
    gap: 8px;
    margin: 8px 0 18px;
}
.legacy-package-card .package-price strong {
    font-size: 31px;
    line-height: 1;
}
.legacy-package-card .package-price small {
    color: var(--rehberim-muted);
    font-weight: 700;
}
.legacy-package-features {
    flex: 1;
    display: grid;
    align-content: start;
    gap: 10px;
    margin: 0 0 24px;
    padding: 0;
    list-style: none;
}
.legacy-package-features li {
    position: relative;
    padding-left: 19px;
    line-height: 1.45;
}
.legacy-package-features li::before {
    content: "";
    position: absolute;
    left: 0;
    top: .62em;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--rehberim-primary);
}
.level-premium .legacy-package-features li::before { background: var(--rehberim-pkg-premium-accent); }
.level-showcase .legacy-package-features li::before { background: var(--rehberim-pkg-showcase-accent); }
.legacy-package-button {
    width: 100%;
    min-height: 50px;
    margin-top: auto;
}
.level-standard .legacy-package-button { background: var(--rehberim-pkg-basic-accent); border-color: var(--rehberim-pkg-basic-accent); }
.level-premium .legacy-package-button { background: var(--rehberim-pkg-premium-accent); border-color: var(--rehberim-pkg-premium-accent); }
.level-showcase .legacy-package-button { background: var(--rehberim-pkg-showcase-accent); border-color: var(--rehberim-pkg-showcase-accent); }
.doping-packages-note {
    margin-top: 24px;
    padding: 18px 22px;
    border: 1px solid var(--rehberim-border);
    border-radius: 16px;
    background: var(--rehberim-surface);
}
.doping-packages-note strong { color: var(--rehberim-primary-dark); }
.doping-packages-note p { margin: 4px 0 0; color: var(--rehberim-muted); }
@media (max-width: 920px) {
    .legacy-package-grid { grid-template-columns: 1fr; }
    .legacy-package-text { min-height: 0; }
}

/* v132 - WooCommerce package product page */
.rehberim-package-product-page .woocommerce-notices-wrapper {
    width: min(1440px, calc(100% - 40px));
    margin: 0 auto 18px;
}

.package-product-main {
    padding: 32px 0 72px;
    background:
        radial-gradient(circle at 85% 4%, color-mix(in srgb, var(--rehberim-primary) 6%, transparent) 0 180px, transparent 182px),
        var(--rehberim-background);
}

.package-product-shell {
    display: grid;
    gap: 22px;
}

.package-product-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 9px;
    color: var(--rehberim-muted);
    font-size: 14px;
}

.package-product-breadcrumb a,
.package-product-breadcrumb strong {
    color: var(--rehberim-primary-dark);
}

.package-product-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(370px, .85fr);
    gap: 22px;
    align-items: stretch;
}

.package-product-visual,
.package-product-purchase-card,
.package-product-quick-grid,
.package-product-content-card,
.package-product-summary-card,
.package-product-bank-strip,
.package-product-reasons,
.package-product-mini-faq,
.package-related-section {
    border: 1px solid var(--rehberim-border);
    border-radius: 24px;
    box-shadow: 0 18px 44px rgba(7, 35, 79, .07);
}

.package-product-visual {
    position: relative;
    min-height: 510px;
    overflow: hidden;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, .82fr);
    gap: 20px;
    align-items: center;
    padding: 42px;
    background:
        radial-gradient(circle at 80% 14%, rgba(211, 154, 29, .19) 0 84px, transparent 86px),
        radial-gradient(circle at 18% 90%, rgba(255, 255, 255, .08) 0 120px, transparent 122px),
        linear-gradient(135deg, #061b3d 0%, #0a326d 58%, #06152f 100%);
    color: #fff;
}

.package-product-premium .package-product-visual {
    background:
        radial-gradient(circle at 82% 15%, rgba(48, 169, 102, .18) 0 84px, transparent 86px),
        linear-gradient(135deg, #082a35 0%, #0b4b55 56%, #061f28 100%);
}

.package-product-basic .package-product-visual {
    background:
        radial-gradient(circle at 82% 15%, rgba(120, 147, 189, .22) 0 84px, transparent 86px),
        linear-gradient(135deg, #17304d 0%, #365578 58%, #13273e 100%);
}

.package-visual-copy {
    position: relative;
    z-index: 2;
}

.package-visual-kicker {
    display: inline-flex;
    min-height: 34px;
    align-items: center;
    padding: 6px 14px;
    border: 1px solid rgba(219, 165, 50, .65);
    border-radius: 999px;
    background: rgba(211, 154, 29, .16);
    color: #f4c86a;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.package-visual-copy h2 {
    margin: 16px 0 12px;
    max-width: 520px;
    color: #fff;
    font-size: clamp(36px, 4vw, 62px);
    line-height: 1.02;
    letter-spacing: -.035em;
}

.package-visual-copy p {
    max-width: 500px;
    margin: 0;
    color: rgba(255, 255, 255, .82);
    font-size: 18px;
    line-height: 1.7;
}

.package-visual-copy ul {
    display: grid;
    gap: 11px;
    margin: 24px 0 0;
    padding: 0;
    list-style: none;
}

.package-visual-copy li {
    position: relative;
    padding-left: 28px;
    color: rgba(255, 255, 255, .92);
    font-weight: 700;
}

.package-visual-copy li::before {
    content: "";
    position: absolute;
    left: 0;
    top: .4em;
    width: 15px;
    height: 8px;
    border-left: 2px solid #e0aa36;
    border-bottom: 2px solid #e0aa36;
    transform: rotate(-45deg);
}

.package-visual-device {
    position: relative;
    z-index: 2;
    align-self: end;
    min-height: 390px;
    display: flex;
    align-items: flex-end;
    justify-content: center;
}

.package-device-frame {
    position: relative;
    width: min(100%, 305px);
    min-height: 370px;
    padding: 16px;
    border: 3px solid rgba(220, 167, 53, .78);
    border-radius: 28px;
    background: linear-gradient(180deg, #eef4fb 0%, #fff 100%);
    box-shadow: 0 28px 65px rgba(0, 0, 0, .34), inset 0 0 0 5px rgba(5, 35, 78, .12);
    transform: perspective(900px) rotateY(-7deg) rotateX(2deg);
}

.package-device-badge {
    position: absolute;
    z-index: 4;
    top: 28px;
    left: 28px;
    padding: 7px 12px;
    border-radius: 8px;
    background: #d39a1d;
    color: #fff;
    font-size: 12px;
    font-weight: 800;
}

.package-device-cover {
    height: 116px;
    border-radius: 17px 17px 9px 9px;
    background:
        linear-gradient(180deg, transparent 0 60%, rgba(4, 26, 59, .15) 60%),
        linear-gradient(135deg, #7fa1bf 0%, #d6e4f1 48%, #486c8b 100%);
}

.package-device-cover::before,
.package-device-cover::after {
    content: "";
    position: absolute;
    top: 61px;
    bottom: auto;
    background: #294d6a;
}

.package-device-cover::before {
    right: 34px;
    width: 44px;
    height: 54px;
    box-shadow: -54px 14px 0 #527694, -98px 27px 0 #284d69, -141px 11px 0 #698aa5;
}

.package-device-cover::after {
    right: 85px;
    width: 17px;
    height: 35px;
    top: 80px;
    box-shadow: -53px 15px 0 #fff, -98px 7px 0 #fff, -142px 16px 0 #fff;
}

.package-device-profile {
    display: grid;
    grid-template-columns: 48px 1fr;
    gap: 12px;
    align-items: center;
    padding: 15px 8px 12px;
}

.package-device-avatar {
    width: 48px;
    height: 48px;
    border-radius: 15px;
    background: linear-gradient(135deg, #0b397a, #d39a1d);
}

.package-device-lines {
    display: grid;
    gap: 7px;
}

.package-device-lines i {
    display: block;
    height: 8px;
    border-radius: 999px;
    background: #dce5ef;
}

.package-device-lines i:nth-child(1) { width: 84%; background: #173c68; }
.package-device-lines i:nth-child(2) { width: 62%; }
.package-device-lines i:nth-child(3) { width: 74%; }

.package-device-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin: 0 8px;
}

.package-device-actions span {
    height: 34px;
    border-radius: 10px;
    background: #eef3f8;
    border: 1px solid #d5e0ec;
}

.package-device-actions span:first-child {
    background: #e9f7ef;
    border-color: #a9d8bb;
}

.package-device-metrics {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 7px;
    margin: 14px 8px 0;
}

.package-device-metrics i {
    height: 62px;
    border-radius: 12px;
    background: linear-gradient(180deg, #0c376f 0%, #092954 100%);
}

.package-device-platform {
    position: absolute;
    width: 360px;
    max-width: 105%;
    height: 54px;
    bottom: -10px;
    border-radius: 50%;
    background: radial-gradient(ellipse at center, #d29a21 0 18%, #17345b 19% 54%, #07172f 55% 100%);
    box-shadow: 0 28px 38px rgba(0, 0, 0, .3);
}

.package-product-purchase-card {
    padding: 38px;
    background: var(--rehberim-surface);
}

.package-product-category {
    color: #b47a0c;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .055em;
    text-transform: uppercase;
}

.package-product-purchase-card h1 {
    margin: 12px 0 14px;
    color: var(--rehberim-primary-dark);
    font-size: clamp(34px, 4vw, 50px);
    line-height: 1.08;
}

.package-product-purchase-card > p {
    margin: 0;
    color: var(--rehberim-muted);
    font-size: 17px;
    line-height: 1.75;
}

.package-product-price {
    display: flex;
    align-items: baseline;
    gap: 8px;
    margin: 24px 0 16px;
    color: #b77b0c;
}

.package-product-price strong,
.package-summary-price {
    font-size: 42px;
    font-weight: 800;
    line-height: 1;
}

.package-product-price .woocommerce-Price-currencySymbol,
.package-summary-price .woocommerce-Price-currencySymbol {
    font-size: .68em;
}

.package-product-price span {
    color: var(--rehberim-primary-dark);
    font-size: 17px;
    font-weight: 800;
}

.package-product-trust {
    display: grid;
    gap: 9px;
    margin-bottom: 18px;
}

.package-product-trust span {
    position: relative;
    padding-left: 24px;
    color: var(--rehberim-muted);
    font-size: 14px;
    font-weight: 700;
}

.package-product-trust span::before {
    content: "";
    position: absolute;
    left: 0;
    top: 3px;
    width: 13px;
    height: 13px;
    border-radius: 50%;
    background: #26a45a;
    box-shadow: 0 0 0 5px rgba(38, 164, 90, .1);
}

.package-product-buy-area {
    display: grid;
    gap: 12px;
}

.package-product-buy-area form.cart {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    margin: 0;
}

.package-product-buy-area .quantity {
    display: none !important;
}

.package-product-buy-area .single_add_to_cart_button,
.package-product-primary-button,
.package-product-bank-button {
    width: 100%;
    min-height: 56px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    padding: 12px 20px;
    font-size: 16px;
    font-weight: 800;
}

.package-product-buy-area .single_add_to_cart_button,
.package-product-primary-button {
    border: 1px solid #c58a16 !important;
    background: linear-gradient(135deg, #d39a1d 0%, #e5b64d 100%) !important;
    color: #fff !important;
    box-shadow: 0 14px 25px rgba(211, 154, 29, .24);
}

.package-product-bank-button {
    border: 1px solid var(--rehberim-primary-dark);
    background: transparent;
    color: var(--rehberim-primary-dark);
}

.package-product-secure-note {
    margin: 14px 0 0 !important;
    font-size: 13px !important;
    text-align: center;
}

.package-product-quick-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    overflow: hidden;
    background: var(--rehberim-surface);
}

.package-product-quick-grid article {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr);
    gap: 15px;
    align-items: center;
    padding: 23px 24px;
    border-right: 1px solid var(--rehberim-border);
}

.package-product-quick-grid article:last-child {
    border-right: 0;
}

.package-product-quick-grid strong {
    display: block;
    color: var(--rehberim-primary-dark);
    font-size: 17px;
}

.package-product-quick-grid p {
    margin: 4px 0 0;
    color: var(--rehberim-muted);
    font-size: 14px;
    line-height: 1.45;
}

.package-quick-icon {
    position: relative;
    width: 52px;
    height: 52px;
    border-radius: 17px;
    background: color-mix(in srgb, var(--rehberim-secondary) 13%, var(--rehberim-surface));
    border: 1px solid color-mix(in srgb, var(--rehberim-secondary) 34%, var(--rehberim-border));
}

.package-quick-icon::before,
.package-quick-icon::after {
    content: "";
    position: absolute;
}

.package-quick-icon.icon-rocket::before {
    width: 17px;
    height: 28px;
    left: 17px;
    top: 10px;
    border: 3px solid #bd8210;
    border-radius: 50% 50% 35% 35%;
    transform: rotate(42deg);
}

.package-quick-icon.icon-infinity::before {
    width: 33px;
    height: 15px;
    left: 8px;
    top: 17px;
    border: 3px solid #bd8210;
    border-radius: 50%;
}

.package-quick-icon.icon-infinity::after {
    width: 3px;
    height: 27px;
    left: 24px;
    top: 11px;
    background: #bd8210;
    transform: rotate(45deg);
}

.package-quick-icon.icon-diamond::before {
    width: 24px;
    height: 24px;
    left: 13px;
    top: 13px;
    border: 3px solid #bd8210;
    transform: rotate(45deg);
}

.package-quick-icon.icon-message::before {
    width: 28px;
    height: 22px;
    left: 11px;
    top: 12px;
    border: 3px solid #bd8210;
    border-radius: 12px;
}

.package-quick-icon.icon-message::after {
    left: 15px;
    top: 31px;
    border-width: 7px 7px 0 0;
    border-style: solid;
    border-color: #bd8210 transparent transparent transparent;
}

.package-product-content-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 22px;
    align-items: start;
}

.package-product-content-card {
    overflow: hidden;
    background: var(--rehberim-surface);
}

.package-product-tabs {
    display: flex;
    align-items: center;
    gap: 8px;
    overflow-x: auto;
    padding: 0 22px;
    border-bottom: 1px solid var(--rehberim-border);
}

.package-product-tabs a {
    position: relative;
    min-width: max-content;
    padding: 19px 13px 17px;
    color: var(--rehberim-muted);
    font-weight: 800;
}

.package-product-tabs a:first-child {
    color: #b77b0c;
}

.package-product-tabs a:first-child::after {
    content: "";
    position: absolute;
    left: 12px;
    right: 12px;
    bottom: -1px;
    height: 3px;
    background: #d39a1d;
}

.package-product-section {
    padding: 28px 30px;
    scroll-margin-top: 120px;
}

.package-product-section + .package-product-section {
    border-top: 1px solid var(--rehberim-border);
}

.package-product-section h2 {
    margin: 0 0 14px;
    color: var(--rehberim-primary-dark);
    font-size: 27px;
}

.package-product-description,
.package-product-description p {
    color: var(--rehberim-text);
    line-height: 1.8;
}

.package-product-description ul {
    display: none;
}

.package-product-feature-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11px;
}

.package-product-feature-list span {
    position: relative;
    min-height: 48px;
    display: flex;
    align-items: center;
    padding: 10px 14px 10px 42px;
    border: 1px solid var(--rehberim-border);
    border-radius: 13px;
    background: color-mix(in srgb, var(--rehberim-primary) 2%, var(--rehberim-surface));
    color: var(--rehberim-primary-dark);
    font-weight: 700;
}

.package-product-feature-list span::before {
    content: "";
    position: absolute;
    left: 16px;
    top: 15px;
    width: 12px;
    height: 7px;
    border-left: 2px solid #d39a1d;
    border-bottom: 2px solid #d39a1d;
    transform: rotate(-45deg);
}

.package-activation-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.package-activation-grid article {
    padding: 18px;
    border: 1px solid var(--rehberim-border);
    border-radius: 16px;
    background: var(--rehberim-background);
}

.package-activation-grid h3 {
    margin: 0 0 8px;
    color: var(--rehberim-primary-dark);
    font-size: 18px;
}

.package-activation-grid p {
    margin: 0;
    color: var(--rehberim-muted);
    line-height: 1.65;
}

.package-product-faq details {
    border: 1px solid var(--rehberim-border);
    border-radius: 13px;
    background: var(--rehberim-surface);
}

.package-product-faq details + details {
    margin-top: 9px;
}

.package-product-faq summary {
    cursor: pointer;
    padding: 14px 17px;
    color: var(--rehberim-primary-dark);
    font-weight: 800;
}

.package-product-faq details p {
    margin: 0;
    padding: 0 17px 16px;
    color: var(--rehberim-muted);
}

.package-product-summary-card {
    position: sticky;
    top: 105px;
    padding: 26px;
    background: linear-gradient(155deg, #082851 0%, #0a376e 55%, #061d3d 100%);
    color: #fff;
}

.package-product-summary-card > span {
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: #efc56a;
}

.package-product-summary-card h2 {
    margin: 10px 0 12px;
    color: #fff;
    font-size: 28px;
    line-height: 1.15;
}

.package-summary-price {
    color: #efc56a;
    margin-bottom: 18px;
}

.package-summary-price small {
    color: #fff;
    font-size: 15px;
}

.package-product-summary-card ul {
    display: grid;
    gap: 10px;
    margin: 0 0 22px;
    padding: 0;
    list-style: none;
}

.package-product-summary-card li {
    position: relative;
    padding-left: 24px;
    color: rgba(255, 255, 255, .88);
}

.package-product-summary-card li::before {
    content: "";
    position: absolute;
    left: 2px;
    top: 7px;
    width: 11px;
    height: 6px;
    border-left: 2px solid #e0aa36;
    border-bottom: 2px solid #e0aa36;
    transform: rotate(-45deg);
}

.package-product-summary-card > a {
    min-height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 13px;
    background: linear-gradient(135deg, #d39a1d, #e5b64d);
    color: #fff;
    font-weight: 800;
}

.package-product-summary-card > small {
    display: block;
    margin-top: 12px;
    color: rgba(255, 255, 255, .7);
    text-align: center;
}

.package-product-bank-strip {
    display: grid;
    grid-template-columns: 72px minmax(250px, .85fr) minmax(0, 1.8fr);
    gap: 20px;
    align-items: center;
    padding: 20px 24px;
    background: linear-gradient(90deg, color-mix(in srgb, var(--rehberim-secondary) 7%, var(--rehberim-surface)), var(--rehberim-surface));
}

.package-bank-symbol {
    width: 64px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 18px;
    background: var(--rehberim-primary-dark);
    color: #fff;
    font-size: 30px;
    font-weight: 800;
}

.package-bank-intro strong {
    display: block;
    color: var(--rehberim-primary-dark);
    font-size: 18px;
}

.package-bank-intro p {
    margin: 5px 0 0;
    color: var(--rehberim-muted);
    line-height: 1.5;
}

.package-product-bank-strip dl {
    display: grid;
    grid-template-columns: .7fr 1fr 1.5fr .8fr;
    margin: 0;
}

.package-product-bank-strip dl div {
    min-width: 0;
    padding: 3px 18px;
    border-left: 1px solid var(--rehberim-border);
}

.package-product-bank-strip dt {
    color: #b37a0e;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
}

.package-product-bank-strip dd {
    margin: 5px 0 0;
    color: var(--rehberim-primary-dark);
    font-weight: 800;
    overflow-wrap: anywhere;
}

.package-product-bottom-grid {
    display: grid;
    grid-template-columns: 1.2fr .8fr;
    gap: 22px;
}

.package-product-reasons,
.package-product-mini-faq,
.package-related-section {
    padding: 24px;
    background: var(--rehberim-surface);
}

.package-product-reasons h2,
.package-product-mini-faq h2,
.package-related-section h2 {
    margin: 0 0 17px;
    color: var(--rehberim-primary-dark);
    font-size: 24px;
}

.package-product-reasons > div {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.package-product-reasons article {
    padding: 15px;
    border-radius: 15px;
    background: var(--rehberim-background);
}

.package-product-reasons strong {
    color: var(--rehberim-primary-dark);
}

.package-product-reasons p,
.package-product-mini-faq p {
    margin: 6px 0 0;
    color: var(--rehberim-muted);
}

.package-product-mini-faq a {
    display: inline-flex;
    margin-top: 15px;
    color: var(--rehberim-primary-dark);
    font-weight: 800;
}

.package-related-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.package-related-grid article {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 18px 20px;
    border: 1px solid var(--rehberim-border);
    border-radius: 18px;
    background: var(--rehberim-background);
}

.package-related-grid article span {
    display: inline-flex;
    color: #b37a0e;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
}

.package-related-grid h3 {
    margin: 5px 0;
    color: var(--rehberim-primary-dark);
    font-size: 21px;
}

.package-related-grid p {
    margin: 0 0 6px;
    color: var(--rehberim-muted);
}

.package-related-grid strong {
    color: #b37a0e;
    font-size: 20px;
}

.package-related-grid strong small {
    color: var(--rehberim-muted);
    font-size: 13px;
}

.package-related-grid article > a {
    min-width: 110px;
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--rehberim-primary-dark);
    border-radius: 12px;
    color: var(--rehberim-primary-dark);
    font-weight: 800;
}

.woocommerce-standard-product {
    padding: 38px 0 70px;
}

/* Common WooCommerce purchase flow polish */
.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce,
.woocommerce-account .woocommerce {
    width: min(1440px, calc(100% - 40px));
    margin: 34px auto 70px;
}

.woocommerce-cart-form,
.woocommerce-checkout form.checkout,
.woocommerce-checkout-review-order,
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
    border-radius: 20px;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .06);
}

.woocommerce table.shop_table {
    border-collapse: separate;
    border-spacing: 0;
    border-color: var(--rehberim-border);
    border-radius: 16px;
    overflow: hidden;
}

.woocommerce table.shop_table th {
    color: var(--rehberim-primary-dark);
    background: color-mix(in srgb, var(--rehberim-primary) 5%, var(--rehberim-surface));
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce .select2-container .select2-selection--single {
    min-height: 48px;
    border: 1px solid var(--rehberim-border);
    border-radius: 12px;
    background: var(--rehberim-input-surface);
}

.woocommerce-checkout #payment {
    border-radius: 18px;
    background: color-mix(in srgb, var(--rehberim-primary) 4%, var(--rehberim-surface));
}

@media (max-width: 1180px) {
    .package-product-hero,
    .package-product-content-layout {
        grid-template-columns: 1fr;
    }

    .package-product-summary-card {
        position: static;
    }

    .package-product-quick-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .package-product-quick-grid article:nth-child(2) {
        border-right: 0;
    }

    .package-product-quick-grid article:nth-child(-n+2) {
        border-bottom: 1px solid var(--rehberim-border);
    }

    .package-product-bank-strip {
        grid-template-columns: 72px 1fr;
    }

    .package-product-bank-strip dl {
        grid-column: 1 / -1;
    }
}

@media (max-width: 900px) {
    .package-product-visual {
        grid-template-columns: 1fr;
        padding: 32px;
    }

    .package-visual-device {
        min-height: 350px;
    }

    .package-product-bank-strip dl {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .package-product-bank-strip dl div {
        border: 1px solid var(--rehberim-border);
        border-radius: 13px;
        padding: 12px;
    }

    .package-product-bottom-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 680px) {
    .package-product-main {
        padding: 22px 0 52px;
    }

    .package-product-visual,
    .package-product-purchase-card,
    .package-product-content-card,
    .package-product-summary-card,
    .package-product-bank-strip,
    .package-product-reasons,
    .package-product-mini-faq,
    .package-related-section {
        border-radius: 18px;
    }

    .package-product-visual,
    .package-product-purchase-card,
    .package-product-section,
    .package-product-summary-card {
        padding: 22px;
    }

    .package-visual-copy h2 {
        font-size: 38px;
    }

    .package-visual-device {
        min-height: 315px;
    }

    .package-device-frame {
        min-height: 315px;
    }

    .package-product-quick-grid,
    .package-product-feature-list,
    .package-activation-grid,
    .package-product-reasons > div,
    .package-related-grid,
    .package-product-bank-strip dl {
        grid-template-columns: 1fr;
    }

    .package-product-quick-grid article {
        border-right: 0;
        border-bottom: 1px solid var(--rehberim-border);
    }

    .package-product-quick-grid article:last-child {
        border-bottom: 0;
    }

    .package-product-bank-strip {
        grid-template-columns: 58px 1fr;
        padding: 18px;
    }

    .package-bank-symbol {
        width: 54px;
        height: 54px;
    }

    .package-related-grid article {
        align-items: flex-start;
        flex-direction: column;
    }

    .package-related-grid article > a {
        width: 100%;
    }
}

/* v133 - Çanakkale directory, firm profile, expired jobs and WooCommerce purchase pages */
.job-card.is-expired,
.job-detail-main.is-expired .job-detail-overview-card,
.job-detail-main.is-expired .job-detail-body-card {
    filter: grayscale(.82);
    opacity: .68;
}
.job-card.is-expired:hover { transform: none; box-shadow: none; }
.job-info-badge.expired,
.job-detail-hero-tags .expired {
    background: #4b5563;
    color: #fff;
}
.job-expired-notice {
    display: grid;
    gap: 5px;
    padding: 18px 20px;
    border: 1px solid #cbd5e1;
    border-left: 5px solid #475569;
    border-radius: 16px;
    background: #f8fafc;
    color: #334155;
}
.job-detail-apply-button.disabled {
    cursor: not-allowed;
    background: #64748b;
    border-color: #64748b;
    color: #fff;
}

.firm-profile-main { padding: 26px 0 64px; }
.firm-profile-shell { display: grid; gap: 18px; }
.firm-profile-breadcrumb { display:flex; flex-wrap:wrap; gap:8px; color:var(--rehberim-muted); font-size:14px; }
.firm-profile-breadcrumb a { color:var(--rehberim-primary); }
.firm-profile { display:grid; gap:22px; }
.firm-profile-hero {
    position:relative; min-height:360px; border-radius:26px; overflow:hidden;
    background-size:cover; background-position:center;
    box-shadow:0 18px 44px rgba(15,23,42,.11);
}
.firm-profile-hero-overlay { position:absolute; inset:0; background:linear-gradient(90deg,rgba(4,24,56,.95),rgba(7,43,96,.78) 55%,rgba(7,43,96,.35)); }
.firm-profile-hero-content {
    position:relative; z-index:1; min-height:360px; padding:34px;
    display:grid; grid-template-columns:150px minmax(0,1fr) auto; gap:26px; align-items:center; color:#fff;
}
.firm-profile-logo { width:150px; height:150px; border-radius:24px; overflow:hidden; background:#fff; border:5px solid rgba(255,255,255,.22); }
.firm-profile-logo img { display:block; width:100%; height:100%; object-fit:contain; }
.firm-profile-badges { display:flex; flex-wrap:wrap; gap:9px; }
.firm-profile-badges span { display:inline-flex; padding:7px 12px; border-radius:999px; background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.22); font-size:13px; font-weight:800; }
.firm-profile-badges .verified { background:#15803d; border-color:#15803d; }
.firm-profile-title-wrap h1 { margin:12px 0 8px; color:#fff; font-size:clamp(34px,4vw,56px); line-height:1.08; }
.firm-profile-title-wrap > p { margin:0; max-width:760px; color:rgba(255,255,255,.86); font-size:18px; }
.firm-profile-summary-meta { display:flex; flex-wrap:wrap; gap:10px; margin-top:18px; }
.firm-profile-summary-meta span { padding:7px 11px; border-radius:10px; background:rgba(255,255,255,.1); }
.firm-profile-summary-meta .rating { background:#d2951d; color:#fff; font-weight:800; }
.firm-profile-hero-actions { display:grid; gap:10px; min-width:180px; }
.firm-profile-hero-actions a { display:flex; min-height:48px; align-items:center; justify-content:center; padding:10px 16px; border-radius:14px; background:#fff; color:#072d63; font-weight:800; }
.firm-profile-hero-actions .whatsapp { background:#20a55a; color:#fff; }
.firm-profile-layout { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:22px; align-items:start; }
.firm-profile-content, .firm-profile-sidebar { display:grid; gap:20px; }
.firm-profile-sidebar { position:sticky; top:110px; }
.firm-profile-card { padding:24px; border:1px solid var(--rehberim-border); border-radius:22px; background:var(--rehberim-surface); box-shadow:0 12px 30px rgba(15,23,42,.055); }
.firm-profile-card h2 { margin:0 0 18px; color:var(--rehberim-primary-dark); font-size:26px; }
.firm-profile-entry-content { color:var(--rehberim-text); line-height:1.85; }
.firm-profile-info-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.firm-profile-info-grid > div { display:grid; gap:5px; min-height:80px; padding:15px; border:1px solid var(--rehberim-border); border-radius:15px; background:color-mix(in srgb,var(--rehberim-primary) 4%,var(--rehberim-surface)); }
.firm-profile-info-grid small { color:var(--rehberim-muted); }
.firm-profile-info-grid strong { color:var(--rehberim-primary-dark); }
.firm-profile-chip-list { display:flex; flex-wrap:wrap; gap:9px; }
.firm-profile-chip-list span { display:inline-flex; padding:8px 13px; border-radius:999px; background:#eef4fb; color:#173d73; font-weight:700; }
.firm-profile-chip-list.service-areas span { background:#ecfdf3; color:#166534; }
.firm-profile-map { width:100%; min-height:340px; border:0; border-radius:17px; }
.firm-profile-map-link, .firm-profile-action { display:inline-flex; align-items:center; justify-content:center; min-height:44px; margin-top:14px; padding:8px 16px; border-radius:12px; background:var(--rehberim-primary); color:var(--rehberim-contrast-text); font-weight:800; }
.firm-profile-sidebar dl { display:grid; grid-template-columns:115px minmax(0,1fr); gap:12px 14px; margin:0; }
.firm-profile-sidebar dt { color:var(--rehberim-muted); font-weight:700; }
.firm-profile-sidebar dd { margin:0; min-width:0; overflow-wrap:anywhere; color:var(--rehberim-primary-dark); font-weight:700; }
.firm-verified-status { display:grid; gap:8px; color:#166534; }
.firm-verified-status span { color:var(--rehberim-muted); font-weight:400; }
.firm-profile-job-list { display:grid; gap:10px; }
.firm-profile-job-list a { display:flex; justify-content:space-between; gap:15px; padding:14px 16px; border:1px solid var(--rehberim-border); border-radius:14px; }
.firm-profile-card.issue-card details { border:1px solid var(--rehberim-border); border-radius:14px; padding:13px 14px; }
.firm-profile-card.issue-card details + details { margin-top:10px; }
.firm-profile-card.issue-card summary { cursor:pointer; color:var(--rehberim-primary-dark); font-weight:800; }
.firm-profile-card.issue-card form, .firm-review-form, .firm-review-reply-form { display:grid; gap:10px; margin-top:12px; }
.firm-profile-card.issue-card textarea, .firm-review-form textarea, .firm-review-reply-form textarea, .firm-review-form select { width:100%; border:1px solid var(--rehberim-border); border-radius:12px; padding:11px; }
.firm-review-list { display:grid; gap:14px; }
.firm-review-item { padding:18px; border:1px solid var(--rehberim-border); border-radius:17px; background:#fbfdff; }
.firm-review-item header { display:flex; justify-content:space-between; gap:12px; align-items:center; }
.firm-review-item header > div { display:flex; align-items:center; gap:10px; }
.firm-review-item header img { border-radius:50%; }
.firm-review-item header span span { display:grid; }
.firm-review-stars { color:#d2951d; letter-spacing:2px; }
.firm-review-reply { margin:12px 0 0 28px; padding:14px; border-left:4px solid var(--rehberim-primary); border-radius:0 12px 12px 0; background:#eef5ff; }

.rehberim-purchase-page .site-main { padding-top:34px; }
.rehberim-purchase-page .woocommerce { width:min(1280px,calc(100% - 40px)); margin:0 auto 64px; }
.rehberim-purchase-hero, .rehberim-account-hero {
    display:flex; justify-content:space-between; align-items:center; gap:24px; margin-bottom:24px; padding:28px 32px;
    border-radius:24px; background:linear-gradient(135deg,#06275a,#0a438f); color:#fff; box-shadow:0 18px 40px rgba(7,43,96,.16);
}
.rehberim-purchase-hero h1, .rehberim-account-hero h1 { margin:4px 0 5px; color:#fff; font-size:clamp(30px,4vw,46px); }
.rehberim-purchase-hero p, .rehberim-account-hero p { margin:0; color:rgba(255,255,255,.82); }
.rehberim-purchase-hero > div > span, .rehberim-account-hero > div > span { color:#f4bd3d; font-weight:800; }
.rehberim-purchase-steps { display:flex; gap:8px; }
.rehberim-purchase-steps span { display:grid; grid-template-columns:34px auto; gap:8px; align-items:center; padding:8px 12px; border-radius:13px; background:rgba(255,255,255,.08); color:rgba(255,255,255,.7); }
.rehberim-purchase-steps b { width:34px; height:34px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:rgba(255,255,255,.12); }
.rehberim-purchase-steps .is-active { background:#fff; color:#072d63; font-weight:800; }
.rehberim-purchase-steps .is-active b, .rehberim-purchase-steps .is-complete b { background:#d2951d; color:#fff; }
.woocommerce-cart-form, .cart_totals, .woocommerce-checkout form.checkout, .woocommerce-checkout-review-order, .woocommerce-account .woocommerce-MyAccount-navigation, .woocommerce-account .woocommerce-MyAccount-content, .woocommerce-form-login, .woocommerce-form-register {
    border:1px solid var(--rehberim-border)!important; border-radius:22px!important; background:var(--rehberim-surface)!important; box-shadow:0 12px 32px rgba(15,23,42,.06); padding:22px!important;
}
.woocommerce table.shop_table { border:0!important; border-collapse:separate!important; border-spacing:0 10px!important; }
.woocommerce table.shop_table th { color:var(--rehberim-primary-dark); background:#eef4fb; border:0!important; }
.woocommerce table.shop_table td { border-top:1px solid var(--rehberim-border)!important; border-bottom:1px solid var(--rehberim-border)!important; background:#fff; }
.woocommerce table.shop_table td:first-child { border-left:1px solid var(--rehberim-border)!important; border-radius:14px 0 0 14px; }
.woocommerce table.shop_table td:last-child { border-right:1px solid var(--rehberim-border)!important; border-radius:0 14px 14px 0; }
.woocommerce-cart .product-thumbnail img { width:96px!important; height:72px!important; object-fit:contain; border-radius:12px; background:#f4f7fb; }
.woocommerce .quantity .qty { min-height:44px; border:1px solid var(--rehberim-border); border-radius:10px; }
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit { min-height:46px; border-radius:13px!important; background:var(--rehberim-primary)!important; color:var(--rehberim-contrast-text)!important; padding:10px 18px!important; }
.woocommerce a.checkout-button, .woocommerce #place_order { background:#d2951d!important; color:#111827!important; font-size:17px!important; }
.woocommerce-cart .cart-collaterals { display:grid; grid-template-columns:minmax(0,1fr) 420px; gap:22px; }
.woocommerce-cart .cart-collaterals .cross-sells { width:auto!important; }
.woocommerce-cart .cart-collaterals .cart_totals { width:auto!important; float:none!important; }
.rehberim-purchase-trust-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-top:22px; }
.rehberim-purchase-trust-grid article { display:grid; gap:5px; padding:18px; border:1px solid var(--rehberim-border); border-radius:16px; background:#f8fbff; }
.rehberim-purchase-trust-grid strong { color:var(--rehberim-primary-dark); }
.rehberim-purchase-trust-grid span { color:var(--rehberim-muted); }
.woocommerce-checkout .col2-set { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; width:100%!important; }
.woocommerce-checkout .col2-set .col-1, .woocommerce-checkout .col2-set .col-2 { width:auto!important; float:none!important; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select, .select2-container--default .select2-selection--single { min-height:48px; border:1px solid var(--rehberim-border); border-radius:12px; padding:10px 13px; background:#fff; }
.woocommerce-checkout #payment { border-radius:18px!important; background:#f5f8fc!important; }
.rehberim-checkout-notice { margin-top:18px; padding:16px; border:1px solid #e7c36b; border-radius:15px; background:#fff9e9; }
.rehberim-checkout-notice strong { color:#7c5700; }
.rehberim-checkout-notice p { margin:7px 0; color:#5f4a14; }
.rehberim-checkout-notice div { display:flex; flex-wrap:wrap; gap:12px; }
.rehberim-checkout-notice a { font-weight:800; text-decoration:underline; }
.rehberim-account-hero > a { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:10px 18px; border-radius:14px; background:#d2951d; color:#111827; font-weight:800; }
.woocommerce-account .woocommerce { display:grid; grid-template-columns:260px minmax(0,1fr); gap:22px; }
.woocommerce-account .woocommerce > .woocommerce-notices-wrapper, .woocommerce-account .woocommerce > .rehberim-account-hero { grid-column:1/-1; }
.woocommerce-account .woocommerce-MyAccount-navigation { width:auto!important; float:none!important; padding:12px!important; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { display:grid; gap:6px; list-style:none; padding:0; margin:0; }
.woocommerce-account .woocommerce-MyAccount-navigation a { display:block; padding:12px 14px; border-radius:11px; color:var(--rehberim-primary-dark); font-weight:700; }
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a { background:var(--rehberim-primary); color:#fff; }
.woocommerce-account .woocommerce-MyAccount-content { width:auto!important; float:none!important; min-height:360px; }
.woocommerce-account .woocommerce-Addresses { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.woocommerce-account .woocommerce-Address { width:auto!important; float:none!important; padding:18px; border:1px solid var(--rehberim-border); border-radius:16px; }

@media (max-width:1100px) {
    .firm-profile-layout, .news-single-layout { grid-template-columns:1fr; }
    .firm-profile-sidebar { position:static; grid-template-columns:repeat(2,minmax(0,1fr)); }
    .firm-profile-hero-content { grid-template-columns:130px minmax(0,1fr); }
    .firm-profile-hero-actions { grid-column:1/-1; grid-template-columns:repeat(3,minmax(0,1fr)); }
    .firm-profile-info-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .woocommerce-cart .cart-collaterals { grid-template-columns:1fr; }
}
@media (max-width:780px) {
    .firm-profile-hero-content { grid-template-columns:1fr; padding:24px; }
    .firm-profile-logo { width:120px; height:120px; }
    .firm-profile-hero-actions, .firm-profile-sidebar, .firm-profile-info-grid, .rehberim-purchase-trust-grid, .woocommerce-checkout .col2-set, .woocommerce-account .woocommerce, .woocommerce-account .woocommerce-Addresses { grid-template-columns:1fr; }
    .firm-profile-sidebar dl { grid-template-columns:1fr; }
    .firm-profile-sidebar dt { margin-bottom:-8px; }
    .rehberim-purchase-hero, .rehberim-account-hero { align-items:flex-start; flex-direction:column; padding:22px; }
    .rehberim-purchase-steps { width:100%; overflow-x:auto; }
    .rehberim-purchase-steps span { min-width:120px; }
    .rehberim-purchase-page .woocommerce { width:min(100% - 24px,1280px); }
    .woocommerce-cart-form { overflow-x:auto; }
}
.woocommerce-account:not(.logged-in) .woocommerce { grid-template-columns:1fr; max-width:980px; }
.woocommerce-account:not(.logged-in) #customer_login { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.woocommerce-account:not(.logged-in) #customer_login .col-1,
.woocommerce-account:not(.logged-in) #customer_login .col-2 { width:auto; float:none; }
@media (max-width:780px) {
    .woocommerce-account:not(.logged-in) #customer_login { grid-template-columns:1fr; }
}
.firm-status-label.is-verified { background:#15803d; color:#fff; }


/* v133 local directory, verification and WooCommerce block refinements */
.firm-archive-filter input[readonly],
.listing-directory-filter input[readonly],
.job-directory-filter input[readonly] {
    cursor: default;
    background: color-mix(in srgb, var(--rehberim-primary) 5%, var(--rehberim-surface));
    color: var(--rehberim-primary-dark);
    font-weight: 700;
}
.customer-content-thumb .customer-content-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.customer-content-actions .is-verify,
.customer-content-actions .is-verified {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 6px 11px;
    border-radius: 9px;
    font-size: 12px;
    font-weight: 800;
}
.customer-content-actions .is-verify {
    background: color-mix(in srgb, #d39a1d 12%, white);
    color: #7a5000;
    border: 1px solid color-mix(in srgb, #d39a1d 42%, transparent);
}
.customer-content-actions .is-verified {
    background: #eaf8ef;
    color: #14783a;
    border: 1px solid #bce5ca;
}
.rehberim-cart-page .wp-block-woocommerce-cart,
.rehberim-checkout-page .wp-block-woocommerce-checkout {
    margin-top: 24px;
}
.rehberim-purchase-page .wc-block-components-sidebar-layout {
    gap: 24px;
}
.rehberim-purchase-page .wc-block-components-main,
.rehberim-purchase-page .wc-block-components-sidebar,
.rehberim-purchase-page .wc-block-cart-items,
.rehberim-purchase-page .wc-block-components-order-summary,
.rehberim-purchase-page .wc-block-checkout__billing-fields,
.rehberim-purchase-page .wc-block-checkout__shipping-fields,
.rehberim-purchase-page .wc-block-checkout__payment-method {
    border-radius: 22px;
}
.rehberim-purchase-page .wc-block-components-main {
    padding: 22px;
    background: var(--rehberim-surface);
    border: 1px solid var(--rehberim-border);
    box-shadow: 0 14px 32px rgba(15, 23, 42, .05);
}
.rehberim-purchase-page .wc-block-components-sidebar {
    padding: 22px;
    background: linear-gradient(180deg, color-mix(in srgb, var(--rehberim-primary) 6%, var(--rehberim-surface)) 0%, var(--rehberim-surface) 100%);
    border: 1px solid var(--rehberim-border);
    box-shadow: 0 14px 32px rgba(15, 23, 42, .05);
}
.rehberim-purchase-page .wc-block-components-button:not(.is-link) {
    border-radius: 13px;
    background: var(--rehberim-primary-dark);
    color: #fff;
    font-weight: 800;
}
.rehberim-purchase-page .wc-block-components-text-input input,
.rehberim-purchase-page .wc-block-components-combobox .wc-block-components-combobox-control input {
    border-radius: 12px;
}
@media (max-width: 782px) {
    .rehberim-purchase-page .wc-block-components-main,
    .rehberim-purchase-page .wc-block-components-sidebar { padding: 16px; border-radius: 18px; }
}

/* v134 cart / checkout / submit-page improvements */
.submit-inline-ad { margin: 0 0 24px; }
.submit-inline-ad .rehberim-ad { margin-top: 0; min-height: 300px; display: flex; align-items: center; justify-content: center; }
.support-box { background: linear-gradient(180deg, #ffffff 0%, #f8fcfb 100%); }
.submit-support-link { text-decoration: none; }
.package-summary-box { background: linear-gradient(135deg, rgba(18,63,120,.06), rgba(196,138,34,.10)); border-color: rgba(18,63,120,.14); }
.package-summary-row { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.package-summary-copy { display:grid; gap:6px; }
.package-summary-copy strong { font-size:1.5rem; line-height:1.25; color: var(--rehberim-primary-dark); }
.package-summary-copy small { color: var(--rehberim-muted); font-size: 1rem; }
.package-summary-box .sidebar-package-price { margin-top:0; flex:0 0 auto; padding:12px 16px; border-radius:18px; background:var(--rehberim-primary-dark); color:#fff; font-size:2rem; line-height:1; box-shadow:0 12px 24px rgba(18,63,120,.18); }
.submit-sidebar-box .submit-sidebar-note { align-items:center; text-decoration:none; }
@media (max-width: 720px) {
    .package-summary-row { flex-direction:column; align-items:flex-start; }
}

.rehberim-purchase-page .woocommerce-notices-wrapper { width:min(1280px,calc(100% - 40px)); margin:0 auto 18px; }
.rehberim-purchase-page .woocommerce-cart-form { padding:28px!important; }
.rehberim-purchase-page .woocommerce-cart-form .shop_table thead th,
.rehberim-purchase-page .woocommerce-cart-form .shop_table tbody td,
.rehberim-purchase-page .cart_totals table th,
.rehberim-purchase-page .cart_totals table td { font-size:16px; }
.rehberim-purchase-page .cart_totals { padding:24px!important; }
.rehberim-purchase-page .cart_totals h2,
.rehberim-purchase-page .wc-block-components-totals-wrapper,
.rehberim-purchase-page .wc-block-components-order-summary__button-text { color: var(--rehberim-primary-dark); }
.rehberim-purchase-page .cart_totals .shop_table { margin:0 0 20px!important; }
.rehberim-purchase-page .wc-proceed-to-checkout { padding-bottom:0!important; }
.rehberim-purchase-page .wc-block-cart__submit-container,
.rehberim-purchase-page .wc-block-checkout__actions { margin-top: 20px; }

.woocommerce-checkout form.checkout { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr); gap:24px; align-items:start; }
.woocommerce-checkout #customer_details,
.woocommerce-checkout .col2-set,
.woocommerce-checkout #order_review,
.woocommerce-checkout #order_review_heading { width:100%!important; float:none!important; }
.woocommerce-checkout #customer_details { display:block; }
.woocommerce-checkout .col2-set { grid-template-columns:1fr; gap:22px; }
.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2 { padding:0; border:0; }
.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout .woocommerce-shipping-fields,
.woocommerce-checkout .woocommerce-additional-fields { padding:20px; border:1px solid var(--rehberim-border); border-radius:18px; background:#fbfdff; }
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-shipping-fields h3,
.woocommerce-checkout .woocommerce-additional-fields h3,
.woocommerce-checkout #order_review_heading { margin:0 0 16px; font-size:1.35rem; color:var(--rehberim-primary-dark); }
.woocommerce-checkout #order_review { align-self:start; background:linear-gradient(180deg,#fbfdff,#f4f8fd); }
.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table td.product-name { width:68%; }
.woocommerce-checkout #payment { margin-top:18px; padding:18px; border:1px solid var(--rehberim-border)!important; }
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper { margin-top:16px; }
.woocommerce-checkout #payment ul.payment_methods { padding:0 0 14px!important; }
.woocommerce-checkout #payment div.payment_box { border-radius:14px; }
.woocommerce-checkout .form-row { margin-bottom:14px; }
.woocommerce-checkout .form-row-first,
.woocommerce-checkout .form-row-last { width:calc(50% - 8px)!important; }
.woocommerce-checkout .select2-container .select2-selection--single { height:48px; display:flex; align-items:center; }
.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered { line-height:26px; padding-left:14px; }
.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow { height:46px; right:8px; }
.woocommerce-checkout .woocommerce-form-coupon-toggle,
.woocommerce-checkout .woocommerce-info,
.woocommerce-cart .woocommerce-info { border-top-color:#d2951d!important; background:#fff9e9!important; }

.rehberim-purchase-page .wc-block-cart,
.rehberim-purchase-page .wc-block-checkout { margin-top:24px; }
.rehberim-purchase-page .wc-block-components-form .wc-block-components-text-input,
.rehberim-purchase-page .wc-block-components-combobox,
.rehberim-purchase-page .wc-block-checkout__contact-fields,
.rehberim-purchase-page .wc-block-checkout__billing-fields,
.rehberim-purchase-page .wc-block-checkout__shipping-fields,
.rehberim-purchase-page .wc-block-checkout__order-notes,
.rehberim-purchase-page .wc-block-checkout__payment-method,
.rehberim-purchase-page .wc-block-cart-items,
.rehberim-purchase-page .wc-block-components-order-summary { background:#fff; border:1px solid var(--rehberim-border); box-shadow:none; }
.rehberim-purchase-page .wc-block-components-order-summary { padding:0 0 10px; }
.rehberim-purchase-page .wc-block-components-order-summary .wc-block-components-order-summary-item { padding-left:16px; padding-right:16px; }

.footer-bottom-grid { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:18px; }
.footer-credit { margin:0; font-weight:700; color:var(--rehberim-muted); text-align:center; }
.footer-credit a { color:var(--rehberim-primary); text-decoration:none; }
.footer-bottom-spacer { display:block; }
.rehberim-floating-tools { position:fixed; left:18px; right:18px; bottom:18px; z-index:999; pointer-events:none; }
.rehberim-float-button { pointer-events:auto; display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:0 18px; border-radius:999px; border:0; font-weight:800; box-shadow:0 16px 30px rgba(15,23,42,.18); text-decoration:none; }
.rehberim-float-button.is-whatsapp { position:absolute; right:0; bottom:0; background:#25d366; color:#08381c; }
.rehberim-float-button.is-backtop { position:absolute; left:0; bottom:0; width:48px; min-width:48px; padding:0; background:var(--rehberim-primary-dark); color:#fff; opacity:0; visibility:hidden; transform:translateY(12px); transition:opacity .18s ease, transform .18s ease, visibility .18s ease; }
.rehberim-float-button.is-backtop.is-visible { opacity:1; visibility:visible; transform:translateY(0); }
@media (max-width: 980px) {
    .woocommerce-checkout form.checkout { grid-template-columns:1fr; }
}
@media (max-width: 780px) {
    .woocommerce-checkout .form-row-first,
    .woocommerce-checkout .form-row-last,
    .footer-bottom-grid { grid-template-columns:1fr!important; width:100%!important; }
    .rehberim-floating-tools { left:12px; right:12px; bottom:12px; }
    .rehberim-float-button.is-whatsapp { max-width:calc(100% - 64px); font-size:.92rem; }
}

/* v136 separate blog archive, blog detail and homepage blog section */
.blog-archive-main,
.blog-single-main {
    padding: 0 0 64px;
    background: linear-gradient(180deg, #f5f8fc 0%, #ffffff 52%, #f5f8fc 100%);
}
.blog-archive-hero {
    position: relative;
    overflow: hidden;
    padding: 34px 0 36px;
    border-bottom: 1px solid var(--rehberim-border);
    background:
        radial-gradient(circle at 85% 20%, rgba(18,63,120,.12), transparent 34%),
        linear-gradient(135deg, #ffffff 0%, #f3f7fc 100%);
}
.blog-archive-hero::after {
    content: '';
    position: absolute;
    right: 5%;
    top: 18px;
    width: 250px;
    height: 150px;
    opacity: .17;
    background:
        linear-gradient(90deg, transparent 0 15%, var(--rehberim-primary) 15% 18%, transparent 18% 32%, var(--rehberim-primary) 32% 35%, transparent 35% 55%, var(--rehberim-primary) 55% 58%, transparent 58%),
        linear-gradient(0deg, transparent 0 30%, var(--rehberim-primary) 30% 34%, transparent 34% 60%, var(--rehberim-primary) 60% 64%, transparent 64%);
    border-radius: 28px;
    transform: skewX(-8deg);
}
.blog-archive-hero-inner {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(340px, .75fr);
    gap: 34px;
    align-items: end;
}
.blog-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    margin-bottom: 14px;
    color: var(--rehberim-muted);
    font-size: 14px;
}
.blog-breadcrumb a { color: var(--rehberim-primary); font-weight: 700; }
.blog-archive-hero h1,
.blog-single-header h1 {
    margin: 0;
    color: var(--rehberim-primary-dark);
    font-size: clamp(36px, 5vw, 58px);
    line-height: 1.05;
    letter-spacing: -.035em;
}
.blog-archive-hero p {
    max-width: 760px;
    margin: 14px 0 0;
    color: var(--rehberim-muted);
    font-size: 18px;
    line-height: 1.7;
}
.blog-archive-search {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0;
    min-height: 56px;
    padding: 6px;
    border: 1px solid var(--rehberim-border);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 14px 30px rgba(15,23,42,.08);
}
.blog-archive-search input {
    width: 100%;
    border: 0;
    outline: 0;
    background: transparent;
    padding: 0 16px;
    font: inherit;
}
.blog-archive-search button {
    min-width: 112px;
    border: 0;
    border-radius: 13px;
    background: var(--rehberim-primary-dark);
    color: #fff;
    font-weight: 800;
}
.blog-archive-shell { padding-top: 28px; }
.blog-category-pills {
    display: flex;
    gap: 12px;
    overflow-x: auto;
    padding: 0 0 18px;
    scrollbar-width: thin;
}
.blog-category-pills a {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    min-height: 44px;
    padding: 9px 16px;
    border: 1px solid #ecd29a;
    border-radius: 999px;
    background: #fffdf8;
    color: var(--rehberim-primary-dark);
    font-weight: 800;
}
.blog-category-pills a.is-active {
    background: var(--rehberim-primary-dark);
    border-color: var(--rehberim-primary-dark);
    color: #fff;
}
.blog-category-pills small {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    height: 24px;
    padding: 0 6px;
    border-radius: 999px;
    background: rgba(18,63,120,.08);
    font-size: 12px;
}
.blog-category-pills .is-active small { background: rgba(255,255,255,.16); }
.blog-archive-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 24px;
    align-items: start;
}
.blog-archive-content,
.blog-sidebar { display: grid; gap: 22px; }
.blog-featured-card {
    display: grid;
    grid-template-columns: minmax(320px, .95fr) minmax(0, 1.25fr);
    min-height: 310px;
    overflow: hidden;
    border: 1px solid var(--rehberim-border);
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 16px 34px rgba(15,23,42,.06);
}
.blog-featured-image {
    position: relative;
    display: block;
    min-height: 310px;
    overflow: hidden;
}
.blog-featured-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.blog-featured-image > span {
    position: absolute;
    left: 18px;
    top: 18px;
    padding: 8px 13px;
    border-radius: 9px;
    background: var(--rehberim-secondary);
    color: #111827;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}
.blog-featured-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 30px;
}
.blog-card-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    color: var(--rehberim-muted);
    font-size: 13px;
}
.blog-card-meta a {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 5px 10px;
    border-radius: 999px;
    background: #fff3d7;
    color: #7a5100;
    font-weight: 800;
}
.blog-featured-content h2 {
    margin: 14px 0 12px;
    font-size: clamp(27px, 3vw, 38px);
    line-height: 1.15;
}
.blog-featured-content h2 a,
.blog-archive-card h2 a,
.home-blog-card h3 a { color: var(--rehberim-primary-dark); }
.blog-featured-content p,
.blog-archive-card-body p,
.home-blog-card-body p {
    margin: 0;
    color: var(--rehberim-muted);
    line-height: 1.7;
}
.blog-read-button {
    align-self: flex-start;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    margin-top: 22px;
    padding: 0 20px;
    border-radius: 13px;
    background: var(--rehberim-secondary);
    color: #111827;
    font-weight: 900;
}
.blog-results-heading,
.home-blog-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
}
.blog-results-heading span,
.home-blog-heading span {
    display: block;
    margin-bottom: 6px;
    color: #9b6800;
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .05em;
}
.blog-results-heading h2,
.home-blog-heading h2 {
    margin: 0;
    color: var(--rehberim-primary-dark);
    font-size: clamp(27px, 3vw, 36px);
}
.blog-results-heading > strong {
    color: var(--rehberim-muted);
    font-size: 14px;
}
.blog-card-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}
.blog-archive-card,
.home-blog-card {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    min-width: 0;
    border: 1px solid var(--rehberim-border);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 12px 26px rgba(15,23,42,.05);
    transition: transform .18s ease, box-shadow .18s ease;
}
.blog-archive-card:hover,
.home-blog-card:hover { transform: translateY(-3px); box-shadow: 0 18px 34px rgba(15,23,42,.1); }
.blog-archive-card-image,
.home-blog-card-image {
    display: block;
    overflow: hidden;
    background: #edf2f7;
}
.blog-archive-card-image img,
.home-blog-card-image img {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    transition: transform .25s ease;
}
.blog-archive-card:hover img,
.home-blog-card:hover img { transform: scale(1.035); }
.blog-archive-card-body,
.home-blog-card-body {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 18px;
}
.blog-archive-card-body h2,
.home-blog-card-body h3 {
    margin: 12px 0 10px;
    font-size: 20px;
    line-height: 1.35;
}
.blog-card-footer,
.home-blog-card-body > div:last-child {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
    margin-top: auto;
    padding-top: 16px;
    color: var(--rehberim-muted);
    font-size: 13px;
}
.blog-card-footer a,
.home-blog-card-body > div:last-child a { color: var(--rehberim-primary); font-weight: 900; }
.blog-pagination { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; }
.blog-pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    min-height: 42px;
    padding: 8px 12px;
    border: 1px solid var(--rehberim-border);
    border-radius: 11px;
    background: #fff;
    color: var(--rehberim-primary-dark);
    font-weight: 800;
}
.blog-pagination .current { background: var(--rehberim-primary); color: #fff; }
.blog-sidebar { position: sticky; top: 110px; }
.blog-sidebar-box,
.blog-cta-box {
    overflow: hidden;
    border: 1px solid var(--rehberim-border);
    border-radius: 20px;
    background: #fff;
    padding: 20px;
    box-shadow: 0 12px 26px rgba(15,23,42,.05);
}
.blog-sidebar-box h2,
.blog-cta-box h2 {
    margin: 0 0 15px;
    color: var(--rehberim-primary-dark);
    font-size: 21px;
}
.blog-popular-box > div { display: grid; gap: 13px; }
.blog-popular-box a {
    display: grid;
    grid-template-columns: 78px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
}
.blog-popular-thumb {
    display: block;
    width: 78px;
    height: 62px;
    overflow: hidden;
    border-radius: 12px;
    background: #edf2f7;
}
.blog-popular-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.blog-popular-box strong { display: block; color: var(--rehberim-primary-dark); line-height: 1.35; }
.blog-popular-box small { display: block; margin-top: 5px; color: var(--rehberim-muted); }
.blog-quick-box { display: grid; gap: 9px; }
.blog-quick-box h2 { margin-bottom: 8px; }
.blog-quick-box a {
    display: flex;
    align-items: center;
    min-height: 42px;
    padding: 9px 12px;
    border-radius: 11px;
    background: #f5f8fc;
    color: var(--rehberim-primary-dark);
    font-weight: 800;
}
.blog-cta-box {
    background: linear-gradient(145deg, #06275a 0%, #0a438f 100%);
    color: #fff;
}
.blog-cta-box > span { color: var(--rehberim-secondary); font-weight: 900; font-size: 13px; text-transform: uppercase; }
.blog-cta-box h2 { color: #fff; margin-top: 8px; }
.blog-cta-box p { color: rgba(255,255,255,.82); line-height: 1.65; }
.blog-cta-box a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    margin-top: 12px;
    border-radius: 12px;
    background: var(--rehberim-secondary);
    color: #111827;
    font-weight: 900;
}
.blog-cta-box a.secondary { background: transparent; border: 1px solid rgba(255,255,255,.5); color: #fff; }
.blog-newsletter-box p { color: var(--rehberim-muted); }
.blog-newsletter-box > a { display: inline-flex; min-height: 42px; align-items: center; padding: 0 16px; border-radius: 11px; background: var(--rehberim-primary); color: #fff; font-weight: 800; }
.blog-internal-links {
    padding: 22px;
    border: 1px solid var(--rehberim-border);
    border-radius: 20px;
    background: #fff;
}
.blog-internal-links h2 { margin: 0 0 16px; color: var(--rehberim-primary-dark); font-size: 22px; }
.blog-internal-links > div { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.blog-internal-links a { display: grid; gap: 5px; padding: 15px; border-radius: 14px; background: #f7f9fc; }
.blog-internal-links strong { color: var(--rehberim-primary-dark); }
.blog-internal-links span { color: var(--rehberim-muted); font-size: 13px; }
.blog-empty-state,
.home-blog-empty { padding: 32px; border: 1px dashed var(--rehberim-border); border-radius: 20px; background: #fff; text-align: center; }
.blog-empty-state h2 { color: var(--rehberim-primary-dark); }

.home-blog-section { padding: 34px 0 56px; background: linear-gradient(180deg, #fff 0%, #f4f7fb 100%); }
.home-blog-heading { margin-bottom: 20px; }
.home-blog-heading p { margin: 8px 0 0; color: var(--rehberim-muted); }
.home-blog-heading > a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 17px;
    border: 1px solid var(--rehberim-primary);
    border-radius: 12px;
    color: var(--rehberim-primary);
    font-weight: 900;
}
.home-blog-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.home-blog-category {
    align-self: flex-start;
    display: inline-flex;
    min-height: 27px;
    align-items: center;
    padding: 5px 10px;
    border-radius: 999px;
    background: #fff3d7;
    color: #7a5100;
    font-size: 12px;
    font-weight: 900;
}

.blog-single-shell { padding-top: 30px; }
.blog-single-article {
    max-width: 980px;
    margin: 0 auto;
    padding: 32px;
    border: 1px solid var(--rehberim-border);
    border-radius: 26px;
    background: #fff;
    box-shadow: 0 18px 40px rgba(15,23,42,.06);
}
.blog-single-header { text-align: center; }
.blog-single-category {
    display: inline-flex;
    min-height: 34px;
    align-items: center;
    padding: 6px 14px;
    border-radius: 999px;
    background: #fff3d7;
    color: #7a5100;
    font-weight: 900;
}
.blog-single-header h1 { margin-top: 16px; }
.blog-single-header > p { max-width: 780px; margin: 16px auto 0; color: var(--rehberim-muted); font-size: 20px; line-height: 1.65; }
.blog-single-meta { display: flex; flex-wrap: wrap; justify-content: center; gap: 14px; margin-top: 18px; color: var(--rehberim-muted); }
.blog-single-image { margin: 28px 0; overflow: hidden; border-radius: 22px; }
.blog-single-image img { width: 100%; max-height: 520px; object-fit: cover; display: block; }
.blog-single-content { font-size: 18px; line-height: 1.9; color: #223653; }
.blog-single-content h2,
.blog-single-content h3 { color: var(--rehberim-primary-dark); line-height: 1.25; }
.blog-single-content a { color: var(--rehberim-primary); text-decoration: underline; text-underline-offset: 3px; }
.blog-single-cta {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 24px;
    align-items: center;
    margin-top: 30px;
    padding: 24px;
    border-radius: 20px;
    background: linear-gradient(135deg, #06275a, #0a438f);
    color: #fff;
}
.blog-single-cta span { color: var(--rehberim-secondary); font-size: 13px; font-weight: 900; text-transform: uppercase; }
.blog-single-cta h2 { margin: 6px 0 8px; color: #fff; }
.blog-single-cta p { margin: 0; color: rgba(255,255,255,.82); }
.blog-single-cta > a { display: inline-flex; min-height: 48px; align-items: center; padding: 0 20px; border-radius: 13px; background: var(--rehberim-secondary); color: #111827; font-weight: 900; white-space: nowrap; }
.blog-single-tags { display: flex; flex-wrap: wrap; gap: 9px; align-items: center; margin-top: 22px; padding-top: 20px; border-top: 1px solid var(--rehberim-border); }
.blog-single-tags a { padding: 7px 11px; border-radius: 999px; background: #f3f6fa; color: var(--rehberim-primary); font-weight: 700; }
.blog-related-section { max-width: 1180px; margin: 30px auto 0; }

@media (max-width: 1180px) {
    .blog-archive-layout { grid-template-columns: 1fr; }
    .blog-sidebar { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .blog-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .home-blog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 820px) {
    .blog-archive-hero-inner,
    .blog-featured-card,
    .blog-single-cta { grid-template-columns: 1fr; }
    .blog-featured-image { min-height: 240px; }
    .blog-sidebar { grid-template-columns: 1fr; }
    .blog-internal-links > div { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .blog-single-article { padding: 22px; border-radius: 20px; }
}
@media (max-width: 560px) {
    .blog-archive-hero { padding: 26px 0; }
    .blog-archive-search { grid-template-columns: 1fr; gap: 7px; }
    .blog-archive-search input { min-height: 48px; }
    .blog-archive-search button { min-height: 46px; }
    .blog-card-grid,
    .home-blog-grid,
    .blog-internal-links > div { grid-template-columns: 1fr; }
    .blog-results-heading,
    .home-blog-heading { align-items: flex-start; flex-direction: column; }
    .blog-featured-content { padding: 22px; }
}


/* v139 square homepage quick information links */
.home-quick-links {
    padding: 12px 0 24px;
}
.home-quick-links-title {
    margin: 0 0 12px;
    font-size: 19px;
    line-height: 1.25;
    color: var(--rehberim-primary-dark);
}
.home-quick-links-grid {
    display: grid;
    grid-template-columns: repeat(10, minmax(0, 1fr));
    gap: 11px;
}
.home-quick-link-card {
    position: relative;
    min-width: 0;
    aspect-ratio: 1 / 1;
    min-height: 118px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 13px 9px;
    border: 1px solid var(--rehberim-border);
    border-radius: 16px;
    background: var(--rehberim-surface);
    color: var(--rehberim-primary-dark);
    text-align: center;
    text-decoration: none;
    box-shadow: 0 7px 18px rgba(15, 23, 42, .05);
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
a.home-quick-link-card:hover,
a.home-quick-link-card:focus {
    transform: translateY(-3px);
    border-color: color-mix(in srgb, var(--rehberim-primary) 38%, var(--rehberim-border));
    box-shadow: 0 14px 28px rgba(18, 63, 120, .11);
}
.home-quick-link-icon {
    width: 62px;
    height: 62px;
    flex: 0 0 62px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 16px;
    background: color-mix(in srgb, var(--rehberim-primary) 8%, var(--rehberim-surface));
    color: var(--rehberim-primary);
    font-size: 25px;
    font-weight: 800;
}
.home-quick-link-icon img {
    width: 54px;
    height: 54px;
    object-fit: contain;
    display: block;
}
.home-quick-link-card strong {
    display: -webkit-box;
    width: 100%;
    overflow: hidden;
    font-size: 13.5px;
    line-height: 1.3;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.home-quick-link-arrow {
    position: absolute;
    top: 8px;
    right: 9px;
    color: var(--rehberim-muted);
    font-size: 12px;
}
@media (max-width: 1280px) {
    .home-quick-links-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
    .home-quick-link-card { min-height: 132px; }
}
@media (max-width: 820px) {
    .home-quick-links-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
}
@media (max-width: 560px) {
    .home-quick-links { padding-bottom: 16px; }
    .home-quick-links-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
    .home-quick-link-card { min-height: 138px; }
    .home-quick-link-icon { width: 66px; height: 66px; flex-basis: 66px; }
    .home-quick-link-icon img { width: 58px; height: 58px; }
}
