
:root{
  --ink:#071326;--muted:#657085;--line:#dfe5ec;--paper:#f7f8fa;--white:#fff;
  --accent:#00758f;--accent2:#0a5d73;--dark:#081c27;--soft:#edf7f9;
  --radius:28px;--shadow:0 24px 70px rgba(7,19,38,.08);--max:1480px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.55}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{width:min(calc(100% - 72px),var(--max));margin:auto}
.site-header{width:min(calc(100% - 72px),var(--max));margin:22px auto 0;min-height:112px;padding:20px 0;display:flex;align-items:center;justify-content:space-between;border:1px solid #e2e7ec;border-radius:22px;background:rgba(248,249,250,.96);box-shadow:0 12px 38px rgba(7,19,38,.055);position:relative;z-index:20}
.brand{display:flex;align-items:center;padding-left:4px}.brand img{width:min(300px,34vw);height:auto}.main-nav{display:flex;align-items:center;gap:34px;font-weight:700;font-size:15px}.main-nav a{transition:.2s}.main-nav a:hover,.main-nav a.active{color:var(--accent)}
.nav-cta,.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:14px 22px;font-weight:800;transition:.2s;border:1px solid transparent}.nav-cta,.btn-primary{background:var(--dark);color:white!important}.btn-primary:hover,.nav-cta:hover{transform:translateY(-2px);background:var(--accent2)}.btn-secondary{border-color:#cbd3dc;background:white}.btn-light{background:white;color:var(--dark)}.btn-outline-light{border-color:rgba(255,255,255,.4);color:white}
.nav-toggle{display:none;background:none;border:0;padding:10px}.nav-toggle span{display:block;width:28px;height:2px;background:var(--ink);margin:7px}
.hero,.page-hero{width:min(calc(100% - 72px),var(--max));margin:30px auto 0;display:grid;grid-template-columns:1.12fr .88fr;gap:46px;align-items:stretch}.hero-content,.page-hero-content{padding:72px 0 58px}.eyebrow,.section-kicker{font-size:13px;letter-spacing:.14em;text-transform:uppercase;font-weight:900;color:var(--accent);margin:0 0 18px}
h1,h2,h3,p{margin-top:0}h1{font-size:clamp(44px,4.8vw,76px);line-height:.98;letter-spacing:-.055em;max-width:980px;margin-bottom:28px}h2{font-size:clamp(36px,4vw,64px);line-height:1.02;letter-spacing:-.045em;margin-bottom:22px}h3{font-size:23px;line-height:1.15;letter-spacing:-.025em}.hero-lead,.lead{font-size:20px;color:var(--muted);max-width:780px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:34px 0}.proof-row{display:flex;gap:28px;flex-wrap:wrap;color:var(--muted);font-size:14px}.proof-row strong{color:var(--ink);font-size:20px}.hero-visual,.page-hero-visual{min-height:500px;border-radius:var(--radius);overflow:hidden;background:linear-gradient(145deg,#d8edf1,#0d4352);box-shadow:var(--shadow);position:relative}.hero-visual img,.page-hero-visual img{width:100%;height:100%;object-fit:cover}.visual-placeholder{height:100%;min-height:520px;padding:48px;display:flex;flex-direction:column;justify-content:flex-end;color:white;background:radial-gradient(circle at 25% 20%,rgba(255,255,255,.22),transparent 25%),linear-gradient(145deg,#006b85,#081c27 72%)}.visual-placeholder strong{font-size:42px;line-height:1}.visual-placeholder span{opacity:.8;margin-top:12px}
.origin,.split,.section,.problems,.clients,.cta,.stats,.trust-strip{width:min(calc(100% - 72px),var(--max));margin:30px auto}.origin{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;padding:70px 0}.origin p:last-child{font-size:22px;color:var(--muted);max-width:800px}
.problems,.card-grid,.pricing-grid,.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.problems article,.card,.price-card,.case-card{background:white;border:1px solid var(--line);border-radius:26px;padding:32px;box-shadow:0 12px 35px rgba(7,19,38,.035)}.problems span,.num{font-weight:900;color:var(--accent);font-size:13px}.problems p,.card p,.case-card p{color:var(--muted);margin-bottom:0}
.section{padding:82px 0}.section-heading{max-width:850px;margin-bottom:42px}.section-heading>p:last-child{font-size:18px;color:var(--muted)}.expertise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.expertise-card{background:white;border:1px solid var(--line);border-radius:26px;padding:28px}.icon-badge{width:52px;height:52px;border-radius:15px;background:var(--soft);display:grid;place-items:center;color:var(--accent);font-size:22px;font-weight:900;margin-bottom:22px}
.dark-section{background:var(--dark);color:white;width:100%;max-width:none;padding:90px max(36px,calc((100vw - var(--max))/2));}.dark-section .section-heading p,.dark-section p{color:#b9c8ce}.projects-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.project-card{background:#102a36;border-radius:26px;overflow:hidden}.project-card .project-visual{aspect-ratio:16/10;background:linear-gradient(145deg,#0b7285,#173442);display:flex;align-items:end;padding:25px;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:#d8f2f6}.project-card>div:last-child{padding:26px}
.method,.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}.method-visual,.split-visual{min-height:520px;border-radius:28px;background:linear-gradient(145deg,#e6f4f6,#0b596d);overflow:hidden}.steps{display:grid;gap:12px}.steps article{display:grid;grid-template-columns:50px 130px 1fr;gap:10px;padding:18px 0;border-bottom:1px solid var(--line)}.steps strong{color:var(--accent)}.steps span{font-weight:800}.steps p{color:var(--muted);margin:0}
.clients{padding:72px 0}.client-list{display:flex;flex-wrap:wrap;gap:12px}.client-list span{background:white;border:1px solid var(--line);padding:15px 20px;border-radius:999px;font-weight:800}
.cta{background:var(--accent2);color:white;border-radius:32px;padding:68px}.cta p{color:#d8e8ec;max-width:760px;font-size:18px}.cta .section-kicker{color:#8ed5e3}
.site-footer{width:min(calc(100% - 72px),var(--max));margin:35px auto;padding:34px 0 50px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;color:var(--muted)}.site-footer strong{color:var(--ink)}
.page-hero{grid-template-columns:1.15fr .85fr}.page-hero h1{font-size:clamp(44px,5vw,76px)}.page-hero-content{padding-right:25px}.breadcrumb{font-size:13px;color:var(--muted);margin-bottom:24px}.breadcrumb a{color:var(--accent)}
.band{background:var(--dark);color:white;padding:70px max(36px,calc((100vw - var(--max))/2));margin:50px 0}.band h2{max-width:900px}.band p{color:#bfd0d6;max-width:900px;font-size:19px}
.card-grid{width:min(calc(100% - 72px),var(--max));margin:30px auto 90px}.card h3{margin-top:12px}.card ul,.price-card ul{padding:0;list-style:none}.card li,.price-card li{padding:9px 0;border-bottom:1px solid var(--line);color:var(--muted)}.card li:before,.price-card li:before{content:"✓";color:var(--accent);font-weight:900;margin-right:10px}
.pricing{width:min(calc(100% - 72px),var(--max));margin:90px auto}.pricing-grid{align-items:stretch}.price-card{position:relative;display:flex;flex-direction:column}.price-card.featured{border:2px solid var(--accent);transform:translateY(-10px);box-shadow:var(--shadow)}.price-badge{position:absolute;top:-15px;right:24px;background:var(--accent);color:white;border-radius:999px;padding:8px 13px;font-size:12px;font-weight:900}.price{font-size:48px;font-weight:900;letter-spacing:-.04em}.price small{font-size:14px;color:var(--muted);font-weight:600}.price-card .btn{margin-top:auto}.fine{font-size:13px;color:var(--muted)}
.faq{width:min(calc(100% - 72px),1000px);margin:90px auto}.faq details{background:white;border:1px solid var(--line);border-radius:18px;padding:20px 24px;margin:10px 0}.faq summary{font-weight:800;cursor:pointer}.faq details p{color:var(--muted);margin:14px 0 0}
.form-wrap{width:min(calc(100% - 72px),1100px);margin:40px auto 90px;display:grid;grid-template-columns:.8fr 1.2fr;gap:40px}.contact-card,.contact-form{background:white;border:1px solid var(--line);border-radius:28px;padding:34px}.contact-form label{display:block;font-weight:800;margin:18px 0 7px}.contact-form input,.contact-form textarea,.contact-form select{width:100%;border:1px solid #cfd7df;border-radius:14px;padding:14px 15px;font:inherit;background:#fff}.contact-form textarea{min-height:160px}.status-page{min-height:65vh;display:grid;place-items:center;padding:70px 30px}.status-card{max-width:760px;background:white;border:1px solid var(--line);border-radius:30px;padding:60px;text-align:center;box-shadow:var(--shadow)}
@media(max-width:980px){.main-nav{display:none}.nav-toggle{display:block}.main-nav.open{display:flex;position:absolute;left:0;right:0;top:105px;background:white;padding:25px;flex-direction:column;align-items:flex-start;border-radius:0 0 20px 20px;box-shadow:var(--shadow)}.hero,.page-hero,.origin,.method,.split,.form-wrap{grid-template-columns:1fr}.hero-content,.page-hero-content{padding:45px 0 10px}.hero-visual,.page-hero-visual{min-height:380px}.problems,.expertise-grid,.projects-grid,.card-grid,.pricing-grid{grid-template-columns:1fr 1fr}.price-card.featured{transform:none}.origin{gap:20px}.steps article{grid-template-columns:40px 110px 1fr}}
@media(max-width:650px){.wrap,.site-header,.hero,.page-hero,.origin,.problems,.section,.clients,.cta,.site-footer,.card-grid,.pricing,.faq,.form-wrap{width:min(calc(100% - 32px),var(--max))}.site-header{min-height:82px;margin-top:10px}.brand img{width:210px;max-width:65vw}h1{font-size:44px}.hero-visual,.page-hero-visual{min-height:310px}.problems,.expertise-grid,.projects-grid,.card-grid,.pricing-grid{grid-template-columns:1fr}.section{padding:55px 0}.cta{padding:38px 28px}.site-footer{flex-direction:column}.proof-row{gap:15px}.steps article{grid-template-columns:35px 1fr}.steps article p{grid-column:2}.dark-section,.band{padding-left:16px;padding-right:16px}.visual-placeholder{min-height:310px;padding:28px}}

/* V2 — navigation */
.nav-item-dropdown{position:relative}
.nav-dropdown-toggle{border:0;background:transparent;font:inherit;font-weight:700;color:var(--ink);padding:18px 0;cursor:pointer;display:flex;align-items:center;gap:7px}
.nav-dropdown-toggle:after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px)}
.nav-dropdown{position:absolute;top:52px;left:-28px;width:360px;background:white;border:1px solid var(--line);border-radius:22px;padding:12px;box-shadow:0 24px 70px rgba(7,19,38,.13);opacity:0;visibility:hidden;transform:translateY(8px);transition:.18s;z-index:40}
.nav-item-dropdown:hover .nav-dropdown,.nav-item-dropdown:focus-within .nav-dropdown{opacity:1;visibility:visible;transform:none}
.nav-dropdown a{display:block;padding:12px 14px;border-radius:13px;font-size:14px}
.nav-dropdown a:hover{background:var(--soft);color:var(--accent)}
.nav-dropdown small{display:block;font-weight:500;color:var(--muted);margin-top:2px}

/* V2 — homepage visual rhythm */
.home-origin-shell{margin-top:42px;background:#edf2f5;border-top:1px solid #e2e8ed;border-bottom:1px solid #e2e8ed}
.home-origin-shell .origin{margin-top:0;margin-bottom:0}
.home-problems-shell{background:#f8fafb;padding:56px 0 76px}
.home-problems-shell .problems{margin-top:0;margin-bottom:0}
.home-expertise-shell{background:#eef7f8;border-top:1px solid #dcebed;border-bottom:1px solid #dcebed}
.home-expertise-shell .section{margin-top:0;margin-bottom:0}
.home-method-shell{background:#f2f4f6;padding:1px 0}
.home-clients-shell{background:white;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.home-clients-shell .clients{margin-top:0;margin-bottom:0}
.hero:after{content:"";position:absolute;pointer-events:none}
.hero{position:relative}

/* Visual panel details */
.tech-visual{height:100%;min-height:500px;padding:42px;display:flex;flex-direction:column;justify-content:space-between;color:white;background:
radial-gradient(circle at 20% 18%,rgba(74,215,225,.28),transparent 28%),
linear-gradient(145deg,#087b91 0%,#064759 50%,#071d29 100%)}
.tech-top{display:flex;justify-content:space-between;align-items:center;font-size:12px;letter-spacing:.13em;text-transform:uppercase;opacity:.8}
.tech-stack{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:auto 0}
.tech-pill{border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.07);border-radius:18px;padding:19px;font-size:15px;font-weight:800;backdrop-filter:blur(5px)}
.tech-bottom strong{display:block;font-size:38px;line-height:1.02;letter-spacing:-.04em}.tech-bottom span{display:block;color:#c8dce2;margin-top:10px}

@media(max-width:980px){
 .nav-item-dropdown{width:100%}.nav-dropdown-toggle{padding:8px 0}
 .nav-dropdown{position:static;width:100%;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;padding:5px 0 5px 14px;display:block}
 .nav-dropdown small{display:none}
}

/* V3 — stronger editorial rhythm */
.home-expertise-shell{background:transparent;border:0}
.expertise-intro{background:#dfeff2;border-top:1px solid #d0e4e8;border-bottom:1px solid #d0e4e8}
.expertise-intro .section{padding:58px 0 46px;margin-top:0;margin-bottom:0}
.expertise-cards-zone{background:#f7f9fa;padding:54px 0 82px}
.expertise-cards-zone .expertise-grid{width:min(calc(100% - 72px),var(--max));margin:auto}
.content-panel{height:100%;min-height:500px;border-radius:var(--radius);padding:38px;color:white;background:radial-gradient(circle at 20% 15%,rgba(44,201,220,.26),transparent 30%),linear-gradient(145deg,#08778d,#082633 70%);display:flex;flex-direction:column;justify-content:space-between;box-shadow:var(--shadow)}
.content-panel .panel-kicker{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:900;color:#9edee8}
.content-panel h2{font-size:clamp(34px,3vw,50px);margin:18px 0}.content-panel p{color:#d2e1e5}
.panel-list{display:grid;gap:10px;margin:24px 0}.panel-item{display:flex;align-items:center;gap:12px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.055);padding:13px 15px;border-radius:14px}.panel-dot{width:8px;height:8px;border-radius:50%;background:#78d5e4;box-shadow:0 0 0 5px rgba(120,213,228,.10)}
.panel-tags{display:flex;gap:8px;flex-wrap:wrap}.panel-tags span{border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:7px 10px;font-size:12px;color:#d5e8ec}
.ui-mock{background:#f8fbfc;border-radius:22px;padding:20px;color:var(--ink);box-shadow:0 20px 50px rgba(0,0,0,.16);margin-top:18px}.ui-mock-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:13px;border-bottom:1px solid var(--line);font-weight:900}.ui-status{font-size:11px;border-radius:999px;padding:5px 8px;background:#e3f5ee;color:#167552}.ui-row{display:grid;grid-template-columns:1fr auto;gap:12px;padding:11px 0;border-bottom:1px solid #e9eef2;font-size:13px}.ui-row:last-child{border:0}.ui-row span:last-child{font-weight:800}
.visual-card-stack{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0}.visual-card-stack article{min-height:120px;padding:18px;border-radius:18px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.06)}.visual-card-stack strong{display:block;font-size:22px}.visual-card-stack small{color:#bdd3d9}
.page-hero-visual{background:transparent}
.split-visual{background:transparent;min-height:500px}
@media(max-width:650px){.expertise-cards-zone .expertise-grid{width:min(calc(100% - 32px),var(--max))}.content-panel{min-height:400px;padding:28px}.visual-card-stack{grid-template-columns:1fr}}

/* V3.2 — contact context carried from service/pricing pages */
.contact-context{margin:0 0 22px;padding:18px 20px;border:1px solid #cfe3e7;border-radius:18px;background:#edf7f8;display:grid;grid-template-columns:1fr auto;gap:4px 18px;align-items:center}
.contact-context[hidden]{display:none}
.contact-context-label{grid-column:1/-1;font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
.contact-context strong{font-size:17px;color:var(--ink)}
.contact-context-price{font-size:14px;font-weight:900;color:var(--accent2);white-space:nowrap}
@media(max-width:650px){.contact-context{grid-template-columns:1fr}.contact-context-price{white-space:normal}}
