@font-face{font-family:Almarai;src:url(/fonts/almarai/almarai-300.ttf)format("truetype");font-weight:300;font-style:normal;font-display:optional}@font-face{font-family:Almarai;src:url(/fonts/almarai/almarai-400.ttf)format("truetype");font-weight:400;font-style:normal;font-display:optional}@font-face{font-family:Almarai;src:url(/fonts/almarai/almarai-700.ttf)format("truetype");font-weight:700;font-style:normal;font-display:optional}@font-face{font-family:Almarai;src:url(/fonts/almarai/almarai-800.ttf)format("truetype");font-weight:800;font-style:normal;font-display:optional}@font-face{font-family:Cormorant Garamond;src:url(/fonts/cormorant-garamond/cormorant-garamond-400.ttf)format("truetype");font-weight:400;font-style:normal;font-display:optional}@font-face{font-family:Cormorant Garamond;src:url(/fonts/cormorant-garamond/cormorant-garamond-600.ttf)format("truetype");font-weight:600;font-style:normal;font-display:optional}@font-face{font-family:Cormorant Garamond;src:url(/fonts/cormorant-garamond/cormorant-garamond-700.ttf)format("truetype");font-weight:700;font-style:normal;font-display:optional}@font-face{font-family:Cormorant Garamond;src:url(/fonts/cormorant-garamond/cormorant-garamond-400-italic.ttf)format("truetype");font-weight:400;font-style:italic;font-display:optional}@font-face{font-family:Cormorant Garamond;src:url(/fonts/cormorant-garamond/cormorant-garamond-600-italic.ttf)format("truetype");font-weight:600;font-style:italic;font-display:optional}@font-face{font-family:Cormorant Garamond;src:url(/fonts/cormorant-garamond/cormorant-garamond-700-italic.ttf)format("truetype");font-weight:700;font-style:italic;font-display:optional}@font-face{font-family:Nikumaru;src:url(/fonts/nikumaru/07NikumaruFont-latin.woff2)format("woff2");font-weight:400;font-style:normal;font-display:optional}:root{--text:#5b6270;--text-h:#1a1a1a;--bg:#f7f3ef;--border:#dcd6d0;--code-bg:#f0ebe6;--accent:#477b93;--accent-bg:#deebef;--accent-border:#477b9380;--accent-strong:#375567;--seal-vermilion:#e63946;--social-bg:#f0ebe680;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--btn-primary:#2f3f4c;--btn-primary-hover:#375567;--btn-secondary-text:#121212;--btn-primary-soft-dark:#c0d7e1;--btn-primary-strong-dark:#95bccb;--sans:"Almarai", system-ui, "Segoe UI", Roboto, sans-serif;--heading:"Cormorant Garamond", Georgia, serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#dcd6d0;--text-h:#f6f6f6;--bg:#121212;--border:#7b7b7b;--code-bg:#1a1a1a;--accent:#6297ae;--accent-bg:#6297ae26;--accent-border:#6297ae80;--accent-strong:#95bccb;--seal-vermilion:#ff6f61;--social-bg:#1a1a1a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}#root{text-align:left;box-sizing:border-box;flex-direction:column;width:100%;min-height:100svh;display:flex}#root>main{flex:1}body{margin:0}.page-shell{box-sizing:border-box;width:100%;max-width:1126px;margin:0 auto;padding-inline:24px}@media (width<=600px){.page-shell{padding-inline:16px}}h1{font-family:"Nikumaru", var(--heading);text-transform:uppercase;letter-spacing:.16em;color:var(--text-h);margin:32px 0 16px;font-size:40px;font-style:normal;font-weight:400}@media (width<=1024px){h1{margin:20px 0 12px;font-size:26px}}h2{font-family:var(--heading);color:var(--text-h);font-size:24px;font-style:italic;font-weight:600}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code{font-family:var(--mono);color:var(--text-h);background:var(--code-bg);border-radius:4px;padding:4px 8px;font-size:15px;line-height:135%;display:inline-flex}.skip-link{z-index:100;clip-path:inset(50%);white-space:nowrap;background:var(--bg);width:1px;height:1px;color:var(--text-h);font-family:var(--sans);border:2px solid var(--accent-strong);border-radius:6px;padding:10px 16px;font-size:14px;font-weight:700;text-decoration:none;position:absolute;top:0;left:0;overflow:hidden}.skip-link:focus-visible{clip-path:none;white-space:normal;width:auto;height:auto;top:8px;left:8px;overflow:visible}.demo-banner{background:var(--seal-vermilion);color:#fff;font-family:var(--sans);text-align:center;padding:8px 16px;margin:0;padding-bottom:8px;font-size:.8rem;font-weight:600}.demo-banner a{color:#fff;text-underline-offset:2px;text-decoration:underline}.logo-light{display:block}.logo-dark{display:none}@media (prefers-color-scheme:dark){.logo-light{display:none}.logo-dark{display:block}}.site-button{font-family:var(--sans);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;border:2px solid #0000;border-radius:6px;justify-content:center;align-items:center;padding:10px 24px;font-weight:700;text-decoration:none;transition:background-color .2s,color .2s,border-color .2s;display:inline-flex;position:relative;overflow:hidden}.site-button-large{font-size:16px}.site-button-medium{font-size:14px}.site-button-small{font-size:12px}.site-button-primary{background:var(--btn-primary);border-color:var(--btn-primary);color:#fff}.site-button-primary:hover{background:var(--btn-primary-hover);border-color:var(--btn-primary-hover)}.site-button-secondary{border-color:var(--btn-primary);color:var(--btn-secondary-text);background:0 0;line-height:1.2}.site-button-secondary:hover{background:var(--btn-primary);color:#fff}.site-button-secondary[aria-pressed=true]{background:var(--seal-vermilion);border-color:var(--seal-vermilion);color:#fff}@media (prefers-color-scheme:dark){.site-button-primary{background:var(--btn-primary-soft-dark);border-color:var(--btn-primary-soft-dark);color:#1a1a1a}.site-button-primary:hover{background:var(--btn-primary-strong-dark);border-color:var(--btn-primary-strong-dark);color:#1a1a1a}.site-button-secondary{color:#f6f6f6;border-color:#f6f6f6}.site-button-secondary:hover{background:var(--btn-primary-soft-dark);border-color:var(--btn-primary-soft-dark);color:#1a1a1a}}.site-button:before{content:"";background:linear-gradient(90deg, transparent, var(--seal-vermilion), transparent);opacity:.55;border-radius:9999px;height:2px;transition:transform .3s,opacity .3s;position:absolute;bottom:6px;left:12%;right:12%;transform:scaleX(.45)}.site-button:hover:before,.site-button:focus-visible:before{opacity:1;transform:scaleX(1)}.site-button:focus-visible{outline-offset:2px;outline:3px solid #95bccb}header{z-index:50;border-bottom:1px solid var(--border);background:var(--bg);position:sticky;top:0}html{scroll-padding-top:128px}.header-inner{padding-block:16px}.header-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.brand{border-radius:10px;display:inline-flex}.brand:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.logo{width:auto;height:64px}.menu-toggle{font:inherit;border:1px solid var(--border);background:var(--code-bg);color:var(--text-h);cursor:pointer;border-radius:10px;padding:8px 12px;display:none}.menu-toggle:hover{background:var(--accent-bg)}.menu-toggle:focus-visible{outline:3px solid var(--accent);outline-offset:2px}header nav{flex-wrap:wrap;gap:16px;display:flex}header nav a{color:var(--text-h);font-family:var(--sans);text-transform:uppercase;letter-spacing:.08em;padding:6px 4px;font-size:14px;font-weight:700;text-decoration:none;transition:color .15s;position:relative}header nav a:hover{color:var(--accent-strong)}header nav a:before{content:"";background-color:var(--accent-strong);transform-origin:100%;border-radius:4px;width:100%;height:2px;transition:transform .3s ease-in-out;position:absolute;bottom:0;left:0;transform:scaleX(0)}header nav a:hover:before{transform-origin:0;transform:scaleX(1)}header nav a:focus-visible{outline:3px solid var(--accent-strong);outline-offset:2px;border-radius:4px}@media (width<=480px){.menu-toggle{display:inline-block}header nav{flex-direction:column;flex-basis:100%;order:3;gap:4px;display:none}header nav.open{display:flex}}footer{border-top:1px solid var(--border);background:var(--code-bg);margin-top:48px;padding-block:40px 0}.footer-inner{grid-template-columns:1.4fr .6fr .8fr .6fr;gap:32px;padding-bottom:32px;display:grid}.footer-brand .brand-logo-link,.footer-brand a{display:inline-flex}.footer-logo{width:auto;height:64px;margin-bottom:12px}.footer-note{font-family:var(--sans);color:var(--text);max-width:46ch;font-size:.85rem;line-height:1.6}.footer-note a{color:var(--accent-strong);text-underline-offset:2px;text-decoration:underline;transition:color .15s}.footer-note a:hover{color:var(--accent)}.footer-nav,.footer-contact{font-family:var(--sans);flex-direction:column;gap:8px;font-size:.9rem;display:flex}.footer-nav a,.footer-contact a{color:var(--text-h);width:fit-content;text-decoration:none;transition:color .15s}.footer-nav a:hover,.footer-contact a:hover{color:var(--accent-strong)}.footer-contact-row{align-items:center;gap:8px;display:flex}.footer-contact svg{color:var(--accent-strong);flex-shrink:0}.footer-nav a span,.footer-contact a span{position:relative}.footer-nav a span:before,.footer-contact a span:before{content:"";background-color:var(--accent-strong);transform-origin:100%;border-radius:4px;width:100%;height:2px;transition:transform .3s ease-in-out;position:absolute;bottom:-2px;left:0;transform:scaleX(0)}.footer-nav a:hover span:before,.footer-contact a:hover span:before{transform-origin:0;transform:scaleX(1)}.footer-nav a:focus-visible,.footer-contact a:focus-visible{outline:3px solid var(--accent-strong);outline-offset:2px;border-radius:4px}.footer-social{align-items:flex-start;gap:14px;display:flex}.footer-social a{color:var(--text-h);transition:color .15s,transform .15s;display:inline-flex}.footer-social a:hover{color:var(--accent-strong);transform:translateY(-2px)}.footer-social a:focus-visible{outline:3px solid var(--accent-strong);outline-offset:2px;border-radius:4px}.footer-bottom{border-top:1px solid var(--border);padding-block:16px}.footer-bottom p{font-family:var(--sans);color:var(--text);font-size:.75rem}@media (width<=800px){.footer-inner{grid-template-columns:1fr 1fr}}@media (width<=480px){.footer-inner{grid-template-columns:1fr}}.hero{text-align:left;grid-template-columns:1.4fr 1fr;align-items:center;gap:60px;padding-block:48px;display:grid}.hero-status{width:fit-content;font-family:var(--sans);text-transform:uppercase;letter-spacing:.06em;border:1px solid var(--accent-border);background:var(--accent-bg);color:var(--accent-strong);border-radius:9999px;align-items:center;margin-bottom:28px;padding:4px 14px;font-size:12px;font-weight:700;display:inline-flex}.hero h1{margin:0 0 12px;font-size:48px;line-height:1.2}.hero-role{font-family:var(--heading);color:var(--text-h);margin-bottom:24px;font-size:20px;font-style:italic}.hero-lead{font-family:var(--sans);color:var(--text);max-width:58ch;margin-bottom:28px;line-height:1.7}.hero-image-wrap{border:1px solid var(--border);background:linear-gradient(165deg, var(--accent-bg), transparent);border-radius:28px;padding:12px}.hero-image{aspect-ratio:4/5;object-fit:cover;object-position:center 28%;border-radius:20px;width:100%;display:block}@media (width<=1024px){.hero h1{font-size:28px}}@media (width<=900px){.hero{grid-template-columns:1fr;padding-block:32px}.hero-image-wrap{max-width:320px;margin:0 auto}}.section-eyebrow{font-family:var(--sans);text-transform:uppercase;letter-spacing:.1em;color:var(--accent);margin-bottom:8px;font-size:.65rem;font-weight:300}.projects-intro{text-align:left;padding-block:32px 0}.projects-intro h2{font-family:var(--heading);text-transform:none;letter-spacing:normal;margin:0 0 12px;padding-bottom:8px;font-size:32px;font-style:italic;font-weight:600}.projects-intro h2 strong{font-weight:600}.projects-intro p{color:var(--text);max-width:60ch;line-height:1.6}.category-filters{flex-wrap:wrap;gap:10px;padding-top:24px;padding-bottom:28px;display:flex}.category-filters button{font:inherit;font-family:var(--sans);text-transform:uppercase;letter-spacing:.06em;border:1px solid var(--border);background:var(--code-bg);color:var(--text-h);cursor:pointer;border-radius:24px;padding:2px 24px;font-size:.65rem;font-weight:700;text-decoration:none;transition:background .15s,border-color .15s}.category-filters button:not(.active):hover{border-color:var(--accent-strong);color:var(--accent-strong)}.category-filters button.active{background:var(--btn-primary);border-color:var(--btn-primary);color:#fff}.category-filters button:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.project-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));align-items:stretch;gap:28px;padding-block:24px 48px;display:grid}.project-card{border:1px solid var(--border);border-left:4px solid var(--border);background:linear-gradient(160deg, var(--bg), var(--code-bg));border-radius:18px;flex-direction:column;height:100%;transition:box-shadow .25s,transform .25s,border-color .25s;display:flex;overflow:hidden;box-shadow:0 1px 3px #0000000f}.project-card:hover{box-shadow:var(--shadow);border-color:#8f8882;transform:translateY(-4px)}.project-card-image-wrap{aspect-ratio:16/10;background:var(--code-bg);overflow:hidden}.project-card img{object-fit:cover;width:100%;height:100%;transition:transform .4s;display:block}.project-card:hover img{transform:scale(1.04)}.project-card-body{text-align:left;flex-direction:column;flex:1;gap:10px;padding:20px;display:flex}.project-card-tags{flex-wrap:wrap;gap:6px;display:flex}.project-card-tag{font-family:var(--sans);text-transform:uppercase;letter-spacing:.06em;color:var(--accent-strong);background:var(--accent-bg);border:1px solid var(--accent-border);border-radius:9999px;margin-bottom:10px;padding:1px 20px;font-size:.6rem;font-weight:700}.project-card h2{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:1.25rem;line-height:1.2;display:-webkit-box;overflow:hidden}.project-card-description{font-family:var(--sans);color:var(--text);-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;flex:1;font-size:.7rem;line-height:1.55;display:-webkit-box;overflow:hidden}.project-card-actions{justify-content:space-between;align-items:center;gap:12px;margin-top:16px;display:flex}.project-card-actions .site-button{padding:9px 16px}.project-card-actions .site-button:hover{transform:translateY(-1px)}.project-card:focus-within{outline:3px solid var(--accent);outline-offset:2px}@media (width<=600px){.category-filters{padding:16px 16px 0}.project-grid{grid-template-columns:1fr}}
