/*
Theme Name: Ikona Casting
Theme URI: https://ikona.by/
Author: ikona.by
Description: Современная тема каталога талантов и кастингов для ikona.by.
Version: 1.3.84
Requires at least: 6.7
Requires PHP: 8.1
Update URI: https://ikona.by/custom/ikona-theme
Text Domain: ikona
*/

:root {
    --ink: #11100e;
    --ink-soft: #1b1915;
    --charcoal: #29251e;
    --gold: #f4c542;
    --gold-soft: #ffe38a;
    --gold-deep: #76520b;
    --paper: #f4f0e6;
    --paper-deep: #e8e0d1;
    --white: #fff;
    --muted: #625b51;
    --line: rgba(17, 16, 14, .14);
    --shadow: 0 24px 70px rgba(28, 22, 10, .13);
    --radius: 24px;
    --shell: 1240px;
    --serif: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;
    --sans: Inter, "Segoe UI", Arial, sans-serif;
}

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

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    background: #faf8f3;
    color: var(--ink);
    font-family: var(--sans);
    font-size: 16px;
    line-height: 1.6;
    text-rendering: optimizeLegibility;
}

body.nav-open {
    overflow: hidden;
}

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

a {
    color: inherit;
}

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

button,
select {
    cursor: pointer;
}

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

.site-shell--narrow {
    width: min(calc(100% - 40px), 840px);
}

.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 {
    z-index: 100000;
    top: 8px;
    left: 8px;
    width: auto;
    height: auto;
    clip: auto;
    padding: 12px 18px;
    background: var(--gold);
    color: var(--ink);
}

.site-header {
    position: relative;
    z-index: 100;
    background: var(--ink);
    color: var(--white);
}

.site-header__bar {
    border-bottom: 1px solid rgba(255, 255, 255, .12);
}

.site-header__inner {
    min-height: 84px;
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 34px;
}

.site-brand {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    text-decoration: none;
    line-height: 1;
}

.site-brand__mark {
    width: 52px;
    height: 52px;
    flex: 0 0 52px;
}

.site-brand__mark img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.site-brand strong {
    display: block;
    font-family: var(--serif);
    font-size: 26px;
    font-weight: 700;
    letter-spacing: .13em;
}

.site-brand small {
    display: block;
    margin-top: 6px;
    color: #c7c0b5;
    font-size: 9px;
    letter-spacing: .28em;
    text-transform: uppercase;
}

.site-nav {
    position: relative;
    justify-self: center;
}

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

.site-nav .menu {
    display: flex;
    align-items: center;
    gap: 28px;
}

.site-nav .menu > li {
    position: relative;
}

.site-nav .menu > li > a {
    position: relative;
    display: block;
    padding: 30px 0 27px;
    color: #e9e5dc;
    font-size: 14px;
    font-weight: 650;
    text-decoration: none;
}

.site-nav .menu > li > a::after {
    position: absolute;
    left: 0;
    right: 100%;
    bottom: 20px;
    height: 2px;
    background: var(--gold);
    content: "";
    transition: right .2s ease;
}

.site-nav .menu > .menu-item-has-children > a {
    padding-right: 18px;
}

.site-nav .menu > .menu-item-has-children > a::before {
    position: absolute;
    top: calc(50% - 2px);
    right: 1px;
    width: 7px;
    height: 7px;
    border-right: 1.5px solid currentColor;
    border-bottom: 1.5px solid currentColor;
    content: "";
    transform: rotate(45deg);
    transition: transform .2s ease;
}

.site-nav .menu > .menu-item-has-children:hover > a::before,
.site-nav .menu > .menu-item-has-children:focus-within > a::before {
    transform: rotate(225deg);
}

.site-nav .menu > li > a:hover::after,
.site-nav .current-menu-item > a::after,
.site-nav .current-menu-ancestor > a::after,
.site-nav .current_page_parent > a::after {
    right: auto;
    left: 0;
}

.site-nav .menu > li > .sub-menu {
    position: absolute;
    top: calc(100% - 1px);
    left: 50%;
    width: max-content;
    min-width: 270px;
    max-width: min(360px, calc(100vw - 40px));
    padding: 10px;
    border: 1px solid rgba(244, 197, 66, .2);
    border-top-color: rgba(255, 255, 255, .08);
    border-radius: 0 0 14px 14px;
    background: #191713;
    box-shadow: 0 18px 42px rgba(0, 0, 0, .32);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translate(-50%, 8px);
    transition:
        opacity .18s ease,
        visibility .18s ease,
        transform .18s ease;
}

.site-nav .menu > li:hover > .sub-menu,
.site-nav .menu > li:focus-within > .sub-menu,
.site-nav .menu > li.is-submenu-open > .sub-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translate(-50%, 0);
}

.site-nav .menu > li.is-submenu-dismissed > .sub-menu {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translate(-50%, 8px);
}

.site-nav .sub-menu li + li {
    margin-top: 2px;
}

.site-nav .sub-menu a {
    display: block;
    padding: 11px 12px;
    border-radius: 8px;
    color: #e9e5dc;
    font-size: 13px;
    font-weight: 650;
    line-height: 1.4;
    text-decoration: none;
    white-space: normal;
    transition: background .18s ease, color .18s ease;
}

.site-nav .sub-menu a:hover,
.site-nav .sub-menu a:focus-visible,
.site-nav .sub-menu .current-menu-item > a {
    background: var(--gold);
    color: var(--ink);
    outline: none;
}

.site-nav .sub-menu .sub-menu {
    position: static;
    width: auto;
    min-width: 0;
    max-width: none;
    margin: 1px 0 7px 20px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    opacity: 1;
    visibility: inherit;
    pointer-events: inherit;
    transform: none;
    transition: none;
}

.submenu-toggle {
    display: none;
}

.header-account {
    padding: 11px 17px;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 999px;
    color: var(--white);
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    transition: border-color .2s ease, background .2s ease;
}

.header-account:hover {
    border-color: var(--gold);
    background: rgba(244, 197, 66, .08);
}

.nav-toggle {
    display: none;
    width: 44px;
    height: 44px;
    padding: 11px;
    border: 0;
    background: transparent;
}

.nav-toggle > span:not(.screen-reader-text) {
    display: block;
    height: 2px;
    margin: 5px 0;
    background: var(--white);
}

.hero {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 78% 48%, rgba(244, 197, 66, .18), transparent 28%),
        linear-gradient(120deg, #0e0d0b 0%, #17140f 55%, #241c0b 100%);
    color: var(--white);
}

.hero::before {
    position: absolute;
    inset: 0;
    opacity: .13;
    background-image:
        linear-gradient(rgba(255, 255, 255, .12) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, .12) 1px, transparent 1px);
    background-size: 80px 80px;
    content: "";
    mask-image: linear-gradient(to right, #000, transparent 75%);
}

.hero__grid {
    position: relative;
    min-height: 680px;
    display: grid;
    grid-template-columns: minmax(0, .93fr) minmax(460px, .83fr);
    align-items: center;
    gap: 70px;
    padding-block: 74px 82px;
}

.eyebrow {
    margin: 0 0 16px;
    color: var(--gold);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .2em;
    text-transform: uppercase;
}

.eyebrow--dark {
    color: var(--gold-deep);
}

.hero h1,
.archive-hero h1,
.single-entry__header h1,
.error-page h1 {
    max-width: 780px;
    margin: 0;
    font-family: var(--serif);
    font-size: clamp(48px, 5.8vw, 78px);
    font-weight: 500;
    line-height: .98;
    letter-spacing: -.035em;
}

.hero h1 em {
    color: var(--gold);
    font-weight: 500;
}

.hero__lead {
    max-width: 630px;
    margin: 26px 0 30px;
    color: #cfc9bd;
    font-size: 18px;
}

.hero-search {
    max-width: 610px;
    display: grid;
    grid-template-columns: 1fr auto;
    padding: 6px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 999px;
    background: rgba(255, 255, 255, .08);
    backdrop-filter: blur(12px);
}

.hero-search input {
    min-width: 0;
    padding: 12px 18px;
    border: 0;
    outline: none;
    background: transparent;
    color: var(--white);
}

.hero-search input::placeholder {
    color: #a9a397;
}

.hero-search button {
    padding: 12px 24px;
    border: 0;
    border-radius: 999px;
    background: var(--gold);
    color: var(--ink);
    font-weight: 800;
}

.hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 24px;
}

