:root{--bg: #F6F8F5;--surface: #FFFFFF;--tint: #EAF1EB;--ink: #10211A;--muted: #4A5D53;--line: #D8E2DA;--forest: #1A4A36;--forest-ink: #FFFFFF;--leaf: #4FAE62;--leaf-text: #2A7A42;--mark: #1A4A36;--band: #1A4A36;--band-ink: #F1F7F2;--band-muted: #B9D3C1;--term-bg: #10211A;--term-ink: #D9E8DE;--term-muted: #8FA99A;--f-display: "Urbanist", "Avenir Next", "Segoe UI", system-ui, sans-serif;--f-body: "Figtree", "Segoe UI", system-ui, -apple-system, sans-serif;--f-mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--radius: 18px;--wrap: 1160px;--header-h: 72px}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg: #0C1712;--surface: #12211A;--tint: #10201A;--ink: #E6F0E9;--muted: #A1B6AA;--line: #22362C;--forest: #5CC071;--forest-ink: #0C1712;--leaf: #5CC071;--leaf-text: #7FD493;--mark: #E6F0E9;--band: #143A2B;--band-ink: #F1F7F2;--band-muted: #A9C9B3;--term-bg: #08110D;--term-ink: #D9E8DE;--term-muted: #86A091;color-scheme:dark}}:root[data-theme=dark]{--bg: #0C1712;--surface: #12211A;--tint: #10201A;--ink: #E6F0E9;--muted: #A1B6AA;--line: #22362C;--forest: #5CC071;--forest-ink: #0C1712;--leaf: #5CC071;--leaf-text: #7FD493;--mark: #E6F0E9;--band: #143A2B;--band-ink: #F1F7F2;--band-muted: #A9C9B3;--term-bg: #08110D;--term-ink: #D9E8DE;--term-muted: #86A091;color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--bg)}h1,h2,h3{font-family:var(--f-display);line-height:1.1;margin:0;text-wrap:balance;letter-spacing:-.02em}h1{font-size:clamp(2.4rem,5.4vw,4.1rem);font-weight:700}h2{font-size:clamp(1.8rem,3.4vw,2.6rem);font-weight:700}h3{font-size:1.3rem;font-weight:600}p{margin:0}a{color:inherit}:focus-visible{outline:3px solid var(--leaf);outline-offset:3px;border-radius:6px}.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}.eyebrow{display:inline-block;font-family:var(--f-mono);font-size:.75rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--leaf-text)}.lead{font-size:1.125rem;color:var(--muted);max-width:62ch}.skip{position:absolute;left:-999px;top:8px;background:var(--surface);padding:8px 14px;z-index:100}.skip:focus{left:16px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 24px;border-radius:999px;font-family:var(--f-display);font-weight:600;font-size:1rem;text-decoration:none;border:1.5px solid transparent;cursor:pointer;transition:transform .15s ease,background-color .15s ease,border-color .15s ease}.btn:hover{transform:translateY(-1px)}.btn--primary{background:var(--forest);color:var(--forest-ink)}.btn--ghost{background:transparent;color:var(--ink);border-color:var(--line)}.btn--ghost:hover{border-color:var(--ink)}.btn--light{background:var(--band-ink);color:#143a2b}.btn--sm{min-height:44px;padding:0 18px;font-size:.95rem}.text-link{display:inline-flex;align-items:center;gap:6px;font-family:var(--f-display);font-weight:600;text-decoration:none;color:var(--leaf-text);white-space:nowrap}.text-link:hover{text-decoration:underline;text-underline-offset:4px}.header{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:saturate(140%) blur(10px);-webkit-backdrop-filter:saturate(140%) blur(10px);border-bottom:1px solid var(--line)}.header__inner{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:var(--header-h)}.header__brand{text-decoration:none;display:inline-flex}.logo{display:inline-flex;align-items:center;gap:10px}.logo__word{font-family:var(--f-display);font-weight:600;font-size:1.5rem;letter-spacing:-.02em;color:var(--mark)}.hexmark__hex{stroke:var(--mark)}.hexmark__leaf{fill:var(--leaf)}.hexmark__vein{stroke:var(--bg)}.nav{display:flex;align-items:center;gap:6px}.nav__link{text-decoration:none;padding:10px 14px;border-radius:999px;font-weight:500;color:var(--muted)}.nav__link:hover,.nav__link[aria-current=page]{color:var(--ink);background:var(--tint)}.header__toggle{display:none;width:44px;height:44px;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--ink);align-items:center;justify-content:center;cursor:pointer}@media (max-width: 820px){.header__toggle{display:inline-flex}.nav{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;gap:4px;padding:12px max(20px,env(safe-area-inset-right,0px)) 20px max(20px,env(safe-area-inset-left,0px));background:var(--bg);border-bottom:1px solid var(--line)}.nav--open{display:flex}.nav__link{padding:12px 14px}.nav .btn{margin-top:8px}}.page-enter{animation:fadeUp .45s ease both}@keyframes fadeUp{0%{opacity:.001;transform:translateY(8px)}to{opacity:1;transform:none}}.hero{padding-block:clamp(48px,8vw,96px) clamp(56px,8vw,104px);overflow:hidden}.hero__inner{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:48px;align-items:center}.hero__text{display:flex;flex-direction:column;gap:22px;min-width:0}.hero h1 em{font-style:italic;font-weight:600;color:var(--leaf-text)}.hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px}.hero__visual{position:relative;display:flex;flex-direction:column;align-items:center;min-width:0}.hero__mark{width:min(100%,300px);display:flex;justify-content:center}.hero__mark svg{width:100%;height:auto;max-width:300px}.terminal{width:min(100%,360px);margin-top:-18px;border-radius:14px;overflow:hidden;background:var(--term-bg);color:var(--term-ink);box-shadow:0 24px 48px -24px #10211a73}.terminal__bar{display:flex;gap:6px;padding:12px 14px 0}.terminal__bar span{width:9px;height:9px;border-radius:50%;background:var(--term-muted);opacity:.6}.terminal__body{margin:0;padding:12px 18px 18px;font-family:var(--f-mono);font-size:.86rem;line-height:1.75;display:flex;flex-direction:column;overflow-x:auto}.terminal__prompt{color:var(--term-muted)}.terminal__ok{color:#6fd388}.terminal__note{color:var(--term-muted)}.terminal__line{animation:fadeIn .4s ease both}@keyframes fadeIn{0%{opacity:.001}to{opacity:1}}.hexmark--animated .hexmark__hex{stroke-dasharray:100;stroke-dashoffset:0;animation:draw 1.3s cubic-bezier(.6,.1,.2,1) both}.hexmark--animated .hexmark__leaf{transform-origin:169px 72px;animation:grow .7s .95s cubic-bezier(.2,1.4,.4,1) both}.hexmark--animated .hexmark__vein{stroke-dasharray:80;animation:fadeIn .4s 1.4s both}@keyframes draw{0%{stroke-dashoffset:100}to{stroke-dashoffset:0}}@keyframes grow{0%{transform:scale(.2) rotate(-25deg);opacity:.001}to{transform:none;opacity:1}}@media (max-width: 860px){.hero__inner{grid-template-columns:minmax(0,1fr);gap:40px}.hero__mark{width:min(70%,240px)}}.section{padding-block:clamp(56px,8vw,96px)}.section--tint{background:var(--tint)}.section--flush-top{padding-top:8px}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:40px}.section-head__text{display:flex;flex-direction:column;gap:12px;min-width:0;max-width:680px}.cards-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}@media (max-width: 900px){.cards-3{grid-template-columns:minmax(0,1fr)}}.service-card{display:flex;flex-direction:column;gap:12px;padding:28px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);text-decoration:none;transition:border-color .2s ease,transform .2s ease}.service-card:hover{border-color:var(--leaf);transform:translateY(-3px)}.service-card p{color:var(--muted)}.service-card__icon{width:52px;height:52px;display:inline-flex;align-items:center;justify-content:center;color:var(--leaf-text);background:var(--tint);clip-path:polygon(50% 0,93.3% 25%,93.3% 75%,50% 100%,6.7% 75%,6.7% 25%)}.section--tint .service-card__icon{background:var(--surface)}.service-card__stack{margin-top:auto;padding-top:8px;font-family:var(--f-mono);font-size:.8rem;color:var(--muted)}.plain-card{padding:26px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);display:flex;flex-direction:column;gap:10px}.plain-card p{color:var(--muted)}.projects-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:20px}@media (max-width: 860px){.projects-grid{grid-template-columns:minmax(0,1fr)}}.project{display:flex;gap:28px;padding:28px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);min-width:0}.project--featured{align-items:center}.project__art{flex:0 0 auto;width:180px;aspect-ratio:1;max-width:100%;border-radius:14px;background:var(--tint);display:flex;align-items:center;justify-content:center}.project__body{display:flex;flex-direction:column;gap:10px;min-width:0}.project__tags{display:flex;gap:6px;flex-wrap:wrap}.project__name{font-family:var(--f-display);font-size:1.9rem;font-weight:700;letter-spacing:-.02em;line-height:1.1}.project__summary{color:var(--muted)}.project__highlights{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 18px}.project__highlights li{position:relative;padding-left:16px;font-size:.92rem;color:var(--ink)}.project__highlights li:before{content:"";position:absolute;left:0;top:.55em;width:8px;height:8px;background:var(--leaf);clip-path:polygon(50% 0,93.3% 25%,93.3% 75%,50% 100%,6.7% 75%,6.7% 25%)}.project__link{display:inline-flex;align-items:center;gap:6px;margin-top:6px;font-family:var(--f-display);font-weight:600;color:var(--leaf-text);text-decoration:none}.project__link:hover{text-decoration:underline;text-underline-offset:4px}@media (max-width: 560px){.project{flex-direction:column;align-items:flex-start}.project__art{width:120px}}.project--next{flex-direction:column;gap:10px;text-decoration:none;position:relative;overflow:hidden;background:transparent;border:1.5px dashed var(--line)}.project--next:hover{border-color:var(--leaf)}.project--next .project__name{font-size:1.5rem}.project__next-hex{width:44px;height:44px;margin-bottom:6px;background:var(--leaf);opacity:.9;clip-path:polygon(50% 0,93.3% 25%,93.3% 75%,50% 100%,6.7% 75%,6.7% 25%)}.project__art--tathaqaf{--tq-tile: #18233A;background:var(--tq-tile)}.tq-logo{display:block;max-width:84%;height:auto}.chip{display:inline-flex;align-items:center;padding:4px 12px;border-radius:999px;font-size:.8rem;font-weight:600;background:var(--tint);color:var(--leaf-text)}.chip--mono{font-family:var(--f-mono);font-weight:500;background:var(--surface);border:1px solid var(--line);color:var(--ink)}.chips{display:flex;flex-wrap:wrap;gap:8px}.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;counter-reset:s}.step{display:flex;flex-direction:column;gap:10px;padding-top:20px;border-top:2px solid var(--line)}.step:first-child{border-top-color:var(--leaf)}.step__num{font-family:var(--f-mono);font-size:.85rem;color:var(--leaf-text)}.step p{color:var(--muted)}@media (max-width: 900px){.steps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 520px){.steps{grid-template-columns:minmax(0,1fr)}}.cta-band{background:var(--band);color:var(--band-ink)}.cta-band__inner{display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap;padding-block:clamp(48px,7vw,80px)}.cta-band .lead{color:var(--band-muted);margin-top:10px}.cta-band__actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.cta-band__email{font-family:var(--f-mono);font-size:.95rem;color:var(--band-muted);-webkit-user-select:all;user-select:all}.page-hero{padding-block:clamp(48px,7vw,88px) clamp(40px,6vw,64px)}.page-hero .wrap>.eyebrow,.page-hero h1{margin-bottom:18px}.page-hero h1{max-width:18ch}.service-list{display:flex;flex-direction:column;gap:20px}.service-row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,.9fr);gap:32px;padding:32px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line)}.service-row__head{display:flex;flex-direction:column;gap:14px}.service-row__head .lead{font-size:1.05rem}.service-row__stack{display:flex;flex-direction:column;gap:12px}.checklist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.checklist li{position:relative;padding-left:26px}.checklist li:before{content:"";position:absolute;left:0;top:.5em;width:12px;height:12px;background:var(--leaf);clip-path:polygon(50% 0,93.3% 25%,93.3% 75%,50% 100%,6.7% 75%,6.7% 25%)}@media (max-width: 900px){.service-row{grid-template-columns:minmax(0,1fr);gap:22px;padding:24px}}.about-hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:48px;align-items:center}.about-hero h1{margin-top:18px}.name-card{padding:32px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);display:flex;flex-direction:column;gap:22px}.name-card__list{margin:0;display:flex;flex-direction:column;gap:18px}.name-card dt{font-family:var(--f-display);font-weight:700;font-size:1.4rem}.name-card dd{margin:4px 0 0;color:var(--muted)}@media (max-width: 860px){.about-hero{grid-template-columns:minmax(0,1fr)}}.contact__inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:start}.contact__intro{display:flex;flex-direction:column;gap:18px}.contact__intro h1{margin:0}.contact__email{display:flex;flex-direction:column;gap:10px;margin-top:12px;padding-top:24px;border-top:1px solid var(--line)}.copy-email{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.copy-email__addr{font-family:var(--f-display);font-weight:700;font-size:clamp(1.4rem,3vw,1.9rem);-webkit-user-select:all;user-select:all;overflow-wrap:anywhere}.copy-email__hint{font-size:.9rem;color:var(--muted)}.form{display:flex;flex-direction:column;gap:20px;padding:32px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line)}.field{display:flex;flex-direction:column;gap:8px;border:0;margin:0;padding:0;min-width:0}.field label,.field legend{font-weight:600;font-size:.95rem;padding:0;margin-bottom:0}fieldset.field legend{margin-bottom:10px}.field input,.field textarea{font:inherit;color:var(--ink);background:var(--bg);border:1.5px solid var(--line);border-radius:12px;padding:12px 14px;min-height:48px;width:100%}.field input:focus,.field textarea:focus{outline:none;border-color:var(--leaf)}.radio-chips{display:flex;flex-wrap:wrap;gap:8px}.radio-chip{position:relative;display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:999px;border:1.5px solid var(--line);cursor:pointer;font-weight:500;font-size:.95rem}.radio-chip input{position:absolute;opacity:0;top:0;right:0;bottom:0;left:0;cursor:pointer}.radio-chip--on{border-color:var(--forest);background:var(--forest);color:var(--forest-ink)}.radio-chip:has(input:focus-visible){outline:3px solid var(--leaf);outline-offset:2px}.form .btn{align-self:flex-start}.form__status{padding:14px 16px;border-radius:12px;background:var(--tint);color:var(--ink);font-size:.95rem}@media (max-width: 860px){.contact__inner{grid-template-columns:minmax(0,1fr);gap:36px}.form{padding:22px}}.footer{border-top:1px solid var(--line);padding-block:48px 28px}.footer__inner{display:flex;justify-content:space-between;gap:32px;flex-wrap:wrap}.footer__brand{display:flex;flex-direction:column;gap:12px}.footer__tag{color:var(--muted)}.footer__nav{display:flex;flex-wrap:wrap;gap:6px 22px;align-items:center}.footer__nav a{text-decoration:none;color:var(--muted);padding-block:8px}.footer__nav a:hover{color:var(--ink)}.footer__contact{display:flex;flex-direction:column;gap:6px}.footer__email{font-family:var(--f-display);font-weight:600;font-size:1.15rem;text-decoration:none}.footer__legal{margin-top:36px;font-size:.85rem;color:var(--muted)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}html{scroll-behavior:auto}}
