/* Shared brand colors. Photos, original logos and individual demo designs are untouched. */
html[data-cuculus-surface]{--cuculus-sky:#f3f1ed;--cuculus-white:#e5e0d6;--cuculus-red:#c73522;--cuculus-roof:#a43725;--cuculus-stone:#bcb7ae;--cuculus-dark:#252826;--cuculus-ink-accent:color-mix(in srgb,var(--cuculus-roof) 90%,var(--cuculus-dark) 10%);--cuculus-light-accent:color-mix(in srgb,var(--cuculus-red) 60%,var(--cuculus-sky) 40%)}
html[data-cuculus-surface] body{background:var(--cuculus-sky);color:var(--cuculus-dark)}
html[data-cuculus-surface] body>header,html[data-cuculus-surface] body>footer{background:var(--cuculus-white);color:var(--cuculus-dark);border-color:var(--cuculus-stone)}
html[data-cuculus-surface] a:focus-visible{outline-color:var(--cuculus-ink-accent)}
html[data-cuculus-surface] nav a:last-child,html[data-cuculus-surface] em{color:var(--cuculus-ink-accent)}
html[data-cuculus-surface="home"] .intro,html[data-cuculus-surface="home"] .contact{background:var(--cuculus-sky)}
html[data-cuculus-surface="home"] .services,html[data-cuculus-surface="home"] .about{background:var(--cuculus-white)}
html[data-cuculus-surface="home"] h1,html[data-cuculus-surface="home"] h2,html[data-cuculus-surface="home"] h3{color:var(--cuculus-ink-accent)}
html[data-cuculus-surface="home"] .cta{background:var(--cuculus-ink-accent);color:#fff}
html[data-cuculus-surface="home"] .cta:hover{filter:brightness(.9)}
html[data-cuculus-surface="home"] .services article{border-color:var(--cuculus-stone)}
html[data-cuculus-surface="home"] .about>div:first-child p{color:var(--cuculus-ink-accent)}
html[data-cuculus-surface="home"] .projects{background:var(--cuculus-roof);color:var(--cuculus-sky)}
html[data-cuculus-surface="home"] .projects h2,html[data-cuculus-surface="home"] .projects em{color:var(--cuculus-sky)}
html[data-cuculus-surface="home"] .projects-head a{border-color:var(--cuculus-sky)}
html[data-cuculus-surface="home"] .project{color:#fff}
html[data-cuculus-surface="error"] .number,html[data-cuculus-surface="error"] h1{color:var(--cuculus-ink-accent)}
html[data-cuculus-surface="error"] .button{background:var(--cuculus-ink-accent);color:#fff;border-color:var(--cuculus-ink-accent)}
html[data-cuculus-surface="error"] .button.secondary{background:var(--cuculus-white);color:var(--cuculus-dark);border-color:var(--cuculus-stone)}
html[data-cuculus-surface="error"] p,html[data-cuculus-surface="error"] .eyebrow,html[data-cuculus-surface="error"] .coordinates{color:var(--cuculus-dark)}
html[data-cuculus-surface="error"] .flight:before,html[data-cuculus-surface="error"] .flight:after{border-color:var(--cuculus-stone)}
html[data-cuculus-surface="showcase"] .showcase-shell{--cuculus-accent:var(--cuculus-ink-accent);background:var(--cuculus-sky);color:var(--cuculus-dark)}
html[data-cuculus-surface="showcase"] .showcase-nav,html[data-cuculus-surface="showcase"] .showcase-footer{background:var(--cuculus-white);border-color:var(--cuculus-stone)}
html[data-cuculus-surface="showcase"] .showcase-hero h1,html[data-cuculus-surface="showcase"] .showcase-footer h2{color:var(--cuculus-ink-accent)}
html[data-cuculus-surface="showcase"] .showcase-footer>a{background:var(--cuculus-ink-accent);color:#fff}
html[data-cuculus-surface="legacy"] .container,html[data-cuculus-surface="legacy"] .main,html[data-cuculus-surface="legacy"] .codrops-header{background:var(--cuculus-sky);color:var(--cuculus-dark)}
html[data-cuculus-surface="legacy"] h1,html[data-cuculus-surface="legacy"] a{color:var(--cuculus-ink-accent)}
html[data-cuculus-surface="legacy"] .menu__inner{background:var(--cuculus-white)}
html[data-cuculus-surface="legacy"] .morph-shape path{fill:var(--cuculus-white)}
/* The night surface overrides rotating palette backgrounds, not photos or game art. */
html[data-cuculus-surface][data-color-mode="night"]{color-scheme:dark;--cuculus-sky:#171b20!important;--cuculus-white:#22272e!important;--cuculus-stone:#454c56!important;--cuculus-dark:#f2f0eb!important;--cuculus-ink-accent:#f1c996;--cuculus-light-accent:#f1c996}
.night-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:68px;min-height:44px;padding:5px 8px;border:1px solid var(--cuculus-stone);border-radius:30px;background:var(--cuculus-sky);color:var(--cuculus-dark);cursor:pointer;flex-shrink:0;font:22px Arial,sans-serif}
.night-toggle-track{width:25px;height:14px;border-radius:12px;background:var(--cuculus-stone);position:relative}.night-toggle-track:after{content:'';position:absolute;width:10px;height:10px;border-radius:50%;left:2px;top:2px;background:var(--cuculus-dark)}
.night-toggle[aria-checked="true"] .night-toggle-track:after{transform:translateX(11px)}
html[data-color-mode="night"] .logo img{filter:brightness(0) invert(1)}
html[data-color-mode="night"] .product-security{background:#101318;color:#fff;border-color:#454c56}
html[data-color-mode="night"] .product-security .product-cta{background:#f1c996;color:#171b20;border-color:#f1c996}
html[data-color-mode="night"] .product-security .product-top{color:#f2f0eb}
html[data-color-mode="night"][data-cuculus-surface="home"] .cta{color:#171b20}
html[data-color-mode="night"][data-cuculus-surface="home"] .projects{background:#101318;color:#f2f0eb}
html[data-color-mode="night"][data-cuculus-surface="home"] .projects :is(h2,em){color:#f1c996}
html[data-color-mode="night"] .projects-head a{border-color:#f2f0eb!important}
@media(max-width:600px){.site-header nav{gap:8px!important}.night-toggle{min-width:58px;padding:4px;gap:4px;font-size:18px}.night-toggle-track{display:inline-block}.site-header{flex-wrap:wrap}.site-header nav{flex-wrap:wrap}}
html.mode-transition body,html.mode-transition body :is(header,footer,section,article,nav,div,h1,h2,h3,p,small,span,em,a,button,input,textarea,select,li){transition:background-color .8s ease,color .8s ease,border-color .8s ease,box-shadow .8s ease}
html.mode-transition .logo img{transition:filter .8s ease}
.night-toggle-track:after{transition:transform .35s ease,background-color .8s ease}
@media(prefers-reduced-motion:reduce){html.mode-transition body,html.mode-transition body *,.night-toggle-track:after{transition:none!important}}
