:root {
  color-scheme:dark;
  --ink:#071414;
  --paper:#f1f0e8;
  --sage:#bfd5c5;
  --brass:#c8af82;
  --muted:#a2b3ac;
  --line:rgba(191,213,197,.18);
  font-family:Arial,Helvetica,sans-serif;
  background:var(--ink);
  color:var(--paper);
}
* {
  box-sizing:border-box;
}
body {
  margin:0;
  min-width:320px;
}
body:before {
  content:"";
  position:fixed;
  inset:0;
  z-index:-2;
  background:linear-gradient(180deg,rgba(7,20,20,.79),#071414 85%),url('/error/assets/images/world-fallback.webp') center top/cover no-repeat;
  opacity:.7;
  pointer-events:none;
}
a {
  color:inherit;
  text-decoration:none;
}
button,input,select {
  font:inherit;
}
button,a,input,select,summary {
  -webkit-tap-highlight-color:transparent;
}
button {
  color:inherit;
  cursor:pointer;
}
button:disabled {
  opacity:.45;
  cursor:wait;
}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible {
  outline:2px solid var(--sage);
  outline-offset:5px;
}
button {
  border:0;
}
a,button {
  touch-action:manipulation;
}
img {
  max-width:100%;
  display:block;
}
svg {
  width:20px;
  height:20px;
  flex-shrink:0;
}
h1,h2,h3,p {
  margin:0;
}
h1,h2,h3 {
  font-weight:400;
}
button {
  background:none;
}
.shell {
  width:min(1440px,calc(100% - 112px));
  margin-inline:auto;
}
.topbar {
  height:99px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  border-bottom:1px solid var(--line);
  gap:28px;
}
.brand {
  display:flex;
  align-items:center;
  gap:15px;
  flex-shrink:0;
}
.brand-mark {
  border:1px solid rgba(200,175,130,.6);
  height:41px;
  width:41px;
  display:grid;
  place-items:center;
  border-radius:50%;
  font-family:Georgia,serif;
  color:var(--brass);
  font-size:21px;
  letter-spacing:-4px;
  padding-right:4px;
}
.brand-name {
  font-size:13px;
  font-weight:600;
  letter-spacing:3px;
  line-height:1.5;
}
.brand-name small {
  display:block;
  font-size:8px;
  letter-spacing:4.3px;
  color:var(--muted);
  font-weight:400;
}
.header-right {
  display:flex;
  align-items:center;
  gap:36px;
  font-size:10px;
  letter-spacing:1.6px;
  text-transform:uppercase;
}
.header-right a:hover {
  color:var(--brass);
}
.language-switch {
  border:1px solid var(--line);
  border-radius:30px;
  padding:9px 13px;
  display:flex;
  gap:10px;
  align-items:center;
}
.language-switch a[aria-current] {
  color:var(--paper);
}
.language-switch a {
  color:var(--muted);
}
.language-switch span {
  width:1px;
  height:11px;
  background:var(--line);
}
.return-link {
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.return-link svg {
  width:13px;
}
.nav-categories {
  display:flex;
  gap:29px;
  overflow:auto;
  scrollbar-width:none;
  border-bottom:1px solid var(--line);
  min-height:62px;
  align-items:stretch;
  white-space:nowrap;
}
.nav-categories a {
  position:relative;
  display:flex;
  align-items:center;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:1.7px;
  color:var(--muted);
}
.nav-categories a:hover,.nav-categories a[aria-current] {
  color:var(--paper);
}
.nav-categories a[aria-current]:after {
  content:"";
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  height:2px;
  background:var(--brass);
}
.eyebrow {
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:3px;
  color:var(--brass);
  display:flex;
  align-items:center;
  gap:10px;
}
.eyebrow:before {
  content:"";
  width:6px;
  height:6px;
  background:var(--brass);
  border-radius:50%;
  box-shadow:0 0 18px #c8af8266;
}
.hero {
  padding:67px 0 60px;
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(250px,.65fr);
  gap:50px;
  position:relative;
}
.hero:after {
  content:"";
  position:absolute;
  right:30px;
  top:35px;
  width:320px;
  height:320px;
  border:1px solid rgba(191,213,197,.07);
  border-radius:50%;
  pointer-events:none;
}
.hero h1 {
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(62px,7vw,105px);
  line-height:.94;
  letter-spacing:-5px;
  margin-top:28px;
  text-transform:uppercase;
}
.hero h1 em {
  font-weight:400;
  font-size:.77em;
  text-transform:none;
  font-style:italic;
  color:var(--sage);
  display:block;
  letter-spacing:-3px;
  margin-top:8px;
}
.hero-copy {
  max-width:470px;
  font-size:14px;
  line-height:1.8;
  color:var(--muted);
  margin-top:28px;
}
.hero-aside {
  display:flex;
  flex-direction:column;
  justify-content:end;
  align-items:start;
  padding:0 8px 4px 32px;
  position:relative;
  z-index:1;
}
.hero-symbol {
  font-family:Georgia,serif;
  font-size:66px;
  color:var(--sage);
  font-weight:400;
  line-height:1;
  margin-bottom:25px;
}
.hero-aside p {
  font-size:12px;
  line-height:1.9;
  color:var(--muted);
  max-width:270px;
}
.text-link {
  display:inline-flex;
  align-items:center;
  gap:20px;
  font-size:10px;
  letter-spacing:2px;
  text-transform:uppercase;
  border-bottom:1px solid var(--brass);
  padding:14px 0 10px;
  margin-top:13px;
}
.text-link svg {
  width:15px;
}
.section-kicker {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:20px 0;
  border-top:1px solid var(--line);
  font-size:10px;
  letter-spacing:2px;
  text-transform:uppercase;
  gap:15px;
}
.section-kicker .muted {
  font-size:9px;
  letter-spacing:1.2px;
}
.muted {
  color:var(--muted);
}
.demo-notice {
  display:flex;
  gap:14px;
  align-items:start;
  border:1px solid rgba(200,175,130,.28);
  background:rgba(200,175,130,.05);
  padding:16px 20px;
  margin:0 0 28px;
  color:#cfbfa4;
  font-size:12px;
  line-height:1.65;
}
.demo-notice svg {
  width:17px;
  margin-top:2px;
}
.demo-notice strong {
  font-weight:600;
  display:block;
  color:#e2d7c0;
}
.demo-notice p {
  max-width:940px;
}
.catalog {
  display:grid;
  grid-template-columns:208px minmax(0,1fr);
  gap:36px;
  padding-bottom:70px;
}
.filter-panel {
  align-self:start;
  border-top:1px solid var(--line);
}
.filter-top {
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
  padding:23px 0;
  font-size:10px;
  letter-spacing:2px;
  text-transform:uppercase;
}
.reset {
  font-size:10px;
  letter-spacing:.3px;
  color:var(--muted);
  padding:8px 0;
  text-decoration:underline;
  text-underline-offset:3px;
}
.filter-group {
  border-top:1px solid var(--line);
  padding-bottom:19px;
}
.filter-group summary {
  list-style:none;
  cursor:pointer;
  font-size:11px;
  padding:20px 0;
  display:flex;
  justify-content:space-between;
  gap:10px;
}
.filter-group summary::-webkit-details-marker {
  display:none;
}
.filter-group summary:after {
  content:'+';
  color:var(--brass);
}
.filter-group[open] summary:after {
  content:'−';
}
.field {
  display:block;
  margin-bottom:13px;
  font-size:10px;
  color:var(--muted);
}
.field input,.field select {
  display:block;
  margin-top:7px;
  width:100%;
  height:39px;
  background:#0d1d1b;
  border:1px solid var(--line);
  border-radius:0;
  color:var(--paper);
  padding:0 10px;
  font-size:11px;
  min-width:0;
}
.field input::placeholder {
  color:#738b80;
}
.field-row {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.check-option {
  display:flex;
  gap:9px;
  align-items:center;
  font-size:11px;
  color:var(--muted);
  margin:11px 0;
  cursor:pointer;
}
.check-option input {
  width:14px;
  height:14px;
  margin:0;
  accent-color:var(--sage);
  cursor:pointer;
}
.catalog-toolbar {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  padding-bottom:21px;
  min-height:74px;
}
.searchbox {
  display:flex;
  align-items:center;
  gap:11px;
  flex:1;
  border-bottom:1px solid var(--line);
  padding:11px 0;
  max-width:320px;
  color:var(--sage);
}
.searchbox svg {
  width:17px;
}
.searchbox input {
  background:none;
  border:0;
  color:var(--paper);
  width:100%;
  font-size:12px;
  outline:none;
  padding:3px 0;
  min-width:0;
}
.searchbox input::placeholder {
  color:var(--muted);
}
.result-count {
  font-size:10px;
  letter-spacing:1px;
  color:var(--muted);
}
.mobile-filter {
  display:none;
  border:1px solid var(--line);
  padding:12px;
  font-size:10px;
  gap:8px;
  align-items:center;
}
.sort-select {
  border:0;
  background:transparent;
  color:var(--muted);
  font-size:10px;
  max-width:130px;
  padding:8px 0;
}
.sort-select option {
  background:var(--ink);
}
.talent-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:31px 21px;
}
.talent-card {
  min-width:0;
  perspective:900px;
  position:relative;
}
.card-visual {
  display:block;
  position:relative;
  aspect-ratio:3/4;
  overflow:hidden;
  background:#132c27;
  transform-style:preserve-3d;
  transition:transform .4s ease,box-shadow .4s ease;
  will-change:auto;
}
.card-visual:after {
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,transparent 70%,#05120d55);
  border:1px solid #c7dbc91a;
}
.card-visual img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .8s cubic-bezier(.2,.7,.2,1);
}
.talent-card:hover .card-visual {
  transform:perspective(1000px) rotateY(-2deg) translateY(-4px);
  box-shadow:10px 18px 45px #0004;
}
.talent-card:hover .card-visual img {
  transform:scale(1.045);
}
.demo-badge {
  position:absolute;
  top:12px;
  right:12px;
  font-size:8px;
  letter-spacing:1.5px;
  text-transform:uppercase;
  background:#091712b8;
  backdrop-filter:blur(8px);
  padding:7px 9px;
  color:#e9e6d9;
  border:1px solid #e9e6d922;
  z-index:1;
}
.card-index {
  position:absolute;
  bottom:15px;
  left:15px;
  font-family:Georgia,serif;
  font-size:19px;
  color:#efeee2;
  z-index:1;
}
.card-open {
  position:absolute;
  bottom:13px;
  right:13px;
  display:grid;
  place-items:center;
  width:33px;
  height:33px;
  border-radius:50%;
  border:1px solid #d3d9c95c;
  background:#07141455;
  z-index:1;
}
.card-open svg {
  width:14px;
}
.card-heading {
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:6px;
  margin-top:19px;
}
.card-heading h3 {
  font-family:Georgia,serif;
  font-size:26px;
  letter-spacing:-.5px;
  text-transform:uppercase;
}
.card-heading span {
  font-size:9px;
  color:var(--muted);
}
.card-role {
  font-size:10px;
  letter-spacing:.7px;
  color:var(--sage);
  margin-top:8px;
}
.card-facts {
  display:flex;
  justify-content:space-between;
  gap:10px;
  border-top:1px solid var(--line);
  margin-top:14px;
  padding-top:13px;
  font-size:10px;
  line-height:1.65;
  color:var(--muted);
}
.card-facts span {
  display:block;
  color:var(--paper);
  font-size:10px;
  margin-top:2px;
}
.card-facts>div:last-child {
  text-align:right;
}
.card-actions {
  display:flex;
  gap:12px;
  justify-content:space-between;
  margin-top:15px;
  font-size:8px;
  letter-spacing:1.1px;
  text-transform:uppercase;
}
.card-actions a {
  padding:9px 0;
  border-bottom:1px solid var(--line);
}
.card-actions a:hover {
  color:var(--brass);
  border-color:var(--brass);
}
.card-actions .book-link {
  color:var(--brass);
}
.empty-state {
  grid-column:1/-1;
  text-align:center;
  padding:75px 25px;
  border:1px solid var(--line);
}
.empty-state h2 {
  font-family:Georgia,serif;
  font-size:34px;
  margin-bottom:16px;
}
.empty-state p {
  font-size:13px;
  color:var(--muted);
  line-height:1.8;
  max-width:450px;
  margin:auto;
}
.button {
  display:inline-flex;
  justify-content:center;
  align-items:center;
  gap:18px;
  font-size:10px;
  letter-spacing:1.6px;
  text-transform:uppercase;
  padding:17px 24px;
  border:1px solid var(--line);
  background:transparent;
  color:var(--paper);
  min-height:48px;
}
.button:hover {
  border-color:var(--brass);
  background:#c8af820c;
}
.button.primary {
  background:var(--sage);
  color:var(--ink);
  border-color:var(--sage);
}
.button svg {
  width:16px;
}
.empty-state .button {
  margin-top:22px;
}
.pagination {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:25px;
  border-top:1px solid var(--line);
  padding-top:25px;
  margin-top:35px;
  font-size:11px;
  color:var(--muted);
}
.pagination button {
  padding:12px;
  border:1px solid var(--line);
  color:var(--paper);
}
.pagination button:disabled {
  cursor:default;
}
.load-state {
  font-size:13px;
  color:var(--muted);
  padding:70px 20px;
  text-align:center;
  grid-column:1/-1;
}
.load-state:before {
  content:'';
  display:block;
  margin:0 auto 20px;
  border-radius:50%;
  width:24px;
  height:24px;
  border:1px solid var(--line);
  border-top-color:var(--brass);
  animation:rotate 1s linear infinite;
}
.brief-banner {
  border-block:1px solid var(--line);
  padding:58px 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
}
.brief-banner h2 {
  font-family:Georgia,serif;
  font-size:clamp(29px,3vw,43px);
  line-height:1.2;
  letter-spacing:-1px;
  margin-top:14px;
}
.brief-banner p {
  font-size:12px;
  color:var(--muted);
  margin-top:14px;
  line-height:1.8;
}
.footer {
  padding:37px 0 110px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:25px;
  font-size:9px;
  letter-spacing:1px;
  color:var(--muted);
}
.footer p {
  line-height:1.8;
}
.footer-links {
  display:flex;
  gap:26px;
  align-items:center;
}
.floating-book {
  position:fixed;
  right:27px;
  bottom:25px;
  display:flex;
  align-items:center;
  gap:12px;
  padding:15px 20px;
  color:var(--paper);
  border:1px solid #bdd4c44d;
  background:#10271fef;
  backdrop-filter:blur(18px);
  box-shadow:0 6px 30px #0005;
  border-radius:4px;
  z-index:30;
}
.floating-book svg {
  width:20px;
  color:var(--sage);
}
.floating-book span {
  font-size:10px;
  letter-spacing:1.6px;
  display:block;
}
.floating-book small {
  font-size:9px;
  color:var(--muted);
  letter-spacing:.6px;
  display:block;
  margin-top:5px;
}
.skip-link {
  position:fixed;
  top:10px;
  left:10px;
  padding:12px 18px;
  background:var(--paper);
  color:var(--ink);
  z-index:100;
  transform:translateY(-200%);
}
.skip-link:focus {
  transform:translateY(0);
}
.sr-only {
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}
[hidden] {
  display:none!important;
}
.no-script {
  padding:30px;
  border:1px solid var(--line);
  line-height:1.8;
}
.portal-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
  padding-bottom:60px;
}
.portal-card {
  min-height:270px;
  position:relative;
  overflow:hidden;
  border:1px solid #bcd1be25;
  background:linear-gradient(140deg,#1f393170,#0a191ce6);
  padding:29px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  transition:transform .35s,border-color .35s;
  isolation:isolate;
}
.portal-card:before,.portal-card:after {
  content:'';
  position:absolute;
  right:-50px;
  top:-65px;
  width:245px;
  height:245px;
  border:1px solid #c9dcc126;
  border-radius:50%;
  z-index:-1;
  transition:transform .8s;
}
.portal-card:after {
  right:-33px;
  top:-48px;
  width:211px;
  height:211px;
  border-color:#c9dcc111;
}
.portal-card:hover {
  transform:translateY(-5px) rotateX(2deg);
  border-color:#bcd1be77;
}
.portal-card:hover:before {
  transform:translate(-18px,18px);
}
.portal-card:nth-child(2) {
  background:linear-gradient(140deg,#4b3b3760,#0a191ce6);
}
.portal-card:nth-child(3) {
  background:linear-gradient(140deg,#37424b70,#0a191ce6);
}
.portal-card:nth-child(4) {
  background:linear-gradient(140deg,#3b4b3b70,#0a191ce6);
}
.portal-card:nth-child(5) {
  background:linear-gradient(140deg,#39364b70,#0a191ce6);
}
.portal-card:nth-child(6) {
  background:linear-gradient(140deg,#504c3970,#0a191ce6);
}
.portal-number {
  color:var(--brass);
  font-size:10px;
  letter-spacing:2px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.portal-number svg {
  width:19px;
}
.portal-card h2 {
  font-family:Georgia,serif;
  font-size:39px;
  margin-bottom:12px;
  letter-spacing:-1px;
}
.portal-card p {
  font-size:11px;
  color:var(--muted);
  line-height:1.7;
  max-width:240px;
}
.hub-hero {
  padding:87px 0 79px;
}
.hub-hero h1 {
  font-size:clamp(68px,8.6vw,130px);
}
.hub-hero .hero-aside {
  justify-content:center;
}
.orbit-emblem {
  width:174px;
  height:174px;
  display:grid;
  place-items:center;
  position:relative;
  margin:0 0 29px 30px;
  border:1px solid #bfd5c52b;
  border-radius:50%;
  font-family:Georgia,serif;
  color:var(--sage);
  font-size:55px;
  letter-spacing:-12px;
  padding-right:10px;
}
.orbit-emblem:before {
  content:'';
  position:absolute;
  inset:18px -28px;
  border:1px solid #c8af8255;
  transform:rotate(-35deg);
  border-radius:50%;
  animation:orbit 30s linear infinite;
}
.orbit-emblem:after {
  content:'';
  width:5px;
  height:5px;
  background:var(--brass);
  position:absolute;
  top:16px;
  left:30px;
  border-radius:50%;
  box-shadow:0 0 25px var(--brass);
}
.secondary-category {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:25px;
  border-top:1px solid var(--line);
  padding:27px 0;
  margin-top:-30px;
  margin-bottom:35px;
}
.secondary-category h2 {
  font-family:Georgia,serif;
  font-size:28px;
}
.secondary-category p {
  font-size:12px;
  color:var(--muted);
  margin-top:8px;
}
.profile-breadcrumb {
  padding:30px 0;
  color:var(--muted);
  display:flex;
  gap:13px;
  align-items:center;
  font-size:10px;
  letter-spacing:1px;
}
.profile-layout {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:70px;
  padding:25px 0 60px;
  align-items:start;
}
.profile-photo {
  aspect-ratio:3/4;
  max-height:760px;
  background:#16312a;
  position:relative;
  overflow:hidden;
}
.profile-photo img {
  width:100%;
  height:100%;
  object-fit:cover;
}
.profile-photo .demo-badge {
  font-size:9px;
}
.profile-summary {
  padding-top:20px;
}
.profile-summary h1 {
  font-family:Georgia,serif;
  font-size:clamp(55px,5.5vw,87px);
  line-height:1.08;
  letter-spacing:-3px;
  margin:27px 0 16px;
  text-transform:uppercase;
  overflow-wrap:anywhere;
}
.profile-role {
  font-size:14px;
  color:var(--sage);
  line-height:1.7;
}
.profile-location {
  font-size:11px;
  letter-spacing:1px;
  color:var(--muted);
  margin-top:13px;
}
.availability {
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin-top:25px;
  color:var(--sage);
  font-size:10px;
}
.availability:before {
  content:'';
  width:5px;
  height:5px;
  border-radius:50%;
  background:var(--brass);
}
.profile-facts {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
  margin:31px 0;
  padding:25px 0;
  border-block:1px solid var(--line);
}
.profile-facts dt {
  font-size:9px;
  letter-spacing:1px;
  text-transform:uppercase;
  color:var(--muted);
  margin-bottom:9px;
}
.profile-facts dd {
  margin:0;
  font-size:12px;
  line-height:1.6;
}
.profile-cta {
  display:flex;
  flex-wrap:wrap;
  gap:13px;
  margin-bottom:30px;
}
.profile-bio {
  font-size:13px;
  line-height:1.9;
  color:var(--muted);
  white-space:pre-line;
}
.profile-tabs {
  display:flex;
  gap:30px;
  border-block:1px solid var(--line);
  padding:22px 0;
  margin-bottom:37px;
  overflow:auto;
  white-space:nowrap;
  font-size:10px;
  letter-spacing:1.7px;
  text-transform:uppercase;
  color:var(--muted);
}
.profile-tabs a:hover {
  color:var(--brass);
}
.profile-section {
  scroll-margin-top:25px;
  padding:10px 0 45px;
}
.profile-section h2 {
  font-family:Georgia,serif;
  font-size:36px;
  letter-spacing:-.6px;
  margin-bottom:25px;
}
.profile-section .body-text {
  font-size:13px;
  color:var(--muted);
  line-height:1.9;
  white-space:pre-line;
  max-width:760px;
}
.gallery-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
}
.gallery-item {
  padding:0;
  position:relative;
  aspect-ratio:3/4;
  overflow:hidden;
}
.gallery-item img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .4s;
}
.gallery-item:hover img {
  transform:scale(1.04);
}
.gallery-item span {
  position:absolute;
  right:14px;
  bottom:14px;
  background:#071414ad;
  border:1px solid #bfd5c544;
  width:35px;
  height:35px;
  display:grid;
  place-items:center;
}
.media-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
}
.media-grid video {
  width:100%;
  max-height:420px;
  background:#03100c;
  aspect-ratio:16/9;
  border:1px solid var(--line);
}
.media-link {
  padding:25px;
  border:1px solid var(--line);
  font-size:12px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:15px;
  background:#10251d66;
}
.media-link small {
  display:block;
  font-size:10px;
  color:var(--muted);
  margin-top:9px;
}
.media-empty {
  border:1px solid var(--line);
  padding:25px;
  font-size:12px;
  color:var(--muted);
  line-height:1.8;
}
.profile-columns {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:60px;
}
.tags {
  display:flex;
  flex-wrap:wrap;
  gap:9px;
}
.tag {
  border:1px solid var(--line);
  padding:10px 14px;
  font-size:11px;
  color:var(--sage);
}
.social-links {
  display:flex;
  flex-wrap:wrap;
  gap:14px;
}
.social-links a {
  display:flex;
  gap:15px;
  align-items:center;
  font-size:11px;
  border:1px solid var(--line);
  padding:13px 18px;
}
.social-links svg {
  width:13px;
}
.lightbox {
  padding:25px;
  border:1px solid var(--line);
  background:#071414;
  max-width:95vw;
  max-height:95vh;
  width:min(850px,95vw);
  color:var(--paper);
}
.lightbox::backdrop {
  background:#010805e8;
  backdrop-filter:blur(10px);
}
.lightbox-head {
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:center;
  margin-bottom:18px;
  font-size:12px;
}
.lightbox-head button {
  border:1px solid var(--line);
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
}
.lightbox img {
  max-height:75vh;
  max-width:100%;
  margin:auto;
  object-fit:contain;
}
.noscript-message {
  padding:30px;
  margin:20px 0;
  border:1px solid var(--line);
}
@keyframes rotate {
  to {
    transform:rotate(360deg);
  }
}
@keyframes orbit {
  to {
    transform:rotate(325deg);
  }
}
@media(min-width:1500px) {
  .hero h1 {
    font-size:110px;
  }
  .hub-hero h1 {
    font-size:130px;
  }
}
@media(max-width:1150px) {
  .shell {
    width:calc(100% - 64px);
  }
  .catalog {
    grid-template-columns:185px minmax(0,1fr);
    gap:26px;
  }
  .talent-grid {
    gap:28px 16px;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .hero {
    gap:22px;
  }
  .hero h1 {
    letter-spacing:-3px;
  }
  .nav-categories {
    gap:23px;
  }
  .header-right {
    gap:22px;
  }
  .card-heading h3 {
    font-size:25px;
  }
  .profile-layout {
    gap:40px;
  }
  .portal-card {
    min-height:240px;
    padding:24px;
  }
  .portal-card h2 {
    font-size:33px;
  }
}
@media(max-width:780px) {
  .shell {
    width:calc(100% - 40px);
  }
  .topbar {
    height:83px;
    gap:12px;
  }
  .brand {
    gap:10px;
  }
  .brand-name {
    font-size:10px;
    letter-spacing:2px;
  }
  .brand-name small {
    font-size:7px;
    letter-spacing:2.8px;
  }
  .brand-mark {
    width:34px;
    height:34px;
    font-size:18px;
  }
  .header-right {
    gap:14px;
  }
  .header-contact,.return-link span {
    display:none;
  }
  .return-link svg {
    width:17px;
  }
  .language-switch {
    padding:8px 10px;
    font-size:9px;
  }
  .nav-categories {
    min-height:55px;
    gap:24px;
    margin-right:-20px;
    padding-right:20px;
  }
  .nav-categories a {
    font-size:9px;
  }
  .hero {
    padding:45px 0 37px;
    grid-template-columns:1fr;
  }
  .hero h1 {
    font-size:clamp(42px,10.2vw,79px);
    letter-spacing:-2.5px;
    margin-top:25px;
  }
  .hero h1 em {
    letter-spacing:-2px;
  }
  .hero-copy {
    font-size:13px;
    max-width:440px;
    margin-top:22px;
  }
  .hero:after {
    width:200px;
    height:200px;
    right:0;
    top:35px;
  }
  .hero-aside {
    padding:0;
    display:none;
  }
  .hub-hero {
    padding:60px 0 46px;
  }
  .hub-hero h1 {
    font-size:clamp(70px,13vw,100px);
  }
  .eyebrow {
    font-size:9px;
    letter-spacing:2px;
  }
  .section-kicker {
    font-size:9px;
    padding:19px 0;
  }
  .section-kicker .muted {
    font-size:8px;
    letter-spacing:.5px;
  }
  .demo-notice {
    padding:13px 15px;
    font-size:11px;
    margin-bottom:19px;
    gap:10px;
  }
  .catalog {
    grid-template-columns:1fr;
    gap:0;
    padding-bottom:45px;
  }
  .filter-panel {
    display:none;
    padding:0 18px;
    background:#10221d;
    border:1px solid var(--line);
    margin-bottom:20px;
  }
  .filter-panel.is-open {
    display:block;
  }
  .catalog-toolbar {
    flex-wrap:wrap;
    padding-bottom:21px;
    padding-top:5px;
    gap:15px;
  }
  .searchbox {
    max-width:none;
    flex-basis:calc(100% - 115px);
  }
  .mobile-filter {
    display:flex;
  }
  .mobile-filter svg {
    width:14px;
    height:14px;
  }
  .result-count {
    font-size:9px;
  }
  .sort-select {
    margin-left:auto;
  }
  .talent-grid {
    gap:28px 14px;
  }
  .card-heading {
    display:block;
    margin-top:16px;
  }
  .card-heading h3 {
    font-size:24px;
    letter-spacing:-.5px;
  }
  .card-heading>span {
    display:block;
    font-size:9px;
    margin-top:5px;
  }
  .card-role {
    font-size:9px;
    line-height:1.6;
    margin-top:6px;
  }
  .card-facts {
    display:block;
    font-size:9px;
    margin-top:12px;
    padding-top:11px;
  }
  .card-facts>div:last-child {
    text-align:left;
    margin-top:6px;
  }
  .card-facts span {
    display:inline;
    font-size:9px;
    margin-left:4px;
  }
  .card-actions {
    font-size:7px;
    letter-spacing:.6px;
    gap:8px;
    flex-wrap:wrap;
    margin-top:9px;
  }
  .demo-badge {
    top:9px;
    right:8px;
    font-size:6px;
    letter-spacing:1px;
    padding:6px;
  }
  .card-open {
    width:27px;
    height:27px;
    bottom:10px;
    right:9px;
  }
  .card-index {
    left:10px;
    bottom:11px;
    font-size:17px;
  }
  .brief-banner {
    padding:37px 0;
    display:block;
  }
  .brief-banner h2 {
    font-size:32px;
  }
  .brief-banner .button {
    margin-top:24px;
  }
  .footer {
    display:block;
    padding:29px 0 108px;
  }
  .footer-links {
    margin-top:20px;
    gap:24px;
  }
  .floating-book {
    right:17px;
    bottom:17px;
    padding:12px 15px;
    gap:10px;
  }
  .floating-book span {
    font-size:9px;
  }
  .floating-book small {
    font-size:8px;
  }
  .portal-grid {
    grid-template-columns:1fr 1fr;
    gap:14px;
    padding-bottom:48px;
  }
  .portal-card {
    min-height:218px;
    padding:19px;
  }
  .portal-card h2 {
    font-size:29px;
  }
  .portal-card p {
    font-size:10px;
  }
  .portal-card:before {
    width:170px;
    height:170px;
  }
  .portal-card:after {
    width:141px;
    height:141px;
  }
  .portal-number {
    font-size:9px;
  }
  .secondary-category {
    margin-top:-20px;
  }
  .secondary-category h2 {
    font-size:23px;
  }
  .secondary-category p {
    font-size:11px;
  }
  .secondary-category .text-link {
    font-size:8px;
    gap:7px;
    white-space:nowrap;
  }
  .profile-breadcrumb {
    padding:24px 0;
    font-size:9px;
    flex-wrap:wrap;
  }
  .profile-layout {
    grid-template-columns:1fr;
    gap:28px;
    padding:0 0 35px;
  }
  .profile-photo {
    max-height:650px;
  }
  .profile-summary {
    padding-top:3px;
  }
  .profile-summary h1 {
    font-size:60px;
    margin-top:20px;
  }
  .profile-tabs {
    gap:24px;
    margin-bottom:26px;
  }
  .profile-columns {
    grid-template-columns:1fr;
    gap:0;
  }
  .profile-section h2 {
    font-size:30px;
  }
  .gallery-grid {
    grid-template-columns:1fr 1fr;
    gap:13px;
  }
  .media-grid {
    grid-template-columns:1fr;
  }
  .profile-facts {
    gap:21px 12px;
  }
  .lightbox {
    padding:15px;
  }
}
@media(max-width:370px) {
  .nav-categories {
    margin-right:-15px;
    padding-right:15px;
  }
  .shell {
    width:calc(100% - 30px);
  }
  .brand-name {
    font-size:9px;
  }
  .header-right {
    gap:9px;
  }
  .hero h1 {
    font-size:39px;
  }
  .hub-hero h1 {
    font-size:63px;
  }
  .portal-card {
    padding:15px;
    min-height:220px;
  }
  .portal-card h2 {
    font-size:25px;
  }
  .card-heading h3 {
    font-size:21px;
  }
}
@media(prefers-reduced-motion:reduce) {
  *,*:before,*:after {
    animation:none!important;
    transition:none!important;
    scroll-behavior:auto!important;
  }
  .talent-card:hover .card-visual,.talent-card:hover .card-visual img,.portal-card:hover,.portal-card:hover:before {
    transform:none;
  }
}

/* Premium campaign direction — original midnight/sage universe, with warm metallic light. */
:root {
  --ink: #080f0e;
  --paper: #f2eee5;
  --sage: #c0cdc0;
  --brass: #d3b487;
  --muted: #a4afa7;
  --line: rgba(202, 214, 192, .17);
  background: var(--ink);
}
html { scroll-behavior: smooth; scroll-padding-top: 28px; }
body { overflow-x: clip; }
body::before {
  opacity: .64;
  background:
    radial-gradient(ellipse at 75% 20%, #304e3633, transparent 62%),
    linear-gradient(180deg, #080f0e91, #080f0eed 90%),
    url('/error/assets/images/world-fallback.webp') center top / cover no-repeat;
}
body::after {
  content: '';
  position: fixed;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  opacity: .18;
  background-image: radial-gradient(#d2c8a3 0.6px, transparent .9px), radial-gradient(#cbdacb .7px, transparent 1px);
  background-size: 211px 191px, 337px 277px;
  background-position: 14px 23px, 117px 173px;
}
.shell { width: min(1440px, calc(100% - 100px)); }
.topbar { height: 97px; }
.brand { gap: 11px; }
.brand-logo { width: 60px; height: 60px; object-fit: cover; mix-blend-mode: screen; }
.brand-name { letter-spacing: 3.3px; font-weight: 400; font-size: 12px; }
.brand-name small { letter-spacing: 4.9px; font-size: 8px; margin-top: 2px; color: var(--brass); }
.header-right { font-size: 9px; gap: 29px; }
.header-contact { display: flex; gap: 13px; align-items: center; }
.header-contact svg { width: 13px; }
.nav-categories { min-height: 55px; justify-content: space-between; gap: 24px; }
.nav-categories a { font-size: 9px; letter-spacing: 1.4px; }
.nav-categories a:first-child { color: var(--brass); }
.language-switch a { padding: 3px 1px; }
.hero::after { display: none; }
.hero { isolation: isolate; }
.hero .hero-content { position: relative; z-index: 3; }
.hero h1 { font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.hub-hero {
  min-height: 653px;
  padding: 70px 0 58px;
  grid-template-columns: 1fr 1fr;
  gap: 30px;
  align-items: center;
}
.hub-hero h1 {
  font-size: clamp(72px, 7.9vw, 120px);
  line-height: .88;
  margin: 30px 0 0;
  letter-spacing: -5px;
  text-transform: none;
}
.hub-hero h1 em {
  color: var(--brass);
  font-size: .94em;
  line-height: 1;
  margin: 3px 0 0 40px;
  letter-spacing: -5px;
}
.hero-statement { margin-top: 33px; font: 21px/1.5 Georgia, serif; color: var(--paper); }
.hero-copy { color: #b6bfb6; max-width: 424px; font-size: 12px; line-height: 1.95; margin-top: 15px; }
.hero-actions { margin-top: 27px; display: flex; align-items: center; gap: 27px; flex-wrap: wrap; }
.hero-actions .text-link { margin: 0; padding-block: 13px; font-size: 9px; letter-spacing: 1.1px; gap: 12px; }
.button { font-size: 9px; letter-spacing: 1.6px; padding: 17px 23px; border-radius: 1px; transition: background .25s, border-color .25s, box-shadow .25s; }
.button.primary { background: #dbc298; border-color: #dbc298; color: #101712; }
.button.primary:hover { background: #ead4b0; box-shadow: 0 0 32px #d3b4871c; }
.collaboration-line { font-size: 9px; color: #a9b5a7; line-height: 1.7; margin-top: 29px; letter-spacing: .7px; }
.universe-composition { height: 510px; position: relative; perspective: 1000px; margin-left: -20px; }
.composition-orbit { position: absolute; width: 100%; height: 71%; left: 0; top: 18%; border: 1px solid #c2b68b24; border-radius: 50%; pointer-events: none; }
.orbit-one { transform: rotate(-29deg) scaleX(1.1); }
.orbit-two { transform: rotate(46deg) scaleX(1.2); opacity: .5; }
.composition-coordinate { position: absolute; top: 10px; right: 0; letter-spacing: 2px; font-size: 8px; color: var(--muted); writing-mode: vertical-rl; }
.composition-frame { position: absolute; overflow: hidden; border: 1px solid #ccbda94d; box-shadow: 0 25px 50px #0007; background: #141914; transition: transform .7s ease, border-color .7s ease; }
.composition-frame::after { content: ''; inset: 0; position: absolute; pointer-events: none; background: linear-gradient(180deg, #b8dbca06, transparent 45%, #04110cd9); }
.composition-frame img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.3s ease, filter .7s; }
.composition-frame:hover img, .composition-frame:focus-visible img { transform: scale(1.065); filter: brightness(1.13); }
.composition-frame.center { width: 54%; height: 84%; top: 9%; left: 23%; z-index: 3; transform: rotate(3deg); }
.composition-frame.center:hover { transform: rotate(0deg) translateY(-8px); border-color: var(--brass); }
.composition-frame.side-left { width: 39%; height: 66%; top: 19%; left: 0; z-index: 1; transform: rotate(-11deg); opacity: .83; }
.composition-frame.side-left:hover { transform: rotate(-7deg) translateX(-10px); }
.composition-frame.side-right { width: 37%; height: 68%; top: 18%; right: 0; z-index: 2; transform: rotate(12deg); opacity: .87; }
.composition-frame.side-right:hover { transform: rotate(9deg) translateX(10px); }
.composition-label { position: absolute; z-index: 2; display: flex; justify-content: space-between; align-items: center; bottom: 18px; left: 18px; right: 18px; font-size: 9px; letter-spacing: 3px; }
.composition-label svg { width: 16px; }
.composition-frame.side-left .composition-label { writing-mode: vertical-rl; bottom: 18px; left: 13px; right: auto; gap: 14px; font-size: 8px; }
.composition-frame.side-right .composition-label { writing-mode: vertical-rl; bottom: 18px; right: 13px; left: auto; gap: 14px; font-size: 8px; }
.composition-seal { position: absolute; z-index: 5; bottom: 0; left: 12%; width: 98px; height: 98px; border-radius: 50%; padding: 12px; border: 1px solid #d3b48770; background: #0c1411db; backdrop-filter: blur(12px); }
.composition-seal img { width: 100%; height: 100%; object-fit: cover; mix-blend-mode: screen; }
.hero-bottom { position: absolute; bottom: 0; left: 0; right: 0; display: flex; justify-content: space-between; align-items: center; gap: 22px; padding: 17px 0 20px; color: #9fad9e; font-size: 8px; letter-spacing: 1.6px; }
.hero-bottom > a { display: flex; gap: 18px; align-items: center; text-transform: uppercase; }
.hero-bottom > a > span { color: var(--brass); font-size: 17px; }
.ambient-particles { pointer-events: none; position: absolute; inset: 0; overflow: hidden; z-index: 4; }
.particle { position: absolute; width: 2px; height: 2px; border-radius: 50%; background: #ebd5aa; box-shadow: 0 0 12px 2px #ebd5aa55; animation: particle-drift 13s ease-in-out infinite alternate; }
.p0 { top: 7%; left: 11%; } .p1 { top: 22%; left: 45%; animation-delay: -3s; }
.p2 { top: 80%; left: 12%; animation-delay: -6s; } .p3 { top: 11%; left: 72%; animation-delay: -4s; }
.p4 { top: 89%; left: 70%; animation-delay: -9s; } .p5 { top: 43%; left: 91%; animation-delay: -2s; }
.p6 { top: 65%; left: 48%; animation-delay: -8s; } .p7 { top: 48%; left: 22%; animation-delay: -5s; }
.p8 { top: 64%; left: 84%; animation-delay: -7s; } .p9 { top: 5%; left: 33%; animation-delay: -1s; }
.p10 { top: 94%; left: 31%; animation-delay: -10s; } .p11 { top: 39%; left: 64%; animation-delay: -11s; }
@keyframes particle-drift { from { opacity: .25; transform: translate3d(0, 8px, 0); } to { opacity: .9; transform: translate3d(10px, -17px, 0); } }

/* Six image portals, cinematic masks and a pointer-driven holographic light. */
.portal-intro { display: flex; justify-content: space-between; align-items: end; gap: 40px; border-top: 1px solid var(--line); padding: 53px 0 33px; scroll-margin-top: 24px; }
.portal-intro h2 { font: 39px/1.23 Georgia, serif; letter-spacing: -1px; margin-top: 18px; }
.portal-intro h2 em { color: var(--sage); }
.portal-intro > p { color: var(--muted); font-size: 11px; line-height: 1.8; max-width: 270px; padding-bottom: 4px; }
.portal-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; padding-bottom: 0; perspective: 1400px; }
.portal-card {
  min-height: 475px;
  aspect-ratio: 3 / 4;
  padding: 25px 27px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: #0a1410 !important;
  border: 1px solid #c0c4af2e;
  border-radius: 3px;
  isolation: isolate;
  transform: perspective(1100px) rotateX(var(--tilt-x, 0deg)) rotateY(var(--tilt-y, 0deg));
  transition: transform .4s ease, box-shadow .4s, border-color .4s;
  box-shadow: 0 12px 32px #0003;
}
.portal-card::before { inset: 0; width: auto; height: auto; border: 0; border-radius: 0; background: linear-gradient(180deg, #04100b47, transparent 28%, #07100d0d 38%, #07100def 91%); z-index: 0; pointer-events: none; }
.portal-card::after { inset: 8px; width: auto; height: auto; border: 1px solid #dcd1b913; border-radius: 1px; z-index: 0; pointer-events: none; }
.portal-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 35%; z-index: -1; transition: transform 1.2s cubic-bezier(.2, .7, .2, 1), filter 1.2s; }
.portal-light { position: absolute; inset: 0; z-index: 1; pointer-events: none; background: radial-gradient(ellipse at var(--light-x, 50%) var(--light-y, 25%), #d9efce21, transparent 65%); mix-blend-mode: screen; opacity: 0; transition: opacity .45s; }
.portal-number { position: relative; z-index: 2; font-size: 8px; letter-spacing: 2px; color: #f0e6d0; }
.portal-number svg { width: 26px; height: 26px; padding: 5px; border: 1px solid #d3b48770; border-radius: 50%; background: #10181144; backdrop-filter: blur(4px); }
.portal-caption { position: relative; z-index: 2; padding-top: 70px; }
.portal-sub { font-size: 9px; color: #e2c79e; letter-spacing: 1.5px; display: block; margin-bottom: 12px; }
.portal-card h3 { font: 38px/.98 Georgia, serif; letter-spacing: -.8px; margin: 0 0 14px; color: #f5f1e7; }
.portal-creadores h3 { font-size: 28px; line-height: 1.04; max-width: 300px; }
.portal-card p { max-width: none; font-size: 11px; color: #c4cbc0; line-height: 1.75; }
.portal-enter { display: flex; justify-content: space-between; align-items: center; padding-top: 16px; margin-top: 18px; border-top: 1px solid #e8dec62f; font-size: 8px; text-transform: uppercase; letter-spacing: 1.8px; color: #ecddbd; }
.portal-enter svg { width: 13px; height: 13px; }
.portal-card:hover, .portal-card:focus-visible { transform: perspective(1100px) rotateX(var(--tilt-x, 0deg)) rotateY(var(--tilt-y, 0deg)) translateY(-5px); border-color: #d3b4879e; box-shadow: 0 24px 54px #0006; }
.portal-card:hover::before { transform: none; }
.portal-card:hover .portal-image, .portal-card:focus-visible .portal-image { transform: scale(1.06); filter: saturate(1.12) brightness(1.08); }
.portal-card:hover .portal-light, .portal-card:focus-visible .portal-light { opacity: 1; }
.artwork-note { padding: 18px 0 30px; color: #8b9c90; font-size: 9px; line-height: 1.7; }
.secondary-category { margin: 0 0 40px; padding: 26px 0; border-block: 1px solid var(--line); }
.secondary-category h2 { font-size: 25px; }
.secondary-category p { font-size: 11px; }
.secondary-category .text-link { margin: 0; }
.management-story { display: grid; grid-template-columns: .85fr 1.2fr; align-items: center; gap: 80px; padding: 42px 0 80px; }
.story-signature { text-align: center; }
.story-signature img { width: 100%; max-width: 440px; margin-inline: auto; mix-blend-mode: screen; }
.story-signature > p { margin-top: -14px; position: relative; font-size: 8px; color: #c8bda7; letter-spacing: 2px; }
.story-content h2 { font: 41px/1.18 Georgia, serif; letter-spacing: -1px; margin-top: 21px; }
.story-content h2 em { display: block; color: var(--brass); }
.story-description { margin-top: 22px; font-size: 12px; line-height: 1.9; color: var(--muted); }
.management-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 19px; border-top: 1px solid var(--line); padding-top: 24px; margin-top: 29px; }
.management-steps span { font-size: 9px; color: var(--brass); letter-spacing: 1px; }
.management-steps h3 { font-size: 11px; margin-top: 14px; }
.management-steps p { margin-top: 8px; font-size: 10px; line-height: 1.7; color: var(--muted); }
.story-content > .text-link { margin-top: 23px; }

/* Category image heroes stay independent of live talent records. */
.category-hero { min-height: 570px; padding: 62px 0; grid-template-columns: 1.1fr 1fr; gap: 0; align-items: center; margin-bottom: 25px; }
.category-hero .hero-content { max-width: 570px; }
.category-hero h1 { font-size: clamp(56px, 6.5vw, 97px); line-height: 1; letter-spacing: -3px; }
.category-hero h1 em { font-family: Arial, Helvetica, sans-serif; font-size: 18px; font-style: normal; letter-spacing: 5px; text-transform: uppercase; color: var(--brass); line-height: 1.55; margin-top: 15px; }
.category-hero .hero-copy { font-size: 13px; max-width: 410px; margin-top: 28px; }
.category-creadores h1 { font-size: clamp(50px, 6.3vw, 91px); }
.category-art { position: absolute; right: 0; top: 27px; bottom: 17px; width: 54%; z-index: 0; overflow: hidden; border-right: 1px solid #d3b48750; border-bottom: 1px solid #d3b48730; border-radius: 1px; background: #08120e; }
.category-art::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, #0a120fec, #0a120f35 25%, transparent 50%), linear-gradient(0deg, #08110fb8, transparent 45%); pointer-events: none; }
.category-image { width: 100%; height: 100%; object-fit: cover; object-position: 50% 32%; transform: scale(1.025); transition: transform .8s ease; }
.category-art.depth-active .category-image { transform: scale(1.055); }
.hologram-grid { position: absolute; inset: 0; background: radial-gradient(ellipse at var(--light-x, 60%) var(--light-y, 40%), #d3edd421, transparent 65%); opacity: .75; mix-blend-mode: screen; z-index: 2; pointer-events: none; }
.art-caption { position: absolute; z-index: 4; bottom: 24px; right: 23px; color: #e4d8c0; font: 10px/1.6 Georgia, serif; letter-spacing: 2px; }
.section-kicker { padding-block: 22px; }
.catalog { gap: 38px; }
.talent-card:hover .card-visual, .card-visual.depth-active { transform: perspective(1000px) rotateX(var(--tilt-x, 0deg)) rotateY(var(--tilt-y, 0deg)) translateY(-4px); }
.card-visual::after { background: radial-gradient(ellipse at var(--light-x, 50%) var(--light-y, 30%), #d3e8ca16, transparent 62%), linear-gradient(180deg, transparent 65%, #05120d66); }
.card-visual { border-radius: 2px; }
.card-heading h3 { color: #e5e4d8; }
.profile-photo { border: 1px solid #d3b48733; }
.profile-summary h1 { color: #e8e5d9; }
.profile-tabs { margin-top: 10px; }
.brief-banner { padding-block: 50px; }
.brief-banner h2 { font-size: clamp(29px, 3.2vw, 44px); max-width: 670px; }
.brief-banner h2 em { display: block; color: var(--brass); }
.brief-banner > .button { white-space: nowrap; }
.footer { display: grid; grid-template-columns: 1fr 1fr; padding: 39px 0 120px; align-items: start; gap: 25px 50px; }
.footer-name { font: 22px/1.4 Georgia, serif; letter-spacing: -.3px; color: #e6e1d3; margin-bottom: 8px; }
.footer-brand small { display: block; font-size: 8px; margin-top: 12px; letter-spacing: .5px; }
.footer-links { display: flex; justify-content: end; flex-wrap: wrap; gap: 18px 23px; padding-top: 8px; line-height: 1.6; }
.footer-links a:hover { color: var(--brass); }
.contract-note { grid-column: 1/-1; border-top: 1px solid var(--line); padding-top: 19px; font-size: 9px; letter-spacing: .2px; color: #8b9c90; }
.floating-book { border-color: #d3b48762; background: #102018e8; box-shadow: 0 8px 40px #0007; }
.floating-book svg { color: #d8c098; }
.floating-book:hover { background: #1d3024f5; border-color: var(--brass); }

@media (min-width: 1400px) {
  .hub-hero { min-height: 695px; }
  .universe-composition { height: 540px; }
  .category-hero { min-height: 630px; }
  .portal-card { min-height: 530px; }
}
@media (max-width: 1150px) {
  .shell { width: calc(100% - 64px); }
  .hub-hero { min-height: 613px; gap: 20px; padding-top: 44px; }
  .hub-hero h1 { font-size: 87px; }
  .hub-hero h1 em { margin-left: 20px; }
  .universe-composition { height: 449px; margin-left: -10px; }
  .hero-statement { font-size: 18px; }
  .hero-actions { gap: 18px; }
  .hero-actions .button { padding-inline: 17px; font-size: 8px; }
  .portal-grid { gap: 18px; }
  .portal-card { min-height: 435px; padding: 21px; }
  .portal-card h3 { font-size: 33px; }
  .portal-creadores h3 { font-size: 26px; }
  .portal-card p { font-size: 10px; }
  .portal-intro h2 { font-size: 34px; }
  .management-story { gap: 40px; }
  .story-content h2 { font-size: 35px; }
  .story-signature > p { font-size: 7px; letter-spacing: 1.3px; }
  .category-hero h1 { font-size: 65px; }
  .category-hero h1 em { font-size: 15px; letter-spacing: 3.5px; }
  .category-hero .hero-content { max-width: 480px; }
  .category-hero .hero-copy { max-width: 330px; }
  .category-creadores h1 { font-size: 60px; }
}
@media (max-width: 850px) {
  .header-right { gap: 17px; }
  .nav-categories { justify-content: start; }
  .hero-actions { align-items: start; }
  .hub-hero h1 { font-size: 75px; }
  .hub-hero .hero-copy { font-size: 11px; max-width: 340px; }
  .universe-composition { height: 390px; }
  .portal-card { min-height: 403px; padding: 18px; }
  .portal-card h3 { font-size: 29px; }
  .portal-creadores h3 { font-size: 22px; }
  .portal-sub { font-size: 8px; letter-spacing: .7px; }
  .portal-number { letter-spacing: 1px; font-size: 7px; }
  .portal-enter { letter-spacing: .8px; font-size: 7px; }
  .brief-banner { align-items: start; flex-direction: column; }
  .brief-banner .button { margin-top: 0; }
}
@media (max-width: 700px) {
  .shell { width: calc(100% - 40px); }
  .topbar { height: 82px; gap: 12px; }
  .brand { gap: 7px; }
  .brand-logo { width: 43px; height: 43px; }
  .brand-name { font-size: 10px; letter-spacing: 2.5px; }
  .brand-name small { font-size: 6px; letter-spacing: 4px; }
  .header-contact, .return-link span { display: none; }
  .return-link svg { width: 16px; }
  .language-switch { padding: 6px 9px; gap: 8px; }
  .header-right { gap: 12px; }
  .nav-categories { min-height: 49px; gap: 25px; margin-right: -20px; padding-right: 20px; }
  .nav-categories a { font-size: 8px; letter-spacing: 1.4px; }
  .hub-hero { grid-template-columns: 1fr; gap: 24px; padding: 44px 0 48px; min-height: 0; }
  .hub-hero h1 { font-size: clamp(70px, 16vw, 100px); margin-top: 22px; line-height: .95; letter-spacing: -3.8px; }
  .hub-hero h1 em { margin-left: 27px; letter-spacing: -4px; }
  .eyebrow { font-size: 8px; letter-spacing: 2px; }
  .hero-statement { margin-top: 24px; font-size: 19px; }
  .hub-hero .hero-copy { font-size: 12px; max-width: 390px; margin-top: 9px; }
  .hero-actions { margin-top: 21px; gap: 19px; align-items: center; }
  .hero-actions .button { padding-inline: 19px; }
  .hero-actions .text-link { font-size: 8px; gap: 9px; }
  .collaboration-line { margin-top: 19px; font-size: 8px; }
  .universe-composition { width: min(93%, 450px); height: 420px; margin: 0 auto 21px; }
  .composition-frame.center { width: 52%; height: 84%; left: 24%; top: 7%; }
  .composition-seal { width: 75px; height: 75px; padding: 9px; left: 9%; bottom: 12px; }
  .composition-coordinate { font-size: 7px; right: -6px; }
  .hero-bottom { padding-bottom: 17px; font-size: 6px; letter-spacing: 1px; gap: 20px; }
  .hero-bottom > span { max-width: 240px; line-height: 1.7; }
  .hero-bottom > a { gap: 10px; font-size: 7px; }
  .portal-intro { display: block; padding: 35px 0 27px; }
  .portal-intro h2 { font-size: 33px; max-width: 320px; margin-top: 16px; }
  .portal-intro h2 em { display: block; }
  .portal-intro > p { max-width: 340px; margin-top: 18px; font-size: 11px; }
  .portal-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; padding-bottom: 0; }
  .portal-card { min-height: 385px; padding: 17px; aspect-ratio: auto; }
  .portal-card h3 { font-size: 29px; margin-bottom: 10px; }
  .portal-creadores h3 { font-size: 23px; }
  .portal-number { font-size: 7px; }
  .portal-number svg { width: 22px; height: 22px; padding: 4px; }
  .portal-caption { padding-top: 75px; }
  .portal-sub { font-size: 8px; line-height: 1.5; margin-bottom: 10px; }
  .portal-card p { font-size: 10px; line-height: 1.75; }
  .portal-enter { margin-top: 15px; padding-top: 13px; letter-spacing: .7px; font-size: 7px; }
  .portal-image { object-position: 45% 30%; }
  .artwork-note { padding: 17px 0 23px; font-size: 8px; }
  .secondary-category { gap: 20px; margin-bottom: 20px; padding-block: 23px; }
  .secondary-category h2 { font-size: 22px; }
  .secondary-category p { max-width: 240px; font-size: 10px; line-height: 1.7; }
  .secondary-category .text-link { white-space: normal; max-width: 115px; font-size: 8px; letter-spacing: 1px; line-height: 1.7; }
  .management-story { grid-template-columns: 1fr; gap: 8px; padding: 0 0 45px; }
  .story-signature img { max-width: 285px; }
  .story-signature > p { margin-top: -25px; font-size: 7px; }
  .story-content { margin-top: 35px; }
  .story-content h2 { font-size: 34px; }
  .story-description { font-size: 11px; }
  .management-steps { gap: 15px; padding-top: 21px; margin-top: 24px; }
  .management-steps h3 { font-size: 10px; }
  .management-steps p { font-size: 9px; }
  .story-content .text-link { font-size: 9px; }
  .category-hero { padding: 39px 0 0; display: flex; flex-direction: column; align-items: stretch; min-height: 0; gap: 25px; margin-bottom: 24px; }
  .category-hero .hero-content { max-width: none; }
  .category-hero h1 { font-size: clamp(47px, 11.5vw, 74px); letter-spacing: -2px; margin-top: 24px; }
  .category-hero h1 em { font-size: 12px; letter-spacing: 3.2px; margin-top: 11px; }
  .category-creadores h1 { font-size: clamp(45px, 11.2vw, 72px); }
  .category-hero .hero-copy { font-size: 12px; margin-top: 21px; max-width: 470px; }
  .category-art { position: relative; width: 100%; height: 410px; top: auto; bottom: auto; right: auto; border: 1px solid #d3b48733; }
  .category-art::after { background: linear-gradient(180deg, #08110f04 55%, #08110fb8); }
  .category-image { object-position: 50% 29%; }
  .art-caption { font-size: 9px; bottom: 19px; right: 17px; }
  .section-kicker { padding-block: 18px; line-height: 1.65; align-items: start; }
  .section-kicker .muted { max-width: 140px; text-align: right; font-size: 7px; }
  .demo-notice { font-size: 10px; }
  .catalog { gap: 0; }
  .catalog-toolbar { gap: 13px; }
  .brief-banner { padding-block: 35px; gap: 25px; }
  .brief-banner h2 { font-size: 31px; }
  .brief-banner p { font-size: 11px; }
  .footer { grid-template-columns: 1fr; gap: 23px; padding-top: 28px; }
  .footer-name { font-size: 23px; }
  .footer-links { justify-content: start; margin: 0; padding: 0; font-size: 9px; gap: 14px 22px; }
  .contract-note { font-size: 8px; }
  .floating-book { bottom: 17px; right: 17px; padding: 12px 15px; }
}
@media (max-width: 450px) {
  .universe-composition { height: 343px; width: 94%; }
  .portal-grid { grid-template-columns: 1fr; gap: 22px; }
  .portal-card { aspect-ratio: 3 / 4; min-height: 440px; padding: 26px; }
  .portal-card h3 { font-size: 39px; margin-bottom: 12px; }
  .portal-creadores h3 { font-size: 30px; }
  .portal-card p { font-size: 12px; line-height: 1.75; }
  .portal-number { font-size: 9px; letter-spacing: 1.7px; }
  .portal-number svg { width: 26px; height: 26px; }
  .portal-sub { font-size: 10px; letter-spacing: 1px; }
  .portal-enter { font-size: 8px; letter-spacing: 1.5px; }
  .portal-card::before { background: linear-gradient(180deg, #04100b4a, transparent 35%, #07100d1f 44%, #07100df5 94%); }
  .category-art { height: 380px; }
  .brand-name { font-size: 9px; letter-spacing: 1.8px; }
  .brand-name small { letter-spacing: 3.3px; }
  .return-link { display: none; }
  .profile-summary h1 { font-size: 50px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  .portal-card:hover, .portal-card:focus-visible, .card-visual.depth-active,
  .talent-card:hover .card-visual, .talent-card:hover .card-visual img,
  .portal-card:hover .portal-image, .portal-card:focus-visible .portal-image,
  .category-art.depth-active .category-image { transform: none; }
  .composition-frame.center:hover { transform: rotate(3deg); }
  .composition-frame.side-left:hover { transform: rotate(-11deg); }
  .composition-frame.side-right:hover { transform: rotate(12deg); }
  .composition-frame:hover img, .composition-frame:focus-visible img { transform: none; }
}

/* Bound the decorative orbit and preserve the official artwork's proportions. */
.hub-hero { overflow: clip; }
.story-signature img { height: auto; }
.portal-card { min-width: 0; }
@media (max-width: 450px) {
  .portal-grid { grid-template-columns: minmax(0, 1fr); }
  .portal-card { width: 100%; }
}
.portal-card { width: 100%; }
@media (min-width: 701px) and (max-width: 1000px) {
  .portal-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .portal-card { min-height: 460px; padding: 25px; }
  .portal-card h3 { font-size: 36px; }
  .portal-creadores h3 { font-size: 28px; }
  .portal-card p { font-size: 11px; }
}
