/* Clear colour fields and ink contours. Keep VARISTA's emerald unchanged. */
:root{
  --paper:#fff;
  --ink:#161616;
  --green:#1d7d63;
  --mint:#60d6aa;
  --lime:#d8f238;
  --yellow:#ffd037;
  --coral:#ff784b;
  --blue:#4168f0;
  --pink:#ed68a2;
  --line:#16161670;
}

/* Black type on white, with emerald reserved for the brand and active states. */
body{color:var(--ink)}
.section-kicker,.contact-opening,.works-heading h2{font-weight:800}
.desktop-nav a,.brand>span{color:var(--ink)}
.motion-toggle,.header-contact,.mobile-menu a{border-color:var(--ink)}
.header-contact{box-shadow:3px 3px 0 var(--ink)}
.arrow-dot{background:var(--green);color:#fff}
:where(button,a,summary,input,textarea):focus-visible{outline-color:var(--blue)}
.story-eyebrow,.story-opening>p:last-child{font-weight:650}
.story-grid{background-image:radial-gradient(#16161655 .75px,transparent .75px);opacity:.35}
.story-work,.story-work-extra{border-color:var(--ink);box-shadow:3px 4px 0 #161616}
.story-player{box-shadow:5px 6px 0 var(--ink)}
.story-screen{border-color:var(--ink)}
.story-stage[data-phase="0"] .story-player-label{background:#fff;border:1px solid var(--ink);box-shadow:2px 2px 0 var(--ink)}
.story-stage[data-phase="2"] .story-player{box-shadow:4px 5px 0 var(--ink)}
.story-stage[data-phase="2"] .story-screen{border-color:var(--ink)}
.story-chapters{background:#fff;backdrop-filter:none}
.story-chapters button{color:#4b4b4b}
.story-chapters button[aria-current=step]{color:var(--green)}
.story-progress,.approach-timeline{background:#d7d7d7}
.story-choice-buttons button{border-color:var(--ink);box-shadow:2px 3px 0 var(--ink)}
.story-choice-buttons button:hover{background:var(--yellow)}
.story-choice-buttons button[aria-pressed=true]{background:var(--green);color:#fff;border-color:var(--ink)}
.personalized-work-image{border-color:var(--ink)}
.personalized-work-play{background:#fff;color:var(--ink);box-shadow:2px 2px 0 var(--ink)}
.personalized-work-copy small,.recommendation-data-note,.choice-analysis-heading>small{color:#484848}
.recommendation-heading strong,.choice-analysis-branch em{background:var(--yellow);color:var(--ink)}
.choice-analysis-track{background:#e6e6e6}
.choice-analysis-track i{background:var(--blue)}
.choice-analysis-branch.is-selected .choice-analysis-track i{background:var(--green)}

/* Illustration colours share the same small, saturated palette. */
.discovery-intent>span{background:var(--coral)}
.discovery-audience>span{background:var(--mint)}
.discovery-challenge>span{background:var(--yellow)}
.scene-grid{border-color:#16161633;background-image:linear-gradient(#16161633 1px,transparent 1px),linear-gradient(90deg,#16161633 1px,transparent 1px);opacity:.45}
.scene-outcome{box-shadow:4px 4px 0 var(--ink)}
.response-voice{--bubble-fill:var(--coral)}
.response-use{--bubble-fill:var(--mint)}
.response-insight{--bubble-fill:var(--yellow)}
.approach-controls button{border-color:var(--ink)}
.approach-controls button[aria-pressed=true]{border-color:var(--ink);background:var(--green);box-shadow:2px 2px 0 var(--ink)}
.approach-scene .finale-copy>strong>span:last-child{color:var(--ink)}
.approach-scene .finale-copy>strong>span:last-child::before{background:var(--yellow);box-shadow:4px 4px 0 var(--ink)}

/* The existing emerald business section holds clear, white cards. */
.business-services .product-tabs button{border-color:#ffffffb3}
.business-services .product-tabs button[aria-pressed=true]{background:#fff;color:var(--ink);border-color:var(--ink);box-shadow:3px 3px 0 var(--ink)}
.business-services .product-tabs button[aria-pressed=true] small{color:var(--green)}
.product-card{box-shadow:0 5px 0 var(--ink);outline:1px solid var(--ink);outline-offset:-1px}
.product-visual{box-shadow:inset 0 0 0 1px var(--ink)}
.animation-visual{background:var(--coral)}
.vuddy-visual{background:var(--mint)}
.system-visual{background:var(--blue)}
.system-visual .visual-word,.system-visual .visual-caption{color:#fff;opacity:1}
.system-window{box-shadow:4px 4px 0 var(--ink)}
.system-blocks>span:last-child{background:#fff}
.system-menu i{background:var(--blue)}
.system-menu i:first-child{background:var(--green)}
.torudake-visual{background:var(--yellow)}
.round-arrow{border-color:var(--ink)}

/* Photographs keep their natural colour; frames supply the graphic contrast. */
.mission-gallery-row img{filter:none}
.film-work{filter:none}
.film-work:hover{filter:none}
.carousel-controls button,.vuddy-prev,.vuddy-next{border-color:var(--ink);box-shadow:2px 2px 0 var(--ink)}
.carousel-controls button[data-film-next]{border-color:var(--ink)}
.vuddy-orbit{border-color:var(--ink)}
.vuddy-cover{background:var(--mint)}
.vuddy-choice{background:var(--pink)}
.vuddy-connect{background:var(--yellow)}
.vuddy-big-type{color:#16161630}
.vuddy-work{box-shadow:4px 5px 0 var(--ink)}

/* Covers carry colour; surrounding article text stays calm and high contrast. */
.journal-cover-film{--cover:var(--yellow)}
.journal-cover-interactive{--cover:var(--pink)}
.journal-cover-process{--cover:var(--blue);color:#fff}
.journal-cover{box-shadow:3px 4px 0 var(--ink)}
.journal-cover::before{border-color:var(--ink)}
.journal-page{border-color:var(--ink);box-shadow:3px 4px 0 var(--ink);color:var(--ink)}
.journal-choice-disc{background:var(--yellow);color:var(--ink);border-color:var(--ink)}
.journal-choice-disc::after{border-color:var(--ink);opacity:1}
.journal-choice-label{border-color:var(--ink);color:var(--ink);box-shadow:2px 2px 0 var(--ink)}
.journal-choice-label.second{background:var(--green);color:#fff}
.journal-edit-sheet{box-shadow:4px 4px 0 var(--ink)}
.journal-edit-sheet span{opacity:1;background:var(--blue)}
.journal-edit-sheet span:nth-child(2){background:var(--coral)}
.journal-edit-label{color:var(--ink)}
.journal-filter{border-color:var(--ink)}
.journal-filter[aria-pressed=true]{background:var(--green);border-color:var(--ink);box-shadow:2px 2px 0 var(--ink)}
.journal-draft{color:#4c4c4c;border-color:#777;background:#fff}
.journal-card-excerpt,.journal-preview-note{color:#484848}
.journal-news-type{color:var(--ink);background:var(--yellow);border-color:var(--ink)}
.support{background:#fff}
.support-list details{border-color:var(--ink)}
.support-list details:first-child{border-color:var(--ink)}
.support-list summary>span{color:var(--green)}

/* The contact form uses a white field, a black edge and an emerald action. */
.contact-topics button{border-color:var(--ink);background:#fff}
.contact-topics button[aria-pressed=true]{background:var(--green);border-color:var(--ink);box-shadow:3px 3px 0 var(--ink)}
.contact-topics button[aria-pressed=true] .contact-choice-mark{background:#fff;border-color:#fff}
.contact-art{background:var(--yellow);border-color:var(--ink)}
.contact-art-grid{background-image:linear-gradient(#16161626 1px,transparent 1px),linear-gradient(90deg,#16161626 1px,transparent 1px);opacity:.6}
.contact-art-label{color:var(--ink)}
.contact-play[data-contact-scene=movie] .contact-art{background:var(--coral)}
.contact-play[data-contact-scene=interactive] .contact-art{background:var(--pink)}
.contact-play[data-contact-scene=interactive] .contact-frame-main{background:var(--mint)}
.contact-play[data-contact-scene=system] .contact-art{background:var(--blue)}
.contact-play[data-contact-scene=system] .contact-art-label{color:#fff}
.contact-play[data-contact-scene=system] .contact-system svg{stroke:#fff}
.contact-play[data-contact-scene=system] .contact-flow-dot{background:var(--yellow)}
.contact-node{box-shadow:3px 3px 0 var(--ink)}
.contact-art-note,.contact-branch{box-shadow:2px 2px 0 var(--ink)}
.contact-form-theme strong{background:var(--yellow);color:var(--ink)}
.contact-form-theme>span{color:#454545}
.contact-field input,.contact-field textarea{background:#fff;border-color:#16161699}
.contact-field input::placeholder,.contact-field textarea::placeholder{color:#686868}
.contact-field input:focus,.contact-field textarea:focus{background:#fff;box-shadow:0 0 0 3px #1d7d6324}
.contact-form-review{box-shadow:3px 4px 0 var(--ink)}
.contact-play .contact-message-hint,.contact-play .contact-form-preview-note{color:#515151}
.contact-form-confirmation{background:#fff;border-color:var(--ink);box-shadow:3px 4px 0 var(--ink)}
.contact-form-confirmation dt{color:#4b4b4b}

@media(max-width:700px){
 .story-work,.story-work-extra{box-shadow:2px 2px 0 var(--ink)}
 .story-player,.story-stage[data-phase="2"] .story-player{box-shadow:3px 3px 0 var(--ink)}
 .journal-cover,.journal-page,.vuddy-work{box-shadow:3px 3px 0 var(--ink)}
}
