:root{--blue:#2b4bff;--lime:#d9ff63;--paper:#f4f3ef;--ink:#141414;--muted:#5b5e68;--line:#d4d5dc;--white:#fff;--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px;-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.6 Arial,Helvetica,sans-serif}img{max-width:100%;height:auto;display:block}a{color:var(--blue);text-underline-offset:.2em}a:hover{text-decoration-thickness:2px}button,input,select,textarea{font:inherit}button,summary{cursor:pointer}a,button,input,select,textarea,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px}h1,h2,h3,p,figure{margin:0}p+p{margin-top:1em}h1,h2,h3{line-height:1.08;letter-spacing:-.04em;text-wrap:balance}h1{font-size:clamp(38px,5.9vw,80px);font-weight:700;overflow-wrap:anywhere}h2{font-size:clamp(30px,3.7vw,50px);max-width:950px;margin:0 0 36px}h3{font-size:clamp(23px,2.25vw,30px);line-height:1.18;margin-bottom:18px;letter-spacing:-.025em}.wrap{width:calc(100% - 96px);max-width:var(--max);margin:0 auto}.narrow{max-width:790px}.eyebrow{font-size:12px;line-height:1.5;font-weight:bold;letter-spacing:.16em;text-transform:uppercase;color:var(--blue);margin:0 0 24px}.lead{font-size:clamp(20px,2vw,27px);line-height:1.45;letter-spacing:-.015em}.fine,.hint{font-size:14px;line-height:1.6;color:var(--muted)}.fine{margin-top:24px}.rounded{border-radius:3px;width:100%;object-fit:cover}.section{padding:90px 0}.section+.section{border-top:1px solid var(--line)}.tinted{background:#e9eaf1}.blue{background:var(--blue);color:white}.blue .eyebrow{color:var(--lime)}.blue a{color:white}.blue .fine{color:#e3e8ff}.blue a:focus-visible,.blue button:focus-visible{outline-color:var(--lime)}.blue .text-link:hover{color:var(--lime)}.skip{position:fixed;top:10px;left:10px;background:var(--lime);color:var(--ink);padding:12px 20px;z-index:1000;transform:translateY(-150%)}.skip:focus{transform:none}
.site-header{position:sticky;top:0;z-index:30;background:rgba(244,243,239,.97);border-bottom:1px solid var(--line)}.header-row{min-height:92px;display:flex;align-items:center;gap:28px;justify-content:space-between}.brand{color:var(--ink);text-decoration:none;display:flex;align-items:center;gap:12px;flex-shrink:0}.monogram{font-size:44px;line-height:1;letter-spacing:-.07em;font-weight:bold;color:var(--blue)}.brand-name{font-size:12px;font-weight:bold;line-height:1.25}.desktop-nav{display:flex;gap:24px;margin-left:auto}.nav-link{font-size:14px;color:var(--ink);text-decoration:none;white-space:nowrap;padding:10px 0}.nav-link:hover,.nav-link.active{color:var(--blue)}.button{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:52px;padding:14px 25px;background:var(--blue);color:white;border:1px solid var(--blue);border-radius:3px;font-size:15px;font-weight:bold;line-height:1.3;text-decoration:none;text-align:center;transition:background .15s,color .15s,transform .15s}.button:hover{background:#1935d8;border-color:#1935d8;transform:translateY(-1px)}.button.small{font-size:13px;min-height:44px;padding:12px 17px}.button.lime{background:var(--lime);border-color:var(--lime);color:var(--ink)}.button.lime:hover{background:#ebffad;border-color:#ebffad}.button.outline{background:transparent;border-color:#c9d3ff;color:white}.button.outline:hover{background:white;color:var(--blue)}.mobile-menu{display:none}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:32px}.text-link{font-size:16px;font-weight:bold}.breadcrumbs{padding-top:25px;font-size:12px;color:var(--muted);display:flex;gap:8px;align-items:center;flex-wrap:wrap}.breadcrumbs a{color:var(--muted);text-decoration:none}.breadcrumbs a:hover{color:var(--blue)}.breadcrumbs>span[aria-current]{max-width:100%;overflow-wrap:anywhere}
.hero{padding:68px 0 80px}.hero-grid{display:grid;gap:40px}.hero-grid.with-image{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);align-items:center;gap:65px}.hero .lead{margin-top:30px;max-width:760px}.hero .eyebrow{max-width:700px}.hero-photo{width:100%;aspect-ratio:1;object-fit:cover;border-radius:3px}.hero.blue{padding:70px 0 80px;position:relative;overflow:hidden}.hero.blue:after{content:"";width:70vw;position:absolute;left:-25vw;bottom:-65vw;height:70vw;border:1px solid rgba(217,255,99,.4);border-radius:50%;pointer-events:none}.hero.blue .hero-grid{position:relative;z-index:1}.hero.blue h1{font-size:clamp(38px,5.4vw,76px);letter-spacing:-.055em}.hero.blue .lead{font-weight:bold;max-width:640px}.hero.blue .hero-photo{box-shadow:20px 20px 0 -1px var(--lime)}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.card{min-width:0;background:white;padding:30px;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:3px}.card .eyebrow{font-size:11px;margin-bottom:27px}.card p{color:var(--muted);line-height:1.55}.card .text-link{margin-top:auto;padding-top:32px;align-self:flex-start}.card-link{color:var(--ink);text-decoration:none}.card-link:hover{color:var(--blue)}.directions .cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.directions .card{background:transparent;border:none;border-left:1px solid var(--line);border-radius:0;padding:0 22px}.directions .card:first-child{border-left:none;padding-left:0}.directions .card:last-child{padding-right:0}.directions .card .eyebrow{font-size:12px}.directions .card h3{min-height:3.5em}.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:70px;align-items:start}.split>.rounded{max-height:440px}.stats{display:grid;gap:28px}.stats>div{display:grid;grid-template-columns:120px minmax(0,1fr);align-items:center;gap:20px;padding-bottom:24px;border-bottom:1px solid var(--line)}.stats strong{font-size:45px;line-height:1.1;color:var(--blue);letter-spacing:-.06em}.stats span{font-size:16px}.steps{list-style:none;margin:0;padding:0;counter-reset:step;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px}.steps li{counter-increment:step;position:relative;padding-top:65px;border-top:1px solid var(--line)}.steps li:before{content:"0" counter(step);position:absolute;top:16px;font-size:15px;font-weight:bold;color:var(--blue)}.steps h3{font-size:24px;line-height:1.2}.steps p{font-size:16px;color:var(--muted)}.quotes{display:grid;grid-template-columns:1fr 1fr;gap:50px}.quotes figure{border-left:3px solid var(--blue);padding-left:28px}.quotes blockquote{margin:0;font-size:clamp(20px,2vw,26px);line-height:1.5;letter-spacing:-.015em}.quotes figcaption{font-size:14px;color:var(--muted);margin-top:25px}.cta-row{display:grid;grid-template-columns:1.2fr 1fr;gap:50px}.cta-row .actions{margin-top:0;align-self:center;justify-content:flex-end}.work-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.work-strip img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center}.work-strip figcaption{margin-top:10px;font-size:12px;color:var(--muted)}.client-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;list-style:none;margin:0;padding:0}.client-list li{padding:24px 15px;border-bottom:1px solid var(--line);font-size:22px;font-weight:bold}.list{margin:0;padding:0;list-style:none;max-width:950px}.list li{position:relative;padding:18px 0 18px 28px;border-bottom:1px solid var(--line);font-size:18px;line-height:1.5}.list li:before{content:"↗";color:var(--blue);position:absolute;left:0}.price{font-size:clamp(30px,4vw,52px);font-weight:bold;letter-spacing:-.04em;color:var(--blue)!important;line-height:1.2;margin-bottom:20px}.price span{display:inline-block;font-size:18px;font-weight:normal;letter-spacing:0;margin-left:15px}.pricing .price{font-size:32px}.pricing .list li{font-size:15px;padding-top:14px;padding-bottom:14px}.pricing .card{padding:27px}.faq{max-width:940px}.faq details{border-bottom:1px solid var(--line);padding:22px 0}.faq summary{font-size:20px;font-weight:bold;padding-right:20px}.faq details p{margin:22px 0 10px;color:var(--muted);max-width:800px}.timeline article{display:grid;grid-template-columns:170px minmax(0,1fr);gap:30px;padding:28px 0;border-bottom:1px solid var(--line)}.timeline article>p{color:var(--blue);font-weight:bold;font-size:22px}.timeline h3{margin-bottom:10px}.timeline article:first-child{padding-top:0}.stack-links{display:flex;flex-direction:column;align-items:flex-start;gap:18px;margin-top:28px}.case-metric{font-size:clamp(45px,7vw,96px);color:var(--blue);font-weight:bold;letter-spacing:-.055em;line-height:1.15}.case-metric span{display:block;font-size:22px;font-weight:normal;letter-spacing:0;margin-top:18px}.case-photo{max-height:650px;width:100%;object-fit:contain}.payment-details{border:1px solid var(--line);padding:24px;background:white}.payment-details>summary{font-size:20px;font-weight:bold}.payment-details>p{margin:22px 0}.paywrap{background:white;max-width:100%;overflow:auto;margin-top:auto;padding-top:20px}.paywrap>*{max-width:100%}.paywrap iframe{max-width:100%}.payment-cards .card{padding:18px}.payment-cards h3{font-size:22px}.payment-cards p{margin-bottom:15px}
.form{max-width:640px;width:100%}.field{margin-bottom:25px}.field label{display:block;font-weight:bold;font-size:16px;margin-bottom:9px}.hint{margin:0 0 10px}.field input,.field select,.field textarea{display:block;width:100%;background:white;border:1px solid #8d929f;border-radius:3px;padding:13px 15px;color:var(--ink);font-size:16px;line-height:1.5;min-height:50px}.field textarea{resize:vertical}.field input::placeholder{color:#6d727d}.field input:focus,.field textarea:focus{border-color:var(--blue)}.check{display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:1.55;margin-bottom:18px}.check input{width:20px;height:20px;flex-shrink:0;margin:2px 0;accent-color:var(--blue)}.form>.button{margin-top:9px}.form-status:empty{display:none}.form-status{margin:20px 0;padding:14px;border:1px solid var(--blue);color:var(--blue)}.site-footer{padding:65px 0 40px;background:#17191f;color:#f4f3ef}.site-footer a{color:#e3e8ff}.footer-top{display:flex;justify-content:space-between;gap:40px}.footer-name{font-size:24px;font-weight:bold;margin-bottom:8px}.footer-top p:not(.footer-name){font-size:14px;color:#c0c3cb}.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:10px;font-size:14px}.footer-directions{display:flex;gap:30px;margin-top:35px}.footer-directions a{color:var(--lime);font-size:16px}.legal{border-top:1px solid #434650;margin-top:40px;padding-top:28px;font-size:12px;color:#c0c3cb}.legal-links{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:20px}.legal .fine{font-size:12px;color:#c0c3cb}
@media(min-width:1600px){.hero.blue h1{font-size:80px}}
@media(max-width:1100px){.wrap{width:calc(100% - 56px)}.header-row{gap:20px}.desktop-nav{gap:16px}.brand-name{display:none}.hero-grid.with-image{gap:40px;grid-template-columns:1.35fr 1fr}.cards{gap:16px}.card{padding:24px}.split{gap:40px}.directions .cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 0}.directions .card{padding:0 24px}.directions .card:nth-child(odd){border:none;padding-left:0}.directions .card:nth-child(even){padding-right:0}.directions .card h3{min-height:0}.steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px}.cta-row{grid-template-columns:1fr}.cta-row .actions{justify-content:flex-start}.price span{display:block;margin:12px 0 0}}
@media(max-width:780px){.wrap{width:calc(100% - 40px)}.header-row{min-height:72px;gap:12px}.brand-name{display:block;font-size:11px}.monogram{font-size:34px}.desktop-nav{display:none}.header-cta{margin-left:auto;font-size:12px!important;padding:10px 12px!important;min-height:40px!important}.mobile-menu{display:block;position:static}.mobile-menu summary{font-size:13px;padding:12px 0;min-height:44px}.mobile-menu[open] nav{position:absolute;top:100%;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 14px 20px #14141412;padding:16px 24px;display:flex;flex-direction:column}.mobile-menu .nav-link{padding:13px 0;font-size:17px}.hero,.hero.blue{padding:44px 0 55px}.hero-grid.with-image{grid-template-columns:1fr;gap:40px}.hero-photo{max-width:500px;max-height:500px}.hero.blue .hero-photo{width:calc(100% - 12px);box-shadow:12px 12px 0 -1px var(--lime)}.hero.blue h1{font-size:clamp(36px,8vw,64px)}.hero .lead{margin-top:24px}.eyebrow{font-size:11px;margin-bottom:20px}.section{padding:56px 0}h2{margin-bottom:28px}.cards{grid-template-columns:1fr}.card{padding:25px}.card .eyebrow{margin-bottom:18px}.card .text-link{padding-top:24px}.split{grid-template-columns:1fr;gap:32px}.split>.rounded{max-width:600px;max-height:none}.quotes{grid-template-columns:1fr;gap:35px}.quotes figure{padding-left:20px}.work-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.client-list{grid-template-columns:repeat(2,minmax(0,1fr))}.client-list li{font-size:19px;padding:20px 10px}.pricing{gap:18px}.price{margin-bottom:16px}.case-metric{font-size:clamp(40px,10vw,72px)}.case-metric span{font-size:20px}.timeline article{grid-template-columns:1fr;gap:14px}.timeline article>p{font-size:19px}.footer-top{flex-direction:column;gap:28px}.footer-directions{gap:20px;flex-wrap:wrap}.site-footer{padding:44px 0 30px}.legal-links{flex-direction:column;gap:12px}.breadcrumbs{padding-top:18px}.cta-row{gap:20px}.actions{gap:18px}.payment-details{padding:18px}.list li{font-size:17px}}
@media(max-width:420px){.wrap{width:calc(100% - 32px)}.brand-name{display:none}.header-row{gap:10px}.hero.blue h1{font-size:clamp(32px,8.9vw,39px)}.directions .cards{grid-template-columns:1fr;gap:28px}.directions .card,.directions .card:nth-child(even){padding:0;border:none;border-top:1px solid var(--line);padding-top:25px}.directions .card:first-child{border:none;padding-top:0}.steps{grid-template-columns:1fr;gap:30px}.steps li{padding-top:55px}.button{padding:14px 20px}.stats>div{grid-template-columns:95px 1fr;gap:15px}.stats strong{font-size:37px}.faq summary{font-size:18px}.footer-name{font-size:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{.site-header,.site-footer,.actions,.form,.payment-details{display:none}.wrap{width:100%}.section,.hero{padding:24px 0}.blue{background:white;color:black}.blue .eyebrow{color:black}h1{font-size:36px}h2{font-size:28px}.cards{grid-template-columns:1fr}.card{break-inside:avoid}a{color:black}}

.badge{display:inline-block;margin-top:22px;padding:7px 14px;background:var(--lime);color:var(--ink);border-radius:3px;font-size:14px;font-weight:bold;line-height:1.4}
.callout{max-width:860px;padding:32px;background:var(--white);border:1px solid var(--line);border-left:6px solid var(--blue)}
.callout .actions{margin-top:24px}
.video-frame{position:relative;max-width:920px;aspect-ratio:16/9;margin-top:24px;background:#000;border-radius:6px;overflow:hidden}
.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.video-frame+.fine{margin-top:14px}
.pricing .card .fine{margin-top:14px}
@media(max-width:780px){.callout{padding:22px}}
.lead.narrow+.cards{margin-top:36px}
#konsultaciya .price{margin-bottom:24px}

/* ===== v24: playful layer ===== */
:root{--pink:#ff4fa3;--orange:#ff8a3d;--lav:#e6e9ff;--cream:#fffdf3}
body{background:var(--cream)}
.site-header{background:rgba(255,253,243,.96);border-bottom:2px solid var(--ink)}
.section+.section{border-top:0}
.tinted{background:var(--lav)}
h1,h2{letter-spacing:-.055em}
h2::after{content:"";display:block;width:68px;height:9px;margin-top:16px;background:var(--pink);border-radius:9px}
.blue h2::after,.consult h2::after{background:var(--ink)}
.blue h2::after{background:var(--lime)}
.hero:not(.blue) h1{display:inline;background:linear-gradient(transparent 62%,var(--lime) 62%);-webkit-box-decoration-break:clone;box-decoration-break:clone}
.hero:not(.blue) .eyebrow,.hero:not(.blue) .lead{margin-top:0}
.hero:not(.blue) .lead{margin-top:30px}

/* eyebrow as sticker pill */
.eyebrow{display:inline-block;background:var(--lime);color:var(--ink);padding:6px 13px;border-radius:999px;border:1.5px solid var(--ink);letter-spacing:.12em;font-size:11px}
.blue .eyebrow{background:var(--lime);color:var(--ink)}
.card .eyebrow,.svc-panel .eyebrow,.consult .eyebrow{background:#fff}

/* buttons */
.button{border:2px solid var(--ink);border-radius:999px;box-shadow:4px 4px 0 var(--ink);color:#fff}
.button:hover{background:#1935d8;border-color:var(--ink);transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink)}
.button.lime{background:var(--lime);border-color:var(--ink);color:var(--ink)}
.button.lime:hover{background:#e8ff9a;border-color:var(--ink)}
.button.outline{background:transparent;border-color:#fff;color:#fff;box-shadow:none}
.button.outline:hover{background:#fff;color:var(--blue);transform:none;box-shadow:none}
.blue .button{box-shadow:4px 4px 0 var(--ink)}
.blue .button.outline{box-shadow:none}

/* cards */
.card{border:2px solid var(--ink);border-radius:22px;box-shadow:6px 6px 0 var(--ink);transition:transform .15s,box-shadow .15s}
.card:hover{transform:translate(-2px,-2px);box-shadow:9px 9px 0 var(--ink)}
.cards .card:nth-child(4n+2){background:var(--lime)}
.cards .card:nth-child(4n+3){background:#ffd3e9}
.cards .card:nth-child(4n+4){background:#d2dbff}
.card p{color:#2a2c33}
.pricing .card,.pricing .card:nth-child(n){background:#fff}
.pricing .card:first-child{box-shadow:6px 6px 0 var(--blue)}
.pricing .card:first-child:hover{box-shadow:9px 9px 0 var(--blue)}
.card .price{color:var(--blue)}

/* directions with illustrations */
.dir-img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px;border:2px solid var(--ink);margin-bottom:22px;transition:transform .2s}
.card:hover .dir-img{transform:rotate(-1.5deg) scale(1.02)}
.directions .cards{gap:22px}
.directions .cards .card:nth-child(n){border:2px solid var(--ink);border-radius:22px;padding:16px 16px 26px}
.directions .cards .card .eyebrow,.directions .cards .card h3,.directions .cards .card p,.directions .cards .card .text-link{margin-left:6px;margin-right:6px}
.directions .card h3{min-height:0}
.directions .card .eyebrow{margin-bottom:18px}

/* hero (blue) */
.hero.blue{background:radial-gradient(circle at 88% 12%,#6a80ff 0,rgba(106,128,255,0) 38%),var(--blue)}
.hero.blue:after{border:3px solid rgba(217,255,99,.55)}
.hero.blue h1{font-size:clamp(42px,6.2vw,92px)}
.photo-wrap{position:relative}
.photo-wrap:before{content:"";position:absolute;right:-48px;top:-44px;width:68%;aspect-ratio:1;border-radius:50%;background:var(--pink);z-index:0}
.photo-wrap .hero-photo{position:relative;z-index:1;border-radius:26px;border:3px solid var(--ink);box-shadow:12px 12px 0 var(--lime)}
.sticker{position:absolute;z-index:2;width:var(--s,118px);height:var(--s,118px);display:grid;place-items:center;text-align:center;background:var(--lime);color:var(--ink);border:2px solid var(--ink);border-radius:50%;font-size:13.5px;font-weight:bold;line-height:1.18;padding:8px;box-shadow:4px 4px 0 var(--ink)}
.sticker.s1{--s:116px;left:-30px;bottom:30px;transform:rotate(-12deg)}
.sticker.s2{--s:134px;right:-34px;top:42%;background:var(--orange);transform:rotate(9deg)}
.sticker.s3{--s:122px;left:-36px;top:22px;background:#fff;transform:rotate(8deg)}
.sticker.s4{--s:142px;right:12px;bottom:-40px;background:var(--pink);color:#fff;transform:rotate(-9deg);font-size:12.5px}

/* ticker */
.ticker-wrap{overflow:hidden;padding:18px 0;background:var(--cream)}
.ticker{background:var(--lime);border-block:2px solid var(--ink);transform:rotate(-1.2deg);overflow:hidden;white-space:nowrap;margin:0 -3vw}
.ticker-track{display:inline-flex;animation:ticker 32s linear infinite;will-change:transform}
.ticker span{font-size:20px;font-weight:bold;letter-spacing:.05em;text-transform:uppercase;padding:14px 0 14px 28px}
.ticker span:after{content:"✦";margin-left:28px;color:var(--blue)}
@keyframes ticker{to{transform:translateX(-50%)}}

/* sections that pop */
.callout{background:var(--lime);border:2px solid var(--ink);border-left:2px solid var(--ink);border-radius:26px;box-shadow:8px 8px 0 var(--ink)}
.callout .eyebrow{background:#fff}
.consult{background:var(--lime)}
.consult .list li{border-bottom-color:rgba(20,20,20,.35)}
.consult .price{color:var(--ink)!important}
.consult .fine{color:#2a2c33}
.video-frame{border:2px solid var(--ink);border-radius:22px;box-shadow:8px 8px 0 var(--ink)}
.pv-video{border-radius:22px}

/* collage of works */
.work-strip{grid-template-columns:1fr .8fr 1.25fr .8fr;gap:22px;align-items:center}
.work-strip figure{margin:0}
.work-strip img{border:2px solid var(--ink);border-radius:18px;box-shadow:6px 6px 0 var(--ink);aspect-ratio:auto;object-fit:cover;transition:transform .2s}
.work-strip figure:nth-child(1) img{transform:rotate(-2.2deg)}
.work-strip figure:nth-child(2) img{transform:rotate(1.8deg)}
.work-strip figure:nth-child(3) img{transform:rotate(-1deg)}
.work-strip figure:nth-child(4) img{transform:rotate(2.2deg)}
.work-strip img:hover{transform:rotate(0) scale(1.03)}

/* client logos */
.logo-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;list-style:none;margin:0;padding:0}
.logo-grid li{display:flex;align-items:center;justify-content:center;height:100px;padding:16px;background:#fff;border:2px solid var(--ink);border-radius:18px;transition:transform .15s,box-shadow .15s}
.logo-grid li:hover{transform:rotate(-2deg) scale(1.04);box-shadow:5px 5px 0 var(--ink)}
.logo-grid img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}

/* business service blocks */
.svc-list{display:grid;gap:34px}
.svc{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:44px;align-items:start;padding:40px 0 10px;border-top:2px solid var(--ink)}
.svc:first-child{border-top:0;padding-top:0}
.svc-num{font-size:clamp(64px,8vw,116px);font-weight:bold;line-height:.9;letter-spacing:-.07em;color:var(--blue);margin-bottom:10px}
.svc h3{font-size:clamp(26px,2.8vw,38px)}
.svc .lead{margin-bottom:18px}
.svc-main>p:not(.lead):not(.svc-num){max-width:620px}
.svc-main .text-link{display:inline-block;margin-top:10px}
.svc-panel{background:#fff;border:2px solid var(--ink);border-radius:22px;box-shadow:6px 6px 0 var(--ink);padding:28px}
.svc:nth-child(even) .svc-panel{background:#fff7d1}
.svc-panel .eyebrow{margin-bottom:12px}
.svc-panel .list li{font-size:17px;padding:13px 0 13px 28px}
.svc-panel>p:last-child{margin-top:4px;font-weight:bold}
.mini-quote{margin:22px 0 0;padding:18px 20px;background:var(--lime);border:2px solid var(--ink);border-radius:18px;box-shadow:4px 4px 0 var(--ink)}
.mini-quote blockquote{margin:0;font-size:18px;line-height:1.5}
.mini-quote figcaption{margin-top:10px;font-size:13px;color:#2a2c33}

/* quotes and misc */
.quotes figure{border-left:6px solid var(--pink);background:#fff;padding:22px 26px;border-radius:0 18px 18px 0}
.stats strong{color:var(--blue)}
.client-list li{border-bottom:2px solid var(--ink)}
.faq details{border-bottom:2px solid var(--ink)}
.site-footer{border-top:2px solid var(--ink)}

@media(max-width:1100px){
  .logo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .work-strip{grid-template-columns:1fr 1fr}
  .directions .cards .card:nth-child(n){padding:16px 16px 26px}
  .svc{grid-template-columns:1fr}
}
@media(max-width:780px){
  .logo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .logo-grid li{height:80px;padding:12px}
  .card,.svc-panel{box-shadow:4px 4px 0 var(--ink)}
  .work-strip figure img{transform:none!important}
  .ticker span{font-size:16px}
  .sticker{width:92px;height:92px;font-size:12px;left:-8px}
  .photo-wrap:before{right:-10px;top:-10px}
  .callout{box-shadow:5px 5px 0 var(--ink)}
}
@media(max-width:420px){.logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.work-strip{gap:14px}}
@media(prefers-reduced-motion:reduce){.ticker-track{animation:none}.card,.button,.dir-img,.work-strip img,.logo-grid li{transition:none}}
@media print{.ticker-wrap,.sticker{display:none}}

.svc-panel .list+.eyebrow{margin-top:22px}

/* v25 additions */
.timeline article{align-items:start}
.tl-photo{margin:22px 0 0}
.tl-photo img{border:2px solid var(--ink);border-radius:18px;box-shadow:6px 6px 0 var(--ink)}
.tl-photo.wide{max-width:560px}
.tl-photo.small{max-width:210px}
.tl-photo.small img{transform:rotate(-2.5deg)}
.tl-photo figcaption{margin-top:12px;font-size:13px;color:var(--muted)}
.story .lead{margin-bottom:20px}
.story p+p{margin-top:1em}
.kite-collage{display:grid;grid-template-columns:1fr 1.15fr;grid-template-rows:auto auto;gap:16px;align-items:start}
.kite-collage img{width:100%;height:100%;object-fit:cover;border:2px solid var(--ink);border-radius:18px;box-shadow:5px 5px 0 var(--ink)}
.kite-collage .k1{grid-row:1/3;transform:rotate(-2deg)}
.kite-collage .k2{transform:rotate(1.6deg)}
.kite-collage .k3{transform:rotate(-1.2deg)}
.contact-media{display:flex;align-items:center;gap:28px;margin-top:34px;flex-wrap:wrap}
.contact-portrait{width:190px;height:190px;border-radius:50%;object-fit:cover;border:4px solid var(--blue);box-shadow:0 0 0 5px var(--lime),6px 6px 0 5px var(--ink)}
.qr-link{display:flex;flex-direction:column;align-items:center;gap:10px;text-decoration:none}
.contact-qr{width:150px;height:auto;border-radius:0}
@media(max-width:1100px){.sticker.s2{right:-12px}.sticker.s3,.sticker.s1{left:-12px}}
@media(max-width:780px){
 .sticker{font-size:10.5px;padding:5px}
 .sticker.s1{--s:88px;left:-6px;bottom:20px}
 .sticker.s2{--s:98px;right:-6px;top:38%}
 .sticker.s3{--s:92px;left:-6px;top:10px}
 .sticker.s4{--s:104px;right:4px;bottom:-30px;font-size:10px}
 .kite-collage{grid-template-columns:1fr 1fr}
 .kite-collage img{transform:none!important}
 .tl-photo img{transform:none!important}
}

/* v26: stickers in a tidy row */
.stickers{position:relative;z-index:3;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:-48px 14px 0}
.stickers .sticker{position:static;left:auto;right:auto;top:auto;bottom:auto;width:auto;height:auto;aspect-ratio:1;padding:6px;font-size:clamp(10.5px,.92vw,13px);line-height:1.15;box-shadow:3px 3px 0 var(--ink)}
.stickers .sticker.s1{background:var(--lime);color:var(--ink);transform:rotate(-5deg)}
.stickers .sticker.s2{background:var(--orange);color:var(--ink);transform:rotate(4deg)}
.stickers .sticker.s3{background:#fff;color:var(--ink);transform:rotate(-3deg)}
.stickers .sticker.s4{background:var(--pink);color:#fff;transform:rotate(5deg)}
@media(max-width:780px){
 .stickers{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 4px 0}
 .stickers .sticker{font-size:14px;padding:10px}
}
.kite-collage.compact{max-width:560px;margin-top:22px}
/* v26b: roomier circles */
.stickers{margin:-50px -26px 0;gap:8px}
.stickers .sticker{white-space:nowrap;padding:0;font-size:clamp(10px,.82vw,12.5px);line-height:1.2}
@media(max-width:1100px){.stickers{margin:-46px -12px 0}}
@media(max-width:780px){.stickers{margin:22px 0 0;gap:12px}.stickers .sticker{font-size:14px}}
@media(max-width:780px){.stickers{max-width:320px;margin-left:auto;margin-right:auto}}
.kite-collage.compact+p{margin-top:20px}
/* v27: eyebrow above inline h1 must sit on its own line */
.hero:not(.blue) .eyebrow{display:table;margin-bottom:24px}

/* ===== v28: poster style (refs: flat colour fields, giant caps) ===== */
@font-face{font-family:"Unbounded";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/fonts/unbounded-cyrillic-wght-normal.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Unbounded";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/fonts/unbounded-latin-wght-normal.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Onest";font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fonts/onest-cyrillic-wght-normal.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Onest";font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fonts/onest-latin-wght-normal.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--cream:#f4f0e8;--lime:#ecff4f;--purple:#8a22f5;--magenta:#e93bd6;--red:#e8333f;--pink:#e93bd6;--lav:#e6e9ff}
body{font-family:"Onest",Arial,Helvetica,sans-serif;background:var(--cream)}
h1,h2,h3,.eyebrow,.button,.price,.sticker,.ticker span,.case-metric,.svc-num,.stats strong,.monogram{font-family:"Unbounded","Onest",Arial,sans-serif}
.site-header{background:rgba(244,240,232,.96);border-bottom:0}
.site-footer{border-top:0}

/* type */
h1{font-weight:800;text-transform:uppercase;font-size:clamp(34px,6.4vw,96px);line-height:.98;letter-spacing:-.035em;color:var(--blue)}
h2{font-weight:800;text-transform:uppercase;font-size:clamp(28px,4.3vw,64px);line-height:1.02;letter-spacing:-.035em;max-width:1100px;color:var(--blue);margin-bottom:40px}
h2.h-long{font-size:clamp(24px,3.1vw,46px);line-height:1.08}
h3{font-weight:700;font-size:clamp(19px,1.9vw,27px);line-height:1.18;letter-spacing:-.015em}
h2::after{display:none}
.lead{font-size:clamp(19px,1.8vw,24px);line-height:1.45;letter-spacing:-.01em}
.eyebrow{background:none;border:0;padding:0;border-radius:0;color:var(--blue);font-weight:600;font-size:11px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:22px}
.hero:not(.blue) h1{display:block;background:none}

/* buttons: flat pills */
.button{border:0;border-radius:999px;box-shadow:none;font-size:13px;font-weight:700;letter-spacing:.01em;padding:17px 28px;color:#fff;background:#2b4bff}
.button:hover{background:#1935d8;transform:translateY(-2px);box-shadow:none}
.button.lime{background:var(--lime);color:#141414}
.button.lime:hover{background:#f4ff93}
.button.outline{background:transparent;border:2px solid #fff;color:#fff}
.blue .button,.blue .button.outline{box-shadow:none}
.text-link{font-weight:600}

/* section colour fields */
main>.section,main>.hero{background:var(--cream)}
main>section.tinted:nth-of-type(odd){background:var(--lime);--blue:#141414}
main>section.tinted:nth-of-type(even){background:var(--purple);--ink:#fff;--blue:var(--lime);--line:rgba(255,255,255,.3);color:#fff}
main>section.tinted:nth-of-type(even) .button{background:var(--lime);color:#141414}
main>section.tinted:nth-of-type(even) .fine,main>section.tinted:nth-of-type(even) .hint{color:rgba(255,255,255,.78)}
main>section.consult.tinted{background:var(--lime);--ink:#141414;--blue:#2b4bff;--line:rgba(20,20,20,.3);color:#141414}
main>section.blue{background:#2b4bff;color:#fff;--blue:#2b4bff}
.blue h2{color:var(--lime)}
.blue .eyebrow{color:var(--lime)}
.blue .button:not(.lime):not(.outline){background:var(--lime);color:#141414}

/* cards reset inside coloured fields */
.card,.svc-panel,.quotes figure,.mini-quote,.paywrap{--ink:#141414;--blue:#2b4bff;--line:#d9d6cd;color:#141414}
.card{border:0;border-radius:28px;box-shadow:none;background:#fff;padding:32px}
.card:hover{transform:translateY(-3px);box-shadow:none}
.cards .card:nth-child(4n+2){background:var(--lime)}
.cards .card:nth-child(4n+3){background:#f6c2f0}
.cards .card:nth-child(4n+4){background:#d6dcff}
main>section.tinted .cards .card:nth-child(n){background:#fff}
.card .eyebrow{background:none;border:0;padding:0;color:#141414;opacity:.7;margin-bottom:22px}
.card h3,.card h3 a{color:#141414}
.card p{color:#2a2c33}
.pricing .card:first-child{box-shadow:none;outline:3px solid #2b4bff;outline-offset:-3px}
.svc-panel{border:0;border-radius:28px;box-shadow:none}
.svc:nth-child(even) .svc-panel{background:#fff}
.svc{border-top:0;padding:30px 0 10px}
.svc-num{color:var(--lime);-webkit-text-stroke:0}
main>section.tinted:nth-of-type(odd) .svc-num{color:#fff}
.mini-quote{border:0;box-shadow:none;border-radius:22px;background:var(--lime)}
.quotes figure{border:0;border-radius:28px;background:#fff;padding:30px 32px}
.quotes blockquote{font-size:clamp(18px,1.8vw,23px)}
.callout{background:var(--lime);border:0;box-shadow:none;border-radius:32px;color:#141414;--blue:#141414}
.callout .eyebrow{background:none;color:#141414}
.consult .price{color:#141414!important}
.consult .paywrap{background:#fff;border-radius:20px;padding:18px}
.logo-grid li{border:0;border-radius:22px;background:#fff}
.logo-grid li:hover{box-shadow:none;transform:translateY(-4px) rotate(-1deg)}
.work-strip img,.kite-collage img,.tl-photo img,.video-frame{border:0;box-shadow:none;border-radius:24px}
.video-frame{box-shadow:none}
.dir-img{border:0;border-radius:18px}
.contact-portrait{box-shadow:0 0 0 5px var(--lime);border:4px solid #2b4bff}

/* hero themes */
main[data-theme=lime]>.hero{background:var(--lime);--blue:#141414}
main[data-theme=blue]>.hero{background:#2b4bff;--ink:#fff;--blue:var(--lime);color:#fff}
main[data-theme=purple]>.hero{background:var(--purple);--ink:#fff;--blue:var(--lime);color:#fff}
main[data-theme=magenta]>.hero{background:var(--magenta);--ink:#141414;--blue:var(--lime);color:#141414}
main[data-theme=red]>.hero{background:var(--cream);--blue:var(--red)}
main[data-theme=blue]>.hero .button,main[data-theme=purple]>.hero .button,main[data-theme=magenta]>.hero .button{background:var(--lime);color:#141414}
main[data-theme=magenta]>.hero .eyebrow{color:#141414}
main[data-theme=lime]>.hero .button{background:#141414;color:var(--lime)}
.hero:not(.blue){padding:72px 0 88px}
@media(min-width:1100px){
 .hero:not(.blue) .wrap{position:relative}
 .hero:not(.blue) .eyebrow{position:absolute;left:-34px;top:6px;writing-mode:vertical-rl;transform:rotate(180deg);margin:0;white-space:nowrap}
}

/* home hero + directions + ticker */
.hero.blue{background:#2b4bff;color:#fff}
.hero.blue h1{color:#fff;font-size:clamp(30px,4.6vw,66px);line-height:1}
.hero.blue .eyebrow{color:var(--lime)}
.hero.blue .lead{font-weight:600}
.hero.blue .button.lime{background:var(--lime);color:#141414}
.photo-wrap:before{background:var(--magenta)}
.photo-wrap .hero-photo{border:0;border-radius:30px;box-shadow:none}
.stickers .sticker{box-shadow:none;border:0}
.stickers .sticker.s2{background:var(--purple);color:#fff}
.stickers .sticker.s4{background:var(--magenta);color:#141414}
.ticker{background:var(--lime);border:0}
.ticker span{color:#141414;font-weight:800;font-size:19px}
.ticker span:after{color:var(--purple)}
.ticker-wrap{background:var(--cream)}
.directions .cards .card:nth-child(n){border:0;border-radius:30px}
.card.dir-brand{background:var(--lime)}
.card.dir-business{background:#2b4bff;color:#fff}
.card.dir-human{background:var(--purple);color:#fff}
.card.dir-environment{background:var(--magenta)}
.card.dir-business h3,.card.dir-business h3 a,.card.dir-business p,.card.dir-business .eyebrow,.card.dir-human h3,.card.dir-human h3 a,.card.dir-human p,.card.dir-human .eyebrow{color:#fff}
.card.dir-business .text-link,.card.dir-human .text-link{color:var(--lime)}
.card.dir-brand .text-link,.card.dir-environment .text-link{color:#141414}
main[data-theme=home]>section:nth-of-type(3){background:var(--lime);--blue:#141414}
main[data-theme=home]>section:nth-of-type(4){background:var(--purple);--ink:#fff;--blue:var(--lime);--line:rgba(255,255,255,.3);color:#fff}
main[data-theme=home]>section:nth-of-type(6){background:var(--magenta);--ink:#141414;--blue:var(--lime);color:#141414}
main[data-theme=home]>section:nth-of-type(6) .eyebrow{color:#141414}
main[data-theme=home]>section:nth-of-type(4) .card:nth-child(n){background:#fff}

/* footer */
.site-footer{background:#141414;color:#f4f0e8}
.site-footer a,.site-footer .text-link{color:var(--lime)}
.site-footer .footer-name{color:#fff}
.site-footer .fine,.site-footer .legal p{color:#b9b6ad}

@media(max-width:780px){
 h1{font-size:clamp(30px,10vw,52px)}
 h2{font-size:clamp(26px,8vw,40px)}
 .card{padding:26px}
 .hero:not(.blue){padding:48px 0 60px}
}
/* v28 fixes */
.eyebrow,.blue .eyebrow,.card .eyebrow,.svc-panel .eyebrow,.consult .eyebrow,.callout .eyebrow{background:none;border:0;padding:0;border-radius:0}
.blue .eyebrow{color:var(--lime)}
.directions .cards .card.dir-brand{background:var(--lime);color:#141414}
.directions .cards .card.dir-business{background:#2b4bff;color:#fff}
.directions .cards .card.dir-human{background:var(--purple);color:#fff}
.directions .cards .card.dir-environment{background:var(--magenta);color:#141414}
.directions .cards .card.dir-business h3,.directions .cards .card.dir-business h3 a,.directions .cards .card.dir-business p,.directions .cards .card.dir-business .eyebrow,.directions .cards .card.dir-human h3,.directions .cards .card.dir-human h3 a,.directions .cards .card.dir-human p,.directions .cards .card.dir-human .eyebrow{color:#fff}
.directions .cards .card.dir-business .text-link,.directions .cards .card.dir-human .text-link{color:var(--lime)}
.directions .cards .card.dir-brand h3 a,.directions .cards .card.dir-environment h3 a,.directions .cards .card.dir-brand .text-link,.directions .cards .card.dir-environment .text-link{color:#141414}
/* v28 type safety */
h1,h2{overflow-wrap:break-word;word-break:normal}
.hero-grid.with-image h1{font-size:clamp(26px,3.4vw,50px);line-height:1.02}
@media(max-width:780px){
 h1,.hero.blue h1,.hero-grid.with-image h1{font-size:clamp(22px,7.4vw,40px)}
 h2{font-size:clamp(22px,6.6vw,34px)}
 h2.h-long{font-size:clamp(20px,5.6vw,28px)}
 .case-metric{font-size:clamp(40px,14vw,72px)}
}
main[data-theme=lime]>.hero .stickers .sticker.s1{background:#141414;color:var(--lime)}
main[data-theme=lime]>.hero .photo-wrap:before{background:var(--magenta)}