.button {
    display: inline-flex;
    min-height: 46px;
    align-items: center;
    justify-content: center;
    padding: 11px 20px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.25;
    text-align: center;
    text-decoration: none;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.button:hover {
    transform: translateY(-2px);
}

.button--gold {
    background: var(--gold);
    color: var(--ink);
    box-shadow: 0 12px 30px rgba(244, 197, 66, .2);
}

.button--gold:hover {
    background: var(--gold-soft);
}

.button--ghost {
    border-color: rgba(255, 255, 255, .2);
    color: var(--white);
}

.button--dark {
    background: var(--ink);
    color: var(--white);
}

.button--outline {
    border-color: var(--ink);
    color: var(--ink);
}

.button--wide {
    width: 100%;
}

.hero-mosaic {
    position: relative;
    min-height: 520px;
}

.hero-mosaic__item {
    position: absolute;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 22px;
    background: var(--charcoal);
    box-shadow: 0 24px 50px rgba(0, 0, 0, .35);
    text-decoration: none;
    transform: rotate(var(--rotate, 0deg));
}

.hero-mosaic__item img,
.hero-mosaic__item .ikona-picture-placeholder {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .5s ease;
}

.hero-mosaic__item:hover img {
    transform: scale(1.04);
}

.hero-mosaic__item--1 {
    z-index: 4;
    top: 15px;
    left: 29%;
    width: 42%;
    height: 68%;
    --rotate: 1deg;
}

.hero-mosaic__item--2 {
    z-index: 2;
    top: 54px;
    left: 2%;
    width: 31%;
    height: 48%;
    --rotate: -5deg;
}

.hero-mosaic__item--3 {
    z-index: 3;
    top: 65px;
    right: 0;
    width: 30%;
    height: 49%;
    --rotate: 5deg;
}

.hero-mosaic__item--4 {
    z-index: 1;
    left: 12%;
    bottom: 0;
    width: 31%;
    height: 43%;
    --rotate: 3deg;
}

.hero-mosaic__item--5 {
    z-index: 1;
    right: 10%;
    bottom: 0;
    width: 31%;
    height: 43%;
    --rotate: -3deg;
}

.hero-mosaic__badge {
    position: absolute;
    z-index: 8;
    right: 0;
    bottom: 22%;
    width: 126px;
    height: 126px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: 2px solid var(--ink-soft);
    border-radius: 50%;
    background: var(--gold);
    color: var(--ink);
    text-align: center;
    transform: rotate(-7deg);
}

.hero-mosaic__badge strong {
    font-family: var(--serif);
    font-size: 29px;
    line-height: 1;
}

.hero-mosaic__badge span {
    max-width: 76px;
    margin-top: 6px;
    font-size: 9px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.ikona-picture-placeholder {
    display: grid;
    place-items: center;
    background:
        radial-gradient(circle at 50% 35%, #4c4333, transparent 25%),
        linear-gradient(145deg, #28241c, #0f0e0b);
    color: var(--gold);
    font-family: var(--serif);
    font-weight: 700;
    letter-spacing: .16em;
}

.stats-strip {
    border-bottom: 1px solid var(--line);
    background: var(--paper);
}

.stats-strip__grid {
    min-height: 112px;
    display: grid;
    grid-template-columns: repeat(3, 1fr) auto;
    align-items: center;
}

.stats-strip__grid > div {
    padding: 12px 26px;
    border-right: 1px solid var(--line);
}

.stats-strip__grid > div:first-child {
    padding-left: 0;
}

.stats-strip strong {
    display: block;
    font-family: var(--serif);
    font-size: 30px;
    line-height: 1;
}

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

.stats-strip a {
    padding-left: 32px;
    color: var(--ink);
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
}

.stats-strip a span {
    color: var(--gold-deep);
    font-size: 18px;
}

.section {
    padding-block: 96px;
}

.section--paper {
    background: var(--paper);
}

.section--ink {
    background: var(--ink);
    color: var(--white);
}

.section-heading {
    display: grid;
    grid-template-columns: 1fr minmax(280px, 430px);
    align-items: end;
    gap: 40px;
    margin-bottom: 38px;
}

.section-heading--inline {
    grid-template-columns: 1fr auto;
}

.section-heading h2,
.actor-profile__content h2,
.cta-band h2,
.catalog-results h2 {
    margin: 0;
    font-family: var(--serif);
    font-size: clamp(35px, 4vw, 52px);
    font-weight: 500;
    line-height: 1.05;
    letter-spacing: -.025em;
}

.section-heading > p {
    margin: 0 0 4px;
    color: var(--muted);
}

.section-heading--light > p,
.section-heading--light .text-link {
    color: #d1cbc0;
}

.text-link {
    color: var(--gold-deep);
    font-size: 14px;
    font-weight: 800;
    text-decoration: none;
}

.text-link:hover {
    text-decoration: underline;
}

.text-link--light {
    color: var(--gold);
}

.category-links {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
}

.category-links a {
    min-height: 128px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 22px;
    border: 1px solid var(--line);
    border-radius: 18px;
    background: rgba(255, 255, 255, .36);
    text-decoration: none;
    transition: transform .2s ease, background .2s ease, border-color .2s ease;
}

.category-links a:hover {
    border-color: var(--gold-deep);
    background: var(--white);
    transform: translateY(-3px);
}

.category-links span {
    max-width: 220px;
    font-family: var(--serif);
    font-size: 20px;
    line-height: 1.15;
}

.category-links small {
    color: var(--muted);
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

.actor-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 28px 18px;
}

.actor-card {
    position: relative;
    min-width: 0;
}

.actor-card__pin {
    position: absolute;
    z-index: 3;
    top: 10px;
    right: 10px;
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    cursor: help;
    color: var(--gold);
    border: 1px solid currentColor;
    border-radius: 50%;
    background: rgba(22, 18, 12, .28);
    box-shadow: 0 5px 16px rgba(17, 16, 14, .24);
}

.actor-card__pin svg {
    width: 19px;
    height: 19px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.actor-card__pin-tooltip {
    position: absolute;
    z-index: 5;
    top: calc(100% + 8px);
    right: 0;
    width: max-content;
    max-width: 220px;
    padding: 8px 10px;
    color: #fffdf7;
    border: 1px solid rgba(202, 162, 76, .72);
    border-radius: 8px;
    background: rgba(25, 20, 13, .94);
    box-shadow: 0 8px 20px rgba(17, 16, 14, .25);
    font-size: 11px;
    font-weight: 600;
    line-height: 1.35;
    opacity: 0;
    pointer-events: none;
    transform: translateY(-4px);
    transition: opacity .18s ease, transform .18s ease;
}

.actor-card__pin:hover .actor-card__pin-tooltip,
.actor-card__pin:focus-visible .actor-card__pin-tooltip {
    opacity: 1;
    transform: translateY(0);
}

.actor-card__image {
    position: relative;
    overflow: hidden;
    aspect-ratio: 4 / 5;
    display: block;
    border-radius: 18px;
    background: var(--charcoal);
    box-shadow: 0 10px 30px rgba(30, 23, 12, .08);
}

.actor-card__image img,
.actor-card__image .ikona-picture-placeholder {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .4s ease;
}

.actor-card:hover .actor-card__image img {
    transform: scale(1.035);
}

.actor-card__body {
    padding: 14px 4px 0;
}

.actor-card h3 {
    margin: 0;
    font-family: var(--serif);
    font-size: 21px;
    font-weight: 600;
    line-height: 1.2;
}

.actor-card h3 a {
    text-decoration: none;
}

.actor-card h3 a:hover {
    color: var(--gold-deep);
}

.actor-card__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
    margin-top: 7px;
    color: var(--muted);
    font-size: 12px;
}

.actor-card__meta span + span::before {
    margin-right: 12px;
    color: var(--gold-deep);
    content: "•";
}

.editorial-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
}

.story-list {
    border-top: 1px solid rgba(255, 255, 255, .14);
}

.story-compact {
    position: relative;
    padding: 25px 42px 25px 0;
    border-bottom: 1px solid rgba(255, 255, 255, .14);
}

.story-compact::after {
    position: absolute;
    top: 31px;
    right: 5px;
    color: var(--gold);
    content: "↗";
}

.story-compact__meta {
    display: flex;
    gap: 12px;
    margin: 0 0 7px;
    color: #9e978a;
    font-size: 11px;
    text-transform: uppercase;
}

.story-compact h3 {
    margin: 0 0 8px;
    font-family: var(--serif);
    font-size: 24px;
    font-weight: 500;
    line-height: 1.15;
}

.story-compact h3 a {
    text-decoration: none;
}

.story-compact h3 a:hover {
    color: var(--gold);
}

.story-compact > p:last-child {
    margin: 0;
    color: #bcb5aa;
    font-size: 13px;
}

.cta-band {
    background: var(--gold);
}

.cta-band__inner {
    min-height: 220px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    padding-block: 50px;
}

.cta-band .eyebrow {
    color: #6f4e00;
}

.site-footer {
    padding: 72px 0 24px;
    background: #0a0908;
    color: #d5cfc4;
}

.site-footer__grid {
    display: grid;
    grid-template-columns: 1.5fr 1fr 1fr;
    gap: 70px;
}

.site-brand--footer {
    color: var(--white);
}

.site-footer p {
    max-width: 360px;
    margin: 18px 0 0;
    color: #979085;
}

.site-footer h2 {
    margin: 0 0 17px;
    color: var(--white);
    font-size: 12px;
    letter-spacing: .16em;
    text-transform: uppercase;
}

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

.site-footer a {
    text-decoration: none;
}

.site-footer a:hover {
    color: var(--gold);
}

.site-footer__bottom {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    margin-top: 62px;
    padding-top: 20px;
    border-top: 1px solid rgba(255, 255, 255, .1);
    color: #766f65;
    font-size: 11px;
}

.archive-hero,
.single-entry__header {
    padding-block: 84px;
    background:
        radial-gradient(circle at 75% 20%, rgba(244, 197, 66, .18), transparent 28%),
        var(--ink);
    color: var(--white);
}

.archive-hero--compact {
    padding-block: 66px;
}

.archive-hero h1,
.single-entry__header h1 {
    font-size: clamp(45px, 6vw, 72px);
}

.archive-hero h1 {
    overflow-wrap: anywhere;
    hyphens: auto;
}

.archive-hero > .site-shell > p:last-child,
.archive-hero__intro,
.archive-description {
    max-width: 660px;
    margin: 20px 0 0;
    color: #beb7ab;
    font-size: 17px;
}

.catalog-breadcrumbs {
    margin: 20px 0 0;
}

.catalog-breadcrumbs ol {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.catalog-breadcrumbs li {
    display: inline-flex;
    min-width: 0;
    align-items: center;
    gap: 8px;
}

.catalog-breadcrumbs .text-link,
.catalog-breadcrumbs__separator,
.catalog-breadcrumbs__current {
    color: var(--gold);
    font-size: 14px;
    font-weight: 600;
}

.catalog-breadcrumbs__current {
    overflow-wrap: anywhere;
    cursor: default;
}

@media (max-width: 680px) {
    .catalog-breadcrumbs {
        overflow-x: auto;
        overflow-y: hidden;
        overscroll-behavior-inline: contain;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .catalog-breadcrumbs::-webkit-scrollbar {
        display: none;
    }

    .catalog-breadcrumbs ol {
        width: max-content;
        min-width: 100%;
        flex-wrap: nowrap;
    }

    .catalog-breadcrumbs li {
        flex: 0 0 auto;
        min-width: max-content;
    }

    .catalog-breadcrumbs .text-link,
    .catalog-breadcrumbs__current {
        overflow-wrap: normal;
        white-space: nowrap;
    }
}

.talent-category-cloud {
    margin-top: 34px;
    padding-top: 26px;
    border-top: 1px solid rgba(255, 255, 255, .13);
}

.talent-category-cloud > p {
    margin: 0 0 13px;
    color: #d8d1c4;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.talent-category-cloud__items {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.talent-category-cloud__items > li {
    min-width: 0;
    margin: 0;
}

.talent-category-cloud__items > li[hidden] {
    display: none;
}

.talent-category-cloud a {
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    padding: 8px 13px;
    border: 1px solid rgba(244, 197, 66, .34);
    border-radius: 999px;
    background: rgba(255, 255, 255, .055);
    color: var(--white);
    font-size: 13px;
    font-weight: 750;
    line-height: 1.25;
    text-decoration: none;
    transition: transform .2s ease, background .2s ease, border-color .2s ease;
}

.talent-category-cloud__item[data-section-depth="0"] > a {
    border-color: rgba(244, 197, 66, .52);
    background: rgba(244, 197, 66, .085);
}

.talent-category-cloud__item:not([data-section-depth="0"]) > a::before {
    width: 5px;
    height: 5px;
    flex: 0 0 5px;
    margin-right: 7px;
    border-radius: 50%;
    background: var(--gold);
    content: "";
}

.talent-category-cloud a:hover,
.talent-category-cloud a:focus-visible {
    border-color: var(--gold);
    background: rgba(244, 197, 66, .13);
    transform: translateY(-2px);
}

.talent-category-cloud__toggle {
    min-height: 32px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 10px;
    padding: 5px 10px;
    border: 1px solid rgba(244, 197, 66, .38);
    border-radius: 999px;
    background: rgba(255, 255, 255, .04);
    color: var(--gold-soft);
    font: inherit;
    font-size: 12px;
    font-weight: 800;
    cursor: pointer;
}

.talent-category-cloud__toggle[hidden] {
    display: none;
}

.talent-category-cloud__toggle span:last-child {
    display: inline-block;
    transition: transform .2s ease;
}

.talent-category-cloud__toggle[aria-expanded="true"] span:last-child {
    transform: rotate(180deg);
}

.talent-category-cloud__toggle:hover,
.talent-category-cloud__toggle:focus-visible {
    border-color: var(--gold);
    background: rgba(244, 197, 66, .1);
    color: var(--white);
}

.catalog-layout {
    display: grid;
    grid-template-columns: 270px 1fr;
    grid-template-areas:
        "filter heading"
        "filter results";
    column-gap: 54px;
    row-gap: 26px;
    padding-block: 60px 100px;
}

.catalog-filter {
    grid-area: filter;
    align-self: start;
    position: sticky;
    top: 22px;
    max-block-size: calc(100vh - 44px);
    max-block-size: calc(100dvh - 44px);
    overflow-y: auto;
    overscroll-behavior: contain;
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.catalog-filter::-webkit-scrollbar {
    display: none;
}

.catalog-filter form {
    padding: 22px;
    border: 1px solid var(--line);
    border-radius: 18px;
    background: var(--paper);
}

.catalog-filter__heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 18px;
}

.catalog-filter__heading h2 {
    margin: 0;
    font-family: var(--serif);
    font-size: 27px;
}

.catalog-filter__heading a {
    color: var(--gold-deep);
    font-size: 11px;
    font-weight: 800;
}

.catalog-filter > form > label,
.catalog-filter fieldset {
    display: block;
    margin: 0 0 14px;
}

.catalog-filter label > span,
.catalog-filter legend {
    display: block;
    margin: 0 0 6px;
    color: #5f594f;
    font-size: 11px;
    font-weight: 750;
    letter-spacing: .03em;
}

.catalog-filter input,
.catalog-filter select {
    width: 100%;
    min-height: 43px;
    padding: 9px 11px;
    border: 1px solid #cec6b8;
    border-radius: 10px;
    outline: none;
    background: #fffdf8;
    color: var(--ink);
    font-size: 13px;
}

.catalog-filter input:focus,
.catalog-filter select:focus {
    border-color: var(--gold-deep);
    box-shadow: 0 0 0 3px rgba(169, 121, 18, .13);
}

.catalog-filter fieldset {
    padding: 0;
    border: 0;
}

.range-fields {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.range-fields label {
    position: relative;
}

.range-fields label > span {
    position: absolute;
    z-index: 1;
    top: 12px;
    left: 10px;
    margin: 0;
    color: #978f83;
    font-size: 10px;
}

.range-fields input {
    padding-left: 29px;
}

.catalog-results__heading {
    grid-area: heading;
    min-height: 82px;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 20px;
}

.catalog-results__heading h2 {
    font-size: 38px;
}

.catalog-results__heading > p {
    margin: 0 0 4px;
    color: var(--muted);
    font-size: 12px;
}

.catalog-filter-toggle {
    width: 46px;
    height: 46px;
    display: none;
    flex: 0 0 46px;
    place-items: center;
    padding: 0;
    border: 1px solid currentColor;
    border-radius: 50%;
    background: var(--paper);
    color: var(--ink);
    cursor: pointer;
    transition: background .2s ease, color .2s ease, transform .2s ease;
}

.catalog-filter-toggle:hover,
.catalog-filter-toggle:focus-visible,
.catalog-filter-toggle[aria-expanded="true"] {
    background: transparent;
    color: var(--ink);
}

.catalog-filter-toggle:focus-visible {
    outline: 3px solid rgba(169, 121, 18, .24);
    outline-offset: 3px;
}

.catalog-filter-toggle:active {
    transform: scale(.96);
}

.catalog-filter-toggle svg {
    width: 22px;
    height: 22px;
    fill: none;
    stroke: currentColor;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.catalog-results {
    grid-area: results;
    min-width: 0;
}

.actor-grid--catalog {
    grid-template-columns: repeat(3, 1fr);
}

.empty-state {
    padding: 70px 30px;
    border: 1px dashed #bbb1a1;
    border-radius: var(--radius);
    background: var(--paper);
    text-align: center;
}

.empty-state strong {
    display: block;
    font-family: var(--serif);
    font-size: 30px;
}

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

.ikona-pagination {
    display: flex;
    justify-content: center;
    margin-top: 52px;
}

.ikona-pagination .page-numbers {
    min-width: 42px;
    height: 42px;
    display: inline-grid;
    place-items: center;
    margin: 3px;
    padding-inline: 12px;
    border: 1px solid var(--line);
    border-radius: 999px;
    background: var(--white);
    font-size: 13px;
    font-weight: 750;
    text-decoration: none;
}

.ikona-pagination .current,
.ikona-pagination a:hover {
    border-color: var(--ink);
    background: var(--ink);
    color: var(--white);
}

.actor-profile__hero {
    padding-block: 58px 74px;
    background:
        radial-gradient(circle at 66% 28%, rgba(244, 197, 66, .16), transparent 25%),
        var(--ink);
    color: var(--white);
}

.actor-profile__hero-grid {
    display: grid;
    grid-template-columns: minmax(340px, 470px) 1fr;
    align-items: start;
    gap: 80px;
}

.actor-profile__media {
    min-width: 0;
}

.actor-profile__portrait {
    position: relative;
    overflow: hidden;
    aspect-ratio: 4 / 5;
    border-radius: 26px;
    background: var(--charcoal);
    box-shadow: 0 32px 70px rgba(0, 0, 0, .34);
}

.actor-profile__portrait img,
.actor-profile__portrait .ikona-picture-placeholder {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.actor-profile__portrait-trigger {
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    overflow: hidden;
    border: 0;
    background: transparent;
    cursor: zoom-in;
}

.actor-profile__portrait-trigger img {
    transition: transform .35s ease;
}

.actor-profile__portrait-trigger:hover img {
    transform: scale(1.025);
}

.actor-profile__portrait-trigger:focus-visible,
.actor-profile__thumbs > button:focus-visible,
.actor-profile__thumbs > a:focus-visible,
.profile-gallery__grid > button:focus-visible {
    outline: 3px solid var(--gold);
    outline-offset: 4px;
}

.actor-profile__portrait > span:not(.ikona-picture-placeholder) {
    position: absolute;
    z-index: 1;
    right: 16px;
    bottom: 16px;
    padding: 7px 11px;
    border-radius: 999px;
    background: rgba(17, 16, 14, .75);
    font-size: 11px;
    font-weight: 750;
    backdrop-filter: blur(8px);
    pointer-events: none;
}

.actor-profile__thumbs {
    display: grid;
    grid-auto-columns: 76px;
    grid-auto-flow: column;
    gap: 10px;
    margin-top: 14px;
    padding: 3px 3px 8px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scrollbar-color: rgba(244, 197, 66, .55) transparent;
    scrollbar-width: thin;
    scroll-snap-type: inline proximity;
}

.actor-profile__thumbs > button,
.actor-profile__thumbs > a {
    position: relative;
    display: block;
    width: 76px;
    padding: 0;
    overflow: hidden;
    aspect-ratio: 1;
    border: 2px solid transparent;
    border-radius: 12px;
    background: var(--charcoal);
    cursor: pointer;
    opacity: .64;
    scroll-snap-align: start;
    transition: border-color .2s ease, opacity .2s ease, transform .2s ease;
}

.actor-profile__thumbs > button:hover,
.actor-profile__thumbs > a:hover {
    opacity: .88;
    transform: translateY(-2px);
}

.actor-profile__thumbs > button[aria-current="true"] {
    border-color: var(--gold);
    opacity: 1;
}

.actor-profile__thumbs img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.actor-profile__video-thumb img {
    filter: brightness(.74);
}

.actor-profile__video-play {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 38px;
    height: 38px;
    border: 2px solid rgba(255, 255, 255, .92);
    border-radius: 50%;
    background: rgba(17, 16, 14, .78);
    box-shadow: 0 6px 18px rgba(0, 0, 0, .3);
    transform: translate(-50%, -50%);
}

.actor-profile__video-play::before {
    position: absolute;
    top: 50%;
    left: 52%;
    width: 0;
    height: 0;
    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    border-left: 11px solid var(--white);
    content: "";
    transform: translate(-42%, -50%);
}

.back-link {
    display: inline-block;
    margin-bottom: 30px;
    color: #a8a196;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
}

.back-link:hover {
    color: var(--gold);
}

.actor-profile__category-block {
    max-width: 620px;
    margin-top: 26px;
    padding-top: 20px;
    border-top: 1px solid rgba(255, 255, 255, .14);
}

.actor-profile__category-block > p {
    margin: 0 0 11px;
    color: #a8a196;
    font-size: 12px;
    font-weight: 700;
}

.actor-profile__categories {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
}

.actor-profile__categories a {
    display: inline-flex;
    min-height: 32px;
    align-items: center;
    padding: 6px 11px;
    border: 1px solid rgba(244, 197, 66, .45);
    border-radius: 999px;
    color: var(--gold);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
    line-height: 1.2;
    text-decoration: none;
    text-transform: uppercase;
    transition:
        border-color .2s ease,
        background-color .2s ease,
        color .2s ease;
}

.actor-profile__categories a:hover,
.actor-profile__categories a:focus-visible {
    border-color: var(--gold);
    background: var(--gold);
    color: var(--ink);
}

.actor-profile__intro h1 {
    margin: 0;
    font-family: var(--serif);
    font-size: clamp(48px, 4.5vw, 62px);
    font-weight: 500;
    line-height: 1;
    letter-spacing: -.04em;
    text-wrap: balance;
    overflow-wrap: anywhere;
}

@media (min-width: 1081px) {
    .actor-profile__intro h1 {
        white-space: nowrap;
        overflow-wrap: normal;
    }

    .actor-profile__intro h1.actor-profile__title--medium {
        font-size: clamp(44px, 4vw, 56px);
    }

    .actor-profile__intro h1.actor-profile__title--long {
        font-size: clamp(38px, 3.5vw, 50px);
    }

    .actor-profile__intro h1.actor-profile__title--extra-long {
        font-size: clamp(32px, 3vw, 44px);
    }
}

@media (min-width: 901px) and (max-width: 1080px) {
    .actor-profile__hero-grid {
        grid-template-columns: minmax(300px, 380px) minmax(0, 1fr);
        gap: 36px;
    }

    .actor-profile__intro h1 {
        font-size: 40px;
        white-space: nowrap;
        overflow-wrap: normal;
    }

    .actor-profile__intro h1.actor-profile__title--medium {
        font-size: 36px;
    }

    .actor-profile__intro h1.actor-profile__title--long {
        font-size: 32px;
    }

    .actor-profile__intro h1.actor-profile__title--extra-long {
        font-size: 28px;
    }
}

.actor-profile__location {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 22px;
    margin: 22px 0;
    color: #bcb5aa;
    font-size: 13px;
}

.actor-profile__location span + span::before {
    margin-right: 18px;
    color: var(--gold);
    content: "•";
}

.actor-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1px;
    margin: 24px 0 16px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 16px;
    overflow: hidden;
    background: rgba(255, 255, 255, .12);
}

.actor-facts div {
    padding: 12px 17px;
    background: rgba(17, 16, 14, .9);
}

.actor-facts .actor-facts__item--wide {
    grid-column: 1 / -1;
}

.actor-facts dt {
    color: #938c82;
    font-size: 10px;
    font-weight: 750;
    text-transform: uppercase;
}

.actor-facts dd {
    margin: 3px 0 0;
    font-family: var(--serif);
    font-size: 19px;
}

.privacy-note {
    max-width: 440px;
    margin: 14px 0 0;
    color: #8f887d;
    font-size: 11px;
}

.ikona-participation-dialog {
    width: min(calc(100% - 32px), 780px);
    max-width: 780px;
    max-height: min(88vh, 820px);
    max-height: min(88dvh, 820px);
    padding: 0;
    overflow: auto;
    border: 1px solid rgba(244, 197, 66, .38);
    border-radius: 26px;
    background: #faf8f3;
    color: var(--ink);
    box-shadow: 0 34px 100px rgba(0, 0, 0, .42);
}

.ikona-participation-dialog::backdrop {
    background: rgba(5, 5, 4, .82);
    backdrop-filter: blur(7px);
}

.ikona-participation-dialog__close {
    position: sticky;
    z-index: 2;
    top: 16px;
    float: right;
    width: 42px;
    height: 42px;
    margin: 16px 16px -58px 0;
    padding: 0;
    border: 1px solid rgba(17, 16, 14, .18);
    border-radius: 50%;
    background: rgba(250, 248, 243, .94);
    color: var(--ink);
}

.ikona-participation-dialog__close::before,
.ikona-participation-dialog__close::after {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 18px;
    height: 2px;
    border-radius: 999px;
    background: currentColor;
    content: "";
}

.ikona-participation-dialog__close::before {
    transform: translate(-50%, -50%) rotate(45deg);
}

.ikona-participation-dialog__close::after {
    transform: translate(-50%, -50%) rotate(-45deg);
}

.ikona-participation-dialog__close:hover,
.ikona-participation-dialog__close:focus-visible {
    border-color: var(--gold-deep);
    background: var(--gold);
    outline: 0;
}

.ikona-participation-request {
    position: relative;
    width: 100%;
    max-width: 100%;
    font-family: var(--sans);
}

.ikona-participation-request--popup {
    padding: clamp(34px, 6vw, 60px);
}

.ikona-participation-request--page {
    margin: 12px 0 48px;
    padding: clamp(28px, 5vw, 48px);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: var(--paper);
    box-shadow: var(--shadow);
}

.ikona-participation-request__heading {
    padding-right: 38px;
}

.ikona-participation-request__heading .eyebrow {
    margin-bottom: 8px;
}

.ikona-participation-request__heading h2 {
    margin: 0 0 22px;
    font-family: var(--serif);
    font-size: clamp(34px, 5vw, 52px);
    font-weight: 500;
    line-height: 1.02;
    letter-spacing: -.035em;
}

.ikona-participation-request__information {
    max-width: 660px;
    color: #3b352d;
    font-size: 16px;
    line-height: 1.7;
}

.ikona-participation-request__information p {
    margin: 0 0 14px;
}

.ikona-participation-request__information a {
    color: #755207;
    font-weight: 750;
    text-underline-offset: 3px;
}

.ikona-participation-request__notice {
    margin: 0 0 22px;
    padding: 13px 16px;
    border-radius: 12px;
    font-size: 14px;
    font-weight: 700;
}

.ikona-participation-request__notice--success {
    border: 1px solid rgba(35, 113, 54, .25);
    background: #edf8ef;
    color: #175a28;
}

.ikona-participation-request__notice--error {
    border: 1px solid rgba(155, 45, 35, .24);
    background: #fff0ee;
    color: #85291f;
}

.ikona-participation-form {
    margin-top: 30px;
    padding-top: 28px;
    border-top: 1px solid var(--line);
}

.ikona-participation-form__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.ikona-participation-form label {
    display: grid;
    gap: 7px;
    margin: 0;
    color: #3b352d;
    font-size: 13px;
    font-weight: 750;
}

.ikona-participation-form label > span > b {
    color: #9b2d23;
}

.ikona-participation-form input[type="text"],
.ikona-participation-form input[type="tel"],
.ikona-participation-form input[type="email"],
.ikona-participation-form textarea {
    width: 100%;
    min-width: 0;
    padding: 12px 13px;
    border: 1px solid rgba(17, 16, 14, .22);
    border-radius: 10px;
    background: var(--white);
    color: var(--ink);
}

.ikona-participation-form textarea {
    min-height: 132px;
    resize: vertical;
}

.ikona-participation-form input:focus,
.ikona-participation-form textarea:focus {
    border-color: var(--gold-deep);
    outline: 3px solid rgba(244, 197, 66, .24);
}

.ikona-participation-form__message {
    grid-column: 1 / -1;
}

.ikona-participation-form__hint {
    margin: 12px 0 18px;
    color: var(--muted);
    font-size: 12px;
}

.ikona-participation-form .ikona-participation-form__consent {
    display: flex;
    max-width: 640px;
    align-items: flex-start;
    gap: 9px;
    margin: 0 0 22px;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.5;
}

.ikona-participation-form__consent input {
    width: 17px;
    height: 17px;
    flex: 0 0 auto;
    margin: 2px 0 0;
    accent-color: var(--gold-deep);
}

.ikona-participation-form__website {
    position: absolute !important;
    left: -10000px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}

body.is-participation-open {
    overflow: hidden;
}

.actor-profile__content {
    padding-block: 86px 110px;
}

.prose {
    color: #2d2924;
    font-family: var(--serif);
    font-size: 19px;
    line-height: 1.75;
    overflow-wrap: anywhere;
}

.prose > * {
    max-width: 790px;
}

.prose p,
.prose li {
    margin-block: 0 1.15em;
}

.single-ikona_news .prose > div:not(.news-image-gallery) {
    margin-block: 0 1.05em;
}

.prose [align="justify"] {
    text-align: left;
}

.prose font,
.prose [style*="font-family" i] {
    font-family: inherit !important;
}

.prose font,
.prose [style*="font-size" i] {
    font-size: inherit !important;
    line-height: inherit !important;
}

.prose [color],
.prose [style*="color:" i] {
    color: inherit !important;
}

.prose [bgcolor],
.prose [style*="background" i] {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
}

.prose [color="#ff0000" i],
.prose [style*="#ff0000" i] {
    color: #9d2018 !important;
}

.prose [color="#006633" i],
.prose [color="#006600" i],
.prose [color="#009933" i],
.prose [style*="#006633" i],
.prose [style*="#006600" i],
.prose [style*="#009933" i] {
    color: #12613f !important;
}

.prose h1,
.prose h2,
.prose h3 {
    color: var(--ink);
    line-height: 1.15;
}

.prose h1,
.prose h2 {
    margin-block: 1.6em .65em;
    font-size: clamp(30px, 4vw, 38px);
}

.prose h3 {
    margin-block: 1.45em .6em;
    font-size: clamp(24px, 3vw, 29px);
}

.prose a {
    color: #75520a !important;
    text-decoration-thickness: .08em;
    text-underline-offset: .15em;
}

.prose a * {
    color: inherit !important;
}

.prose .button--gold,
.prose .button--gold:hover {
    color: var(--ink) !important;
    text-decoration: none;
}

.prose img {
    border-radius: 15px;
}

.prose .news-image-gallery {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 220px));
    justify-content: start;
    gap: 18px;
    width: 100%;
    max-width: 100%;
    margin: 34px 0 42px;
}

.single-ikona_news .prose .wp-block-gallery {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 220px));
    justify-content: start;
    gap: 18px;
    width: 100%;
    max-width: 100%;
    margin: 34px 0 42px;
}

.single-ikona_news .prose .wp-block-gallery .wp-block-image,
.single-ikona_news .prose > .wp-block-image {
    min-width: 0;
    margin: 0;
}

.single-ikona_news .prose .wp-block-image > a {
    display: block;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 15px;
    background: var(--white);
    cursor: zoom-in;
}

.single-ikona_news .prose .wp-block-image img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 320px;
    margin: 0;
    object-fit: contain;
    transition: transform .25s ease;
}

.single-ikona_news .prose .wp-block-image > a:hover img,
.single-ikona_news .prose .wp-block-image > a:focus-visible img {
    transform: scale(1.025);
}

.single-ikona_news .prose .wp-block-image > a:focus-visible {
    outline: 2px solid var(--gold-deep);
    outline-offset: 4px;
}

.prose .news-image-gallery__item {
    min-width: 0;
    margin: 0;
    color: var(--muted);
    font-family: var(--sans);
    font-size: 14px;
    line-height: 1.4;
    text-align: center;
}

.prose .news-image-gallery__item > div,
.prose .news-image-gallery__item > p {
    margin: 0;
}

.prose .news-image-link {
    display: block;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 15px;
    background: var(--white);
    cursor: zoom-in;
}

.prose .news-image-link img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 320px;
    margin: 0;
    object-fit: contain;
    transition: transform .25s ease;
}

.prose .news-image-link:hover img,
.prose .news-image-link:focus-visible img {
    transform: scale(1.025);
}

.prose .news-image-link:focus-visible {
    outline: 2px solid var(--gold-deep);
    outline-offset: 4px;
}

.prose table {
    display: block;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    border: 1px solid var(--line);
    border-collapse: collapse;
    background: var(--white);
    font-family: var(--sans);
    font-size: 16px;
    line-height: 1.5;
}

.prose .news-data-table {
    margin-block: 32px 40px;
}

.prose th,
.prose td {
    min-width: 112px;
    padding: 14px 16px;
    border: 1px solid var(--line);
    color: var(--ink) !important;
    text-align: left;
    vertical-align: top;
}

.prose th {
    background: var(--paper);
    font-weight: 750;
}

.services-page {
    font-family: var(--sans);
}

.services-page h2,
.services-page h3 {
    font-family: var(--serif);
}

.services-page__lead,
.prose .is-style-ikona-lead {
    margin: 0 0 28px;
    padding: 22px 26px;
    border-left: 4px solid var(--gold-deep);
    border-radius: 0 14px 14px 0;
    background: var(--paper);
    color: var(--ink);
    font-family: var(--serif);
    font-size: 23px;
    line-height: 1.45;
}

.services-section,
.prose .is-style-ikona-section {
    margin-top: 58px;
}

.registration-section .eyebrow + h2 {
    margin-top: 12px;
}

.services-contact {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-top: 28px;
}

.services-contact > .wp-block-column {
    min-width: 0;
    margin: 0;
}

.services-contact__item,
.prose .is-style-ikona-contact-card {
    height: 100%;
    padding: 22px;
    border: 1px solid var(--line);
    border-radius: 16px;
    background: var(--white);
    font-family: var(--sans);
}

.prose .services-contact__label,
.prose .services-contact__value {
    margin: 0;
}

.prose .services-contact__label {
    margin-bottom: 6px;
}

.services-contact__item span {
    display: block;
    margin-bottom: 5px;
    color: var(--muted);
    font-size: 13px;
    font-weight: 750;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.services-contact__item a,
.services-contact__value,
.services-contact__value a {
    color: var(--ink) !important;
    font-size: 18px;
    font-weight: 750;
    text-decoration: none;
}

.services-offer,
.prose .is-style-ikona-dark-card {
    margin-top: 62px;
    padding: clamp(28px, 5vw, 46px);
    border-radius: 22px;
    background:
        radial-gradient(circle at 90% 0, rgba(244, 197, 66, .17), transparent 35%),
        var(--ink);
    color: #f4f0e6;
    font-family: var(--sans);
}

.services-offer .eyebrow,
.prose .is-style-ikona-dark-card .is-style-ikona-eyebrow {
    margin: 0 0 12px;
    color: var(--gold) !important;
}

.services-offer h2,
.prose .is-style-ikona-dark-card h2 {
    margin: 0 0 24px;
    color: var(--white);
}

.services-offer ul {
    margin: 0;
    padding-left: 1.25em;
}

.services-offer li::marker {
    color: var(--gold);
}

.services-offer__note {
    margin-top: 26px;
    padding-top: 22px;
    border-top: 1px solid rgba(255, 255, 255, .16);
    color: #ddd6c9;
    font-size: 16px;
}

.pricing-heading {
    margin-bottom: 28px;
}

.pricing-heading .eyebrow {
    margin-bottom: 8px;
}

.pricing-heading h2 {
    margin: 0 0 12px;
}

.pricing-table-shell,
.prose .is-style-ikona-pricing-table {
    margin-inline: 0;
    max-width: 100%;
}

.prose .pricing-table,
.prose .pricing-table-shell table,
.prose .is-style-ikona-pricing-table table {
    display: table;
    width: 100%;
    overflow: visible;
    border-collapse: collapse;
    table-layout: fixed;
}

.prose .pricing-table th,
.prose .pricing-table td,
.prose .pricing-table-shell th,
.prose .pricing-table-shell td,
.prose .is-style-ikona-pricing-table th,
.prose .is-style-ikona-pricing-table td {
    min-width: 0;
    padding: 15px 13px;
    text-align: center;
    vertical-align: middle;
}

.prose .pricing-table th:first-child,
.prose .pricing-table td:first-child,
.prose .pricing-table-shell th:first-child,
.prose .pricing-table-shell td:first-child {
    width: 38%;
    text-align: left;
}

.prose .pricing-table th:last-child,
.prose .pricing-table td:last-child,
.prose .pricing-table-shell th:last-child,
.prose .pricing-table-shell td:last-child {
    width: 18%;
}

.pricing-table__title {
    display: block;
    margin-bottom: 7px;
    font-family: var(--serif);
    font-size: 20px;
    line-height: 1.25;
}

.pricing-table__description {
    display: block;
    color: var(--muted);
    font-size: 13px;
    line-height: 1.5;
}

.pricing-table-shell td:first-child strong {
    display: block;
    margin-bottom: 7px;
    font-family: var(--serif);
    font-size: 20px;
    line-height: 1.25;
}

.pricing-table-shell td:first-child br {
    display: none;
}

.pricing-table-shell td:not(:first-child) {
    font-weight: 750;
}

.pricing-table-shell td em {
    color: var(--muted);
    font-style: normal;
    font-weight: 400;
}

.pricing-table__price {
    display: block;
    font-size: 16px;
    font-weight: 750;
}

.pricing-table__action {
    margin-top: 10px;
}

.pricing-table__payment-note {
    display: block;
    margin-top: 7px;
    color: var(--muted);
    font-size: 12px;
    font-weight: 650;
    line-height: 1.35;
}

.pricing-table__unavailable {
    color: var(--muted);
    font-weight: 400;
}

.services-payment,
.prose .is-style-ikona-note-card {
    margin-top: 28px;
    padding: 26px;
    border: 1px solid var(--line);
    border-radius: 18px;
    background: var(--paper);
    font-family: var(--sans);
}

.services-payment h3,
.prose .is-style-ikona-note-card h3 {
    margin: 0 0 10px;
}

.services-payment p,
.prose .is-style-ikona-note-card p {
    margin-bottom: 18px;
}

.registration-journey,
.prose .is-style-ikona-process {
    padding: clamp(26px, 4vw, 38px);
    border: 1px solid var(--line);
    border-radius: 22px;
    background: var(--white);
    box-shadow: 0 18px 45px rgba(17, 16, 14, .06);
    font-family: var(--sans);
}

.registration-journey h2,
.prose .is-style-ikona-process > h2 {
    margin: 0;
    font-family: var(--serif);
    font-size: clamp(29px, 4vw, 39px);
    line-height: 1.12;
}

.prose .registration-journey__intro {
    max-width: 660px;
    margin: 12px 0 0;
    color: var(--muted);
    font-size: 17px;
}

.registration-journey__steps {
    margin-top: 30px;
    border-top: 1px solid var(--line);
}

.registration-journey__step {
    display: block;
    padding: 28px 0;
}

.registration-journey__step > .wp-block-group__inner-container {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 22px;
}

.registration-journey__step + .registration-journey__step {
    border-top: 1px solid var(--line);
}

.prose .registration-journey__number {
    display: grid;
    width: 48px;
    height: 48px;
    margin: 0;
    place-items: center;
    border-radius: 50%;
    background: var(--ink);
    color: var(--gold) !important;
    font-size: 13px;
    font-weight: 850;
    letter-spacing: .08em;
}

.prose .registration-journey__meta {
    margin: 0 0 7px;
    color: var(--gold-deep);
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.registration-journey__content h3 {
    margin: 0 0 12px;
    font-family: var(--serif);
    font-size: clamp(24px, 3vw, 30px);
    line-height: 1.14;
}

.prose .registration-journey__content > p:not(.registration-journey__meta, .registration-journey__note) {
    margin: 0 0 12px;
}

.prose .registration-journey__content ul {
    margin: 12px 0 0;
    padding-left: 22px;
}

.prose .registration-journey__content li + li {
    margin-top: 8px;
}

.prose .registration-journey__note {
    margin: 18px 0 0;
    padding: 13px 16px;
    border-left: 3px solid var(--gold-deep);
    border-radius: 0 12px 12px 0;
    background: var(--paper);
    color: var(--muted);
    font-size: 14px;
}

.registration-options {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    align-items: stretch;
    margin-top: 28px;
}

.registration-options > .wp-block-column {
    min-width: 0;
    margin: 0;
}

.registration-card,
.prose .is-style-ikona-feature-card {
    height: 100%;
    padding: clamp(24px, 4vw, 34px);
    border: 1px solid var(--line);
    border-top: 4px solid var(--gold-deep);
    border-radius: 18px;
    background: var(--white);
    box-shadow: 0 18px 45px rgba(17, 16, 14, .06);
    font-family: var(--sans);
}

.prose .registration-card__meta {
    margin: 0 0 10px;
    color: var(--gold-deep);
    font-size: 13px;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.registration-card h3,
.prose .is-style-ikona-feature-card h3 {
    margin: 0 0 16px;
    font-family: var(--serif);
    font-size: clamp(24px, 3vw, 31px);
    line-height: 1.12;
}

.registration-card p:last-child,
.prose .is-style-ikona-feature-card p:last-child {
    margin-bottom: 0;
}

.prose .registration-card__note {
    margin-top: 20px;
    padding-top: 18px;
    border-top: 1px solid var(--line);
    color: var(--muted);
    font-size: 14px;
}

.prose .is-style-ikona-details {
    margin-top: 20px;
    padding-top: 17px;
    border-top: 1px solid var(--line);
}

.prose .is-style-ikona-details summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    color: var(--gold-deep);
    font-family: var(--sans);
    font-size: 15px;
    font-weight: 800;
    cursor: pointer;
    list-style: none;
}

.prose .is-style-ikona-details summary::-webkit-details-marker {
    display: none;
}

.prose .is-style-ikona-details summary::after {
    content: "";
    display: block;
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    border: 1px solid currentColor;
    border-radius: 50%;
    background:
        linear-gradient(currentColor, currentColor) center / 10px 2px no-repeat,
        linear-gradient(currentColor, currentColor) center / 2px 10px no-repeat;
}

.prose .is-style-ikona-details[open] summary::after {
    background: linear-gradient(currentColor, currentColor) center / 10px 2px no-repeat;
}

.prose .is-style-ikona-details[open] summary {
    margin-bottom: 16px;
}

.prose .is-style-ikona-details > :last-child {
    margin-bottom: 0;
}

.registration-warning,
.prose .is-style-ikona-alert-card {
    margin-top: 58px;
    padding: clamp(24px, 4vw, 34px);
    border: 1px solid rgba(118, 82, 11, .25);
    border-left: 5px solid var(--gold-deep);
    border-radius: 18px;
    background: linear-gradient(135deg, rgba(244, 197, 66, .17), rgba(244, 240, 230, .92));
    color: var(--ink);
    font-family: var(--sans);
}

.registration-warning .eyebrow,
.prose .is-style-ikona-alert-card .is-style-ikona-eyebrow {
    margin: 0 0 10px;
    color: var(--gold-deep) !important;
}

.registration-warning h2,
.prose .is-style-ikona-alert-card h2 {
    margin: 0;
    font-family: var(--serif);
    font-size: clamp(25px, 4vw, 35px);
    line-height: 1.18;
}

.prose ol.is-style-ikona-steps {
    display: grid;
    gap: 14px;
    margin: 28px 0 0;
    padding: 0;
    counter-reset: ikona-step;
    list-style: none;
}

.prose ol.is-style-ikona-steps > li {
    position: relative;
    min-height: 72px;
    margin: 0;
    padding: 22px 24px 22px 78px;
    border: 1px solid var(--line);
    border-radius: 16px;
    background: var(--white);
    counter-increment: ikona-step;
}

.prose ol.is-style-ikona-steps > li::before {
    content: counter(ikona-step);
    position: absolute;
    top: 20px;
    left: 22px;
    display: inline-flex;
    width: 38px;
    height: 38px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--gold);
    color: var(--ink);
    font-size: 15px;
    font-weight: 850;
}

.registration-price-note {
    margin-top: 24px;
}

.registration-cta {
    text-align: center;
}

.registration-cta h2 {
    margin-bottom: 22px;
}

.registration-cta .wp-block-buttons {
    margin: 0;
}

.prose .wp-block-button.is-style-ikona-primary-button .wp-block-button__link {
    display: inline-flex;
    min-height: 52px;
    align-items: center;
    justify-content: center;
    padding: 14px 28px;
    border: 1px solid transparent;
    border-radius: 999px;
    background: var(--gold);
    color: var(--ink) !important;
    box-shadow: 0 14px 34px rgba(244, 197, 66, .2);
    font-family: var(--sans);
    font-size: 15px;
    font-weight: 850;
    line-height: 1.2;
    text-decoration: none;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.prose .wp-block-button.is-style-ikona-primary-button .wp-block-button__link:hover {
    background: var(--gold-soft);
    box-shadow: 0 18px 38px rgba(244, 197, 66, .28);
    transform: translateY(-2px);
}

.prose .wp-block-button.is-style-ikona-primary-button .wp-block-button__link:focus-visible {
    outline: 3px solid rgba(244, 197, 66, .45);
    outline-offset: 3px;
}

.profile-gallery,
.profile-video,
.profile-projects {
    margin-top: 94px;
}

.profile-gallery__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
}

.profile-gallery__grid > button {
    overflow: hidden;
    aspect-ratio: 1;
    padding: 0;
    border: 0;
    border-radius: 12px;
    background: var(--charcoal);
    cursor: zoom-in;
}

.profile-gallery__grid > button img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .35s ease;
}

.profile-gallery__grid > button:hover img {
    transform: scale(1.04);
}

.profile-video__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
}

