@charset "UTF-8";:root{color-scheme:dark;--bg: #080a0d;--bg-2: #0d1015;--surface: #11151b;--surface-2: #171c24;--text: #eef1f4;--muted: #8b95a5;--dim: #5b6572;--line: rgba(255, 255, 255, .08);--line-strong: rgba(255, 255, 255, .18);--accent: #c9f31d;--accent-rgb: 201, 243, 29;--accent-ink: #0a0f02;--signal: #3df2ff;--radius-sm: 4px;--radius-md: 10px;--radius-lg: 18px;--container: 1360px;--font-display: "Syne", "Segoe UI", system-ui, sans-serif;--font-body: "Manrope", "SF Pro Text", system-ui, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", Menlo, monospace;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-io: cubic-bezier(.65, 0, .35, 1);--nav-h: 76px;--mx: 50vw;--my: 40vh;--scroll: 0}[data-project=scholamap]{--p-accent: #4ade80;--p-accent-rgb: 74, 222, 128;--p-tint: #0b1a12;--p-font: var(--font-display);--p-pattern: radial-gradient(rgba(74, 222, 128, .32) 1px, transparent 1.5px);--p-pattern-size: 22px 22px}[data-project=beautiful-bride]{--p-accent: #ff7ab6;--p-accent-rgb: 255, 122, 182;--p-tint: #1c0d16;--p-font: var(--font-display);--p-pattern: repeating-radial-gradient( circle at 100% 0%, rgba(255, 122, 182, .22) 0 1px, transparent 1px 34px );--p-pattern-size: auto}[data-project=go-shuttle]{--p-accent: #ffb547;--p-accent-rgb: 255, 181, 71;--p-tint: #1b1308;--p-font: var(--font-display);--p-pattern: repeating-linear-gradient( -32deg, rgba(255, 181, 71, .16) 0 1px, transparent 1px 26px );--p-pattern-size: auto}[data-project=restaurant-management]{--p-accent: #cdaa67;--p-accent-rgb: 205, 170, 103;--p-tint: #132119;--p-font: "Playfair Display", Georgia, serif;--p-pattern: linear-gradient(rgba(205, 170, 103, .09) 1px, transparent 1px), linear-gradient(90deg, rgba(205, 170, 103, .09) 1px, transparent 1px);--p-pattern-size: 48px 48px}*,*:before,*:after{box-sizing:border-box}html{min-width:320px;scroll-behavior:smooth;background:var(--bg)}body{min-width:320px;min-height:100vh;margin:0;overflow-x:clip;color:var(--text);background:var(--bg);font-family:var(--font-body);font-size:1rem;line-height:1.6;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--font-display);font-weight:700;letter-spacing:-.03em;text-wrap:balance}p{text-wrap:pretty}::selection{color:var(--accent-ink);background:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media(hover:hover)and (pointer:fine){body.has-cursor,body.has-cursor a,body.has-cursor button{cursor:none}}.container{width:min(100% - 3rem,var(--container));margin-inline:auto}.page-shell{padding-block:calc(var(--nav-h) + 4.5rem) 7rem}.page-hero{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:1.5rem 3rem;align-items:end;padding-bottom:2.5rem;margin-bottom:4rem;border-bottom:1px solid var(--line)}.page-hero .index{align-self:start;padding-top:.5rem;color:var(--accent);font-family:var(--font-mono);font-size:.78rem;letter-spacing:.1em}.page-hero h1{grid-column:2;margin:0;font-size:clamp(2rem,4.4vw,3.6rem);line-height:1.05;letter-spacing:-.035em}.page-hero p{grid-column:2;max-width:640px;margin:0;color:var(--muted);font-size:clamp(1rem,1.3vw,1.1rem)}.eyebrow{display:inline-flex;align-items:center;gap:.6rem;margin-bottom:1.25rem;color:var(--accent);font-family:var(--font-mono);font-size:.72rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase}.eyebrow:before{width:.5rem;height:.5rem;content:"";background:currentColor;animation:blink 2.4s steps(2,jump-none) infinite}.mono{font-family:var(--font-mono);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase}.stroke{color:transparent;-webkit-text-stroke:1.5px rgba(238,241,244,.7)}.button{position:relative;display:inline-flex;min-height:3.2rem;align-items:center;justify-content:center;gap:.7rem;padding:.75rem 1.45rem;overflow:hidden;border:1px solid var(--accent);border-radius:999px;color:var(--accent-ink);background:var(--accent);font-family:var(--font-mono);font-size:.8rem;font-weight:500;letter-spacing:.08em;text-decoration:none;text-transform:uppercase;cursor:pointer;isolation:isolate;transition:color .3s var(--ease-out),border-color .3s var(--ease-out),transform .3s var(--ease-out)}.button:before{position:absolute;z-index:-1;inset:0;content:"";background:var(--text);transform:translateY(101%);transition:transform .42s var(--ease-out)}.button:hover:before{transform:translateY(0)}.button:hover{border-color:var(--text)}.button img,.button .inline-icon{width:1rem;height:1rem;transition:transform .3s var(--ease-out)}.button:hover img,.button:hover .inline-icon{transform:translate(3px,-3px)}.button.secondary{border-color:var(--line-strong);color:var(--text);background:transparent}.button.secondary:before{background:var(--accent)}.button.secondary:hover{border-color:var(--accent);color:var(--accent-ink)}.button.secondary img,.button.secondary .inline-icon{filter:invert(1)}.button.secondary:hover img,.button.secondary:hover .inline-icon{filter:none}.button.text{min-height:auto;padding:0;border:0;border-radius:0;color:var(--accent);background:none}.button.text:before{display:none}.button.disabled{border-color:var(--line);color:var(--dim);background:transparent;cursor:default}.button.disabled:before{display:none}.panel{position:relative;border:1px solid var(--line);border-radius:var(--radius-md);background:linear-gradient(180deg,#ffffff08,#ffffff03)}.corners:before,.corners:after{position:absolute;z-index:2;width:14px;height:14px;content:"";border-color:var(--p-accent, var(--accent));border-style:solid;pointer-events:none;transition:inset .4s var(--ease-out)}.corners:before{top:10px;left:10px;border-width:1px 0 0 1px}.corners:after{right:10px;bottom:10px;border-width:0 1px 1px 0}.corners:hover:before{top:6px;left:6px}.corners:hover:after{right:6px;bottom:6px}.tag-list{display:flex;flex-wrap:wrap;gap:.5rem;padding:0;margin:0;list-style:none}.tag{padding:.35rem .65rem;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-family:var(--font-mono);font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;transition:border-color .25s,color .25s}.tag:hover{border-color:var(--p-accent, var(--accent));color:var(--text)}.skip-link{position:fixed;z-index:1000;top:.75rem;left:.75rem;padding:.7rem 1rem;border-radius:.4rem;color:var(--accent-ink);background:var(--accent);font-family:var(--font-mono);transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.inline-icon{width:1rem;height:1rem;flex:none}.marquee{--marquee-duration: 34s;display:flex;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);-webkit-user-select:none;user-select:none}.marquee-track{display:flex;flex:none;gap:2.5rem;min-width:100%;padding-right:2.5rem;animation:marquee var(--marquee-duration) linear infinite}.marquee.reverse .marquee-track{animation-direction:reverse}.marquee:hover .marquee-track{animation-play-state:paused}[appReveal]{--reveal-delay: 0ms;opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease-out) var(--reveal-delay),transform .9s var(--ease-out) var(--reveal-delay),filter .9s var(--ease-out) var(--reveal-delay)}[appReveal][data-reveal=clip]{overflow:hidden;opacity:1;transform:none}[appReveal][data-reveal=clip]>*{display:block;transform:translateY(110%) skewY(4deg);transform-origin:left top;transition:transform 1s var(--ease-out) var(--reveal-delay)}[appReveal].is-visible[data-reveal=clip]>*{transform:none}[appReveal][data-reveal=blur]{filter:blur(14px);transform:translateY(0) scale(.985)}[appReveal][data-reveal=left]{transform:translate(-40px)}[appReveal][data-reveal=scale]{transform:scale(.94)}[appReveal].is-visible{opacity:1;filter:blur(0);transform:none}[appReveal]>[data-stagger]{opacity:0;transform:translateY(18px);transition:opacity .7s var(--ease-out) calc(var(--i, 0) * 80ms + .12s),transform .7s var(--ease-out) calc(var(--i, 0) * 80ms + .12s)}[appReveal].is-visible>[data-stagger]{opacity:1;transform:none}.section{padding-block:4.5rem;border-top:1px solid var(--line)}.section-head{max-width:760px;margin-bottom:2.5rem}.section-title{margin:0;font-size:clamp(1.45rem,2.3vw,2rem);line-height:1.15;letter-spacing:-.03em}.section-head p{margin:1rem 0 0;color:var(--muted)}.cell-grid{--cols: 4;display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));padding:0;margin:0;border-top:1px solid var(--line);border-left:1px solid var(--line);list-style:none}.cell-grid>*{position:relative;padding:1.6rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .3s}.cell-grid>*:hover{background:rgba(var(--accent-rgb),.05)}.cell-grid h3{margin:0 0 .5rem;font-size:1.05rem}.cell-grid p{margin:0;color:var(--muted);font-size:.95rem}.cell-grid>*>.mono{display:block;margin-bottom:1.2rem;color:var(--accent)}.step-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem;padding:0;margin:0;list-style:none}.step-list.two{grid-template-columns:1fr 1fr}.step-list li{position:relative;padding-top:1.4rem;border-top:1px solid var(--line-strong)}.step-list li:before{position:absolute;top:-4px;left:0;width:7px;height:7px;content:"";background:var(--accent);box-shadow:0 0 10px var(--accent)}.step-list h3{margin:0 0 .5rem;font-size:1.05rem}.step-list p{margin:0;color:var(--muted);font-size:.95rem}.cta-band{display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center;padding:3rem;border:1px solid rgba(var(--accent-rgb),.35);border-radius:var(--radius-lg);background:radial-gradient(40rem circle at 0% 0%,rgba(var(--accent-rgb),.12),transparent 60%),var(--surface)}.cta-band h2{margin:0;font-size:clamp(1.45rem,2.3vw,2rem);line-height:1.15;letter-spacing:-.03em}.cta-band p{max-width:60ch;margin:1rem 0 0;color:var(--muted)}.pill-list{display:flex;flex-wrap:wrap;gap:.6rem;padding:0;margin:0;list-style:none}.pill-list li{padding:.55rem 1rem;border:1px solid var(--line-strong);border-radius:999px;font-weight:600;transition:border-color .3s,color .3s}.pill-list li:hover{border-color:var(--accent);color:var(--accent)}@media(max-width:960px){.cell-grid{--cols: 2}.step-list{grid-template-columns:1fr 1fr}}@media(max-width:600px){.cell-grid{--cols: 1}.step-list,.step-list.two,.cta-band{grid-template-columns:1fr}.cta-band{padding:2rem 1.5rem}}.split-media{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:2.5rem;align-items:start}.split-media.reverse .media{order:2}.media{position:relative;margin:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--bg-2)}.media img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;filter:saturate(.85);transition:transform .9s var(--ease-out)}.media.tall img{aspect-ratio:4/5}.media:hover img{transform:scale(1.04)}.media:after{position:absolute;inset:0;content:"";background:linear-gradient(180deg,transparent 65%,rgba(8,10,13,.75));pointer-events:none}.media figcaption{position:absolute;z-index:1;right:.9rem;bottom:.8rem;left:.9rem;display:flex;justify-content:space-between;gap:1rem;color:var(--muted);font-family:var(--font-mono);font-size:.66rem;letter-spacing:.08em;text-transform:uppercase}@media(max-width:900px){.split-media,.split-media.reverse{grid-template-columns:1fr}.split-media.reverse .media{order:0}.media img,.media.tall img{aspect-ratio:16/10}}@media(max-width:600px){.media figcaption{flex-direction:column;align-items:flex-start;gap:.2rem}}::view-transition-old(root){animation:vt-out .32s var(--ease-io) both}::view-transition-new(root){animation:vt-in .52s var(--ease-out) both}@keyframes blink{50%{opacity:.25}}@keyframes marquee{to{transform:translate(calc(-100% - 2.5rem))}}@keyframes vt-out{to{opacity:0;transform:translateY(-14px)}}@keyframes vt-in{0%{opacity:0;transform:translateY(18px)}}@keyframes scan{0%{transform:translateY(-100%)}to{transform:translateY(400%)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse-ring{0%{transform:scale(.6);opacity:.9}to{transform:scale(2.2);opacity:0}}@media(max-width:720px){:root{--nav-h: 64px}.container{width:min(100% - 1.5rem,var(--container))}.page-shell{padding-block:calc(var(--nav-h) + 3rem) 5rem}.page-hero{grid-template-columns:minmax(0,1fr);margin-bottom:3rem}.page-hero h1,.page-hero p{grid-column:1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}[appReveal],[appReveal]>[data-stagger],[appReveal][data-reveal=clip]>*{opacity:1;filter:none;transform:none}::view-transition-old(root),::view-transition-new(root){animation:none}}
