/* Navigation, motion and supporting content / v3 */
html{scroll-padding-top:110px}.site-header{position:sticky;top:0;z-index:100;background:var(--color-background);transition:box-shadow .25s}.site-header.is-scrolled{box-shadow:0 1px 0 var(--color-border)}.header{min-height:90px}.nav-index,.mobile-nav-note{display:none}.menu-symbol{transition:transform .3s}.hero{min-height:calc(94svh - 90px)}.hero h1>span{animation:hero-enter .8s cubic-bezier(.2,.7,.2,1) both}.hero h1>span:nth-child(2){animation-delay:.12s}.process-anchor h2{line-height:1.08}
@keyframes hero-enter{from{opacity:0;transform:translateY(35px)}to{opacity:1;transform:none}}
/* Client marks remain data, never invented brand names. */
.clients{padding-block:3.5rem;border-bottom:0}.clients>div{display:flex;justify-content:space-between;align-items:center;gap:2rem}.clients h2{font-size:1.7rem;letter-spacing:-.035em}.clients .eyebrow{color:var(--color-muted)}.clients-grid{list-style:none;padding:0;margin:2.5rem 0 0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:2rem}.client-logo{min-height:85px;display:flex;align-items:center;justify-content:center}.client-logo>span{font-size:.75rem;letter-spacing:.07em;color:var(--color-muted);padding:1rem .5rem;border-block:1px solid var(--color-border);width:100%;text-align:center}.client-logo img{max-height:75px;width:100%;object-fit:contain;transition:transform .3s}.client-logo a:hover img{transform:translateY(-4px)}
/* Footer uses the actual identity, no oversized substitute wordmark. */
.footer{background:var(--color-text);color:var(--color-background);padding-block:4rem 2rem}.footer-intro{display:flex;justify-content:space-between;align-items:center;gap:3rem;padding-bottom:3rem;border-bottom:1px solid #ffffff35}.footer-logo{width:250px;display:block}.footer-logo img{filter:brightness(0) invert(1)}.footer-intro>p{font-size:clamp(1.5rem,2.3vw,2.6rem);letter-spacing:-.04em;line-height:1.2}.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr .6fr;gap:3rem;padding-block:3rem}.footer-grid .eyebrow{font-size:.7rem;color:#bfc4c7;letter-spacing:.07em;margin-bottom:1.2rem}.footer-grid nav{display:flex;flex-direction:column;gap:.5rem}.footer-grid nav a{font-size:.9rem;min-height:30px}.footer-contact>a{font-size:clamp(1rem,1.5vw,1.6rem);display:block;overflow-wrap:anywhere}.footer-contact>p:last-child{margin-top:1.5rem;font-size:.85rem;color:#bfc4c7}.footer-symbol{width:130px;align-self:center;justify-self:end}.footer .footer-bottom{border-color:#ffffff35;color:#bfc4c7}.footer .footer-bottom>a{min-height:35px;display:flex;align-items:center}.footer a:hover{color:#9bbfff}.footer :focus-visible{outline-color:#9bbfff}.footer .legal,.footer .social{color:#bfc4c7}
/* Local pages: shared service, independently written content. */
.locations{padding-block:5rem;display:grid;grid-template-columns:1.2fr 1fr;gap:5rem;border-top:1px solid var(--color-border)}.locations h2{font-size:clamp(2rem,3.5vw,4rem)}.locations p{color:var(--color-muted);max-width:460px}.locations nav{display:flex;flex-wrap:wrap;gap:1rem 2rem;margin-top:1.5rem}.locations nav a{padding:10px 0;border-bottom:1px solid var(--color-text);font-size:1rem}.local-hero h1{max-width:1250px}.local-hero .eyebrow{color:var(--color-primary)}.landing-sections{border-top:1px solid var(--color-border)}.landing-section{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-block:4rem;border-bottom:1px solid var(--color-border)}.landing-section h2{font-size:clamp(2rem,3.5vw,3.8rem)}.landing-section p{max-width:590px;color:var(--color-muted)}.local-faq{padding-block:5rem}.local-faq>h2{margin-bottom:2.5rem}.local-faq details{border-top:1px solid var(--color-border);padding-block:1.4rem}.local-faq summary{font-size:1.3rem;cursor:pointer;line-height:1.4}.local-faq details p{margin-top:1.5rem;max-width:700px;color:var(--color-muted)}
@media(max-width:1000px){.clients-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.footer-grid{grid-template-columns:1.4fr 1fr 1fr;gap:2rem}.footer-symbol{display:none}.locations{gap:2.5rem}}
@media(max-width:760px){html{scroll-padding-top:100px}.header{min-height:84px}.hero{min-height:auto}.header .brand,.menu-toggle{position:relative;z-index:102}.menu-toggle{min-width:95px;justify-content:flex-end}.has-menu .header nav{display:flex;position:fixed;inset:0;width:100%;height:100vh;height:100dvh;padding:110px var(--gutter) 30px;background:var(--color-primary);color:white;z-index:101;overflow-y:auto;overscroll-behavior:contain;visibility:hidden;clip-path:inset(0 0 100% 0);transition:clip-path .45s cubic-bezier(.2,.7,.2,1),visibility .45s;justify-content:flex-start;gap:0}.has-menu .header nav.is-open{visibility:visible;clip-path:inset(0)}.has-menu .header nav>a{font-size:clamp(2rem,9vw,3rem);line-height:1.1;min-height:64px;display:flex;align-items:center;gap:1.2rem;padding:13px 0;border-bottom:1px solid #ffffff55;letter-spacing:-.045em;transform:translateY(12px);opacity:0;transition:transform .35s,opacity .35s}.has-menu .header nav.is-open>a{opacity:1;transform:none}.has-menu .header nav.is-open>a:nth-child(2){transition-delay:.04s}.has-menu .header nav.is-open>a:nth-child(3){transition-delay:.08s}.has-menu .header nav.is-open>a:nth-child(4){transition-delay:.12s}.has-menu .header nav.is-open>a:nth-child(5){transition-delay:.16s}.has-menu .header nav .nav-contact{background:none;color:white;margin:0;justify-content:flex-start}.has-menu .header nav>a:hover,.has-menu .header nav>a[aria-current]{color:white}.has-menu .header nav>a[aria-current]>span:nth-child(2){text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:8px}.has-menu .nav-index{display:inline-block;font-size:.7rem;letter-spacing:0;align-self:center}.has-menu .nav-arrow{font-size:1.8rem;margin-left:auto}.has-menu .mobile-nav-note{display:block;margin-top:auto;padding-top:2rem}.has-menu .mobile-nav-note>p{font-size:.8rem;line-height:1.5;opacity:.8}.has-menu .header nav .mobile-nav-note a{font-size:1rem;display:inline-block;border-bottom:0;min-height:44px;padding:12px 0 0;color:white}.menu-open{overflow:hidden}.menu-open .site-header{position:fixed;inset:0 0 auto;background:var(--color-primary);box-shadow:none}.menu-open .brand img{filter:brightness(0) invert(1)}.menu-open .header{border-color:transparent}.menu-open .menu-toggle{color:white}.menu-open .menu-symbol{transform:rotate(45deg)}.menu-open .site-header :focus-visible{outline-color:white}.clients{padding-block:2.5rem}.clients>div{align-items:start;flex-direction:column;gap:.7rem}.clients-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.5rem}.client-logo{min-height:65px}.footer{padding-block:3rem 1.5rem}.footer-intro{align-items:start;flex-direction:column;gap:2rem;padding-bottom:2.5rem}.footer-logo{width:200px}.footer-grid{grid-template-columns:1fr 1fr;gap:2.5rem 1.5rem}.footer-contact{grid-column:1/-1}.footer-contact>a{font-size:1.4rem}.footer .footer-bottom{gap:.5rem;align-items:start}.footer .footer-bottom>span:last-child{display:block}.locations{grid-template-columns:1fr;gap:2rem;padding-block:4rem}.landing-section{grid-template-columns:1fr;gap:1.5rem;padding-block:2.5rem}.local-faq>h2{font-size:2.5rem}.local-faq summary{font-size:1.1rem}.local-hero h1{font-size:clamp(2.8rem,10vw,4.8rem)}}
@media(prefers-reduced-motion:reduce){.hero h1>span{animation:none}.has-menu .header nav,.has-menu .header nav>a{transition:none}}
@media(min-width:761px){.process-anchor{top:120px}}

/* Scroll state: full-width surface, unchanged geometry. */
.site-header{height:90px;background:var(--color-background);transition:background-color .25s,color .25s}.header{height:90px;min-height:90px;padding:0;border:0;border-bottom:1px solid var(--color-border);background:transparent;transform:none;border-radius:0;box-shadow:none}.site-header.is-scrolled{background:rgba(251,251,249,.94);color:var(--color-text);box-shadow:0 8px 30px #08285808;backdrop-filter:blur(18px)}.site-header.is-scrolled .header{border-bottom-color:transparent}.site-header.is-scrolled .brand img{filter:none}.site-header.is-scrolled nav>a{color:var(--color-text)}.site-header.is-scrolled nav>a:not(.nav-contact):hover,.site-header.is-scrolled nav>a:not(.nav-contact)[aria-current]{color:var(--color-primary)}.site-header.is-scrolled nav .nav-contact{background:var(--color-primary);color:white;border-radius:0}.site-header.is-scrolled nav .nav-contact:hover{background:var(--color-secondary);color:white}

.scroll-type-window{overflow:hidden;margin-top:4rem;padding-block:1rem;max-width:100%}.scroll-type-track{display:flex;gap:3rem;width:max-content;white-space:nowrap;font-size:clamp(3rem,7.5vw,8rem);letter-spacing:-.065em;line-height:1.15;will-change:transform}.scroll-type-track em{font-family:var(--font-editorial);font-weight:400;color:var(--color-primary)}
.back-to-top{position:fixed;right:clamp(20px,3vw,48px);bottom:24px;z-index:80;width:50px;height:50px;display:grid;place-items:center;border:1px solid var(--color-border);background:var(--color-background);color:var(--color-text);border-radius:50%;font-size:1.6rem;box-shadow:0 4px 20px #17191c18;transition:background .2s,color .2s,transform .2s}.back-to-top:hover{background:var(--color-primary);border-color:var(--color-primary);color:white;transform:translateY(-3px)}.menu-open .back-to-top{visibility:hidden}
@media(max-width:760px){.site-header,.header{height:84px;min-height:84px}.site-header.is-scrolled .menu-toggle{color:var(--color-text)}.menu-open .site-header{background:var(--color-primary)}.menu-open .site-header .header{border-color:transparent}.menu-open .site-header.is-scrolled nav .nav-contact{background:none}.scroll-type-window{margin-top:2.5rem}.scroll-type-track{font-size:3.2rem;gap:1.5rem}.back-to-top{width:46px;height:46px;right:20px;bottom:20px}}
@media(prefers-reduced-motion:reduce){.scroll-type-track{transform:none!important;will-change:auto}.site-header{transition:none}}
.clients-grid{gap:0;grid-template-columns:repeat(6,minmax(0,1fr))}.client-logo{min-height:125px;padding:22px;border-bottom:1px solid var(--color-border)}.client-logo>span{border:0}.client-logo img{max-height:65px}.back-to-top{width:auto;height:48px;padding:0 18px;display:flex;gap:14px;border-radius:6px;background:var(--color-primary);color:white;border-color:transparent;box-shadow:0 6px 24px #075bd826;font-size:.8rem;font-weight:500}.back-to-top .top-arrow{font-size:1.4rem}.back-to-top:hover{background:var(--color-text)}.start-layout{overflow:hidden}.start-layout h2{will-change:transform}.menu-open .site-header{backdrop-filter:none}.menu-open .site-header .brand img{filter:brightness(0) invert(1)}.menu-open .site-header .menu-toggle,.menu-open .site-header nav>a{color:white}
@media(max-width:1000px){.clients-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.clients-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.client-logo{min-height:94px;padding:12px 8px}.client-logo>span{font-size:.6rem;padding:0}.back-to-top{height:46px;bottom:max(18px,env(safe-area-inset-bottom));right:18px}.menu-open .site-header{background:var(--color-primary)}}
@media(prefers-reduced-motion:reduce){.start-layout h2,.client-logo{transform:none!important;will-change:auto}}

.start-asterisk{display:inline-block;transform-origin:50% 55%}@media(prefers-reduced-motion:reduce){.start-asterisk,.client-logo img,.client-logo>span{transform:none!important}}
.back-to-top{border-color:#ffffff80}

/* Motion refinement: compact navigation, clean return control, step count. */
.process-counter{font-size:clamp(6rem,min(16vw,24svh),18rem);font-weight:500;letter-spacing:-.09em;line-height:1;margin-top:2rem;color:var(--color-primary);font-variant-numeric:tabular-nums}.process-counter>span{display:inline-block}.process-counter small{font-size:1rem;letter-spacing:0;color:var(--color-muted);margin-left:1rem}
.site-header{background:transparent;box-shadow:none!important;isolation:isolate}.site-header::before{content:'';position:absolute;inset:0 0 auto;height:90px;background:var(--color-background);z-index:-1;transition:height .4s cubic-bezier(.22,1,.36,1),background .4s,box-shadow .4s}.header{transition:height .4s cubic-bezier(.22,1,.36,1),min-height .4s cubic-bezier(.22,1,.36,1)}.brand img{transition:width .4s cubic-bezier(.22,1,.36,1);width:180px}.site-header.is-scrolled{background:transparent;backdrop-filter:none}.site-header.is-scrolled::before{height:72px;background:rgba(251,251,249,.94);backdrop-filter:blur(18px);box-shadow:0 8px 24px #0828580a}.site-header.is-scrolled .header{height:72px;min-height:72px}.site-header.is-scrolled .brand img{width:155px}
.back-to-top{width:52px;height:52px;padding:0;display:grid;place-items:center;border-radius:50%;border:1px solid #075bd82b;background:rgba(251,251,249,.96);color:var(--color-primary);box-shadow:0 5px 24px #08285818;backdrop-filter:blur(10px)}.back-to-top svg{transition:transform .25s}.back-to-top:hover{background:var(--color-primary);color:white;transform:translateY(-3px)}.back-to-top:hover svg{transform:translateY(-2px)}
.cursor-orbit{position:fixed;left:0;top:0;width:30px;height:30px;margin:-15px 0 0 -15px;border:1px solid #075bd8a0;border-radius:50%;pointer-events:none;z-index:1000;opacity:0;transition:width .2s,height .2s,margin .2s,background .2s,opacity .2s;will-change:transform}.cursor-orbit.is-visible{opacity:1}.cursor-orbit.is-link{width:54px;height:54px;margin:-27px 0 0 -27px;background:#075bd815;border-color:#075bd860}
@media(max-width:760px){.process-counter{display:none}.site-header::before{height:84px}.site-header.is-scrolled::before{height:70px}.site-header.is-scrolled .header{height:70px;min-height:70px}.menu-open .site-header::before{height:84px;background:var(--color-primary);box-shadow:none}.menu-open .site-header .header{height:84px;min-height:84px}.back-to-top{width:48px;height:48px}.cursor-orbit{display:none}}
@media(prefers-reduced-motion:reduce){.site-header::before,.header,.brand img,.back-to-top svg{transition:none}.cursor-orbit{display:none}}

.back-to-top{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(12px);transition:opacity .28s ease,transform .28s ease,visibility 0s linear .28s,background .2s,color .2s}.back-to-top.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);transition-delay:0s}.back-to-top.is-visible:hover{transform:translateY(-3px)}.menu-open .back-to-top{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(12px)}
@media(prefers-reduced-motion:reduce){.back-to-top{transition:none;transform:none}.back-to-top.is-visible:hover{transform:none}}

.site-header.is-scrolled::before{border-bottom:1px solid var(--color-border);box-sizing:border-box}.menu-open .site-header::before{border-bottom-color:transparent}

.footer-grid{grid-template-columns:1.6fr 1fr .6fr}

.type-play{padding-block:5rem;background:#e9edee}.type-play-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:3rem}.type-play-heading h2{font-size:clamp(2.4rem,4.5vw,5rem)}.type-play-heading>p{font-size:.9rem;color:var(--color-muted)}.type-play-stage{position:relative;isolation:isolate;overflow:hidden;min-height:480px;padding:3rem;background:#075bd8;color:#fbfbf9;--tracking:-.06em;transition:background .45s,color .45s}.type-play-stage[data-tone=lime]{background:#d7ef50;color:#17191c}.type-play-stage[data-tone=ink]{background:#17191c;color:#ece8de}.type-play-index{font-size:.85rem;position:relative;z-index:2}.type-play-word{position:relative;z-index:2;font-size:clamp(4rem,9.5vw,10rem);letter-spacing:var(--tracking);line-height:1.06;margin-block:2rem;transition:letter-spacing .2s}.type-play-word span{display:block;padding-left:14%}.is-serif .type-play-word{font-family:var(--font-editorial);font-style:italic}.type-play-caption{font-size:.8rem;position:relative;z-index:2}.type-play-orbit{position:absolute;right:-5%;top:5%;width:48%;aspect-ratio:1;transform:rotate(var(--turn,0deg));z-index:0;opacity:.25}.type-play-orbit i{position:absolute;inset:0;border:1px solid currentColor;border-radius:50%;transform:rotateY(45deg)}.type-play-orbit i:nth-child(2){transform:rotate(60deg) rotateY(45deg)}.type-play-orbit i:nth-child(3){transform:rotate(120deg) rotateY(45deg)}.type-play-controls{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding-top:1.5rem}.tone-options{display:flex;align-items:center;gap:10px;font-size:.8rem}.tone-options>span{margin-right:10px}.tone-options button{width:44px;height:44px;border-radius:50%;border:5px solid #e9edee;background:#075bd8;outline:1px solid transparent;outline-offset:2px}.tone-options button[data-tone-choice=lime]{background:#d7ef50}.tone-options button[data-tone-choice=ink]{background:#17191c}.tone-options button[aria-pressed=true]{outline-color:var(--color-text)}.tone-options button:focus-visible{outline:3px solid var(--color-primary)}.typeface-toggle{background:none;border:0;border-bottom:1px solid var(--color-text);padding:12px 0;display:flex;gap:2rem;font-size:.85rem}.spacing-control{display:flex;align-items:center;gap:1rem;font-size:.8rem}.spacing-control input{accent-color:var(--color-primary);max-width:150px}
.project-visual:has(>img){padding:2.5rem;background:#e9edee}.project-visual>img{position:relative;inset:auto;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 14px 22px #17191c25)}.project:nth-child(2) .project-visual:has(>img){background:#dfe3ca}.project:nth-child(3) .project-visual:has(>img){background:#e4ded5}.project:nth-child(4) .project-visual:has(>img){background:#efdfc8}
@media(max-width:760px){.footer-grid{grid-template-columns:1fr 1fr}.type-play{padding-block:3rem}.type-play-heading{display:block;margin-bottom:2rem}.type-play-heading>p{margin-top:1.5rem}.type-play-stage{min-height:300px;padding:1.5rem}.type-play-word{font-size:10vw;margin-block:2.8rem}.type-play-word span{padding-left:0}.type-play-orbit{width:80%;top:15%;right:-20%}.type-play-controls{flex-wrap:wrap;gap:1rem}.spacing-control{width:100%;justify-content:space-between}.project-visual:has(>img){padding:1rem;height:330px}.type-play-controls .typeface-toggle{gap:1rem}}
@media(prefers-reduced-motion:reduce){.type-play-stage,.type-play-word{transition:none}.type-play-orbit{transform:none}}


/* Art-directed desktop and mobile compositions. */
.project-visual.device-scene{position:relative;display:flex;justify-content:center;padding:0;isolation:isolate;background:#e7dbdf;overflow:hidden}.device-scene::before{content:'';position:absolute;inset:0;background:linear-gradient(125deg,#ffffffb0,transparent 48%),linear-gradient(35deg,transparent 65%,#ffffff60 65.2%,transparent 86%);pointer-events:none}.device-scene[data-project=essa]{background:#c9d1b8}.device-scene[data-project=estee-shop]{background:#d8e5e9}.device-scene[data-project=mp-serwis]{background:#c7cccd}.device-scene[data-project=printyourfun]{background:#e5d4bd}.device-composition{width:100%;height:100%;position:relative;min-height:300px}.desktop-preview{position:absolute;left:7%;top:14%;width:77%;border:1px solid #ffffffc0;border-radius:10px;overflow:hidden;background:white;box-shadow:0 35px 65px -20px #18252f65,0 4px 10px #18252f15;transform:rotate(-2deg);transition:transform .6s}.preview-toolbar{height:30px;display:flex;align-items:center;justify-content:space-between;padding:0 12px;background:#f8f9fa;color:#667077;font-size:12px}.preview-toolbar>span:first-child{display:flex;gap:5px}.preview-toolbar i{width:5px;height:5px;border-radius:50%;background:#c7cdd0}.preview-toolbar small{font-size:9px;letter-spacing:.03em}.desktop-crop{aspect-ratio:1.6;overflow:hidden}.desktop-crop img{width:100%;height:auto;display:block;max-width:none}.phone-preview{position:absolute;width:20%;right:6%;top:24%;padding:7px;background:linear-gradient(135deg,#777e83,#111619 35%,#485058);border-radius:30px;box-shadow:0 25px 35px -10px #17232e70,0 0 0 1px #ffffff85,inset 0 0 0 2px #92999f;transform:rotate(5deg);transition:transform .6s}.phone-screen{aspect-ratio:390/820;overflow:hidden;border-radius:24px;background:#fff}.phone-screen img{width:100%;height:auto;max-width:none;display:block}.phone-speaker{position:absolute;top:11px;left:37%;width:26%;height:7px;background:#14191c;border-radius:10px}.device-scene:hover .desktop-preview{transform:rotate(-1deg) translateY(-5px)}.device-scene:hover .phone-preview{transform:rotate(2deg) translateY(-9px)}.device-scene .project-arrow{right:1.5rem;bottom:1.5rem;font-size:1.5rem;padding:.5rem 1rem;background:#ffffffdd}.project-gallery .device-scene{height:650px;margin-bottom:3rem;display:block}
@media(max-width:760px){.project-visual.device-scene{height:320px}.desktop-preview{left:5%;top:20%;width:80%;border-radius:5px}.preview-toolbar{height:17px;padding:0 6px}.preview-toolbar small{font-size:5px}.preview-toolbar i{width:3px;height:3px}.phone-preview{width:24%;right:5%;top:34%;padding:3px;border-radius:12px;box-shadow:0 15px 20px -8px #17232e65,0 0 0 1px #b7bdc1}.phone-screen{border-radius:9px}.phone-speaker{height:3px;top:5px}.device-scene .project-arrow{right:.7rem;bottom:.7rem;font-size:1.2rem;padding:.4rem .7rem}.project-gallery .device-scene{height:320px}}
@media(prefers-reduced-motion:reduce){.desktop-preview,.phone-preview{transition:none}.device-scene:hover .desktop-preview{transform:rotate(-2deg)}.device-scene:hover .phone-preview{transform:rotate(5deg)}}
.project-gallery .device-scene{position:relative;overflow:hidden;isolation:isolate;background-color:#e7dbdf}

.offer-hero{padding-block:3rem 5rem;display:grid;grid-template-columns:1.5fr 1fr;gap:2rem 6%}.offer-hero>.eyebrow{grid-column:1/-1}.offer-hero h1{font-size:clamp(3.5rem,7vw,8rem);line-height:1.02}.offer-hero h1 em{color:var(--color-primary)}.offer-hero>div{align-self:end;max-width:430px}.offer-hero>div p{font-size:1.1rem;margin-bottom:1.5rem}.offer-nav{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--color-border);margin-bottom:5rem}.offer-nav a{display:flex;gap:12px;align-items:center;padding:1.5rem 1rem;font-size:.85rem;border-right:1px solid var(--color-border)}.offer-nav a:last-child{border:0}.offer-nav small{color:var(--color-muted)}.offer-nav a>span{margin-left:auto}.offer-nav a:hover{background:var(--color-primary);color:white}.offer-panel{padding-block:6rem;scroll-margin-top:90px}.offer-layout{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.offer-copy h2{font-size:clamp(2.5rem,4vw,4.5rem);margin-block:1.8rem}.offer-copy>p:not(.eyebrow){color:var(--color-muted);margin-bottom:1.4rem}.offer-copy .offer-lead{font-size:1.15rem;color:inherit!important}.offer-copy .tags{margin-block:2rem}.offer-art{position:relative;min-width:0;padding:2rem;background:#e4dce0;overflow:hidden}.offer-art>img{width:120%;max-width:none;box-shadow:0 20px 40px #17191c20;transform:rotate(-3deg);margin-block:2rem}.offer-art>span{display:block;font-size:.75rem;margin-top:2rem}.offer-wordpress{background:#17191c;color:#fbfbf9}.offer-wordpress .offer-copy>p:not(.eyebrow){color:#c4c9cd}.offer-wordpress .offer-art{background:none;padding:0}.offer-wordpress .tags span{border-color:#ffffff40}.extension-art{display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding:3rem 1rem}.extension-art>span{border:1px solid #ffffff55;width:100%;padding:1.5rem;font-size:clamp(1.4rem,2.4vw,2.6rem);letter-spacing:-.04em}.extension-art>span:nth-of-type(2){background:var(--color-primary);border-color:var(--color-primary);transform:translateX(14px)}.extension-art b{font-size:4rem;font-weight:400;line-height:1}.extension-art i{font-style:normal;font-size:.8rem;align-self:start;color:#c4c9cd}.offer-woocommerce .offer-layout{direction:rtl}.offer-woocommerce .offer-layout>*{direction:ltr}.offer-woocommerce .offer-art{background:#d8e5e9}.offer-grafika{background:#e9edee}.offer-grafika .offer-art{background:#075bd8;color:white;padding:3rem}.brand-art>b{display:flex;justify-content:space-between;font-size:clamp(6rem,14vw,14rem);line-height:1;letter-spacing:-.09em;font-weight:400}.brand-art>b span{font-size:.5em;letter-spacing:0}.brand-art p{font-size:2.3rem;line-height:1.1;margin-block:3rem}.brand-art p em{font-family:var(--font-editorial)}.brand-art>div{display:flex;gap:12px}.brand-art i{width:40px;height:40px;background:white;border-radius:50%}.brand-art i:nth-child(2){background:#d7ef50}.brand-art i:nth-child(3){background:#17191c}.company-details{display:grid;grid-template-columns:1fr 1fr 1fr;gap:3rem;padding-block:4rem;border-top:1px solid var(--color-border)}.company-details h2{font-size:2.5rem}.company-details .eyebrow{color:var(--color-muted);margin-bottom:1rem}.company-details div>p+p{margin-top:1rem}.city-directory{display:grid;grid-template-columns:1fr 1.4fr;gap:8%;padding-block:2rem 5rem}.city-directory h2{font-size:2.8rem;margin-bottom:1.5rem}.city-directory nav{display:grid;grid-template-columns:1fr 1fr;gap:0 2rem}.city-directory nav a{display:flex;justify-content:space-between;gap:1rem;padding:2rem 0;font-size:2rem;letter-spacing:-.04em;border-top:1px solid var(--color-border)}.city-directory nav a:hover{color:var(--color-primary)}.hub-note{padding-block:3rem 5rem}.hub-note h2{font-size:2.5rem;margin-bottom:1.5rem}.hub-note p{margin-bottom:1rem}
@media(max-width:760px){.offer-hero{grid-template-columns:1fr;padding-block:2rem 3rem;gap:2rem}.offer-hero h1{font-size:12vw}.offer-nav{grid-template-columns:1fr 1fr;margin-bottom:2rem}.offer-nav a{padding:1rem .5rem;font-size:.75rem;border-bottom:1px solid var(--color-border)}.offer-panel{padding-block:3rem}.offer-layout{grid-template-columns:1fr;gap:2rem}.offer-copy h2{font-size:2.5rem}.offer-art{padding:1.5rem}.offer-grafika .offer-art{padding:2rem}.brand-art>b{font-size:8rem}.company-details{grid-template-columns:1fr;gap:2rem}.city-directory{grid-template-columns:1fr;gap:2rem}.city-directory nav a{font-size:1.5rem}.offer-pricing .section-head{display:block}.offer-pricing .section-head>p{margin-top:1.5rem}}

.city-search{margin-bottom:2.5rem}.city-search label{display:block;font-size:.85rem;margin-bottom:.6rem}.city-search input{width:100%;padding:1rem;border:1px solid var(--color-border);border-radius:0;background:transparent;font:inherit}.city-search p{font-size:.75rem;color:var(--color-muted);margin-top:.5rem}.city-region{margin-bottom:3rem}.city-region h3{font-size:1.4rem;margin-bottom:1.5rem;display:flex;gap:1rem;align-items:center}.city-region h3 small{font-size:.75rem;color:var(--color-muted);letter-spacing:0}.city-directory .city-region nav a{font-size:1.4rem;padding-block:1.4rem}.city-empty a{text-decoration:underline}.city-catalog{min-width:0}
@media(max-width:760px){.city-directory .city-region nav{grid-template-columns:1fr}.city-directory .city-region nav a{font-size:1.5rem}}

.clients-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.client-logo{padding:14px 10px;min-height:110px}.client-logo img{width:100%;height:auto;max-height:95px;object-fit:contain;filter:grayscale(1);mix-blend-mode:multiply;transition:filter .35s ease,transform .35s ease}.client-logo:hover img,.client-logo:focus-within img{filter:grayscale(0)}
@media(max-width:1100px){.clients-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:760px){.clients-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.client-logo{min-height:85px;padding:10px 5px}}
@media(prefers-reduced-motion:reduce){.client-logo img{transition:none}}

/* Stable logo grid: blend outside the image filter compositing layer. */
.client-logo{mix-blend-mode:multiply}.client-logo img{width:100%;height:80px;max-height:none;mix-blend-mode:normal;transform:none;transition:filter .35s ease}.client-logo a{display:block;width:100%}.client-logo a:hover img{transform:none}
@media(max-width:760px){.client-logo img{height:60px}}
@media(prefers-reduced-motion:reduce){.client-logo img{transition:none}}
.about-story-intro{display:grid;grid-template-columns:1fr 2fr;gap:3rem}.about-story h2{font-size:clamp(2.5rem,5vw,5rem);max-width:800px}.about-story p:not(.eyebrow):not(.about-story-sign){margin-top:1.4rem;color:var(--color-muted)}.about-story-columns{display:grid;grid-template-columns:1fr 1fr;gap:8%;margin-top:4rem;padding-top:3rem;border-top:1px solid var(--color-border)}.about-story h3{font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.12;max-width:480px}.about-story-sign{margin-top:4rem;font-size:clamp(2rem,5vw,4rem);letter-spacing:-.05em;color:var(--color-primary)}.about-story-sign strong{font-weight:500}.contact-hours{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.contact-hours>p+p{margin-top:.5rem}.footer .footer-credits{align-items:flex-start;padding-top:2rem;margin-top:3rem}.footer-copyright{font-size:1rem;color:white}.footer-copyright>span{display:block;font-size:.75rem;color:#aeb3b8;margin-top:.3rem;letter-spacing:.025em}.footer-identifiers{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;margin-top:1.3rem;font-size:.7rem;letter-spacing:.04em;color:#aeb3b8}.footer-credits>a{font-size:.75rem;padding-block:.3rem}
@media(max-width:760px){.about-story-intro,.about-story-columns{grid-template-columns:1fr;gap:2rem}.about-story-columns{margin-top:2.5rem;padding-top:2rem}.about-story-sign{margin-top:2.5rem}.footer .footer-credits{gap:1.5rem}}

/* Shared subpage heading scale and spacing, including services. */
.page-hero{padding-block:clamp(4rem,8vw,8rem)}
.page-hero h1{font-size:clamp(3.5rem,8vw,9rem);line-height:1;letter-spacing:-.065em}
.page-hero>.eyebrow{margin:0 0 3rem}
.offer-hero{display:block}
.offer-hero>div{max-width:580px;margin-top:2rem}
.offer-hero>div p{font-size:1.125rem;color:var(--color-muted);margin-bottom:1.5rem}
@media(max-width:760px){.page-hero{padding-block:3rem}.page-hero h1{font-size:clamp(3rem,11vw,5rem)}.page-hero>.eyebrow{margin-bottom:2rem}}
.blog-list{padding-bottom:5rem}.post-row{align-items:start}.post-index>span{font-size:2rem;letter-spacing:-.05em;color:var(--color-primary)}.post-index .eyebrow{margin-top:.8rem}.post-label{font-size:.7rem;margin-top:1rem;color:var(--color-primary)}.post-row h2{font-size:clamp(1.8rem,3.2vw,3.2rem);line-height:1.12}.post-row h2 a:hover{color:var(--color-primary)}.post-reading{display:block;font-size:.75rem;color:var(--color-muted);margin-top:1rem}.post-featured{border-top:3px solid var(--color-primary)}.article-hero h1{font-size:clamp(2.8rem,5.5vw,6rem);max-width:1100px;line-height:1.06}.article-hero>p:not(.eyebrow){max-width:740px}.article-meta{display:flex;flex-wrap:wrap;gap:.6rem;font-size:.8rem;color:var(--color-muted);margin-top:2rem}.article-meta a{color:var(--color-primary)}.article-layout{display:grid;grid-template-columns:minmax(180px,1fr) minmax(0,760px);gap:7%;align-items:start;padding-bottom:4rem}.article-toc{position:sticky;top:110px;padding-top:1.5rem;border-top:1px solid var(--color-border)}.article-toc ol{padding-left:1.2rem;font-size:.85rem;line-height:1.5}.article-toc li{margin-top:.85rem;padding-left:.25rem}.article-toc a:hover{color:var(--color-primary)}.article-layout .article-body{width:100%;max-width:760px;padding:0;font-size:1.125rem;line-height:1.85}.article-body>p:first-child{margin-top:0;font-size:1.3rem;color:var(--color-text)}.article-body h2{font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.15;scroll-margin-top:110px}.article-body ul{padding-left:1.3rem;margin-block:1.8rem}.article-body li+li{margin-top:.6rem}.article-body blockquote{margin:2.5rem 0;padding:1rem 0 1rem 1.5rem;border-left:3px solid var(--color-primary)}.article-body blockquote p{margin:0;font-size:1.5rem;line-height:1.45;letter-spacing:-.025em}.article-body .article-link{font-size:.95rem;line-height:1.6}.article-link a{color:var(--color-primary);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.article-link a:hover{color:var(--color-text)}.article-related{padding-block:3rem 5rem;border-top:1px solid var(--color-border)}.article-related>h2{font-size:clamp(2rem,4vw,4rem);margin-top:1.5rem}.article-related>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;margin-block:2.5rem}.article-related>div>a{border-top:1px solid var(--color-border);padding-top:1.5rem;display:flex;flex-direction:column;align-items:start;gap:1.5rem}.article-related h3{font-size:1.5rem;line-height:1.2}.article-related>div>a:hover h3{color:var(--color-primary)}
@media(max-width:760px){.post-index{grid-column:1/-1;display:flex;gap:1rem;align-items:center}.post-index .eyebrow,.post-index .post-label{margin:0}.article-hero h1{font-size:clamp(2.4rem,8vw,4rem)}.article-layout{grid-template-columns:minmax(0,1fr);gap:2.5rem}.article-toc{position:static}.article-layout .article-body{font-size:1rem}.article-body>p:first-child{font-size:1.15rem}.article-related>div{grid-template-columns:1fr}.article-body blockquote p{font-size:1.3rem}}
/* Client collection: spacious, staggered bands instead of a bordered table. */
.client-showcase{padding-block:clamp(4rem,7vw,7rem);background:#f0f1ee;overflow:hidden}.client-showcase-heading{display:flex;justify-content:space-between;align-items:end;gap:3rem;margin-bottom:3.5rem}.client-showcase-heading h2{font-size:clamp(2.8rem,5.5vw,5.5rem);line-height:1.06;margin-top:1.8rem}.client-showcase-heading h2 em{color:var(--color-primary)}.client-showcase-count{display:flex;flex-direction:column;align-items:end;flex-shrink:0}.client-showcase-count strong{font-weight:400;font-size:clamp(5rem,10vw,10rem);line-height:.9;letter-spacing:-.08em;color:var(--color-primary)}.client-showcase-count span{font-size:.75rem;margin-top:1rem;color:var(--color-muted)}.client-showcase-window{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;padding-block:1rem;scroll-padding-inline:var(--gutter)}.client-showcase-window::-webkit-scrollbar{display:none}.client-showcase-track{display:grid;grid-template-rows:repeat(3,125px);grid-auto-flow:column;grid-auto-columns:220px;gap:18px 32px;list-style:none;margin:0;padding:0 var(--gutter);width:max-content}.client-showcase-logo{display:flex;align-items:center;justify-content:center;mix-blend-mode:multiply;padding:8px 0}.client-showcase-logo:nth-child(3n+2){position:relative;left:60px}.client-showcase-logo:nth-child(3n){position:relative;left:25px}.client-showcase-logo img{width:220px;height:110px;object-fit:contain;filter:grayscale(1);transition:filter .3s ease}.client-showcase-logo:hover img{filter:grayscale(0)}.client-showcase-track{padding-right:calc(var(--gutter) + 60px)}
@media(max-width:760px){.client-showcase-heading{gap:1.5rem;align-items:start;margin-bottom:2rem}.client-showcase-heading h2{font-size:clamp(2rem,7vw,3rem);margin-top:1rem}.client-showcase-heading .eyebrow{font-size:.6rem}.client-showcase-count strong{font-size:4rem}.client-showcase-count span{max-width:90px;text-align:right;font-size:.65rem}.client-showcase-track{grid-template-rows:repeat(3,95px);grid-auto-columns:160px;gap:12px 20px}.client-showcase-logo img{width:160px;height:80px}.client-showcase-logo:nth-child(3n+2){left:40px}.client-showcase-logo:nth-child(3n){left:15px}}
@media(prefers-reduced-motion:reduce){.client-showcase-logo img{transition:none}}
.client-showcase-controls{display:flex;justify-content:flex-end;gap:8px;margin-bottom:1rem}.client-showcase-controls button{width:48px;height:44px;background:transparent;border:1px solid #b8bfbb;color:var(--color-text);font-size:1.4rem}.client-showcase-controls button:hover{background:var(--color-primary);color:white}.client-showcase-controls button:disabled{opacity:.3;cursor:default}

.client-showcase-note{color:var(--color-muted);flex-shrink:0;text-align:right;padding-bottom:.4rem}
@media(max-width:760px){.client-showcase-note{max-width:100px;align-self:end;font-size:.65rem}}

.client-showcase-note{font-size:1rem;line-height:1.5;letter-spacing:0;text-transform:none;text-align:left;max-width:300px;color:var(--color-muted)}
@media(max-width:760px){.client-showcase-heading{flex-wrap:wrap}.client-showcase-note{font-size:.875rem;max-width:none;flex-basis:100%;padding-top:.5rem}}
.service-page-hero h1{font-size:clamp(3rem,7vw,7rem)}.service-page-hero .actions{margin-top:2rem}.service-story{background:#e9edee;padding-block:5rem}.service-story-layout{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.service-story h2{font-size:clamp(2.3rem,4vw,4.5rem);margin-block:2rem}.service-story p:not(.eyebrow){color:var(--color-muted);font-size:1.1rem}.service-concept{display:flex;flex-direction:column;gap:1rem;min-width:0}.service-concept>span{font-size:clamp(1.5rem,3vw,3rem);letter-spacing:-.04em;padding:1rem 0;border-bottom:1px solid #9fa9a9}.service-concept>span:last-child{color:var(--color-primary)}.service-page-wp .service-story{background:#17191c;color:#fbfbf9}.service-page-wp .service-story p:not(.eyebrow){color:#b8c0c6}.service-page-wp .service-concept>span{border:1px solid #555f67;padding:1.4rem;color:inherit}.service-page-wp .service-concept>span:last-child{background:#075bd8;border-color:#075bd8}.service-concept>b{font-size:3rem;align-self:center;font-weight:400}.service-page-shop .service-concept span{display:flex;justify-content:space-between;gap:1rem}.service-page-shop .service-concept span b{font-size:.8rem;font-weight:400}.service-page-brand .service-concept{background:#075bd8;color:white;padding:2rem}.service-concept>.service-brand-letter{font-size:clamp(7rem,15vw,15rem);letter-spacing:-.08em;line-height:1}.service-page-brand .service-concept>span{color:white;border:0;font-size:1rem}.service-swatches{display:flex;gap:12px;margin-top:1rem}.service-swatches i{width:38px;height:38px;border-radius:50%;background:#fbfbf9}.service-swatches i:nth-child(2){background:#17191c}.service-swatches i:nth-child(3){background:#d7ef50}.service-scope,.service-steps,.service-examples,.service-faq,.service-reading,.service-other{padding-block:4rem}.service-scope{scroll-margin-top:100px}.service-scope-list article{display:grid;grid-template-columns:50px 1fr 1.2fr;gap:2rem;padding-block:2rem;border-top:1px solid var(--color-border)}.service-scope-list h3{font-size:2rem;line-height:1.1}.service-scope-list p{color:var(--color-muted)}.service-budget{background:#075bd8;color:white;padding-block:4rem}.service-budget>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.service-budget h2{font-size:clamp(2.5rem,5vw,5rem);margin-top:1.5rem;line-height:1.08}.service-budget .text-link{margin-top:1.5rem}.service-steps>h2{font-size:clamp(2.2rem,4vw,4rem)}.service-steps ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3rem;padding:0;list-style:none;counter-reset:step;margin-top:3rem}.service-steps li:before{counter-increment:step;content:'0' counter(step);color:var(--color-primary);font-size:.8rem}.service-steps h3{font-size:1.7rem;line-height:1.2;margin-block:1rem}.service-steps p{color:var(--color-muted)}.service-faq{display:grid;grid-template-columns:1fr 1.5fr;gap:8%;border-top:1px solid var(--color-border)}.service-faq h2{font-size:clamp(2rem,3.5vw,3.5rem)}.service-faq details{border-bottom:1px solid var(--color-border);padding-block:1.3rem}.service-faq summary{cursor:pointer;font-size:1.2rem;line-height:1.4}.service-faq details p{margin-top:1.2rem;color:var(--color-muted)}.service-reading{border-top:1px solid var(--color-border)}.service-reading>a{display:flex;justify-content:space-between;gap:2rem;font-size:clamp(1.4rem,2.4vw,2.4rem);line-height:1.2;letter-spacing:-.03em;margin-top:2rem}.service-reading>a:hover{color:var(--color-primary)}.service-other{display:flex;gap:1rem 2rem;flex-wrap:wrap;padding-top:0}.service-other>p{flex-basis:100%}.service-examples .projects-grid .project:nth-child(even){width:100%}
@media(max-width:760px){.service-story-layout,.service-budget>.wrap,.service-faq{grid-template-columns:minmax(0,1fr);gap:2.5rem}.service-story{padding-block:3rem}.service-scope-list article{grid-template-columns:24px minmax(0,1fr);gap:1rem}.service-scope-list article>p{grid-column:2}.service-scope-list h3{font-size:1.6rem}.service-steps ol{grid-template-columns:1fr;gap:2rem}.service-page-hero h1{font-size:clamp(2.5rem,10vw,4rem)}.service-page-hero .button{white-space:normal;gap:1rem}.service-faq summary{font-size:1.1rem}.service-other .text-link{font-size:.8rem}}
/* Keep budget links readable on their blue background in every interaction state. */
.service-budget .text-link,.service-budget .text-link:visited,.service-budget .text-link:hover,.service-budget .text-link:focus-visible{color:#fff}
.service-budget .text-link:hover{border-bottom-width:2px}
.service-budget .text-link:focus-visible{outline-color:#fff}
/* Clear legal footer with space reserved for the floating return button. */
.footer .footer-credits{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1.5rem 3rem;margin-top:0;padding:1.8rem 80px .5rem 0;border-top:1px solid #ffffff35}
.footer .footer-copyright{font-size:.875rem;line-height:1.5;white-space:nowrap;margin:0;color:#fbfbf9}
.footer .footer-identifiers{display:flex;flex-wrap:wrap;gap:.4rem 1.5rem;margin:0;font-size:.75rem;line-height:1.7;letter-spacing:0;color:#bfc4c7}
.footer-identifiers>span{white-space:nowrap}
.footer .footer-credits>a{display:inline-flex;gap:.7rem;min-height:44px;font-size:.8rem;line-height:1.5;justify-self:end}
@media(max-width:900px){.footer .footer-credits{grid-template-columns:1fr;gap:.7rem;padding-right:72px}.footer .footer-credits>a{justify-self:start}.footer .footer-identifiers{gap:.35rem 1.2rem}}

.footer-grid{grid-template-columns:1.5fr 1fr 1.2fr .5fr;gap:2rem}.footer-copyright>span{display:inline;color:inherit;font-size:inherit;margin:0;letter-spacing:0}
@media(max-width:1000px){.footer-grid{grid-template-columns:1.3fr 1fr 1.2fr}.footer-symbol{display:none}}
@media(max-width:760px){.footer-grid{grid-template-columns:1fr 1fr;gap:2.5rem 1.5rem}.footer-contact{grid-column:1/-1}}
.about-story-columns h2{font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.12;max-width:480px}.about-story-intro>div>p:first-child{margin-top:0}.home-blog{padding-block:3.5rem 4rem;border-top:1px solid var(--color-border)}.home-blog>header{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2.5rem}.home-blog h2{font-size:clamp(2.5rem,4vw,4rem);margin-top:1rem}.home-blog-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3rem}.home-blog-list article{display:flex;flex-direction:column;align-items:start;border-top:1px solid var(--color-border);padding-top:1.3rem}.home-blog-list h3{font-size:clamp(1.4rem,2vw,2rem);line-height:1.2;margin-top:1rem;letter-spacing:-.035em}.home-blog-list h3 a:hover{color:var(--color-primary)}.home-blog-list article>p:not(.eyebrow){font-size:.9rem;line-height:1.65;color:var(--color-muted);margin-block:1.2rem 1.5rem}.home-blog-read{display:flex;gap:1rem;align-items:center;min-height:44px;margin-top:auto;font-size:.8rem;color:var(--color-primary)}
@media(max-width:760px){.home-blog>header{align-items:start;flex-direction:column;gap:1rem}.home-blog-list{grid-template-columns:1fr;gap:2rem}.home-blog{padding-block:3rem}}
.footer-privacy{display:flex;flex-direction:column;align-items:start;gap:.15rem;font-size:.8rem}.footer-privacy>a,.footer-privacy>button{min-height:44px;display:flex;align-items:center;gap:.6rem}.footer-privacy button{border:0;padding:0;background:none;color:inherit;font-size:inherit}.footer-privacy button:hover{color:#9bbfff}.consent-banner{position:fixed;z-index:220;bottom:20px;left:20px;right:20px;max-width:1180px;margin-inline:auto;background:#fbfbf9;color:#17191c;border:1px solid #cdd0ce;box-shadow:0 12px 65px #0003;padding:26px;display:grid;grid-template-columns:1.5fr 1fr;gap:30px;align-items:center;max-height:calc(100dvh - 40px);overflow:auto}.consent-banner h2{font-size:1.7rem;letter-spacing:-.04em;margin-block:.6rem}.consent-banner p:not(.eyebrow){font-size:.85rem;line-height:1.6;color:#616567}.consent-banner a,.consent-dialog a{text-decoration:underline;text-underline-offset:3px;color:#075bd8}.consent-actions{display:flex;flex-wrap:wrap;gap:10px}.consent-actions button{flex:1 1 150px;padding:12px 15px;min-height:48px;background:#fbfbf9;color:#17191c;border:1px solid #8c9594;font-size:.85rem;line-height:1.4}.consent-actions button:hover{background:#e6eefb;border-color:#075bd8;color:#075bd8}.consent-actions [data-consent-settings]{flex-basis:100%;border-color:transparent;text-decoration:underline}.consent-dialog{border:1px solid #cdd0ce;padding:30px;max-width:650px;width:calc(100% - 32px);max-height:calc(100dvh - 32px);overflow:auto;background:#fbfbf9;color:#17191c}.consent-dialog::backdrop{background:#101820a8}.consent-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}.consent-dialog-head button{background:transparent;border:0;width:44px;height:44px;font-size:2rem;color:inherit}.consent-dialog h2{font-size:2.5rem;margin-block:1rem 1.5rem}.consent-dialog>p{font-size:.9rem;color:#616567}.consent-category{display:flex;gap:1.5rem;justify-content:space-between;padding-block:1.5rem;border-top:1px solid #cdd0ce;margin-top:1.5rem}.consent-category h3{font-size:1.2rem;letter-spacing:-.02em}.consent-category p{font-size:.85rem;line-height:1.6;margin-top:.7rem;color:#616567}.consent-category>span{font-size:.7rem;min-width:95px;color:#616567}.consent-switch{display:flex;align-items:start;gap:8px;font-size:.8rem;cursor:pointer}.consent-switch input{width:22px;height:22px;accent-color:#075bd8;margin:0;flex-shrink:0}.consent-switch span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}body:has(.consent-dialog[open]){overflow:hidden}body:has(.consent-banner:not([hidden])) .back-to-top{opacity:0;visibility:hidden;pointer-events:none}.privacy-toc{padding:1.5rem;border:1px solid var(--color-border);margin-bottom:2.5rem}.privacy-toc ol{padding-left:1.2rem}.privacy-toc li{margin-top:.5rem}.privacy-toc a{color:var(--color-primary)}.privacy-section{scroll-margin-top:110px}.privacy-section p{white-space:pre-line}.privacy-section a{color:var(--color-primary);text-decoration:underline}.privacy-cookie-table{overflow-x:auto;margin-block:1.5rem}.privacy-cookie-table table{border-collapse:collapse;width:100%;font-size:.85rem}.privacy-cookie-table th,.privacy-cookie-table td{border-bottom:1px solid var(--color-border);padding:1rem .6rem;text-align:left;vertical-align:top}.privacy-cookie-table th{font-weight:600}.privacy-settings{background:transparent;border:1px solid var(--color-primary);color:var(--color-primary);padding:12px 18px;min-height:44px;margin-block:2rem}
@media(max-width:760px){.consent-banner{grid-template-columns:1fr;gap:16px;inset:auto 12px 12px;padding:20px;max-height:calc(100dvh - 24px)}.consent-banner h2{font-size:1.5rem}.consent-actions{gap:8px}.consent-actions button{flex-basis:100%;min-height:44px}.consent-dialog{padding:20px}.consent-dialog h2{font-size:2rem}.consent-category{gap:1rem}.footer .footer-privacy{grid-column:1}}

/* Clear mobile navigation states, including after scrolling. */
@media(max-width:760px){
 html.menu-open .site-header .header nav>a,
 html.menu-open .site-header .header nav>a:is(:hover,:focus-visible,:active,[aria-current]){color:#fff;background:transparent}
 html.menu-open .site-header .header nav>a:is(:hover,:focus-visible){background:#ffffff12;border-bottom-color:#fff}
 html.menu-open .site-header .header nav>a:focus-visible{outline:2px solid #fff;outline-offset:4px}
}
.consent-actions button[data-consent=accept],.consent-actions button[data-consent=save]{background:#075bd8;border-color:#075bd8;color:#fff}
.consent-actions button[data-consent=accept]:hover,.consent-actions button[data-consent=save]:hover{background:#0649ad;border-color:#0649ad;color:#fff}
.consent-actions button:focus-visible{outline:2px solid #075bd8;outline-offset:3px}
.footer-privacy{gap:.4rem}
.footer-privacy button{min-height:44px;padding:0 12px;border:1px solid #ffffff38;color:#d8dce0;gap:8px;transition:background .2s,border-color .2s}
.footer-privacy button:hover{color:#fff;border-color:#ffffff80;background:#ffffff0a}
.footer-privacy button>span{font-size:1.4rem;line-height:1}

.contact-hours .contact-hours-days{font-size:.95rem;color:var(--color-muted);margin-top:.6rem}
.contact-hours .contact-hours-time{font-size:2rem;line-height:1.2;letter-spacing:-.04em;color:var(--color-text);margin-top:.35rem}
.contact-company{border-top:1px solid var(--color-border);margin-top:2rem;padding-top:1.5rem}
.contact-layout .contact-company h2{font-size:.85rem;letter-spacing:0;line-height:1.4;margin:0 0 .7rem;color:var(--color-muted);font-weight:400}
.contact-layout .contact-company h2:not(:first-child){margin-top:1.5rem}
.contact-company p{font-size:.9rem;line-height:1.7;margin:0}
.contact-company strong{font-weight:500;color:var(--color-text)}
.contact-company .contact-company-ids{margin-top:.7rem}

/* Native scrolling with the brand accent; horizontal galleries stay hidden. */
html,.consent-dialog,.consent-banner{scrollbar-color:#075bd8 transparent;scrollbar-width:thin}
html::-webkit-scrollbar,.consent-dialog::-webkit-scrollbar,.consent-banner::-webkit-scrollbar{width:10px}
html::-webkit-scrollbar-track,.consent-dialog::-webkit-scrollbar-track,.consent-banner::-webkit-scrollbar-track{background:transparent}
html::-webkit-scrollbar-thumb,.consent-dialog::-webkit-scrollbar-thumb,.consent-banner::-webkit-scrollbar-thumb{background:#075bd8;border:2px solid transparent;background-clip:padding-box;border-radius:8px}
html::-webkit-scrollbar-thumb:hover,.consent-dialog::-webkit-scrollbar-thumb:hover{background:#0649ad}
.consent-dialog .consent-actions [data-consent=save]{flex-basis:100%;background:transparent;color:#17191c;border-color:transparent;text-decoration:underline;text-underline-offset:3px}
.consent-dialog .consent-actions [data-consent=save]:hover{background:#e6eefb;color:#075bd8;border-color:transparent}
@media(forced-colors:active){html,.consent-dialog,.consent-banner{scrollbar-color:auto}}

/* A quiet, aligned closing row with space for the back-to-top control. */
.footer-meta{border-top:1px solid #ffffff25;padding:1.6rem 80px 0 0;display:flex;justify-content:space-between;align-items:center;gap:1.5rem 3rem}
.footer-meta-brand>p{margin:0;font-size:.85rem;color:#e6e8ea;line-height:1.5}
.footer-meta-brand>p>span[aria-hidden]{color:#8db7f5;margin-inline:5px}
.footer-meta-year{color:#aeb3b8;margin-left:0}
.footer-meta-brand .footer-meta-ids{display:flex;flex-wrap:wrap;gap:.3rem 1.2rem;margin-top:.45rem;color:#aeb3b8;font-size:.7rem;letter-spacing:.015em}
.footer-meta-links{display:flex;flex-wrap:wrap;align-items:center;gap:0 1.8rem}
.footer-meta-links>a,.footer-meta-links>button{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:0;border:0;background:none;font:inherit;font-size:.75rem;color:#c4c9cd;text-decoration:none;cursor:pointer}
.footer-meta-links>a:hover,.footer-meta-links>button:hover{color:#fff;text-decoration:underline;text-underline-offset:5px}
.footer-meta-links svg{flex-shrink:0;color:#8db7f5}
@media(max-width:900px){.footer-meta{align-items:flex-start;flex-direction:column;gap:.9rem;padding-right:72px}.footer-meta-links{gap:0 1.3rem}}
@media(max-width:400px){.footer-meta-links{align-items:flex-start;flex-direction:column;gap:0}}

.consent-dialog .consent-dialog-head button[data-consent-close],
.consent-dialog .consent-dialog-head button[data-consent-close]:is(:hover,:active,:focus){background:transparent;color:#17191c;border:0;box-shadow:none;-webkit-tap-highlight-color:transparent;display:grid;place-items:center;padding:0;line-height:1}
.consent-dialog .consent-dialog-head button[data-consent-close]:hover{color:#075bd8}
.consent-dialog .consent-dialog-head button[data-consent-close]:focus-visible{outline:2px solid #075bd8;outline-offset:2px}

/* Portfolio boards: two complementary views without device chrome. */
.project-visual.device-scene,.project-gallery .device-scene{background:#e8dfe2;padding:0;height:auto;aspect-ratio:1.3;display:block}
.device-scene::before{display:none}
.device-scene[data-project=focus-room]{background:#d8ceba}
.device-scene[data-project=pietrzyk-legal]{background:#c9dfe1}
.device-scene[data-project=essa]{background:#dce4b8}
.device-scene[data-project=estee-shop]{background:#e5ded5}
.device-scene[data-project=printyourfun]{background:#eddbc3}
.device-scene[data-project=mp-serwis]{background:#d4dadd}
.project-board{position:relative;width:100%;height:100%;overflow:hidden}
.project-board-label{position:absolute;top:6%;left:6%;right:6%;display:flex;justify-content:space-between;align-items:center;gap:1rem;color:#17191c}
.project-board-label>span{font-size:clamp(1.2rem,2.7vw,3rem);letter-spacing:-.055em;line-height:1}
.project-board-label>small{font-size:.65rem;border-top:1px solid #17191c60;padding-top:.6rem}
.project-board-main,.project-board-detail{position:absolute;overflow:hidden;background:#fff;box-shadow:0 14px 35px #17191c25;transition:transform .6s cubic-bezier(.2,.65,.25,1)}
.project-board-main{top:19%;left:6%;width:78%;aspect-ratio:1.44}
.project-board-detail{top:52%;right:-9%;width:64%;aspect-ratio:1.65;border:5px solid #ffffff}
.project-board img{display:block;width:100%;height:100%;object-fit:cover;object-position:top}
.project-board-domain{position:absolute;bottom:5%;left:6%;font-size:.7rem;color:#17191c}
.project-visual:hover .project-board-main{transform:translate(-1%,-2%)}
.project-visual:hover .project-board-detail{transform:translate(-3%,-3%)}
.device-scene .project-arrow{right:5%;bottom:4%;background:#17191c;color:#fff;padding:.35rem .7rem}
.project-gallery .device-scene{max-height:none;aspect-ratio:1.5}
@media(max-width:760px){.project-visual.device-scene{height:auto;aspect-ratio:1.04}.project-board-label>span{font-size:1.6rem}.project-board-label>small{display:none}.project-board-main{top:20%;width:85%;left:6%}.project-board-detail{top:54%;width:76%;right:-12%;border-width:3px}.project-board-domain{font-size:.6rem}.project-gallery .device-scene{aspect-ratio:1.04}}
@media(prefers-reduced-motion:reduce){.project-board-main,.project-board-detail{transition:none}.project-visual:hover .project-board-main,.project-visual:hover .project-board-detail{transform:none}}

.project .project-visual.device-scene[data-project=nokano]{background:#e8dfe2}
.project .project-visual.device-scene[data-project=focus-room]{background:#d8ceba}
.project .project-visual.device-scene[data-project=pietrzyk-legal]{background:#c9dfe1}
.project .project-visual.device-scene[data-project=essa]{background:#dce4b8}
.project .project-visual.device-scene[data-project=estee-shop]{background:#e5ded5}
.project .project-visual.device-scene[data-project=printyourfun]{background:#eddbc3}
.project .project-visual.device-scene[data-project=mp-serwis]{background:#d4dadd}

.graphic-cover{width:100%;height:100%;display:grid;place-items:center;background:#eeefeb;padding:6%}
.graphic-cover>div{height:100%;max-width:500px;overflow:hidden}
.graphic-cover img{display:block;width:auto;height:100%;max-width:100%;object-fit:contain}
.graphic-cover-logo{background:#f4f2ee}
.graphic-cover-logo>div{width:100%;height:auto;aspect-ratio:500/230;background:#fff}
.graphic-cover-logo img{width:100%;height:auto;max-width:500px;object-fit:initial}
.graphic-gallery>img{display:block;width:100%;max-width:500px;height:auto;margin:0 auto 3rem}
.portfolio-filters{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;border-bottom:1px solid var(--color-border);margin-bottom:2.5rem}
.portfolio-filters button{background:none;border:0;border-bottom:2px solid transparent;padding:14px 0;min-height:48px;color:var(--color-muted);font-size:.9rem}
.portfolio-filters button[aria-pressed=true]{border-bottom-color:var(--color-primary);color:var(--color-primary)}
.portfolio-filters button:hover{color:var(--color-text)}
/* Mobile layout: readable controls and content without changing navigation. */
.offer-wordpress .tags span{color:#c4c9cd}
@media(max-width:760px){
 .start-layout h2{transform:none!important;will-change:auto;font-size:clamp(5rem,25vw,10rem)}
 .contact-layout{gap:3rem}
 .contact-layout aside h2{font-size:clamp(1.9rem,7vw,2.4rem)}
 .portfolio-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}
 .portfolio-filters button{font-size:.8rem;line-height:1.35;text-align:left;min-height:56px}
}
@media(max-width:380px){
 .offer-nav{grid-template-columns:1fr}
 .offer-nav a{font-size:.9rem;padding:1rem .5rem;border-right:0;min-height:58px}
 .offer-nav a:last-child{border-bottom:0}
 .footer-grid{grid-template-columns:1fr;gap:2rem}
 .footer-grid nav a{min-height:40px;display:flex;align-items:center}
 .editorial-columns,.manifest-body,.studio-note>div{margin-left:0}
 .service-row summary h3{font-size:1.4rem}
}
/* Establish the mobile menu state before its first paint. */
html:not(.has-menu) .menu-toggle{display:none}
@media(max-width:760px){
 html.has-menu .site-header .header nav>a,
 html.has-menu .site-header .header nav>a:is(:hover,:focus,:focus-visible,:active,[aria-current]){color:#fff}
 .cta h2{font-size:clamp(2rem,10vw,4.75rem);line-height:1.1;margin-block:2.5rem}
 .cta h2 .cta-break{display:none}
 .cta h2 a{white-space:nowrap}
 .cta h2 a>span[aria-hidden]{font-size:.65em;margin-left:.15em}
}
@media(max-width:760px){
 html.menu-light .site-header .header .brand img{filter:brightness(0) invert(1)}
 html.menu-light .site-header .header .menu-toggle,
 html.menu-light .site-header .header .menu-toggle:is(:hover,:focus,:active),
 html.menu-light .site-header .header .menu-toggle span{color:#fff}
}
/* Inputs and native selects share one baseline in the contact grid. */
.contact-form .field input,.contact-form .field select{height:54px;min-height:54px}
.city-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.5rem}
.city-list>a,.city-list>.city-name{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:14px 0;border-bottom:1px solid var(--color-border);font-size:.95rem;min-width:0}
.city-list>a{color:var(--color-primary)}.city-list>a:hover{text-decoration:underline}.city-list>.city-name{color:var(--color-muted)}
@media(max-width:500px){.city-list{grid-template-columns:1fr}}
/* Real alpha transparency avoids Safari blend-layer repaint artefacts. */
.client-showcase-logo{mix-blend-mode:normal}
