:root{font-family:DM Sans,sans-serif;color:#171a1b;background:#f7f7f4;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}button,input,textarea{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}img{display:block;max-width:100%}::selection{background:#d7ed87;color:#171a1b}.container{width:min(100% - 80px,1320px);margin-inline:auto}.skip-link{position:absolute;left:-999px;top:8px;z-index:100;background:#17211b;color:#fff;padding:12px}.skip-link:focus{left:8px}.site-header{height:88px;border-bottom:1px solid #e6e7e1;background:#f7f7f4;position:relative;z-index:20}.header-inner{height:100%;display:flex;justify-content:space-between;align-items:center}.brand{display:inline-flex;align-items:center;gap:11px;font:800 22px/1 Manrope,sans-serif;letter-spacing:-1.4px;white-space:nowrap}.brand-dot{color:#91b33e}.brand-mark{width:27px;height:27px;display:grid;place-items:center;background:#181e1c;border-radius:8px;transform:rotate(-8deg)}.brand-mark span{width:12px;height:12px;border:3px solid #d4ef81;border-radius:3px;transform:rotate(8deg)}.nav{display:flex;align-items:center;gap:38px;font-size:13px;font-weight:700}.nav>a:not(.nav-contact){transition:color .2s}.nav>a:not(.nav-contact):hover{color:#729524}.nav-contact{padding:12px 17px;border:1px solid #222b24;border-radius:7px;display:inline-flex;align-items:center;gap:14px;transition:background .2s,color .2s}.nav-contact:hover{background:#222b24;color:#fff}.menu-toggle{display:none;border:0;background:none}.hero{padding-top:105px}.hero-topline,.eyebrow,.hero-rule,.project-kicker,.visual-label{font-size:11px;letter-spacing:1.7px;font-weight:800}.hero-topline{display:flex;align-items:center;gap:14px;color:#677169}.status-dot,.project-live span{width:8px;height:8px;border-radius:50%;background:#9ec34f;display:inline-block;box-shadow:0 0 0 4px #e4edcb}.topline-divider{width:28px;height:1px;background:#a8ada6}.hero h1{font:800 clamp(65px,8.2vw,122px)/1.03 "Manrope",sans-serif;letter-spacing:-.085em;margin:37px 0 47px;max-width:1160px}.hero h1 em,.approach-section h2 em,.contact-section h2 em{font-style:normal;color:#90aa58}.hero-period,.heading-period{color:#a4ca58}.hero-bottom{display:flex;align-items:end;justify-content:space-between;gap:30px}.hero-bottom p{font-size:18px;line-height:1.6;color:#5f6863;max-width:600px;margin:0}.round-link{width:72px;height:72px;border:1px solid #273127;border-radius:50%;display:grid;place-items:center;flex:none;transition:background .2s,color .2s}.round-link:hover{background:#212a22;color:#fff}.hero-rule{border-top:1px solid #d5d8d1;margin-top:99px;padding:21px 0 28px;display:flex;justify-content:space-between;color:#788079}.project-live.project-private{color:#818a92}.project-live.project-private span{background:#9ca6ac}.project-cta{margin-top:24px}.trust-section{padding:45px 0 105px;background:#f7f7f4}.trust-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}.trust-heading .eyebrow{margin-bottom:16px}.trust-heading h2{font:800 clamp(30px,3.3vw,46px)/1.15 "Manrope",sans-serif;letter-spacing:-.06em;max-width:780px;margin:0}.trust-heading p:last-child{color:#69736b;font-size:15px;margin:13px 0 0}.trust-heading>a{display:inline-flex;align-items:center;gap:12px;font-size:13px;font-weight:800;border-bottom:1px solid #202720;padding-bottom:8px;white-space:nowrap}.trust-grid{display:flex;flex-wrap:wrap;gap:14px}.trust-card{flex:1 1 calc(25% - 14px);min-width:220px;background:#fff;border:1px solid #e1e5dd;border-radius:11px;overflow:hidden;transition:transform .2s,border-color .2s,box-shadow .2s}.trust-card:hover{transform:translateY(-3px);border-color:#b9c9a7;box-shadow:0 12px 30px #24392b0d}.trust-card:focus-visible{outline:3px solid #7fa83c;outline-offset:3px}.trust-logo{height:132px;display:flex;align-items:center;justify-content:center;padding:18px 28px;background:#fafbf9}.trust-logo img{width:100%;height:100%;object-fit:contain}.trust-logo-dark{background:#050505;padding:16px 38px}.trust-logo-sand{background:#f6eee6}.trust-logo-water{background:#edf7fb;padding:28px}.trust-logo-clinic{background:#fbf8f9}.trust-logo-clinic img{max-width:175px}.trust-logo-connessia{background:#fff}.trust-logo-connessia img{object-fit:cover;object-position:center}.trust-logo-camper{background:#eff6e9}.trust-logo-camper img{max-width:105px}.trust-logo-navy{background:#0d2538;padding:24px 28px}.trust-name{min-height:52px;padding:15px 17px;display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid #e9ece6;font-size:13px;font-weight:800}.trust-name svg{flex:none;color:#768778}.projects-section{padding:105px 0 115px;background:#eeefea}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:45px}.eyebrow{color:#79866a;margin:0 0 23px}.section-heading h2,.about-grid h2{font:800 clamp(40px,5vw,67px)/1.1 "Manrope",sans-serif;letter-spacing:-.065em;margin:0}.section-heading>p{color:#6d746e;max-width:280px;line-height:1.55;margin:0 0 5px}.project-list{display:grid;gap:22px}.project-card{min-height:520px;background:#fff;border:1px solid #dfe2dc;border-radius:13px;overflow:hidden;display:grid;grid-template-columns:43% 57%}.project-copy{padding:38px 43px 35px;display:flex;flex-direction:column;justify-content:space-between}.project-kicker{display:flex;justify-content:space-between;align-items:center;gap:12px;color:#7c867c;letter-spacing:1px}.project-live{color:#71844e;white-space:nowrap;font-size:10px}.project-live span{width:6px;height:6px;box-shadow:none;margin-right:5px}.project-main h3{font:800 clamp(44px,5vw,70px)/1 "Manrope",sans-serif;letter-spacing:-.075em;margin:25px 0}.project-description{font-size:19px;line-height:1.45;max-width:470px;margin:0 0 18px;font-weight:600}.project-details{font-size:14px;line-height:1.7;color:#757c75;max-width:440px;margin:0 0 24px}.tag-list{display:flex;flex-wrap:wrap;gap:7px}.tag-list span{padding:8px 11px;border:1px solid #e1e5dd;border-radius:5px;font-size:11px;color:#687168;font-weight:700}.project-cta{display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:800;border-bottom:1px solid currentColor;padding-bottom:8px;width:max-content;transition:gap .2s}.project-cta:hover{gap:17px}.project-visual{position:relative;overflow:hidden;display:grid;place-items:center;padding:64px 30px}.project-blue .project-visual{background:#dce7e5}.project-violet .project-visual{background:#dfdce9}.visual-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(#ffffff60 1px,transparent 1px),linear-gradient(90deg,#ffffff60 1px,transparent 1px);background-size:38px 38px;-webkit-mask-image:linear-gradient(90deg,transparent,#000);mask-image:linear-gradient(90deg,transparent,#000)}.project-image-frame{width:min(100%,680px);aspect-ratio:1.53;box-shadow:0 30px 70px #1c333733;border-radius:8px;overflow:hidden;position:relative;z-index:1;transform:rotate(-2deg);transition:transform .35s}.project-violet .project-image-frame{transform:rotate(2deg)}.project-card:hover .project-image-frame{transform:rotate(0) translateY(-5px)}.project-image-frame img{width:100%;height:100%;object-fit:cover}.visual-label{position:absolute;bottom:25px;right:28px;color:#64736c}.projects-note{text-align:center;color:#878f86;font-size:13px;margin:30px 0 0}.project-ink .project-visual{background:#d9e1ea}.project-ink .project-image-frame{width:min(88%,620px);margin-right:8%;transform:rotate(-2deg)}.project-ink:hover .project-image-frame{transform:rotate(0) translateY(-5px)}.project-mobile-frame{position:absolute;z-index:2;width:19%;max-width:140px;aspect-ratio:390/844;right:6%;bottom:13%;border:5px solid #151d21;border-radius:15px;overflow:hidden;box-shadow:0 20px 40px #10212c55}.project-mobile-frame img{width:100%;height:100%;object-fit:cover}.project-ink .visual-label{color:#4d6072}.project-sand .project-visual{background:#e9e1d6}.project-sand .project-image-frame{width:min(88%,620px);margin-right:8%;transform:rotate(-2deg)}.project-sand:hover .project-image-frame{transform:rotate(0) translateY(-5px)}.project-sand .project-mobile-frame{border-color:#493d35;box-shadow:0 20px 40px #493d3555}.project-sand .visual-label{color:#766a60}.project-green .project-visual{background:radial-gradient(circle at 50% 45%,#dceccf,#cadfcd)}.app-screen-gallery{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:20px;width:100%;height:100%}.app-screen-gallery img{height:min(78%,400px);width:auto;max-width:29%;object-fit:contain;border-radius:18px;box-shadow:0 22px 42px #173b3055;transition:transform .3s}.app-screen-gallery img:first-child{transform:rotate(-8deg) translateY(12px)}.app-screen-gallery img:last-child{transform:rotate(8deg) translateY(12px)}.project-green:hover .app-screen-gallery img{transform:rotate(0) translateY(-4px)}.project-green .visual-label{color:#526f5e}.project-rose .project-visual{background:#eee4e7}.project-sky .project-visual{background:#dbe6f2}.project-rose .project-image-frame,.project-sky .project-image-frame{width:min(88%,620px);margin-right:8%;transform:rotate(-2deg)}.project-rose:hover .project-image-frame,.project-sky:hover .project-image-frame{transform:rotate(0) translateY(-5px)}.project-rose .project-mobile-frame{border-color:#57474d}.project-sky .project-mobile-frame{border-color:#243c59}.project-rose .visual-label{color:#806973}.project-sky .visual-label{color:#556f8c}#connessia .project-visual{background:radial-gradient(circle at 50% 45%,#eaf3ff 0,#dbe6f2 65%,#c9d9eb)}#connessia .project-image-frame{width:220px;height:442px;aspect-ratio:1080/2172;margin:0;border:7px solid #1e3552;border-radius:26px;transform:rotate(-5deg);box-shadow:0 30px 55px #1c3a5a55}#connessia:hover .project-image-frame{transform:rotate(0) translateY(-5px)}#connessia .project-image-frame img{object-fit:contain;background:#fff}.approach-section{padding:145px 0;background:#19221e;color:#f4f6ee}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%}.approach-section h2,.contact-section h2{font:800 clamp(41px,5vw,70px)/1.13 "Manrope",sans-serif;letter-spacing:-.065em;margin:0}.approach-copy>p{font-size:20px;line-height:1.6;color:#bdc7bb;margin:0 0 45px}.principle{border-top:1px solid #465249;padding:21px 0;display:grid;grid-template-columns:35px 1fr 18px;gap:14px;align-items:start}.principle>span{font-size:12px;color:#adc77e}.principle h3{font-size:16px;margin:0 0 7px}.principle p{font-size:13px;line-height:1.6;color:#aeb9ac;margin:0}.principle svg{color:#a9c77b}.about-section{padding:125px 0;background:#f7f7f4}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}.about-grid p:not(.eyebrow){font-size:21px;color:#586159;line-height:1.65;margin:5px 0 30px}.about-grid a{display:inline-flex;align-items:center;gap:9px;border-bottom:1px solid #202720;padding-bottom:7px;font-size:13px;font-weight:800}.contact-section{background:#dce8bd;padding:120px 0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%}.contact-section .eyebrow{color:#536545}.contact-section h2 em{color:#6f8d39}.contact-grid>div>p:last-child{max-width:390px;color:#53624d;font-size:17px;line-height:1.6;margin-top:25px}.contact-form{padding-top:8px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form label{display:block;font-size:12px;font-weight:800;margin-bottom:22px}.contact-form input,.contact-form textarea{display:block;width:100%;margin-top:10px;border:1px solid #aebb9c;border-radius:5px;background:#f5f8ef;padding:15px;color:#19221e;outline:none;resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-color:#314b2e;box-shadow:0 0 0 2px #314b2e22}.contact-form button{border:0;border-radius:5px;background:#1a241c;color:#fff;padding:16px 22px;display:inline-flex;align-items:center;gap:45px;font-weight:800;font-size:13px}.contact-form button:hover{background:#354534}.contact-form button:disabled{opacity:.65}.form-feedback{font-size:13px;min-height:22px;margin:15px 0 0}.site-footer{background:#18211d;color:#e7eee5;padding:35px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}.site-footer .brand{font-size:19px}.site-footer .brand-mark{background:#304135}.footer-inner>span,.footer-inner>a:last-child{font-size:12px;color:#a9b6a8}@media(max-width:900px){.container{width:min(100% - 44px,1320px)}.nav{gap:18px}.project-card{grid-template-columns:1fr}.project-copy{min-height:430px}.project-visual{min-height:400px}.approach-grid,.about-grid,.contact-grid{gap:50px}.hero{padding-top:80px}}@media(max-width:900px){.trust-card{flex-basis:calc(33.333% - 14px)}}@media(max-width:640px){.container{width:min(100% - 36px,1320px)}.site-header{height:70px}.brand{font-size:20px}.menu-toggle{display:block}.nav{display:none;position:absolute;left:0;right:0;top:69px;padding:25px 18px;background:#f7f7f4;border-bottom:1px solid #e6e7e1;box-shadow:0 12px 25px #0001;flex-direction:column;align-items:stretch;gap:22px}.nav-open{display:flex}.nav-contact{justify-content:space-between}.hero{padding-top:76px}.hero h1{font-size:clamp(51px,11vw,76px);margin:28px 0 35px}.hero-bottom p{font-size:16px}.round-link{width:52px;height:52px}.hero-rule{margin-top:78px;font-size:9px}.projects-section{padding:78px 0}.section-heading{display:block}.section-heading>p{margin-top:20px}.project-copy{padding:25px;min-height:440px}.project-main h3{font-size:52px}.project-description{font-size:18px}.project-visual{min-height:300px;padding:45px 22px}.approach-section,.about-section,.contact-section{padding:80px 0}.approach-grid,.about-grid,.contact-grid{grid-template-columns:1fr;gap:36px}.form-row{grid-template-columns:1fr;gap:0}.footer-inner{flex-direction:column;align-items:flex-start}.visual-label{font-size:9px}}@media(max-width:640px){.trust-section{padding:30px 0 76px}.trust-heading{display:block}.trust-heading h2{font-size:33px}.trust-heading>a{margin-top:22px}.trust-grid{gap:10px}.trust-card{flex:1 1 calc(50% - 10px);min-width:145px}.trust-logo{height:105px;padding:14px}.trust-logo-dark{padding:14px 23px}.trust-logo-water{padding:20px}.trust-logo-camper img{max-width:80px}.trust-name{min-height:58px;padding:10px 11px;font-size:11px}.trust-name svg{width:13px}}@media(max-width:640px){#connessia .project-visual{min-height:410px}#connessia .project-image-frame{width:175px;height:352px;border-width:6px;border-radius:22px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