.profile-video__grid--single {
    grid-template-columns: minmax(0, 1fr);
}

.profile-video__item {
    min-width: 0;
    scroll-margin-top: 24px;
}

.profile-video__embed {
    position: relative;
    overflow: hidden;
    width: 100%;
    aspect-ratio: 16 / 9;
    border-radius: 20px;
    background: var(--charcoal);
    box-shadow: 0 24px 54px rgba(17, 16, 14, .16);
}

.profile-video__embed iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}

.ikona-lightbox {
    position: fixed;
    inset: 0;
    width: 100vw;
    max-width: none;
    height: 100vh;
    height: 100dvh;
    max-height: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    border: 0;
    background: rgba(5, 5, 4, .98);
    color: var(--white);
}

.ikona-lightbox::backdrop {
    background: rgba(5, 5, 4, .96);
    backdrop-filter: blur(8px);
}

.ikona-lightbox__stage {
    position: relative;
    width: 100%;
    height: 100%;
    padding: 72px 92px 68px;
}

.ikona-lightbox__viewport {
    display: flex;
    width: 100%;
    height: 100%;
    min-width: 0;
    align-items: center;
    justify-content: center;
    touch-action: pan-y;
    user-select: none;
}

.ikona-lightbox__slide {
    display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
    margin: 0;
}

