/* ==========================================================
   Elektromobil Serwis EV — Rzeszów
   Serwis aut elektrycznych: baterie, falowniki, ładowarki AC/DC
   Paleta: elektryczny turkus + głęboki grafit + papier
   Fonty: Sora (nagłówki) + Manrope (tekst)
   ========================================================== */

:root{
	--ev-bg:      #ffffff;
	--ev-paper:   #eef4f2;
	--ev-paper-2: #f5f9f8;
	--ev-ink:     #0f1a1e;   /* grafit-turkus — header, ciemne pasy */
	--ev-ink-2:   #14252b;
	--ev-teal:    #10b5a6;   /* elektryczny turkus — akcent */
	--ev-teal-dk: #0c8f83;
	--ev-teal-lt: #d7f2ee;
	--ev-text:    #16242a;
	--ev-muted:   #5c6b71;
	--ev-muted-lt:#8a99a0;
	--ev-line:    #dbe6e3;
	--ev-line-dk: #24363c;
	--ev-maxw:    1200px;
	--ev-r:       10px;
	--ev-r-lg:    18px;
	--ev-shadow:  0 18px 46px rgba(15,26,30,.12);
	--ev-shadow-sm:0 8px 22px rgba(15,26,30,.09);
}

*{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }

body{
	margin:0;
	font-family:'Manrope', Arial, sans-serif;
	font-size:16px;
	line-height:1.65;
	color:var(--ev-text);
	background:var(--ev-bg);
	-webkit-font-smoothing:antialiased;
}
img{ display:block; max-width:100%; height:auto; }
a{ color:var(--ev-teal-dk); text-decoration:none; }
a:hover{ color:var(--ev-teal); }

h1,h2,h3,h4{ font-family:'Sora','Manrope',sans-serif; font-weight:700; line-height:1.08; margin:0 0 .4em; color:var(--ev-ink); letter-spacing:-.01em; }
p{ margin:0 0 1.05em; }

.ev-wrap{ width:100%; max-width:var(--ev-maxw); margin:0 auto; padding:0 22px; }

.ev-eyebrow{ display:inline-block; font-family:'Sora',sans-serif; font-size:13px; font-weight:600; letter-spacing:.22em; text-transform:uppercase; color:var(--ev-teal-dk); margin:0 0 14px; }
.ev-lead{ font-size:19px; color:var(--ev-muted); line-height:1.6; }
.ev-pill{ display:inline-flex; align-items:center; gap:8px; background:var(--ev-teal-lt); color:var(--ev-teal-dk); font-weight:700; font-size:12.5px; letter-spacing:.12em; text-transform:uppercase; padding:6px 14px; border-radius:999px; }
.ev-pill::before{ content:""; width:7px; height:7px; border-radius:50%; background:var(--ev-teal); }

