@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#f7f8fa;--ink:#202228;--muted:#777c87;--blue:#2e49ed;--line:#dde0e7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}.wrap{max-width:1280px;margin:auto;padding-left:64px;padding-right:64px}.header{height:114px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.logo{display:flex;align-items:center;gap:9px;font-weight:700;font-size:24px;letter-spacing:-1px}.mark{display:grid;place-items:center;background:var(--blue);color:white;width:32px;height:32px;border-radius:8px;font-size:24px}.logo-dot{font-size:12px;align-self:flex-start;margin-top:5px;letter-spacing:0}nav{display:flex;gap:32px;font-size:14px}nav a:hover,footer a:hover{color:var(--blue)}.header-note{font-size:13px;color:var(--muted)}.hero{padding-top:74px;padding-bottom:72px}.eyebrow{font-size:12px;letter-spacing:1.8px;font-weight:600;display:flex;align-items:center;gap:12px}.small-line{width:24px;height:2px;background:var(--blue)}h1{font-family:Manrope,sans-serif;font-size:clamp(55px,7.1vw,91px);letter-spacing:-5px;line-height:1.12;font-weight:500;margin:28px 0 34px;position:relative}h1>span:first-child{color:var(--blue)}.hero-star{position:absolute;right:33px;top:34px;color:var(--blue);font-size:110px;font-weight:400;line-height:1}.hero-bottom{display:flex;align-items:center;justify-content:space-between}.hero-bottom p{color:#686e79;line-height:1.75;margin:0}.primary{background:var(--ink);color:white;padding:18px 22px;display:flex;gap:35px;align-items:center;border-radius:6px;font-size:14px;transition:background .2s}.primary:hover{background:var(--blue)}.button-symbol{font-size:20px;line-height:1}.section-head{border-top:1px solid var(--line);padding-top:28px;display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.section-head h2{font-size:20px;font-weight:500;margin:0;display:flex;gap:12px;align-items:center;letter-spacing:-.5px}.count{font-size:12px;border:1px solid var(--line);padding:3px 7px;border-radius:20px;color:var(--muted);letter-spacing:0}.section-head>span{font-size:11px;letter-spacing:1.4px;color:var(--muted)}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px 28px}.project{border:0;padding:0;background:none;text-align:left;cursor:pointer;min-width:0}.featured{grid-column:1/-1}.visual{height:340px;overflow:hidden;border-radius:9px;position:relative;display:flex;align-items:center;justify-content:center;transition:filter .25s}.project:hover .visual{filter:brightness(.97)}.forma{height:420px;background:#e4e9e6}.mock-browser{width:72%;height:85%;background:#f9faf6;border-radius:6px 6px 0 0;align-self:flex-end;box-shadow:0 0 40px #36473e18;transform:translateY(6px);transition:transform .4s}.project:hover .mock-browser{transform:translateY(0)}.browser-top{display:flex;justify-content:space-between;padding:22px 30px;border-bottom:1px solid #dddfd9;font-size:10px}.browser-top>span:first-child{font-size:18px;font-weight:700}.forma-main{position:relative;padding:30px 40px;overflow:hidden;height:290px}.micro{font-size:9px;letter-spacing:1.4px;font-weight:500}.forma-main strong{font-family:Manrope,sans-serif;display:block;font-size:64px;letter-spacing:-3px;line-height:1.05;font-weight:500;margin-top:20px;position:relative;z-index:1}.forma-circle{width:220px;height:220px;border:1px solid #b1beb4;border-radius:50%;position:absolute;right:30px;top:42px;background:repeating-radial-gradient(circle at 50% 50%,#ced9d0 0,#ced9d0 9px,#e3e9e0 10px,#e3e9e0 12px)}.forma-foot{font-size:10px;display:block;margin-top:24px;position:relative;z-index:1}.project-pill{position:absolute;bottom:20px;left:20px;background:#ffffffd9;border:1px solid #ffffff70;border-radius:4px;padding:9px 12px;font-size:10px;letter-spacing:.7px;z-index:2}.project-caption{display:flex;align-items:center;justify-content:space-between;padding-top:18px}.project-caption h3{font-size:22px;letter-spacing:-.6px;font-weight:500;margin:0 0 6px}.project-caption p{font-size:14px;color:var(--muted);margin:0;line-height:1.6}.open-icon{border:1px solid var(--line);border-radius:50%;width:34px;height:34px;display:grid;place-items:center;font-size:22px;transition:background .2s,color .2s}.project:hover .open-icon{background:var(--ink);color:white}.orbit{background:#e1e5f9}.orbit-ui{width:76%;background:#fafbff;border-radius:10px;padding:23px 26px;transform:rotate(-6deg) translateY(14px);box-shadow:0 15px 35px #303e721b}.orbit-top{display:flex;justify-content:space-between;font-size:10px;margin-bottom:28px}.orbit-top b{font-size:16px}.orbit-ui strong{display:block;font-size:30px;line-height:1.15;letter-spacing:-1px;margin-top:12px;font-weight:500}.orbit-stats{display:flex;align-items:center;justify-content:space-between;background:#edf0fd;padding:16px;border-radius:6px;margin-top:24px}.orbit-stats small{font-size:10px;display:block;color:#656b8b}.orbit-stats b{font-size:28px;font-weight:500}.orbit-stats em{font-size:13px;font-style:normal}.bars{display:flex;align-items:flex-end;height:62px;gap:7px}.bars i{width:12px;background:#657aef;height:45%;border-radius:3px 3px 0 0}.bars i:nth-child(2n){height:75%}.bars i:nth-child(3n){height:95%;background:var(--blue)}.altrove{background:#25292a;color:#d8f88b}.altrove-design{width:100%;height:100%;padding:35px;position:relative;overflow:hidden}.altrove-design>strong{font-family:Manrope,sans-serif;font-size:clamp(60px,7vw,98px);letter-spacing:-6px;font-weight:600;display:block;margin-top:28px;position:relative;z-index:1}.altrove-design>strong span{font-size:15px;letter-spacing:0;vertical-align:top;display:inline-block;margin-top:18px}.altrove-lines{position:absolute;width:280px;height:280px;border:1px solid #d8f88b;transform:rotate(35deg);right:-65px;bottom:-160px;box-shadow:0 0 0 18px #25292a,0 0 0 19px #d8f88b,0 0 0 38px #25292a,0 0 0 39px #d8f88b,0 0 0 58px #25292a,0 0 0 59px #d8f88b}.altrove-bottom{position:relative;font-size:8px;letter-spacing:1px;display:block;margin-top:28px}.altrove .project-pill{background:#ffffff16;color:white;border-color:#ffffff25}.about{display:grid;grid-template-columns:1fr 2fr;gap:40px;margin-top:88px;padding-top:48px;padding-bottom:68px;border-top:1px solid var(--line)}.about>.eyebrow{align-self:start;margin-top:8px;color:var(--muted)}.about h2{font-family:Manrope,sans-serif;font-size:34px;line-height:1.35;letter-spacing:-1.2px;font-weight:500;margin:0 0 20px}.about p{max-width:560px;line-height:1.8;color:#686e79;margin-bottom:24px}.skills{display:flex;gap:10px}.skills span{border:1px solid var(--line);padding:7px 14px;border-radius:30px;font-size:13px}footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding-top:30px;padding-bottom:30px}footer .logo{font-size:20px}footer>span,footer>a:last-child{font-size:12px;color:var(--muted)}dialog{width:min(580px,calc(100% - 32px));border:1px solid var(--line);border-radius:14px;padding:48px;background:var(--bg);color:var(--ink)}dialog::backdrop{background:#14182799;backdrop-filter:blur(5px)}dialog h2{font-family:Manrope,sans-serif;font-size:48px;letter-spacing:-2px;font-weight:500;margin:24px 0}dialog p{line-height:1.8;color:#686e79}.close{position:absolute;right:16px;top:12px;border:0;background:none;font-size:30px;cursor:pointer}.detail-meta{border-top:1px solid var(--line);padding-top:22px;margin-top:26px}.detail-meta>span{font-size:12px;letter-spacing:1.5px}.detail-meta p{margin-bottom:0}a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:5px}
@media(min-width:1500px){.hero{padding-top:90px}}@media(max-width:850px){.wrap{padding-left:30px;padding-right:30px}.header-note{display:none}h1{letter-spacing:-3px}.hero-star{right:0;font-size:75px;top:20px}.visual{height:300px}.altrove-design{padding:28px 20px}.about{grid-template-columns:1fr 2fr;gap:25px}.about h2{font-size:28px}.forma-circle{right:5px;width:190px;height:190px}.forma-main strong{font-size:55px}.orbit-ui{width:86%;padding:20px}.bars{gap:4px}.bars i{width:9px}}
@media(max-width:580px){.wrap{padding-left:22px;padding-right:22px}.header{height:85px}.logo{font-size:21px}nav{gap:16px;font-size:13px}.hero{padding-top:47px;padding-bottom:46px}.eyebrow{font-size:10px;letter-spacing:1.2px}h1{font-size:clamp(43px,10.6vw,61px);letter-spacing:-2.7px;margin-top:24px}.hero-star{display:none}.hero-bottom{align-items:flex-start;flex-direction:column;gap:24px}.hero-bottom p{font-size:15px}.primary{padding:15px 20px}.section-head>span{display:none}.project-grid{grid-template-columns:1fr;gap:30px}.featured{grid-column:auto}.forma{height:290px}.mock-browser{width:88%;height:84%}.browser-top{padding:14px 18px;font-size:8px}.forma-main{padding:24px 20px}.forma-main strong{font-size:42px}.forma-circle{width:150px;height:150px;right:-24px;top:35px}.forma-foot{font-size:8px;max-width:140px}.visual{height:300px}.project-pill{bottom:14px;left:14px;font-size:9px}.orbit-ui{width:75%}.altrove-design{padding:32px}.altrove-design>strong{font-size:80px}.about{grid-template-columns:1fr;margin-top:50px;padding-top:30px;gap:22px;padding-bottom:40px}.about h2{font-size:27px}.about p{font-size:15px}footer{gap:20px;flex-wrap:wrap}footer>a:last-child{display:none}dialog{padding:40px 25px}.project-caption h3{font-size:21px}}
.ablab{background:#e5eaf2;padding:38px 48px;justify-content:space-between;gap:30px}.ablab-intro{flex:0 0 38%;position:relative;z-index:1}.ablab-intro strong{display:block;font-family:Manrope,sans-serif;font-size:76px;font-weight:600;letter-spacing:-4px;margin:16px 0}.ablab-intro p{font-size:24px;line-height:1.4;letter-spacing:-.7px;margin:0 0 22px;color:#42516a}.ablab-features{font-size:12px;color:#5e6d85}.ablab-preview{width:54%;height:auto;border-radius:8px;box-shadow:0 20px 45px #17284422;transform:rotate(3deg);transition:transform .3s}.project:hover .ablab-preview{transform:rotate(0)}.project-demo{margin-top:28px}.project-demo[hidden]{display:none}.demo-tab-note{font-size:11px;opacity:.7}@media(max-width:850px){.ablab{padding:30px}.ablab-intro strong{font-size:60px}.ablab-intro p{font-size:20px}.ablab .micro{font-size:8px}.ablab-features{font-size:11px}}@media(max-width:580px){.ablab{height:auto;min-height:400px;flex-direction:column;align-items:flex-start;padding:26px 26px 58px;gap:24px}.ablab-intro{flex:auto}.ablab-intro strong{font-size:48px;margin:10px 0;letter-spacing:-2px}.ablab-intro p{font-size:18px;margin-bottom:12px}.ablab-preview{width:100%;max-width:340px;align-self:center}.ablab-intro p br{display:none}.skills{flex-wrap:wrap}}
.career-proof{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:30px 0 36px;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.career-proof strong{display:block;font-family:Manrope,sans-serif;font-size:42px;font-weight:500;letter-spacing:-2px;color:var(--blue)}.career-proof span{display:block;font-size:13px;line-height:1.7;color:#686e79;margin-top:8px}.competency-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px 30px}.competency-grid h3{font-size:15px;font-weight:600;margin:0 0 8px}.competency-grid p{font-size:15px;margin:0;line-height:1.7}.profile-note{display:flex;flex-wrap:wrap;gap:10px 22px;color:var(--muted);font-size:13px;margin:30px 0 18px}.contact-link{display:inline-block;color:var(--blue);font-size:16px;border-bottom:1px solid var(--blue);padding-bottom:4px}.example-label{font-family:'DM Sans',sans-serif;display:inline-block;font-size:10px;font-weight:400;letter-spacing:.5px;text-transform:uppercase;border:1px solid var(--line);border-radius:20px;padding:3px 7px;vertical-align:middle;margin-left:6px;color:var(--muted)}@media(max-width:580px){.header .logo{font-size:18px;letter-spacing:-.7px;gap:6px}.header nav{gap:12px;font-size:12px}.header .mark{width:27px;height:27px;font-size:21px}.hero-bottom p{max-width:100%}.career-proof{gap:16px}.career-proof strong{font-size:36px}.competency-grid{gap:24px 18px}.competency-grid p{font-size:14px}.career-proof span{font-size:12px}}
.header-tools{display:flex;align-items:center;gap:24px}.language-switch{display:flex;gap:3px;background:#e8eaf1;border-radius:6px;padding:3px}.language-switch a{font-size:12px;padding:7px 9px;border-radius:4px;color:#565d70}.language-switch a[aria-current=page]{background:var(--ink);color:white}.language-switch a:hover{color:var(--blue)}.language-switch a[aria-current=page]:hover{color:white}@media(max-width:850px){.header-tools{gap:0}}@media(max-width:580px){.header{flex-wrap:wrap;height:auto;min-height:90px;padding-top:20px;padding-bottom:20px;gap:15px}.header nav{order:3;width:100%;justify-content:center;font-size:14px}.header-tools{margin-left:auto}.language-switch a{font-size:12px;padding:6px 8px}.ablab-intro strong{font-size:48px}}
.nexora{background:#dce9e2;padding:24px 24px 0;align-items:flex-start}.nexora-preview{width:100%;height:auto;min-height:100%;object-fit:cover;object-position:top;border-radius:7px;box-shadow:0 10px 25px #142e2520;transition:transform .3s}.project:hover .nexora-preview{transform:translateY(-5px)}.nexora .project-pill{background:#122d24;color:#d4f68a;border-color:#122d24}@media(max-width:580px){.nexora{padding:20px 20px 0}}
.nautica{background:#102d3c;color:#eef6f5;align-items:flex-start}.nautica-cover{width:100%;padding:38px 32px}.nautica-cover>.micro{color:#94c9bf;font-size:11px}.nautica-cover>strong{display:block;font-family:Manrope,sans-serif;font-size:32px;font-weight:500;line-height:1.3;letter-spacing:-1px;margin-top:26px}.nautica-cover>strong>span{color:#91d7ca}.nautica-wordmark{margin-top:28px;font-size:23px;font-weight:600;letter-spacing:-.7px}.nautica-wordmark>span{display:block;margin-top:6px;font-size:9px;color:#96b6bd;letter-spacing:2px;font-weight:400}.nautica .project-pill{background:#ffffff0e;border-color:#ffffff28;color:#c3e5df}@media(max-width:580px){.nautica-cover{padding:32px 26px}.nautica-cover>strong{font-size:29px}.nautica-wordmark{margin-top:22px}}
.contact-crm{background:#eef0ff;justify-content:flex-start;min-height:360px}.crm-cover{padding:36px 48px 66px}.crm-cover>.micro{color:#5e6099;font-size:10px}.crm-cover>strong{display:block;font-family:Manrope,sans-serif;font-size:58px;letter-spacing:-2.5px;font-weight:600;margin:18px 0 12px}.crm-cover>strong>span{font-weight:400;color:#6664bc;margin-left:12px}.crm-cover>p{font-size:22px;line-height:1.5;color:#4e526f;margin:0 0 22px}.crm-modules{display:flex;gap:9px;flex-wrap:wrap}.crm-modules>span{font-size:12px;color:#555775;padding:7px 13px;border:1px solid #cdd0e8;border-radius:20px}.contact-crm .project-pill{left:auto;right:22px;background:#53519d;color:white;border-color:#53519d}@media(max-width:580px){.contact-crm{min-height:390px}.crm-cover{padding:28px 24px 72px}.crm-cover>strong{font-size:43px;letter-spacing:-2px}.crm-cover>p{font-size:19px}.crm-cover>.micro{font-size:8px;letter-spacing:1px}.crm-modules{gap:7px}.crm-modules>span{font-size:11px;padding:6px 10px}}
.site-footer{flex-wrap:wrap;gap:22px}.site-footer .social-links{flex-basis:100%;display:flex;justify-content:center;gap:10px 28px;border-top:1px solid var(--line);padding-top:20px}.social-links a{display:inline-flex;align-items:center;min-height:44px;font-size:14px;color:#586174;text-decoration:underline;text-underline-offset:5px;text-decoration-color:transparent;transition:color .2s,text-decoration-color .2s}.social-links a:hover{color:var(--blue);text-decoration-color:currentColor}@media(max-width:580px){.site-footer .social-links{flex-wrap:wrap;justify-content:flex-start;gap:10px 24px}}
.social-links a{justify-content:center;width:46px;height:46px;min-height:46px;border:1px solid var(--line);border-radius:50%;background:transparent;text-decoration:none;transition:color .2s,background .2s,border-color .2s}.social-links a svg{width:20px;height:20px;display:block;fill:currentColor}.social-links a:hover{color:white;background:var(--blue);border-color:var(--blue)}.site-footer .social-links{gap:14px}
.book-lovers{background:#254e40;color:#f8f5e9;justify-content:flex-start;min-height:380px}.book-cover{padding:36px 48px 72px}.book-cover>.micro{font-size:10px;color:#c9dbb3}.book-cover>strong{display:block;font-family:Manrope,sans-serif;font-size:55px;letter-spacing:-2.5px;font-weight:600;margin:16px 0}.book-cover>strong>span{color:#dce7b2;font-weight:400;margin-left:5px}.book-cover>p{font-family:Georgia,serif;font-size:30px;line-height:1.3;margin:0 0 22px}.book-tags{display:flex;flex-wrap:wrap;gap:9px}.book-tags>span{padding:7px 13px;border:1px solid #ffffff35;border-radius:20px;font-size:12px;color:#e5ecdc}.book-lovers .project-pill{left:auto;right:22px;background:#e7edcf;color:#254e40;border-color:#e7edcf}@media(max-width:580px){.book-cover{padding:28px 24px 72px}.book-cover>strong{font-size:44px}.book-cover>p{font-size:27px}.book-tags>span{font-size:11px;padding:6px 10px}.book-lovers{min-height:400px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* WordPress downloads */
.wp-library{margin-top:88px;scroll-margin-top:30px}.wp-intro{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;margin:34px 0}.wp-intro h3{font-family:Manrope,sans-serif;font-size:38px;letter-spacing:-1.5px;line-height:1.25;font-weight:500;margin:0}.wp-intro p{line-height:1.8;color:#686e79;margin:0;max-width:470px}.wp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.wp-card{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff;display:flex;flex-direction:column}.wp-preview{height:280px;overflow:hidden;background:#e8eee9}.wp-preview img{width:100%;height:100%;object-fit:cover;object-position:top}.wp-preview svg{display:block;width:100%;height:100%;object-fit:cover}.wp-card-body{padding:28px;display:flex;flex-direction:column;flex:1}.wp-meta{display:flex;justify-content:space-between;gap:12px;font-size:11px;letter-spacing:1px;color:#586174}.wp-meta>span:first-child{color:var(--blue);font-weight:600}.wp-card h3{font-family:Manrope,sans-serif;font-size:30px;font-weight:500;letter-spacing:-1px;margin:18px 0 10px}.wp-card-body>p{color:#686e79;font-size:15px;line-height:1.8;margin:0}.wp-card ul{padding-left:19px;font-size:14px;line-height:2;color:#586174;margin:18px 0 28px}.wp-download{justify-content:space-between;margin-top:auto}.wp-card details{margin-top:20px;font-size:13px;color:#586174;border-top:1px solid var(--line);padding-top:18px}.wp-card summary{cursor:pointer;min-height:24px;font-weight:500;color:var(--ink)}.wp-card details p{line-height:1.8;margin:12px 0 0;overflow-wrap:anywhere}.wp-card code{font-size:12px;background:#f0f2f7;padding:2px 5px;border-radius:3px}.wp-note{font-size:12px;color:#686e79;text-align:center;line-height:1.8;margin:25px 0 0}.wp-card summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px}
@media(max-width:1050px){.header{flex-wrap:wrap;height:auto;min-height:114px;padding-top:22px;padding-bottom:22px;gap:20px}.header nav{order:3;width:100%;justify-content:center}.header-tools{margin-left:auto}.wp-intro h3{font-size:32px}}@media(max-width:650px){.wp-library{margin-top:50px}.wp-intro{grid-template-columns:1fr;gap:18px;margin:26px 0}.wp-intro h3{font-size:30px}.wp-intro p{font-size:15px}.wp-grid{grid-template-columns:1fr}.wp-preview{height:240px}.wp-card-body{padding:23px}.wp-card h3{font-size:27px}.header nav{flex-wrap:wrap;gap:12px 22px}.wp-note{text-align:left}}

/* Keep the project heading semantic while the dialog button covers the whole card. */
.project-card {
    position: relative;
    isolation: isolate;
}
.project-trigger {
    padding: 0;
    border: 0;
    background: none;
    color: inherit;
    font: inherit;
    letter-spacing: inherit;
    text-align: inherit;
    cursor: pointer;
}
.project-trigger::after {
    position: absolute;
    z-index: 3;
    inset: 0;
    content: "";
}
.project-trigger:focus-visible::after {
    outline: 2px solid currentColor;
    outline-offset: 4px;
}
