
@import 'tailwindcss';
@import 'tw-animate-css';
@import 'shadcn/tailwind.css';
@font-face{font-family:Manrope;src:url('/fonts/manrope-400.ttf');font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url('/fonts/manrope-500.ttf');font-weight:500;font-display:swap}
@font-face{font-family:Manrope;src:url('/fonts/manrope-600.ttf');font-weight:600;font-display:swap}
@font-face{font-family:Manrope;src:url('/fonts/manrope-700.ttf');font-weight:700;font-display:swap}
@font-face{font-family:Manrope;src:url('/fonts/manrope-800.ttf');font-weight:800;font-display:swap}
@theme inline{--color-background:var(--background);--color-foreground:var(--foreground);--color-primary:var(--primary);--color-primary-foreground:var(--primary-foreground);--color-popover:var(--popover);--color-popover-foreground:var(--foreground);--color-border:var(--border);--color-input:var(--border);--color-ring:var(--primary);--color-muted-foreground:var(--muted-foreground);--color-accent:var(--accent);--color-accent-foreground:var(--foreground);--font-sans:Manrope,Arial,sans-serif;--radius-lg:4px;--radius-md:3px}
:root,.dark{--background:#f9fbfa;--foreground:#052a3b;--primary:#007e8d;--primary-foreground:#fff;--popover:#fff;--border:#b8cbcc;--muted-foreground:#526970;--accent:#e8f2f1;--radius:4px;--ink:#052a3b;--teal:#007e8d;--muted:#526970;--paper:#f9fbfa;--line:#d3dedd}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600;line-height:1.12;letter-spacing:-.055em}h1{font-size:clamp(48px,5.7vw,82px)}h1 span,h2>span{color:var(--teal)}h2{font-size:clamp(34px,3.4vw,49px)}h3{font-size:24px;letter-spacing:-.035em}p{color:var(--muted)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #0099aa;outline-offset:5px}::selection{background:#bce8e4;color:var(--ink)}.shell{max-width:1320px;width:calc(100% - 112px);margin-inline:auto}.section{padding-block:112px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--ink);line-height:1.6}.lead{font-size:18px;line-height:1.75;max-width:610px}.small{font-size:14px;line-height:1.65}.button{min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:26px;padding:14px 24px;border:1px solid transparent;font-size:14px;font-weight:600;line-height:1.5;transition:background .2s,transform .2s,color .2s;white-space:normal}.button span{font-size:20px;font-weight:400}.button:hover{transform:translateY(-2px)}.primary{background:var(--teal);color:#fff}.primary:hover{background:#00616f}.outline{border-color:#adc3c5;background:transparent;color:var(--ink)}.outline:hover{background:#e1eeed}.plain{padding-inline:14px}.plain:hover{color:var(--teal)}.light{background:#fff;color:var(--ink)}.text-link{display:inline-flex;gap:20px;border-bottom:1px solid var(--ink);padding-block:12px 8px;font-size:14px;font-weight:700}.text-link:hover{color:var(--teal);border-color:var(--teal)}.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.skip{position:fixed;top:-80px;left:20px;background:var(--ink);color:white;z-index:100;padding:12px}.skip:focus{top:8px}
.site-header{height:96px;background:rgba(249,251,250,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:40}.header-inner{display:flex;align-items:center;justify-content:space-between;height:100%;gap:24px}.logo{width:148px;height:auto}.desktop-nav{display:flex;gap:34px;margin-left:auto;margin-right:40px}.desktop-nav a{font-size:14px;font-weight:600;position:relative;padding-block:10px}.desktop-nav a:hover,.desktop-nav a[aria-current]{color:var(--teal)}.desktop-nav a[aria-current]:after{content:'';position:absolute;bottom:2px;left:0;right:0;height:2px;background:var(--teal)}.nav-cta{min-height:46px;padding:11px 18px}.menu-toggle,.mobile-nav{display:none}
.hero{min-height:706px;position:relative;display:grid;grid-template-columns:1fr 1.05fr;align-items:center;gap:22px;padding-block:66px 96px}.hero-copy{position:relative;z-index:2}.hero-copy .eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:26px}.eyebrow i{width:7px;height:7px;border-radius:50%;background:var(--teal)}.hero h1{font-size:clamp(50px,5.4vw,78px);line-height:1.09;white-space:nowrap}.hero .lead{max-width:465px;margin-top:28px;font-size:17px}.hero .actions{margin-top:32px}.hero-note{display:flex;gap:20px;font-size:12px;margin-top:27px}.hero-caption{position:absolute;bottom:26px;left:0;right:0;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:22px;font-size:12px;color:var(--muted)}.hero-caption a:hover{color:var(--teal)}
.hero-scene{height:492px;position:relative;perspective:1100px;background:#e5efed;overflow:hidden;isolation:isolate}.scene-grid{position:absolute;inset:0;background-image:linear-gradient(#b6cbca55 1px,transparent 1px),linear-gradient(90deg,#b6cbca55 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,black,transparent)}.scene-label,.scene-bottom{position:absolute;left:23px;right:23px;display:flex;justify-content:space-between;font-size:10px;font-weight:600;letter-spacing:.08em;color:#4b696b;z-index:5}.scene-label{top:23px}.scene-bottom{bottom:17px;align-items:center;font-size:10px;letter-spacing:0}.scene-bottom button{background:none;border:1px solid #9eb9b8;width:30px;height:30px}.scene-object{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .35s ease-out}.hero-browser{position:absolute;width:83%;left:5%;top:107px;transform:rotateY(-15deg) rotateX(8deg) rotateZ(-7deg);box-shadow:20px 32px 30px #123f4433;animation:float 8s ease-in-out 2;transform-style:preserve-3d}.rear-panel{position:absolute;width:73%;height:245px;top:92px;left:20%;background:#087c87;transform:rotate(-12deg) rotateY(-16deg) translateZ(-35px);box-shadow:8px 10px 0 #00566b;display:flex;align-items:flex-end;padding:20px;color:#c2eded;font-size:12px;line-height:1.4;letter-spacing:.1em}.floating-label{position:absolute;left:4%;bottom:52px;display:flex;gap:12px;align-items:center;padding:12px 18px;background:#fff;box-shadow:0 10px 20px #052a3b12;transform:rotate(-6deg);font-size:12px;line-height:1.6}.floating-label>span{font-size:32px;color:var(--teal)}.mobile-mock{position:absolute;right:5%;bottom:44px;width:125px;height:238px;background:#f8f5ef;border:5px solid #062b38;border-radius:20px;transform:rotateY(-16deg) rotateZ(9deg);box-shadow:13px 15px 20px #123f4438;overflow:hidden;padding:22px 9px 8px;font-size:8px}.phone-notch{position:absolute;top:5px;width:40px;height:7px;border-radius:5px;left:calc(50% - 20px);background:#062b38}.mobile-mock>span{font-size:7px;letter-spacing:.1em;font-weight:800}.mobile-mock strong{display:block;font-family:Georgia,serif;font-size:20px;line-height:1.1;margin:12px 0}.mobile-mock img{width:100%;height:85px;object-fit:cover}.mobile-mock b{font-size:6px;font-weight:500;display:block;margin-top:9px}.paused .hero-browser{animation-play-state:paused}.paused .scene-object{transform:none!important}@keyframes float{0%,100%{translate:0 0}50%{translate:0 -12px}}
.browser-mock{background:#f9f7f2;color:#232b25;text-align:left;overflow:hidden}.browser-bar{display:flex;justify-content:space-between;align-items:center;background:#fff;border-bottom:1px solid #dedfd8;padding:7px 12px;font-size:7px;letter-spacing:0}.browser-bar>span:first-child{font-size:5px;letter-spacing:2px;color:#9eaaa6}.mock-nav{display:flex;justify-content:space-between;padding:16px 22px;align-items:center;font-size:7px}.mock-nav strong{font-size:11px;letter-spacing:.08em}.mock-nav>span{font-size:6px}.mock-body{display:grid;grid-template-columns:1fr 1.03fr;min-height:200px}.mock-copy{padding:20px 12px 23px 22px;display:flex;flex-direction:column;align-items:flex-start}.mock-eyebrow{font-size:5px;letter-spacing:.15em}.mock-copy>strong{font-family:Georgia,serif;font-size:34px;line-height:1.03;font-weight:400;letter-spacing:-.05em;margin:19px 0 22px}.mock-button{font-size:6px;border-bottom:1px solid currentColor;padding-bottom:5px;margin-top:auto}.mock-body img{width:100%;height:100%;min-height:210px;object-fit:cover}.mock-foot{padding:14px 22px;display:flex;justify-content:space-between;font-size:5px;letter-spacing:.1em}.restaurant.browser-mock{background:#f4ead9;color:#563325}.restaurant .mock-nav strong{font-family:Georgia,serif;letter-spacing:-.02em;font-size:16px}.restaurant .mock-copy>strong{font-style:italic}.clean.browser-mock{background:#dcefeb;color:#003f46}.clean .mock-copy>strong{font-family:Manrope,sans-serif;font-weight:700;font-size:28px}.clean-type{background:#00545d;color:#caf2e7;font-size:50px;line-height:1;padding:25px 18px;font-weight:800;letter-spacing:-.07em}
.industry-strip{border-block:1px solid var(--line);background:#eef3f1}.industry-strip .shell{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-block:20px}.industry-strip span{font-size:12px;color:#5c7175}.industry-strip p{font-size:14px;font-weight:600;color:var(--ink)}.industry-strip b{padding-inline:18px;color:var(--teal)}.intro{display:grid;grid-template-columns:1fr 2.3fr;gap:36px}.intro h2{font-size:clamp(34px,3.8vw,54px)}.intro h2 em{font-style:normal;color:var(--teal)}.intro-bottom{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;margin-top:32px}.intro-bottom p{max-width:465px;font-size:16px}.intro-bottom a{flex-shrink:0}.section-head{display:grid;grid-template-columns:1fr 2.3fr;gap:36px;margin-bottom:56px}.section-head h2{max-width:800px}.section-head>div>p{max-width:590px;margin-top:22px}.work-section{background:#eaf0ee}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.project-visual{position:relative;background:#cedad3;width:100%;height:355px;display:grid;place-items:center;overflow:hidden;perspective:1000px;border:0}.project-visual.restaurant{background:#e5d7c5}.project-visual.clean{background:#b3d8ce}.project-badge{position:absolute;top:20px;left:22px;border:1px solid #60786960;padding:4px 9px;font-size:9px;letter-spacing:.09em;z-index:2}.project-browser{width:78%;transform:rotateY(-10deg) rotateX(10deg) rotate(-5deg);box-shadow:18px 25px 24px #153e3428;transition:transform .6s cubic-bezier(.2,.8,.2,1)}.project-visual.restaurant .project-browser{transform:rotateY(10deg) rotateX(8deg) rotate(5deg)}.project-visual:hover .project-browser,.project-visual:focus-visible .project-browser{transform:rotateY(0) rotateX(0) rotate(0) translateZ(15px)}.project-open{position:absolute;right:18px;bottom:18px;border:1px solid #708579;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-size:22px}.project-info{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:24px}.project-info .eyebrow{font-size:10px;margin-bottom:8px;color:var(--muted)}.project-info h3{font-size:22px}.round-link{background:none;border:1px solid #b1c7c6;width:44px;height:44px;flex-shrink:0;border-radius:50%;font-size:23px}.work-section .text-link{margin-top:42px}.portfolio-page{padding-bottom:112px}.portfolio-page .project-grid{row-gap:64px}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:36px}.filters button{padding:10px 18px;border:1px solid var(--line);font-size:14px;background:transparent}.filters .active{background:var(--ink);color:#fff}.project-dialog[data-slot=dialog-content]{max-width:850px!important;width:calc(100vw - 40px);max-height:90vh;overflow:auto;border-radius:3px;padding:30px;background:var(--paper)}.project-dialog [data-slot=dialog-title]{font-size:26px;padding-right:30px}.project-dialog [data-slot=dialog-description]{font-size:15px;color:var(--muted);line-height:1.6}.project-dialog .browser-mock{width:100%;max-width:610px;margin:10px auto}.project-dialog .mock-body{min-height:240px}.project-dialog .mock-copy>strong{font-size:44px}.concept-features{display:flex;gap:18px;flex-wrap:wrap;font-size:13px}.project-dialog .button{margin-top:8px}[data-slot=dialog-overlay]{background:#052a3b99!important;backdrop-filter:none!important}
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}.price{padding:34px 30px 30px;display:flex;flex-direction:column;background:#fff}.price+.price{border-left:1px solid var(--line)}.price.featured{background:#eaf3f0;border-top:3px solid var(--teal);margin-top:-3px}.price-top{display:flex;justify-content:space-between;gap:8px;align-items:center}.price-top>span{font-size:12px;color:var(--teal);font-weight:700}.price h3{font-size:22px;margin-top:24px;min-height:50px;max-width:230px}.amount{font-size:62px;line-height:1;color:var(--ink);letter-spacing:-.065em;margin-top:32px;font-weight:600}.amount span{font-size:37px}.price-unit{font-size:14px;margin-top:10px}.page-count{font-weight:700;font-size:15px;color:var(--ink);border-bottom:1px solid var(--line);padding-bottom:22px;margin-top:27px}.price ul{padding:0;margin:22px 0 30px;list-style:none}.price li{font-size:14px;line-height:1.65;margin-bottom:9px;color:#38575f;display:flex;gap:10px}.price li>span{color:var(--teal);font-weight:700}.price .button{margin-top:auto;width:100%;gap:12px}.price-note{margin-top:22px;font-size:13px}.price-note+.text-link{margin-top:16px}.about-band{background:#e6f0ed}.about-split{display:grid;grid-template-columns:1fr 1fr;gap:110px}.about-split h2{font-size:54px;margin:26px 0 32px;line-height:1.16}.people-summary{padding-top:30px}.people-summary>div{display:flex;align-items:center;gap:24px;padding:22px 0;border-bottom:1px solid #b8cdca}.people-summary>div>span:last-child{margin-left:auto;font-size:24px;color:var(--teal)}.initial{background:#c1d8d1;width:66px;height:75px;flex-shrink:0;display:grid;place-items:center;font-size:46px;letter-spacing:-.06em}.people-summary h3{font-size:27px}.people-summary p{font-size:14px}.people-summary>p{margin-top:26px;line-height:1.8}.process{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.process-step{border-top:1px solid #a8bebc;padding-top:20px}.step-no{color:var(--teal);font-size:14px}.process h3{font-size:22px;margin:30px 0 17px}.process p{font-size:16px;line-height:1.8}.cta{background:#073b48;color:#fff;overflow:hidden;position:relative}.cta-inner{position:relative;padding-block:76px;z-index:1}.cta .eyebrow{color:#b1d8d8}.cta h2{font-size:clamp(36px,4.3vw,62px);margin-top:28px;max-width:960px;position:relative;z-index:1}.cta h2 span{color:#8cd4d4}.cta-bottom{display:flex;justify-content:space-between;gap:30px;align-items:center;margin-top:40px;position:relative;z-index:1}.cta p{color:#b8d1d5;font-size:16px}.cta-mark{position:absolute;right:-15px;top:-85px;font-size:510px;line-height:1;color:#145260;transform:rotate(-10deg);z-index:-1;transition:transform .7s}.cta:hover .cta-mark{transform:rotate(0deg) translate(10px,-10px)}footer{padding-top:64px;background:#f3f7f5}.footer-top{display:grid;grid-template-columns:2fr 1fr 1.4fr 1fr;gap:45px;padding-bottom:56px}.footer-top>div>p{font-size:16px;margin-top:24px}.footer-top .eyebrow{font-size:12px;display:block;margin-bottom:20px}.footer-top a{display:block;font-size:14px;margin-block:10px}.footer-top a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid var(--line);padding-block:22px;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted)}
.page-hero{padding-block:80px 70px}.page-hero h1{margin-top:25px;font-size:clamp(44px,5.6vw,76px)}.page-hero .lead{margin-top:30px;max-width:710px}.soft{background:#eaf1ee}.service-list{border-bottom:1px solid var(--line)}.service-row{display:grid;grid-template-columns:65px 1fr 1fr;gap:40px;border-top:1px solid var(--line);padding-block:52px}.service-row h2{font-size:35px;max-width:380px}.service-row p{font-size:16px}.service-row .small{display:block;color:var(--teal);margin-top:20px;font-size:14px}.comparison-wrap{overflow:auto;border-top:1px solid var(--line)}.comparison{border-collapse:collapse;width:100%;font-size:14px;text-align:left}.comparison caption{text-align:left;font-size:14px;color:var(--muted);padding:16px 0}.comparison th,.comparison td{padding:18px 16px;border-bottom:1px solid var(--line);vertical-align:top;width:25%}.comparison thead{background:var(--ink);color:#fff}.comparison tbody th{font-weight:600}.comparison td{color:var(--muted);font-size:14px}.comparison tbody tr:nth-child(even){background:#eff4f1}.comparison-wrap+.small{margin-top:20px}.extras{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.extras article{border-top:1px solid #a8c3bd;padding-top:22px}.extras h3{font-size:40px;margin-block:24px}.extras h3 small{display:block;font-size:14px;letter-spacing:0;font-weight:500;line-height:1.7;margin-top:8px}.extras article>p:not(.eyebrow){font-size:16px}.extras article>.small{border-top:1px solid #c3d6d0;padding-top:20px;margin-top:24px;font-size:14px}.calculator{margin-top:65px;background:white;display:grid;grid-template-columns:1.1fr 1fr;gap:50px;padding:40px}.calculator h3{margin:14px 0 26px;font-size:28px}.calculator label{font-size:14px;font-weight:600}.form-select[data-slot=select-trigger]{width:100%;min-height:48px;border:1px solid #a9bfbd;border-radius:2px;background:#fff;padding:12px;font-size:16px;margin-top:8px;margin-bottom:18px;color:var(--ink)}[data-slot=select-content]{background:white;color:var(--ink);border-radius:2px!important}[data-slot=select-item]{font-size:16px;min-height:40px}.check-label{display:flex;gap:12px;align-items:center;margin:18px 0;font-size:14px!important;font-weight:400!important}.check-label [data-slot=checkbox]{width:20px;height:20px;border:1px solid #6f9493;border-radius:2px}.calc-result{border-left:1px solid var(--line);padding-left:40px;display:flex;flex-direction:column;justify-content:center}.calc-result>span{font-size:14px}.calc-result>strong{font-size:54px;line-height:1.5;letter-spacing:-.05em}.calc-result small{font-size:14px;font-weight:400;letter-spacing:0}.calc-result p{font-size:14px}.calc-result .small{font-size:13px;margin-block:20px}.calc-result .button{align-self:flex-start}.faq details{border-top:1px solid var(--line);padding:24px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{font-size:19px;font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:30px}.faq summary::-webkit-details-marker{display:none}.faq summary>span{font-size:25px;color:var(--teal)}.faq details[open] summary>span{transform:rotate(45deg)}.faq details p{max-width:850px;margin-top:20px;font-size:16px}.manifesto{background:var(--ink);color:white}.manifesto .eyebrow{color:#a4cdcd}.manifesto h2{font-size:clamp(40px,4.4vw,62px);margin-top:28px;color:#b5ded9}.manifesto-copy{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:48px}.manifesto p{color:#bfd3d8}.manifesto-copy p{font-size:17px}.team{display:grid;grid-template-columns:1fr 1fr;gap:60px}.team-letter{height:300px;background:#d5e5de;display:flex;justify-content:space-between;align-items:flex-end;padding:20px 34px;font-size:220px;line-height:1;font-weight:500;letter-spacing:-.1em;color:#4d8076;overflow:hidden}.team article:nth-child(2) .team-letter{background:#d9e8e9;color:#2c7181}.team-letter span{font-size:12px;letter-spacing:.08em;text-transform:uppercase;writing-mode:vertical-rl;transform:rotate(180deg);align-self:flex-start;margin-top:20px}.team h2{font-size:36px;margin-top:30px}.team .role{font-size:14px;color:var(--teal);margin-block:12px 20px}.team p{font-size:16px}.team-note{font-size:14px;max-width:800px;margin-top:42px;padding-top:24px;border-top:1px solid var(--line)}.principles{padding-top:0}.principles>article{display:grid;grid-template-columns:1fr 1.5fr;gap:80px;padding:32px 0;border-top:1px solid var(--line)}.principles article h3{font-size:28px}.contact-layout{display:grid;grid-template-columns:1fr 1.12fr;gap:90px;padding-block:80px 112px}.contact-layout h1{margin-block:26px 32px;font-size:70px}.contact-layout .lead{font-size:17px}.direct-contact{margin-top:44px;padding-top:28px;border-top:1px solid var(--line)}.direct-contact a{display:block;margin-top:15px;font-size:18px;overflow-wrap:anywhere}.direct-contact .small{margin-top:20px}.contact-form{background:#eaf1ee;padding:36px;align-self:start}.contact-form h2{font-size:30px;margin-bottom:12px}.contact-form>p{font-size:16px;margin-bottom:28px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.contact-form label{display:block;font-size:14px;font-weight:600;margin-top:18px}.contact-form label>span{font-weight:400;color:var(--muted)}.contact-form input,.contact-form textarea{width:100%;display:block;margin-top:8px;background:#fff;border:1px solid #acbebb;border-radius:2px;padding:12px;font-size:16px;line-height:1.6;min-width:0}.contact-form textarea{resize:vertical;min-height:145px}.contact-form>.small{font-size:13px;margin-block:20px}.contact-form>.small a{text-decoration:underline}.contact-form>.button{width:100%}.selection-note{padding:12px;border-left:2px solid var(--teal);font-size:14px!important}.form-status{margin-top:20px;padding:18px;background:#fff;border-left:3px solid var(--teal);font-size:14px}.form-status .button{margin-top:16px;font-size:14px}.legal{max-width:860px;min-height:70vh}.legal h1{font-size:52px;margin-block:28px}.legal h2{font-size:26px;margin-block:32px 15px;letter-spacing:-.035em}.legal p{margin-block:18px}.legal a{text-decoration:underline;text-underline-offset:4px}.legal-note{padding:16px 20px;background:#e5efeb;border-left:3px solid var(--teal);font-size:14px;margin-block:24px}.reveal-ready{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}.revealed{opacity:1;transform:none}
@media(min-width:1500px){.hero{min-height:750px}.hero-scene{height:520px}.hero-browser{top:115px}.hero h1{font-size:82px}}
@media(max-width:1150px){.shell{width:calc(100% - 64px)}.desktop-nav{gap:22px;margin-right:12px}.hero h1{font-size:57px}.hero{gap:20px;min-height:670px}.hero-scene{height:465px}.hero .lead{font-size:16px}.hero-note{gap:12px}.hero-browser{width:87%;left:1%;top:105px}.mock-copy>strong{font-size:27px}.mock-body{min-height:175px}.mock-body img{min-height:180px}.mock-nav{padding:13px 16px}.mock-copy{padding:15px}.mock-nav>span{font-size:5px}.mobile-mock{width:110px;height:220px;right:3%;bottom:48px}.intro,.section-head{grid-template-columns:1fr 2.5fr;gap:24px}.intro-bottom{display:block}.intro-bottom .text-link{margin-top:18px}.project-visual{height:320px}.price{padding:26px 20px}.about-split{gap:65px}.about-split h2{font-size:46px}.contact-layout{gap:40px}.contact-layout h1{font-size:60px}.contact-form{padding:25px}.service-row{gap:28px;grid-template-columns:40px 1fr 1fr}}
@media(max-width:900px){.desktop-nav{display:none}.nav-cta{margin-left:auto}.menu-toggle{display:block;background:transparent;border:1px solid var(--line);padding:10px 14px;min-height:46px;font-size:14px}.mobile-nav.is-open{display:block;position:absolute;left:0;right:0;top:95px;background:var(--paper);padding:20px 32px;border-bottom:1px solid var(--line);box-shadow:0 12px 20px #052a3b10}.mobile-nav a{display:flex;justify-content:space-between;padding:14px 0;font-size:20px;border-bottom:1px solid var(--line)}.hero{grid-template-columns:1fr 1fr;min-height:625px}.hero h1{font-size:46px}.hero .actions{gap:2px}.hero .button{padding:12px 15px;font-size:14px;gap:12px}.hero-note{display:block;line-height:2}.hero-note span{display:block}.hero-scene{height:420px}.scene-label{font-size:8px;left:15px;right:15px}.hero-browser{top:100px;width:93%;left:0}.hero-scene .mock-copy>strong{font-size:23px}.hero-scene .mock-nav>span{display:none}.mobile-mock{width:92px;height:186px;bottom:48px;right:3%;padding:20px 7px 6px}.mobile-mock strong{font-size:16px}.mobile-mock img{height:65px}.floating-label{font-size:10px;padding:8px 10px;bottom:58px;left:2%}.scene-bottom{font-size:8px;left:12px;right:12px}.industry-strip .shell{display:block}.industry-strip span{display:block;margin-bottom:7px}.industry-strip b{padding-inline:10px}.section{padding-block:80px}.section-head,.intro{grid-template-columns:1fr;gap:20px}.section-head{margin-bottom:40px}.project-visual{height:280px}.project-browser{width:85%}.project .mock-body{min-height:155px}.project .mock-body img{min-height:160px}.project .mock-copy>strong{font-size:24px}.project .mock-nav>span{display:none}.project-info h3{font-size:20px}.price-grid{grid-template-columns:1fr}.price{display:grid;grid-template-columns:1fr 1.4fr;column-gap:40px;padding:30px}.price+.price{border-left:0;border-top:1px solid var(--line)}.price-top,.price h3,.amount,.price-unit{grid-column:1}.price h3{min-height:0}.price .page-count{grid-column:2;grid-row:1/3;margin:0;align-self:start}.price ul{grid-column:2;grid-row:3/7;margin-bottom:0}.price .button{grid-column:1;margin-top:25px}.amount{font-size:55px;margin-top:24px}.price.featured{margin-top:0}.price-top>span{display:none}.about-split{gap:40px}.about-split h2{font-size:39px}.people-summary>div{gap:15px}.initial{width:52px;height:64px;font-size:40px}.process{grid-template-columns:1fr 1fr;gap:40px}.footer-top{gap:30px;grid-template-columns:1.5fr 1fr 1.3fr}.footer-top>div:last-child{grid-column:2}.service-row{grid-template-columns:40px 1fr}.service-row>div{grid-column:2}.service-row h2{max-width:none}.extras{grid-template-columns:1fr;gap:36px}.extras h3 small{display:inline;margin-left:8px}.extras h3{margin:18px 0}.calculator{gap:25px;padding:30px}.calc-result{padding-left:25px}.contact-layout{grid-template-columns:1fr;gap:45px}.contact-layout h1 br:nth-of-type(2){display:none}.contact-layout .lead{max-width:630px}.direct-contact{margin-top:30px}.team{gap:32px}.team-letter{height:260px;font-size:190px}.principles>article{gap:35px}.manifesto-copy{gap:35px}}
@media(max-width:600px){.shell{width:calc(100% - 40px)}.site-header{height:77px}.header-inner{gap:12px}.logo{width:118px}.nav-cta{display:none}.menu-toggle{margin-left:auto;border:0;padding:10px 0;min-width:75px}.mobile-nav.is-open{top:76px;padding:16px 20px}.hero{display:flex;flex-direction:column;align-items:stretch;gap:35px;padding:42px 0 80px;min-height:0}.hero-copy .eyebrow{font-size:12px;margin-bottom:21px}.hero h1{font-size:clamp(37px,10.5vw,56px);white-space:normal}.hero .lead{font-size:16px;line-height:1.7;margin-top:24px;max-width:470px}.hero .actions{margin-top:25px;gap:10px}.hero .button{font-size:14px;min-height:49px;padding:12px 18px;gap:16px}.hero-note{display:flex;gap:14px;font-size:12px;margin-top:18px;flex-wrap:wrap}.hero-note span{display:inline}.hero-scene{height:365px;width:100%;max-width:470px;align-self:center}.hero-browser{top:80px;left:2%;width:85%}.hero-scene .mock-copy>strong{font-size:27px}.hero-scene .mock-body img{min-height:170px}.hero-scene .mock-body{min-height:165px}.rear-panel{top:65px;height:220px}.mobile-mock{bottom:35px;right:5%;width:102px;height:198px}.mobile-mock img{height:74px}.mobile-mock strong{font-size:17px}.floating-label{bottom:41px;left:5%;font-size:9px}.scene-label{top:14px;font-size:8px}.scene-bottom{bottom:8px;font-size:9px}.scene-bottom button{height:30px;width:30px}.hero-caption{bottom:18px;padding-top:16px;font-size:11px;gap:20px}.industry-strip .shell{padding-block:17px}.industry-strip span{font-size:12px}.industry-strip p{font-size:14px;line-height:2}.industry-strip b{padding-inline:5px}.section{padding-block:64px}.intro h2{font-size:32px;line-height:1.2}.intro-bottom{margin-top:24px}.intro-bottom p{font-size:16px}.section-head h2{font-size:32px;line-height:1.17}.section-head>div>p{font-size:16px;margin-top:18px}.eyebrow{font-size:12px}.project-grid{grid-template-columns:1fr;gap:38px}.project-visual{height:300px}.project-browser{width:79%}.project-badge{font-size:10px;top:14px;left:15px}.project .mock-copy>strong{font-size:27px}.project-info{padding-top:18px}.project-info h3{font-size:22px}.project-info .eyebrow{font-size:12px}.project-open{width:44px;height:44px;font-size:20px}.round-link{width:44px;height:44px;font-size:20px}.price{display:flex;padding:28px}.price h3{margin-top:20px;max-width:none}.price-top>span{display:block}.price .amount{font-size:62px;margin-top:25px}.price .page-count{margin-top:24px;align-self:stretch}.price ul{margin:22px 0 4px}.price .button{margin-top:24px}.price-note{font-size:13px}.about-split{grid-template-columns:1fr;gap:15px}.about-split h2{font-size:39px;line-height:1.15;margin-top:20px}.people-summary{padding-top:8px}.people-summary>p{font-size:16px}.process{grid-template-columns:1fr;gap:24px}.process-step{display:grid;grid-template-columns:30px 1fr;gap:12px}.process h3{margin:0;font-size:22px}.process p{grid-column:2;font-size:16px}.step-no{font-size:14px}.cta-inner{padding-block:55px}.cta h2{font-size:34px;line-height:1.2;margin-top:22px}.cta-bottom{display:block;margin-top:26px}.cta-bottom .button{margin-top:28px}.cta-mark{font-size:350px;top:20px;right:-80px;opacity:.5}.footer-top{grid-template-columns:1fr 1fr;gap:30px}.footer-top>div:first-child{grid-column:1/-1}.footer-top>div:last-child{grid-column:auto}.footer-top img{width:155px}.footer-top>div>p{margin-top:18px}.footer-bottom{font-size:12px;flex-wrap:wrap;gap:12px}.footer-bottom>span:nth-child(2){display:none}.footer-top a{font-size:14px;overflow-wrap:anywhere}.footer-top .eyebrow{font-size:12px}.page-hero{padding-block:48px}.page-hero h1{font-size:40px;line-height:1.15}.page-hero .lead{font-size:16px;margin-top:24px}.service-row{grid-template-columns:25px 1fr;gap:18px;padding-block:32px}.service-row h2{font-size:27px}.service-row p{font-size:16px}.service-row .small{font-size:14px}.comparison{min-width:720px}.comparison th,.comparison td{padding:14px 12px}.extras h3{font-size:36px}.extras h3 small{display:block;margin-left:0;font-size:14px}.calculator{grid-template-columns:1fr;padding:24px;gap:32px;margin-top:40px}.calculator h3{font-size:26px}.calc-result{border-left:0;border-top:1px solid var(--line);padding:25px 0 0}.calc-result>strong{font-size:50px}.check-label{font-size:14px!important;gap:10px}.faq summary{font-size:16px;line-height:1.5}.faq details{padding:19px 0}.faq details p{font-size:16px}.manifesto h2{font-size:33px;line-height:1.2}.manifesto-copy{grid-template-columns:1fr;gap:24px;margin-top:30px}.manifesto-copy p{font-size:16px}.team{grid-template-columns:1fr;gap:48px}.team-letter{height:240px;font-size:180px;padding-inline:26px}.team h2{font-size:30px;margin-top:25px}.team p{font-size:16px}.team-note{font-size:14px}.principles{padding-top:0}.principles>article{grid-template-columns:1fr;gap:18px}.principles article h3{font-size:25px}.principles article p{font-size:16px}.contact-layout{padding-block:48px 64px;gap:35px}.contact-layout h1{font-size:46px;line-height:1.1;margin-block:22px 26px}.contact-layout h1 br:nth-of-type(2){display:block}.contact-layout .lead{font-size:16px}.direct-contact a{font-size:16px}.contact-form{padding:24px 20px}.contact-form h2{font-size:28px}.field-grid{grid-template-columns:1fr}.contact-form label{font-size:14px}.contact-form>.small{font-size:13px}.contact-form>.button{font-size:14px;padding-inline:10px;gap:8px}.form-select[data-slot=select-trigger]{font-size:16px}.legal h1{font-size:40px}.legal h2{font-size:25px}.legal p{font-size:16px}.legal-note{font-size:14px}.filters{gap:8px}.filters button{font-size:14px;padding:10px 13px}.portfolio-page{padding-bottom:65px}.project-dialog[data-slot=dialog-content]{padding:22px 18px;width:calc(100vw - 24px)}.project-dialog [data-slot=dialog-title]{font-size:21px}.project-dialog [data-slot=dialog-description]{font-size:14px}.project-dialog .mock-copy>strong{font-size:26px}.project-dialog .mock-body{min-height:180px}.project-dialog .mock-nav>span{display:none}.project-dialog .mock-body img{min-height:180px}.concept-features{font-size:14px;gap:10px}.project-dialog .button{font-size:14px;padding:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal-ready{opacity:1;transform:none}.scene-object{transform:none!important}.cta:hover .cta-mark{transform:none}}
@media(pointer:coarse){.scene-object{transform:none!important}}
/* Owner editing and real project media */
.admin-heading{display:flex;gap:30px;align-items:end;justify-content:space-between;margin-bottom:36px}.admin-heading h1{font-size:48px;margin:18px 0}.admin-status,.form-connection{padding:18px 22px;background:#e1eee9;border-left:3px solid var(--teal);margin-bottom:24px;font-size:14px}.admin-status:empty{display:none}.admin-list{margin-top:30px}.admin-list article{display:flex;justify-content:space-between;align-items:center;gap:20px;border-block-start:1px solid var(--line);padding:25px 0}.admin-list h2{font-size:26px;letter-spacing:-.03em}.admin-list p{font-size:14px;margin-top:8px}.admin-list .button{font-size:13px;padding:10px 16px}.admin-form{max-width:950px;background:#eaf1ee;padding:36px}.admin-form h2{font-size:32px;margin-bottom:24px}.admin-form h3{margin:32px 0 16px}.admin-form label{display:block;font-size:14px;font-weight:600;margin-top:20px}.admin-form input:not([type=file]),.admin-form textarea{display:block;width:100%;margin-top:8px;border:1px solid #b0c7c2;background:white;padding:12px;font:inherit;font-size:16px}.admin-form .check-label{display:flex}.admin-form .actions{margin-top:28px}.admin-images{display:grid;grid-template-columns:1fr 1fr;gap:24px}.admin-images>div{padding:16px;background:#fff}.admin-images img{width:100%;height:180px;object-fit:contain;background:#e2e9e6}.admin-images .text-link{font-size:13px;margin-right:16px}.upload-label{padding:18px;border:1px dashed var(--teal);background:#fff}.upload-label input{display:block;margin-top:10px;max-width:100%;font-size:14px}button:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.actual-project-image{width:100%;height:100%;object-fit:contain;background:#dce7e2;transition:transform .75s cubic-bezier(.2,.8,.2,1)}.project-visual:hover .actual-project-image{transform:scale(1.035)}.project-summary{margin-top:16px;font-size:15px;line-height:1.75}.project-link-cover{text-align:left;width:100%;height:100%;padding:70px 30px 40px;background:#073b48;color:#fff;display:flex;flex-direction:column;justify-content:space-between}.project-link-cover strong{font-size:42px;line-height:1.1;letter-spacing:-.05em}.project-link-cover span{font-size:13px;overflow-wrap:anywhere;color:#b4dcdb}.project-gallery figure{margin:10px 0 25px}.project-gallery img{width:100%;height:auto;max-height:65vh;object-fit:contain;background:#e6eeea}.project-gallery figcaption{font-size:14px;margin-top:10px;color:var(--muted)}.portfolio-message{padding:35px;border-block:1px solid var(--line);min-height:125px}.portfolio-message .button{margin-top:20px}.contact-form fieldset{border:0;padding:0;min-width:0}.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-connection p{font-size:14px}.form-connection .text-link{font-size:13px}.project-badge{background:#f9fbfae8}.reading-progress{position:fixed;left:0;top:0;width:100%;height:3px;background:var(--teal);transform-origin:left;transform:scaleX(var(--scroll-progress,0));z-index:60;pointer-events:none}.motion-toggle{position:fixed;bottom:16px;right:18px;z-index:35;background:#f9fbfa;border:1px solid #aac3c2;padding:8px 12px;display:flex;align-items:center;gap:14px;font-size:12px;color:#153e49;box-shadow:0 4px 14px #082f3d12}.motion-toggle span{font-size:14px}.motion-target{transition:opacity .85s ease,translate .85s cubic-bezier(.2,.75,.25,1);transition-delay:var(--reveal-delay,0ms)}.motion-target:not(.motion-seen){opacity:0;translate:0 30px}.hero-scene.motion-target,.contact-layout.motion-target,.page-hero.motion-target{opacity:1;translate:none}.hero-copy h1{animation:heading-arrive 1s cubic-bezier(.16,.7,.2,1) both}.hero-copy .lead{animation:heading-arrive 1.2s cubic-bezier(.16,.7,.2,1) both}.hero-scene .hero-browser{animation:screen-orbit 12s ease-in-out infinite;translate:0 calc(var(--scene-scroll,0px) * -1)}.hero-scene .mobile-mock{animation:phone-orbit 10s ease-in-out infinite}.hero-scene .floating-label{animation:label-orbit 8s ease-in-out infinite}.hero-scene .rear-panel{animation:rear-orbit 14s ease-in-out infinite}.flying-interfaces{position:absolute;inset:0;pointer-events:none;z-index:4}.flying-interfaces span{position:absolute;background:#f8fbf7;color:#14505b;box-shadow:0 8px 24px #082d3d20;border:1px solid #b6d2ca;padding:10px 13px;font-size:11px;line-height:1.4;letter-spacing:.06em;animation:interface-orbit 10s ease-in-out infinite}.flying-interfaces span:nth-child(1){left:5%;top:14%;font-size:30px;animation-duration:9s}.flying-interfaces span:nth-child(2){right:6%;top:15%;rotate:8deg;animation-duration:13s}.flying-interfaces span:nth-child(3){left:33%;bottom:10%;rotate:-5deg;animation-duration:11s}.hero-scene:not(.in-view) *,.hero-scene.paused *{animation-play-state:paused!important}.hero-scene.paused .scene-object{transform:none!important}.project-visual{transition:background .5s}.project .round-link{transition:rotate .4s,background .3s}.project:hover .round-link{rotate:35deg;background:#cfebe3}.cta.in-view .cta-mark{animation:cta-drift 12s ease-in-out infinite}.button{position:relative;overflow:hidden}.button.primary:after{content:'';position:absolute;inset:-100% -50%;background:linear-gradient(110deg,transparent 38%,#ffffff26 49%,transparent 59%);translate:-80% 0;transition:translate .7s ease;pointer-events:none}.button.primary:hover:after{translate:80% 0}.service-row:hover h2{color:var(--teal);translate:8px 0;transition:translate .4s,color .4s}.team-letter{transition:letter-spacing .8s,background .8s}.team article:hover .team-letter{letter-spacing:-.02em}.contact-layout>div:first-child{position:relative}.contact-layout>div:first-child:after{content:'↗';display:block;color:#bdd9d1;font-size:170px;line-height:.8;margin-top:45px;animation:contact-arrow 9s ease-in-out infinite;pointer-events:none}.contact-layout:not(.in-view)>div:first-child:after{animation-play-state:paused}.form-status{animation:heading-arrive .5s ease both}
@keyframes heading-arrive{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes screen-orbit{0%,100%{transform:rotateY(-15deg) rotateX(8deg) rotateZ(-7deg)}50%{transform:translate3d(4px,-15px,16px) rotateY(-8deg) rotateX(4deg) rotateZ(-4deg)}}@keyframes phone-orbit{0%,100%{transform:translateZ(55px) rotateY(-16deg) rotateZ(9deg)}50%{transform:translate3d(-6px,-14px,60px) rotateY(-8deg) rotateZ(5deg)}}@keyframes label-orbit{0%,100%{transform:translateZ(65px) rotate(-6deg)}50%{transform:translate3d(7px,-9px,70px) rotate(-2deg)}}@keyframes rear-orbit{0%,100%{transform:rotate(-12deg) rotateY(-16deg) translateZ(-35px)}50%{transform:translateY(-8px) rotate(-9deg) rotateY(-10deg) translateZ(-30px)}}@keyframes interface-orbit{0%,100%{translate:0 0;transform:rotate(-3deg)}50%{translate:7px -17px;transform:rotate(5deg)}}@keyframes cta-drift{0%,100%{transform:rotate(-10deg) translate(0,0)}50%{transform:rotate(-3deg) translate(15px,-18px)}}@keyframes contact-arrow{0%,100%{transform:translate(0,0) rotate(-8deg)}50%{transform:translate(18px,-14px) rotate(2deg)}}
.motion-off *,.motion-off *:after{animation:none!important;transition:none!important}.motion-off .motion-target{opacity:1;translate:none}.motion-off .scene-object{transform:none!important}.motion-off .hero-browser{translate:none!important}.motion-off .reading-progress{display:none}
@media(max-width:900px){.admin-heading,.admin-list article{display:block}.admin-heading h1{font-size:38px}.admin-list .actions{margin-top:20px}.contact-layout>div:first-child:after{position:absolute;right:0;bottom:0;z-index:-1;font-size:110px;opacity:.5}.admin-form{padding:25px}}
@media(max-width:600px){.admin-images{grid-template-columns:1fr}.admin-heading h1{font-size:33px}.admin-list .actions{gap:8px}.admin-form{padding:20px}.actual-project-image{object-fit:contain}.project-link-cover strong{font-size:32px}.flying-interfaces span:nth-child(3){display:none}.flying-interfaces span:nth-child(1){font-size:18px;top:12%;padding:5px 9px}.flying-interfaces span:nth-child(2){font-size:8px;padding:6px;top:11%}.hero-scene .hero-browser{animation-duration:16s}.hero-scene .rear-panel,.hero-scene .floating-label{animation:none}.motion-toggle{font-size:11px;bottom:9px;right:9px;padding:8px 10px}.contact-layout>div:first-child:after{display:none}}
@media(prefers-reduced-motion:reduce){.motion-target{opacity:1;translate:none}.hero-browser{translate:none!important}.reading-progress{display:none}}
