:root{color-scheme:dark;--ink:#08090e;--white:#f1f0f6;--muted:#92939f;--blue:#7873ff;--violet:#a58aff;--pointer-x:50%;--pointer-y:40%}
*{box-sizing:border-box}html,body{margin:0;width:100%;min-height:100%;background:var(--ink)}body{font-family:'DM Sans',sans-serif;color:var(--white);overflow:hidden;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button,input,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid #b8b4ff;outline-offset:6px}a{color:inherit;text-decoration:none}::selection{background:#7771ec;color:white}.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}
.ambient{position:fixed;inset:0;pointer-events:none;overflow:hidden}.ambient-light{position:absolute;inset:0;background:radial-gradient(ellipse at 77% 49%,#2b285022,transparent 52%),radial-gradient(ellipse at var(--pointer-x) var(--pointer-y),#515a8710,transparent 45%)}.ambient-grain{position:absolute;inset:0;opacity:.08;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 170 170' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.88' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.4' filter='url(%23n)'/%3E%3C/svg%3E");mix-blend-mode:screen}
/* Entrance: a clipped view of the actual responsive page sits inside the rim. */
.entrance{position:relative;min-height:680px;height:100vh;height:100dvh;overflow:hidden}.entrance-header{position:absolute;top:0;left:0;width:100%;height:104px;display:flex;align-items:center;padding:0 4.1%;z-index:6}.wordmark{font-family:'Space Grotesk',sans-serif;font-size:23px;font-weight:700;letter-spacing:-1.2px;display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.brand-logo{display:block;width:36px;height:36px;object-fit:contain;filter:drop-shadow(0 0 5px #6e64ff45)}.header-note{margin-left:30px;border-left:1px solid #35353d;padding-left:26px;font-size:9px;letter-spacing:.19em;color:#a1a1ad}.location{margin-left:auto;font-size:9px;letter-spacing:.13em;display:flex;align-items:center;gap:10px;color:#c0c1cc}.live-dot{display:inline-block;width:5px;height:5px;flex:none;border-radius:50%;background:#a3a0ff;box-shadow:0 0 12px #8c86ff99}.entrance-copy{position:absolute;left:4.1%;top:22%;z-index:5;width:47%;max-width:730px}.eyebrow{font-size:9px;font-weight:500;letter-spacing:.18em;display:flex;align-items:center;gap:12px;color:#a9a8b5;line-height:1.5}.tiny-rule{width:25px;height:1px;background:#716c9d;display:inline-block}h1{font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif;font-weight:600;font-size:clamp(98px,10.25vw,175px);letter-spacing:-.035em;line-height:.865;margin:31px 0 0}h1>span{display:block}.title-period{color:#9185ff}.opening-word{position:relative}.entrance-bottom{display:flex;align-items:center;gap:36px;margin-top:39px}.entrance-bottom p{font-size:13px;line-height:1.65;color:#a7a7b3;margin:0}.enter-button{position:relative;display:flex;align-items:center;justify-content:space-between;gap:30px;min-width:185px;border:1px solid #c9c6fa;background:#f0effa;color:#13121d;border-radius:999px;padding:17px 22px;font-size:13px;font-weight:600;box-shadow:0 0 35px #8175ff0a;transition:background .25s,box-shadow .3s,transform .3s;white-space:nowrap}.enter-button:hover{background:#d4cfff;box-shadow:0 0 40px #8175ff35;transform:translateY(-3px)}.enter-button:active{transform:translateY(0)}.button-arrow{display:inline-block;font-size:21px;line-height:1;transition:transform .3s}.enter-button:hover .button-arrow{transform:translate(2px,-2px)}.enter-button:disabled{cursor:default}
.portal-scene{position:absolute;inset:0;pointer-events:none;z-index:4;overflow:visible}.portal-position{position:absolute;width:min(73vw,1180px);aspect-ratio:1.5;right:-9.5vw;top:50%;translate:0 -50%;transform-style:preserve-3d;perspective:none}.portal-float{position:absolute;inset:0;transform:rotateY(-13deg) rotateX(5deg) rotateZ(-8deg);transform-style:preserve-3d;will-change:transform,opacity}.portal-frame{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;filter:drop-shadow(0 20px 35px #0009);position:relative;z-index:2}.portal-shadow{position:absolute;left:24%;top:22%;width:57%;height:54%;border-radius:40px;box-shadow:0 0 95px #6864e914}.orbit{position:absolute;border:1px solid #8383ff14;border-radius:50%;z-index:-1;right:-8%;top:7%;width:65%;height:86%;transform:rotate(-26deg)}.orbit-two{inset:auto -1% 4% auto;width:41%;height:70%;transform:rotate(30deg);border-color:#8383ff0a}.entrance-footer{position:absolute;bottom:29px;left:4.1%;right:4.1%;display:flex;justify-content:space-between;align-items:center;z-index:5;font-size:8px;letter-spacing:.15em;color:#777985}.footer-hint{display:flex;align-items:center;gap:8px}.outline-square{height:7px;width:7px;border:1px solid #77728d;rotate:-10deg}.intro-piece{will-change:transform,opacity}
/* The real page uses its final dimensions throughout the portal transition. */
.welcome-panel{position:fixed;width:100vw;height:100dvh;left:0;top:0;margin:0;z-index:3;transform:translate3d(0,0,0);transform-origin:center;overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable;border:0;border-radius:0;background:#0c0d15;container-type:inline-size;visibility:hidden;opacity:1;scrollbar-width:thin;scrollbar-color:#565070 #0c0d15;overscroll-behavior:contain}.welcome-surface{position:relative;width:100%;height:auto;min-height:100%;overflow:visible;background:#0c0d15}.welcome-hero{position:relative;display:flex;flex-direction:column;height:var(--scene-height,100dvh);min-height:620px;overflow:hidden;background:radial-gradient(ellipse at 88% 55%,#29234d66,transparent 65%),#0c0d15}.welcome-header{position:relative;display:flex;align-items:center;gap:26px;flex:none;height:96px;padding:0 5.4%;z-index:4}.welcome-location{font-size:8px;letter-spacing:.14em;color:#9290a2;border-left:1px solid #363445;padding-left:24px}.replay-wrap{position:relative;margin-left:auto;align-self:center}.replay-button{display:flex;gap:8px;align-items:center;font-size:11px;color:#a1a0b5;border:0;background:transparent;padding:10px 0 10px 10px;transition:color .2s;white-space:nowrap}.replay-button>span:first-child{font-size:20px;transition:rotate .4s}.replay-button:hover{color:#e5e3ff}.replay-button:hover>span:first-child{rotate:-60deg}.tiny-meow{position:absolute;right:2px;top:35px;font-size:8px;letter-spacing:.22em;color:#858099;opacity:.56;rotate:-5deg;user-select:none}.welcome-body{position:relative;flex:1;min-height:0;padding:20px 5.4% 28px;display:flex;align-items:center}.welcome-copy{position:relative;z-index:3;width:100%}.greeting{font-family:'Space Grotesk',sans-serif;font-size:clamp(25px,2.7cqw,38px);letter-spacing:-.045em;font-weight:400;display:flex;gap:12px;align-items:center;margin:0 0 20px}.wave{font-family:'Apple Color Emoji','Segoe UI Emoji','Noto Color Emoji',sans-serif;font-size:.85em;display:inline-block;transform-origin:72% 78%;user-select:none}.welcome-title{font-family:'Space Grotesk',sans-serif;font-size:clamp(48px,6.45cqw,100px);line-height:1.04;font-weight:500;letter-spacing:-.065em;margin:0;outline:none;max-width:80%}.headline-line{display:block;padding-bottom:.05em;margin-bottom:-.05em}em{font-style:normal;font-weight:inherit;color:#a39aff;background:linear-gradient(110deg,#d1c8ff,#8f86ff 48%,#6b7fff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.welcome-caption{display:flex;gap:16px;margin-top:26px;align-items:flex-start}.caption-rule{flex:none;width:34px;height:1px;margin-top:11px;background:#696382}.welcome-caption p{font-size:14px;line-height:1.8;color:#9895a6;margin:0;letter-spacing:-.01em}.welcome-caption strong{font-weight:450;color:#d6d3e6}.hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:27px}.site-button{display:inline-flex;justify-content:space-between;align-items:center;gap:27px;min-height:49px;padding:0 22px;border-radius:999px;font-size:12px;font-weight:550;transition:background .25s,border-color .25s,box-shadow .25s,translate .25s}.site-button>span{font-size:19px;line-height:1}.site-button:hover{translate:0 -3px}.site-button-primary{color:#f6f4ff;background:linear-gradient(125deg,#6f60e2,#685ed2);border:1px solid #a99bef77;box-shadow:0 6px 28px #6f60e21a}.site-button-primary:hover{background:linear-gradient(125deg,#8473f2,#7568e5);box-shadow:0 6px 35px #7769eb35}.site-button-secondary{color:#d4d1e5;background:#15142066;border:1px solid #454152}.site-button-secondary:hover{background:#252135;border-color:#7d729f}.brand-art{position:absolute;right:-8%;top:50%;translate:0 -50%;width:55%;aspect-ratio:1;pointer-events:none;opacity:.64;z-index:1}.brand-emblem{position:relative;display:block;width:100%;height:100%;object-fit:contain;rotate:-10deg;filter:saturate(.78) brightness(.85) drop-shadow(10px 24px 30px #0004)}.art-halo{position:absolute;inset:24% 10% 20%;border-radius:50%;background:#6861e024;filter:blur(60px)}.welcome-footer{position:relative;flex:none;height:60px;padding:0 5.4% 25px;display:flex;align-items:flex-end;justify-content:space-between;gap:15px;font-size:7px;letter-spacing:.13em;color:#888495;z-index:3}.scroll-cue{display:flex;gap:9px;align-items:center;font-size:7px;letter-spacing:.14em;color:#a39bb8}.scroll-cue>span{font-size:16px}.scroll-cue:hover{color:#e5dcff}.welcome-corner{position:absolute;top:0;right:0;width:9px;height:9px;border-top:1px solid #a599d8;border-right:1px solid #a599d8;opacity:.6}
body[data-mode="entering"] .welcome-panel,body[data-mode="inside"] .welcome-panel,body[data-mode="returning"] .welcome-panel{visibility:visible}body[data-mode="inside"] .wave{animation:wave-hello 1.25s .1s both}body[data-mode="inside"] .entrance{visibility:hidden}body[data-mode="entering"] .welcome-panel,body[data-mode="returning"] .welcome-panel{z-index:3}
@keyframes wave-hello{0%,100%{rotate:0deg}12%,36%,60%{rotate:19deg}24%,48%,72%{rotate:-9deg}84%{rotate:8deg}}
/* Services and the inline project planner. */
.site-section{position:relative;padding:104px 5.4%;border-top:1px solid #2d293b;outline:none;scroll-margin-top:0}.details-section{background:radial-gradient(ellipse at 8% 20%,#30234427,transparent 50%),#0d0d16}.details-layout{max-width:1450px;margin:0 auto;display:grid;grid-template-columns:.84fr 1.16fr;gap:7%;align-items:start}.section-kicker{display:flex;align-items:center;gap:10px;font-size:9px;letter-spacing:.18em;color:#aaa2bf}.details-title,.contact-title{font-family:'Space Grotesk',sans-serif;font-size:clamp(46px,4.8cqw,76px);font-weight:500;letter-spacing:-.06em;line-height:1.05;margin:29px 0 26px}.section-description{max-width:370px;font-size:15px;line-height:1.8;color:#aaa5b9;margin:0 0 18px}.section-description-small{font-size:12px;color:#827d92;line-height:1.85}.pricing-note{margin-top:43px;padding:26px 0 0;border-top:1px solid #383045;max-width:390px}.pricing-label{font-size:8px;letter-spacing:.17em;color:#9d91b4}.pricing-note h3{font-family:'Space Grotesk',sans-serif;font-size:22px;line-height:1.3;letter-spacing:-.04em;font-weight:500;margin:17px 0 18px}.price-highlight{display:inline;font-size:15px;font-weight:550;color:#c3b3ff;text-decoration:underline;text-decoration-color:#a58aff;text-decoration-thickness:1.5px;text-underline-offset:.28em}.price-highlight>span{font-size:19px}.pricing-note p{font-size:12px;line-height:1.9;color:#9991aa;margin:19px 0 14px}.price-footnote{display:block;color:#6f687f;font-size:10px;line-height:1.7}.section-endnote{display:flex;justify-content:space-between;align-items:center;gap:20px;max-width:1450px;margin:73px auto 0;padding-top:26px;border-top:1px solid #2b2538;color:#746b87;font-size:8px;letter-spacing:.14em}.section-endnote a{display:inline-flex;align-items:center;gap:15px;color:#c5b7e5;font-size:11px;letter-spacing:0}.section-endnote a:hover{color:#eee4ff}
.brief-notice{font-size:10px;line-height:1.8;color:#9b87ad;margin:22px 0 0}
/* Contact section and shared footer. */
.contact-section{background:radial-gradient(ellipse at 80% 35%,#2b214c2b,transparent 62%),#0a0b12;padding-top:100px;padding-bottom:0;min-height:650px;overflow:hidden}.contact-content{position:relative;max-width:1450px;margin:0 auto;z-index:2}.contact-title{font-size:clamp(43px,5.1cqw,82px);max-width:950px;margin-top:35px}.back-to-top{display:inline-flex;align-items:center;gap:18px;margin-top:36px;font-size:11px;color:#ad9cc8;border-bottom:1px solid #5b496d;padding:0 0 9px}.back-to-top:hover{color:#e2d3f5}.contact-watermark{position:absolute;z-index:0;right:-3%;top:17%;font-family:'Barlow Condensed',sans-serif;font-size:26cqw;line-height:.8;letter-spacing:-.04em;font-weight:600;color:#ac98e704;rotate:-8deg;pointer-events:none;user-select:none}.contact-footer{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1450px;margin:84px auto 0;padding:26px 0;border-top:1px solid #2d253a;color:#6e647e;font-size:7px;letter-spacing:.11em}.contact-footer .wordmark{font-size:19px;color:#b8adc9}.contact-footer .brand-logo{width:29px;height:29px}.noscript-note{position:fixed;bottom:60px;left:4%;max-width:90%;color:#c3bcf8;font-size:16px}
@media(min-width:1700px){.entrance-copy{top:23%}.portal-position{right:-5vw;width:69vw}}
@media(max-width:1100px) and (min-width:701px){.header-note{display:none}.entrance-copy{top:24%;width:52%}h1{font-size:11.5vw}.entrance-bottom{align-items:flex-start;gap:23px;flex-direction:column;margin-top:28px}.portal-position{width:81vw;right:-17vw}.entrance-footer{font-size:7px}}
@media(max-width:800px){.details-layout{grid-template-columns:1fr;gap:42px}.details-intro{display:grid;grid-template-columns:1fr 1fr;column-gap:30px}.details-intro>.section-kicker,.details-title{grid-column:1}.details-intro>.section-description{grid-column:1}.pricing-note{grid-column:2;grid-row:1/5;margin-top:0;padding-top:22px}.details-title{font-size:53px}.contact-footer>span:last-child{display:none}}
@container(max-width:800px){.welcome-location{display:none}.welcome-title{font-size:7.7cqw;max-width:92%}.brand-art{right:-16%;width:66%;opacity:.33}.greeting{font-size:29px}.welcome-caption p{font-size:13px}.hero-actions{gap:10px}.site-button{font-size:11px;padding:0 18px;gap:21px;min-height:47px}.welcome-footer{font-size:6px;letter-spacing:.08em}}
@media(max-width:700px){.entrance{min-height:650px}.entrance-header{height:76px;padding:0 6%}.wordmark{font-size:21px}.brand-logo{width:33px;height:33px}.header-note{display:none}.location{font-size:8px;gap:7px;letter-spacing:.08em}.entrance-copy{left:6%;top:15.2%;width:88%;max-width:none}.eyebrow{font-size:7px;letter-spacing:.14em;gap:8px}.tiny-rule{width:17px}h1{font-size:clamp(50px,17vw,112px);line-height:.9;margin-top:20px}h1>span{display:inline}h1>span:first-child:after{content:' ';display:block}h1>span:nth-child(2):after{content:' '}.entrance-bottom{margin-top:23px;gap:18px;align-items:center;justify-content:space-between}.entrance-bottom p{font-size:11px;line-height:1.6}.enter-button{min-width:153px;padding:13px 18px;font-size:12px;gap:16px}.button-arrow{font-size:19px}.portal-position{width:137vw;right:-14vw;top:73%}.portal-float{transform:rotateY(-10deg) rotateX(4deg) rotateZ(-9deg)}.orbit-one{width:130%;right:-25%;top:43%;height:53%}.orbit-two{display:none}.entrance-footer{bottom:22px;left:6%;right:6%;font-size:6px;letter-spacing:.1em}.footer-hint{display:none}.site-section{padding:72px 7%}.details-intro{display:block}.details-title{font-size:57px}.section-description{font-size:14px;max-width:400px}.section-description-small{font-size:12px}.pricing-note{margin-top:30px;padding-top:25px;max-width:none}.price-highlight{font-size:14px}.pricing-note h3{font-size:22px}.section-endnote{margin-top:41px;font-size:7px;align-items:flex-start}.section-endnote>span{max-width:110px;line-height:1.8}.section-endnote a{font-size:10px;gap:7px}.contact-section{min-height:620px;padding-bottom:0}.contact-title{font-size:clamp(40px,9cqw,58px)}.contact-footer{margin-top:70px}.contact-footer>span:nth-child(2){font-size:6px;max-width:130px;text-align:right;line-height:1.8}.contact-watermark{top:36%;font-size:38cqw}}
@container(max-width:550px){.welcome-header{height:80px;padding:0 7%;gap:10px}.replay-button{font-size:10px}.welcome-body{padding:20px 7% 30px}.greeting{font-size:28px;margin-bottom:23px;gap:10px}.welcome-title{font-size:clamp(33px,9.7cqw,53px);max-width:none;line-height:1.08;letter-spacing:-.065em}.welcome-caption{margin-top:24px;gap:12px}.welcome-caption p{font-size:12px;line-height:1.85}.caption-rule{width:20px;margin-top:10px}.hero-actions{margin-top:25px;gap:10px}.site-button{font-size:11px;gap:15px;padding:0 17px;min-height:47px}.brand-art{width:100%;right:-40%;top:61%;opacity:.26}.welcome-footer{padding:0 7% 24px;height:65px;font-size:5px;letter-spacing:.06em}.welcome-footer>span:first-child{max-width:110px;line-height:1.8}.welcome-footer>span:last-child{max-width:68px;text-align:right;line-height:1.8}.scroll-cue{font-size:5px;gap:5px}.scroll-cue>span{font-size:14px}}
@media(max-height:690px) and (min-width:701px){.entrance{min-height:550px}.entrance-header{height:75px}.entrance-copy{top:21%}h1{font-size:min(10vw,132px);margin-top:22px}.entrance-bottom{margin-top:24px}.portal-position{width:65vw;right:-6vw}.entrance-footer{bottom:20px}.welcome-header{height:74px}.welcome-footer{height:48px;padding-bottom:20px}.greeting{font-size:27px;margin-bottom:14px}.welcome-title{font-size:min(5.8cqw,72px)}.welcome-caption{margin-top:20px}.hero-actions{margin-top:21px}}
@media(max-height:520px) and (min-width:701px){.entrance{min-height:0}.entrance-header{height:57px}.entrance-copy{top:23%;width:49%}.entrance-copy>.eyebrow{font-size:7px}h1{font-size:min(10vw,86px);margin-top:12px;line-height:.85}.entrance-bottom{position:absolute;left:51vw;top:175px;margin-top:0;gap:16px;flex-direction:row}.entrance-bottom p{font-size:10px}.enter-button{min-width:145px;padding:12px 17px;font-size:11px}.portal-position{width:64vw;right:-3vw;top:44%}.entrance-footer{bottom:14px;font-size:6px}.welcome-hero{min-height:590px}}
@media(max-height:690px) and (max-width:700px){.entrance{min-height:0}.entrance-header{height:60px}.entrance-copy{top:13%}h1{margin-top:14px}.entrance-bottom{margin-top:17px}.portal-position{top:73%;width:125vw;right:-10vw}.entrance-footer{bottom:14px}}
@media(max-height:440px) and (max-width:700px){.entrance-copy{top:24%;width:55%}h1{font-size:12vw}.entrance-copy>.eyebrow{font-size:6px}.entrance-bottom{margin-top:16px}.entrance-bottom p{display:none}.enter-button{padding:10px 15px;min-width:138px}.portal-position{width:70vw;right:-15vw;top:57%}.location{font-size:7px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.welcome-hero:focus{outline:none}

.contact-section{min-height:max(650px,var(--scene-height,100dvh));display:flex;flex-direction:column}.contact-content{width:100%;flex:1}.contact-footer{width:100%}

/* Both elements rotate around the opening center with the same camera. */
.portal-float{transform-origin:52.4% 49.8%}.portal-frame{filter:drop-shadow(0 16px 24px #0008)}

/* Corrections marked on the welcome/services screenshots. */
.welcome-title .headline-line:last-child em{display:inline-block;padding-inline-end:.12em;margin-inline-end:-.12em}
.welcome-footer{justify-content:flex-end}
.hero-actions .site-button-secondary{justify-content:center;gap:0;padding-inline:42px}
#more-about-sites>.section-endnote{justify-content:flex-end}
@container(max-width:800px){.hero-actions .site-button-secondary{padding-inline:35px}}
@container(max-width:550px){.hero-actions .site-button-secondary{padding-inline:31px}}
