/* EДИНИТ / Graphite. Visual system shared by all public pages. */
:root{
 --ink:#f2f4ef;--muted:#a5afad;--green:#d4f873;--lime:#d4f873;
 --dark:#0b1113;--paper:#0b1012;--soft:#11191c;--line:#2b3539;
 --radius:12px;color-scheme:dark;
}
html{background:var(--paper);scrollbar-color:#58634f #101719}
body{background:radial-gradient(ellipse 55% 650px at 85% 5%,#23372c55,transparent 85%),var(--paper)}
body:before{content:'';position:fixed;inset:0;pointer-events:none;z-index:-1;background:linear-gradient(90deg,#ffffff02 1px,transparent 1px);background-size:120px 100%}
a,button,summary{touch-action:manipulation}
a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:var(--lime)}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:var(--lime)}
::selection{background:var(--lime);color:#111b13}
h1,h2{font-weight:500;letter-spacing:-.055em}
h2{line-height:1.1}
.eyebrow{color:var(--lime);font-size:10px;letter-spacing:.13em;display:flex;align-items:center;gap:12px}
.eyebrow:before{content:'';width:6px;height:6px;border-radius:1px;background:currentColor;flex:none;box-shadow:0 0 15px #d4f87330}
.text-link{border-color:#738b5666;transition:color .25s,border-color .25s}
.text-link:hover{color:var(--lime);border-color:var(--lime)}
.button{border-radius:8px;color:#121b13;background:var(--lime);padding:18px 23px;box-shadow:0 0 0 0 #d4f87300;transition:background .25s,transform .25s,box-shadow .25s}
.button svg{width:21px;transition:transform .25s}
.button:hover{background:#e1ff95;box-shadow:0 5px 30px #c5f26f20;transform:translateY(-2px)}
.button:hover svg{transform:translateX(4px)}
.button-small{padding:12px 17px}
.icon-button{border-color:#45504f;color:var(--ink);background:#ffffff04}
.topline{background:#080d0f;color:#9da9a5;border-bottom:1px solid #ffffff08;font-size:10px}
.topline>.wrap{min-height:31px}
.topline span:first-child:before{content:'';display:inline-block;width:5px;height:5px;background:var(--lime);border-radius:50%;margin:0 9px 1px 0}
.site-header{background:#0c1214e8;border-bottom:1px solid #ffffff16;backdrop-filter:blur(20px)}
.header-inner{height:88px;gap:28px}
.brand img{box-shadow:0 0 30px #c4f76b12}
.brand b{font-size:23px;letter-spacing:.045em}
.brand small{color:#a9b5ae;font-size:8px;letter-spacing:.09em}
.desktop-nav{gap:25px}
.desktop-nav a{color:#b8c1be;font-size:12px;transition:color .2s}
.desktop-nav a:hover,.desktop-nav a[aria-current]{color:#fff}
.desktop-nav a:after{background:var(--lime);height:1px;bottom:-12px}
.header-phone{font-size:12px}
.reading-progress{background:var(--lime);box-shadow:0 0 13px #d4f87377}
.hero{background:#0c1416;min-height:620px;height:calc(100svh - 120px);max-height:960px}
.hero-shade{background:linear-gradient(90deg,#060c10ed 0%,#091013b0 38%,#0a10132b 78%),linear-gradient(0deg,#0b1012ed,transparent 45%)}
.hero:before{content:'';position:absolute;pointer-events:none;inset:28px;z-index:0;border:1px solid #f0ffef15;clip-path:polygon(0 0,100% 0,100% 100%,0 100%,0 99%,99.9% 99%,99.9% .1%,.1% .1%,.1% 99%,0 99%)}
.hero:after{content:'';pointer-events:none;position:absolute;right:5%;top:13%;height:105px;width:105px;border-top:1px solid #e0ff9566;border-right:1px solid #e0ff9566;opacity:.6}
.hero-copy{position:relative;z-index:1;padding-top:clamp(85px,11vh,140px)}
.hero h1{font-size:clamp(54px,5.7vw,88px);max-width:1120px;font-weight:500;line-height:1.07;letter-spacing:-.06em;text-shadow:0 4px 40px #0003}
.hero h1 span{color:var(--lime)}
.hero .eyebrow{font-size:10px;letter-spacing:.14em;margin-bottom:29px}
.hero-intro{font-size:16px;color:#c5cdca;max-width:650px;margin-top:28px}
.hero-actions{margin-top:34px}
.hero-link{border-bottom:1px solid #ffffff40;padding-bottom:10px;transition:border-color .3s,color .3s}
.hero-link:hover{color:var(--lime);border-color:var(--lime)}
.hero-bottom{bottom:65px;z-index:1}
.hero-caption{border-left:1px solid var(--lime);padding-left:17px}
.hero-caption span{font-size:9px}.hero-caption p{font-size:12px;color:#c5ceca}
.hero-pause{background:#0b111359;border-color:#ffffff45;backdrop-filter:blur(8px);width:42px;height:42px}
.audience-bar{background:#151e20e8;border-color:#ffffff1f;border-radius:12px;overflow:hidden;backdrop-filter:blur(20px);box-shadow:0 25px 80px #0003;margin-top:-24px}
.audience-bar>a{padding:28px 32px}
.audience-bar>a:hover{background:#25322b}
.audience-bar span{color:#a3b597;font-size:10px}
.audience-bar strong{font-size:17px;color:#edf1e9}
.audience-bar svg{color:var(--lime);width:21px}
.section{padding-block:110px}
.section-head{margin-bottom:46px}
.section-head h2{font-size:clamp(36px,3.9vw,58px)}
.section-intro{max-width:340px}.section-intro p{font-size:14px}
.soft{background:linear-gradient(130deg,#141e20,#101719 65%);border-block:1px solid #ffffff0b}
.service-grid{gap:23px}
.service-card{border:1px solid #ffffff17;border-radius:14px;overflow:hidden;background:radial-gradient(500px circle at var(--pointer-x,50%) var(--pointer-y,0%),#c5f87809,transparent 70%),#151d20;transition:border-color .35s,box-shadow .35s,transform .35s;position:relative}
.service-photo{border-radius:0;margin:7px 7px 0;aspect-ratio:1.55;background:#192125;isolation:isolate}
.service-photo:after,.project-photo:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#09101260,transparent 55%);border:1px solid #ffffff0d;border-radius:inherit}
.service-photo img{border-radius:8px}
.round-arrow{width:38px;height:38px;background:#111a1ebf;border:1px solid #ffffff50;backdrop-filter:blur(10px);color:#fff;right:13px;bottom:13px;z-index:1}
.round-arrow svg{width:20px}
.service-card:hover{border-color:#d4f87370;box-shadow:0 18px 45px #0003;transform:translateY(-5px)}
.service-card:hover .round-arrow,.project-card:hover .round-arrow{color:#142016;background:var(--lime);border-color:var(--lime)}
.service-card-copy{padding:25px 24px 29px 52px;min-height:224px}
.card-number{top:29px;left:22px;font-family:Consolas,monospace;color:#b7c592;font-size:10px}
.service-card h3{font-size:23px;letter-spacing:-.04em;margin-bottom:16px;color:#f0f3ed}
.service-card p{font-size:13px;color:#abb5b0;line-height:1.7}
.catalogue .service-grid{row-gap:23px}
.catalogue{padding-top:0}
.catalogue .service-card:last-child{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:0}
.catalogue .service-card:last-child .service-photo{margin:7px;aspect-ratio:1.9}
.catalogue .service-card:last-child .service-card-copy{padding:30px 50px 30px 68px;min-height:auto}
.catalogue .service-card:last-child .card-number{left:35px;top:34px}
.catalogue .service-card:last-child h3{font-size:32px;max-width:370px}
.catalogue .service-card:last-child p{max-width:420px}
.consult-card{border:1px solid #788c4766;background:radial-gradient(ellipse at 100% 0,#63812e55,transparent 65%),linear-gradient(135deg,#202c24,#142022);border-radius:14px;min-height:340px;overflow:hidden;padding:30px 27px;transition:border-color .3s,transform .3s}
.consult-card:after{content:'';position:absolute;right:-75px;bottom:40px;width:220px;height:220px;border:1px solid #d4f87317;border-radius:50%;box-shadow:0 0 0 30px #d4f87304,0 0 0 60px #d4f87303;pointer-events:none}
.consult-card h3{color:var(--lime);font-size:42px;font-weight:500;letter-spacing:-.055em}
.consult-card>p:not(.eyebrow){color:#c5cdbf}.consult-card .round-arrow{color:#142016}
.consult-card:hover{border-color:var(--lime);transform:translateY(-5px)}
.internet-strip{background:#182223;border:1px solid var(--line);border-left:2px solid var(--lime);border-radius:8px}
.internet-strip svg{color:var(--lime)}
.project-grid{gap:48px 30px}
.project-photo{border-radius:12px;aspect-ratio:1.65;box-shadow:0 20px 40px #0002}
.project-card .eyebrow{color:#b9d394;letter-spacing:.08em}
.project-card h3{color:#f0f3ed;font-weight:500}
.project-card .text-link{color:var(--lime);font-size:12px}
.project-card>a:hover h3{color:#d4f873}
.photo-label{color:#d7e0d7;background:#10191dcc;border:1px solid #ffffff25;backdrop-filter:blur(12px)}
.photo-figure img{border:1px solid #ffffff18;border-radius:14px}
.photo-figure figcaption{color:#a3ada6;font-size:10px;padding-inline:3px}
.photo-figure figcaption span{color:#a3ada6}
.about-image{position:relative}
.about-image:before{content:'';position:absolute;inset:-12px 22px 32px -12px;border:1px solid #bada6b40;border-radius:16px;pointer-events:none;z-index:-1}
.about-split{gap:10%}.about-image>img{height:550px}
.name-mark{background:#253027;border:1px solid #d4f87340;color:var(--lime);border-radius:12px;font-family:Consolas,monospace}
.process-section{border-color:#ffffff13}
.process-list{gap:18px}
.process-list>li{background:linear-gradient(135deg,#172123,#11191b);border:1px solid #ffffff16;border-radius:12px;padding:26px;position:relative}
.process-list>li:before{content:'';position:absolute;left:26px;right:26px;top:-1px;height:1px;background:linear-gradient(90deg,var(--lime),transparent);opacity:.7}
.process-list span{font-family:Consolas,monospace;color:var(--lime);font-size:12px;margin-bottom:44px}
.process-list h3{font-size:21px;line-height:1.22}.process-list p{font-size:12px;color:#acb7b1}
.contact-banner{background:radial-gradient(ellipse at 90% 100%,#536b2b42,transparent 60%),#151e20;border-block:1px solid #c5e28536;padding-block:85px;position:relative;overflow:hidden;isolation:isolate}
.contact-banner:before{content:'';pointer-events:none;position:absolute;z-index:-1;right:-150px;top:-260px;width:660px;height:660px;border:1px solid #d4f87314;border-radius:50%;box-shadow:0 0 0 70px #d4f87304,0 0 0 140px #d4f87303}
.contact-banner .eyebrow{font-size:10px}.contact-banner h2{font-size:clamp(40px,4.6vw,68px);max-width:900px}
.contact-banner p{color:#b4c2b8}.contact-banner .button{min-width:240px}
.site-footer{background:#090e10;border-top:1px solid #ffffff08;padding-top:65px}
.footer-top{border-color:#ffffff1c}.footer-top p{color:#a3ada6}
.footer-phone{font-size:22px}.footer-phone svg{color:var(--lime);transform:rotate(-40deg)}
.footer-columns{padding-block:45px}
.footer-columns a{color:#d0d8d2;transition:color .2s}
.footer-columns a:hover{color:var(--lime);text-decoration:none}
.footer-columns>div>p:first-child{color:#99ab8b;font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.footer-wordmark{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-top:20px;padding-top:35px;padding-bottom:28px;border-top:1px solid #ffffff15;overflow:hidden}
.footer-wordmark>b{font-size:clamp(70px,14.2vw,204px);font-weight:600;letter-spacing:-.07em;line-height:.9;color:#d6e3cb;opacity:.16}
.footer-wordmark>span{display:flex;align-items:center;gap:9px;font-size:9px;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;color:#a6b69c;padding-bottom:6px}
.footer-wordmark>span:before{content:'';width:6px;height:6px;background:var(--lime)}
.footer-bottom{font-size:10px;color:#8f9b96;border-color:#ffffff15}
.breadcrumbs{color:#a0ada6;font-size:10px;padding-top:28px}.breadcrumbs>span[aria-hidden]{color:#53615b}
.breadcrumbs a:hover{color:var(--lime)}
.page-intro{padding-block:65px 70px;position:relative}
.page-intro h1 span{color:#a5b8a0}
.page-intro h1{line-height:1.04}
.page-intro>p:last-child{color:#b1bcb5;font-size:16px}
.catalogue-intro{display:grid;grid-template-columns:1.05fr 1fr;gap:7%;align-items:center;padding-block:55px 65px}
.catalogue-intro h1{font-size:clamp(52px,5.3vw,78px)}
.catalogue-intro h1 span{color:var(--lime)}
.intro-copy>p:last-child{max-width:550px;color:#aab6af;font-size:15px;line-height:1.8;margin-top:25px}
.intro-visual{position:relative;min-width:0;padding:10px;border:1px solid #ffffff24;border-radius:14px;background:linear-gradient(135deg,#25322b55,#111a1f);box-shadow:0 30px 90px #0005}
.intro-visual>img{width:100%;height:350px;border-radius:7px;object-position:70% center;filter:brightness(.85)}
.intro-visual:after{content:'';pointer-events:none;position:absolute;inset:10px;border-radius:7px;background:linear-gradient(0deg,#071010bb,transparent 60%)}
.intro-visual:before{content:'';width:58px;height:58px;border-right:1px solid var(--lime);border-top:1px solid var(--lime);position:absolute;right:-7px;top:-7px;pointer-events:none}
.intro-visual-caption{position:absolute;z-index:1;bottom:30px;left:29px;right:29px;display:flex;gap:9px;align-items:center;flex-wrap:wrap}
.intro-visual-caption span{font-size:9px;letter-spacing:.02em;padding:7px 10px;border:1px solid #ffffff38;border-radius:4px;background:#0b1519a8;color:#e0e9dd;backdrop-filter:blur(12px)}
.intro-visual-caption span:first-child{border-color:#d4f87380;color:var(--lime)}
.catalogue-intro:after{content:'';position:absolute;z-index:-1;right:0;top:5%;width:50%;height:90%;background:radial-gradient(ellipse,#749e2b1c,transparent 65%);pointer-events:none}
.scenario-grid{gap:22px}.scenario-grid article{min-width:0;border:1px solid #ffffff19;padding:30px;border-radius:12px;background:#172022}
.scenario-grid article>span{font-family:Consolas,monospace;color:#c6d5b9;font-size:10px}.scenario-grid a{color:#d4e5be}
.service-hero{gap:6%;padding-block:60px}.service-hero h1{font-size:clamp(43px,4.7vw,70px)}
.service-hero .photo-figure{position:relative;padding:8px;border:1px solid #c6dd9b30;border-radius:16px;background:#1b2527;box-shadow:0 30px 80px #0004}
.service-hero .photo-figure img{border:0;border-radius:8px;height:480px;filter:brightness(.94)}
.service-hero .photo-figure:after{content:'';position:absolute;top:-7px;right:-7px;width:50px;height:50px;border-right:1px solid #d4f873bb;border-top:1px solid #d4f873bb;pointer-events:none}
.service-hero .photo-figure img.media-web,.service-hero .photo-figure img.media-automation{height:auto;aspect-ratio:16/9}
.service-tags{color:#b8c6af;gap:10px;font-size:9px;flex-wrap:wrap}
.service-tags span{padding:5px 9px;background:#1d2823;border:1px solid #5b734640;border-radius:4px}
.service-tags span+span:before{display:none}
.service-subnav{border:1px solid #ffffff1d;border-radius:8px;background:#141e20;padding:17px 23px;gap:30px;color:#bac6bf}
.service-subnav a:hover{color:var(--lime)}
.needs-grid{gap:25px}.needs-grid article{border-top:1px solid #758d4b70;padding-top:25px}.needs-grid span{color:#bad49a;font-family:Consolas,monospace}
.scope-list li{border-color:#34403e}.scope-list span{font-family:Consolas,monospace;color:#bed4a5}
.handover li svg{color:var(--lime)}
.cost-section{background:#cfe4a0;color:#17201a;border-block:1px solid #e6ffae;padding-block:70px}
.cost-section .eyebrow{color:#334926}.cost-section p,.cost-section .wrap>div>p:not(.eyebrow){color:#3d5039}
.cost-section .text-link{color:#1a2c1e;border-color:#57743b}
.faq summary{font-size:16px;transition:color .25s}.faq summary:hover,.faq details[open] summary{color:var(--lime)}
.faq summary span{color:var(--lime);font-size:25px}
.other-services{background:#11191b;border-top:1px solid #ffffff0c}
.other-services a{color:#d8e0d5;transition:color .2s,border-color .2s}.other-services a:hover{color:var(--lime);border-color:var(--lime)}
.other-services svg{color:var(--lime)}
.project-filters button{color:#b7c5bc;transition:color .2s,background .2s,border-color .2s}
.project-filters button:hover{color:#fff;border-color:#93ad72}
.project-filters button[aria-pressed=true]{background:var(--lime);color:#182218;border-color:var(--lime)}
.project-catalogue{padding-top:0}
.contact-layout{padding-top:0}
.credits-grid{padding-top:0}
.case-story aside>a{color:#d5e7c2}.scheme-section{background:linear-gradient(130deg,#182321,#11191b);border-block:1px solid #ffffff13}
.solution-scheme li{border-color:#7c9d55}.solution-scheme li:before{background:var(--lime);box-shadow:0 0 12px #d4f87355}
.solution-scheme strong{color:#e0e7da}.solution-scheme span{color:#b3c79b;font-family:Consolas,monospace}
.principles article{border-color:#77945177}.principles span{color:#b9d39d;font-family:Consolas,monospace}
.competence dt{color:#e3ecdc}.signature>a{color:var(--lime)}
.contact-number{color:var(--lime)}.contact-number svg{color:#8fa570}
.contact-emails strong{color:#e4ebdf}.contact-emails a:hover strong{color:var(--lime)}
.contact-form-shell{background:linear-gradient(145deg,#1c2929,#151e22);border:1px solid #60764b60;border-radius:14px;box-shadow:0 30px 70px #0003;padding:37px}
.contact-form-shell h2{font-size:33px}.contact-form-shell .eyebrow{font-size:9px}
.form-grid label{color:#c2cec4;font-size:11px}
.form-grid input,.form-grid select,.form-grid textarea{background:#0e171b;border:1px solid #40504b;border-radius:6px;color:#f1f6ed;font-size:13px;transition:border-color .2s,background .2s}
.form-grid input:hover,.form-grid select:hover,.form-grid textarea:hover{border-color:#799268}
.form-grid input::placeholder,.form-grid textarea::placeholder{color:#94a399}
.consent{color:#adbbb0}.consent input{accent-color:var(--lime)}.consent a{border-color:#849d68;color:#d5e5c7}
.form-status.is-error{color:#ffafa0}.form-status.is-success{color:#c8ed9c}
.inquiry-dialog{background:linear-gradient(145deg,#202d2d,#111b20);border:1px solid #74875a77;border-radius:14px;color:var(--ink);box-shadow:0 30px 160px #0009}
.inquiry-dialog::backdrop,.mobile-menu::backdrop{background:#02070bc9;backdrop-filter:blur(10px)}
.mobile-menu{background:radial-gradient(ellipse at 100% 0,#516b293b,transparent 55%),#10191c;border-left:1px solid #ffffff20;color:var(--ink)}
.menu-content>nav>a{font-size:34px}.menu-content>nav>a>svg{color:var(--lime)}
.menu-contact>a:first-child{color:var(--lime)}
.legal-note{border:1px solid var(--line);border-radius:8px}
.legal-content a{color:#d3e6c2}
.mobile-dock{background:#0e171bed;border-color:#48594288;box-shadow:0 -15px 35px #0003}
.mobile-dock>a{font-size:11px;min-height:45px;border-radius:7px}
.mobile-dock>a:first-child{border-color:#4b5a4a;color:#d5dfcf;background:#ffffff03}
.dock-request{background:var(--lime);color:#142016;font-weight:600}
.page-intro,.hero-copy{animation:intro-arrive .85s cubic-bezier(.2,.7,.2,1) both}
@keyframes intro-arrive{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:901px){
 .home-page .service-grid{gap:20px}
 .home-page .service-card-copy{padding:23px 20px 27px 43px;min-height:250px}
 .home-page .card-number{left:18px;top:27px;font-size:9px}
 .home-page .service-card h3{font-size:21px}.home-page .service-card p{font-size:12px}
 .home-page .service-photo{aspect-ratio:1.18}
}
@media(max-width:1180px){
 .header-inner{height:80px;gap:21px}.desktop-nav{gap:20px}.brand b{font-size:22px}
 .hero{height:calc(100svh - 112px)}.hero h1{font-size:67px}
 .catalogue-intro{gap:5%}.intro-visual>img{height:330px}
 .catalogue-intro h1{font-size:58px}.intro-visual-caption{left:23px;right:20px;bottom:26px;gap:6px}
 .intro-visual-caption span{font-size:8px;padding:7px 8px}
 .service-card-copy{padding-left:44px;padding-right:20px}.card-number{left:18px}
 .section{padding-block:90px}.process-list>li{padding:22px}.process-list h3{font-size:20px}
 .service-hero .photo-figure img{height:450px}.service-hero .photo-figure img.media-web,.service-hero .photo-figure img.media-automation{height:auto}
}
@media(max-width:900px){
 .header-inner{height:75px}.hero h1{font-size:60px}
 .catalogue-intro h1{font-size:50px}.intro-copy>p:last-child{font-size:13px}
 .intro-visual>img{height:330px}.intro-visual-caption{left:20px;right:20px}
 .catalogue .service-card:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}
 .catalogue .service-card:last-child .service-card-copy{padding:25px 24px 25px 48px}
 .catalogue .service-card:last-child .card-number{left:22px;top:29px}
 .catalogue .service-card:last-child h3{font-size:25px}
 .scenario-grid article{padding:23px}.scenario-grid h3{font-size:24px}
 .process-list>li{padding:26px}.service-hero h1{font-size:45px}
 .service-hero .photo-figure img{height:430px}
 .footer-wordmark>span{display:none}.footer-wordmark>b{font-size:17.5vw}
 .contact-form-shell{padding:28px}
}
@media(max-width:700px){
 .header-inner{height:75px;gap:13px}.brand b{font-size:23px}.brand small{font-size:7px;letter-spacing:.045em}
 .header-phone{font-size:10px}.brand img{width:35px;height:35px}
 .menu-toggle{border:1px solid #ffffff26;border-radius:7px;padding:9px;width:39px;height:39px;gap:6px}
 .menu-toggle span{width:19px;background:#e5efde}
 .hero{min-height:690px;height:calc(100svh - 75px);max-height:900px}
 .hero:before{inset:12px;border-color:#ffffff12}.hero:after{width:40px;height:40px;top:auto;bottom:140px;right:22px;opacity:.5}
 .hero-copy{padding-top:65px}.hero h1{font-size:clamp(40px,10.6vw,63px);line-height:1.1}
 .hero .eyebrow{font-size:8px;letter-spacing:.09em;gap:8px;margin-bottom:24px}
 .hero .eyebrow:before{width:4px;height:4px}
 .hero-intro{font-size:14px;max-width:330px;margin-top:23px;color:#d6ddd4}
 .hero-slides{inset:35% 0 0}
 .hero-slide:first-child img{object-position:83% center}.hero-slide:nth-child(2) img{object-position:58% center}.hero-slide:nth-child(3) img{object-position:65% center}
 .hero-shade{background:linear-gradient(180deg,#0b1012 27%,#0b1012ef 37%,#0b1012a3 53%,#0b101226 77%,#0b1012db 100%)}
 .hero-actions{gap:20px;margin-top:28px}.hero-actions .button{font-size:12px;padding:16px 19px}
 .hero-link{font-size:11px}.hero-bottom{bottom:70px;gap:12px}
 .hero-caption{padding-left:12px}.hero-caption p{font-size:9px;max-width:145px;color:#d1dccc}.hero-caption span{font-size:8px}
 .hero-controls{gap:9px}.hero-pause{width:30px;height:30px}
 .audience-bar{border-radius:10px;margin-top:-28px}
 .audience-bar>a{padding:19px 20px;gap:16px}.audience-bar span{font-size:9px}.audience-bar strong{font-size:12px}
 .section{padding-block:65px}.section-head h2{font-size:36px;line-height:1.1}.section-head{margin-bottom:30px}
 .section-intro p{font-size:13px}.eyebrow{font-size:9px;gap:9px}
 .service-grid,.catalogue .service-grid{gap:22px}
 .home-page .service-grid{gap:14px;scrollbar-color:#647449 #192225}
 .home-page .service-card,.home-page .consult-card{flex-basis:91%}
 .service-photo{aspect-ratio:1.48}.service-card-copy{padding:25px 24px 28px 49px;min-height:206px}
 .card-number{top:29px;left:21px}.service-card h3{font-size:24px}.service-card p{font-size:13px}
 .catalogue .service-card:last-child{display:block;grid-column:auto}
 .catalogue .service-card:last-child .service-photo{aspect-ratio:1.48;margin:7px 7px 0}
 .catalogue .service-card:last-child .service-card-copy{padding:25px 24px 28px 49px}
 .catalogue .service-card:last-child .card-number{left:21px;top:29px}.catalogue .service-card:last-child h3{font-size:24px}
 .home-page .consult-card{min-height:420px}.consult-card{padding:30px 26px}.consult-card h3{font-size:48px}
 .project-grid{gap:38px}.project-photo{aspect-ratio:1.45;border-radius:10px}.project-card h3{font-size:28px}
 .about-image>img{height:390px}.about-image:before{inset:-9px 20px 30px -8px}
 .photo-figure figcaption{font-size:9px}
 .process-list{gap:14px}.process-list>li{padding:22px 18px}.process-list h3{font-size:19px}.process-list p{font-size:11px}.process-list span{margin-bottom:30px}
 .process-list>li:before{left:18px;right:18px}
 .contact-banner{padding-block:58px}.contact-banner h2{font-size:41px}.contact-banner p{font-size:13px}
 .contact-banner .button{min-width:0;font-size:13px}.contact-banner:before{width:400px;height:400px;top:-200px;right:-250px}
 .site-footer{padding-top:45px}.footer-top{padding-bottom:30px}.footer-phone{font-size:23px}
 .footer-columns{padding-block:32px}.footer-bottom{font-size:9px;line-height:1.6}
 .footer-wordmark{margin-top:0;padding-block:20px 25px}.footer-wordmark>b{font-size:17.3vw}
 .breadcrumbs{font-size:9px;gap:9px}.page-intro{padding-block:40px 45px}
 .page-intro h1{font-size:clamp(40px,10.7vw,57px);line-height:1.08}
 .page-intro>p:last-child{font-size:14px}
 .catalogue-intro{display:flex;flex-direction:column;align-items:stretch;gap:30px;padding-block:38px 40px}
 .catalogue-intro h1{font-size:clamp(44px,11.5vw,64px);line-height:1.03}
 .intro-copy>p:last-child{font-size:13px;margin-top:22px;line-height:1.75;max-width:440px}
 .intro-visual{padding:6px;border-radius:10px;margin-right:6px}
 .intro-visual>img{height:auto;aspect-ratio:1.8;border-radius:5px;object-position:70% center}
 .intro-visual:after{inset:6px}.intro-visual:before{width:30px;height:30px;top:-5px;right:-5px}
 .intro-visual-caption{bottom:17px;left:18px;right:13px;gap:6px}
 .intro-visual-caption span{font-size:7px;padding:5px 7px}
 .catalogue{padding-top:0}.scenario-grid{gap:18px}.scenario-grid article{padding:27px}.scenario-grid h3{font-size:29px}
 .scenario-grid article>span{margin-bottom:25px}
 .service-hero{padding-block:35px 30px;gap:33px}.service-hero h1{font-size:clamp(40px,10.7vw,57px)}
 .service-hero-copy>p:not(.eyebrow){font-size:14px}.service-hero .photo-figure{padding:6px;border-radius:12px;margin-right:6px}
 .service-hero .photo-figure img{height:315px;border-radius:6px}
 .service-hero .photo-figure img.media-web,.service-hero .photo-figure img.media-automation{height:auto;aspect-ratio:16/9}
 .service-hero .photo-figure:after{width:35px;height:35px;right:-5px;top:-5px}
 .service-tags{font-size:8px;gap:7px}.service-tags span{padding:5px 7px}
 .service-subnav{border-inline:0;border-radius:0;font-size:10px;padding-inline:20px;gap:26px}
 .needs-grid article{padding-top:20px}.needs-grid h3{font-size:24px}.needs-grid span{margin-top:5px}
 .cost-section{padding-block:50px}.cost-section h2{font-size:34px}
 .faq summary{font-size:14px}.other-services{padding-block:45px}
 .case-intro h1{font-size:43px}.case-cover img,.about-cover img{border-inline:0;border-radius:0}
 .contact-form-shell{padding:28px 22px;border-radius:12px;margin-inline:0}
 .contact-form-shell h2{font-size:30px}.contact-form-shell .eyebrow{font-size:8px}
 .form-grid input,.form-grid select,.form-grid textarea{font-size:16px;min-height:49px}
 .form-grid input::placeholder,.form-grid textarea::placeholder{font-size:13px}
 .inquiry-dialog{padding:25px 22px;border-radius:14px 14px 0 0;width:100%;max-height:94svh}
 .inquiry-dialog h2{font-size:31px}
 .menu-content{padding:28px 24px 90px}.menu-content>nav>a{font-size:33px}
 .legal-intro h1{font-size:36px;overflow-wrap:anywhere}
}
@media(max-width:360px){
 .header-inner{height:69px;gap:9px}.brand{gap:8px}.brand b{font-size:21px}.brand img{width:32px;height:32px}
 .brand small{font-size:6px}.header-phone{font-size:9px}.menu-toggle{width:34px;height:35px;padding:7px}
 .hero{min-height:680px}.hero-copy{padding-top:57px}.hero h1{font-size:37px}.hero .eyebrow{font-size:7px}
 .hero-intro{font-size:13px}.hero-bottom{bottom:70px}.hero-caption p{max-width:125px;font-size:8px}
 .hero-controls{gap:7px}.slide-tabs button{width:24px}.hero-pause{width:26px;height:26px}
 .audience-bar>a{padding-inline:16px;gap:12px}.audience-bar strong{font-size:11px}
 .section-head h2{font-size:33px}.service-card-copy{padding-left:44px;padding-right:20px}.card-number{left:18px}
 .service-card h3,.catalogue .service-card:last-child h3{font-size:22px}
 .catalogue .service-card:last-child .service-card-copy{padding-left:44px;padding-right:20px}.catalogue .service-card:last-child .card-number{left:18px}
 .process-list{grid-template-columns:1fr}.process-list>li{padding:24px}.process-list h3{font-size:23px}.process-list p{font-size:13px}.process-list span{margin-bottom:25px}
 .catalogue-intro h1{font-size:41px}.intro-visual-caption{left:14px;right:10px;gap:4px}.intro-visual-caption span{font-size:6px;padding:5px}
 .service-hero h1{font-size:38px}.service-hero .photo-figure img{height:280px}
 .service-subnav{padding-inline:16px}.contact-form-shell{padding:26px 19px}.contact-form-shell h2{font-size:28px}
 .contact-number{font-size:48px}.inquiry-dialog h2{font-size:28px}.legal-intro h1{font-size:34px}
 .case-intro h1{font-size:38px}.footer-phone{font-size:22px}.menu-content>nav>a{font-size:30px}
}
@media(hover:hover) and (pointer:fine){.service-card:focus-visible{transform:translateY(-5px)}}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}
 .reveal.animate-on-scroll:not(.is-visible){opacity:1;transform:none}
 .service-card:hover,.consult-card:hover,.button:hover{transform:none}
}
