@layer base{.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.hide-scrollbar::-webkit-scrollbar{display:none}.custom-scrollbar::-webkit-scrollbar{width:4px;height:4px}.custom-scrollbar::-webkit-scrollbar-track{background:var(--routn-primary-100);border-radius:2px}.custom-scrollbar::-webkit-scrollbar-thumb{background:color-mix(in oklab, var(--primary) 60%, transparent);border-radius:2px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:color-mix(in oklab, var(--primary) 80%, transparent)}.table-scroll-container{-ms-overflow-style:auto;scrollbar-width:thin;scrollbar-color:#d4d4d4 #f5f5f5}.table-scroll-container::-webkit-scrollbar{height:8px;display:block}.table-scroll-container::-webkit-scrollbar-track{background:#f5f5f5;border-radius:4px}.table-scroll-container::-webkit-scrollbar-thumb{background:#d4d4d4;border-radius:4px}.table-scroll-container::-webkit-scrollbar-thumb:hover{background:#a3a3a3}}@keyframes routn-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes routn-cue-pulse{0%,to{opacity:.5;transform:scaleX(.4)}50%{opacity:1;transform:scaleX(1)}}.studio-marquee,.studio-marquee-rev,.studio-marquee-slow{will-change:transform;transform:translateZ(0)}.studio-marquee{animation:50s linear infinite routn-marquee}.studio-marquee-slow{animation:56s linear infinite routn-marquee}@keyframes routn-marquee-rev{0%{transform:translate(-50%)}to{transform:translate(0)}}.studio-marquee-rev{animation:42s linear infinite routn-marquee-rev}.studio-marquee-track:hover .studio-marquee,.studio-marquee-track:hover .studio-marquee-rev,.studio-marquee-track:hover .studio-marquee-slow{animation-play-state:paused}@keyframes scrolling-banner{0%{transform:translate(0)}to{transform:translateX(calc(-50% - var(--gap) / 2))}}@keyframes scrolling-banner-vertical{0%{transform:translateY(0)}to{transform:translateY(calc(-50% - var(--gap) / 2))}}.animate-scrolling-banner{animation:scrolling-banner var(--duration,40s) linear infinite}.animate-scrolling-banner-reverse{animation:scrolling-banner var(--duration,40s) linear infinite reverse}.animate-scrolling-banner-vertical{animation:scrolling-banner-vertical var(--duration,40s) linear infinite}.studio-grain:after{content:"";z-index:0;pointer-events:none;opacity:.025;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}.studio-hero{background:radial-gradient(125% 95% at 8% -5%, var(--surface-secondary) 0%, var(--background) 58%)}.studio-hero-glow-top{background:radial-gradient(60% 100% at 50% -10%, color-mix(in oklab, var(--color-primary-400) 30%, transparent), transparent 70%)}.studio-hero-glow-accent{background:radial-gradient(70% 70% at 18% 22%, color-mix(in oklab, var(--color-primary-400) 10%, transparent), transparent 72%)}.studio-scroll-cue{animation:1.9s ease-in-out infinite routn-cue-pulse}.studio-proc-rail{background:linear-gradient(90deg, var(--accent), var(--border) 85%);height:1px;position:absolute;top:5px;left:0;right:0}.portfolio-dot-grid{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28'%3E%3Ccircle cx='1.5' cy='1.5' r='1' fill='currentColor'/%3E%3C/svg%3E");background-size:28px 28px}.portfolio-cross-grid{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Cpath d='M48 0L0 48M-24 24L24 72M24 -24L72 24' fill='none' stroke='currentColor' stroke-width='0.65' opacity='0.55'/%3E%3C/svg%3E");background-size:48px 48px}.portfolio-edge-vignette{background:linear-gradient(90deg, var(--background) 0%, transparent 8%, transparent 92%, var(--background) 100%),linear-gradient(180deg, transparent 0%, transparent 88%, color-mix(in oklab, var(--background) 92%, transparent) 100%)}@media (max-width:900px){.studio-intro-grid,.studio-phil-grid,.studio-contact-grid{grid-template-columns:1fr!important}.studio-proc-grid,.studio-statbar{grid-template-columns:1fr 1fr!important}.studio-statbar>*{border-bottom:1px solid var(--border);border-right:none!important}.studio-statbar>:nth-child(odd){border-right:1px solid var(--border)!important}.studio-statbar>:nth-last-child(-n+2){border-bottom:none}}@media (max-width:760px){.studio-navlinks{display:none!important}}@media (max-width:900px){.studio-foot-grid{grid-template-columns:1fr 1fr!important}}@media (max-width:560px){.studio-proc-grid,.studio-statbar,.studio-foot-grid{grid-template-columns:1fr!important}.studio-statbar>*{border-bottom:1px solid var(--border);border-right:none!important}.studio-statbar>:last-child{border-bottom:none}}@media (prefers-reduced-motion:reduce){.studio-marquee,.studio-marquee-fast,.studio-marquee-rev,.studio-marquee-slow,.studio-scroll-cue,.animate-scrolling-banner,.animate-scrolling-banner-reverse,.animate-scrolling-banner-vertical{animation:none}}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.hide-scrollbar::-webkit-scrollbar{display:none}.routn-table.table-root--secondary .table__header{background-color:#0000;border-bottom-width:0}.routn-table.table-root--secondary .table__column:after{content:none}.routn-table.table-root--secondary .table__row{border-bottom-width:0}.routn-table.table-root--secondary .table__row .table__cell{background-color:#0000;border-bottom-width:0}@media (hover:hover){.routn-table.table-root--secondary .routn-row--clickable:hover .table__cell,.routn-table.table-root--secondary .routn-row--clickable[data-hovered=true] .table__cell{background-color:color-mix(in oklab, var(--primary) 8%, transparent)}}.routn-table.table-root--secondary .routn-row--clickable:hover .table__cell:first-child{border-top-left-radius:8px;border-bottom-left-radius:8px}.routn-table.table-root--secondary .routn-row--clickable:hover .table__cell:last-child{border-top-right-radius:8px;border-bottom-right-radius:8px}#__next-build-indicator,#__next-build-watcher,__next-build-watcher,nextjs-portal,[data-nextjs-toast],[data-nextjs-portal]{display:none!important}@media print{*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;color-adjust:exact!important}html,body{width:210mm;height:297mm;margin:0;padding:0;overflow:visible;background:#fff!important}.no-print,header,nav,button:not(.print-included),.sidebar,.overlay{display:none!important}.resume-section,.resume-section>div>div{page-break-inside:avoid;break-inside:avoid}h1,h2,h3,h4,h5,h6{page-break-after:avoid;break-after:avoid}.shadow-card,.shadow-lg,.shadow-md,.shadow-sm{box-shadow:none!important}.bg-background,.bg-default-50,.bg-foreground-50{background:#fff!important}.text-default-500,.text-default-600,.text-foreground-500,.text-foreground-600{color:#374151!important}.text-foreground,.text-foreground-700{color:#1f2937!important}.border-divider,.border-default-200{border-color:#0000!important}a{text-decoration:underline;color:#2563eb!important}input[type=checkbox],input[type=radio],.drag-handle,button,.add-button,.delete-button,.edit-button{display:none!important}input,textarea{resize:none!important;appearance:none!important;background:0 0!important;border:none!important;padding:0!important}input::placeholder,textarea::placeholder{opacity:0!important}}.device .device-screen{background-color:var(--color-content2)!important;object-fit:contain!important}.mockup-device-chromeless .device-notch,.mockup-device-chromeless .device-camera,.mockup-device-chromeless .device-sensor,.mockup-device-chromeless .device-home,.mockup-device-chromeless .device-stripe,.mockup-device-chromeless .device-header,.mockup-device-chromeless .device-sensors,.mockup-device-chromeless .device-btns,.mockup-device-chromeless .device-power{display:none!important}.mockup-device-chromeless .device-frame:before,.mockup-device-chromeless .device-frame:after,.mockup-device-chromeless .device-stripe:before,.mockup-device-chromeless .device-stripe:after,.mockup-device-chromeless .device-header:before,.mockup-device-chromeless .device-header:after,.mockup-device-chromeless .device-sensors:before,.mockup-device-chromeless .device-sensors:after,.mockup-device-chromeless .device-btns:before,.mockup-device-chromeless .device-btns:after,.mockup-device-chromeless .device-power:before,.mockup-device-chromeless .device-power:after,.mockup-device-chromeless .device-home:before,.mockup-device-chromeless .device-home:after{content:none!important;display:none!important}.period-date-filter .date-input-group__input{padding-left:0;padding-right:0}
