:root{--bg:#f7f8fc;--bg-2:#ffffff;--surface:#ffffff;--surface-2:#f1f3fb;--border:rgba(15, 23, 42, 0.08);--border-strong:rgba(15, 23, 42, 0.16);--text:#0d1633;--text-2:#1f2a4d;--muted:#4a5578;--muted-2:#8089a8;--primary:#6e3aff;--primary-2:#2a8bf2;--accent:#0fb8a6;--warn:#ff9a3c;--grad:linear-gradient(135deg, #6e3aff 0%, #2a8bf2 50%, #0fb8a6 100%);--grad-soft:linear-gradient(135deg, rgba(110,58,255,0.08), rgba(15,184,166,0.08));--grad-tint:linear-gradient(135deg, rgba(110,58,255,0.05), rgba(42,139,242,0.05) 50%, rgba(15,184,166,0.05));--shadow-sm:0 1px 2px rgba(15, 23, 42, .04), 0 1px 3px rgba(15, 23, 42, .06);--shadow-card:0 1px 2px rgba(15, 23, 42, .04), 0 8px 24px -8px rgba(15, 23, 42, .12);--shadow-lg:0 4px 8px rgba(15, 23, 42, .06), 0 24px 48px -16px rgba(15, 23, 42, .18);--font-body:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-display:"Space Grotesk", "Inter", system-ui, sans-serif;--radius-sm:10px;--radius:16px;--radius-lg:24px;--container:1180px}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(1100px 600px at 88% -10%,rgba(42,139,242,.1),transparent 60%),radial-gradient(900px 500px at -5% 5%,rgba(110,58,255,.1),transparent 60%);background-attachment:fixed}img,svg{max-width:100%;display:block}a{color:var(--primary);text-decoration:none;transition:color .2s}a:hover{color:var(--primary-2)}h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;letter-spacing:-.02em;line-height:1.15;margin:0 0 .5em;color:var(--text)}h1{font-size:clamp(2.2rem,4.5vw,3.6rem)}h2{font-size:clamp(1.7rem,3.2vw,2.5rem)}h3{font-size:1.25rem}p{margin:0 0 1em}ul{padding-left:1.2em}hr{border:0;border-top:1px solid var(--border);margin:3rem 0}::selection{background:rgba(110,58,255,.18);color:var(--text)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.container{width:min(100% - 2.5rem,var(--container));margin-inline:auto}.eyebrow{display:inline-block;font-family:var(--font-display);font-weight:600;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);background:rgba(15,184,166,8%);border:1px solid rgba(15,184,166,.22);padding:.35rem .8rem;border-radius:999px;margin-bottom:1rem}.eyebrow--invert{color:#fff;background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.28)}.grad-text{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.site-header{position:sticky;top:0;z-index:50;backdrop-filter:saturate(180%)blur(14px);-webkit-backdrop-filter:saturate(180%)blur(14px);background:rgba(255,255,255,.72);border-bottom:1px solid transparent;transition:border-color .3s,background .3s,box-shadow .3s}.site-header.is-scrolled{background:rgba(255,255,255,.92);border-color:var(--border);box-shadow:var(--shadow-sm)}.site-header__inner{display:flex;align-items:center;justify-content:space-between;padding:1rem 0}.brand{display:inline-flex;align-items:center;gap:.7rem;color:var(--text);font-family:var(--font-display);font-weight:700}.brand:hover{color:var(--text)}.brand .logo{filter:drop-shadow(0 6px 16px rgba(110,58,255,.3))}.brand__text{display:flex;flex-direction:column;line-height:1}.brand__text strong{font-size:1.05rem;letter-spacing:-.01em}.brand__text span{font-size:.72rem;color:var(--muted);letter-spacing:.12em;text-transform:uppercase}.nav{display:flex;align-items:center}.nav__list{display:flex;align-items:center;gap:.35rem;list-style:none;margin:0;padding:0}.nav__item>a,.nav__item>.nav__title{display:inline-block;padding:.55rem .85rem;color:var(--muted);font-weight:500;font-size:.96rem;border-radius:8px}.nav__item>a:hover,.nav__item>a[aria-current=page]{color:var(--text);background:rgba(15,23,42,4%)}.nav__item>.nav__title{cursor:default}.nav__item.has-children:hover>.nav__title{color:var(--text)}.nav__item--cta>a,.nav__item--cta>a:hover{color:#fff;background:var(--grad)}.nav__item.has-children{position:relative}.nav__sub-toggle{background:0 0;border:0;color:var(--muted);padding:.3rem;margin-left:-.4rem;display:none;cursor:pointer}.nav__sublist{position:absolute;top:100%;left:0;min-width:240px;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:.5rem;margin:.35rem 0 0;list-style:none;box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .18s,transform .18s,visibility .18s}.nav__item.has-children:hover .nav__sublist,.nav__item.has-children:focus-within .nav__sublist,.nav__item.has-children.is-open .nav__sublist{opacity:1;visibility:visible;transform:translateY(0)}.nav__sublist a{display:block;padding:.55rem .8rem;color:var(--muted);border-radius:8px}.nav__sublist a:hover{color:var(--text);background:rgba(15,23,42,5%)}.nav__toggle{display:none;background:0 0;border:1px solid var(--border-strong);padding:.55rem;border-radius:10px;cursor:pointer;color:var(--text)}.nav__bars{display:inline-grid;gap:4px}.nav__bars span{display:block;width:22px;height:2px;background:currentColor;border-radius:2px;transition:transform .25s,opacity .2s}.nav__toggle[aria-expanded=true] .nav__bars span:nth-child(1){transform:translateY(6px)rotate(45deg)}.nav__toggle[aria-expanded=true] .nav__bars span:nth-child(2){opacity:0}.nav__toggle[aria-expanded=true] .nav__bars span:nth-child(3){transform:translateY(-6px)rotate(-45deg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.85rem 1.4rem;border-radius:12px;font-weight:600;font-family:var(--font-display);letter-spacing:.01em;border:1px solid transparent;cursor:pointer;transition:transform .15s,box-shadow .25s,background .25s,color .2s,border-color .25s}.btn--small{padding:.55rem 1rem;font-size:.92rem;border-radius:10px}.btn--primary{background:var(--grad);color:#fff;box-shadow:0 12px 28px -10px rgba(110,58,255,.45),0 6px 14px -8px rgba(42,139,242,.4)}.btn--primary:hover{transform:translateY(-2px);color:#fff;box-shadow:0 18px 36px -10px rgba(110,58,255,.55),0 12px 24px -10px rgba(42,139,242,.5)}.btn--ghost{background:var(--surface);color:var(--text);border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.btn--ghost:hover{background:var(--surface);color:var(--primary);border-color:rgba(110,58,255,.45)}.btn--invert{background:#fff;color:var(--text)}.btn--invert:hover{background:#fff;color:var(--primary)}.btn--link{background:0 0;padding:.85rem 0;box-shadow:none}.btn--link.btn--invert{color:#fff;text-decoration:underline;background:0 0}.btn--link.btn--invert:hover{color:#fff;opacity:.85}.hero{position:relative;overflow:hidden;padding:clamp(4rem,10vw,8rem)0 clamp(3rem,8vw,6rem);isolation:isolate}.hero__bg{position:absolute;inset:0;z-index:-1}.hero__orb{position:absolute;border-radius:50%;filter:blur(90px);opacity:.55}.hero__orb--a{width:540px;height:540px;background:#6e3aff;top:-180px;left:-120px;opacity:.28}.hero__orb--b{width:480px;height:480px;background:#2a8bf2;top:40px;right:-120px;opacity:.25}.hero__orb--c{width:360px;height:360px;background:#0fb8a6;bottom:-120px;left:30%;opacity:.2}.hero__grid{position:absolute;inset:0;background-image:linear-gradient(rgba(15,23,42,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(15,23,42,.045) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(ellipse at center,rgba(0,0,0,.7),transparent 70%);-webkit-mask-image:radial-gradient(ellipse at center,rgba(0,0,0,.7),transparent 70%)}.hero__inner{position:relative;max-width:980px}.hero__title{margin-top:.4rem}.hero__lede{font-size:clamp(1.05rem,1.4vw,1.25rem);color:var(--muted);max-width:60ch;margin-top:1rem}.hero__cta{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:2rem}.hero--cover{background:#0d1226}.hero--cover .hero__bg{z-index:0}.hero--cover .hero__bg-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero--cover .hero__bg-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,18,38,.92) 0%,rgba(13,18,38,.55) 50%,rgba(13,18,38,.2) 100%),linear-gradient(180deg,rgba(13,18,38,.1),rgba(13,18,38,.35))}.hero--cover .hero__inner{position:relative;z-index:1}.hero--cover .hero__title{color:#fff}.hero--cover .hero__lede{color:rgba(255,255,255,.92)}.hero--cover .hero__badge{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.25);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.hero--cover .hero__badge-label{color:rgba(255,255,255,.85)}@media(max-width:720px){.hero--cover .hero__bg-overlay{background:linear-gradient(180deg,rgba(13,18,38,.45) 0%,rgba(13,18,38,.88) 70%)}}.hero--slider{padding:0;position:relative}.hero--slider .hero__slides{position:relative;display:grid}.hero__slide{grid-row:1;grid-column:1;position:relative;padding:clamp(4rem,10vw,8rem)0 clamp(4rem,9vw,7rem);opacity:0;visibility:hidden;transition:opacity .9s cubic-bezier(.4,0,.2,1),visibility 0s linear .9s;pointer-events:none}.hero__slide.is-active{opacity:1;visibility:visible;transition:opacity .9s cubic-bezier(.4,0,.2,1),visibility 0s;pointer-events:auto}.hero__slide .hero__bg-img{transform-origin:50% 50%;will-change:transform}.hero__slide.is-active .hero__bg-img{animation:heroKenBurns 8s ease-out both}@keyframes heroKenBurns{from{transform:scale(1)}to{transform:scale(1.08)}}.hero__slide .hero__badge,.hero__slide .hero__title,.hero__slide .hero__lede,.hero__slide .hero__cta{opacity:0;transform:translateY(18px)}.hero__slide.is-active .hero__badge,.hero__slide.is-active .hero__title,.hero__slide.is-active .hero__lede,.hero__slide.is-active .hero__cta{animation:heroContentIn .85s cubic-bezier(.21,.6,.3,1)forwards}.hero__slide.is-active .hero__badge{animation-delay:.15s}.hero__slide.is-active .hero__title{animation-delay:.3s}.hero__slide.is-active .hero__lede{animation-delay:.45s}.hero__slide.is-active .hero__cta{animation-delay:.6s}@keyframes heroContentIn{to{opacity:1;transform:translateY(0)}}.hero__nav{position:absolute;bottom:clamp(1rem,2.5vw,1.75rem);left:50%;transform:translateX(-50%);display:flex;gap:.55rem;z-index:2;padding:0;margin:0}.hero__dot{width:10px;height:10px;border:0;padding:0;border-radius:50%;background:rgba(255,255,255,.4);cursor:pointer;transition:background .25s,transform .25s,width .25s}.hero__dot:hover{background:rgba(255,255,255,.7)}.hero__dot.is-active{background:#fff;width:26px;border-radius:6px}@media(prefers-reduced-motion:reduce){.hero__slide,.hero__slide.is-active .hero__bg-img,.hero__slide.is-active .hero__badge,.hero__slide.is-active .hero__title,.hero__slide.is-active .hero__lede,.hero__slide.is-active .hero__cta{transition:none;animation:none}.hero__slide .hero__badge,.hero__slide .hero__title,.hero__slide .hero__lede,.hero__slide .hero__cta{opacity:1;transform:none}}.hero__particles{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.hero__badge{display:inline-flex;align-items:stretch;gap:0;margin-bottom:1.4rem;background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:.35rem;box-shadow:var(--shadow-sm);font-family:var(--font-display);overflow:hidden;position:relative}.hero__badge-num{display:inline-flex;align-items:center;background:var(--grad);color:#fff;padding:.55rem 1.1rem;border-radius:999px;font-weight:700;font-size:1.05rem;letter-spacing:-.01em;box-shadow:0 6px 16px -6px rgba(110,58,255,.45)}.hero__badge-label{display:inline-flex;align-items:center;padding:0 1rem 0 .85rem;color:var(--muted);font-weight:500;font-size:.92rem;letter-spacing:.01em}.page-hero{position:relative;overflow:hidden;isolation:isolate;padding:clamp(3rem,7vw,5rem)0 clamp(2rem,4vw,3rem);border-bottom:1px solid var(--border);background:linear-gradient(180deg,var(--surface-2),transparent)}.page-hero__bg{position:absolute;inset:0;z-index:-1;opacity:.8}.page-hero__title{max-width:22ch}.page-hero__lede{color:var(--muted);font-size:clamp(1rem,1.3vw,1.15rem);max-width:65ch;margin-top:.8rem}.breadcrumbs{color:var(--muted-2);font-size:.9rem;margin-bottom:1rem}.breadcrumbs a{color:var(--muted)}.breadcrumbs a:hover{color:var(--primary)}.breadcrumbs span[aria-hidden=true]{margin:0 .4rem;opacity:.6}.page-hero--split{padding-bottom:clamp(3rem,7vw,5rem)}.page-hero__split{display:grid;grid-template-columns:minmax(0,1.05fr)minmax(0,.95fr);gap:clamp(2rem,5vw,4rem);align-items:center}.page-hero__img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}@media(max-width:860px){.page-hero__split{grid-template-columns:1fr}.page-hero__media{order:-1}.page-hero__img{aspect-ratio:16/9}}.page-hero--cover{min-height:clamp(360px,52vh,480px);display:flex;align-items:center;padding:clamp(2.5rem,6vw,4rem)0;border-bottom:1px solid var(--border);background:#0d1226}.page-hero--cover .page-hero__bg{opacity:1}.page-hero__bg-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.page-hero__bg-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,18,38,.88) 0%,rgba(13,18,38,.55) 45%,rgba(13,18,38,.15) 100%),linear-gradient(180deg,rgba(13,18,38,.1),rgba(13,18,38,.3))}.page-hero--cover .container{position:relative;z-index:1;max-width:60ch}.page-hero--cover .page-hero__title{color:#fff}.page-hero--cover .page-hero__lede{color:rgba(255,255,255,.92)}.page-hero--cover .breadcrumbs,.page-hero--cover .breadcrumbs a{color:rgba(255,255,255,.85)}.page-hero--cover .breadcrumbs a:hover{color:#fff}.page-hero--cover .breadcrumbs span[aria-current=page]{color:rgba(255,255,255,.7)}@media(max-width:720px){.page-hero__bg-overlay{background:linear-gradient(180deg,rgba(13,18,38,.35) 0%,rgba(13,18,38,.85) 70%)}}.section{padding:clamp(3.5rem,7vw,6rem)0}.section--services{background:linear-gradient(180deg,transparent,var(--surface-2))}.section--story{background:var(--bg-2);border-block:1px solid var(--border)}.section--values{}.section--cta{padding-bottom:clamp(4rem,8vw,6rem)}.section--list{padding-top:0}.section__head{max-width:720px;margin:0 0 2.5rem}.section__head--center{margin:0 auto 2.5rem;text-align:center}.section__head p{color:var(--muted);margin-top:.5rem}.grid{display:grid;gap:1.25rem}.grid--cards{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem}.grid--story{grid-template-columns:1.05fr .95fr;gap:3rem;align-items:start}.grid--values{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem}.grid--contact{grid-template-columns:1fr 1fr;gap:3rem;align-items:start}.grid--info{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.card{position:relative;display:block;padding:1.5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:transform .25s,border-color .25s,box-shadow .25s;color:var(--text);overflow:hidden}.card::before{content:"";position:absolute;inset:0;background:var(--grad-tint);opacity:0;transition:opacity .3s;pointer-events:none}.card:hover{transform:translateY(-4px);border-color:rgba(110,58,255,.25);color:var(--text);box-shadow:var(--shadow-lg)}.card:hover::before{opacity:1}.card>*{position:relative}.card__icon{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:14px;margin-bottom:1rem;background:var(--grad);color:#fff;box-shadow:0 12px 24px -10px rgba(110,58,255,.45)}.card__icon svg{width:26px;height:26px}.card__title{font-size:1.2rem;margin-bottom:.35rem}.card__desc{color:var(--muted);margin:0}.card__cta{display:inline-flex;align-items:center;gap:.35rem;margin-top:1.1rem;color:var(--primary);font-weight:600}.card:hover .card__cta{color:var(--primary-2)}.story__side{display:grid;gap:1.5rem}.story__side .img-ph{box-shadow:var(--shadow-card)}.section--showcase{padding-top:0;padding-bottom:clamp(2rem,5vw,4rem)}.showcase-img{display:block;width:100%;height:auto;aspect-ratio:21/9;object-fit:cover;border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.section--feature{padding-top:clamp(2rem,4vw,3rem);padding-bottom:0}.section--map{padding-top:0}.timeline{list-style:none;margin:0;padding:0;border-left:2px solid var(--border)}.timeline li{position:relative;padding:0 0 1.4rem 1.6rem}.timeline li::before{content:"";position:absolute;left:-7px;top:.35rem;width:12px;height:12px;border-radius:50%;background:var(--grad);box-shadow:0 0 0 4px rgba(110,58,255,.1)}.timeline strong{display:block;font-family:var(--font-display);color:var(--text)}.timeline span{color:var(--muted);font-size:.96rem}.value{padding:1.6rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:border-color .25s,box-shadow .25s,transform .25s;box-shadow:var(--shadow-sm)}.value:hover{border-color:rgba(110,58,255,.25);box-shadow:var(--shadow-card);transform:translateY(-2px)}.value__num{display:inline-block;font-family:var(--font-display);font-size:.9rem;letter-spacing:.14em;color:var(--accent);background:rgba(15,184,166,8%);border:1px solid rgba(15,184,166,.22);padding:.25rem .6rem;border-radius:999px;margin-bottom:.9rem}.value h3{font-size:1.1rem}.value p{color:var(--muted);margin:0}.cta-card{display:grid;grid-template-columns:1.3fr 1fr;gap:2rem;align-items:center;padding:clamp(2rem,4vw,3rem);border-radius:var(--radius-lg);background:linear-gradient(135deg,#6e3aff 0%,#2a8bf2 60%,#0fb8a6 110%);color:#fff;position:relative;overflow:hidden;box-shadow:0 24px 48px -16px rgba(110,58,255,.45)}.cta-card::before{content:"";position:absolute;right:-120px;top:-120px;width:360px;height:360px;border-radius:50%;background:rgba(255,255,255,.25);filter:blur(60px)}.cta-card::after{content:"";position:absolute;left:-80px;bottom:-100px;width:280px;height:280px;border-radius:50%;background:rgba(15,184,166,.35);filter:blur(50px)}.cta-card>*{position:relative}.cta-card h2{color:#fff;margin:.8rem 0 .5rem}.cta-card p{color:rgba(255,255,255,.92);margin:0}.cta-card__actions{display:flex;flex-direction:column;gap:.6rem;align-items:flex-start}.cta-card__actions .btn{width:100%}.prose{max-width:72ch}.prose h2{margin-top:2.5rem}.prose h3{margin-top:1.6rem;font-size:1.15rem;color:var(--text)}.prose p,.prose li{color:var(--muted)}.prose strong{color:var(--text)}.prose ul{padding-left:1.2rem}.prose ul li{margin:.35rem 0}.prose a{text-decoration:underline;text-decoration-color:rgba(110,58,255,.45);text-underline-offset:3px}.prose blockquote{margin:1.5rem 0;padding:1rem 1.25rem;border-left:3px solid var(--primary);background:rgba(110,58,255,6%);border-radius:0 var(--radius-sm)var(--radius-sm)0;color:var(--text)}.prose blockquote p{color:var(--text)}.prose hr{margin:2.5rem 0}.feature-list{list-style:none;padding:0;margin:1rem 0;display:grid;gap:.55rem}.feature-list li{display:flex;align-items:flex-start;gap:.65rem;color:var(--text)}.feature-list__check{flex:none;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--grad);color:#fff;box-shadow:0 4px 12px -4px rgba(110,58,255,.45)}.columns{display:grid;gap:1.25rem;margin:1.5rem 0}.columns--2{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.columns--3{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.content-card{padding:1.4rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm)}.content-card h3{color:var(--text)}.content-card p,.content-card li{color:var(--muted)}.stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;margin:1.5rem 0}.stat{padding:1rem 1.2rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm)}.stat__value{display:block;font-family:var(--font-display);font-size:1.8rem;color:var(--text)}.stat__label{color:var(--muted);font-size:.9rem}.inline-cta{display:grid;grid-template-columns:1fr auto;gap:1.2rem;align-items:center;padding:1.4rem 1.6rem;margin:2rem 0;border-radius:var(--radius);background:var(--grad-soft);border:1px solid rgba(110,58,255,.18)}.inline-cta h3{margin:0 0 .25rem;color:var(--text)}.inline-cta p{margin:0;color:var(--muted)}.pricing{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem;margin:1.5rem 0}.plan{padding:1.6rem;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);position:relative;box-shadow:var(--shadow-sm);transition:transform .25s,border-color .25s,box-shadow .25s}.plan:hover{transform:translateY(-4px);border-color:rgba(110,58,255,.3);box-shadow:var(--shadow-lg)}.plan--featured{background:linear-gradient(180deg,rgba(110,58,255,6%),rgba(15,184,166,4%));border-color:rgba(110,58,255,.4);box-shadow:0 16px 36px -12px rgba(110,58,255,.25)}.plan__tag{display:inline-block;padding:.25rem .6rem;border-radius:999px;background:var(--grad);color:#fff;font-size:.75rem;font-family:var(--font-display);font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin-bottom:.8rem}.plan__title{margin:0 0 .6rem;font-size:1.1rem}.plan__price{margin-bottom:1rem;color:var(--text)}.plan__price strong{font-family:var(--font-display);font-size:2rem}.plan__price span{color:var(--muted);margin-left:.25rem}.plan__body p{color:var(--muted);margin:.25rem 0}.plan__body ul{padding-left:1rem}.plan__body li{color:var(--muted)}.section--portfolio-intro{padding-top:clamp(2rem,4vw,3rem);padding-bottom:0}.section--portfolio-grid{padding-top:clamp(2rem,4vw,3rem)}.section--gallery{padding-top:clamp(2rem,4vw,3rem);padding-bottom:clamp(2rem,4vw,3rem)}.section--related{padding-top:1.5rem;padding-bottom:clamp(2rem,5vw,4rem)}.portfolio-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.portfolio-card{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);color:var(--text);transition:transform .25s,border-color .25s,box-shadow .25s}.portfolio-card:hover{transform:translateY(-4px);border-color:rgba(110,58,255,.3);box-shadow:var(--shadow-lg);color:var(--text)}.portfolio-card__media{aspect-ratio:16/9;background:var(--surface-2);overflow:hidden}.portfolio-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.portfolio-card:hover .portfolio-card__media img{transform:scale(1.04)}.portfolio-card__body{padding:1.3rem 1.4rem 1.5rem;display:flex;flex-direction:column;gap:.35rem}.portfolio-card__category{font-family:var(--font-display);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.portfolio-card__title{font-size:1.15rem;margin:0}.portfolio-card__tagline{color:var(--muted);margin:.15rem 0 .6rem;font-size:.95rem}.portfolio-card__cta{margin-top:auto;display:inline-flex;align-items:center;gap:.35rem;color:var(--primary);font-weight:600;font-size:.9rem}.portfolio-card:hover .portfolio-card__cta{color:var(--primary-2)}.portfolio-empty{color:var(--muted);text-align:center;padding:3rem 0}.page-hero--project{padding-bottom:clamp(1.5rem,3vw,2.5rem)}.project__tagline{font-family:var(--font-display);font-weight:600;color:var(--text);font-size:clamp(1.1rem,1.5vw,1.3rem)}.project__cover{aspect-ratio:21/9;object-fit:cover}.project__grid{display:grid;grid-template-columns:minmax(0,1fr)320px;gap:3rem;align-items:start}.project__body{max-width:70ch}.project__meta{position:sticky;top:90px}.project-meta-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.4rem 1.5rem;box-shadow:var(--shadow-sm)}.project-meta-card h3{font-size:1rem;margin-bottom:1rem}.project-meta-card h4{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:1.2rem 0 .6rem;font-family:var(--font-display)}.project-meta__list{display:grid;gap:.8rem;margin:0;padding:0}.project-meta__list>div{display:grid;gap:.15rem}.project-meta__list dt{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2);font-family:var(--font-display);font-weight:500}.project-meta__list dd{margin:0;color:var(--text);font-size:.95rem}.project-meta__stack{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.35rem}.project-meta__stack li{display:inline-block;font-size:.78rem;background:var(--surface-2);border:1px solid var(--border);border-radius:999px;padding:.3rem .65rem;color:var(--muted);font-family:var(--font-display)}.project__cta{margin-top:1.2rem;width:100%}.section--gallery .section__title{margin-bottom:1.5rem;font-size:1.4rem}.gallery{display:grid;gap:1.5rem;grid-template-columns:1fr}.gallery__item{margin:0}.gallery__item a{display:block;overflow:hidden;border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow-card);transition:box-shadow .25s,transform .25s}.gallery__item a:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.gallery__item img{width:100%;height:auto;display:block}.gallery__item figcaption{margin-top:.65rem;color:var(--muted);font-size:.9rem;text-align:center}@media(max-width:960px){.project__grid{grid-template-columns:1fr;gap:2rem}.project__meta{position:static}}.img-ph{position:relative;margin:0;width:100%;background:repeating-linear-gradient(45deg,transparent 0 14px,rgba(15,23,42,.025) 14px 15px),linear-gradient(135deg,#f3f4fa,#e9ecf6);border:1.5px dashed rgba(15,23,42,.18);color:var(--muted-2);display:flex;align-items:center;justify-content:center;overflow:hidden;transition:border-color .25s,color .25s,background .25s}.img-ph:hover{border-color:rgba(110,58,255,.35);color:var(--primary)}.img-ph--r-sm{border-radius:var(--radius-sm)}.img-ph--r-md{border-radius:var(--radius)}.img-ph--r-lg{border-radius:var(--radius-lg)}.img-ph__inner{display:flex;flex-direction:column;align-items:center;gap:.55rem;text-align:center;padding:1rem;max-width:90%}.img-ph__icon{width:36px;height:36px;opacity:.65}.img-ph--sm .img-ph__icon{width:26px;height:26px}.img-ph--lg .img-ph__icon{width:52px;height:52px}.img-ph__label{font-family:var(--font-display);font-size:.9rem;font-weight:600;color:var(--muted);letter-spacing:.01em;line-height:1.3}.img-ph--sm .img-ph__label{font-size:.8rem}.img-ph--lg .img-ph__label{font-size:1rem}.img-ph__ratio{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2);opacity:.8;font-family:var(--font-display);font-weight:500}.img-ph--showcase{box-shadow:var(--shadow-card)}.prose .img-ph{margin:1.6rem 0}.img-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin:1.5rem 0}.contact-form{background:var(--surface);border:1px solid var(--border);padding:clamp(1.4rem,3vw,2rem);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.contact-form h2{font-size:1.4rem;margin-bottom:1rem}.field{display:grid;gap:.35rem;margin-bottom:1rem}.field label{font-size:.85rem;color:var(--muted);font-weight:500}.field input,.field select,.field textarea{width:100%;background:var(--surface);border:1px solid var(--border-strong);border-radius:10px;padding:.75rem .85rem;color:var(--text);font:inherit;transition:border-color .2s,box-shadow .2s}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px rgba(110,58,255,.14)}.contact-form .btn{width:100%;margin-top:.5rem}.contact-form__note{color:var(--muted-2);font-size:.85rem;margin:.8rem 0 0;text-align:center}.info-card{padding:1.4rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm)}.info-card h3{font-size:1rem;color:var(--accent);margin-bottom:.4rem}.info-card p{margin:0;color:var(--muted)}.info-card a{color:var(--primary)}.info-card a:hover{color:var(--primary-2)}.site-footer{margin-top:3rem;background:var(--surface-2);border-top:1px solid var(--border)}.site-footer__grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:2.5rem;padding:4rem 0 2.5rem}.site-footer h3{font-size:.85rem;letter-spacing:.14em;text-transform:uppercase;color:var(--text);margin-bottom:1rem}.site-footer__list{list-style:none;padding:0;margin:0;display:grid;gap:.55rem}.site-footer__list a{color:var(--muted)}.site-footer__list a:hover{color:var(--primary)}.site-footer__list--contact li{color:var(--muted)}.site-footer__brand p{color:var(--muted);max-width:32ch}.site-footer__social{list-style:none;padding:0;margin:1rem 0 0;display:flex;gap:.5rem}.site-footer__social a{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;background:var(--surface);border:1px solid var(--border);color:var(--muted);transition:color .2s,border-color .2s,background .25s,transform .2s;box-shadow:var(--shadow-sm)}.site-footer__social a:hover{color:#fff;background:var(--grad);border-color:transparent;transform:translateY(-2px)}.brand--footer .brand__text strong{font-size:1rem}.site-footer__bottom{border-top:1px solid var(--border);padding:1.2rem 0}.site-footer__bottom .container{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem;color:var(--muted-2);font-size:.85rem}@media(max-width:960px){.grid--story{grid-template-columns:1fr;gap:2rem}.grid--contact{grid-template-columns:1fr;gap:2rem}.cta-card{grid-template-columns:1fr;text-align:left}.cta-card__actions{flex-direction:row;align-items:center}.cta-card__actions .btn{width:auto}.site-footer__grid{grid-template-columns:1fr 1fr}}@media(max-width:760px){.nav__toggle{display:inline-flex}.nav__list{position:fixed;inset:64px 0 0;background:rgba(255,255,255,.96);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);flex-direction:column;align-items:stretch;padding:1rem 1.5rem 3rem;gap:.25rem;transform:translateX(100%);transition:transform .28s ease;overflow-y:auto;border-left:1px solid var(--border)}.nav__list.is-open{transform:translateX(0)}.nav__item>a,.nav__item>.nav__title{padding:.8rem .6rem;font-size:1.05rem}.nav__item.has-children>a,.nav__item.has-children>.nav__title{display:inline-block}.nav__sub-toggle{display:inline-flex;position:absolute;right:.8rem;top:.65rem}.nav__item.has-children{position:relative;padding-right:2rem}.nav__sublist{position:static;opacity:1;visibility:visible;transform:none;background:0 0;border:0;box-shadow:none;padding:0 0 .25rem 1rem;max-height:0;overflow:hidden;transition:max-height .25s;margin:0}.nav__item.has-children.is-open .nav__sublist{max-height:600px}.nav__item--cta{margin-top:.8rem}.nav__item--cta .btn{width:100%}.hero__badge{flex-wrap:wrap;border-radius:18px}.hero__badge-label{padding:.35rem .85rem .35rem .55rem}.site-footer__grid{grid-template-columns:1fr;padding:3rem 0 2rem;gap:2rem}.inline-cta{grid-template-columns:1fr}}.js .reveal{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.7,.2,1)}.js .reveal.is-visible{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}}