/* Production V2: the common header/footer and typefaces are provided by eigengrau.
   Every production-specific rule remains inside #main.tcp-production. */
#main.tcp-production {font-family:'SuisseIntlRegular',sans-serif; font-size:16px; line-height:1.55; color:#f5f4f0; width:100%; max-width:none; margin:0; padding:0 0 32px;}
#main.tcp-production h1,#main.tcp-production h2,#main.tcp-production h3,#main.tcp-production h4 {text-transform:none; font-family:'SuisseIntlRegular',sans-serif; color:inherit; font-weight:400; padding:0;}
#main.tcp-production a {text-decoration:none;}
#main.tcp-production p {margin-top:0;}
#main.tcp-production .tcp-admin-tools {display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#8c8c98;padding:9px 0 0;}
#main.tcp-production .tcp-admin-tools a {color:var(--special-color);}
.tcp-production, .tcp-production * {box-sizing:border-box}
.tcp-production a {color:inherit;text-decoration:none}
.tcp-production a:hover {color:#ffd700}
.tcp-production button, .tcp-production input, .tcp-production textarea, .tcp-production select {font:inherit}
.tcp-production a:focus-visible, .tcp-production button:focus-visible, .tcp-production input:focus-visible, .tcp-production textarea:focus-visible, .tcp-production select:focus-visible {outline:2px solid #ffd700;outline-offset:5px}
.tcp-production .hero {padding:36px 0 36px}
.tcp-production .eyebrow {font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#b9b9c4;margin:0 0 24px}
.tcp-production .hero>.eyebrow {text-align:right}
.tcp-production h1, .tcp-production h2, .tcp-production h3, .tcp-production p {margin-top:0}
.tcp-production h1, .tcp-production h2, .tcp-production h3 {font-weight:400}
.tcp-production .hero h1 {font-size:clamp(54px,6.2vw,84px);line-height:1.03;letter-spacing:-.055em;text-align:right;margin:0 0 30px}
.tcp-production .lead {font-size:clamp(20px,2.3vw,29px);line-height:1.4;color:#d0d0d7}
.tcp-production .hero>.lead {max-width:740px;text-align:right;margin-left:auto}
.tcp-production .hero-bottom {margin-top:30px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.tcp-production .availability {font-size:14px;margin:0;color:#c9c9d1}
.tcp-production .dot {display:inline-block;width:7px;height:7px;border-radius:50%;background:#ffd700;margin-right:12px}
.tcp-production .text-link {border-bottom:1px solid var(--special-color);padding-bottom:5px}
.tcp-production .section-heading {display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid #71717b;padding:20px 0 32px;gap:20px}
.tcp-production .section-heading h2 {font-size:26px;margin:0}
.tcp-production .section-heading>span {color:#92929e;font-size:13px}
.tcp-production .project-grid {display:grid;grid-template-columns:1fr 1fr;gap:65px 38px}
.tcp-production .project-card {scroll-margin-top:32px}
.tcp-production .image-link {display:block;position:relative;overflow:hidden;background:#24242f;aspect-ratio:16/9}
.tcp-production .image-link img {width:100%;height:100%;object-fit:contain;transition:transform .35s}
.tcp-production .image-link:hover img {transform:scale(1.025)}
.tcp-production .image-arrow {position:absolute;right:14px;bottom:14px;background:#16161d;color:#ffd700;width:38px;height:38px;display:grid;place-items:center;font-size:24px}
.tcp-production .image-placeholder {background:radial-gradient(ellipse at 80% 90%,#3a3948,transparent 70%),#24242e;min-height:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:30px;text-align:center}
.tcp-production .image-placeholder>span {font-size:clamp(24px,3vw,43px);letter-spacing:-.035em}
.tcp-production .image-placeholder small {color:#9a9aa7;font-size:11px;margin-top:20px;text-transform:uppercase;letter-spacing:.14em}
.tcp-production .project-meta {display:flex;justify-content:space-between;gap:20px;color:#c6c6cc;font-size:12px;margin:22px 0 10px;text-transform:uppercase;letter-spacing:.06em}
.tcp-production .project-card h3 {font-size:29px;letter-spacing:-.03em;line-height:1.2;margin-bottom:14px}
.tcp-production .pitch {color:#c2c2cc;min-height:50px;margin-bottom:18px}
.tcp-production .contribution {border-left:2px solid var(--special-color);padding-left:15px;font-size:16px;min-height:50px}
.tcp-production .card-bottom {display:flex;align-items:baseline;justify-content:space-between;gap:12px;border-bottom:1px solid #42424d;padding:12px 0 17px;font-size:12px;color:#a5a5b1}
.tcp-production .card-bottom a {color:var(--special-color);white-space:nowrap}
.tcp-production .approach, .tcp-production .case-section {display:grid;grid-template-columns:1fr 1.6fr;gap:80px;margin-top:100px;padding-top:40px;border-top:1px solid #54545f}
.tcp-production .approach h2, .tcp-production .case-section h2 {font-size:36px;letter-spacing:-.035em;line-height:1.18}
.tcp-production .prose {font-size:18px;color:#d0d0d7}
.tcp-production .prose p {margin-bottom:24px}
.tcp-production .prose img {max-width:100%;height:auto}
.tcp-production .prose a {color:var(--special-color);text-decoration:underline}
.tcp-production .prose ul, .tcp-production .prose ol {padding-left:22px}
.tcp-production .contact {padding:90px 0 70px;margin-top:80px;border-top:1px solid #54545f}
.tcp-production .contact p {color:#b0b0bd;font-size:14px}
.tcp-production .contact h2 {font-size:clamp(30px,4vw,54px);letter-spacing:-.045em;margin-bottom:22px}
.tcp-production .contact>a {color:#ffd700;font-size:clamp(17px,2vw,24px)}
.tcp-production .project-nav {display:flex;justify-content:space-between;gap:25px;margin:26px 0 65px;font-size:13px}
.tcp-production .project-nav>div {display:flex;gap:24px}
.tcp-production .project-nav span {color:#9999a6}
.tcp-production .project-hero h1 {font-size:clamp(40px,6vw,78px);line-height:1.08;letter-spacing:-.045em;max-width:1000px}
.tcp-production .project-hero .lead {max-width:820px}
.tcp-production .facts {display:flex;gap:70px;margin:35px 0 44px}
.tcp-production .facts dt {font-size:12px;color:#9999a6;text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px}
.tcp-production .facts dd {margin:0;font-size:18px}
.tcp-production .project-cover {aspect-ratio:16/8;overflow:hidden;background:#24242f}
.tcp-production .project-cover img {width:100%;height:100%;object-fit:contain}
.tcp-production .case-lead {font-size:26px;color:#f5f4f0;line-height:1.4}
.tcp-production .case-section {margin-top:64px}
.tcp-production .story {border-color:var(--special-color)}
.tcp-production .documents {margin-top:70px}
.tcp-production .document-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:25px}
.tcp-production .document {border:1px solid #454550;padding:16px}
.tcp-production .document img {width:100%;height:190px;object-fit:contain;background:#eee}
.tcp-production .document h3 {font-size:22px;margin:20px 0 10px}
.tcp-production .document p {font-size:15px;color:#b5b5c1}
.tcp-production .document>span {font-size:13px;color:var(--special-color)}
.tcp-production .doc-symbol {font-size:50px;color:#ffd700;padding:30px}
.tcp-production .external-game {margin:55px 0}
.tcp-production .button {background:#ffd700!important;color:#16161d!important;padding:12px 18px;display:inline-block;border:1px solid #ffd700;cursor:pointer;border-radius:0;line-height:1.3}
.tcp-production .button:hover {background:#ffffff!important}
.tcp-production .button.secondary {background:transparent!important;color:var(--special-color)!important;border-color:#666674}
.tcp-production .bottom-nav {border-top:1px solid #54545f;display:flex;justify-content:space-between;gap:30px;padding:35px 0 65px}
.tcp-production .editor-note {border:1px dashed #55545f;padding:18px;color:#a6a6b4;font-size:13px;margin:50px 0}
.tcp-production.editor-page {padding-top:35px;padding-bottom:70px}
.tcp-production.editor-page h1 {font-size:38px;margin:0}
.tcp-production.editor-page h2 {font-size:28px}
.tcp-production.editor-page>p, .tcp-production .hint {color:#b6b6c3}
.tcp-production .editor-tabs {display:flex;flex-wrap:wrap;gap:10px;margin:30px 0}
.tcp-production .editor-tabs a {padding:8px 13px;border:1px solid #555562;font-size:14px}
.tcp-production .editor-tabs [aria-current] {border-color:#ffd700;color:#ffd700}
.tcp-production.editor-page fieldset {border:1px solid #4d4d59;padding:25px;margin:30px 0}
.tcp-production.editor-page legend {padding:0 10px;color:var(--special-color)}
.tcp-production .field {display:block;margin:15px 0;color:#cacad4;font-size:14px}
.tcp-production .field input, .tcp-production .field textarea, .tcp-production.editor-page select {display:block;width:100%;padding:11px;background:#22222c;color:#fafafa;border:1px solid #60606e;border-radius:0;margin-top:7px}
.tcp-production .field textarea {resize:vertical}
.tcp-production .field-grid, .tcp-production .language-columns {display:grid;grid-template-columns:1fr 1fr;gap:30px}
.tcp-production .language-panel {min-width:0}
.tcp-production .language-panel h3, .tcp-production .language-columns h3 {font-size:26px;border-bottom:1px solid #666674;padding-bottom:12px}
.tcp-production .language-panel h4 {margin:30px 0 10px}
.tcp-production .media-field {display:flex;gap:15px;align-items:end;margin-bottom:22px}
.tcp-production .media-field .field {flex:1;min-width:0;margin-bottom:0}
.tcp-production .checkbox {display:flex;align-items:center;gap:12px}
.tcp-production .checkbox input {width:18px;height:18px}
.tcp-production .save-bar {position:sticky;bottom:0;background:#202029;border:1px solid #5b5b67;padding:17px;display:flex;gap:20px;align-items:center;margin-top:30px;z-index:100}
.tcp-production .save-bar span {margin-right:auto;font-size:13px}
.tcp-production .notice {padding:15px;border:1px solid var(--special-color);margin:20px 0}
.tcp-production .notice.error {border-color:#e69c77}
.tcp-production .backups {margin-top:35px}
.tcp-production .backups summary {cursor:pointer}
.tcp-production .restore-form {display:flex;align-items:end;gap:20px}
.tcp-production .remove-doc {background:transparent;color:#e6b29c;border:1px solid #876b60;padding:8px;cursor:pointer}
.tcp-production.editor-page .wp-editor-wrap {color:#111}
.tcp-production.editor-page .wp-editor-area {background:#fff;color:#111}
.tcp-production.editor-page .wp-core-ui button {font-family:Arial,sans-serif}
.tcp-production.editor-page .wp-editor-container {border:1px solid #72727d}
.tcp-production.editor-page .quicktags-toolbar input {color:#222}
.tcp-production.editor-page .wp-media-buttons {margin:10px 0}
.tcp-production.editor-page .wp-media-buttons .button {padding:4px 10px}
.tcp-production.editor-page .mce-container button {background:initial!important}
body.tcp-production-view .media-modal {color:#333;font-family:Arial,sans-serif}
body.tcp-production-view .media-modal a {color:#2271b1}
body.tcp-production-view .media-modal button {font-family:Arial,sans-serif}
@media (max-width:800px) {
  .tcp-production .hero {padding-top:45px}
  .tcp-production .hero h1 {font-size:clamp(42px,9vw,70px)}
  .tcp-production .hero-bottom {align-items:start;flex-direction:column;margin-top:30px;gap:20px}
  .tcp-production .project-grid {gap:45px 24px}
  .tcp-production .project-card h3 {font-size:24px}
  .tcp-production .approach, .tcp-production .case-section {gap:30px;grid-template-columns:1fr;margin-top:60px}
  .tcp-production .approach h2, .tcp-production .case-section h2 {font-size:30px}
  .tcp-production .document-grid {grid-template-columns:1fr 1fr}
  .tcp-production .facts {gap:30px;flex-wrap:wrap}
  .tcp-production .language-columns {grid-template-columns:1fr}
  .tcp-production .save-bar {flex-wrap:wrap}
  .tcp-production .save-bar span {width:100%}
  .tcp-production .media-field {flex-wrap:wrap}
  .tcp-production .media-field .field {flex-basis:100%}
  .tcp-production .project-nav {margin-bottom:40px;flex-wrap:wrap}
  .tcp-production .project-nav>div {gap:15px}
  .tcp-production .restore-form {flex-wrap:wrap}
}
@media (max-width:520px) {
  .tcp-production .project-grid, .tcp-production .document-grid, .tcp-production .field-grid {grid-template-columns:1fr}
  .tcp-production .hero h1 {font-size:43px}
  .tcp-production .hero .lead {font-size:21px}
  .tcp-production .card-bottom {font-size:12px}
  .tcp-production .project-hero h1 {font-size:43px}
  .tcp-production .facts dd {font-size:16px}
  .tcp-production .facts {gap:24px}
  .tcp-production .project-cover {aspect-ratio:16/10}
  .tcp-production .project-card .pitch, .tcp-production .project-card .contribution {min-height:0}
  .tcp-production .bottom-nav {flex-direction:column;gap:16px}
  .tcp-production.editor-page fieldset {padding:14px}
  .tcp-production.editor-page .section-heading {flex-direction:column}
  .tcp-production .section-heading h2 {font-size:23px}
  .tcp-production .contact {padding-top:50px;margin-top:50px}
  .tcp-production .hero>.eyebrow {font-size:10px}
  .tcp-production .save-bar .button {width:100%}
}
@media (prefers-reduced-motion:reduce) {
  .tcp-production, .tcp-production * {transition:none!important}
}
/* Keep the home page unchanged; only the Production introduction is adjusted. */
#main.tcp-production .hero {padding:27px 0 42px;}
#main.tcp-production .hero > .eyebrow {text-align:left;margin-bottom:10px;}
#main.tcp-production .hero h1 {text-align:left; text-transform:uppercase; font-family:'SuisseIntlMedium',sans-serif; font-size:clamp(36px,4.5vw,58px); letter-spacing:-.025em;line-height:1.15; margin:0 0 11px;}
#main.tcp-production .hero > .lead {text-align:left;margin-left:0;font-family:'SuisseIntlLight',sans-serif;font-size:clamp(19px,2vw,27px);max-width:890px;}
#main.tcp-production .hero-bottom {margin-top:23px;}
#main.tcp-production .project-hero h1 {font-family:'SuisseIntlMedium',sans-serif;}
#main.tcp-production .project-card h3,#main.tcp-production .section-heading h2,#main.tcp-production .case-section h2 {font-family:'SuisseIntlRegular',sans-serif;}
#main.tcp-production .project-card h3 {color:#f5f4f0;}
#main.tcp-production .language-panel h4 {color:var(--special-color);}
/* Keep the original theme footer, rather than making a competing new footer. */
@media(max-width:800px){#main.tcp-production .hero {padding-top:28px;}#main.tcp-production .hero h1 {font-size:clamp(34px,7vw,52px);}}
@media(max-width:520px){#main.tcp-production .hero h1 {font-size:clamp(31px,8vw,43px);}#main.tcp-production .hero > .lead {font-size:20px;}#main.tcp-production .tcp-admin-tools{font-size:10px;}}

/* V6: original Production fiche layout preserved. Only media becomes a carousel.
   This CSS applies only inside Production, not to the homepage or Creation portfolio. */
#main.tcp-production .hero {padding:34px 0 52px}
#main.tcp-production .hero h1 {font-size:clamp(38px,4.4vw,58px)}
#main.tcp-production .hero > .lead {font-size:clamp(17px,1.45vw,20px);line-height:1.55;max-width:890px}
#main.tcp-production .project-meta {text-transform:none;letter-spacing:.01em}
#main.tcp-production .project-card h3 {font-size:clamp(21px,2.15vw,27px)}
#main.tcp-production .project-card .pitch {font-size:15px;min-height:0}
#main.tcp-production .project-card .contribution {font-size:14px;min-height:0}
#main.tcp-production .project-hero {margin:0 0 30px}
#main.tcp-production .project-hero h1 {font-size:clamp(32px,3.4vw,46px);letter-spacing:-.02em;line-height:1.16;margin:0 0 13px}
#main.tcp-production .project-hero .lead {font-size:clamp(18px,1.9vw,24px);line-height:1.4;margin:0 0 15px}
#main.tcp-production .project-hero .eyebrow {font-size:11px;margin-bottom:14px}
#main.tcp-production .project-nav {margin:18px 0 34px}
#main.tcp-production .facts {margin:18px 0 22px;gap:25px}
#main.tcp-production .facts dd {font-size:15px}
#main.tcp-production .tc-facts-line {font-size:13px;color:#c6c6cc;margin:8px 0 0}
#main.tcp-production .case-section {grid-template-columns:31% 1fr;gap:4%;margin-top:43px;padding-top:22px}
#main.tcp-production .case-section h2 {font-size:clamp(22px,2vw,28px);line-height:1.23}
#main.tcp-production .case-section .prose {font-size:16px;line-height:1.58;max-width:72ch}
#main.tcp-production .case-lead {font-size:20px}
#main.tcp-production .tc-experience {padding-top:20px;max-width:720px;margin:0 auto 24px}
#main.tcp-production .tc-experience h2 {font-size:22px;margin:0 0 11px}
#main.tcp-production .tc-experience p {font-size:16px;color:#d0d0d7;line-height:1.62;max-width:72ch}
/* Keep the V4 full-width cover position. */
#main.tcp-production .project-cover.tc-gallery {width:min(100%,640px);max-width:640px;margin:0 auto;aspect-ratio:auto;overflow:visible;background:transparent}
#main.tcp-production .tc-gallery-stage {position:relative;aspect-ratio:16/9;background:#24242f;overflow:hidden;cursor:zoom-in}
#main.tcp-production .tc-gallery-slide {display:none;position:absolute;inset:0}
#main.tcp-production .tc-gallery-slide.is-current {display:block}
#main.tcp-production .tc-gallery-slide img {width:100%;height:100%;object-fit:contain;display:block}
#main.tcp-production .tc-gallery-stage .image-placeholder {height:100%}
#main.tcp-production .tc-prev,#main.tcp-production .tc-next {position:absolute;bottom:14px;z-index:3;width:44px;height:44px;border:1px solid #666;background:#121217dd;color:#fff;display:grid;place-items:center;cursor:pointer;font-size:25px;line-height:1}
#main.tcp-production .tc-prev {right:66px}
#main.tcp-production .tc-next {right:14px}
#main.tcp-production .tc-prev:disabled,#main.tcp-production .tc-next:disabled {opacity:.35;cursor:default}
#main.tcp-production .tc-gallery-thumbs {display:flex;gap:8px;margin:12px 0 0;overflow-x:auto;padding-bottom:4px}
#main.tcp-production .tc-thumb {border:0;border-bottom:2px solid transparent;cursor:pointer;background:transparent;opacity:.6;padding:0;flex:0 0 76px;height:55px}
#main.tcp-production .tc-thumb img {display:block;width:100%;height:100%;object-fit:cover}
#main.tcp-production .tc-thumb.is-current {opacity:1;border-bottom-color:#ffd700}
#main.tcp-production .tc-lightbox[hidden] {display:none!important}
#main.tcp-production .tc-lightbox {position:fixed;inset:0;background:#050507f2;display:flex;align-items:center;justify-content:center;padding:40px;z-index:9999}
#main.tcp-production .tc-lightbox img {max-width:95vw;max-height:88vh;object-fit:contain}
#main.tcp-production .tc-lightbox-close {position:absolute;right:15px;top:12px;background:transparent;color:white;border:0;cursor:pointer;font-size:34px}
/* V5 overview text and cards remain unchanged in structure. */
#main.tcp-production .tc-about-production {margin-top:85px}
#main.tcp-production .tc-about-grid {display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(30px,6vw,95px)}
#main.tcp-production .tc-about-panel h3 {font-size:clamp(24px,2.5vw,32px);margin:0 0 20px;font-weight:400;line-height:1.18}
#main.tcp-production .tc-about-prose {max-width:600px;color:#d5d5dd;font-size:16px;line-height:1.64}
#main.tcp-production .tc-about-prose p {margin:0 0 18px}
#main.tcp-production .about-heading {margin-bottom:32px}
#main.tcp-production .hero-actions {display:flex;gap:30px;flex-wrap:wrap}
#main.tcp-production .projects-section {scroll-margin-top:20px}
@media(max-width:800px) {
 #main.tcp-production .tc-about-grid {grid-template-columns:1fr;gap:30px}
 #main.tcp-production .case-section {grid-template-columns:1fr;gap:14px}
 #main.tcp-production .case-section h2 {font-size:25px}
}
@media(max-width:520px) {
 #main.tcp-production .project-hero h1 {font-size:31px}
 #main.tcp-production .project-hero .lead {font-size:19px}
 #main.tcp-production .tc-thumb {flex-basis:56px;height:43px}
 #main.tcp-production .tc-experience h2 {font-size:20px}
 #main.tcp-production .hero-actions {gap:14px}
}

/* V8: fixed, source-aware gallery proportions, scoped to Production. */
#main.tcp-production .tc-gallery-stage {display:block;height:auto;aspect-ratio:16/9;max-height:360px;cursor:zoom-in}
#main.tcp-production .tc-gallery[data-gallery="salut-ca-va"] {max-width:480px}
#main.tcp-production .tc-gallery[data-gallery="salut-ca-va"] .tc-gallery-stage {aspect-ratio:8/5;max-height:300px}
#main.tcp-production .tc-gallery-slide {display:none;position:absolute;inset:0;align-items:center;justify-content:center;padding:10px}
#main.tcp-production .tc-gallery-slide.is-current {display:flex}
#main.tcp-production .tc-gallery-slide img {display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;image-rendering:auto}
#main.tcp-production .tc-gallery-stage .image-placeholder {width:100%}
#main.tcp-production .tc-gallery-stage .tc-prev,#main.tcp-production .tc-gallery-stage .tc-next {bottom:12px}
#main.tcp-production .tc-doc-empty {padding:24px 26px;border:1px solid #51515a;display:flex;flex-direction:column;gap:8px;background:#22222a;color:#dedee3}
#main.tcp-production .tc-doc-empty small {font-size:13px;line-height:1.5;color:#a7a7b3}
#main.tcp-production .tc-playable {padding-top:26px;margin-top:54px;border-top:1px solid #4c4c55}
#main.tcp-production .tc-playable h2 {font-size:22px;font-weight:400;margin:0 0 20px}
#main.tcp-production .tc-embed-frame {width:100%;aspect-ratio:16/10;background:#1d1d24;position:relative}
#main.tcp-production .tc-embed-frame iframe {position:absolute;inset:0;border:0;width:100%;height:100%}
#main.tcp-production .tc-playable p {font-size:13px;color:#ababba}
@media(max-width:800px){#main.tcp-production .tc-gallery-stage {height:auto;max-height:360px;aspect-ratio:16/9}#main.tcp-production .tc-gallery[data-gallery="salut-ca-va"] .tc-gallery-stage {max-height:300px;aspect-ratio:8/5}}

#main.tcp-production .tc-gallery-count {position:absolute;left:16px;bottom:16px;z-index:4;color:#e0e0e0;background:#131318c9;padding:5px 10px;font-size:12px;letter-spacing:.08em}
#main.tcp-production .tc-image-unavailable {font-size:14px;color:#c1c1cc;padding:20px;text-align:center;max-width:380px;line-height:1.5}
#main.tcp-production .tc-gallery-slide img[hidden] {display:none}
#main.tcp-production .tc-gallery-thumbs {max-width:100%}
#main.tcp-production .tc-gallery-stage .tc-prev,#main.tcp-production .tc-gallery-stage .tc-next {min-width:44px;min-height:44px}
@media(max-width:520px){#main.tcp-production .tc-gallery-stage .tc-prev,#main.tcp-production .tc-gallery-stage .tc-next{bottom:8px}}

/* V9: bounded reading column and visible keyboard focus. */
#main.tcp-production .case-section, #main.tcp-production .documents {max-width:720px;margin-left:auto;margin-right:auto}
#main.tcp-production .case-section {grid-template-columns:1fr;gap:14px}
#main.tcp-production .case-section .prose {max-width:720px}
#main.tcp-production .tc-gallery-stage:focus-visible,
#main.tcp-production button:focus-visible,
#main.tcp-production a:focus-visible {outline:2px solid #ffd700;outline-offset:4px}
#main.tcp-production .tc-gallery-thumbs {gap:8px}
#main.tcp-production .tc-thumb {min-height:44px}
#main.tcp-production .project-card .pitch,
#main.tcp-production .project-card .contribution {overflow-wrap:anywhere}
#main.tcp-production .project-nav {flex-wrap:wrap;gap:16px}
#main.tcp-production .documents .section-heading {margin-bottom:18px}

/* V10: production portfolio listing and project pages, scoped to #main only. */
#main.tcp-production {max-width:1160px;margin:0 auto;padding:0 14px 35px;}
#main.tcp-production .hero {padding:26px 0 22px;display:grid;grid-template-columns:minmax(0,1.65fr) minmax(220px,1fr);column-gap:48px;align-items:start;}
#main.tcp-production .hero>.eyebrow {display:none;}
#main.tcp-production .hero h1 {font-size:clamp(40px,5vw,67px);line-height:1.06;letter-spacing:-.035em;grid-column:2;grid-row:1 / span 2;margin:0;text-align:right;}
#main.tcp-production .hero>.lead {font-size:clamp(14px,1.2vw,17px);line-height:1.45;grid-column:1;grid-row:1;max-width:690px;text-align:left;margin:0;color:#e6e6e9;}
#main.tcp-production .hero-bottom {grid-column:1 / -1;display:flex;margin-top:16px;gap:24px;align-items:center;justify-content:space-between;}
#main.tcp-production .availability {font-size:12px;line-height:1.35;}
#main.tcp-production .project-grid.project-list {display:flex;flex-direction:column;gap:0;}
#main.tcp-production .project-list .project-card {display:grid;grid-template-columns:minmax(0,53%) minmax(0,1fr);gap:20px;align-items:start;padding:12px 0;border-top:1px solid #6b6b70;}
#main.tcp-production .project-list .project-card:last-child {border-bottom:1px solid #6b6b70;}
#main.tcp-production .project-list .image-link {aspect-ratio:5.2 / 1;max-height:none;min-height:92px;overflow:hidden;background:#22222a;}
#main.tcp-production .project-list .image-link img {width:100%;height:100%;object-fit:cover;object-position:center;transition:filter .25s,transform .25s;}
#main.tcp-production .project-list .image-link:hover img {filter:brightness(1.15);transform:scale(1.035);}
#main.tcp-production .project-list .image-placeholder {height:100%;min-height:92px;padding:8px;}
#main.tcp-production .project-list .image-placeholder span {font-size:17px;}
#main.tcp-production .project-list .image-placeholder small {font-size:9px;margin-top:5px;}
#main.tcp-production .project-list .tcp-list-info {min-width:0;padding:2px 0;}
#main.tcp-production .project-list h3 {font-size:19px;line-height:1.18;margin:0 0 7px;letter-spacing:0;}
#main.tcp-production .project-list .project-meta {margin:0 0 5px;display:block;font-size:13px;color:#e2e2e5;letter-spacing:0;text-transform:none;}
#main.tcp-production .project-list .pitch {font-size:14px;line-height:1.38;min-height:0;margin:0;color:#bcbcc4;}
#main.tcp-production .projects-section .section-heading {padding:10px 0 12px;}
#main.tcp-production .projects-section .section-heading h2 {font-size:17px;}
#main.tcp-production .tc-about-production {margin-top:60px;}
#main.tcp-production .contact {margin-top:45px;}
/* Project detail: image at left, right-hand summary/documents, editorial body below */
#main.tcp-production.tcp-project-detail {padding-top:0;}
#main.tcp-production .tcp-breadcrumb {font-size:12px;display:flex;gap:12px;align-items:center;margin:14px 0 22px;color:#c7c7ce;}
#main.tcp-production .tcp-breadcrumb a {text-decoration:underline;text-underline-offset:4px;}
#main.tcp-production .tcp-project-top {display:grid;grid-template-columns:minmax(0,64.5fr) minmax(0,32fr);gap:3.5%;align-items:start;}
#main.tcp-production .tcp-main-media {aspect-ratio:16/9;background:#202029;width:100%;display:grid;place-items:center;overflow:hidden;position:relative;}
#main.tcp-production .tcp-main-media img {display:block;width:100%;height:100%;object-fit:cover;object-position:center center;border:0;}
#main.tcp-production .tcp-main-media video,#main.tcp-production .tcp-main-media iframe {display:block;width:100%;height:100%;object-fit:contain;border:0;}
#main.tcp-production .tcp-main-media .tcp-image-open {border:0;outline-offset:-4px;background:transparent;cursor:zoom-in;position:absolute;inset:0;width:100%;height:100%;padding:0;}
#main.tcp-production .tcp-main-placeholder {display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;gap:14px;background:radial-gradient(ellipse at 40% 40%,#393844,#22222a);}
#main.tcp-production .tcp-main-placeholder span {font-size:22px;}
#main.tcp-production .tcp-main-placeholder small {font-size:12px;color:#acacb5;}
#main.tcp-production .tcp-media-source {font-size:12px;text-align:right;padding:6px 0;margin:0;}
#main.tcp-production .tcp-media-source a {text-decoration:underline;text-underline-offset:3px;}
#main.tcp-production .tcp-project-aside {min-width:0;font-size:14px;line-height:1.5;color:#e6e6ea;}
#main.tcp-production .tcp-project-aside h1 {font-size:clamp(20px,1.65vw,26px);line-height:1.16;letter-spacing:-.015em;margin:0 0 12px;}
#main.tcp-production .tcp-project-aside h2 {font-size:15px;line-height:1.25;color:#ffd700;margin:19px 0 8px;}
#main.tcp-production .tcp-project-aside p {margin:0 0 12px;}
#main.tcp-production .tcp-project-aside .tcp-facts-line {font-size:12px;color:#d2d2d5;margin-bottom:9px;}
#main.tcp-production .tcp-project-aside .tcp-context {font-size:12px;color:#b6b6c0;margin-bottom:11px;}
#main.tcp-production .tcp-summary {margin-bottom:16px;}
#main.tcp-production .tcp-aside-documents {margin-top:18px;padding-top:12px;border-top:1px solid #65656b;}
#main.tcp-production .tcp-aside-documents h2 {margin:0 0 12px;color:#fafafa;}
#main.tcp-production .tcp-doc-minis {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
#main.tcp-production .tcp-mini-doc {border:1px solid #686872;min-width:0;padding:5px;}
#main.tcp-production .tcp-mini-doc .tcp-doc-preview {display:block;width:100%;padding:0;border:0;background:#2a2a33;cursor:zoom-in;}
#main.tcp-production .tcp-mini-doc img {display:block;width:100%;aspect-ratio:16/10;object-fit:contain;background:#242430;}
#main.tcp-production .tcp-mini-doc>a {display:block;font-size:12px;line-height:1.3;padding:6px 2px 2px;overflow-wrap:anywhere;}
#main.tcp-production .tcp-mini-doc small {display:block;font-size:11px;color:#a5a5b0;line-height:1.3;padding:0 2px 5px;}
#main.tcp-production .tcp-doc-symbol {font-size:35px;text-align:center;min-height:80px;padding:12px;}
#main.tcp-production .tcp-project-content {border-top:1px solid #73737b;margin-top:26px;padding-top:6px;}
#main.tcp-production .tcp-editorial-section,#main.tcp-production .tcp-flex-block,#main.tcp-production .tcp-extra-documents {margin:16px 0 26px;padding:0 0 20px;border-bottom:1px solid #43434c;}
#main.tcp-production .tcp-editorial-section h2,#main.tcp-production .tcp-flex-block h2,#main.tcp-production .tcp-extra-documents h2 {color:#ffd700;font-size:20px;margin:0 0 12px;line-height:1.25;}
#main.tcp-production .tcp-prose {font-size:15px;line-height:1.55;color:#dedee3;}
#main.tcp-production .tcp-prose p {margin:0 0 13px;}
#main.tcp-production .tcp-prose img {max-width:100%;height:auto;}
#main.tcp-production .tcp-prose img.alignleft {float:left;width:42%;margin:4px 22px 13px 0;}
#main.tcp-production .tcp-prose img.alignright {float:right;width:42%;margin:4px 0 13px 22px;}
#main.tcp-production .tcp-editorial-section::after {content:"";display:block;clear:both;}
#main.tcp-production .tcp-flex-inner {display:block;}
#main.tcp-production .tcp-flex-media {display:flex;gap:16px;max-width:860px;}
#main.tcp-production .tcp-flex-media figure {flex:1;min-width:0;margin:0;}
#main.tcp-production .tcp-flex-media img {width:100%;height:auto;display:block;max-height:360px;object-fit:contain;}
#main.tcp-production .tcp-flex-media button {background:transparent;padding:0;border:1px solid #62626a;cursor:zoom-in;display:block;width:100%;}
#main.tcp-production .tcp-flex-media figcaption {font-size:12px;color:#b8b8c1;margin-top:7px;}
#main.tcp-production .tcp-flex-text {margin-top:14px;}
#main.tcp-production .tcp-block-text-image .tcp-flex-inner {display:grid;grid-template-columns:minmax(0,42%) 1fr;gap:25px;align-items:start;}
#main.tcp-production .tcp-block-text-image .tcp-flex-text {margin:0;}
#main.tcp-production .tcp-project-capsules {margin-top:38px;border-top:1px solid #63636b;padding-top:14px;}
#main.tcp-production .tcp-project-capsules h2 {font-size:18px;margin:0 0 14px;}
#main.tcp-production .tcp-capsule-track {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;}
#main.tcp-production .tcp-capsule {min-width:0;aspect-ratio:16/6.6;overflow:hidden;position:relative;display:flex;align-items:end;border:1px solid #6c6c78;background:#272733;}
#main.tcp-production .tcp-capsule.is-active {outline:2px solid #ffd700;outline-offset:1px;}
#main.tcp-production .tcp-capsule img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.54;}
#main.tcp-production .tcp-capsule span {position:relative;display:block;width:100%;padding:15px 7px 5px;background:linear-gradient(transparent,#0c0c13dd);font-size:12px;line-height:1.2;}
#main.tcp-production .tcp-project-pagination {border-top:1px solid #63636b;display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;padding:15px 0 35px;margin-top:22px;font-size:12px;}
#main.tcp-production .tcp-project-pagination>a {text-align:center;}
#main.tcp-production .tcp-project-pagination span:last-child {text-align:right;}
.tcp-lightbox[hidden] {display:none!important;}
.tcp-lightbox {position:fixed;inset:0;background:#08080cec;z-index:999999;display:flex;align-items:center;justify-content:center;padding:45px;}
.tcp-lightbox img {max-width:95vw;max-height:90vh;object-fit:contain;}
.tcp-lightbox-close {position:absolute;right:18px;top:12px;background:#29292f;color:white;border:1px solid white;border-radius:0;font-size:29px;min-width:44px;min-height:44px;cursor:pointer;}
@media(max-width:960px) {
 #main.tcp-production .hero {grid-template-columns:1fr;}
 #main.tcp-production .hero h1 {grid-column:1;grid-row:1;text-align:left;margin-bottom:12px;}
 #main.tcp-production .hero>.lead {grid-column:1;grid-row:2;}
 #main.tcp-production .hero-bottom {grid-column:1;}
 #main.tcp-production .tcp-project-top {grid-template-columns:1fr;gap:14px;}
 #main.tcp-production .tcp-project-aside {max-width:740px;}
 #main.tcp-production .tcp-project-aside h1 {font-size:24px;}
 #main.tcp-production .tcp-doc-minis {grid-template-columns:repeat(2,minmax(0,180px));}
}
@media(max-width:650px) {
 #main.tcp-production {padding-left:12px;padding-right:12px;}
 #main.tcp-production .project-list .project-card {grid-template-columns:40% minmax(0,1fr);gap:10px;padding:9px 0;}
 #main.tcp-production .project-list .image-link {min-height:75px;aspect-ratio:3.2 / 1;}
 #main.tcp-production .project-list h3 {font-size:15px;margin-bottom:4px;}
 #main.tcp-production .project-list .project-meta {font-size:11px;line-height:1.25;}
 #main.tcp-production .project-list .pitch {font-size:12px;line-height:1.26;}
 #main.tcp-production .tcp-project-pagination {grid-template-columns:1fr 1fr;}
 #main.tcp-production .tcp-project-pagination>a {grid-column:1 / -1;grid-row:1;}
 #main.tcp-production .tcp-doc-minis {grid-template-columns:repeat(2,minmax(0,1fr));}
 #main.tcp-production .tcp-capsule-track {display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 4px 12px;}
 #main.tcp-production .tcp-capsule {flex:0 0 145px;scroll-snap-align:start;}
 #main.tcp-production .tcp-block-text-image .tcp-flex-inner {grid-template-columns:1fr;}
 #main.tcp-production .tcp-flex-media {flex-wrap:wrap;}
 #main.tcp-production .tcp-flex-media figure {flex:0 0 100%;}
 #main.tcp-production .tcp-prose img.alignleft,#main.tcp-production .tcp-prose img.alignright {float:none;display:block;width:auto;max-width:100%;margin:10px auto;}
 #main.tcp-production .tc-about-grid {grid-template-columns:1fr;}
}
@media(max-width:360px){#main.tcp-production .project-list .pitch {display:none;}}

#main.tcp-production.editor-page .tcp-block-editor {border-color:#777787;margin:14px 0;padding:16px;}
#main.tcp-production.editor-page .tcp-block-actions {display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin-bottom:16px;}
#main.tcp-production.editor-page .tcp-block-actions select {display:block;margin-top:7px;background:#24242c;color:#fff;padding:8px;}
#main.tcp-production.editor-page .tcp-block-actions button {background:transparent;border:1px solid #74747f;color:#ddd;min-height:40px;padding:5px 12px;cursor:pointer;}
#main.tcp-production.editor-page .tcp-block-editor .language-columns {gap:16px;}
@media(max-width:700px){#main.tcp-production.editor-page .tcp-block-editor .language-columns {grid-template-columns:1fr;}}

#main.tcp-production .tcp-prose img.tcp-inline-zoom {cursor:zoom-in;}


/* V11, 7 November 2026: proportional layout and navigation refinements.
   Scope is restricted to pages rendered by the Production templates. */
/* No Production-specific resize of #wrapper/#page: original theme max-width is 1200px.
   The header and the content inherit precisely the same wrapper grid. */
#main.tcp-production { max-width:100%; width:100%; margin-inline:0; padding-inline:0; }

/* Introduction and anchors: four straightforward links, no redundant heading. */
#main.tcp-production .hero { padding:23px 0 12px; gap:0 38px; }
#main.tcp-production .hero>.lead { font-size:clamp(14px,1.07vw,17px); line-height:1.48; }
#main.tcp-production .hero h1 { font-size:clamp(43px,4.3vw,67px); margin:0; }
#main.tcp-production .hero-bottom { grid-column:1; margin-top:15px; display:block; }
#main.tcp-production .availability { color:#e6e6ea; font-size:clamp(13px,1vw,15px); line-height:1.45; }
#main.tcp-production .tcp-section-nav { display:flex; gap:clamp(14px,2.5vw,36px); flex-wrap:wrap; align-items:center; border-bottom:1px solid #72727a; padding:10px 0 13px; margin-bottom:11px; }
#main.tcp-production .tcp-section-nav a { font-size:clamp(14px,1.1vw,16px); color:#eeeeef; border-bottom:2px solid transparent; padding:4px 0 5px; }
#main.tcp-production .tcp-section-nav a:hover,
#main.tcp-production .tcp-section-nav a:focus-visible { border-bottom-color:#ffd700; color:#ffd700; }
#main.tcp-production #projects,
#main.tcp-production #method,
#main.tcp-production #journey,
#main.tcp-production #introduction { scroll-margin-top:90px; }

/* Projects: one panoramic row, no empty/doubled frame rules. */
#main.tcp-production .projects-section>.section-heading { display:none; }
#main.tcp-production .project-list .project-card { grid-template-columns:minmax(0,52%) minmax(0,1fr); gap:26px; padding:10px 0; border:0; border-bottom:1px solid #6b6b70; }
#main.tcp-production .project-list .project-card:first-child { padding-top:6px; }
#main.tcp-production .project-list .project-card:last-child { border-bottom:0; }
#main.tcp-production .project-list .image-link { aspect-ratio:5.2/1; min-height:0; }
#main.tcp-production .project-list .image-placeholder { min-height:0; }
#main.tcp-production .project-list h3 { font-size:clamp(17px,1.25vw,20px); margin-bottom:5px; }
#main.tcp-production .project-list .project-meta { line-height:1.38; font-size:13px; margin-bottom:5px; }
#main.tcp-production .project-list .tcp-list-role { color:var(--special-color); font-weight:600; }
#main.tcp-production .project-list .pitch { line-height:1.43; font-size:13.5px; }
#main.tcp-production .tc-about-production { margin-top:48px; }
#main.tcp-production .tc-about-grid { gap:clamp(28px,5vw,80px); }
#main.tcp-production .tc-about-panel { scroll-margin-top:90px; }
#main.tcp-production .tc-about-panel h3 { font-size:clamp(22px,1.75vw,27px); margin-bottom:14px; }
#main.tcp-production .tc-about-prose { font-size:15.5px; line-height:1.58; }
#main.tcp-production .contact { margin-top:40px; padding-top:45px; }

/* Fiche projet: true 16:9; smaller, restrained right column as in approved mockup. */
#main.tcp-production .tcp-breadcrumb { margin:11px 0 17px; font-size:12px; }
#main.tcp-production .tcp-project-top { grid-template-columns:minmax(0,65fr) minmax(0,32fr); gap:3%; }
#main.tcp-production .tcp-main-media { width:100%; aspect-ratio:16/9; }
#main.tcp-production .tcp-project-aside { font-size:13px; line-height:1.46; }
#main.tcp-production .tcp-project-aside h1 { font-size:clamp(20px,1.4vw,24px); line-height:1.17; letter-spacing:0; margin-bottom:8px; }
#main.tcp-production .tcp-project-aside h2 { font-size:14px; line-height:1.2; margin:14px 0 6px; }
#main.tcp-production .tcp-project-aside p { margin-bottom:9px; }
#main.tcp-production .tcp-project-aside .tcp-context { font-size:12px; margin-bottom:8px; }
#main.tcp-production .tcp-project-aside .tcp-facts-line { font-size:12px; margin-bottom:7px; }
#main.tcp-production .tcp-summary { margin-bottom:12px; }
#main.tcp-production .tcp-aside-documents { padding-top:10px; margin-top:13px; }
#main.tcp-production .tcp-aside-documents h2 { margin-bottom:8px; }
#main.tcp-production .tcp-doc-minis { gap:9px; }
#main.tcp-production .tcp-mini-doc>a { font-size:11.5px; }
#main.tcp-production .tcp-media-source { font-size:17px; font-weight:500; padding:8px 0 0; }
#main.tcp-production .tcp-media-source a { text-decoration:none; border-bottom:1px solid var(--special-color); padding-bottom:3px; }
#main.tcp-production .tcp-media-source a:hover { color:#ffd700; }
#main.tcp-production .tcp-project-content { margin-top:24px; padding-top:7px; }
#main.tcp-production .tcp-editorial-section h2,#main.tcp-production .tcp-flex-block h2 { font-size:18px; }
#main.tcp-production .tcp-prose { font-size:14.5px; line-height:1.5; }
#main.tcp-production .tcp-editorial-section,#main.tcp-production .tcp-flex-block { margin:15px 0 20px; padding-bottom:17px; }
#main.tcp-production .tcp-project-capsules { margin-top:30px; }

/* A project navigator, fixed on the sides like a carousel; distinct from the media. */
#main.tcp-production .tcp-side-project-nav { position:fixed; inset:50% 0 auto; z-index:40; pointer-events:none; }
#main.tcp-production .tcp-side-project-nav a { position:fixed; top:50%; transform:translateY(-50%); min-width:48px; min-height:64px; display:flex; align-items:center; justify-content:center; color:#f5f5f7; text-decoration:none; pointer-events:auto; background:#15151ba6; border:1px solid #4b4b5588; font-size:27px; line-height:1; transition:color .2s,background .2s; }
#main.tcp-production .tcp-side-project-nav a:hover { color:#ffd700; background:#23232b; }
#main.tcp-production .tcp-side-project-nav .tcp-side-prev { left:max(10px,calc((100vw - 1580px)/2)); }
#main.tcp-production .tcp-side-project-nav .tcp-side-next { right:max(10px,calc((100vw - 1580px)/2)); }

@media (max-width:1099px) {
  #main.tcp-production .tcp-side-project-nav a { top:auto; bottom:14px; transform:none; min-width:48px; min-height:48px; background:#202027ec; }
  #main.tcp-production .tcp-side-project-nav .tcp-side-prev { left:10px; }
  #main.tcp-production .tcp-side-project-nav .tcp-side-next { right:10px; }
}
@media (max-width:960px) {
  #main.tcp-production .hero h1 { text-align:left; }
  #main.tcp-production .hero-bottom { grid-column:1; }
  #main.tcp-production .tcp-project-top { grid-template-columns:1fr; gap:16px; }
  #main.tcp-production .tcp-project-aside { font-size:14px; }
}
@media (max-width:650px) {
  #main.tcp-production { padding-inline:12px; }
  #main.tcp-production .hero { padding-top:15px; }
  #main.tcp-production .hero h1 { font-size:44px; }
  #main.tcp-production .tcp-section-nav { justify-content:space-between; gap:10px; padding-bottom:7px; }
  #main.tcp-production .tcp-section-nav a { font-size:13px; }
  #main.tcp-production .project-list .project-card { grid-template-columns:1fr; gap:7px; padding:12px 0; }
  #main.tcp-production .project-list .image-link { aspect-ratio:5.2/1; width:100%; }
  #main.tcp-production .project-list .tcp-list-info { padding:0 2px; }
  #main.tcp-production .project-list h3 { font-size:18px; }
  #main.tcp-production .project-list .pitch { font-size:13px; }
  #main.tcp-production .tc-about-grid { grid-template-columns:1fr; }
  #main.tcp-production .tcp-project-aside h1 { font-size:21px; }
  #main.tcp-production .tcp-prose { font-size:14px; }
  #main.tcp-production .tcp-project-pagination { padding-inline:15px; }
}
@media (prefers-reduced-motion:reduce) {
  #main.tcp-production .tcp-side-project-nav a { transition:none; }
}

/* V11 finishing details: no adjacent separators; no fixed arrows over mobile text. */
#main.tcp-production .tcp-project-content > :last-child { border-bottom:0; }
@media (max-width:1099px) {
  #main.tcp-production .tcp-side-project-nav { display:none; }
}


/* V12 — 7 novembre 2026. Only Production selectors; shared site files unchanged.
   Original reference: #wrapper and #header use a 1200px grid in style.css. */
#main.tcp-production {max-width:100%;width:100%;margin:0;padding-inline:0;}
#main.tcp-production .tcp-project-media .tcp-media-source {display:none;}
/* Visible, accessible official-yellow action in the right-hand column. */
#main.tcp-production .tcp-project-aside .tcp-media-source {display:block;text-align:left;margin:14px 0 17px;padding:0;font-size:14px;font-weight:400;}
#main.tcp-production .tcp-project-aside .tcp-media-source a {
 display:inline-flex;align-items:center;justify-content:center;min-height:44px;
 padding:10px 16px;border:1px solid var(--special-color);
 background:transparent;color:var(--special-color);line-height:1.3;
 text-decoration:none;text-underline-offset:3px;
}
#main.tcp-production .tcp-project-aside .tcp-media-source a:hover,
#main.tcp-production .tcp-project-aside .tcp-media-source a:focus-visible {
 color:var(--background-color);background:var(--special-color);
}
/* Preserve existing hand-drawn white/yellow SVG chevrons from original portfolio.
   The clickable area is transparent, with no square or border. */
#main.tcp-production .tcp-side-project-nav a {
 width:42px;height:62px;min-width:0;min-height:0;padding:9px;
 background:none;border:0;border-radius:0;box-shadow:none;
 color:inherit;line-height:1;
}
#main.tcp-production .tcp-side-project-nav a:hover {background:none;}
#main.tcp-production .tcp-side-project-nav a img {
 width:20px;height:36px;object-fit:contain;display:block;
 transition:transform .2s ease;
}
#main.tcp-production .tcp-side-project-nav a:hover img {transform:scale(1.1);}
#main.tcp-production .tcp-side-project-nav .tcp-side-prev {left:max(12px,calc((100vw - 1200px) / 2 - 58px));}
#main.tcp-production .tcp-side-project-nav .tcp-side-next {right:max(12px,calc((100vw - 1200px) / 2 - 58px));}
/* Keep sections distinct semantically but avoid repeated hairlines and excessive gaps. */
#main.tcp-production .tcp-project-content {margin-top:25px;padding-top:8px;}
#main.tcp-production .tcp-editorial-section,
#main.tcp-production .tcp-flex-block,
#main.tcp-production .tcp-extra-documents {margin:12px 0 20px;padding:0;border-bottom:0;}
#main.tcp-production .tcp-editorial-section h2,
#main.tcp-production .tcp-flex-block h2,
#main.tcp-production .tcp-extra-documents h2 {margin:0 0 9px;}
#main.tcp-production .tcp-prose p {margin-bottom:11px;}
/* Suppress side controls where they cannot fit entirely outside the shared grid. */
@media (max-width:1320px) {#main.tcp-production .tcp-side-project-nav {display:none;}}
@media (max-width:650px) {
 #main.tcp-production {padding-inline:0;}
 #main.tcp-production .tcp-project-aside .tcp-media-source a {min-height:46px;}
}
@media (prefers-reduced-motion:reduce) {#main.tcp-production .tcp-side-project-nav a img {transition:none;}}


/* V13: requested targeted refinements; no shared theme CSS changes. */
/* Header active state applies to an existing Production item only. */
body.tcp-production-view #header a[data-tcp-active="production"],
body.tcp-production-view .custom-menu-dropdown a[data-tcp-active="production"] {color:var(--special-color);}
#main.tcp-production .tcp-section-nav {justify-content:flex-start;}
/* Breadcrumb removed at template level; reserve no vertical space. */
#main.tcp-production.tcp-project-detail {padding-top:15px;}
#main.tcp-production .tcp-project-aside .tcp-facts-role {color:var(--special-color);}
/* Readable restrained external link, always last in the right-hand column. */
#main.tcp-production .tcp-project-aside .tcp-media-source {margin:22px 0 0;font-size:13px;font-weight:400;}
#main.tcp-production .tcp-project-aside .tcp-media-source a {
 min-height:40px;padding:9px 13px;gap:14px;border:1px solid var(--special-color);
 font-size:13px;line-height:1.35;letter-spacing:.005em;transition:color .18s,background-color .18s;
}
#main.tcp-production .tcp-project-aside .tcp-media-source a::after {content:"↗";font-size:15px;line-height:1;}
/* More air between the 1200px content grid and the fixed original SVG arrows. */
#main.tcp-production .tcp-side-project-nav .tcp-side-prev {left:max(10px,calc((100vw - 1200px) / 2 - 100px));}
#main.tcp-production .tcp-side-project-nav .tcp-side-next {right:max(10px,calc((100vw - 1200px) / 2 - 100px));}
/* True image containment: both landscape and portrait documents have the SAME preview box.
   The original ratio is preserved by object-fit:contain and again by the lightbox. */
#main.tcp-production .tcp-mini-doc .tcp-doc-preview {
 width:100%;aspect-ratio:16/10;display:grid;place-items:center;overflow:hidden;
 background:#242430;box-sizing:border-box;
}
#main.tcp-production .tcp-mini-doc .tcp-doc-preview img {
 display:block;width:100%;height:100%;min-height:0;aspect-ratio:auto;
 object-fit:contain;object-position:center;background:transparent;
}
#main.tcp-production .tcp-mini-doc {align-self:start;}
@media(max-width:1390px){#main.tcp-production .tcp-side-project-nav {display:none;}}
@media(max-width:650px){#main.tcp-production .tcp-project-aside .tcp-media-source a{min-height:44px;}}

#main.tcp-production .tcp-demo-notice {font-size:11px;color:#a8a8b2;line-height:1.4;margin:0 0 10px;}
#main.tcp-production .tcp-preview-editor-link {font-size:12px;margin:20px 0;color:var(--special-color);}
#main.tcp-production .tcp-editor-demo-data {margin-top:15px;}
#main.tcp-production .tcp-editor-demo-data fieldset {border:1px solid #5e5e67;margin-bottom:14px;min-width:0;}
#main.tcp-production .tcp-editor-demo-data .field input {max-width:100%;}
#main.tcp-production .tcp-editor-preview-warning {font-size:13px;color:#ddd3a0;}


/* V14 – contents formerly in the right column now belong under the hero. */
#main.tcp-production .tcp-project-top {align-items:start;}
#main.tcp-production .tcp-project-aside {align-self:start;min-width:0;}
#main.tcp-production .tcp-project-aside .tcp-media-source {margin-top:23px;}
#main.tcp-production .tcp-content-documents {margin:23px 0 31px; padding:22px 0 0; border-top:1px solid #53535b;}
#main.tcp-production .tcp-content-documents h2 {color:var(--special-color);font-family:'SuisseIntlRegular',sans-serif;font-size:18px;line-height:1.25;font-weight:400;margin:0 0 14px;}
#main.tcp-production .tcp-content-documents .tcp-doc-minis {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start;}
#main.tcp-production .tcp-content-documents .tcp-mini-doc {min-width:0;border:1px solid #5b5b64;padding:10px;background:#1c1c24;}
#main.tcp-production .tcp-content-documents .tcp-doc-preview {width:100%;aspect-ratio:16/10;display:grid;place-items:center;overflow:hidden;background:#242430;border:0;padding:8px;}
#main.tcp-production .tcp-content-documents .tcp-doc-preview img {display:block;max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain;object-position:center;aspect-ratio:auto;}
#main.tcp-production .tcp-content-documents .tcp-mini-doc>a {font-size:14px;color:#f2f2f4;line-height:1.4;margin-top:9px;}
#main.tcp-production .tcp-content-documents .tcp-mini-doc>a:hover,#main.tcp-production .tcp-content-documents .tcp-mini-doc>a:focus-visible {color:var(--special-color);}
#main.tcp-production .tcp-content-documents .tcp-mini-doc small {font-size:12px;line-height:1.4;color:#a7a7b2;padding-top:3px;}
@media(max-width:650px){
 #main.tcp-production .tcp-content-documents .tcp-doc-minis {grid-template-columns:1fr;gap:14px;}
 #main.tcp-production .tcp-content-documents {margin-top:18px;padding-top:15px;}
}
/* Below this width, a single-column layout avoids squeezing detailed copy into a
   shorter right rail than the 16:9 medium. Text is never clipped or scroll-boxed. */
@media(max-width:1160px){
 #main.tcp-production .tcp-project-top {grid-template-columns:1fr;gap:18px;}
 #main.tcp-production .tcp-project-aside {max-width:820px;}
}


/* V14.1 — Test composition demandé : présentation sous PRODUCTION.
   Limitée à l'accueil Production, sans effet sur les six fiches projets. */
#main.tcp-production:not(.tcp-project-detail):not(.editor-page) .hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:0 38px;
  padding:26px 0 10px;
  align-items:start;
}
#main.tcp-production:not(.tcp-project-detail):not(.editor-page) .hero h1 {
  grid-column:2;grid-row:1;
  text-align:right;
  justify-self:end;
  margin:0 0 17px;
}
#main.tcp-production:not(.tcp-project-detail):not(.editor-page) .hero>.lead {
  grid-column:2;grid-row:2;
  margin:0;
  width:100%;max-width:none;
  text-align:left;
  font-size:clamp(14px,1.07vw,17px);
  line-height:1.5;
}
#main.tcp-production:not(.tcp-project-detail):not(.editor-page) .hero-bottom {
  grid-column:2;grid-row:3;
  margin:15px 0 0;
  display:block;
}
#main.tcp-production:not(.tcp-project-detail):not(.editor-page) .hero .availability {
  font-size:clamp(13px,1vw,15px);
  color:#e6e6ea;
  line-height:1.4;
  margin:0;
}
#main.tcp-production:not(.tcp-project-detail):not(.editor-page) .tcp-section-nav {
  justify-content:flex-start;
  margin-top:11px;
}
@media (max-width:900px) {
  #main.tcp-production:not(.tcp-project-detail):not(.editor-page) .hero {grid-template-columns:1fr;}
  #main.tcp-production:not(.tcp-project-detail):not(.editor-page) .hero h1 {
    grid-column:1;grid-row:1;justify-self:start;text-align:left;margin-bottom:15px;
  }
  #main.tcp-production:not(.tcp-project-detail):not(.editor-page) .hero>.lead {grid-column:1;grid-row:2;}
  #main.tcp-production:not(.tcp-project-detail):not(.editor-page) .hero-bottom {grid-column:1;grid-row:3;}
}

/* V14.1 — Editor adaptation following the approved static layout.
   Applies ONLY to the admin-only Production editor; storage and field names unchanged. */
#main.tcp-production.editor-page .tcp-editor-note {color:#b4b4c0;max-width:80ch;font-size:13px;line-height:1.5;margin:0 0 22px}
#main.tcp-production.editor-page .tcp-editor-layout-top {display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:23px;align-items:start;margin:20px 0 26px}
#main.tcp-production.editor-page .tcp-editor-media-panel,
#main.tcp-production.editor-page .tcp-editor-identity-panel,
#main.tcp-production.editor-page .tcp-editor-bottom-panel {min-width:0;background:#202027;border:1px solid #53535e;padding:18px;margin:0 0 24px}
#main.tcp-production.editor-page .tcp-editor-panel-heading {display:flex;justify-content:space-between;gap:20px;align-items:baseline;margin:0 0 16px}
#main.tcp-production.editor-page .tcp-editor-panel-heading h2 {font-size:21px;line-height:1.25;margin:0}
#main.tcp-production.editor-page .tcp-editor-panel-heading small {font-size:11px;color:#b6b6bf;text-align:right}
#main.tcp-production.editor-page .tcp-editor-hero-preview {width:100%;aspect-ratio:16/9;display:flex;align-items:center;justify-content:center;background:#2a2932;position:relative;overflow:hidden}
#main.tcp-production.editor-page .tcp-editor-hero-preview img {width:100%;height:100%;object-fit:contain;display:block}
#main.tcp-production.editor-page .tcp-editor-hero-placeholder {font-size:13px;color:#a9a9b4}
#main.tcp-production.editor-page .tcp-editor-hero-mode {position:absolute;right:8px;bottom:8px;color:#eee;background:#17171de0;padding:5px 9px;font-size:11px}
#main.tcp-production.editor-page .tcp-editor-panel-body {min-width:0;margin-top:12px}
#main.tcp-production.editor-page .tcp-editor-panel-body h3 {font-size:16px;margin:20px 0 8px}
#main.tcp-production.editor-page .tcp-editor-cover-preview {aspect-ratio:5.2/1;width:100%;background:#282833;display:flex;align-items:center;justify-content:center;overflow:hidden;font-size:12px;color:#9a9aa6}
#main.tcp-production.editor-page .tcp-editor-cover-preview img {width:100%;height:100%;object-fit:cover}
#main.tcp-production.editor-page .tcp-editor-identity-panel .field-grid {grid-template-columns:1fr 1fr;gap:4px 12px}
#main.tcp-production.editor-page .tcp-editor-identity-panel .field {font-size:12px;margin:8px 0}
#main.tcp-production.editor-page .tcp-editor-identity-panel .field input,
#main.tcp-production.editor-page .tcp-editor-identity-panel .field textarea {padding:8px 10px;font-size:13px}
#main.tcp-production.editor-page .tcp-editor-language-detail {border:1px solid #555560;margin:10px 0;background:#24242d}
#main.tcp-production.editor-page .tcp-editor-language-detail summary,
#main.tcp-production.editor-page .tcp-editor-advanced summary {cursor:pointer;padding:11px 13px;color:var(--special-color);font-size:13px}
#main.tcp-production.editor-page .tcp-editor-language-content {padding:0 13px 12px}
#main.tcp-production.editor-page .tcp-editor-lang-intro {font-size:12px;color:#d2d2db;margin:15px 0 8px}
#main.tcp-production.editor-page .tcp-editor-advanced {border-top:1px solid #555560;margin-top:12px;padding:4px 0}
#main.tcp-production.editor-page .tcp-editor-advanced .field,
#main.tcp-production.editor-page .tcp-editor-advanced .checkbox {margin:10px}
#main.tcp-production.editor-page .tcp-editor-bottom-panel {padding:20px}
#main.tcp-production.editor-page .tcp-editor-narratives .language-columns {gap:22px}
#main.tcp-production.editor-page .tcp-editor-narratives .language-panel {background:#24242d;padding:16px;border:1px solid #55555f}
#main.tcp-production.editor-page .tcp-editor-narratives .language-panel h3 {font-size:19px;margin:0 0 10px;padding-bottom:6px}
#main.tcp-production.editor-page .tcp-editor-narratives .language-panel h4 {font-size:15px;color:var(--special-color);margin:17px 0 8px}
#main.tcp-production.editor-page .tcp-editor-narratives .language-panel h4 small {font-size:11px;color:#aaa}
#main.tcp-production.editor-page .tcp-document-card {background:#26262d;border:1px solid #5b5b65;padding:13px;margin:14px 0 18px}
#main.tcp-production.editor-page .tcp-document-card legend {font-size:13px}
#main.tcp-production.editor-page .tcp-document-card-grid {display:grid;grid-template-columns:minmax(0,235px) minmax(0,1fr);gap:22px}
#main.tcp-production.editor-page .tcp-doc-preview-column {min-width:0}
#main.tcp-production.editor-page .tcp-doc-live-preview {aspect-ratio:16/10;width:100%;background:#30303a;overflow:hidden;display:grid;place-items:center;border:1px solid #555562}
#main.tcp-production.editor-page .tcp-doc-live-preview img {width:100%;height:100%;object-fit:contain;display:block}
#main.tcp-production.editor-page [hidden] {display:none!important}
#main.tcp-production.editor-page .tcp-doc-live-placeholder {text-align:center;color:#a6a6af;font-size:12px;padding:12px}
#main.tcp-production.editor-page .tcp-doc-preview-column>small {display:block;color:#b1b1bc;font-size:11px;line-height:1.4;margin-top:8px}
#main.tcp-production.editor-page .tcp-doc-source-fields {display:grid;grid-template-columns:1fr 1fr;gap:14px}
#main.tcp-production.editor-page .tcp-doc-source-fields .media-field {display:block;min-width:0;margin-bottom:12px}
#main.tcp-production.editor-page .tcp-doc-source-fields .media-field .field {margin:0 0 6px}
#main.tcp-production.editor-page .tcp-doc-source-fields .media-field .button {padding:7px 9px;font-size:12px}
#main.tcp-production.editor-page .tcp-document-fields .language-columns {gap:14px}
#main.tcp-production.editor-page .tcp-document-fields .language-columns h4 {font-size:13px;color:var(--special-color);margin:4px 0}
#main.tcp-production.editor-page .tcp-document-fields .language-columns .field {margin:7px 0;font-size:12px}
#main.tcp-production.editor-page .tcp-document-fields .language-columns input {padding:8px;font-size:12px}
#main.tcp-production.editor-page .tcp-doc-actions {display:flex;justify-content:flex-end;margin-top:12px}
#main.tcp-production.editor-page .tcp-document-card .remove-doc {font-size:12px;padding:8px 12px}
#main.tcp-production.editor-page .tcp-block-editor {background:#24242d}
#main.tcp-production.editor-page #tcp-edit-documents> .hint,
#main.tcp-production.editor-page #tcp-edit-blocks>.hint,
#main.tcp-production.editor-page #tcp-edit-narratives>.hint {font-size:12px}
@media(max-width:1020px) {
 #main.tcp-production.editor-page .tcp-editor-layout-top {grid-template-columns:1fr}
 #main.tcp-production.editor-page .tcp-editor-media-panel {max-width:720px}
}
@media(max-width:700px) {
 #main.tcp-production.editor-page .tcp-document-card-grid,
 #main.tcp-production.editor-page .tcp-doc-source-fields,
 #main.tcp-production.editor-page .tcp-document-fields .language-columns {grid-template-columns:1fr}
 #main.tcp-production.editor-page .tcp-doc-preview-column {max-width:360px}
 #main.tcp-production.editor-page .tcp-editor-panel-heading {flex-direction:column;gap:5px}
 #main.tcp-production.editor-page .tcp-editor-panel-heading small {text-align:left}
 #main.tcp-production.editor-page .tcp-editor-identity-panel .field-grid {grid-template-columns:1fr}
 #main.tcp-production.editor-page .tcp-editor-bottom-panel {padding:12px}
}


/* V14.2 — Hero aligned exactly with the project title column.
   Same 52% / 26px grid as .project-list .project-card at desktop width.
   Scope: overview page only; preserves other pages and WordPress editor. */
@media (min-width:901px) {
  #main.tcp-production:not(.tcp-project-detail):not(.editor-page) .hero {
    grid-template-columns:minmax(0,52%) minmax(0,1fr);
    column-gap:26px;
  }
  #main.tcp-production:not(.tcp-project-detail):not(.editor-page) .hero > .lead {
    text-align:justify;
    text-align-last:left;
  }
}
#main.tcp-production:not(.tcp-project-detail):not(.editor-page) .hero .availability {
  color:var(--special-color);
}
/* Single unobtrusive section link anchored at the far right, close to divider. */
#main.tcp-production:not(.tcp-project-detail):not(.editor-page) .tcp-section-nav {
  justify-content:flex-end;
  padding:1px 0 4px;
  margin:11px 0 11px;
  gap:0;
}
#main.tcp-production:not(.tcp-project-detail):not(.editor-page) .tcp-section-nav a {
  padding:2px 0 0;
  border:0;
  text-decoration:none;
  line-height:1.2;
}
#main.tcp-production:not(.tcp-project-detail):not(.editor-page) .tcp-section-nav a:hover,
#main.tcp-production:not(.tcp-project-detail):not(.editor-page) .tcp-section-nav a:focus-visible {
  border:0;
  text-decoration:none;
  color:var(--special-color);
}
#main.tcp-production:not(.tcp-project-detail):not(.editor-page) .tcp-section-nav a:focus-visible {
  outline:2px solid var(--special-color);
  outline-offset:4px;
}
@media (max-width:900px) {
  #main.tcp-production:not(.tcp-project-detail):not(.editor-page) .hero > .lead {
    text-align:left;
  }
}

/* V20 — Production project detail: editorial content first, compact optional assets.
 * Page-specific elements only: site-wide grid, typography, header and story remain intact.
 * No fabricated resources: sections are rendered only for existing JSON media/documents. */
#main.tcp-production.tcp-project-detail .tcp-project-content {
  margin-top:19px;
  padding-top:14px;
  border-top:1px solid #606069;
}
#main.tcp-production.tcp-project-detail .tcp-project-content > .tcp-editorial-section:first-child {margin-top:0;}
#main.tcp-production.tcp-project-detail .tcp-project-resources {
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;
  padding:18px 0 15px;margin:25px 0 0;
  border-top:1px solid #606069;
}
#main.tcp-production.tcp-project-detail .tcp-resources-pane {min-width:0;}
#main.tcp-production.tcp-project-detail .tcp-resources-pane + .tcp-resources-pane {
  border-left:1px solid #52525e;padding-left:24px;
}
#main.tcp-production.tcp-project-detail .tcp-resources-pane h2 {
  color:var(--special-color,#ffd700);font:400 17px/1.25 'SuisseIntlRegular',sans-serif;
  margin:0 0 13px;
}
#main.tcp-production.tcp-project-detail .tcp-resource-grid {
  display:flex;flex-wrap:wrap;gap:14px 13px;align-items:flex-start;
}
#main.tcp-production.tcp-project-detail .tcp-resource-item {
  flex:0 0 102px;min-width:0;display:flex;flex-direction:column;gap:5px;
}
#main.tcp-production.tcp-project-detail .tcp-resource-button {
  position:relative;display:grid;place-items:center;width:100%;height:77px;
  border:1px solid #53535f;border-radius:3px;background:#22222b;color:#f5f5f7;
  cursor:pointer;padding:3px;overflow:hidden;text-decoration:none;
}
#main.tcp-production.tcp-project-detail .tcp-resource-button img {
  width:100%;height:100%;display:block;object-fit:contain;
}
#main.tcp-production.tcp-project-detail .tcp-resource-button:hover,
#main.tcp-production.tcp-project-detail .tcp-resource-button:focus-visible {
  border-color:var(--special-color,#ffd700);outline-offset:2px;
}
#main.tcp-production.tcp-project-detail .tcp-resource-label {
  font:400 11px/1.25 'SuisseIntlRegular',sans-serif;color:#ededf0;
  overflow-wrap:anywhere;text-decoration:none;
}
#main.tcp-production.tcp-project-detail .tcp-resource-label[href]:hover,
#main.tcp-production.tcp-project-detail .tcp-resource-label[href]:focus-visible {color:var(--special-color,#ffd700);}
#main.tcp-production.tcp-project-detail .tcp-resource-external {white-space:nowrap;}
#main.tcp-production.tcp-project-detail .tcp-resource-item small {font:400 10px/1.25 'SuisseIntlRegular',sans-serif;color:#b5b5bd;}
#main.tcp-production.tcp-project-detail .tcp-resource-glyph {font-size:33px;color:#babacb;line-height:1;}
#main.tcp-production.tcp-project-detail .tcp-resource-doc-icon {font-size:36px;}
#main.tcp-production.tcp-project-detail .tcp-resource-format {
  font-size:9px;line-height:1.2;color:var(--special-color,#ffd700);
  font-family:'SuisseIntlRegular',sans-serif;position:absolute;bottom:4px;right:5px;
}
#main.tcp-production.tcp-project-detail .tcp-resource-play {
  position:absolute;inset:0;display:grid;place-items:center;font-size:15px;
  text-shadow:0 1px 5px #000;background:rgba(0,0,0,.20);color:#fff;
}
.tcp-media-dialog[hidden] {display:none!important;}
.tcp-media-dialog {
  position:fixed;inset:0;z-index:999999;background:rgba(6,6,10,.94);
  padding:35px;display:flex;align-items:center;justify-content:center;
}
.tcp-media-dialog-inner {max-width:min(960px,100%);width:100%;min-width:0;}
.tcp-media-dialog-top {display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;}
.tcp-media-dialog-title {font:400 17px/1.3 'SuisseIntlRegular',sans-serif;color:#fff;}
.tcp-media-dialog-close {font-size:26px;min-width:44px;min-height:44px;cursor:pointer;border:1px solid #898994;color:#fff;background:#1e1e28;}
.tcp-media-dialog-content video,.tcp-media-dialog-content iframe {
  width:100%;max-height:78vh;aspect-ratio:16/9;display:block;border:0;background:#000;
}
.tcp-media-dialog-content audio {width:100%;display:block;}
@media(max-width:860px) {
  #main.tcp-production.tcp-project-detail .tcp-project-resources {grid-template-columns:1fr;gap:22px;}
  #main.tcp-production.tcp-project-detail .tcp-resources-pane + .tcp-resources-pane {
    border-left:0;padding-left:0;border-top:1px solid #42424c;padding-top:19px;
  }
}
@media(max-width:550px) {
  #main.tcp-production.tcp-project-detail .tcp-resource-item {flex-basis:88px;}
  #main.tcp-production.tcp-project-detail .tcp-resource-button {height:68px;}
  .tcp-media-dialog {padding:16px;}
}

/* V21.10 - image-sized navigation on Production project lightboxes.
   The frame is sized from the loaded image dimensions in production/detail.js.
   It stays centred in the overlay while controls follow the image edges. */
.tcp-lightbox .tcp-lightbox-frame {
  position:relative;
  flex:none;
  max-width:100%;
  max-height:100%;
}
.tcp-lightbox .tcp-lightbox-frame > img {
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  max-height:none;
  object-fit:contain;
}
.tcp-lightbox .tcp-lightbox-frame .tcp-lightbox-close {
  position:absolute;
  top:-52px;
  right:0;
  z-index:3;
}
.tcp-lightbox .tcp-lightbox-nav {
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:2;
  display:grid;
  place-items:center;
  width:48px;
  height:56px;
  padding:0;
  background:rgba(28,28,36,.82);
  color:#fff;
  border:1px solid #787884;
  border-radius:0;
  cursor:pointer;
  font:400 44px/1 sans-serif;
}
.tcp-lightbox .tcp-lightbox-nav[hidden],
.tcp-lightbox .tcp-lightbox-count[hidden] {display:none!important;}
.tcp-lightbox .tcp-lightbox-nav:hover,
.tcp-lightbox .tcp-lightbox-nav:focus-visible {
  border-color:var(--special-color,#ffd700);
  color:var(--special-color,#ffd700);
}
.tcp-lightbox .tcp-lightbox-prev {left:-58px;}
.tcp-lightbox .tcp-lightbox-next {right:-58px;}
.tcp-lightbox .tcp-lightbox-count {
  position:absolute;
  bottom:-33px;
  left:50%;
  transform:translateX(-50%);
  white-space:nowrap;
  font:400 12px/1.3 'SuisseIntlRegular',sans-serif;
  color:#e5e5ed;
  background:rgba(18,18,25,.8);
  padding:5px 8px;
}
@media(max-width:650px){
  .tcp-lightbox .tcp-lightbox-nav {width:44px;height:48px;}
  .tcp-lightbox .tcp-lightbox-prev {left:8px;}
  .tcp-lightbox .tcp-lightbox-next {right:8px;}
  .tcp-lightbox .tcp-lightbox-count {bottom:-32px;}
}