.ikona-lightbox__slide[hidden] {
    display: none;
}

.ikona-lightbox__slide img {
    display: block;
    max-width: 100%;
    max-height: 100%;
    margin: auto;
    object-fit: contain;
    box-shadow: 0 20px 70px rgba(0, 0, 0, .4);
    transition: transform .22s ease;
}

.ikona-lightbox__slide img.is-zoomable {
    cursor: zoom-in;
}

.ikona-lightbox__slide img.is-zoomable:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 4px;
}

.ikona-lightbox__slide img.is-zoomed {
    position: relative;
    z-index: 1;
    cursor: zoom-out;
    transform: scale(var(--ikona-gallery-zoom, 1.5));
}

.ikona-lightbox__close {
    position: absolute;
    z-index: 3;
    top: 20px;
    right: 24px;
    display: grid;
    width: 48px;
    height: 48px;
    place-items: center;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, .4);
    border-radius: 50%;
    background: rgba(0, 0, 0, .4);
    color: var(--white);
    font-size: 0;
}

.ikona-lightbox__close::before,
.ikona-lightbox__close::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20px;
    height: 2px;
    border-radius: 999px;
    background: currentColor;
}

.ikona-lightbox__close::before {
    transform: translate(-50%, -50%) rotate(45deg);
}

