/* Editorial light theme: ivory paper, warm ink and an oxblood accent. */
html[data-theme="light"]{
  --background:#f5f1e9;--foreground:#302b28;--card:#ede5d9;--card-foreground:#302b28;
  --hero:#e9dfd0;--secondary:#eee7dc;--muted:#eee7dc;--muted-foreground:#70645d;
  --primary:#854638;--primary-foreground:#fff;--accent:#eaddcd;
  --border:#cfc2b2;--border-strong:#a58f7b;--palette-rgb:133 70 56;--reflection-rgb:194 158 131;
  --cv-surface:#ede5d9;--cv-surface-hover:#f2e8dc;--cv-line:#cfc2b2;
  --cv-accent:#854638;--cv-ink:#302b28;--cv-muted:#70645d;--cv-deep:#f5f1e9;
  --cv-link-hover:#713b30;--cv-link-glow:#c29e8366;--cv-link-underline:#a26951;
}
html[data-theme="light"] body{background:#f5f1e9!important;color:#302b28}
html[data-theme="light"] a:focus-visible,
html[data-theme="light"] button:focus-visible{outline-color:#854638}

/* A broad, soft shadow spans the card from the face toward the lower portrait. */
html[data-theme="light"] .profile{
  --cv-ink:#302b28;--cv-muted:#70645d;--cv-accent:#854638;--cv-line:#cfc2b2;
  background:
    radial-gradient(ellipse 97% 37% at 50% 46%,#b9a58e9c 0%,#d7c8b47a 48%,transparent 100%),
    linear-gradient(180deg,#f8f4ed 0%,#eee5d8 22%,#e3d6c4 44%,#eee5d8 70%,#f5f1e9 100%);
}
html[data-theme="dark"] .profile{
  background:
    radial-gradient(ellipse 98% 48% at 50% 43%,#34414bcc 0%,#243039b3 52%,transparent 100%),
    linear-gradient(180deg,#111820 0%,#202b34 35%,#19232b 67%,#0b0e12 100%);
}
html[data-theme] .profile-facts,
html[data-theme="light"] .profile-main{background:transparent}
/* One broad diagonal reflection in both themes, always behind content. */
html[data-theme="light"] .profile-main:before,
html[data-theme="dark"] .profile-main:before,
html[data-theme="light"].light-interactive .profile-main:before,
html[data-theme="dark"].light-interactive .profile-main:before{
  --cv-beam-position:var(--beam-idle-x);
  background:linear-gradient(112deg,transparent calc(var(--cv-beam-position) - 20%),var(--cv-beam-soft) calc(var(--cv-beam-position) - 9%),var(--cv-beam-core) var(--cv-beam-position),var(--cv-beam-soft) calc(var(--cv-beam-position) + 9%),transparent calc(var(--cv-beam-position) + 20%));
  mask-image:linear-gradient(to bottom,transparent 0%,transparent 12%,#000 38%,#000 85%,transparent 100%),linear-gradient(135deg,#000 0%,#000 58%,transparent 78%);
  mask-composite:intersect;
  filter:blur(18px);
  mix-blend-mode:normal;
  opacity:1;
}
html[data-theme="dark"] .profile-main:before{--cv-beam-soft:#c3d9eb08;--cv-beam-core:#dceaf238}
html[data-theme="dark"] .profile-main:before,
html[data-theme="dark"].light-interactive .profile-main:before{
  mask-image:linear-gradient(to bottom,#000 0%,#000 85%,transparent 100%),linear-gradient(135deg,#000 0%,#000 58%,transparent 78%);
}
html[data-theme="light"] .profile-main:before{--cv-beam-soft:#ffffff28;--cv-beam-core:#ffffffc0}
html[data-theme="light"].light-interactive .profile-main:before,
html[data-theme="dark"].light-interactive .profile-main:before{--cv-beam-position:var(--beam-x)}
html[data-theme="light"] .portrait img{
  filter:url("/cinema-portrait-filter.svg?v=2#soft-edge") grayscale(.78) sepia(.08) saturate(.55) contrast(.96) brightness(1.15);
  mix-blend-mode:multiply;
  opacity:.94;
  mask-image:linear-gradient(to right,transparent 0%,#000 29%,#000 100%),
    radial-gradient(ellipse 83% 72% at 60% 29%,#000 0%,#000 52%,#000d 63%,transparent 95%),
    linear-gradient(to bottom,#000 0%,#000 58%,transparent 85%);
  mask-composite:intersect;
}
/* Local edge correction leaves the source photograph and the hair unchanged. */
html[data-theme="dark"] .portrait img{
  filter:url("/cinema-portrait-filter.svg?v=2#clean-left-edge") grayscale(.78) sepia(.08) saturate(.55) contrast(.96) brightness(1.12);
  opacity:1;
  mask-image:radial-gradient(ellipse 83% 72% at 60% 29%,#000 0%,#000 52%,#000d 63%,transparent 95%),
    linear-gradient(to bottom,#000 0%,#000 62%,transparent 90%);
  mask-size:100% 100%;
  mask-composite:intersect;
}
html[data-theme="dark"] .portrait:after{display:none}
@media(min-width:901px){
  html[data-theme] .portrait img{width:min(31vw,350px)}
}
html[data-theme="light"] .profile-copy h1{color:#302b28}
html[data-theme="light"] .profile .accent-dot{background:#854638}
html[data-theme="light"] .profile-role,
html[data-theme="light"] .profile-value{color:#4e443d}
html[data-theme="light"] .profile-detail,
html[data-theme="light"] .profile .eyebrow,
html[data-theme="light"] .portrait figcaption{color:#70645d}
html[data-theme="light"] .profile-facts dt:after{color:#302b28}
html[data-theme="light"] .profile-facts dd,
html[data-theme="light"] .profile-facts dd>span{color:#70645d}
html[data-theme="light"] .profile-fact-link{border-bottom-color:#cfc2b2}
html[data-theme="light"] .profile-fact-link:is(:hover,:focus-visible){
  background:linear-gradient(var(--beam-angle),#e9dccb,#fffcf7 48%,#f0e3d3)!important;
  border-bottom-color:#a26951;
  box-shadow:inset 0 1px #fff,0 8px 26px #302b2828;
}
html[data-theme="light"] .profile-fact-link:is(:hover,:focus-visible) dt:after{
  color:#302b28;text-shadow:0 0 16px #fff,0 0 22px #c29e8382;
}
html[data-theme="light"] .profile-fact-link:is(:hover,:focus-visible) dd{color:#574c44}

/* Navigation and calls to action share the restrained oxblood accent. */
html[data-theme="light"] .site-header nav a,
html[data-theme="light"] .theme-toggle{color:#70645d}
html[data-theme="light"] .site-header nav a:is(:hover,:focus-visible),
html[data-theme="light"] .theme-toggle:is(:hover,:focus-visible){color:#713b30}
html[data-theme="light"] .site-header nav a:after{
  background:linear-gradient(90deg,#854638,#c29e83 74%,transparent);
}
html[data-theme="light"] .theme-toggle{border-bottom-color:#a58f7b}
html[data-theme="light"] .theme-toggle:hover{border-bottom-color:#854638}
html[data-theme="light"] .profile-actions .contact-button[href^="https://t.me"],
html[data-theme="light"] .contact-section .contact-button[href^="https://t.me"]{
  color:#302b28;border-bottom-color:#854638;
}
html[data-theme="light"] .profile-actions .contact-button[href^="tel:"],
html[data-theme="light"] .contact-section .contact-button[href^="tel:"]{color:#70645d}
html[data-theme="light"] .profile-actions .contact-button:is(:hover,:focus-visible),
html[data-theme="light"] .contact-section .contact-button:is(:hover,:focus-visible){
  color:#713b30;text-shadow:0 0 16px #c29e8366;border-bottom-color:#a26951;
}

/* Warm paper surfaces separate the film credits from the ivory page. */
html[data-theme="light"] .about-section,
html[data-theme="light"] .production-section,
html[data-theme="light"] .works-section,
html[data-theme="light"] .contact-section,
html[data-theme="light"] .filmography,
html[data-theme="light"] .featured-grid,
html[data-theme="light"] .education,
html[data-theme="light"] .education-item,
html[data-theme="light"] .personal-panel{border-color:#cfc2b2}
html[data-theme="light"] .about-subtitle,
html[data-theme="light"] .personal-details li>span{color:#70645d}
html[data-theme="light"] .about-intro>p:not(.eyebrow),
html[data-theme="light"] .education-item p,
html[data-theme="light"] .resource p,
html[data-theme="light"] .skills-description,
html[data-theme="light"] .contact-intro>p:last-child{color:#70645d}
html[data-theme="light"] .education-item h4,
html[data-theme="light"] .personal-details strong,
html[data-theme="light"] .resource h3{color:#302b28}
html[data-theme="light"] .production-section .resource{border-color:#cfc2b2}
html[data-theme="light"] .skills-trigger .level-badge,
html[data-theme="light"] .skills-trigger .skills-description,
html[data-theme="light"] .additional-skills{color:#70645d}
html[data-theme="light"] .production-section .skills-trigger:is(:hover,:focus-visible){
  background:linear-gradient(105deg,#fffcf7,#f2e8dc 70%,transparent)!important;
  box-shadow:inset 0 1px #fff,0 10px 22px #302b2824;
}

html[data-theme="light"] .featured-grid .film-card{
  background:linear-gradient(135deg,#f4ede3 0%,#ece2d4 100%);
  border-color:#cfc2b2;
  box-shadow:inset 0 1px #fffcf7,0 3px 12px #302b2824;
}
html[data-theme="light"] .credit-row{
  background:#ede5d9;
  border-color:#cfc2b2;
  box-shadow:0 5px 18px #302b2824;
}
html[data-theme="light"] .credit-card{border-bottom-color:#cfc2b2}
html[data-theme="light"] .credit-poster{background:#e4d8c7;color:#70645d}
html[data-theme="light"] .film-info h3,
html[data-theme="light"] .credit-title{color:#302b28}
html[data-theme="light"] .film-role,
html[data-theme="light"] .film-source,
html[data-theme="light"] .credit-year,
html[data-theme="light"] .credit-role,
html[data-theme="light"] .credit-company,
html[data-theme="light"] .credit-note{color:#70645d}
html[data-theme="light"] .featured-grid .film-card:is(:hover,:focus-visible),
html[data-theme="light"] .credit-card:hover,
html[data-theme="light"] a.credit-card:focus-visible{
  background:linear-gradient(var(--beam-angle),#dfcfbc 0%,#f5eade 38%,#fffcf7 51%,#e8dbc9 100%)!important;
  box-shadow:inset 0 1px #fff,inset 0 -1px #b8a38c,0 3px 5px #302b2814,0 14px 28px #302b2838;
}
html[data-theme="light"] .featured-grid .film-card::after,
html[data-theme="light"] .credit-card::after{
  background-image:linear-gradient(var(--beam-angle),transparent 18%,#eaddcdad 48%,#ffffffdf 52%,transparent 78%);
}
html[data-theme="light"] .film-card:is(:hover,:focus-visible) .film-info h3,
html[data-theme="light"] a.credit-card:is(:hover,:focus-visible) .credit-title{
  color:#713b30;text-shadow:0 1px #fff,0 3px 7px #302b2870,0 0 16px #eaddcd;
}
html[data-theme="light"] div.credit-card:hover .credit-title{
  color:#4e443d;text-shadow:0 1px #fff,0 2px 8px #302b285c;
}
html[data-theme="light"] .film-card:is(:hover,:focus-visible) .film-source,
html[data-theme="light"] a.credit-card:is(:hover,:focus-visible) .credit-company{color:#574c44}
html[data-theme="light"] .film-card:is(:hover,:focus-visible) .film-source svg,
html[data-theme="light"] a.credit-card:is(:hover,:focus-visible) .credit-title svg{color:#854638}
html[data-theme="light"] .credits-tabs-list button{color:#70645d!important}
html[data-theme="light"] .credits-tabs-list button[data-active]{
  color:#302b28!important;border-bottom-color:#854638!important;
}
html[data-theme="light"] .credits-tabs-list button:not([data-active]):is(:hover,:focus-visible){
  color:#713b30!important;border-bottom-color:#a26951!important;
}

@media(max-width:600px){
  html[data-theme="light"] .profile{
    background:
      radial-gradient(ellipse 104% 25% at 50% 26%,#c2ae96ba 0%,#dfd0bba1 52%,transparent 100%),
      linear-gradient(180deg,#f2e9dc 0%,#e7d9c6 24%,#f0e6d8 51%,#f5f1e9 73%);
  }
  html[data-theme="dark"] .profile{
    background:
      radial-gradient(ellipse 103% 29% at 50% 25%,#34434ed9 0%,#26333eab 54%,transparent 100%),
      linear-gradient(180deg,#131b23 0%,#1f2b35 28%,#17212a 53%,#0b0e12 76%);
  }
  html[data-theme] .portrait img{
    mask-image:linear-gradient(to right,transparent 0%,#000 21%,#000 100%),
      linear-gradient(to bottom,#000 0%,#000 62%,transparent 96%);
    mask-composite:intersect;
  }
  html[data-theme="dark"] .portrait{mask-image:none}
  html[data-theme="dark"] .portrait img{
    mask-image:linear-gradient(to bottom,#000 0%,#000 72%,transparent 98%);
    mask-size:100% 100%;
    mask-position:center;
    mask-repeat:no-repeat;
  }
  html[data-theme="light"] .profile-copy h1{text-shadow:0 2px 12px #f5f1e9d9}
}

/* Clear light-theme feedback, including native text selection. */
html[data-theme="light"] ::selection{background:#854638;color:#fff}
html[data-theme="light"] .profile-actions .contact-button[href]:is(:hover,:focus-visible),
html[data-theme="light"] .contact-section .contact-button[href]:is(:hover,:focus-visible),
html[data-theme="light"] .film-card:is(:hover,:focus-visible) .film-info h3,
html[data-theme="light"] a.credit-card:is(:hover,:focus-visible) .credit-title{
  color:#713b30;
  text-shadow:none;
  text-decoration:none;
  text-decoration-thickness:2px;
  text-underline-offset:5px;
  border-bottom-color:#713b30;
}

/* Contact feedback uses light and depth rather than underlines. */
html[data-theme] .profile-actions .contact-button[href],
html[data-theme] .contact-section .contact-button[href]{
  border-bottom:0;
  text-decoration:none;
  transition:color .28s ease,text-shadow .28s ease,filter .28s ease,transform .28s ease;
}
html[data-theme] .profile-actions .contact-button[href]:is(:hover,:focus-visible),
html[data-theme] .contact-section .contact-button[href]:is(:hover,:focus-visible){
  border-bottom:0;
  text-decoration:none;
  transform:translateY(-2px);
}
html[data-theme="dark"] .profile-actions .contact-button[href]:is(:hover,:focus-visible),
html[data-theme="dark"] .contact-section .contact-button[href]:is(:hover,:focus-visible){
  color:#fff;
  text-shadow:0 2px 3px #000,0 5px 10px #0009,0 0 16px #c4d6e385;
  filter:drop-shadow(0 4px 5px #0008);
}
html[data-theme="light"] .profile-actions .contact-button[href]:is(:hover,:focus-visible),
html[data-theme="light"] .contact-section .contact-button[href]:is(:hover,:focus-visible){
  color:#713b30;
  text-shadow:0 1px #fff,0 3px 5px #713b3045,0 0 14px #fff;
  filter:drop-shadow(0 4px 5px #713b3028);
}
html[data-theme] .skills-trigger:is(:hover,:focus-visible) .skills-hint{text-decoration:none}
@media(prefers-reduced-motion:reduce){
  html[data-theme] .profile-actions .contact-button[href],
  html[data-theme] .contact-section .contact-button[href]{transition:none}
  html[data-theme] .profile-actions .contact-button[href]:is(:hover,:focus-visible),
  html[data-theme] .contact-section .contact-button[href]:is(:hover,:focus-visible){transform:none}
}

/* Dark cards rise above the surrounding surface under a soft key light. */
html[data-theme="dark"] .featured-grid .film-card,
html[data-theme="dark"] .credit-card{
  position:relative;
  z-index:0;
  transition:background .3s ease,box-shadow .3s ease,transform .3s ease;
}
html[data-theme="dark"] .featured-grid .film-card:is(:hover,:focus-visible),
html[data-theme="dark"] .credit-card:is(:hover,:focus-visible){
  z-index:2;
  transform:translateY(-5px);
  background:linear-gradient(125deg,#52616d 0%,#364550 38%,#222d37 100%)!important;
  box-shadow:inset 0 1px 0 #e2f0ffd9,inset 1px 0 0 #d9e8f26b,inset -1px 0 0 #d9e8f230,inset 0 -2px 0 #080d13,0 3px 0 #101820,0 8px 12px #000b,0 18px 30px #000c,0 0 22px #c5dff02b;
}
@media(prefers-reduced-motion:reduce){
  html[data-theme="dark"] .featured-grid .film-card,
  html[data-theme="dark"] .credit-card{transition:none}
  html[data-theme="dark"] .featured-grid .film-card:is(:hover,:focus-visible),
  html[data-theme="dark"] .credit-card:is(:hover,:focus-visible){transform:none}
}

/* Film titles lift out of the surface without an underline. */
html[data-theme="light"] .film-card:is(:hover,:focus-visible) .film-info h3,
html[data-theme="light"] a.credit-card:is(:hover,:focus-visible) .credit-title{
  color:#713b30;
  text-decoration:none;
  text-shadow:0 1px 0 #fff,0 2px 5px #713b3040,0 0 14px #fff;
}
html[data-theme="light"] .featured-grid .film-card:is(:hover,:focus-visible),
html[data-theme="light"] a.credit-card:is(:hover,:focus-visible){
  background:linear-gradient(112deg,#eadbc8 0%,#fcf7ef 44%,#ffffff 58%,#efe3d3 100%)!important;
  box-shadow:inset 0 1px #fff,inset 0 -1px #bea88e,0 5px 9px #713b3021,0 15px 28px #713b3038;
}

/* Keep the original Manrope typography in both themes. */
html[data-theme="dark"] .profile-copy h1{
  font-family:Manrope,Arial,sans-serif;
  font-weight:800;
  letter-spacing:-.075em;
  line-height:.94;
}
@media(max-width:600px){
  html[data-theme="dark"] .profile-copy h1{line-height:.98}
}
html[data-theme="dark"] section h2{
  font-family:Manrope,Arial,sans-serif;
  font-weight:700;
  letter-spacing:-.055em;
}
html[data-theme="light"] body{
  font-family:Manrope,Arial,sans-serif;
  font-weight:400;
  color:var(--cv-ink);
}
html[data-theme="light"] :is(button,input,select,textarea){font-family:inherit}
html[data-theme="light"] .profile-copy h1{
  font-family:Manrope,Arial,sans-serif;
  font-weight:800;
  letter-spacing:-.075em;
  line-height:.94;
  text-shadow:none;
}
html[data-theme="light"] :is(section,footer) h2{
  font-family:Manrope,Arial,sans-serif;
  font-weight:700;
  letter-spacing:-.055em;
  line-height:1.15;
  color:var(--cv-ink);
}
html[data-theme="light"] .profile-role{font-weight:600;letter-spacing:-.015em}
html[data-theme="light"] :is(.profile-value,.profile-detail,.about-intro>p:not(.eyebrow),.education-item p,.resource p,.contact-intro>p:last-child){
  color:#574c44;
  font-weight:400;
  line-height:1.65;
  letter-spacing:0;
}
html[data-theme="light"] :is(.film-info h3,.credit-title,.education-item h4,.resource h3){
  font-weight:600;
  letter-spacing:-.015em;
  line-height:1.4;
}
html[data-theme="light"] :is(.about-subtitle,.personal-details li>span,.film-role,.film-source,.credit-year,.credit-role,.credit-company,.range-label,.education-year,.footer-meta,.skills-description,.level-badge){
  color:var(--cv-muted);
  font-weight:400;
}
html[data-theme="light"] :is(.about-subtitle,.eyebrow){letter-spacing:.12em;font-weight:600}
html[data-theme="light"] :is(.film-role,.credit-role){color:#66564b}
html[data-theme="light"] .education-item>span{color:var(--cv-muted);font-weight:400}
html[data-theme="light"] .profile-facts dt{font-weight:600;letter-spacing:-.04em}
