/*
Theme Name: CoreDigify ABZ Finance
Theme URI: https://www.abzfinance.lv
Template: coredigify-base
Author: CoreDigify
Author URI: https://my.coredigify.com
Description: Corporate finance design for abzfinance.lv, visually matching the sister site pbfinanses.lv (SKT Kraft Pro look): light top contact bar, centered logo, full-width teal menu, hero with CTAs, dark 3-column footer. Child of coredigify-base; multilingual via Polylang (menus by theme location, [abz_lang_switcher]).
Version: 0.1.2
Requires at least: 6.4
Tested up to: 7.0
Requires PHP: 8.1
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: coredigify-abz
*/

@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&family=Roboto+Condensed:wght@300;400;700&display=swap");

:root{
  --abz-teal:#236e74;
  --abz-teal-dark:#1b565b;
  --abz-teal-soft:#eaf3f4;
  --abz-ink:#454545;
  --abz-muted:#7f7f7f;
  --abz-light:#efefef;
  --abz-line:#dcdcdc;
  --abz-footer:#464d51;
  --abz-footer-deep:#3a4043;
  --abz-white:#ffffff;
}

body{
  font-family:'Roboto', Arial, sans-serif;
  color:var(--abz-ink);
  background:var(--abz-white);
  margin:0;
}

h1,h2,h3,h4,h5,h6{
  font-family:'Roboto Condensed','Roboto',sans-serif;
  color:var(--abz-ink);
  line-height:1.25;
}

a{ color:var(--abz-teal); }
a:hover{ color:var(--abz-teal-dark); }

.abz-wrap{ max-width:1170px; margin:0 auto; padding:0 20px; }