.ikona-lightbox__close::after {
    transform: translate(-50%, -50%) rotate(-45deg);
}

.ikona-lightbox__nav {
    position: absolute;
    z-index: 2;
    top: 50%;
    display: grid;
    width: 52px;
    height: 52px;
    place-items: center;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, .36);
    border-radius: 50%;
    background: rgba(0, 0, 0, .38);
    color: var(--white);
    font-size: 0;
    transform: translateY(-50%);
    transition: border-color .2s ease, background .2s ease, transform .2s ease;
}

.ikona-lightbox__nav::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 12px;
    height: 12px;
    border-top: 3px solid currentColor;
    border-right: 3px solid currentColor;
}

.ikona-lightbox__nav--previous::before {
    transform: translate(-50%, -50%) rotate(-135deg);
}

.ikona-lightbox__nav--next::before {
    transform: translate(-50%, -50%) rotate(45deg);
}

.ikona-lightbox__nav:hover,
.ikona-lightbox__nav:focus-visible,
.ikona-lightbox__close:hover,
.ikona-lightbox__close:focus-visible {
    border-color: var(--gold);
    background: rgba(0, 0, 0, .72);
    outline: 0;
}

.ikona-lightbox__nav:hover {
    transform: translateY(-50%) scale(1.04);
}

.ikona-lightbox__nav--previous {
    left: 22px;
}

.ikona-lightbox__nav--next {
    right: 22px;
}

.ikona-lightbox__status {
    position: absolute;
    z-index: 2;
    right: 80px;
    bottom: 20px;
    left: 80px;
    display: flex;
    justify-content: center;
    gap: 14px;
    color: rgba(255, 255, 255, .74);
    font-size: 12px;
    letter-spacing: .04em;
    text-align: center;
}

.ikona-lightbox__status > span:first-child {
    color: var(--white);
    font-weight: 800;
}

body.is-lightbox-open {
    overflow: hidden;
}

@media (max-width: 680px) {
    .ikona-participation-dialog {
        width: min(calc(100% - 20px), 780px);
        max-height: 94vh;
        max-height: 94dvh;
        border-radius: 20px;
    }

    .ikona-participation-dialog__close {
        top: 10px;
        width: 40px;
        height: 40px;
        margin: 10px 10px -50px 0;
    }

    .ikona-participation-request--popup {
        padding: 30px 22px;
    }

    .ikona-participation-request--page {
        padding: 26px 20px;
    }

    .ikona-participation-form__grid {
        grid-template-columns: 1fr;
    }

    .ikona-participation-form__message {
        grid-column: auto;
    }

    .ikona-lightbox__stage {
        padding: 64px 10px 76px;
    }

    .ikona-lightbox__close {
        top: 12px;
        right: 12px;
        width: 44px;
        height: 44px;
    }

    .ikona-lightbox__nav {
        top: auto;
        bottom: 14px;
        width: 46px;
        height: 46px;
        font-size: 0;
        transform: none;
    }

    .ikona-lightbox__nav:hover {
        transform: scale(1.04);
    }

    .ikona-lightbox__nav--previous {
        left: 14px;
    }

    .ikona-lightbox__nav--next {
        right: 14px;
    }

    .ikona-lightbox__status {
        right: 64px;
        bottom: 16px;
        left: 64px;
        flex-direction: column;
        gap: 2px;
        font-size: 10px;
    }
}

.content-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.content-grid--news {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px;
}

.content-card {
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 20px;
    background: var(--white);
}

.content-card--news {
    display: flex;
    min-width: 0;
    flex-direction: column;
    box-shadow: 0 18px 45px rgba(28, 22, 10, .07);
}

.content-card--news .content-card__body {
    display: flex;
    flex: 1;
    flex-direction: column;
}

.content-card--news .text-link {
    align-self: flex-start;
    margin-top: auto;
}

.content-card--news .content-card__media {
    aspect-ratio: 16 / 8.5;
}

