:root{--ink: #0b0d12;--paper: #e8e2d9;--muted: rgba(220, 214, 204, .85);--faint: rgba(220, 214, 204, .6);--accent: rgba(220, 214, 204, .95);--green: #1D9E75;--green-hover: #178a65;--orange: #dc7832;--irish-green: rgba(30, 158, 96, .9);--irish-orange: rgba(220, 120, 50, 1);--font-body: "DM Sans", sans-serif;--font-display: "Cormorant", serif;--radius-sm: 8px;--radius-md: 10px;--radius-lg: 12px;--z-background: 0;--z-content: 1;--z-nav: 10}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{background-color:var(--ink);color-scheme:dark}html,body{min-height:100%;background:var(--ink);color:var(--paper);font-family:var(--font-body);font-weight:500;overflow-x:hidden;overflow-y:auto}body{font-size:17px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}canvas{position:fixed;inset:0;pointer-events:none}#stars{z-index:var(--z-background);opacity:.55}#globe{z-index:var(--z-background);opacity:1}nav{position:fixed;top:0;left:0;right:0;z-index:var(--z-nav);display:flex;align-items:center;justify-content:space-between;padding:0 2.5rem;height:56px;background:#0b0d12e0;border-bottom:1px solid rgba(220,214,204,.06);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none;transition:opacity .12s ease}.nav-logo-text{font-family:var(--font-body);font-size:12px;font-weight:400;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);transition:color .12s ease}.nav-logo:hover .nav-logo-text,.nav-logo.active .nav-logo-text{color:var(--paper)}.nav-links{display:flex;align-items:center;gap:2rem}.nav-links a{position:relative;font-family:var(--font-body);font-size:12px;font-weight:400;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-decoration:none;transition:color .12s ease}.nav-links a:after{content:"";position:absolute;left:0;right:0;bottom:-3px;height:1px;background:var(--paper);transform:scaleX(0);transform-origin:center;transition:transform .12s ease}.nav-links a:hover{color:var(--paper)}.nav-links a:hover:after{transform:scaleX(1)}.nav-links a.active{color:var(--paper)}.nav-links a.active:after{transform:scaleX(1)}main{position:relative;z-index:var(--z-content)}.section{position:relative;z-index:var(--z-content);padding:6rem 2rem;max-width:1100px;margin:0 auto}.section-label{font-size:10px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--green);margin-bottom:1rem;display:block;text-align:center}.section-kicker{display:block;font-family:var(--font-display);font-size:clamp(14px,2vw,18px);font-weight:300;font-style:italic;color:var(--muted);text-align:center;margin-bottom:2.5rem}.section-heading{font-family:var(--font-display);font-size:clamp(28px,4vw,42px);font-weight:300;font-style:italic;color:var(--paper);text-align:center;margin-bottom:3.5rem;line-height:1.3}.page-divider{position:relative;z-index:var(--z-content);width:1px;height:60px;background:linear-gradient(to bottom,transparent,rgba(220,214,204,.2),transparent);margin:0 auto}.hero{position:relative;z-index:var(--z-content);min-height:82vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6rem 2rem 4rem;text-align:center;gap:0}.hero.hero-short{min-height:60vh}.hero-eyebrow{font-family:var(--font-body);font-size:11px;font-weight:400;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin-bottom:1.6rem;opacity:0;animation:rise 1s ease .2s forwards}.hero-mark{margin-bottom:1.4rem;opacity:0;animation:rise 1.2s cubic-bezier(.16,1,.3,1) .35s forwards}.hero-icon{width:clamp(72px,18vw,120px);height:clamp(72px,18vw,120px);opacity:0;animation:rise 1.2s cubic-bezier(.16,1,.3,1) .2s forwards}.hero-wordmark{margin-top:1.2rem;font-family:var(--font-body);font-size:clamp(16px,4vw,24px);font-weight:400;letter-spacing:.26em;text-transform:uppercase;color:var(--paper);opacity:0;animation:rise 1.2s cubic-bezier(.16,1,.3,1) .45s forwards}.hero-rule{width:1px;height:clamp(28px,5vh,48px);background:var(--faint);margin:clamp(1.2rem,3vh,2.2rem) 0;opacity:0;animation:rise 1s ease .7s forwards}.hero-title{font-family:var(--font-display);font-size:clamp(52px,9vw,96px);font-weight:300;letter-spacing:.08em;color:var(--paper);line-height:1;margin-bottom:1.2rem;opacity:0;animation:rise 1.2s cubic-bezier(.16,1,.3,1) .5s forwards}.hero-tagline{font-family:var(--font-display);font-size:clamp(24px,5vw,42px);font-weight:300;font-style:italic;color:var(--irish-green);letter-spacing:.02em;text-align:center;line-height:1.5;max-width:560px;width:100%;text-wrap:balance;opacity:0;animation:rise 1.2s cubic-bezier(.16,1,.3,1) .85s forwards}.hero-tagline-sm{font-size:clamp(18px,3vw,26px);margin-bottom:1rem}.hero-sub{margin-top:1.2rem;font-family:var(--font-body);font-size:clamp(11px,2.5vw,16px);font-weight:300;letter-spacing:.14em;text-transform:uppercase;color:var(--irish-orange);text-align:center;text-wrap:balance;opacity:0;animation:rise 1.2s cubic-bezier(.16,1,.3,1) 1.1s forwards}.hero-sims{font-family:var(--font-body);font-size:11px;font-weight:400;letter-spacing:.16em;text-transform:uppercase;color:var(--orange);margin-bottom:2.4rem;opacity:0;animation:rise 1.2s cubic-bezier(.16,1,.3,1) .85s forwards}.definition{margin-top:clamp(1.5rem,3vh,2.6rem);max-width:560px;width:100%;text-align:center;opacity:0;animation:rise 1.2s cubic-bezier(.16,1,.3,1) 1.25s forwards}.definition .headword{font-family:var(--font-display);font-size:clamp(13px,2.5vw,17px);font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:.5rem}.definition .entry{font-family:var(--font-display);font-size:clamp(17px,3.5vw,24px);font-weight:300;font-style:italic;color:var(--muted);line-height:1.75;text-wrap:balance}.definition .entry em{font-style:normal;color:var(--irish-orange)}.hero--home{padding:12rem 2rem 4rem}.hero--home .hero-icon{width:clamp(108px,26vw,180px);height:clamp(108px,26vw,180px)}.hero--home .hero-wordmark{margin-top:1.8rem}.hero--home .hero-rule{margin:clamp(1.8rem,4vh,3.2rem) 0}.hero--home .hero-tagline{font-size:clamp(36px,7vw,64px)}.hero--home .hero-sub{margin-top:1.8rem;font-size:clamp(10px,2vw,13px)}.hero--home .definition{margin-top:clamp(2rem,4vh,3.2rem)}.hero--home .definition .entry{font-size:clamp(14px,2.8vw,18px)}.btn-primary{display:inline-block;padding:14px 32px;background:var(--green);color:#fff;font-family:var(--font-body);font-size:14px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-sm);text-decoration:none;border:none;cursor:pointer;transition:background .2s,transform .15s}.btn-primary:hover{background:var(--green-hover);transform:translateY(-1px)}.hero-cta{margin-top:1.8rem;opacity:0;animation:rise 1.2s cubic-bezier(.16,1,.3,1) 1.5s forwards}.hero-scroll{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:6px;opacity:0;animation:rise 1s ease 1.6s forwards;cursor:pointer}.hero-scroll span{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--faint)}.scroll-chevron{width:24px;height:24px;animation:bounce 2s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}.section-products{padding-top:2rem}.product-card{border:1px solid rgba(220,214,204,.12);border-left:2px solid var(--green);border-radius:var(--radius-lg);background:#0b0d12b3;padding:2rem 2.25rem;max-width:540px;margin:0 auto}.product-card .product-name{font-family:var(--font-display);font-size:28px;font-weight:400;color:var(--paper);margin-bottom:.3rem}.product-card .product-desc{font-family:var(--font-body);font-size:14px;color:var(--muted);line-height:1.6;margin-bottom:.4rem}.product-card .product-meta{font-family:var(--font-body);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--orange);margin-bottom:1.4rem}.what-we-make{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:960px;margin:0 auto}.studio-card{display:flex;flex-direction:column;gap:.5rem;border:1px solid rgba(220,214,204,.12);border-radius:var(--radius-lg);background:#0b0d12b3;padding:1.75rem}.studio-card-heading{font-family:var(--font-display);font-size:24px;font-weight:400;color:var(--paper)}.studio-card-desc{font-family:var(--font-body);font-size:14px;color:var(--muted);line-height:1.6}.studio-card-meta{font-family:var(--font-body);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--orange);margin-top:auto}.studio-card-link{font-family:var(--font-body);font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--green);text-decoration:none;transition:color .12s ease}.studio-card-link:hover{color:var(--green-hover)}.studio-card-soon{font-family:var(--font-body);font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}.studio-card--dim{border-color:#dcd6cc0f}.studio-card--dim .studio-card-heading,.studio-card--dim .studio-card-desc{color:var(--muted)}.studio-card--dim .studio-card-meta{color:var(--faint)}.studio-card--ghost{border-color:#dcd6cc0a;background:#0b0d1266}.studio-card--ghost .studio-card-heading{font-style:italic;color:var(--muted)}.studio-card--ghost .studio-card-desc{color:var(--faint);font-style:italic}.studio{display:grid;grid-template-columns:auto 1fr;gap:2.5rem;align-items:center;max-width:760px;margin:0 auto}.studio-mark img{width:100px;height:100px;display:block}.studio-label{font-family:var(--font-body);font-size:11px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--green);margin-bottom:.8rem}.studio-body{font-family:var(--font-display);font-size:20px;font-weight:300;font-style:italic;color:var(--muted);line-height:1.6;text-wrap:balance}.follow{text-align:center;max-width:480px;margin:0 auto}.follow-heading{font-family:var(--font-display);font-size:clamp(24px,4vw,32px);font-weight:300;font-style:italic;color:var(--paper);margin-bottom:1.4rem}.follow-sub{font-family:var(--font-body);font-size:14px;color:var(--muted);line-height:1.7;margin-bottom:1.8rem;text-wrap:balance}.social-links{display:flex;align-items:center;justify-content:center;gap:clamp(1rem,4vw,1.6rem)}.social-links a{display:inline-flex;align-items:center;justify-content:center;opacity:.6;transition:opacity .2s ease;text-decoration:none;padding:.3rem;-webkit-tap-highlight-color:transparent}.social-links a:hover,.social-links a:active{opacity:1}.social-links svg{width:22px;height:22px;fill:var(--paper)}.screenshots{display:grid;grid-template-columns:1fr;gap:16px;margin-bottom:6rem}.screenshot-main{position:relative;z-index:var(--z-content);max-width:900px;margin:0 auto;padding:0 2rem}.screenshot-placeholder{aspect-ratio:16/9;border-radius:var(--radius-lg);border:1px solid rgba(220,214,204,.1);background:#dcd6cc08;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.screenshot-placeholder svg{opacity:.2}.screenshot-placeholder span{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}.screenshot-caption{margin-top:14px;text-align:center;font-family:var(--font-display);font-size:17px;font-style:italic;color:var(--muted);line-height:1.6}.screenshot-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:900px;margin:16px auto 0;padding:0 2rem}.screenshot-sm{aspect-ratio:16/9;border-radius:var(--radius-md);border:1px solid rgba(220,214,204,.08);background:#dcd6cc05;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.screenshot-sm span{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;border:1px solid rgba(220,214,204,.08);border-radius:var(--radius-lg);overflow:hidden}.feature{padding:2rem;border-right:1px solid rgba(220,214,204,.08);border-bottom:1px solid rgba(220,214,204,.08);background:#0b0d12b3}.feature:nth-child(3n){border-right:none}.feature:nth-child(4),.feature:nth-child(5),.feature:nth-child(6){border-bottom:none}.feature-icon{margin-bottom:1rem}.feature-name{font-family:var(--font-body);font-size:14px;font-weight:500;color:var(--paper);margin-bottom:.4rem}.feature-desc{font-size:13px;color:var(--muted);line-height:1.6}.pricing{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:720px;margin:0 auto}.plan{border-radius:var(--radius-lg);border:1px solid rgba(220,214,204,.1);overflow:hidden;background:#0b0d12b3}.plan.pro{border-color:var(--green);border-width:2px}.plan-head{padding:24px 24px 16px;border-bottom:1px solid rgba(220,214,204,.08)}.plan-name{font-family:var(--font-display);font-size:24px;font-weight:300;color:var(--paper);margin-bottom:4px}.plan-price{font-size:28px;font-weight:500;color:var(--paper)}.plan-price span{font-size:14px;font-weight:300;color:var(--muted)}.plan-body{padding:20px 24px}.plan-item{font-size:13px;color:var(--muted);padding:5px 0;display:flex;align-items:flex-start;gap:10px}.plan-item:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--green);flex-shrink:0;margin-top:5px}.plan-note{font-size:12px;color:#dcd6cc59;margin-top:1.2rem;font-style:italic;text-align:center}.beta{position:relative;z-index:var(--z-content);padding:6rem 2rem;text-align:center}.beta-panel{max-width:480px;margin:0 auto}.beta-heading{font-family:var(--font-display);font-size:clamp(28px,4vw,38px);font-weight:300;font-style:italic;color:var(--paper);margin-bottom:1rem}.beta-sub{font-size:14px;color:var(--muted);line-height:1.7;margin-bottom:2rem}.beta-form{display:flex;gap:8px}.beta-input{flex:1;height:46px;background:#dcd6cc0f;border:1px solid rgba(220,214,204,.2);border-radius:var(--radius-sm);padding:0 16px;color:var(--paper);font-family:var(--font-body);font-size:14px;outline:none}.beta-input::placeholder{color:var(--faint)}.beta-input:focus{border-color:var(--green)}.beta-btn{height:46px;padding:0 24px;background:var(--green);border:none;border-radius:var(--radius-sm);color:#fff;font-family:var(--font-body);font-size:14px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .2s}.beta-btn:hover{background:var(--green-hover)}.beta-footnote{margin-top:.8rem;font-size:11px;color:var(--faint);font-style:italic}.blog-list{max-width:640px;margin:0 auto;padding:0 1.5rem}.blog-entry{padding:2rem 0}.blog-entry+.blog-entry{border-top:1px solid rgba(220,214,204,.12)}.blog-date{font-family:var(--font-body);font-size:11px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--orange);margin-bottom:.6rem}.blog-title{font-family:var(--font-display);font-size:26px;font-weight:400;color:var(--paper);margin-bottom:.6rem;line-height:1.25}.blog-title a{color:inherit;text-decoration:none;transition:color .2s}.blog-title a:hover{color:var(--green)}.blog-excerpt{font-family:var(--font-body);font-size:14px;color:var(--muted);line-height:1.7;margin-bottom:.8rem}.blog-readmore{font-family:var(--font-body);font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--green);text-decoration:none}.blog-readmore:hover{color:var(--green-hover)}.article{position:relative;z-index:var(--z-content);max-width:640px;margin:0 auto;padding:6rem 1.5rem 4rem}.article-back{display:inline-block;font-family:var(--font-body);font-size:11px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);text-decoration:none;margin-bottom:2.5rem;transition:color .2s}.article-back:hover{color:var(--green)}.article-date{font-family:var(--font-body);font-size:11px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--orange);margin-bottom:1rem}.article-title{font-family:var(--font-display);font-size:clamp(34px,6vw,48px);font-weight:400;color:var(--paper);line-height:1.15;margin-bottom:2.5rem}.article-body{font-family:var(--font-display);font-size:20px;font-weight:300;color:var(--paper);line-height:1.8}.article-body p{margin-bottom:1.4rem}.article-body a{color:var(--green)}.article-body a:hover{color:var(--green-hover)}.post-signature{margin-top:2.5rem;font-family:var(--font-display);font-size:16px;font-style:italic;color:#dcd6cc99;border-top:1px solid rgba(220,214,204,.1);padding-top:1.5rem}footer{position:relative;z-index:var(--z-content);display:flex;flex-direction:column;align-items:center;gap:.7rem;padding:3rem 1rem 2rem;border-top:1px solid rgba(220,214,204,.06);background:linear-gradient(to top,rgba(11,13,18,1) 65%,rgba(11,13,18,.85) 85%,transparent)}.footer-closing{font-family:var(--font-display);font-size:18px;font-weight:300;font-style:italic;color:var(--orange);text-align:center}.footer-links{display:flex;gap:1.4rem}.footer-links a{opacity:.5;transition:opacity .2s;text-decoration:none}.footer-links a:hover{opacity:1}.footer-links svg{width:20px;height:20px;fill:var(--paper)}.footer-url{font-family:var(--font-body);font-size:11px;letter-spacing:.14em;color:var(--faint);text-transform:uppercase;white-space:nowrap}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){nav{padding:0 1.25rem}.nav-links{gap:1.1rem}.nav-links a{font-size:11px}.nav-logo-text{display:none}.section{padding:4rem 1.25rem}.hero{padding:5rem 1.25rem 3rem}.hero--home{padding:8rem 1.25rem 3rem}.what-we-make,.features-grid{grid-template-columns:1fr}.feature{border-right:none!important;border-bottom:1px solid rgba(220,214,204,.08)!important}.feature:last-child{border-bottom:none!important}.pricing,.screenshot-grid{grid-template-columns:1fr}.studio{grid-template-columns:1fr;text-align:center;gap:1.4rem;justify-items:center}.studio-mark img{width:80px;height:80px}.beta-form{flex-direction:column}.beta-btn{width:100%}}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media(prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}[data-astro-transition-scope]{animation:none!important}}
