/* Fonts moved to <head> for performance */

.n2 *,.n2 *::before,.n2 *::after{box-sizing:border-box;margin:0;padding:0}
.n2{
  --c1:#0b1426;--c2:#162a4a;--c3:#c46a35;--c4:#d88a4a;--c5:#eba865;
  --acc:#3b82f6;--acc2:#06b6d4;
  --g0:#fff;--g1:#f8f9fc;--g2:#eef1f6;--g3:#dce1ea;
  --tx:#111827;--txs:#4b5563;--txl:#9ca3af;
  --rad:14px;--rad2:20px;
  --sh:0 2px 16px rgba(0,0,0,.06);--shh:0 12px 40px rgba(0,0,0,.12);
  --ff:'Poppins',system-ui,sans-serif;--ff2:'Inter',system-ui,sans-serif;
  font-family:var(--ff2);color:var(--tx);line-height:1.65;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
.n2 h1,.n2 h2,.n2 h3,.n2 h4{font-family:var(--ff);font-weight:700;line-height:1.15;color:var(--c1)}
.n2 a{text-decoration:none;color:inherit;transition:all .3s ease}
.n2-wrap{max-width:1200px;margin:0 auto;padding:0 24px}

/* ── HERO ── */
.n2-hero{
  position:relative;min-height:100vh;display:flex;align-items:center;
  background:var(--c1);overflow:hidden;padding-top:100px;
}
.n2-hero-bg{
  position:absolute;inset:0;
  background:
    radial-gradient(ellipse 80% 60% at 65% 40%,rgba(59,130,246,.12),transparent),
    radial-gradient(ellipse 60% 50% at 25% 60%,rgba(230,57,40,.08),transparent),
    linear-gradient(135deg,#0b1426 0%,#132744 40%,#1a3a5c 100%);
}
.n2-hero-mesh{
  position:absolute;inset:0;opacity:.03;
  background-image:
    linear-gradient(rgba(255,255,255,.5) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.5) 1px,transparent 1px);
  background-size:80px 80px;
}
.n2-hero-glow{
  position:absolute;border-radius:50%;filter:blur(120px);opacity:.18;pointer-events:none;
  animation:n2glow 10s ease-in-out infinite alternate;
}
.n2-glow1{width:500px;height:500px;background:var(--c3);top:-200px;right:-100px}
.n2-glow2{width:400px;height:400px;background:var(--acc);bottom:-200px;left:-150px;animation-delay:-5s}
@keyframes n2glow{0%{transform:translate(0,0) scale(1)}100%{transform:translate(30px,-20px) scale(1.1)}}

.n2-hero-inner{
  position:relative;z-index:2;max-width:720px;margin:0 auto;
  padding:140px 24px 100px;text-align:center;
}
.n2-hero-chip{
  display:inline-flex;align-items:center;gap:8px;
  background:rgba(255,255,255,.06);backdrop-filter:blur(16px);
  border:1px solid rgba(255,255,255,.1);border-radius:50px;
  padding:6px 18px 6px 8px;margin-bottom:28px;
}
.n2-hero-chip-dot{
  width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,var(--c3),var(--c4));
}
.n2-hero-chip-dot svg{width:14px;height:14px;fill:none;stroke:#fff;stroke-width:2.5}
.n2-hero-chip span{font-size:.78rem;font-weight:500;color:rgba(255,255,255,.7);letter-spacing:.5px;text-transform:uppercase}
.n2-hero h1{
  font-size:clamp(2.4rem,5vw,4rem);color:#fff;margin-bottom:24px;
  font-weight:900;letter-spacing:-.03em;line-height:1.08;
}
.n2-hero h1 em{
  font-style:normal;
  background:linear-gradient(135deg,var(--c4),var(--c5),#fbbf24);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.n2-hero-sub{font-size:1.12rem;color:rgba(255,255,255,.5);line-height:1.75;margin-bottom:40px;max-width:560px;margin-left:auto;margin-right:auto}
.n2-hero-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-bottom:56px}

.n2-btn{
  display:inline-flex;align-items:center;gap:8px;padding:15px 30px;
  border-radius:10px;font-weight:600;font-size:.92rem;
  font-family:var(--ff);transition:all .3s cubic-bezier(.4,0,.2,1);
  cursor:pointer;border:none;position:relative;
}
.n2-btn-p{
  background:linear-gradient(135deg,var(--c3),var(--c4));color:#fff;
  box-shadow:0 4px 24px rgba(230,57,40,.3),inset 0 1px 0 rgba(255,255,255,.15);
}
.n2-btn-p:hover{transform:translateY(-3px);box-shadow:0 8px 32px rgba(230,57,40,.45);color:#fff}
.n2-btn-g{background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.15)}
.n2-btn-g:hover{background:rgba(255,255,255,.15);transform:translateY(-2px);color:#fff}
.n2-btn-dark{background:var(--c1);color:#fff;box-shadow:var(--sh)}
.n2-btn-dark:hover{background:var(--c2);transform:translateY(-2px);color:#fff}

/* Hero trust strip */
.n2-hero-strip{
  display:flex;justify-content:center;gap:40px;flex-wrap:wrap;
  padding-top:40px;border-top:1px solid rgba(255,255,255,.06);
}
.n2-hero-strip-item{display:flex;align-items:center;gap:12px}
.n2-hero-strip-ico{
  width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);
}
.n2-hero-strip-ico svg{width:20px;height:20px;fill:none;stroke:var(--c4);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.n2-hero-strip-item div:last-child{text-align:left}
.n2-hero-strip-item strong{display:block;color:#fff;font-size:.88rem;font-weight:600;font-family:var(--ff)}
.n2-hero-strip-item small{font-size:.76rem;color:rgba(255,255,255,.35)}

.n2-scroll-cue{
  position:absolute;bottom:32px;left:50%;transform:translateX(-50%);z-index:2;
  display:flex;flex-direction:column;align-items:center;gap:8px;
  color:rgba(255,255,255,.25);font-size:.68rem;letter-spacing:2px;text-transform:uppercase;
}
.n2-scroll-cue::after{
  content:'';width:1px;height:36px;
  background:linear-gradient(to bottom,rgba(255,255,255,.25),transparent);
  animation:n2sd 2s ease-in-out infinite;
}
@keyframes n2sd{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}

/* ── SECTIONS ── */
.n2-sec{padding:100px 0;position:relative;scroll-margin-top:90px}
.n2-sec-head{text-align:center;margin-bottom:64px}
.n2-sec-tag{
  display:inline-flex;align-items:center;gap:8px;
  font-size:.75rem;font-weight:600;letter-spacing:1.5px;
  text-transform:uppercase;color:var(--c3);margin-bottom:16px;
  background:linear-gradient(135deg,rgba(230,57,40,.08),rgba(255,104,84,.04));
  padding:6px 16px;border-radius:50px;border:1px solid rgba(230,57,40,.1);
}
.n2-sec-head h2{font-size:clamp(1.8rem,3.5vw,2.8rem);margin-bottom:18px;letter-spacing:-.02em}
.n2-sec-head h2 em{font-style:normal;background:linear-gradient(135deg,var(--c3),var(--c4));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.n2-sec-head p{font-size:1.05rem;color:var(--txs);max-width:560px;margin:0 auto;line-height:1.75}

/* ── ABOUT ME (osobní představení) ── */
.n2-about{background:var(--g1)}
.n2-about-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.n2-about-visual{
  position:relative;border-radius:var(--rad2);overflow:hidden;
  background:linear-gradient(135deg,var(--c1),var(--c2));
  aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;
}
.n2-about-visual svg{width:120px;height:120px;fill:none;stroke:rgba(255,255,255,.1);stroke-width:.8}
.n2-about-badge{
  position:absolute;bottom:20px;left:20px;
  background:rgba(255,255,255,.95);backdrop-filter:blur(12px);
  border-radius:12px;padding:14px 18px;display:flex;align-items:center;gap:12px;
  box-shadow:0 8px 24px rgba(0,0,0,.12);
}
.n2-about-badge-n{font-family:var(--ff);font-size:1.6rem;font-weight:800;color:var(--c3)}
.n2-about-badge-t{font-size:.78rem;color:var(--txs);line-height:1.3}
.n2-about-badge-t strong{display:block;color:var(--c1);font-size:.85rem}
.n2-about-txt h2{text-align:left;font-size:clamp(1.6rem,3vw,2.2rem);margin-bottom:20px}
.n2-about-txt h2 em{font-style:normal;background:linear-gradient(135deg,var(--c3),var(--c4));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.n2-about-txt>p{font-size:1rem;color:var(--txs);line-height:1.8;margin-bottom:16px}
.n2-about-checks{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}
.n2-about-check{display:flex;align-items:center;gap:10px;font-size:.9rem;font-weight:500;color:var(--c1)}
.n2-about-check svg{width:20px;height:20px;flex-shrink:0;fill:none;stroke:var(--c3);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}

/* ── BENTO SERVICES ── */
.n2-bento{display:grid;grid-template-columns:repeat(12,1fr);gap:20px}
.n2-bento-card{
  background:var(--g0);border-radius:var(--rad2);padding:36px 32px;
  position:relative;overflow:hidden;transition:all .4s cubic-bezier(.4,0,.2,1);
  border:1px solid var(--g2);
}
.n2-bento-card::before{
  content:'';position:absolute;top:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,var(--c3),var(--c4),var(--c5));
  transform:scaleX(0);transition:transform .4s ease;transform-origin:left;
}
.n2-bento-card:hover{transform:translateY(-6px);box-shadow:var(--shh);border-color:transparent}
.n2-bento-card:hover::before{transform:scaleX(1)}
.n2-b1{grid-column:span 7}
.n2-b2{grid-column:span 5}
.n2-b3{grid-column:span 4}
.n2-b4{grid-column:span 4}
.n2-b5{grid-column:span 4}
.n2-b6{grid-column:span 12}
.n2-bento-ico{
  width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;
  margin-bottom:20px;
}
.n2-bento-ico svg{width:26px;height:26px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;position:relative;z-index:1}
.n2-bi-1{background:linear-gradient(135deg,var(--c3),var(--c4))}
.n2-bi-2{background:linear-gradient(135deg,var(--acc),var(--acc2))}
.n2-bi-3{background:linear-gradient(135deg,#10b981,#34d399)}
.n2-bi-4{background:linear-gradient(135deg,#059669,#34d399)}
.n2-bi-5{background:linear-gradient(135deg,#f59e0b,#fbbf24)}
.n2-bi-6{background:linear-gradient(135deg,var(--c1),var(--c2))}
.n2-bento-card h3{font-size:1.15rem;margin-bottom:10px}
.n2-bento-card p{font-size:.9rem;color:var(--txs);line-height:1.7;margin-bottom:14px}
.n2-bento-link{font-size:.85rem;font-weight:600;color:var(--c3);display:inline-flex;align-items:center;gap:6px}
.n2-bento-link svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;transition:transform .25s}
.n2-bento-card:hover .n2-bento-link svg{transform:translateX(4px)}
.n2-b1{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center}
.n2-b1 .n2-bento-visual{
  height:200px;border-radius:14px;overflow:hidden;
  background:linear-gradient(135deg,var(--c1),var(--c2));
  display:flex;align-items:center;justify-content:center;
}
.n2-b1 .n2-bento-visual svg{width:80px;height:80px;fill:none;stroke:rgba(255,255,255,.15);stroke-width:1}
.n2-b6{
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  background:linear-gradient(135deg,var(--c1),var(--c2));border-color:transparent;padding:32px 40px;
}
.n2-b6:hover{transform:translateY(-4px)}
.n2-b6::before{display:none}
.n2-b6 h3{color:#fff;font-size:1.15rem;margin:0}
.n2-b6 p{color:rgba(255,255,255,.5);margin:6px 0 0;font-size:.88rem}
.n2-b6 .n2-btn{flex-shrink:0}

/* ── STATS ── */
.n2-stats{background:linear-gradient(135deg,var(--c1),var(--c2));padding:72px 0;position:relative;overflow:hidden}
.n2-stats::before{
  content:'';position:absolute;inset:0;opacity:.04;
  background:radial-gradient(circle at 20% 50%,rgba(230,57,40,.5),transparent 50%),
             radial-gradient(circle at 80% 50%,rgba(59,130,246,.5),transparent 50%);
}
.n2-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative;z-index:1}
.n2-stat{text-align:center;padding:20px;position:relative}
.n2-stat:not(:last-child)::after{
  content:'';position:absolute;right:0;top:20%;height:60%;width:1px;
  background:linear-gradient(to bottom,transparent,rgba(255,255,255,.1),transparent);
}
.n2-stat-val{
  font-family:var(--ff);font-size:clamp(2rem,3.5vw,2.8rem);font-weight:900;
  background:linear-gradient(135deg,#fff,rgba(255,255,255,.7));
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;
}
.n2-stat-lbl{font-size:.76rem;color:rgba(255,255,255,.4);margin-top:8px;text-transform:uppercase;letter-spacing:1.5px;font-weight:500}

/* ── TIMELINE ── */
.n2-timeline{display:flex;gap:0;position:relative;counter-reset:step}
.n2-timeline::before{
  content:'';position:absolute;top:44px;left:12%;right:12%;height:2px;
  background:linear-gradient(90deg,var(--g3),var(--c3),var(--c4),var(--g3));z-index:0;
}
.n2-tstep{flex:1;text-align:center;position:relative;z-index:1;padding:0 12px}
.n2-tstep-num{
  counter-increment:step;
  width:88px;height:88px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  margin:0 auto 24px;font-family:var(--ff);font-size:1.5rem;font-weight:800;
  background:var(--g0);border:3px solid var(--g2);color:var(--c3);
  box-shadow:0 4px 20px rgba(0,0,0,.06);transition:all .4s ease;
}
.n2-tstep-num::before{content:counter(step,decimal-leading-zero)}
.n2-tstep:hover .n2-tstep-num{
  border-color:var(--c3);background:linear-gradient(135deg,var(--c3),var(--c4));
  color:#fff;transform:scale(1.08);box-shadow:0 8px 32px rgba(230,57,40,.25);
}
.n2-tstep h4{font-size:1.05rem;margin-bottom:8px}
.n2-tstep p{font-size:.85rem;color:var(--txs);line-height:1.6}

/* ── SHOWCASE ── */
.n2-showcase{background:var(--g1);overflow:hidden}
.n2-show-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:260px 260px;gap:16px}
.n2-show-item{position:relative;border-radius:var(--rad2);overflow:hidden;cursor:pointer;transition:all .4s ease}
.n2-show-item:hover{transform:scale(1.02)}
.n2-show-bg{position:absolute;inset:0;transition:transform .6s ease}
.n2-show-item:hover .n2-show-bg{transform:scale(1.08)}
.n2-show-overlay{
  position:absolute;inset:0;
  background:linear-gradient(to top,rgba(11,20,38,.85) 0%,rgba(11,20,38,.2) 50%,transparent 100%);
  display:flex;flex-direction:column;justify-content:flex-end;padding:24px;transition:all .4s ease;
}
.n2-show-tag{
  display:inline-flex;align-self:flex-start;font-size:.68rem;font-weight:600;letter-spacing:1px;
  text-transform:uppercase;padding:4px 12px;border-radius:50px;margin-bottom:8px;
  background:rgba(255,255,255,.15);backdrop-filter:blur(8px);color:rgba(255,255,255,.9);
}
.n2-show-title{font-family:var(--ff);font-size:1.1rem;font-weight:700;color:#fff;margin-bottom:4px}
.n2-show-desc{font-size:.8rem;color:rgba(255,255,255,.5)}
.n2-si-1{grid-row:span 2}
.n2-si-1 .n2-show-bg{background:linear-gradient(135deg,#1e3a5f,#2d5a8c,#1a4a7a)}
.n2-si-2 .n2-show-bg{background:linear-gradient(135deg,#3a2d1f,#5a4a3a,#8a7a6a)}
.n2-si-3 .n2-show-bg{background:linear-gradient(135deg,#1f3a2d,#2d5a3f,#4a8a6a)}
.n2-si-4 .n2-show-bg{background:linear-gradient(135deg,#3a1f2d,#5a2d4a,#8a4a7a)}
.n2-si-5 .n2-show-bg{background:linear-gradient(135deg,#2d3a1f,#4a5a2d,#7a8a4a)}
.n2-show-bg svg{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:80px;height:80px;fill:none;stroke:rgba(255,255,255,.1);stroke-width:1;transition:all .6s ease}
.n2-show-item:hover .n2-show-bg svg{stroke:rgba(255,255,255,.18);transform:translate(-50%,-50%) scale(1.1)}

/* ── REVIEWS ── */
.n2-rev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.n2-rev-card{
  background:var(--g0);border-radius:var(--rad2);padding:36px 32px;
  border:1px solid var(--g2);transition:all .4s ease;position:relative;
}
.n2-rev-card:hover{transform:translateY(-6px);box-shadow:var(--shh);border-color:transparent}
.n2-rev-card:nth-child(2){transform:translateY(-12px)}
.n2-rev-card:nth-child(2):hover{transform:translateY(-18px)}
.n2-rev-quote{
  position:absolute;top:20px;right:24px;width:48px;height:48px;border-radius:12px;
  background:linear-gradient(135deg,rgba(230,57,40,.06),rgba(255,104,84,.03));
  display:flex;align-items:center;justify-content:center;
}
.n2-rev-quote svg{width:22px;height:22px;fill:var(--c3);opacity:.4}
.n2-rev-stars{display:flex;gap:3px;margin-bottom:18px}
.n2-rev-stars svg{width:16px;height:16px;fill:#fbbf24}
.n2-rev-txt{font-size:.95rem;color:var(--txs);line-height:1.8;margin-bottom:24px;font-style:italic}
.n2-rev-who{display:flex;align-items:center;gap:14px;padding-top:20px;border-top:1px solid var(--g2)}
.n2-rev-ava{
  width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,var(--c1),var(--c2));color:#fff;
  font-weight:700;font-size:.85rem;font-family:var(--ff);
}
.n2-rev-name{font-weight:600;font-size:.9rem}
.n2-rev-loc{font-size:.78rem;color:var(--txl);margin-top:2px}

/* ── CTA ── */
.n2-cta{
  background:linear-gradient(135deg,var(--c1) 0%,var(--c2) 50%,#1a3a5c 100%);
  padding:100px 0;text-align:center;position:relative;overflow:hidden;
}
.n2-cta::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 50% 80% at 30% 50%,rgba(230,57,40,.06),transparent),
             radial-gradient(ellipse 50% 80% at 70% 50%,rgba(59,130,246,.04),transparent);
}
.n2-cta-inner{position:relative;z-index:1;max-width:640px;margin:0 auto;padding:0 24px}
.n2-cta h2{font-size:clamp(1.8rem,3.5vw,2.6rem);color:#fff;margin-bottom:18px}
.n2-cta h2 em{font-style:normal;background:linear-gradient(135deg,var(--c4),var(--c5),#fbbf24);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.n2-cta-inner>p{font-size:1.05rem;color:rgba(255,255,255,.5);margin-bottom:36px;line-height:1.75}
.n2-cta-phone{
  display:inline-flex;align-items:center;gap:14px;
  font-family:var(--ff);font-size:clamp(1.4rem,3vw,2rem);font-weight:800;color:#fff;
  margin-bottom:28px;transition:all .3s ease;
}
.n2-cta-phone:hover{color:var(--c4);transform:scale(1.03)}
.n2-cta-phone-ring{
  width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,var(--c3),var(--c4));
  box-shadow:0 4px 24px rgba(230,57,40,.4);position:relative;
}
.n2-cta-phone-ring::before{
  content:'';position:absolute;inset:-6px;border-radius:50%;border:2px solid var(--c3);opacity:.3;
  animation:n2ring 2s ease-in-out infinite;
}
@keyframes n2ring{0%,100%{transform:scale(1);opacity:.3}50%{transform:scale(1.2);opacity:0}}
.n2-cta-phone-ring svg{width:24px;height:24px;fill:none;stroke:#fff;stroke-width:2}
.n2-cta-sub{font-size:.82rem;color:rgba(255,255,255,.3);margin-top:24px}
.n2-cta-sub a{color:var(--c4)}.n2-cta-sub a:hover{color:#fff}

/* ── ANIMATIONS ── */
.n2-anim{opacity:0;transform:translateY(32px);transition:opacity .7s ease,transform .7s cubic-bezier(.22,1,.36,1)}
.n2-anim.n2-vis{opacity:1;transform:translateY(0)}
.n2-anim-l{opacity:0;transform:translateX(-32px);transition:opacity .7s ease,transform .7s cubic-bezier(.22,1,.36,1)}
.n2-anim-l.n2-vis{opacity:1;transform:translateX(0)}
.n2-anim-r{opacity:0;transform:translateX(32px);transition:opacity .7s ease,transform .7s cubic-bezier(.22,1,.36,1)}
.n2-anim-r.n2-vis{opacity:1;transform:translateX(0)}
.n2-anim-s{opacity:0;transform:scale(.92);transition:opacity .6s ease,transform .6s cubic-bezier(.22,1,.36,1)}
.n2-anim-s.n2-vis{opacity:1;transform:scale(1)}

/* ── RESPONSIVE ── */
@media(max-width:1024px){
  .n2-about-grid{grid-template-columns:1fr;gap:40px}
  .n2-bento{grid-template-columns:repeat(6,1fr)}
  .n2-b1{grid-column:span 6;grid-template-columns:1fr}
  .n2-b2{grid-column:span 6}
  .n2-b3,.n2-b4,.n2-b5{grid-column:span 3}
  .n2-b6{grid-column:span 6;flex-direction:column;text-align:center}
  .n2-show-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:auto}
  .n2-si-1{grid-row:span 1}
}
@media(max-width:768px){
  .n2-sec{padding:64px 0}
  .n2-bento{grid-template-columns:1fr}
  .n2-b1,.n2-b2,.n2-b3,.n2-b4,.n2-b5,.n2-b6{grid-column:span 1}
  .n2-b1{grid-template-columns:1fr}
  .n2-stats-grid{grid-template-columns:repeat(2,1fr)}
  .n2-stat:nth-child(2)::after{display:none}
  .n2-timeline{flex-direction:column;gap:32px}
  .n2-timeline::before{display:none}
  .n2-show-grid{grid-template-columns:1fr;grid-template-rows:auto}
  .n2-rev-grid{grid-template-columns:1fr}
  .n2-rev-card:nth-child(2){transform:none}
  .n2-rev-card:nth-child(2):hover{transform:translateY(-6px)}
  .n2-hero-strip{flex-direction:column;gap:16px;align-items:center}
  .n2-about-checks{grid-template-columns:1fr}
}
@media(max-width:480px){
  .n2-stats-grid{grid-template-columns:1fr}
  .n2-stat::after{display:none !important}
}
/* Product specs in bento */
.n2-prod-spec{background:var(--g1);border-radius:14px;padding:20px;height:100%;display:flex;flex-direction:column;gap:14px}
.n2-prod-spec-title{font-family:var(--ff);font-size:.82rem;font-weight:600;color:var(--c1);text-transform:uppercase;letter-spacing:1px;padding-bottom:10px;border-bottom:1px solid var(--g3)}
.n2-prod-row{display:flex;justify-content:space-between;align-items:center;font-size:.88rem}
.n2-prod-row span:first-child{color:var(--txs);font-weight:400}
.n2-prod-row span:last-child{font-weight:600;color:var(--c1)}
.n2-prod-price{display:flex;align-items:baseline;gap:6px;margin-top:auto;padding-top:12px;border-top:1px solid var(--g3)}
.n2-prod-price small{font-size:.78rem;color:var(--txs)}
.n2-prod-price strong{font-family:var(--ff);font-size:1.4rem;font-weight:800;color:var(--c3)}
.n2-prod-price span{font-size:.82rem;color:var(--txs)}
.n2-mini-specs{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.n2-mini-spec{font-size:.75rem;padding:4px 10px;border-radius:6px;background:var(--g1);color:var(--txs);border:1px solid var(--g2);font-weight:500}

/* ── SERVICE AREAS ── */
.n2-areas-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.n2-area-card{background:var(--g0);border-radius:var(--rad);padding:24px 20px;border:1px solid var(--g2);text-align:center;transition:all .3s ease}
.n2-area-card:hover{transform:translateY(-4px);box-shadow:var(--shh);border-color:var(--c3)}
.n2-area-card strong{display:block;font-family:var(--ff);font-size:1.05rem;color:var(--c1);margin-bottom:4px}
.n2-area-card span{font-size:.82rem;color:var(--txs)}
@media(max-width:768px){.n2-areas-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.n2-areas-grid{grid-template-columns:1fr}}