.news-card-preview {
    isolation: isolate;
    position: relative;
    display: grid;
    width: 100%;
    height: 100%;
    align-content: center;
    justify-items: center;
    overflow: hidden;
    color: var(--white);
    background:
        radial-gradient(circle at 78% 18%, rgba(244, 197, 66, .24), transparent 34%),
        linear-gradient(145deg, #15130f 0%, #292216 58%, #0e0d0b 100%);
}

.news-card-preview::before {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 14px;
    border: 1px solid rgba(244, 197, 66, .22);
    border-radius: 14px;
}

.news-card-preview__label {
    color: var(--gold);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .2em;
    text-transform: uppercase;
}

.news-card-preview__date {
    margin-top: 5px;
    font-family: var(--serif);
    font-size: clamp(52px, 6vw, 78px);
    line-height: .95;
}

.news-card-preview__month {
    margin-top: 8px;
    color: #eee7da;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.content-card--news .news-card-preview__image {
    object-position: center;
}

.content-card__media {
    position: relative;
    aspect-ratio: 16 / 10;
    display: block;
    overflow: hidden;
    background: var(--charcoal);
}

.content-card__media img,
.content-card__media .ikona-picture-placeholder {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .35s ease;
}

.content-card:hover .content-card__media img {
    transform: scale(1.04);
}

.casting-card-preview {
    isolation: isolate;
    position: relative;
    display: flex;
    width: 100%;
    height: 100%;
    flex-direction: column;
    justify-content: flex-end;
    gap: 12px;
    padding: clamp(26px, 3vw, 38px);
    overflow: hidden;
    color: var(--white);
    background:
        radial-gradient(circle at 80% 18%, rgba(244, 197, 66, .25), transparent 32%),
        linear-gradient(145deg, #15130f 0%, #292216 58%, #0e0d0b 100%);
}

.casting-card-preview::before {
    content: "";
    position: absolute;
    z-index: -1;
    right: -26px;
    bottom: -52px;
    width: 210px;
    aspect-ratio: 1;
    background: url("assets/images/apple-touch-icon.png") center / contain no-repeat;
    opacity: .18;
    filter: saturate(.85);
    transition: transform .35s ease, opacity .35s ease;
}

.casting-card-preview::after {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 14px;
    border: 1px solid rgba(244, 197, 66, .22);
    border-radius: 14px;
    pointer-events: none;
}

.casting-card-preview__eyebrow {
    color: var(--gold);
    font-family: var(--sans);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.casting-card-preview__title {
    display: -webkit-box;
    max-width: 84%;
    overflow: hidden;
    font-family: var(--serif);
    font-size: clamp(23px, 2vw, 31px);
    line-height: 1.05;
    text-wrap: balance;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.content-card:hover .casting-card-preview::before {
    opacity: .25;
    transform: scale(1.06) rotate(-3deg);
}

.content-card__body {
    padding: 24px;
}

.content-card__meta {
    margin: 0 0 10px;
    color: var(--muted);
    font-size: 12px;
    font-weight: 650;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.content-card h2 {
    margin: 0;
    font-family: var(--serif);
    font-size: 27px;
    line-height: 1.1;
}

.content-card h2 a {
    text-decoration: none;
}

.content-card__body > p:not(.content-card__meta) {
    color: #514b43;
    font-size: 16px;
    line-height: 1.6;
}

.project-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 26px;
}

.project-card {
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 20px;
    background: var(--white);
    box-shadow: 0 12px 35px rgba(28, 22, 10, .06);
    transition: transform .25s ease, box-shadow .25s ease;
}

.project-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow);
}

.project-card__media {
    position: relative;
    display: block;
    overflow: hidden;
    aspect-ratio: 16 / 10;
    background: var(--charcoal);
}

.project-card__media img,
.project-card__media .ikona-picture-placeholder {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .35s ease;
}

.project-card:hover .project-card__media img {
    transform: scale(1.04);
}

.project-card__body {
    padding: 22px 24px 24px;
}

.project-card__meta {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 10px;
    color: var(--muted);
    font-size: 11px;
    font-weight: 750;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.project-card__meta span + span::before {
    margin-right: 8px;
    color: var(--gold-deep);
    content: "•";
}

.project-card h2,
.project-card h3 {
    margin: 0;
    font-family: var(--serif);
    font-size: 27px;
    font-weight: 500;
    line-height: 1.12;
}

.project-card h2 a,
.project-card h3 a {
    text-decoration: none;
}

.project-card .text-link {
    display: inline-block;
    margin-top: 18px;
}

.project-single__hero {
    padding-block: 58px 74px;
    background:
        radial-gradient(circle at 75% 20%, rgba(244, 197, 66, .16), transparent 28%),
        var(--ink);
    color: var(--white);
}

.project-single__hero-grid {
    display: grid;
    grid-template-columns: minmax(360px, 1.05fr) minmax(0, .95fr);
    align-items: center;
    gap: 70px;
}

.project-single__cover {
    overflow: hidden;
    aspect-ratio: 16 / 10;
    border-radius: 24px;
    background: var(--charcoal);
    box-shadow: 0 30px 70px rgba(0, 0, 0, .32);
}

.project-single__cover img,
.project-single__cover .ikona-picture-placeholder {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.project-single__cover--video {
    display: grid;
    aspect-ratio: 16 / 9;
    place-items: center;
}

.project-single__cover--video iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}

.project-single__intro h1 {
    margin: 0;
    font-family: var(--serif);
    font-size: clamp(46px, 5.6vw, 74px);
    font-weight: 500;
    line-height: 1;
    letter-spacing: -.035em;
}

.project-single__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 20px;
    margin: 22px 0 0;
    color: #bcb5aa;
    font-size: 13px;
}

.project-single__meta span + span::before {
    margin-right: 17px;
    color: var(--gold);
    content: "•";
}

.project-single__body {
    padding-block: 74px 105px;
}

.project-single__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 22px;
}

.project-participants {
    margin-top: 76px;
    padding-top: 68px;
    border-top: 1px solid var(--line);
}

.project-participants h2 {
    margin: 0;
    font-family: var(--serif);
    font-size: clamp(38px, 5vw, 58px);
    font-weight: 500;
    line-height: 1.05;
}

.project-participants__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
    margin-top: 30px;
}

.project-participant {
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 16px;
    background: var(--white);
    text-decoration: none;
}

.project-participant__photo {
    display: block;
    overflow: hidden;
    aspect-ratio: 4 / 5;
    background: var(--charcoal);
}

.project-participant__photo img,
.project-participant__photo .ikona-picture-placeholder {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .35s ease;
}

.project-participant:hover .project-participant__photo img {
    transform: scale(1.04);
}

.project-participant__text {
    display: block;
    padding: 15px 16px 17px;
}

.project-participant__text strong,
.project-participant__text small {
    display: block;
}

.project-participant__text strong {
    font-family: var(--serif);
    font-size: 21px;
    font-weight: 500;
    line-height: 1.1;
}

.project-participant__text small {
    margin-top: 5px;
    color: var(--muted);
    font-size: 11px;
}

.single-entry__meta {
    display: flex;
    gap: 20px;
    margin: 22px 0 0;
    color: #aaa297;
    font-size: 12px;
}

.single-entry__content {
    padding-block: 66px 100px;
}

.single-entry__cover {
    margin: 0 0 45px;
}

.single-entry__cover img {
    width: 100%;
    max-height: 650px;
    border-radius: 20px;
    object-fit: cover;
}

.video-embed {
    margin-top: 40px;
}

.video-embed iframe {
    width: 100%;
    aspect-ratio: 16 / 9;
    height: auto;
    border: 0;
}

.post-navigation {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    margin-top: 70px;
    padding-top: 24px;
    border-top: 1px solid var(--line);
    font-size: 13px;
    font-weight: 750;
}

.post-navigation div:last-child {
    text-align: right;
}

.post-navigation a {
    text-decoration: none;
}

.post-navigation a:hover {
    color: var(--gold-deep);
}

.error-page {
    min-height: 650px;
    display: grid;
    place-items: center;
    padding-block: 90px;
    background: var(--paper);
    text-align: center;
}

.error-page__code {
    margin: 0;
    color: rgba(169, 121, 18, .18);
    font-family: var(--serif);
    font-size: 180px;
    font-weight: 800;
    line-height: .7;
}

.error-page h1 {
    max-width: 700px;
    margin-inline: auto;
    font-size: clamp(44px, 6vw, 70px);
}

.error-page .hero__actions {
    justify-content: center;
}

@media (max-width: 1080px) {
    .site-header__inner {
        gap: 20px;
    }

    .site-nav .menu {
        gap: 17px;
    }

    .hero__grid {
        grid-template-columns: minmax(0, 1fr) minmax(390px, .8fr);
        gap: 35px;
    }

    .category-links {
        grid-template-columns: repeat(3, 1fr);
    }

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

    .actor-grid--catalog {
        grid-template-columns: repeat(2, 1fr);
    }

    .catalog-layout {
        grid-template-columns: 250px 1fr;
        column-gap: 34px;
    }
}