/* ============ BUTTONS ============ */
.ev-btn{ display:inline-flex; align-items:center; justify-content:center; gap:9px; padding:13px 26px; font-family:'Sora',sans-serif; font-size:14px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; border-radius:var(--ev-r); border:2px solid transparent; cursor:pointer; transition:all .2s ease; line-height:1; }
.ev-btn-teal{ background:var(--ev-teal); color:#04211e !important; border-color:var(--ev-teal); }
.ev-btn-teal:hover{ background:var(--ev-teal-dk); border-color:var(--ev-teal-dk); color:#04211e; }
.ev-btn-ink{ background:var(--ev-ink); color:#fff !important; border-color:var(--ev-ink); }
.ev-btn-ink:hover{ background:var(--ev-ink-2); border-color:var(--ev-ink-2); }
.ev-btn-out{ background:transparent; color:var(--ev-ink) !important; border-color:var(--ev-line-dk); }
.ev-btn-out:hover{ background:var(--ev-ink); color:#fff !important; border-color:var(--ev-ink); }
.ev-btn-ghost{ background:transparent; color:#fff !important; border-color:rgba(255,255,255,.6); }
.ev-btn-ghost:hover{ background:#fff; color:var(--ev-ink) !important; border-color:#fff; }
.ev-btns{ display:flex; gap:12px; flex-wrap:wrap; }

/* ============ TOP STRIP ============ */
.ev-topstrip{ background:var(--ev-ink); color:#b9c6c9; font-size:13px; }
.ev-topstrip .ev-wrap{ display:flex; justify-content:space-between; align-items:center; gap:10px; padding:8px 22px; flex-wrap:wrap; }
.ev-topstrip .ev-ts-tag{ color:var(--ev-teal); font-weight:600; letter-spacing:.06em; text-transform:uppercase; }
.ev-topstrip a{ color:#fff; font-weight:700; }
.ev-topstrip a:hover{ color:var(--ev-teal); }

/* ============ HEADER ============ */
.ev-header{ position:sticky; top:0; z-index:100; background:var(--ev-ink); }
.ev-header .ev-inner{ max-width:var(--ev-maxw); margin:0 auto; padding:14px 22px; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.ev-brand{ display:flex; align-items:center; gap:11px; }
.ev-brand-mark{ width:42px; height:42px; flex:0 0 42px; border-radius:10px; background:var(--ev-teal); display:flex; align-items:center; justify-content:center; }
.ev-brand-mark svg{ width:24px; height:24px; fill:#04211e; }
.ev-brand-txt b{ display:block; font-family:'Sora',sans-serif; font-weight:700; font-size:18px; color:#fff; line-height:1; letter-spacing:.01em; }
.ev-brand-txt span{ display:block; font-size:10.5px; letter-spacing:.2em; text-transform:uppercase; color:var(--ev-muted-lt); margin-top:4px; }

.ev-toggle{ display:inline-flex; flex-direction:column; gap:5px; background:none; border:0; cursor:pointer; padding:8px; }
.ev-toggle span{ width:24px; height:2px; background:var(--ev-teal); display:block; }

.ev-nav{ display:none; }
.ev-nav ul{ list-style:none; margin:0; padding:0; }
.ev-nav a{ display:block; font-family:'Sora',sans-serif; font-size:13px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:#cdd7d9; padding:12px 0; border-bottom:1px solid var(--ev-line-dk); }
.ev-nav a:hover, .ev-nav a.ev-active{ color:var(--ev-teal); }
.ev-nav.ev-open{ display:block; width:100%; padding:4px 22px 16px; }
.ev-nav-cta{ margin-top:10px; }

/* ============ HERO ============ */
.ev-hero{ position:relative; background:var(--ev-ink); color:#fff; overflow:hidden; text-align:center; }
.ev-hero-bg{ position:absolute; inset:0; background-size:cover; background-position:center; z-index:0; }
.ev-hero-bg::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(15,26,30,.78), rgba(15,26,30,.66) 45%, rgba(15,26,30,.9)); }
.ev-hero-inner{ position:relative; z-index:1; padding:84px 22px 92px; max-width:900px; margin:0 auto; }
.ev-hero .ev-eyebrow{ color:var(--ev-teal); }
.ev-hero h1{ color:#fff; font-size:44px; line-height:1.02; letter-spacing:-.01em; margin:0 0 18px; }
.ev-hero h1 span{ display:block; }
.ev-hero h1 .ev-hl{ color:var(--ev-teal); }
.ev-hero p{ font-size:19px; color:#c7d2d5; max-width:56ch; margin:0 auto 26px; }
.ev-hero .ev-btns{ justify-content:center; }

/* ============ CTA BAND (replaces signup form — no inputs) ============ */
.ev-ctaband{ background:var(--ev-paper); padding:44px 0; }
.ev-ctabox{ background:var(--ev-ink); border:2px solid var(--ev-teal); border-radius:var(--ev-r-lg); padding:32px 30px; max-width:1000px; margin:0 auto; display:grid; grid-template-columns:1fr; gap:20px; align-items:center; text-align:center; }
.ev-ctabox h2{ color:#fff; font-size:28px; margin:0 0 6px; }
.ev-ctabox p{ color:#b9c6c9; margin:0; font-size:15px; }
.ev-ctabox .ev-btns{ justify-content:center; }

/* ============ SECTIONS ============ */
.ev-block{ padding:64px 0; }
.ev-paper-bg{ background:var(--ev-paper); }
.ev-paper2-bg{ background:var(--ev-paper-2); }
.ev-head{ max-width:720px; margin:0 0 40px; }
.ev-head.ev-center{ margin:0 auto 44px; text-align:center; }
.ev-head h2{ font-size:38px; letter-spacing:-.02em; }
.ev-head p{ margin-top:10px; }
.ev-section-title{ font-family:'Sora',sans-serif; font-weight:800; text-transform:uppercase; letter-spacing:.02em; }

/* ============ CORE SERVICE CARDS (carousel DNA) ============ */
.ev-cards{ display:grid; grid-template-columns:1fr; gap:22px; }
.ev-card{ background:var(--ev-bg); border:1px solid var(--ev-line); border-radius:var(--ev-r-lg); overflow:hidden; display:flex; flex-direction:column; box-shadow:var(--ev-shadow-sm); }
.ev-card-img{ height:190px; background-size:cover; background-position:center; position:relative; }
.ev-card-img span{ position:absolute; left:14px; top:14px; }
.ev-card-body{ padding:22px; display:flex; flex-direction:column; flex:1; }
.ev-card-body h3{ font-size:20px; margin:0 0 8px; }
.ev-card-body p{ font-size:15px; color:var(--ev-muted); margin:0; flex:1; }

/* ============ STORY DARK BAND ============ */
.ev-story{ background:var(--ev-ink); color:#c7d2d5; }
.ev-story .ev-inner{ max-width:var(--ev-maxw); margin:0 auto; padding:0 22px; display:grid; grid-template-columns:1fr; gap:36px; align-items:center; }
.ev-story-media{ border-radius:var(--ev-r-lg); overflow:hidden; box-shadow:var(--ev-shadow); }
.ev-story-media img{ width:100%; }
.ev-story-body h2{ color:#fff; font-size:36px; }
.ev-story-body p{ color:#a9b7bb; }
.ev-story-body .ev-eyebrow{ color:var(--ev-teal); }

/* ============ SPEC STRIP ============ */
.ev-specs{ display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background:var(--ev-line); border:1px solid var(--ev-line); border-radius:var(--ev-r-lg); overflow:hidden; }
.ev-spec{ background:var(--ev-bg); padding:26px 20px; text-align:center; }
.ev-spec-ic{ width:40px; height:40px; margin:0 auto 12px; }
.ev-spec-ic svg{ width:40px; height:40px; stroke:var(--ev-teal); fill:none; stroke-width:1.5; }
.ev-spec b{ display:block; font-family:'Sora',sans-serif; font-size:17px; color:var(--ev-ink); }
.ev-spec span{ display:block; font-size:13.5px; color:var(--ev-muted); margin-top:4px; }

/* ============ USŁUGI GRID (links to pages) ============ */
.ev-grid{ display:grid; grid-template-columns:1fr; gap:20px; }
.ev-svc{ background:var(--ev-bg); border:1px solid var(--ev-line); border-radius:var(--ev-r-lg); overflow:hidden; display:flex; flex-direction:column; transition:transform .2s ease, box-shadow .2s ease; }
.ev-svc:hover{ transform:translateY(-4px); box-shadow:var(--ev-shadow-sm); }
.ev-svc-img{ height:160px; background-size:cover; background-position:center; }
.ev-svc-body{ padding:20px; display:flex; flex-direction:column; flex:1; }
.ev-svc-body h3{ font-size:19px; margin:0 0 8px; }
.ev-svc-body p{ font-size:14.5px; color:var(--ev-muted); flex:1; margin:0 0 12px; }
.ev-svc-link{ font-family:'Sora',sans-serif; font-size:13px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; color:var(--ev-teal-dk); display:inline-flex; gap:6px; }
.ev-svc-link::after{ content:"\2192"; }

/* ============ KONTAKT ============ */
.ev-contact{ display:grid; grid-template-columns:1fr; gap:32px; align-items:start; }
.ev-clist{ list-style:none; margin:0; padding:0; }
.ev-clist li{ display:flex; gap:14px; align-items:flex-start; padding:16px 0; border-bottom:1px solid var(--ev-line); }
.ev-clist li:last-child{ border-bottom:0; }
.ev-cic{ flex:0 0 24px; margin-top:2px; }
.ev-cic svg{ width:22px; height:22px; stroke:var(--ev-teal-dk); fill:none; stroke-width:1.7; }
.ev-clist b{ display:block; font-size:12.5px; text-transform:uppercase; letter-spacing:.1em; color:var(--ev-muted); margin-bottom:2px; }
.ev-clist a, .ev-clist span.ev-cval{ color:var(--ev-ink); font-size:18px; font-weight:700; }
.ev-clist a:hover{ color:var(--ev-teal-dk); }
.ev-map{ border:1px solid var(--ev-line); width:100%; height:360px; border-radius:var(--ev-r-lg); }

/* ============ SUBPAGE HERO ============ */
.ev-phero{ position:relative; background:var(--ev-ink); color:#fff; overflow:hidden; }
.ev-phero-bg{ position:absolute; inset:0; background-size:cover; background-position:center; opacity:.34; z-index:0; }
.ev-phero-inner{ position:relative; z-index:1; padding:56px 22px; max-width:var(--ev-maxw); margin:0 auto; }
.ev-crumb{ font-family:'Sora',sans-serif; font-size:13px; letter-spacing:.08em; text-transform:uppercase; color:var(--ev-muted-lt); margin-bottom:12px; }
.ev-crumb a{ color:#cdd7d9; }
.ev-crumb a:hover{ color:var(--ev-teal); }
.ev-phero h1{ color:#fff; font-size:38px; margin:0; }

/* ============ ARTICLE ============ */
.ev-article{ max-width:780px; }
.ev-article h2{ font-size:26px; margin-top:34px; }
.ev-article h3{ font-size:20px; margin-top:24px; }
.ev-article ul{ padding-left:20px; margin:0 0 1.2em; }
.ev-article li{ margin-bottom:8px; }
.ev-note{ background:var(--ev-teal-lt); border-left:4px solid var(--ev-teal); padding:18px 22px; border-radius:var(--ev-r); margin:24px 0; font-size:15.5px; color:#0a3f3a; }
.ev-related{ display:grid; grid-template-columns:1fr; gap:14px; margin-top:14px; }
.ev-related a{ display:block; padding:16px 20px; border:1px solid var(--ev-line); border-radius:var(--ev-r); font-family:'Sora',sans-serif; font-weight:600; font-size:16px; color:var(--ev-ink); }
.ev-related a:hover{ border-color:var(--ev-teal); color:var(--ev-teal-dk); }

/* ============ FOOTER ============ */
.ev-foot{ background:var(--ev-paper); padding:44px 0 20px; text-align:center; border-top:1px solid var(--ev-line); }
.ev-foot-nav{ list-style:none; display:flex; flex-wrap:wrap; justify-content:center; gap:14px 26px; margin:0 0 22px; padding:0; }
.ev-foot-nav a{ font-family:'Sora',sans-serif; font-size:13px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; color:var(--ev-ink); }
.ev-foot-nav a:hover{ color:var(--ev-teal-dk); }
.ev-foot-contact{ font-size:14.5px; color:var(--ev-muted); margin:0 0 20px; }
.ev-foot-contact a{ color:var(--ev-text); font-weight:600; }
.ev-foot-sec{ list-style:none; display:flex; flex-wrap:wrap; justify-content:center; gap:8px 16px; padding:16px 0 0; margin:0 0 12px; border-top:1px solid var(--ev-line); font-size:12px; }
.ev-foot-sec a{ color:var(--ev-muted); }
.ev-foot-sec a:hover{ color:var(--ev-teal-dk); }
.ev-copy{ font-size:12px; color:var(--ev-muted-lt); margin:0; }

/* ============ STICKY MOBILE BAR ============ */
.ev-sticky{ position:fixed; bottom:0; left:0; right:0; z-index:90; display:flex; }
.ev-sticky a{ flex:1; text-align:center; padding:15px 8px; font-family:'Sora',sans-serif; font-size:13px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; }
.ev-sticky .ev-s-teal{ background:var(--ev-teal); color:#04211e; }
.ev-sticky .ev-s-ink{ background:var(--ev-ink); color:#fff; }

/* ============ COOKIE ============ */
.ev-cookie{ position:fixed; left:16px; right:16px; bottom:76px; z-index:200; background:var(--ev-ink); color:#c7d2d5; border:1px solid var(--ev-teal); border-radius:var(--ev-r); box-shadow:0 16px 44px rgba(0,0,0,.4); padding:20px 22px; display:none; }
.ev-cookie.ev-show{ display:block; }
.ev-cookie p{ margin:0 0 14px; font-size:14px; }
.ev-cookie a{ color:var(--ev-teal); }
.ev-cookie-btns{ display:flex; gap:10px; flex-wrap:wrap; }
.ev-cookie .ev-btn{ padding:10px 18px; font-size:13px; }
.ev-btn-line{ background:transparent; color:#c7d2d5 !important; border-color:var(--ev-line-dk); }
.ev-btn-line:hover{ border-color:#fff; color:#fff !important; }

/* ============ RESPONSIVE ============ */
@media (min-width:640px){
	.ev-cards{ grid-template-columns:repeat(2,1fr); }
	.ev-grid{ grid-template-columns:repeat(2,1fr); }
	.ev-specs{ grid-template-columns:repeat(4,1fr); }
	.ev-cookie{ left:auto; right:24px; max-width:460px; bottom:24px; }
}
@media (min-width:992px){
	body{ font-size:17px; }
	.ev-sticky{ display:none; }
	.ev-toggle{ display:none; }
	.ev-nav{ display:block !important; }
	.ev-nav ul{ display:flex; gap:26px; align-items:center; }
	.ev-nav a{ padding:4px 0; border-bottom:2px solid transparent; }
	.ev-nav a:hover, .ev-nav a.ev-active{ border-bottom-color:var(--ev-teal); color:#fff; }
	.ev-nav-cta{ margin-top:0; }
	.ev-hero h1{ font-size:66px; }
	.ev-hero-inner{ padding:118px 22px 124px; }
	.ev-ctabox{ grid-template-columns:1.4fr 1fr; text-align:left; }
	.ev-ctabox .ev-btns{ justify-content:flex-end; }
	.ev-cards{ grid-template-columns:repeat(4,1fr); }
	.ev-grid{ grid-template-columns:repeat(3,1fr); }
	.ev-story .ev-inner{ grid-template-columns:1fr 1fr; gap:56px; padding-top:70px; padding-bottom:70px; }
	.ev-story.ev-story-rev .ev-story-media{ order:2; }
	.ev-contact{ grid-template-columns:1fr 1fr; }
	.ev-related{ grid-template-columns:repeat(2,1fr); }
	.ev-head h2{ font-size:46px; }
	.ev-phero h1{ font-size:52px; }
}
