/* PUJAICO / BLUE FREQUENCY — public interface, day and night. */
:root{--bg:#090d16;--panel:#101826;--ink:#f0f4fc;--muted:#9aa9c0;--line:#28364c;--accent:#68a5ff;--lime:var(--accent);--electric:#1267ff;--blue:#0866ff;--soft:#111e34;--on-blue:#fff;--header:rgba(9,13,22,.94);--shadow:0 25px 60px #0002;color-scheme:dark}
:root[data-theme=light]{--bg:#f3f5fb;--panel:#fff;--ink:#101d35;--muted:#52647e;--line:#ccd6e7;--accent:#0758db;--lime:var(--accent);--soft:#e6edfa;--header:rgba(243,245,251,.95);--shadow:0 25px 60px #163c7314;color-scheme:light}
html{scrollbar-color:var(--line) var(--bg)}body{background:var(--bg);color:var(--ink)}body:after{opacity:.015}::selection{background:var(--blue);color:#fff}a,button,summary{-webkit-tap-highlight-color:#0866ff22}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-color:var(--accent)}
.header,.blog-header{background:var(--header);border-color:var(--line);gap:24px}.header{height:96px}.header-contact{gap:14px}.header-contact span{border-color:var(--line)}.desktop-nav{gap:24px}.experience-controls{display:flex;align-items:center;gap:12px;flex-shrink:0;position:relative;z-index:31}.experience-controls button{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--ink);padding:9px;transition:background .2s,rotate .35s}.experience-controls button:hover{background:var(--soft);rotate:25deg}.experience-controls button svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.experience-controls .language-switch{display:flex;align-items:center;gap:2px;padding:3px;border:1px solid var(--line);border-radius:30px;margin:0;width:auto;font-size:10px;font-family:Consolas,monospace;order:initial}.language-switch a{display:grid;place-items:center;min-width:31px;min-height:29px;border-radius:30px;color:var(--muted)}.language-switch a[aria-current=page]{background:var(--blue);color:#fff}.language-switch a:hover{color:var(--ink)}.language-switch a[aria-current=page]:hover{color:#fff}.theme-icon{font-size:18px}.header .experience-controls{margin-left:auto}.header-contact{margin-left:18px}.header .desktop-nav{margin-left:auto}.wordmark,.blog-logo{white-space:nowrap}.blog-header .header-talk{margin-left:auto}.blog-header .experience-controls{order:2}.blog-header .language-switch{margin-top:0}.project-topbar{gap:22px;border-color:var(--line);background:var(--bg)}.project-topbar .experience-controls{margin-left:auto}.project-topbar nav:not(.language-switch){margin-left:auto}
.reading-progress{position:fixed;top:0;left:0;right:0;height:3px;pointer-events:none;z-index:250;background:transparent}.reading-progress>span{display:block;height:100%;width:100%;transform:scaleX(var(--progress,0));transform-origin:0 50%;background:linear-gradient(90deg,#0052ff,#71c7ff);box-shadow:0 0 12px #0066ff55}.scroll-meter{position:fixed;right:22px;bottom:22px;width:46px;height:46px;z-index:40;background:var(--bg);border:0;border-radius:50%;padding:0;color:var(--ink);opacity:0;pointer-events:none;translate:0 12px;transition:opacity .25s,translate .25s;box-shadow:var(--shadow)}.scroll-meter.is-shown{opacity:1;translate:0 0;pointer-events:auto}.scroll-meter svg{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke-width:1.5;transform:rotate(-90deg)}.meter-track{stroke:var(--line)}.meter-fill{stroke:var(--accent);stroke-dasharray:119.38;stroke-dashoffset:calc(119.38 * (1 - var(--progress,0)))}.scroll-meter span{font:10px Consolas,monospace;letter-spacing:0}.pointer-ring{position:fixed;left:0;top:0;width:26px;height:26px;margin:-13px;z-index:260;border:1px solid var(--accent);border-radius:50%;opacity:0;pointer-events:none;transition:width .2s,height .2s,margin .2s,opacity .15s,background .2s;contain:layout style}.pointer-ring.is-visible{opacity:.5}.pointer-ring.is-link{width:48px;height:48px;margin:-24px;background:#0866ff14;border-color:var(--accent)}.click-burst{position:fixed;z-index:259;width:14px;height:14px;margin:-7px;border:1px solid var(--accent);border-radius:50%;pointer-events:none;animation:click-echo .65s ease-out both}.click-burst:after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--accent);opacity:.3}@keyframes click-echo{0%{scale:.3;opacity:.8}100%{scale:5;opacity:0}}
.hero{background:radial-gradient(ellipse at 80% 45%,#0066ff0b,transparent 55%)}.name-line{color:var(--ink)}.hero-id,.hero-eyebrow,.location-label span,.hero-signature p,.hero-edition span,.art-coordinate{color:var(--muted)}.hero-signature strong,.hero-edition{color:var(--ink)}.hero-bottom{border-color:var(--line)}.hero-type h1 .lime{color:var(--blue)}.hero-tile{background:#f4f7fd;color:#15233a;box-shadow:0 18px 50px #0002}.status-dot{background:var(--accent);box-shadow:0 0 18px #0866ff35}.round-arrow{background:var(--blue);color:white}.round-link:hover .round-arrow{background:var(--accent);color:var(--bg)}.discipline-strip{border-color:var(--line);opacity:1}.marquee-track>span{color:var(--muted)}.marquee-track b{color:var(--blue)}.section-kicker,.section-heading p,.skills-heading p{color:var(--muted);border-color:var(--line)}.section-heading h2,.skills-heading h2{color:var(--ink)}.project-image-button{background:var(--soft)}.project-view{background:var(--bg);color:var(--ink)}.project-image-button:hover .project-view{background:var(--blue);color:#fff}.filter-button{color:var(--muted);border-color:var(--line)}.filter-button[aria-pressed=true]{background:var(--blue);color:#fff;border-color:var(--blue)}.project-placeholder{background:var(--soft);color:var(--accent)}.project-index li{border-color:var(--line)}.project-number,.project-caption p{color:var(--muted)}.pill-button,.text-link{border-color:var(--line)}.pill-button:hover{background:var(--blue);color:#fff;border-color:var(--blue)}
.about-image-wrap{transform:perspective(1200px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .35s ease;isolation:isolate}.about-image-wrap>img#portrait{aspect-ratio:1200/1664;object-fit:cover;object-position:center;width:100%;height:auto;filter:none}.portrait-stamp{background:var(--bg);color:var(--ink);border:1px solid var(--line)}.portrait-spark{color:#fff}.studio-sticker{position:absolute!important;width:34%!important;height:auto!important;right:-4%;bottom:6%;rotate:-8deg;border:5px solid #fff;box-shadow:0 15px 35px #0003;z-index:3;transition:rotate .4s}.about-image-wrap:hover .studio-sticker{rotate:-2deg}.about-copy>p,.about-copy .bio p,.about-copy #about-text,.about-stat span,.service-item p,.experience-row p,.experience-row>.mono{color:var(--muted)}.about-stat strong,.client-names span{color:var(--ink)}.service-item{border-color:var(--line)}.service-item summary:hover{color:var(--accent)}.experience-section,.clients-block{background:var(--bg)}.experience-row{border-color:var(--line)}.skills-signal{position:relative;padding-top:65px;padding-bottom:100px}.skills-signal:before{content:"";position:absolute;left:var(--pad);right:var(--pad);top:0;height:1px;background:var(--line)}.skills-heading{align-items:end;gap:50px}.skills-heading h2{font-size:clamp(42px,5.1vw,80px);line-height:.98}.skills-heading h2>span{color:var(--accent)}.skills-heading p{max-width:280px;line-height:1.8}.skills-instruction{font:10px/1.6 Consolas,monospace;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin:0 0 22px}.signal-skills{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}.skill-module{--rx:0deg;--ry:0deg;min-width:0;background:var(--panel);border:1px solid var(--line);position:relative;overflow:hidden;transform:perspective(1000px) rotateX(var(--rx)) rotateY(var(--ry));transition:transform .3s,border-color .25s,box-shadow .3s;isolation:isolate}.skill-module:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(250px circle at var(--px,80%) var(--py,0%),#0866ff19,transparent 80%);opacity:.4;transition:opacity .4s}.skill-module:hover,.skill-module[open]{border-color:var(--accent);box-shadow:var(--shadow)}.skill-module:hover:before,.skill-module[open]:before{opacity:1}.skill-module summary{cursor:pointer;list-style:none;padding:26px 27px 24px;display:block}.skill-module summary::-webkit-details-marker{display:none}.skill-meta{display:flex;align-items:center;justify-content:space-between;font:9px Consolas,monospace;color:var(--muted);letter-spacing:.06em}.skill-symbol{height:60px;margin:28px 0 18px;color:var(--accent);position:relative}.skill-symbol svg{height:58px;width:68px;stroke:currentColor;fill:none;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}.skill-module h3{font-size:26px;letter-spacing:-1px;line-height:1.1;font-weight:500;color:var(--ink);margin-bottom:13px}.skill-subtitle{font-size:11px;color:var(--muted);min-height:18px}.skill-wave{height:16px;display:flex;align-items:center;gap:3px;margin:28px 0 20px;overflow:hidden}.skill-wave i{height:3px;flex:1;background:var(--line);transform-origin:left;transition:background .4s,height .4s}.is-inview .skill-wave i{animation:signal-arrive .9s calc(var(--i)*.035s) both}.skill-module:hover .skill-wave i,.skill-module[open] .skill-wave i{background:var(--accent);height:calc(3px + var(--h)*1px)}.skill-module:hover .skill-wave i{animation:signal-pulse 1.5s calc(var(--i)*-.07s) ease-in-out infinite}.skill-expand{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:16px;color:var(--muted);font:9px Consolas,monospace;letter-spacing:.08em;text-transform:uppercase}.skill-expand b{font:22px/1 Space,sans-serif;color:var(--accent);font-weight:400;transition:rotate .25s}.skill-module[open] .skill-expand b{rotate:45deg}.skill-body{padding:0 27px 27px}.skill-body ul{list-style:none;padding:0;margin:0}.skill-body li{font-size:12px;color:var(--ink);padding:12px 0;border-top:1px solid var(--line);line-height:1.7}.skill-body li:before{content:"↗";color:var(--accent);margin-right:8px}.skill-module[open] .skill-body{animation:skill-reveal .35s ease-out}.skill-module:hover .skill-symbol{animation:symbol-float 3s ease-in-out infinite}@keyframes skill-reveal{from{opacity:0;translate:0 -6px}to{opacity:1;translate:0 0}}@keyframes signal-arrive{0%{background:var(--line);scale:0 1}100%{background:var(--accent);scale:1 1}}@keyframes signal-pulse{50%{scale:1 .4;opacity:.6}}@keyframes symbol-float{50%{translate:0 -4px;rotate:5deg}}
.journal-empty{background:var(--panel);border-color:var(--line)}.journal-empty:hover{background:var(--soft)}.journal-empty p,.journal-heading p,.journal-entry p{color:var(--muted)}.journal-orbit:before,.journal-orbit:after{border-color:var(--accent)}.journal-entry{border-color:var(--line)}.journal-entry h3{color:var(--ink)}.journal-entry:hover h3{color:var(--accent)}.journal-orbit span,.journal-arrow{color:var(--accent)}.contact-section{background:var(--blue);color:#fff}.contact-section .section-kicker{color:#e6efff;border-color:#ffffff4d}.contact-section .status-dot{background:#fff}.contact-heading h2 span{-webkit-text-stroke-color:#fff}.contact-orb{background:#fff;color:var(--blue)}.contact-grid{border-color:#ffffff4d}.contact-email{border-color:#ffffff70}.contact-details>.mono,.contact-phone,.social-links a{color:#fff}.contact-form input,.contact-form select,.contact-form textarea{color:#fff;border-color:#ffffff70;background:transparent}.contact-form option{color:#0e1f38;background:#fff}.contact-form label{color:#e8f0ff}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#dae8ff}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:white;outline-color:#fff}.contact-form [type=submit]{background:#fff;color:#0758db}.contact-form [type=submit]:hover{background:#101d35;color:#fff}.form-privacy{color:#e9f1ff}.contact-section #form-status{color:#fff}.contact-section .form-status{color:#fff}.footer{background:var(--bg);border-color:var(--line);color:var(--muted)}.footer .wordmark{color:var(--ink)}.intro{background:var(--blue);color:#fff}.intro-top,.intro-bottom{color:#fff}.intro-mark{color:#fff}.intro-progress{background:#ffffff4d}.intro-progress:after{background:white}.intro-skip{color:#fff}.mobile-nav{background:var(--bg)}.mobile-nav a{color:var(--ink);border-color:var(--line)}.mobile-nav a span,.mobile-nav p{color:var(--muted)}
.project-dialog,.privacy-dialog{background:var(--bg);color:var(--ink);border-color:var(--line)}.project-description,.project-summary,.project-meta>div>span,.project-topbar>button,.empty-project{color:var(--muted)}.project-meta>div{color:var(--ink)}.project-meta,.project-detail-header,.project-next,.project-outlinks,.case-footer{border-color:var(--line)}.project-video{background:var(--soft);color:var(--ink)}.project-video p{color:var(--muted)}.project-next:hover{background:var(--soft)}.project-next h3,.project-next h2{color:var(--ink)}.case-number{-webkit-text-stroke-color:var(--line)}.privacy-content p{color:var(--muted)}
/* Blog shares the same interface tokens as the portfolio. */
.blog-header,.blog-intro,.journal-entry,.blog-cta,.blog-footer,.related,.related-list>a,.article-aside,.author-line{border-color:var(--line)}.blog-logo span,.tiny-dot,.note-arrow,.blog-intro h1 sup,.journal-tools h2 sup,.journal-tools button,.text-link span,.related-arrow,.author-star,.blog-cta b{color:var(--accent)}.tiny-dot{background:var(--accent)}.blog-header nav a[aria-current]{color:var(--accent)}.header-talk{border-color:var(--line)}.header-talk:hover{background:var(--blue);color:white;border-color:var(--blue)}.blog-intro h1>span,.eyebrow,.entry-meta,.entry-bottom,.entry-copy>p,.breadcrumb,.article-meta,.article-deck>p,.article-aside>p,.article-aside>small,.blog-footer,.blog-cta>a>span,.related>h2>span{color:var(--muted)}.blog-footer>a:first-child,.entry-bottom>a,.article-meta>span:first-child,.article-prose h2,.article-prose h3,.article-prose h4,.author-line strong{color:var(--ink)}.article-prose{color:var(--ink)}.article-prose a,.article-prose li::marker{color:var(--accent)}.article-prose blockquote{border-color:var(--accent);color:var(--ink)}.article-prose pre,.article-prose code{background:var(--soft);color:var(--ink)}.article-tags>span,.category-nav a,.journal-tools form{border-color:var(--line);color:var(--muted)}.journal-tools input{color:var(--ink)}.category-nav a[aria-current]{background:var(--blue);color:#fff;border-color:var(--blue)}.article-art,.journal-entry:nth-child(3n+2) .article-art,.journal-entry:nth-child(3n+3) .article-art{background:#075eff;color:white}.journal-entry:nth-child(3n+2) .article-art{background:#142b56;color:#8fbaff}.journal-entry:nth-child(3n+3) .article-art{background:#e4edff;color:#1049bc}.article-art:before{content:"";position:absolute;inset:15%;border:1px solid #ffffff40;border-radius:50%;transform:rotate(-30deg) scaleY(.55)}.journal-entry:nth-child(3n+2) .art-star{font-family:Georgia,serif;font-style:italic;transform:rotate(-10deg)}.entry-visual:hover .art-star{transform:rotate(30deg)}.private-preview{background:var(--soft);color:var(--ink);border-bottom:1px solid var(--line)}.blog-error>p:not(.eyebrow){color:var(--muted)}.blog-skip:focus{background:var(--blue);color:#fff}.entry-visual{transform:perspective(1100px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .3s}.related-number{color:var(--muted)}.language-fallback{background:var(--soft);color:var(--muted);padding:12px var(--pad,5vw);font-size:12px}
@media(max-width:1150px){.header{gap:18px}.header-contact{display:none}.desktop-nav{gap:20px}.experience-controls{gap:8px}.signal-skills{grid-template-columns:repeat(2,minmax(0,1fr))}.project-topbar nav:not(.language-switch){gap:18px}.blog-header{gap:18px}.blog-header nav{gap:20px}}
@media(max-width:760px){.header{height:78px;padding-inline:22px;gap:12px}.wordmark{font-size:20px;letter-spacing:-1.3px;gap:4px}.brand-star{font-size:27px}.header .experience-controls{margin-left:auto;gap:7px}.experience-controls button{width:32px;height:32px;padding:7px}.experience-controls .language-switch{gap:0;padding:2px}.language-switch a{min-width:27px;min-height:26px;font-size:9px}.menu-toggle{margin-left:0!important;width:27px;flex-shrink:0}.mobile-nav{top:78px;padding-top:28px;gap:0}.mobile-nav a{font-size:42px;padding-block:15px}.hero{padding-top:20px}.hero-type h1{font-size:18vw}.hero-manifesto{max-width:155px;top:2px}.hero-manifesto p{font-size:14px}.hero-id{margin-bottom:22px}.hero-main{margin-top:33px}.hero-art{height:350px}.hero-bottom{margin-top:10px}.hero-eyebrow{font-size:7px}.skills-signal{padding-top:40px;padding-bottom:60px}.skills-heading{margin:28px 0}.skills-heading h2{font-size:41px}.skills-heading p{margin-top:22px;max-width:100%;font-size:12px}.skills-instruction{font-size:8px;margin-bottom:18px;max-width:285px}.signal-skills{grid-template-columns:1fr;gap:12px}.skill-module summary{padding:20px 22px;display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.skill-meta{grid-column:1/-1}.skill-symbol{grid-column:2;grid-row:2/5;justify-self:end;margin:25px 0 5px;align-self:center;height:64px}.skill-symbol svg{width:72px;height:64px}.skill-module h3{grid-column:1;font-size:25px;margin-top:23px;margin-bottom:9px}.skill-subtitle{grid-column:1;line-height:1.5;font-size:10px}.skill-wave{grid-column:1/-1;margin:20px 0 15px;height:12px}.skill-expand{grid-column:1/-1;padding-top:12px;font-size:8px}.skill-body{padding:0 22px 20px}.skill-body li{font-size:12px}.studio-sticker{border-width:3px;right:-2%}.pointer-ring{display:none}.scroll-meter{display:none}.contact-heading h2{font-size:12vw}.contact-section{padding-bottom:50px}.blog-header{padding:20px 22px;gap:14px}.blog-header .header-talk{display:none}.blog-header .experience-controls{margin-left:auto;order:initial}.blog-header nav:not(.language-switch){order:3;width:100%;margin-top:6px}.blog-header .language-switch{width:auto;order:initial;margin:0}.blog-logo{font-size:20px}.blog-logo span{font-size:26px;margin-left:6px}.project-topbar{flex-wrap:wrap;padding:20px 22px;gap:14px}.project-topbar .experience-controls{margin-left:auto}.case-page .project-topbar nav:not(.language-switch){order:3;width:100%;margin:0;justify-content:space-between}.case-page .project-topbar nav a:last-child{display:initial}.case-page .project-topbar .language-switch{order:initial;width:auto;margin:0}.project-dialog .project-topbar{flex-wrap:nowrap}.article-header h1{font-size:43px}.article-prose{font-size:16px}.intro-caption{top:61%}}
@media(max-width:370px){.header{padding-inline:16px;gap:8px}.wordmark{font-size:18px}.brand-star{font-size:22px}.experience-controls{gap:5px}.language-switch a{min-width:24px}.hero-manifesto{max-width:125px}.hero-manifesto p{font-size:12px}.hero-art{height:315px}.skills-heading h2{font-size:37px}}
@media(prefers-reduced-motion:reduce){.pointer-ring,.click-burst{display:none!important}.pointer-surface{transform:none!important}.skill-module .skill-wave i{background:var(--accent);animation:none!important}.skill-module,.about-image-wrap,.entry-visual{transition:none!important}}
.motion-paused .pointer-ring,.motion-paused .click-burst{display:none!important}.motion-paused .pointer-surface{transform:none!important}.motion-paused .skill-wave i,.motion-paused .skill-symbol{animation:none!important}
.about-section{background:var(--panel)}.footer-wordmark{color:var(--ink)}.footer-bottom,.privacy-dialog p{color:var(--muted)}.contact-form{border-color:#ffffff4d}.contact-section :focus-visible{outline-color:#fff}.submit-button{border-color:#fff}.intro-skip{border-color:#ffffff80}
.about-image-wrap .studio-sticker{filter:none}.about-image-wrap:before{border-color:var(--line)}
.case-page .project-topbar .language-switch a{display:grid}
.blog-header .language-switch a[aria-current=page]{color:#fff}