@media (max-width: 1080px) {
    .site-header__inner {
        grid-template-columns: auto auto 1fr;
    }

    .nav-toggle {
        display: block;
        justify-self: end;
        grid-column: 3;
    }

    .header-account {
        grid-column: 2;
        grid-row: 1;
    }

    .site-nav {
        position: absolute;
        top: 84px;
        left: 0;
        right: 0;
        display: none;
        max-height: calc(100vh - 84px);
        max-height: calc(100dvh - 84px);
        padding: 15px 20px 24px;
        border-top: 1px solid rgba(255, 255, 255, .1);
        background: var(--ink);
        overflow-y: auto;
        overscroll-behavior: contain;
    }

    .site-nav.is-open {
        display: block;
    }

    .site-nav .menu {
        display: block;
    }

    .site-nav .menu > li > a {
        padding: 13px 4px;
        border-bottom: 1px solid rgba(255, 255, 255, .08);
    }

    .site-nav .menu .menu-item-has-children {
        position: relative;
    }

    .site-nav .menu > .menu-item-has-children > a {
        padding-right: 56px;
    }

    .site-nav .menu > .menu-item-has-children > a::before,
    .site-nav .menu > li > a::after {
        display: none;
    }

    .submenu-toggle {
        position: absolute;
        z-index: 2;
        top: 3px;
        right: 0;
        width: 44px;
        height: 44px;
        display: grid;
        place-items: center;
        padding: 0;
        border: 0;
        border-radius: 10px;
        background: transparent;
        color: var(--white);
    }

    .submenu-toggle::before {
        width: 9px;
        height: 9px;
        border-right: 2px solid currentColor;
        border-bottom: 2px solid currentColor;
        content: "";
        transform: translateY(-2px) rotate(45deg);
        transition: transform .18s ease;
    }

    .submenu-toggle:hover,
    .submenu-toggle:focus-visible {
        background: rgba(244, 197, 66, .12);
        color: var(--gold-soft);
        outline: 2px solid transparent;
    }

    .submenu-toggle[aria-expanded="true"]::before {
        transform: translateY(2px) rotate(225deg);
    }

    .site-nav .menu > li > .sub-menu {
        position: static;
        width: auto;
        min-width: 0;
        max-width: none;
        display: none;
        margin: 0 0 9px 12px;
        padding: 5px 0 5px 12px;
        border: 0;
        border-left: 2px solid rgba(244, 197, 66, .72);
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: none;
        transition: none;
    }

    .site-nav .sub-menu .sub-menu {
        position: static;
        width: auto;
        min-width: 0;
        max-width: none;
        display: block;
        margin: 1px 0 7px 20px;
        padding: 0;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: none;
    }

    .site-nav .menu > li:hover > .sub-menu,
    .site-nav .menu > li:focus-within > .sub-menu,
    .site-nav .menu > li.is-submenu-dismissed > .sub-menu {
        transform: none;
    }

    .site-nav .menu > .menu-item-has-children.is-submenu-open > .sub-menu {
        display: block;
        transform: none;
    }

    .site-nav .sub-menu a {
        padding: 10px 12px;
        border-radius: 8px;
        color: #d9d3c8;
        font-size: 13px;
    }

    .hero__grid {
        min-height: auto;
        grid-template-columns: 1fr;
        padding-block: 66px 60px;
    }

    .hero-mosaic {
        min-height: 500px;
        width: min(100%, 600px);
        margin-inline: auto;
    }

    .stats-strip__grid {
        grid-template-columns: repeat(3, 1fr);
        padding-block: 20px;
    }

    .stats-strip__grid > a {
        grid-column: 1 / -1;
        padding: 18px 0 0;
    }

    .editorial-grid {
        grid-template-columns: 1fr;
        gap: 70px;
    }

    .catalog-layout {
        grid-template-columns: 1fr;
        grid-template-areas:
            "heading"
            "filter"
            "results";
    }

    .catalog-filter {
        position: static;
        display: none;
        max-block-size: none;
        overflow: visible;
    }

    .catalog-filter.is-open {
        display: block;
    }

    .catalog-filter-toggle {
        display: inline-grid;
    }

    .catalog-filter form {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }

    .catalog-filter__heading,
    .catalog-filter .button {
        grid-column: 1 / -1;
    }

    .catalog-filter > form > label,
    .catalog-filter fieldset {
        margin: 0;
    }

    .actor-profile__hero-grid {
        grid-template-columns: minmax(260px, 340px) minmax(0, 1fr);
        gap: 36px;
    }

    .profile-gallery__grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .content-grid {
        grid-template-columns: repeat(2, 1fr);
    }

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

    .project-single__hero-grid {
        grid-template-columns: minmax(320px, .95fr) minmax(0, 1.05fr);
        gap: 42px;
    }

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

@media (max-width: 680px) {
    .site-shell,
    .site-shell--narrow {
        width: min(calc(100% - 28px), var(--shell));
    }

    .services-contact {
        grid-template-columns: 1fr;
    }

    .registration-options {
        grid-template-columns: 1fr;
    }

    .registration-card,
    .prose .is-style-ikona-feature-card {
        padding: 22px;
    }

    .registration-journey,
    .prose .is-style-ikona-process {
        padding: 22px;
    }

    .registration-journey__step > .wp-block-group__inner-container {
        grid-template-columns: 40px minmax(0, 1fr);
        gap: 14px;
    }

    .registration-journey__step {
        padding: 22px 0;
    }

    .prose .registration-journey__number {
        width: 40px;
        height: 40px;
        font-size: 12px;
    }

    .prose ol.is-style-ikona-steps > li {
        padding: 20px 18px 20px 68px;
    }

    .prose ol.is-style-ikona-steps > li::before {
        left: 16px;
    }

    .services-page__lead {
        padding: 18px 20px;
        font-size: 21px;
    }

    .services-offer {
        margin-inline: -2px;
    }

    .prose .pricing-table,
    .prose .pricing-table-shell table,
    .prose .is-style-ikona-pricing-table table,
    .pricing-table tbody,
    .pricing-table tr,
    .pricing-table td,
    .pricing-table-shell tbody,
    .pricing-table-shell tr,
    .pricing-table-shell td {
        display: block;
        width: 100%;
    }

    .pricing-table thead,
    .pricing-table-shell thead {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip: rect(0 0 0 0);
        clip-path: inset(50%);
        white-space: nowrap;
    }

    .prose .pricing-table,
    .prose .pricing-table-shell table,
    .prose .is-style-ikona-pricing-table table {
        border: 0;
        background: transparent;
    }

    .pricing-table tbody,
    .pricing-table-shell tbody {
        display: grid;
        gap: 18px;
    }

    .pricing-table tr,
    .pricing-table-shell tr {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        overflow: hidden;
        border: 1px solid var(--line);
        border-radius: 16px;
        background: var(--white);
    }

    .prose .pricing-table td,
    .prose .pricing-table-shell td {
        min-width: 0;
        padding: 15px;
        border: 0;
        border-top: 1px solid var(--line);
        text-align: left;
    }

    .prose .pricing-table td:first-child,
    .prose .pricing-table-shell td:first-child {
        grid-column: 1 / -1;
        width: 100%;
        padding: 20px;
        border-top: 0;
        background: var(--paper);
    }

    .prose .pricing-table td:last-child,
    .prose .pricing-table-shell td:last-child {
        width: 100%;
    }

    .prose .pricing-table td:not(:first-child)::before,
    .prose .pricing-table-shell td:not(:first-child)::before {
        content: attr(data-label);
        display: block;
        margin-bottom: 4px;
        color: var(--muted);
        font-size: 11px;
        font-weight: 750;
        letter-spacing: .06em;
        text-transform: uppercase;
    }

    .prose .pricing-table-shell td:nth-child(2):not([data-label])::before {
        content: "1 месяц";
    }

    .prose .pricing-table-shell td:nth-child(3):not([data-label])::before {
        content: "2 месяца";
    }

    .prose .pricing-table-shell td:nth-child(4):not([data-label])::before {
        content: "3 месяца";
    }

    .prose .pricing-table-shell td:nth-child(5):not([data-label])::before {
        content: "6 месяцев";
    }

    .prose .pricing-table-shell td:nth-child(6):not([data-label])::before {
        content: "1 год";
    }

    .prose .pricing-table-shell td:nth-child(7):not([data-label])::before {
        content: "Бессрочно";
    }

    .pricing-table__action {
        width: 100%;
    }

    .site-header__inner {
        min-height: 72px;
        grid-template-columns: auto 1fr;
    }

    .site-brand__mark {
        width: 44px;
        height: 44px;
        flex-basis: 44px;
    }

    .site-brand strong {
        font-size: 22px;
    }

    .header-account {
        display: none;
    }

    .nav-toggle {
        grid-column: 2;
    }

    .site-nav {
        top: 72px;
        max-height: calc(100vh - 72px);
        max-height: calc(100dvh - 72px);
    }

    .hero h1 {
        font-size: 47px;
    }

    .hero__lead {
        font-size: 16px;
    }

    .hero-search {
        grid-template-columns: 1fr;
        border-radius: 18px;
    }

    .hero-search button {
        border-radius: 13px;
    }

    .hero-mosaic {
        min-height: 390px;
    }

    .hero-mosaic__item span:not(.ikona-picture-placeholder) {
        display: none;
    }

    .hero-mosaic__badge {
        width: 100px;
        height: 100px;
        border-width: 2px;
    }

    .hero-mosaic__badge strong {
        font-size: 23px;
    }

    .stats-strip__grid {
        grid-template-columns: 1fr 1fr;
    }

    .stats-strip__grid > div {
        padding: 13px 12px;
    }

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

    .stats-strip__grid > div:nth-child(3) {
        grid-column: 1 / -1;
        border-top: 1px solid var(--line);
    }

    .section {
        padding-block: 68px;
    }

    .section-heading,
    .section-heading--inline {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .category-links,
    .actor-grid,
    .actor-grid--catalog,
    .content-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .actor-grid {
        gap: 22px 10px;
    }

    .actor-card h3 {
        font-size: 18px;
    }

    .actor-card__meta {
        display: block;
    }

    .actor-card__meta span {
        display: block;
    }

    .actor-card__meta span + span::before {
        display: none;
    }

    .actor-card__pin {
        top: 7px;
        right: 7px;
        width: 30px;
        height: 30px;
    }

    .actor-card__pin svg {
        width: 17px;
        height: 17px;
    }

    .category-links a {
        min-height: 115px;
        padding: 17px;
    }

    .category-links span {
        font-size: 17px;
    }

    .cta-band__inner {
        align-items: flex-start;
        flex-direction: column;
    }

    .site-footer__grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .site-footer__bottom {
        align-items: flex-start;
        flex-direction: column;
    }

    .archive-hero,
    .single-entry__header {
        padding-block: 58px;
    }

    .archive-hero h1,
    .single-entry__header h1 {
        font-size: 45px;
    }

    .archive-hero h1 {
        font-size: clamp(36px, 10vw, 45px);
    }

    .talent-category-cloud {
        margin-top: 28px;
        padding-top: 22px;
    }

    .talent-category-cloud__items {
        flex-wrap: nowrap;
        gap: 8px;
        overflow-x: auto;
        padding-bottom: 6px;
        overscroll-behavior-inline: contain;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .talent-category-cloud__items::-webkit-scrollbar {
        display: none;
    }

    .talent-category-cloud__items > li {
        flex: 0 0 auto;
    }

    .talent-category-cloud a {
        min-height: 38px;
        padding: 8px 11px;
        font-size: 12px;
        white-space: nowrap;
    }

    .talent-category-cloud__toggle {
        display: none;
    }

    .catalog-filter form {
        grid-template-columns: 1fr;
    }

    .catalog-layout {
        grid-template-areas:
            "heading"
            "filter"
            "results";
        row-gap: 24px;
        padding-top: 36px;
    }

    .catalog-filter {
        display: none;
    }

    .catalog-filter.is-open {
        display: block;
    }

    .catalog-filter__heading,
    .catalog-filter .button {
        grid-column: auto;
    }

    .catalog-results__heading {
        min-height: 0;
        display: grid;
        grid-template-columns: minmax(0, 1fr) 46px;
        grid-template-rows: auto auto;
        align-items: center;
        column-gap: 16px;
        row-gap: 0;
    }

    .catalog-results__heading > div {
        display: contents;
    }

    .catalog-results__heading > div > .eyebrow {
        grid-column: 1 / -1;
        grid-row: 1;
        margin-bottom: 0;
    }

    .catalog-results__heading > p {
        display: none;
    }

    .catalog-results__heading h2 {
        grid-column: 1;
        grid-row: 2;
        font-size: clamp(31px, 9vw, 38px);
    }

    .catalog-filter-toggle {
        display: grid;
        grid-column: 2;
        grid-row: 2;
        align-self: center;
    }

    .actor-profile__hero-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .project-single__hero-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .project-single__cover {
        order: 2;
    }

    .project-single__intro {
        order: 1;
    }

    .actor-profile__media {
        width: min(100%, 430px);
        margin-inline: auto;
    }

    .actor-profile__portrait {
        width: 100%;
    }

    .back-link {
        margin-bottom: 24px;
    }

    .actor-profile__intro h1 {
        font-size: clamp(40px, 10vw, 48px);
    }

    .actor-facts {
        grid-template-columns: 1fr 1fr;
    }

    .profile-gallery__grid {
        grid-template-columns: repeat(2, 1fr);
    }

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

    .post-navigation {
        grid-template-columns: 1fr;
    }

    .post-navigation div:last-child {
        text-align: left;
    }
}

@media (max-width: 420px) {
    .category-links {
        grid-template-columns: 1fr;
    }

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

    .project-grid {
        grid-template-columns: 1fr;
    }

    .actor-profile__intro h1 {
        font-size: 40px;
    }
}

.header-actions {
    display: inline-flex;
    align-items: center;
    justify-self: end;
    gap: 10px;
}

.header-favorites,
.actor-card__favorite,
.actor-profile__icon-action {
    display: inline-grid;
    place-items: center;
    border: 1px solid currentColor;
    border-radius: 50%;
    background: transparent;
    transition: background-color .2s ease, border-color .2s ease, color .2s ease, transform .2s ease;
}

.header-favorites {
    position: relative;
    width: 44px;
    height: 44px;
    color: var(--white);
}

.header-favorites svg,
.actor-card__favorite svg,
.actor-profile__icon-action svg {
    width: 21px;
    height: 21px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.header-favorites:hover,
.header-favorites:focus-visible {
    border-color: var(--gold);
    color: var(--gold);
    outline: none;
}

.header-favorites__count {
    position: absolute;
    top: -6px;
    right: -6px;
    min-width: 19px;
    height: 19px;
    padding: 0 4px;
    border: 2px solid var(--ink);
    border-radius: 999px;
    background: var(--gold);
    color: var(--ink);
    font-size: 10px;
    font-weight: 800;
    line-height: 15px;
    text-align: center;
}

.actor-card__pin {
    right: auto;
    left: 10px;
}

.actor-card__favorite {
    position: absolute;
    z-index: 4;
    top: 10px;
    right: 10px;
    width: 38px;
    height: 38px;
    color: var(--white);
    border-color: rgba(255, 255, 255, .8);
    background: rgba(17, 16, 14, .52);
    backdrop-filter: blur(6px);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-6px) scale(.94);
}

.actor-card:hover .actor-card__favorite,
.actor-card:focus-within .actor-card__favorite,
.actor-card__favorite:focus-visible,
.actor-card__favorite.is-active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: none;
}

.actor-card__favorite:hover,
.actor-card__favorite:focus-visible,
.actor-card__favorite.is-active {
    border-color: var(--gold);
    background: var(--gold);
    color: var(--ink);
    outline: none;
}

.actor-card__favorite:disabled {
    cursor: wait;
}

.actor-profile__topline {
    margin-bottom: 24px;
}

.actor-profile__topline .catalog-breadcrumbs {
    width: 100%;
    margin: 0;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-inline: contain;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
}

.actor-profile__topline .catalog-breadcrumbs::-webkit-scrollbar {
    display: none;
}

.actor-profile__topline .catalog-breadcrumbs ol {
    width: max-content;
    min-width: 100%;
    flex-wrap: nowrap;
}

.actor-profile__topline .catalog-breadcrumbs li {
    flex: 0 0 auto;
    min-width: max-content;
}

.actor-profile__topline .catalog-breadcrumbs .text-link,
.actor-profile__topline .catalog-breadcrumbs__current {
    overflow-wrap: normal;
    white-space: nowrap;
}

.actor-profile__topline .back-link {
    margin-bottom: 0;
}

.actor-profile__title-row {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}

.actor-profile__title-row h1 {
    flex: 1 1 auto;
    min-width: 0;
}

.actor-profile__actions {
    display: inline-flex;
    flex: 0 0 auto;
    gap: 9px;
}

.actor-profile__icon-action {
    width: 46px;
    height: 46px;
    color: var(--white);
    border-color: rgba(255, 255, 255, .36);
}

.actor-profile__icon-action:hover,
.actor-profile__icon-action:focus-visible,
.actor-profile__icon-action.is-active {
    border-color: var(--gold);
    background: var(--gold);
    color: var(--ink);
    outline: none;
}

.favorites-page {
    padding: 72px 0 92px;
}

.favorites-page__header {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 26px;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--line);
}

.favorites-page__header .eyebrow {
    margin: 0 0 9px;
}

.favorites-page__header h1 {
    margin: 0;
    font-family: var(--serif);
    font-size: clamp(42px, 5vw, 64px);
    font-weight: 500;
    letter-spacing: -.04em;
    line-height: 1;
}

.favorites-page__header h1 span {
    color: var(--gold-deep);
    font-size: .48em;
    letter-spacing: 0;
    vertical-align: top;
}

.favorites-page__tools {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
}

.favorites-page__clear {
    color: var(--muted);
    border-color: var(--line);
}

.favorites-page__clear:hover,
.favorites-page__clear:focus-visible {
    color: var(--ink);
    border-color: var(--ink);
}

.ikona-toast {
    position: fixed;
    z-index: 1000;
    right: 20px;
    bottom: 20px;
    max-width: min(360px, calc(100vw - 40px));
    padding: 13px 17px;
    border: 1px solid rgba(240, 194, 62, .72);
    border-radius: 999px;
    background: rgba(17, 16, 14, .96);
    box-shadow: 0 14px 34px rgba(0, 0, 0, .28);
    color: var(--white);
    font-size: 14px;
    font-weight: 700;
    line-height: 1.35;
    opacity: 0;
    pointer-events: none;
    transform: translateY(12px);
    transition: opacity .2s ease, transform .2s ease;
}

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

.favorites-page__expiry {
    max-width: 700px;
    margin: 18px 0 36px;
    color: var(--muted);
    font-size: 14px;
}

.favorites-page__grid {
    margin-top: 34px;
}

.favorites-page__notice {
    max-width: 680px;
    margin: 38px 0;
    padding: 26px 28px;
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: var(--paper);
}

.favorites-page__notice p:first-child {
    margin-top: 0;
}

.favorites-page__notice p:last-child,
.favorites-page__notice .button {
    margin-bottom: 0;
}

.favorites-page__request {
    margin-top: 64px;
}

.favorites-page__request .ikona-participation-request {
    max-width: 920px;
    margin-inline: auto;
}

.ikona-participation-request__selection {
    margin: 0 0 20px;
    color: var(--muted);
    font-size: 14px;
}

@media (hover: none) {
    .actor-card__favorite {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: none;
    }
}

@media (max-width: 1080px) {
    .header-actions {
        grid-column: 2;
        grid-row: 1;
    }

    .actor-card__pin {
        left: 7px;
    }

    .actor-card__favorite {
        top: 7px;
        right: 7px;
        width: 34px;
        height: 34px;
    }

    .actor-card__favorite svg {
        width: 19px;
        height: 19px;
    }
}

@media (max-width: 680px) {
    .site-header__inner {
        grid-template-columns: auto 1fr auto;
    }

    .header-actions {
        grid-column: 3;
    }

    .nav-toggle {
        grid-column: 2;
    }

    .header-favorites {
        width: 40px;
        height: 40px;
    }

    .header-favorites svg {
        width: 20px;
        height: 20px;
    }

    .actor-profile__topline {
        margin-bottom: 20px;
    }

    .actor-profile__title-row {
        flex-wrap: wrap;
        justify-content: center;
        row-gap: 12px;
    }

    .actor-profile__title-row h1 {
        flex-basis: 100%;
    }

    .favorites-page {
        padding: 48px 0 68px;
    }

    .favorites-page__header {
        display: block;
        padding-bottom: 20px;
    }

    .favorites-page__tools {
        margin-top: 20px;
    }

    .favorites-page__tools .button {
        width: 100%;
    }

    .favorites-page__notice {
        margin-top: 28px;
        padding: 22px 20px;
    }
}

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

/* Responsive UX/UI audit fixes, theme 1.3.39. */
.site-nav__account {
    display: none;
}

.hero-search__label {
    display: block;
    margin: 0 0 7px 18px;
    color: #e5dfd3;
    font-size: 13px;
    font-weight: 700;
}

.hero-search:focus-within {
    border-color: var(--gold);
    box-shadow: 0 0 0 3px rgba(244, 197, 66, .25);
}

.hero-search input:focus,
.hero-search input:focus-visible {
    outline: none;
    box-shadow: none;
}

.hero-search button:focus-visible {
    outline: 2px solid var(--gold-soft);
    outline-offset: 2px;
}

.hero-mosaic__badge {
    width: 144px;
    height: 144px;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    place-items: center;
    padding: 12px;
}

.hero-mosaic__badge .hero-mosaic__badge-inner {
    width: 100%;
    min-width: 0;
    max-width: none;
    display: grid;
    place-items: center;
    margin-top: 0;
    font-size: inherit;
    letter-spacing: normal;
    text-align: center;
    text-transform: none;
}

.hero-mosaic__badge strong {
    max-width: 100%;
    font-family: var(--sans);
    font-size: clamp(24px, 2.1vw, 29px);
    font-variant-numeric: tabular-nums;
    font-weight: 850;
    letter-spacing: -.045em;
    line-height: 1;
    white-space: nowrap;
}

.hero-mosaic__badge-inner > span {
    --badge-copy-scale: 1;
    width: 100%;
    max-width: 100%;
    margin-top: 7px;
    font-family: Arial, sans-serif;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .02em;
    line-height: 1.18;
    text-transform: uppercase;
    transform: scaleX(var(--badge-copy-scale));
    transform-origin: center;
}

.hero-mosaic__badge-inner > span > span {
    display: block;
    width: 100%;
    max-width: 100%;
    margin: 0;
    font: inherit;
    letter-spacing: inherit;
    white-space: nowrap;
}

.catalog-filter-toggle {
    width: auto;
    min-width: 46px;
    flex: 0 0 auto;
    grid-template-columns: auto 22px;
    gap: 8px;
    padding: 0 14px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 800;
}

.catalog-filter-toggle__label {
    white-space: nowrap;
}

.catalog-active-filters {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-bottom: 24px;
    padding: 14px 16px;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: var(--paper);
    color: var(--muted);
    font-size: 12px;
}

.catalog-active-filters strong {
    padding: 5px 9px;
    border-radius: 999px;
    background: var(--white);
    color: var(--ink);
    font-weight: 750;
}

.catalog-active-filters a {
    margin-left: auto;
    color: var(--gold-deep);
    font-weight: 800;
}

.ikona-pagination {
    flex-wrap: wrap;
    gap: 8px;
}

.ikona-pagination .page-numbers {
    min-width: 44px;
    height: 44px;
    margin: 0;
}

.actor-profile__hero-grid {
    grid-template-areas:
        "media head"
        "media details";
    column-gap: 80px;
    row-gap: 0;
}

.actor-profile__intro--head {
    grid-area: head;
    min-width: 0;
}

.actor-profile__media {
    grid-area: media;
}

.actor-profile__intro--details {
    grid-area: details;
    min-width: 0;
}

.profile-section-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 18px;
}

