:root{--ink:#252824;--muted:#777d76;--paper:#f8f8f5;--white:#fff;--accent:#b4d84a;--accent-dark:#92b72b;--line:#e5e7e0;--serif:'Manrope',sans-serif;--sans:'DM Sans',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:86px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.wrap{width:min(1160px,calc(100% - 48px));margin-inline:auto}.section-pad{padding:112px 0}.skip-link{position:absolute;left:-999px;top:12px;background:#fff;padding:12px;z-index:999}.skip-link:focus{left:12px}.site-header{height:78px;position:sticky;top:0;z-index:50;background:rgba(248,248,245,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(37,40,36,.07)}.nav{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;font-family:var(--serif);font-size:16px;font-weight:600;letter-spacing:-.5px}.brand b{font-weight:800}.brand-mark{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--accent);font-weight:800;font-size:18px;letter-spacing:-2px}.nav-links{display:flex;gap:36px;align-items:center;font-size:13px;font-weight:600}.nav-links>a:not(.nav-cta){color:#656a63;transition:color .2s}.nav-links>a:not(.nav-cta):hover{color:var(--ink)}.nav-cta{border:1px solid var(--ink);padding:11px 16px;border-radius:40px;font-size:12px}.nav-cta span{margin-left:9px}.menu-toggle{display:none}.hero{padding-top:70px;padding-bottom:84px;overflow:hidden}.hero-grid{position:relative;display:grid;grid-template-columns:1fr .94fr;gap:50px;align-items:center;min-height:490px}.hero-copy{padding:14px 0 22px;position:relative;z-index:2}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:700;color:var(--muted);line-height:1.6;margin:0 0 24px;display:flex;align-items:center;gap:10px}.eyebrow-line{width:22px;height:1px;background:var(--accent-dark)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);letter-spacing:-.065em;font-weight:600}h1{font-size:clamp(54px,7.2vw,92px);line-height:.99;max-width:620px;margin:0 0 24px} .accent-text{position:relative;white-space:nowrap}h1 .accent-text:after{content:'';position:absolute;z-index:-1;left:0;right:-4px;bottom:.03em;height:.28em;background:var(--accent);transform:rotate(-2deg)}.hero-lede{max-width:420px;font-size:16px;line-height:1.65;color:#70766e;margin:0 0 29px}.hero-actions{display:flex;align-items:center;gap:26px}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;border:0;border-radius:3px;padding:15px 19px;font-weight:600;font-size:12px;transition:transform .2s,background .2s;cursor:pointer}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--ink);color:white}.button-dark:hover{background:#40443d}.text-link{font-size:12px;font-weight:600}.text-link span{padding-left:8px}.hero-note{font-size:11px;color:#8c918a;display:flex;align-items:center;gap:9px;margin-top:55px}.note-dot{width:6px;height:6px;border-radius:50%;background:var(--accent-dark)}.hero-visual{height:465px;position:relative;margin-right:15px}.hero-visual>img{width:100%;height:100%;display:block;object-fit:cover;border-radius:3px 90px 3px 3px;filter:saturate(.75)}.hero-visual:after{content:'';position:absolute;inset:0;border-radius:3px 90px 3px 3px;background:linear-gradient(135deg,rgba(25,34,24,.02),rgba(25,34,24,.18));pointer-events:none}.image-sticker{position:absolute;z-index:2;left:-43px;bottom:45px;width:105px;height:105px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;gap:5px;font-size:9px;line-height:1.25;letter-spacing:.8px;font-weight:600;transform:rotate(-12deg)}.sticker-star{font-size:27px}.visual-caption{position:absolute;z-index:2;bottom:17px;right:20px;left:20px;display:flex;justify-content:space-between;color:#fff;font-size:10px;letter-spacing:.3px}.hero-scroll{position:absolute;bottom:-45px;right:0;font-size:9px;letter-spacing:1.6px;color:#92978f}.hero-scroll span{font-size:14px;margin-left:12px;color:var(--ink)}.intro{background:#eeefe9;padding:73px 0}.intro-grid{display:grid;grid-template-columns:1fr 2.7fr .4fr;align-items:start;gap:35px}.intro .eyebrow{margin-top:8px}.intro-statement{font-family:var(--serif);font-size:clamp(22px,3.1vw,37px);font-weight:500;line-height:1.42;letter-spacing:-1.5px;margin:0;max-width:790px}.intro-statement span{color:#969c91}.intro-spark{font-size:37px;color:var(--accent-dark);justify-self:end}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:48px}.section-heading h2,.contact h2{font-size:clamp(44px,6vw,72px);line-height:1.05;margin:0}.section-aside{max-width:280px;color:#777d76;font-size:13px;line-height:1.7;margin:0 0 4px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.service-card{position:relative;min-height:277px;background:#fff;border:1px solid #eceee8;padding:27px 26px 35px;border-radius:3px;transition:transform .25s,box-shadow .25s}.service-card:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(37,40,36,.06)}.service-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:35px}.service-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center}.service-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.icon-web{background:#f1f5e9;color:#8aa734}.icon-video{background:#f3eff2;color:#a37893}.icon-publish{background:#edf2f4;color:#718f9b}.card-number{font-size:10px;color:#a4aaa1}.service-card h3{font-family:var(--serif);letter-spacing:-.6px;font-size:19px;margin:0 0 11px}.service-card p{font-size:12px;color:#7b8079;line-height:1.7;max-width:290px;margin:0}.card-arrow{position:absolute;right:25px;bottom:23px;font-size:16px}.projects{background:#eeefe9}.projects-heading{margin-bottom:38px}.filter-row{display:flex;align-items:center;gap:9px;margin-bottom:25px}.filter-row>span{font-size:10px;color:#92978f;margin-right:7px}.filter-button{background:transparent;color:#70766e;border:1px solid transparent;border-radius:30px;padding:8px 14px;font-size:10px;cursor:pointer;transition:all .2s}.filter-button:hover,.filter-button.active{background:var(--ink);color:#fff}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.project-card{background:#fff;border-radius:3px;overflow:hidden;cursor:pointer;transition:transform .25s,box-shadow .25s;animation:cardIn .35s both}.project-card:hover{transform:translateY(-4px);box-shadow:0 14px 35px rgba(37,40,36,.1)}.project-image{height:220px;position:relative;overflow:hidden;background:#dde2d8}.project-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}.project-card:hover .project-image img{transform:scale(1.04)}.category-pill{position:absolute;top:14px;left:14px;background:rgba(255,255,255,.92);border-radius:30px;padding:7px 11px;font-size:9px;font-weight:600}.project-info{padding:17px 18px 20px}.project-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.project-meta h3{font-family:var(--serif);font-size:16px;letter-spacing:-.4px;margin:0}.project-meta span:last-child{font-size:13px;color:#92978f}.project-info p{font-size:11px;color:#7b8079;line-height:1.65;margin:0;max-width:320px}.empty-projects{grid-column:1/-1;color:#777d76;padding:32px 0}.contact{background:#f7f7f3}.contact-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:100px;align-items:start}.contact-copy{position:relative;padding-top:6px}.contact-copy h2{margin-bottom:21px}.contact-copy>p:not(.eyebrow){font-size:14px;color:#777d76;max-width:330px;line-height:1.7}.contact-email{margin-top:52px;display:flex;flex-direction:column;gap:10px}.contact-email>span,.footer-contact>span,.footer-social>span{font-size:9px;letter-spacing:1.4px;color:#969b93;font-weight:600}.contact-email a{font-family:var(--serif);font-weight:600;font-size:15px}.contact-decoration{font-size:120px;line-height:1;color:var(--accent);margin:37px 0 0 30px}.contact-form{padding:32px;background:#fff;border:1px solid #eceee8;border-radius:3px}.form-heading{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:26px}.form-heading h3{font-family:var(--serif);font-size:21px;letter-spacing:-.8px;margin:0}.form-heading p{font-size:10px;color:#8c918a;margin:0}.form-heading p span,.field label>span:not(.optional){color:#9bb83e}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{margin-bottom:17px}.field label{display:block;font-size:10px;font-weight:600;margin:0 0 8px}.field label .optional{font-weight:400;color:#a1a69e}.field input,.field select,.field textarea{width:100%;border:1px solid #e4e7df;border-radius:2px;background:#fcfcfa;color:var(--ink);padding:12px;font-size:11px;outline:none;transition:border .2s}.field input:focus,.field select:focus,.field textarea:focus{border-color:#9dbd37;box-shadow:0 0 0 2px rgba(180,216,74,.16)}.field input::placeholder,.field textarea::placeholder{color:#afb4ac}.field textarea{resize:vertical;min-height:100px}.field select:invalid{color:#afb4ac}.field-error{display:block;font-size:10px;color:#b34343;margin-top:5px;min-height:0}.field.invalid input,.field.invalid select,.field.invalid textarea{border-color:#bf6a6a}.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.form-status{min-height:0;margin:0;font-size:12px;line-height:1.5}.form-status:not(:empty){margin:0 0 12px;padding:10px 12px;background:#f0f5e5;color:#526c18}.form-status.error{background:#fbefed;color:#a13c36}.submit-button{width:100%;justify-content:space-between;margin-top:5px}.submit-button[disabled]{opacity:.7;cursor:wait}.submit-button.is-loading .submit-label:after{content:' …';animation:loading 1s infinite}.form-privacy{color:#a0a59d;font-size:9px;text-align:center;margin:13px 0 0}.footer{background:#242824;color:#f4f4ef;padding:48px 0 19px}.footer-main{display:grid;grid-template-columns:1.3fr 1fr 1fr;padding-bottom:43px}.footer-brand{font-size:15px}.footer-main>div:first-child>p{font-size:11px;color:#a4aaa2;margin:17px 0 0}.footer-contact,.footer-social{display:flex;flex-direction:column;gap:12px}.footer-contact a{font-size:12px}.footer-social>div{display:flex;gap:16px}.footer-social>div a{font-size:11px;color:#d1d4cc}.footer-bottom{border-top:1px solid #41453f;padding-top:15px;display:flex;justify-content:space-between;color:#8f958d;font-size:9px}.footer-bottom a{color:#d8dbd4}.project-modal{padding:0;border:0;border-radius:4px;width:min(720px,calc(100% - 32px));max-height:min(90vh,850px);box-shadow:0 25px 100px #1116;color:var(--ink)}.project-modal::backdrop{background:rgba(19,22,19,.62);backdrop-filter:blur(3px)}.modal-close{position:absolute;right:15px;top:13px;z-index:2;border:0;border-radius:50%;width:36px;height:36px;background:#fff;font-size:24px;line-height:1;cursor:pointer}.modal-media{height:min(48vh,370px);background:#e2e5dc}.modal-media img,.modal-media video{width:100%;height:100%;object-fit:cover}.modal-content{padding:27px 32px 32px}.modal-content .eyebrow{margin-bottom:12px}.modal-content h2{font-size:30px;margin:0 0 12px}.modal-content>p:not(.eyebrow){font-size:14px;line-height:1.7;color:#71776f;max-width:570px}.modal-link{margin-top:5px}.reveal{opacity:0;transform:translateY(16px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:translateY(0)}@keyframes cardIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes loading{50%{opacity:.25}}
@media(max-width:900px){.section-pad{padding:88px 0}.hero-grid{gap:28px;min-height:430px}.hero-visual{height:400px}.contact-grid{gap:48px}.project-image{height:185px}.service-card{padding:22px 20px 35px}.intro-grid{grid-template-columns:.8fr 2.7fr .2fr;gap:20px}}
@media(max-width:700px){.wrap{width:min(100% - 38px,540px)}.site-header{height:68px}.menu-toggle{display:flex;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:transparent;align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer}.menu-toggle span{width:15px;height:1px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3px) rotate(-45deg)}.nav-links{display:none;position:absolute;left:0;right:0;top:67px;background:var(--paper);padding:17px 22px 24px;border-bottom:1px solid var(--line);box-shadow:0 15px 20px #2528240b;flex-direction:column;align-items:stretch;gap:0}.nav-links.open{display:flex}.nav-links>a:not(.nav-cta){padding:13px 0;border-bottom:1px solid var(--line)}.nav-cta{margin-top:15px;text-align:center}.hero{padding-top:57px;padding-bottom:75px}.hero-grid{grid-template-columns:1fr;gap:34px;min-height:0}.hero-copy{padding:0}.eyebrow{font-size:9px;margin-bottom:20px}.hero h1{font-size:clamp(54px,15vw,78px);max-width:520px}.hero-lede{font-size:14px;max-width:370px}.hero-note{margin-top:32px}.hero-visual{height:340px;margin:0 0 0 18px}.image-sticker{left:-20px;width:83px;height:83px;font-size:7px}.sticker-star{font-size:21px}.hero-scroll{bottom:-39px}.intro{padding:57px 0}.intro-grid{grid-template-columns:1fr auto;gap:16px}.intro-grid .eyebrow{grid-column:1/-1;margin:0}.intro-statement{grid-column:1;grid-row:2;font-size:26px}.intro-spark{grid-column:2;grid-row:2;font-size:25px}.section-pad{padding:75px 0}.section-heading{display:block;margin-bottom:32px}.section-heading h2,.contact h2{font-size:53px}.section-aside{margin-top:17px;font-size:12px;max-width:360px}.service-grid{grid-template-columns:1fr;gap:12px}.service-card{min-height:225px;padding:22px}.service-top{margin-bottom:25px}.service-card p{max-width:380px}.projects-heading{margin-bottom:26px}.filter-row{gap:4px;overflow-x:auto;padding-bottom:5px;white-space:nowrap}.filter-row>span{flex-shrink:0;margin-right:3px}.filter-button{padding:8px 11px;flex-shrink:0}.project-grid{grid-template-columns:1fr;gap:14px}.project-image{height:230px}.project-info{padding:17px 18px 21px}.contact-grid{grid-template-columns:1fr;gap:32px}.contact-copy>p:not(.eyebrow){max-width:420px}.contact-email{margin-top:30px}.contact-decoration{display:none}.contact-form{padding:23px 18px}.form-heading{align-items:flex-start;flex-direction:column;gap:6px}.field-row{grid-template-columns:1fr;gap:0}.footer-main{grid-template-columns:1fr 1fr;gap:30px 18px;padding-bottom:33px}.footer-main>div:first-child{grid-column:1/-1}.footer-social>div{flex-direction:column;gap:10px}.footer-bottom{gap:10px;flex-wrap:wrap}.footer-bottom span:last-child{display:none}.modal-content{padding:23px 20px 25px}.modal-content h2{font-size:26px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}

/* Visual refresh: ink, violet and blue with quiet editorial details. */
:root{--ink:#101014;--muted:#777783;--paper:#faf9fc;--accent:#8b5cf6;--accent-dark:#6d3ee8;--line:#e8e5ef;--blue:#4d8dff;--violet:#9a6bff}
.site-header{background:rgba(250,249,252,.9);border-bottom-color:rgba(16,16,20,.07)}
.brand-mark{border-radius:11px;background:linear-gradient(145deg,var(--violet),var(--blue));color:white;box-shadow:0 5px 16px #7046dd35}
.nav-links>a:not(.nav-cta){color:#72717b}.nav-links>a:not(.nav-cta):hover{color:var(--accent-dark)}
.nav-cta{border-color:#d7cee9;transition:all .2s}.nav-cta:hover{background:var(--ink);border-color:var(--ink);color:#fff}
.eyebrow-line{background:linear-gradient(90deg,var(--violet),var(--blue))}
.accent-text{color:var(--accent-dark)}
h1 .accent-text:after{height:.16em;background:linear-gradient(90deg,#9b70ff,#5e9cff);opacity:.42}
.text-link span,.hero-scroll span{color:var(--accent-dark)}
.note-dot{background:var(--blue);box-shadow:0 0 0 4px #4d8dff1c}
.button{border-radius:4px;transition:transform .2s,background .2s,box-shadow .2s}
.button-dark{background:#111116;box-shadow:0 7px 18px #15131f1a}.button-dark:hover{background:linear-gradient(110deg,#24202d,#33244f);box-shadow:0 10px 25px #6d3ee833}
.hero-visual>img{border-radius:4px 90px 4px 4px}
.hero-visual:before{content:'';position:absolute;z-index:1;inset:-10px -10px 10px 10px;border:1px solid #8b5cf64d;border-radius:4px 90px 4px 4px;pointer-events:none}
.hero-visual:after{background:linear-gradient(140deg,rgba(34,16,66,.04),rgba(24,29,60,.22));border-radius:4px 90px 4px 4px}
.image-sticker{background:linear-gradient(135deg,#a37bff,#4d8dff);color:#fff;box-shadow:0 10px 28px #6240a64d}
.intro,.projects{background:#f0edf6}
.intro-statement span{color:#898394}.intro-spark{color:var(--accent-dark)}
.section-aside{color:#777783}
.service-card{border-color:#eceaf0;border-radius:4px;transition:transform .25s,box-shadow .25s,border-color .25s}
.service-card:hover{border-color:#d5c5f5;box-shadow:0 18px 40px rgba(45,31,71,.08)}
.service-icon{border-radius:14px}.icon-web{background:#f0eaff;color:#8252e8}.icon-video{background:#eaf1ff;color:#4c7fe0}.icon-publish{background:#f4edff;color:#9662e8}
.service-card p,.project-info p{color:#7b7a85}.card-arrow,.project-meta span:last-child{color:var(--accent-dark)}
.filter-button:hover{border-color:#cfc1e8;color:var(--accent-dark)}.filter-button.active{background:#17151c;color:#fff}
.project-card{border-radius:4px}.project-card:hover{box-shadow:0 14px 35px rgba(37,30,52,.12)}.project-image{background:#e4e0ed}
.contact{background:#faf9fc}.contact-copy>p:not(.eyebrow){color:#777783}
.contact-decoration{background:linear-gradient(140deg,#9b70ff,#4d8dff);background-clip:text;color:transparent}
.contact-form{border-color:#eceaf0;border-radius:4px;box-shadow:0 15px 50px #21173508}
.field input,.field select,.field textarea{border-color:#e7e4ec;border-radius:3px;background:#fcfbfd}
.field input:focus,.field select:focus,.field textarea:focus{border-color:#8b5cf6;box-shadow:0 0 0 3px rgba(139,92,246,.12)}
.form-status:not(:empty){background:#f0eaff;color:#5533a0}
.footer{background:#111115;color:#f4f3f7;position:relative}.footer:before{content:'';display:block;height:2px;position:absolute;top:0;left:0;right:0;background:linear-gradient(90deg,#8b5cf6,#4d8dff,#8b5cf6)}
.footer-main>div:first-child>p{color:#a4a3ae}.footer-social>div a{color:#d1d0d9}.footer-social>div a:hover,.footer-contact a:hover{color:#ae8cff}
.footer-bottom{border-top-color:#38373e;color:#8f8e99}.footer-bottom a{color:#d8d7df}
.project-modal{border-radius:6px}.project-modal::backdrop{background:rgba(13,12,17,.68);backdrop-filter:blur(5px)}
@media(max-width:700px){.nav-links{background:var(--paper)}}

/* Atmosphere and stronger editorial type: textured canvas, soft color washes, selective bold italics. */
body{background-color:#f6f4fa;background-image:radial-gradient(ellipse at 8% 8%,rgba(160,125,255,.13),transparent 32%),radial-gradient(ellipse at 91% 24%,rgba(82,143,255,.10),transparent 30%),radial-gradient(ellipse at 10% 74%,rgba(155,119,240,.08),transparent 27%);background-attachment:fixed}
body:after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.19;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' 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' filter='url(%23n)' opacity='.13'/%3E%3C/svg%3E")}
.site-header{background:rgba(248,246,252,.82)}
.hero{position:relative;background:linear-gradient(112deg,rgba(255,255,255,.54),rgba(249,247,255,.16) 52%,rgba(231,237,255,.28))}
.hero:before{content:"";position:absolute;width:390px;height:390px;right:-190px;top:-120px;border:1px solid rgba(119,83,209,.12);border-radius:50%;box-shadow:0 0 0 32px rgba(119,83,209,.025),0 0 0 68px rgba(119,83,209,.02);pointer-events:none}
h1,h2{font-weight:700;letter-spacing:-.075em}
h1{font-weight:800}
h1 .accent-text,h2 .accent-text{font-style:italic;font-weight:800;letter-spacing:-.085em}
.intro{background:linear-gradient(115deg,rgba(235,229,247,.92),rgba(238,240,250,.91));position:relative;overflow:hidden}
.intro:after{content:"✳";position:absolute;right:7%;top:50%;transform:translateY(-50%) rotate(13deg);font-size:clamp(110px,18vw,240px);line-height:1;color:rgba(117,81,205,.055);pointer-events:none}
.intro-grid{position:relative;z-index:1}
.services{position:relative;background:rgba(250,249,252,.66)}
.services:before{content:"";position:absolute;right:5%;top:12%;width:170px;height:170px;border-radius:50%;background:radial-gradient(circle,rgba(118,93,202,.10),transparent 70%);pointer-events:none}
.service-card{background:rgba(255,255,255,.77);backdrop-filter:blur(8px)}
.projects{background:linear-gradient(135deg,rgba(235,230,246,.96),rgba(233,237,250,.94));position:relative;overflow:hidden}
.projects:before{content:"";position:absolute;left:-180px;bottom:-250px;width:500px;height:500px;border:1px solid rgba(101,111,206,.15);border-radius:50%;box-shadow:0 0 0 38px rgba(101,111,206,.035),0 0 0 80px rgba(101,111,206,.025);pointer-events:none}
.projects>.wrap{position:relative;z-index:1}
.project-card{background:rgba(255,255,255,.9);box-shadow:0 6px 24px rgba(32,24,55,.035)}
.contact{background:linear-gradient(105deg,rgba(248,246,252,.82),rgba(241,242,250,.82));position:relative;overflow:hidden}
.contact:after{content:"";position:absolute;width:460px;height:460px;right:-240px;bottom:-240px;background:radial-gradient(circle,rgba(130,92,233,.12),rgba(81,143,255,.04) 48%,transparent 70%);pointer-events:none}
.contact-grid{position:relative;z-index:1}
.contact-copy h2{font-weight:800}
.contact-copy h2 .accent-text{font-style:italic}
.contact-form{background:rgba(255,255,255,.84);backdrop-filter:blur(12px);box-shadow:0 22px 70px rgba(46,34,77,.08)}
.footer{background:linear-gradient(120deg,#111116,#171426 65%,#111620)}
.footer:after{content:"";position:absolute;right:8%;top:20px;width:250px;height:250px;border-radius:50%;background:radial-gradient(circle,rgba(126,82,224,.15),transparent 68%);pointer-events:none}
.footer-main,.footer-bottom{position:relative;z-index:1}
@media(max-width:700px){body{background-attachment:scroll}.hero:before{right:-250px;top:-155px;width:340px;height:340px}.intro:after{right:-3%;font-size:145px}.projects:before{left:-260px}.contact:after{right:-300px}.footer:after{right:-60px}}

/* Dark vibrant art direction */
:root{--ink:#f5f2ff;--muted:#aaa3bd;--paper:#100d18;--line:#30283d;--accent:#a77bff;--accent-dark:#b28cff;--blue:#45b7ff;--violet:#ae72ff}
body{color:#f5f2ff;background-color:#100d18;background-image:radial-gradient(ellipse at 8% 7%,rgba(117,57,224,.25),transparent 34%),radial-gradient(ellipse at 88% 25%,rgba(27,105,203,.20),transparent 31%),radial-gradient(ellipse at 4% 77%,rgba(120,54,199,.18),transparent 30%),linear-gradient(135deg,#100d18,#14101e 52%,#0e111b);background-attachment:fixed}
body:after{opacity:.12}
.site-header{background:rgba(16,13,24,.82);border-bottom-color:rgba(201,180,255,.12)}
.brand,.nav-cta,.nav-links>a:not(.nav-cta){color:#f5f2ff}.brand-mark{box-shadow:0 0 22px rgba(156,101,255,.42)}
.nav-links>a:not(.nav-cta):hover{color:#a8dfff}.nav-cta{border-color:#5d4a7b}.nav-cta:hover{background:linear-gradient(110deg,#7846d7,#297ed3);border-color:transparent}
.hero{background:linear-gradient(115deg,rgba(23,17,35,.72),rgba(19,21,39,.38) 52%,rgba(22,28,49,.55))}
.hero:before{border-color:rgba(153,104,255,.24);box-shadow:0 0 0 32px rgba(119,83,209,.045),0 0 0 68px rgba(119,83,209,.035)}
.hero h1{color:#fff}.hero-lede,.hero-note,.section-aside{color:#b8b2c5}.eyebrow{color:#aaa3bd}
.accent-text{background:linear-gradient(95deg,#c093ff,#67c4ff);background-clip:text;color:transparent!important}
h1 .accent-text:after{background:linear-gradient(90deg,#9d5dff,#43b7ff);opacity:.28}
.button-dark{background:linear-gradient(105deg,#8448ec,#287fda);color:white;box-shadow:0 8px 26px rgba(125,69,233,.30)}.button-dark:hover{background:linear-gradient(105deg,#985fff,#3ca5fa);box-shadow:0 10px 30px rgba(73,141,255,.35)}
.text-link,.text-link span,.hero-scroll,.hero-scroll span{color:#ded6ef}
.hero-visual:before{border-color:rgba(164,114,255,.65);box-shadow:0 0 28px rgba(119,74,222,.14)}
.hero-visual:after{background:linear-gradient(140deg,rgba(43,18,80,.16),rgba(16,30,67,.43))}
.image-sticker{box-shadow:0 0 35px rgba(123,87,239,.38)}
.intro{background:linear-gradient(112deg,rgba(35,24,53,.96),rgba(26,31,55,.96));border-top:1px solid rgba(191,157,255,.11);border-bottom:1px solid rgba(191,157,255,.11)}
.intro-statement{color:#f1edfb}.intro-statement span{color:#b8b0c9}.intro:after{color:rgba(156,112,255,.09)}
.services{background:rgba(15,13,22,.46)}.services:before{background:radial-gradient(circle,rgba(118,93,202,.17),transparent 70%)}
.service-card{background:linear-gradient(145deg,rgba(35,29,47,.93),rgba(25,27,43,.93));border-color:rgba(198,176,242,.14);color:#f5f2ff;backdrop-filter:blur(10px);box-shadow:0 10px 40px rgba(3,2,8,.15)}
.service-card:hover{border-color:rgba(164,114,255,.55);box-shadow:0 18px 48px rgba(71,36,137,.22)}
.service-card h3{color:#fff}.service-card p{color:#b7b1c3}.card-number{color:#8f879f}
.icon-web{background:rgba(153,96,255,.16);color:#c19cff}.icon-video{background:rgba(67,156,255,.15);color:#82c6ff}.icon-publish{background:rgba(184,111,255,.15);color:#d29cff}
.projects{background:linear-gradient(132deg,rgba(28,21,43,.98),rgba(22,26,47,.98));border-top:1px solid rgba(173,141,232,.12);border-bottom:1px solid rgba(173,141,232,.12)}
.projects:before{border-color:rgba(101,144,255,.18);box-shadow:0 0 0 38px rgba(101,111,206,.045),0 0 0 80px rgba(101,111,206,.03)}
.filter-row>span{color:#aaa3bd}.filter-button{color:#c4bed0}.filter-button:hover{border-color:#9474d4;color:#fff}.filter-button.active{background:linear-gradient(105deg,#7846d7,#267bc9);color:#fff}
.project-card{background:linear-gradient(145deg,#252033,#202235);border:1px solid rgba(195,175,237,.13);box-shadow:0 9px 28px rgba(3,2,8,.25)}
.project-card:hover{border-color:rgba(94,171,255,.45);box-shadow:0 16px 40px rgba(23,80,157,.2)}
.project-image{background:#282337}.category-pill{background:rgba(18,16,27,.88);color:#eee8fc;border:1px solid rgba(203,184,255,.25)}
.project-meta h3{color:#faf8ff}.project-info p{color:#b6b0c2}.project-meta span:last-child{color:#77c5ff}
.contact{background:linear-gradient(115deg,rgba(17,14,26,.95),rgba(22,25,43,.96))}.contact:after{background:radial-gradient(circle,rgba(130,92,233,.2),rgba(81,143,255,.08) 48%,transparent 70%)}
.contact-copy>p:not(.eyebrow){color:#b9b3c5}.contact-email>span{color:#a69eb3}.contact-email a{color:#f5f2ff}.contact-decoration{filter:drop-shadow(0 0 20px rgba(123,99,235,.2))}
.contact-form{background:linear-gradient(145deg,rgba(35,29,48,.97),rgba(27,29,44,.98));border-color:rgba(198,176,242,.16);box-shadow:0 22px 70px rgba(0,0,0,.28);color:#f5f2ff}
.form-heading h3{color:#fff}.form-heading p{color:#aaa4b6}.field label{color:#ebe7f3}.field label .optional{color:#9e97aa}
.field input,.field select,.field textarea{background:#171521;border-color:#393347;color:#f5f2ff}.field input::placeholder,.field textarea::placeholder{color:#817b8e}.field select:invalid{color:#817b8e}
.field input:focus,.field select:focus,.field textarea:focus{border-color:#a275ff;box-shadow:0 0 0 3px rgba(139,92,246,.19)}
.form-privacy{color:#a19bad}.form-status:not(:empty){background:rgba(109,73,180,.22);color:#d9c7ff}.form-status.error{background:rgba(174,62,69,.22);color:#ffb9b9}
.footer{background:linear-gradient(120deg,#0c0b12,#151124 65%,#0b111a)}.footer:after{background:radial-gradient(circle,rgba(126,82,224,.23),transparent 68%)}
.footer-brand{color:#f8f5ff}.footer-main>div:first-child>p,.footer-social>div a{color:#b3adbd}.footer-contact>span,.footer-social>span{color:#9b94aa}.footer-bottom{border-top-color:#363043;color:#91899e}.footer-bottom a{color:#d5cde3}
.modal-content{background:#211c2d;color:#f8f5ff}.modal-content h2{color:#fff}.modal-content>p:not(.eyebrow){color:#c2bbce}.modal-media{background:#191622}.modal-close{color:#17131e}
.empty-projects{color:#c4bed0}
@media(max-width:700px){body{background-attachment:scroll}.nav-links{background:rgba(17,14,26,.98);border-bottom-color:#393047}.nav-links>a:not(.nav-cta){color:#f5f2ff;border-bottom-color:#393047}.contact-form{padding:23px 18px}}

/* Lighter colorway: retain violet-blue energy, move the canvas to luminous color. */
:root{--ink:#211b31;--muted:#6f687e;--paper:#f1edfb;--line:#ded7ee}
body{color:#211b31;background-color:#eeeafa;background-image:radial-gradient(ellipse at 7% 8%,rgba(178,137,255,.42),transparent 35%),radial-gradient(ellipse at 88% 20%,rgba(104,185,255,.36),transparent 34%),radial-gradient(ellipse at 12% 67%,rgba(245,171,219,.24),transparent 32%),radial-gradient(ellipse at 82% 82%,rgba(126,147,255,.23),transparent 35%),linear-gradient(135deg,#f6efff,#e9f1ff 52%,#f3eafa);background-attachment:fixed}
body:after{opacity:.12}
.site-header{background:rgba(247,244,253,.78);border-bottom-color:rgba(74,54,110,.12)}
.brand,.nav-cta,.nav-links>a:not(.nav-cta){color:#211b31}.nav-links>a:not(.nav-cta):hover{color:#7042cd}.nav-cta{border-color:#c8b9e3}.nav-cta:hover{color:#fff}
.hero{background:linear-gradient(115deg,rgba(250,247,255,.69),rgba(235,240,255,.46) 55%,rgba(247,232,251,.50))}
.hero:before{border-color:rgba(126,84,203,.2);box-shadow:0 0 0 32px rgba(119,83,209,.045),0 0 0 68px rgba(119,83,209,.03)}
.hero h1,.contact-copy h2{color:#211b31}.hero-lede,.hero-note,.section-aside{color:#655f73}.eyebrow{color:#716b7c}
.text-link,.hero-scroll,.hero-scroll span{color:#36294c}
.intro{background:linear-gradient(112deg,rgba(224,211,248,.9),rgba(218,228,251,.92));border-color:rgba(131,98,182,.13)}
.intro-statement{color:#2b243a}.intro-statement span{color:#716783}.intro:after{color:rgba(111,73,180,.08)}
.services{background:rgba(244,240,251,.47)}
.service-card{background:linear-gradient(145deg,rgba(255,255,255,.82),rgba(241,238,251,.82));border-color:rgba(111,87,153,.16);color:#211b31;box-shadow:0 10px 40px rgba(57,37,93,.07)}
.service-card:hover{border-color:rgba(125,81,211,.4);box-shadow:0 18px 48px rgba(92,63,155,.13)}
.service-card h3{color:#211b31}.service-card p{color:#696276}.card-number{color:#8c8499}
.projects{background:linear-gradient(132deg,rgba(224,216,245,.94),rgba(214,230,250,.95));border-color:rgba(120,104,177,.16)}
.projects:before{border-color:rgba(101,115,205,.16);box-shadow:0 0 0 38px rgba(101,111,206,.035),0 0 0 80px rgba(101,111,206,.025)}
.filter-row>span{color:#716b7c}.filter-button{color:#574f65}.filter-button:hover{color:#6034bd}.filter-button.active{background:linear-gradient(105deg,#7846d7,#267bc9);color:#fff}
.project-card{background:rgba(255,255,255,.78);border-color:rgba(111,87,153,.15);box-shadow:0 9px 28px rgba(57,37,93,.09)}
.project-card:hover{border-color:rgba(83,151,233,.42);box-shadow:0 16px 40px rgba(74,105,181,.16)}
.project-image{background:#ded8ed}.category-pill{background:rgba(255,255,255,.92);color:#433953;border-color:rgba(122,91,178,.17)}
.project-meta h3{color:#211b31}.project-info p{color:#696276}.project-meta span:last-child{color:#3478cb}
.contact{background:linear-gradient(115deg,rgba(247,243,252,.86),rgba(228,235,251,.86))}
.contact-copy>p:not(.eyebrow){color:#655f73}.contact-email>span{color:#837b91}.contact-email a{color:#211b31}
.contact-form{background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(242,239,251,.91));border-color:rgba(111,87,153,.17);box-shadow:0 22px 70px rgba(57,37,93,.1);color:#211b31}
.form-heading h3{color:#211b31}.form-heading p{color:#777083}.field label{color:#393047}.field label .optional{color:#898294}
.field input,.field select,.field textarea{background:rgba(255,255,255,.82);border-color:#d8d1e5;color:#211b31}.field input::placeholder,.field textarea::placeholder{color:#9992a3}.field select:invalid{color:#9992a3}
.field input:focus,.field select:focus,.field textarea:focus{border-color:#8b5cf6;box-shadow:0 0 0 3px rgba(139,92,246,.13)}
.form-privacy{color:#827b8f}.form-status:not(:empty){background:#e9e0fb;color:#5533a0}.form-status.error{background:#fae8eb;color:#a13c46}
.modal-content{background:#faf8ff;color:#211b31}.modal-content h2{color:#211b31}.modal-content>p:not(.eyebrow){color:#655f73}
.footer{background:linear-gradient(120deg,#262036,#31234a 65%,#1e2f4c)}
.footer:after{background:radial-gradient(circle,rgba(126,82,224,.25),transparent 68%)}
.footer-main>div:first-child>p,.footer-social>div a{color:#ded7eb}.footer-contact>span,.footer-social>span{color:#bbb0ce}.footer-bottom{border-top-color:#594d6b;color:#b1a8c0}.footer-bottom a{color:#f1eafa}
.field-hint{display:block;font-size:10px;color:#827b8f;margin-top:5px;line-height:1.4}
@media(max-width:700px){body{background-attachment:scroll}.nav-links{background:rgba(247,244,253,.98);border-bottom-color:#ded7ee}.nav-links>a:not(.nav-cta){color:#211b31;border-bottom-color:#ded7ee}}