/* ── Top bars (row 1: social, row 2: contacts + search) ──────── */
.abz-topbar{ background:var(--abz-light); border-bottom:1px solid var(--abz-line); font-size:.85rem; }
.abz-topbar .abz-wrap{ display:flex; flex-wrap:wrap; align-items:center; gap:.6rem; min-height:40px; }
.abz-topbar p{ margin:.3rem 0; color:var(--abz-muted); display:flex; align-items:center; gap:.45rem; }
.abz-topbar a{ color:var(--abz-ink); text-decoration:none; display:inline-flex; align-items:center; gap:.3rem; }
.abz-topbar a:hover{ color:var(--abz-teal); }
.abz-topbar .abz-ic{ width:15px; height:15px; fill:currentColor; vertical-align:middle; }
.abz-topbar-social a{ display:inline-flex; width:26px; height:26px; align-items:center; justify-content:center; background:#dcdcdc; border-radius:3px; }
.abz-topbar-social a:hover{ background:var(--abz-teal); color:#fff; }
.abz-topbar-info{ background:#fff; border-bottom:1px solid var(--abz-line); }
.abz-topbar-info .abz-wrap{ justify-content:flex-end; min-height:48px; }
.abz-search form{ display:flex; }
.abz-search input[type="search"], .abz-search input[type="text"]{
  border:1px solid var(--abz-line); padding:.45rem .7rem; font-size:.85rem; width:150px; border-radius:0;
}
.abz-search button, .abz-search input[type="submit"]{
  background:var(--abz-teal); color:#fff; border:0; padding:.45rem .8rem; cursor:pointer;
}
.abz-search button:hover, .abz-search input[type="submit"]:hover{ background:var(--abz-teal-dark); }

/* ── Masthead (centered logo) ────────────────────────────────── */
.abz-masthead{ background:var(--abz-white); padding:28px 0; text-align:center; }
.abz-masthead img{ max-height:110px; width:auto; }

/* ── Primary nav — full-width teal bar ───────────────────────── */
.abz-nav{ background:var(--abz-teal); }
.abz-nav ul{ list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; justify-content:center; }
.abz-nav li{ position:relative; }
.abz-nav a{
  display:block; padding:14px 18px; color:#fff; text-decoration:none;
  font-family:'Roboto Condensed',sans-serif; font-size:1rem; letter-spacing:.03em; text-transform:uppercase;
}
.abz-nav li:hover > a, .abz-nav .current-menu-item > a{ background:var(--abz-teal-dark); }
/* dropdown */
.abz-nav li ul{ display:none; position:absolute; left:0; top:100%; background:var(--abz-teal-dark); min-width:240px; z-index:50; }
.abz-nav li:hover > ul{ display:block; }
.abz-nav li ul a{ text-transform:none; font-family:'Roboto',sans-serif; font-size:.92rem; padding:11px 16px; }
.abz-nav li ul li:hover > a{ background:var(--abz-teal); }
/* language switcher inside the bar */
.abz-nav .abz-lang{ display:flex; align-items:center; padding:0 10px; gap:8px; }
.abz-nav .abz-lang a{ padding:14px 4px; opacity:.75; }
.abz-nav .abz-lang a:hover, .abz-nav .abz-lang .current-lang a{ opacity:1; background:transparent; }
.abz-nav .abz-lang img{ display:block; }

/* ── Hero slider (nivo-style, JS in js/abz.js) ───────────────── */
.abz-slider{ position:relative; overflow:hidden; min-height:340px; height:56vw; max-height:520px; background:var(--abz-teal-soft); }
.abz-slide{
  position:absolute; inset:0; opacity:0; transition:opacity .9s ease; pointer-events:none;
  background-size:cover; background-position:center right;
}
.abz-slide.is-active{ opacity:1; pointer-events:auto; }
.abz-slide .slide-info{
  position:absolute; left:0; right:0; top:50%; transform:translateY(-50%);
}
.abz-slide .slide-info-inner{ max-width:1170px; margin:0 auto; padding:0 20px; }
.abz-slide .slide-box{ max-width:560px; }
.abz-slide h2{ font-size:2.5rem; font-weight:300; line-height:1.15; margin:0 0 .9rem; color:var(--abz-ink); }
.abz-slide h2 strong{ font-weight:700; display:block; }
.abz-slide h2 span{ font-weight:300; }
.abz-slide p{ font-size:1.05rem; margin:0 0 1.3rem; color:var(--abz-ink); max-width:480px; }
.abz-slide a h2, .abz-slide a{ text-decoration:none; }
.abz-slider-arrow{
  position:absolute; top:50%; transform:translateY(-50%); z-index:5;
  background:rgba(0,0,0,.35); color:#fff; border:0; width:42px; height:42px; cursor:pointer;
  font-size:1.3rem; line-height:1; border-radius:3px;
}
.abz-slider-arrow:hover{ background:var(--abz-teal); }
.abz-slider-prev{ left:14px; }
.abz-slider-next{ right:14px; }
.abz-slider-dots{ position:absolute; left:50%; transform:translateX(-50%); bottom:14px; display:flex; gap:8px; z-index:5; }
.abz-slider-dots button{ width:11px; height:11px; border-radius:50%; border:0; background:rgba(0,0,0,.3); cursor:pointer; padding:0; }
.abz-slider-dots button.is-active{ background:var(--abz-teal); }

/* ── Section title (centered, teal underline) ────────────────── */
.abz-section-title{ text-align:center; font-size:1.9rem; font-weight:400; text-transform:none; margin:2.4rem 0 .4rem; }
.abz-section-title::after{ content:""; display:block; width:64px; height:3px; background:var(--abz-teal); margin:.7rem auto 1.6rem; }

/* ── Service feature columns (front page) ────────────────────── */
.abz-cols3{ display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:1.8rem; margin:1.5rem 0 2.2rem; }
.abz-item h3{ font-size:1.15rem; text-transform:uppercase; letter-spacing:.03em; margin:0 0 .7rem; color:var(--abz-teal); }
.abz-item ul{ margin:0 0 .8rem; padding-left:1.1rem; }
.abz-item li{ margin-bottom:.35rem; font-size:.95rem; }
.abz-item .rdmore{ font-family:'Roboto Condensed',sans-serif; text-transform:uppercase; letter-spacing:.04em; text-decoration:none; }
.abz-item .rdmore:hover{ text-decoration:underline; }

/* ── Testimonials rotator (auto-fading quotes, JS in abz.js) ─── */
.abz-rotator{ position:relative; background:var(--abz-light); border-radius:4px; padding:2rem 2.2rem 2.6rem; margin:0 0 2.5rem; min-height:200px; }
.abz-rotator-item{ display:none; }
.abz-rotator-item.is-active{ display:flex; gap:1.4rem; align-items:flex-start; animation:abzFade .7s ease; }
@keyframes abzFade{ from{opacity:0} to{opacity:1} }
.abz-rotator-item img{ width:96px; height:96px; border-radius:50%; object-fit:cover; flex:0 0 auto; }
.abz-rotator-item .tm-text{ font-style:italic; }
.abz-rotator-item .tm-text strong{ font-style:normal; display:block; margin-top:.6rem; color:var(--abz-teal); }
.abz-rotator-dots{ position:absolute; left:50%; transform:translateX(-50%); bottom:12px; display:flex; gap:8px; }
.abz-rotator-dots button{ width:10px; height:10px; border-radius:50%; border:0; background:#c2c7c9; cursor:pointer; padding:0; }
.abz-rotator-dots button.is-active{ background:var(--abz-teal); }

/* ── Hero (used as pattern inside front page content) ────────── */
.abz-hero{ background:var(--abz-teal-soft); }
.abz-hero .abz-hero-inner{ display:flex; flex-wrap:wrap; align-items:center; gap:2rem; padding:3rem 0; }
.abz-hero .abz-hero-text{ flex:1 1 420px; }
.abz-hero .abz-hero-img{ flex:0 1 380px; text-align:center; }
.abz-hero h1, .abz-hero h2{ font-size:2.4rem; font-weight:300; margin:0 0 1rem; }
.abz-hero h1 strong, .abz-hero h2 strong{ font-weight:700; color:var(--abz-teal); }
.abz-btn, .abz-hero .wp-block-button__link{
  display:inline-block; background:var(--abz-teal); color:#fff !important; text-decoration:none;
  padding:.7rem 1.6rem; border-radius:3px; font-family:'Roboto Condensed',sans-serif; text-transform:uppercase; letter-spacing:.04em;
}
.abz-btn:hover, .abz-hero .wp-block-button__link:hover{ background:var(--abz-teal-dark); }
.abz-btn--ghost{ background:transparent; color:var(--abz-teal) !important; border:2px solid var(--abz-teal); }
.abz-btn--ghost:hover{ background:var(--abz-teal); color:#fff !important; }

/* ── Content shell ───────────────────────────────────────────── */
.abz-main{ padding:2.5rem 0 3rem; }
.abz-main .abz-page-title{ text-align:center; font-size:1.9rem; text-transform:uppercase; letter-spacing:.04em; margin:0 0 .4rem; }
.abz-main .abz-page-title::after{ content:""; display:block; width:64px; height:3px; background:var(--abz-teal); margin:.7rem auto 1.6rem; }
.abz-content blockquote{
  border-left:4px solid var(--abz-teal); background:var(--abz-teal-soft);
  margin:1.2rem 0; padding:1rem 1.4rem; font-style:italic;
}
.abz-content ul li{ margin-bottom:.4rem; }
.abz-content img{ max-width:100%; height:auto; }

/* team card (Par kompāniju) */
.abz-team{ display:flex; flex-wrap:wrap; gap:1.6rem; align-items:flex-start; background:var(--abz-light); padding:1.6rem; border-radius:4px; }
.abz-team img{ border-radius:4px; flex:0 0 auto; }

/* service cards grid (Pakalpojumi) */
.abz-services{ display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:1rem; margin:1.6rem 0; }
.abz-services a{
  display:block; background:var(--abz-teal); color:#fff; text-decoration:none; text-align:center;
  padding:1.4rem 1rem; border-radius:4px; font-family:'Roboto Condensed',sans-serif; text-transform:uppercase; letter-spacing:.03em;
}
.abz-services a:hover{ background:var(--abz-teal-dark); }

/* ── Footer — dark, 3 columns ────────────────────────────────── */
.abz-footer{ background:var(--abz-footer); color:#cfd3d5; font-size:.92rem; }
.abz-footer .abz-footer-cols{ display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:2rem; padding:2.6rem 0; }
.abz-footer h5{ color:#fff; font-size:1.05rem; text-transform:uppercase; letter-spacing:.05em; margin:0 0 1rem; }
.abz-footer a{ color:#cfd3d5; text-decoration:none; }
.abz-footer a:hover{ color:#fff; }
.abz-footer ul{ list-style:none; margin:0; padding:0; }
.abz-footer li{ padding:.28rem 0; border-bottom:1px solid rgba(255,255,255,.06); }
.abz-footer p{ margin:.4rem 0; }
.abz-footerbar{ background:var(--abz-footer-deep); padding:.9rem 0; font-size:.85rem; color:#aeb4b7; }
.abz-footerbar .abz-wrap{ display:flex; flex-wrap:wrap; justify-content:space-between; gap:.5rem; }

/* ── Mobile nav toggle ───────────────────────────────────────── */
.abz-nav-toggle{
  display:none; background:transparent; color:#fff; border:0; cursor:pointer;
  font-family:'Roboto Condensed',sans-serif; font-size:1.05rem; text-transform:uppercase;
  letter-spacing:.05em; padding:14px 18px; width:100%; text-align:left;
}
.abz-nav-toggle::after{ content:"☰"; float:right; }

/* ── Responsive ──────────────────────────────────────────────── */
@media (max-width:760px){
  .abz-topbar .abz-wrap, .abz-topbar-info .abz-wrap{ justify-content:center; text-align:center; }
  .abz-nav-toggle{ display:block; }
  .abz-nav .abz-nav-menus{ display:none; }
  .abz-nav.is-open .abz-nav-menus{ display:block; }
  .abz-nav ul{ flex-direction:column; }
  .abz-nav li ul{ position:static; display:block; background:var(--abz-teal-dark); min-width:0; }
  .abz-nav li ul a{ padding-left:2rem; }
  .abz-slide h2{ font-size:1.6rem; }
  .abz-slide p{ font-size:.95rem; }
  .abz-slide .slide-box{ max-width:75%; }
  .abz-rotator-item.is-active{ flex-direction:column; align-items:center; text-align:center; }
  .abz-hero .abz-hero-inner{ padding:2rem 0; }
  .abz-hero h1, .abz-hero h2{ font-size:1.7rem; }
}