.profile-section-nav a {
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    padding: 8px 12px;
    border: 1px solid rgba(255, 255, 255, .25);
    border-radius: 999px;
    color: #eee8dc;
    font-size: 12px;
    font-weight: 750;
    text-decoration: none;
}

.profile-section-nav a:hover,
.profile-section-nav a:focus-visible {
    border-color: var(--gold);
    color: var(--gold-soft);
    outline: none;
}

.actor-facts div,
.actor-facts dd,
.actor-profile__category-block,
.project-card__body {
    min-width: 0;
}

.actor-facts dd,
.project-card h2,
.project-card h3,
.project-card h2 a,
.project-card h3 a {
    overflow-wrap: anywhere;
    word-break: normal;
}

.actor-profile__portrait--empty {
    display: grid;
    place-items: center;
}

.actor-profile__empty-photo {
    position: absolute;
    z-index: 1;
    left: 50%;
    bottom: 22%;
    width: max-content;
    max-width: calc(100% - 32px);
    margin: 0;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(17, 16, 14, .74);
    color: #eee8dc;
    font-size: 13px;
    font-weight: 750;
    text-align: center;
    transform: translateX(-50%);
}

#profile-facts,
#profile-experience,
#profile-photos,
#profile-video,
#profile-projects {
    scroll-margin-top: 24px;
}

@media (max-width: 1080px) {
    .site-header__inner {
        grid-template-columns: auto 1fr auto;
        gap: 14px;
    }

    .nav-toggle {
        grid-column: 2;
        grid-row: 1;
    }

    .header-actions {
        grid-column: 3;
        grid-row: 1;
    }

    .site-nav__account {
        min-height: 46px;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-top: 14px;
        padding: 11px 16px;
        border: 1px solid rgba(244, 197, 66, .5);
        border-radius: 999px;
        color: var(--white);
        font-size: 14px;
        font-weight: 800;
        text-decoration: none;
    }

    .catalog-layout {
        grid-template-areas:
            "heading"
            "filter"
            "results";
        row-gap: 24px;
        padding-top: 42px;
    }

    .archive-hero {
        padding-block: 48px;
    }

    .catalog-filter {
        display: none;
    }

    .catalog-filter.is-open {
        display: block;
    }

    .catalog-filter input,
    .catalog-filter select {
        min-height: 46px;
        font-size: 16px;
    }

    .catalog-filter label > span,
    .catalog-filter legend {
        font-size: 12px;
    }

    .catalog-filter-toggle {
        display: inline-grid;
    }

    .actor-profile__hero-grid {
        column-gap: 36px;
        row-gap: 0;
    }
}

@media (max-width: 820px) {
    .actor-profile__hero-grid {
        grid-template-columns: minmax(0, 1fr);
        grid-template-areas:
            "head"
            "media"
            "details";
        gap: 30px;
    }

    .actor-profile__media {
        width: min(100%, 430px);
        margin-inline: auto;
    }

    .actor-facts {
        grid-template-columns: 1fr;
    }

    .actor-facts .actor-facts__item--wide {
        grid-column: auto;
    }
}

@media (max-width: 680px) {
    .profile-video__grid,
    .profile-video__grid--single {
        grid-template-columns: minmax(0, 1fr);
        gap: 18px;
    }

    .profile-video__embed {
        border-radius: 14px;
    }

    .hero-search__label {
        margin-left: 0;
        text-align: center;
    }

    .hero__actions {
        justify-content: center;
    }

    .hero__actions .button,
    .actor-profile__intro--details > .button,
    .cta-band .button {
        width: 100%;
    }

    .hero-mosaic__badge {
        width: 112px;
        height: 112px;
        padding: 10px;
    }

    .hero-mosaic__badge strong {
        font-size: 23px;
    }

    .hero-mosaic__badge-inner > span {
        font-size: 8px;
    }

    .talent-category-cloud__items {
        flex-wrap: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
        padding-bottom: 6px;
        scroll-padding-inline: 1px;
        scroll-snap-type: inline proximity;
    }

    .archive-hero {
        padding-block: 42px;
    }

    .talent-category-cloud__items > li {
        flex: 0 0 auto;
        scroll-snap-align: start;
    }

    .talent-category-cloud a {
        width: auto;
        min-height: 44px;
        justify-content: center;
        padding: 9px 14px;
        text-align: center;
        white-space: nowrap;
    }

    .catalog-filter input,
    .catalog-filter select {
        min-height: 46px;
        font-size: 16px;
    }

    .catalog-filter label > span,
    .catalog-filter legend {
        font-size: 12px;
    }

    .range-fields label > span {
        top: 13px;
        font-size: 12px;
    }

    .catalog-results__heading {
        grid-template-columns: minmax(0, 1fr) auto;
        row-gap: 10px;
    }

    .catalog-results__heading > p {
        display: block;
        grid-column: 1 / -1;
        grid-row: 3;
        margin: 0;
        font-size: 13px;
    }

    .catalog-active-filters {
        margin-bottom: 18px;
        padding: 12px;
    }

    .catalog-active-filters a {
        width: 100%;
        min-height: 44px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        margin-left: 0;
    }

    .actor-profile__hero {
        padding-block: 38px 54px;
    }

    .actor-profile__hero-grid {
        gap: 26px;
    }

    .actor-profile__intro h1 {
        text-align: center;
    }

    .actor-profile__location,
    .profile-section-nav,
    .actor-profile__categories {
        justify-content: center;
    }

    .profile-section-nav a {
        min-height: 44px;
    }

    .actor-profile__location {
        text-align: center;
    }

    .actor-facts dt {
        font-size: 12px;
    }

    .actor-facts dd {
        font-size: 18px;
    }

    .privacy-note,
    .actor-profile__category-block > p {
        max-width: none;
        text-align: center;
    }

    .actor-profile__portrait--empty {
        min-height: 280px;
        aspect-ratio: 4 / 3;
    }

    .profile-projects .project-grid {
        grid-template-columns: 1fr;
    }

    .profile-projects .project-card__body {
        padding: 20px;
    }

    .profile-projects .project-card h3 {
        font-size: 24px;
    }

    .actor-card__favorite,
    .header-favorites {
        width: 44px;
        height: 44px;
    }

    .cta-band__inner {
        align-items: center;
        text-align: center;
    }
}

@media (max-width: 480px) {
    .ikona-pagination {
        gap: 7px;
    }

    .ikona-pagination .page-numbers {
        min-width: 42px;
        height: 44px;
        padding-inline: 10px;
    }

    .ikona-pagination .prev,
    .ikona-pagination .next {
        flex: 1 1 calc(50% - 4px);
    }
}
