/* Oppenheimer & Co. Inc. */
/* Cezzare V0.01.php */

/* =========================
   GRAPHIK — UI FONT (ONE FAMILY)
   ========================= */

@font-face{
  font-family:'Graphik';
  src:url('../fonts/graphik/Graphik-Thin.woff2') format('woff2'),
      url('../fonts/graphik/Graphik-Thin.woff') format('woff');
  font-weight:100;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:'Graphik';
  src:url('../fonts/graphik/Graphik-ThinItalic.woff2') format('woff2'),
      url('../fonts/graphik/Graphik-ThinItalic.woff') format('woff');
  font-weight:100;
  font-style:italic;
  font-display:swap;
}
@font-face{
  font-family:'Graphik';
  src:url('../fonts/graphik/Graphik-Extralight.woff2') format('woff2'),
      url('../fonts/graphik/Graphik-Extralight.woff') format('woff');
  font-weight:200;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:'Graphik';
  src:url('../fonts/graphik/Graphik-ExtralightItalic.woff2') format('woff2'),
      url('../fonts/graphik/Graphik-ExtralightItalic.woff') format('woff');
  font-weight:200;
  font-style:italic;
  font-display:swap;
}
@font-face{
  font-family:'Graphik';
  src:url('../fonts/graphik/Graphik-Light.woff2') format('woff2'),
      url('../fonts/graphik/Graphik-Light.woff') format('woff');
  font-weight:300;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:'Graphik';
  src:url('../fonts/graphik/Graphik-LightItalic.woff2') format('woff2'),
      url('../fonts/graphik/Graphik-LightItalic.woff') format('woff');
  font-weight:300;
  font-style:italic;
  font-display:swap;
}
@font-face{
  font-family:'Graphik';
  src:url('../fonts/graphik/Graphik-Regular.woff2') format('woff2'),
      url('../fonts/graphik/Graphik-Regular.woff') format('woff');
  font-weight:400;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:'Graphik';
  src:url('../fonts/graphik/Graphik-RegularItalic.woff2') format('woff2'),
      url('../fonts/graphik/Graphik-RegularItalic.woff') format('woff');
  font-weight:400;
  font-style:italic;
  font-display:swap;
}
@font-face{
  font-family:'Graphik';
  src:url('../fonts/graphik/Graphik-Medium.woff2') format('woff2'),
      url('../fonts/graphik/Graphik-Medium.woff') format('woff');
  font-weight:500;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:'Graphik';
  src:url('../fonts/graphik/Graphik-MediumItalic.woff2') format('woff2'),
      url('../fonts/graphik/Graphik-MediumItalic.woff') format('woff');
  font-weight:500;
  font-style:italic;
  font-display:swap;
}
@font-face{
  font-family:'Graphik';
  src:url('../fonts/graphik/Graphik-Semibold.woff2') format('woff2'),
      url('../fonts/graphik/Graphik-Semibold.woff') format('woff');
  font-weight:600;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:'Graphik';
  src:url('../fonts/graphik/Graphik-SemiboldItalic.woff2') format('woff2'),
      url('../fonts/graphik/Graphik-SemiboldItalic.woff') format('woff');
  font-weight:600;
  font-style:italic;
  font-display:swap;
}
@font-face{
  font-family:'Graphik';
  src:url('../fonts/graphik/Graphik-Bold.woff2') format('woff2'),
      url('../fonts/graphik/Graphik-Bold.woff') format('woff');
  font-weight:700;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:'Graphik';
  src:url('../fonts/graphik/Graphik-BoldItalic.woff2') format('woff2'),
      url('../fonts/graphik/Graphik-BoldItalic.woff') format('woff');
  font-weight:700;
  font-style:italic;
  font-display:swap;
}

/* "Graphik Super" mapped into Graphik 900 */
@font-face{
  font-family:'Graphik';
  src:url('../fonts/graphik/Graphik-Super.woff2') format('woff2'),
      url('../fonts/graphik/Graphik-Super.woff') format('woff');
  font-weight:900;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:'Graphik';
  src:url('../fonts/graphik/Graphik-SuperItalic.woff2') format('woff2'),
      url('../fonts/graphik/Graphik-SuperItalic.woff') format('woff');
  font-weight:900;
  font-style:italic;
  font-display:swap;
}
@font-face{
  font-family:'Graphik';
  src:url('../fonts/graphik/Graphik-Black.woff2') format('woff2'),
      url('../fonts/graphik/Graphik-Black.woff') format('woff');
  font-weight:900;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:'Graphik';
  src:url('../fonts/graphik/Graphik-BlackItalic.woff2') format('woff2'),
      url('../fonts/graphik/Graphik-BlackItalic.woff') format('woff');
  font-weight:900;
  font-style:italic;
  font-display:swap;
}

/* =========================
   FREIGHT TEXT PRO (alias) — headings
   ========================= */
@font-face{
  font-family:'FreightTextPro';
  src:url('../fonts/freight-text-pro/FreightTextProBook-Regular.woff2') format('woff2'),
      url('../fonts/freight-text-pro/FreightTextProBook-Regular.woff') format('woff');
  font-weight:400;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:'FreightTextPro';
  src:url('../fonts/freight-text-pro/FreightTextProBook-Italic.woff2') format('woff2'),
      url('../fonts/freight-text-pro/FreightTextProBook-Italic.woff') format('woff');
  font-weight:400;
  font-style:italic;
  font-display:swap;
}
@font-face{
  font-family:'FreightTextPro';
  src:url('../fonts/freight-text-pro/FreightTextProBold-Regular.woff2') format('woff2'),
      url('../fonts/freight-text-pro/FreightTextProBold-Regular.woff') format('woff');
  font-weight:700;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:'FreightTextPro';
  src:url('../fonts/freight-text-pro/FreightTextProBold-Italic.woff2') format('woff2'),
      url('../fonts/freight-text-pro/FreightTextProBold-Italic.woff') format('woff');
  font-weight:700;
  font-style:italic;
  font-display:swap;
}

/* Smoothing + anchors */
body{
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
:target{scroll-margin-top:90px}

/* --- Theme variables --- */
:root{
  --ink:#0b0d12;
  --muted:#4b5563;
  --line:#e6e9ee;
  --bg:#ffffff;
  --soft:#f6f7f9;
  --brand:#2b6d9f;
  --brand-2:#1f5c88;

  --radius:16px;
  --shadow:0 10px 30px rgba(0,0,0,.06);
  --wrap:1120px;
}

/* --- Base --- */
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family:'Graphik',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;
  line-height:1.55;
}
a{color:inherit;text-decoration:none}
a:hover{color:var(--brand)}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 18px}

/* Headings */
h1,h2,h3,h4,h5,h6{
  font-family:'FreightTextPro',Georgia,'Times New Roman',serif;
  letter-spacing:-0.02em;
  margin:0 0 10px;
  font-weight:400; /* default: not bold */
}
p{margin:0 0 12px;color:var(--muted)}

/* =========================
   HEADER (final)
   ========================= */
.topbar{
  position:sticky;
  top:0;
  z-index:100;
  transition:background .25s ease,border-color .25s ease,box-shadow .25s ease;
}
.topbar--transparent{
  background:rgba(255,255,255,0);
  border-bottom:1px solid rgba(0,0,0,0);
  backdrop-filter:none;
}
.topbar.is-scrolled{
  background:rgba(255,255,255,.86);
  backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(0,0,0,.12);
  box-shadow:0 10px 30px rgba(0,0,0,.06);
}
.topbar-inner{
  height:68px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}
.brand{display:flex;align-items:center;gap:12px}
.brand-logo{height:28px;width:auto;display:block}

.topbar-right{
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:14px;
}

.nav{
  display:flex;
  align-items:center;
  gap:40px;
  margin-right:6px;
}
.nav-link{
  font-size:14px;
  font-weight:500;       /* little fuller */
  opacity:.86;
  letter-spacing:.01em;
  line-height:1;
  position:relative;
}
.nav-link:hover{opacity:1}
.nav-link.is-active{
  opacity:1;
  font-weight:600;
}
.nav-link.is-active::after{
  content:'';
  position:absolute;
  left:0;
  bottom:-6px;
  width:100%;
  height:1px;
  background:rgba(0,0,0,.45);
}

.topbar-actions{
  display:flex;
  align-items:center;
  gap:12px;
}

/* Partner login (as nav link) */
.nav-link-login{
  font-weight:600;
  color:var(--ink);
  margin-left:8px;
}
.nav-link-login:hover{color:var(--brand)}
.nav-link-login{
  position:relative;
}
.nav-link-login::after{
  content:'';
  position:absolute;
  left:0;
  bottom:-6px;
  width:0;
  height:1px;
  background:var(--brand);
  transition:width .2s ease;
}
.nav-link-login:hover::after{width:100%}

/* Language popup */
.lang-pop{position:relative}
.lang-btn{
  height:40px;
  padding:0 6px;
  border:none;
  background:transparent;
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:13px;
  font-weight:600;
  color:var(--ink);
  cursor:pointer;
}
.lang-btn:hover{opacity:.75}
.lang-btn:focus-visible{outline:none;opacity:.7}

.lang-menu{
  position:absolute;
  top:46px;
  right:0;
  min-width:170px;
  padding:8px;
  border-radius:14px;
  border:1px solid rgba(0,0,0,.12);
  background:rgba(255,255,255,.96);
  box-shadow:0 18px 40px rgba(0,0,0,.10);
  display:none;
}
.lang-pop.is-open .lang-menu{display:block}

.lang-item{
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 10px;
  border-radius:12px;
  font-size:13px;
  color:var(--ink);
  opacity:.92;
}
.lang-item:hover{background:rgba(0,0,0,.04);opacity:1}
.lang-item.is-active{background:rgba(43,109,159,.10);opacity:1}
.lang-flag{font-size:16px;line-height:1}
.lang-caret{opacity:.7}

/* =========================
   BUTTONS
   ========================= */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:40px;
  padding:0 18px;
  border-radius:6px;          /* ⬅️ BLAGO, bankarski */
  border:1px solid var(--line);
  font-weight:500;            /* ⬅️ manje agresivno */
  font-size:14px;
  background:#fff;
  color:var(--ink);
}
.btn-primary{
  background:var(--brand);
  border-color:var(--brand);
  color:#fff;
}
.btn-primary:hover{
  background:var(--brand-2);
  border-color:var(--brand-2);
  color:#fff;
}
.btn-ghost{
  background:transparent;
  border-color:var(--line);
}

/* Main */
.main{padding:2px 0 60px}

/* =========================
   HERO (image)
   ========================= */
.hero.hero--image{
  position:relative;
  min-height:550px;
  display:flex;
  align-items:center;
  padding:0;
  overflow:hidden;
}
.hero.hero--image .hero-bg{
  position:absolute;
  inset:0;
  background-image:url('../img/ica.jpg');
  background-size:cover;
  background-position:center;
  transform:scale(1.02);
}
.hero.hero--image .hero-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(
    180deg,
    rgba(0,0,0,.55) 0%,
    rgba(0,0,0,.40) 40%,
    rgba(0,0,0,.55) 100%
  );
}
.hero.hero--image .hero-inner{
  position:relative;
  z-index:2;
  padding:110px 0 80px;
  max-width:720px;
  color:#fff;
  margin-left:410px;     /* nema onog 290px dupliranja */
}

.kicker{
  display:inline-block;
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-weight:700;
  margin-bottom:10px;
  color:var(--brand);
}
.kicker--white{color:rgba(255,255,255,.92)}

.hero h1{font-size:54px;line-height:1.05}
.hero-title--white{color:#fff}
.hero p{max-width:760px;font-size:16px}
.hero-lead--white{color:rgba(255,255,255,.82);max-width:760px}

.hero-actions{display:flex;gap:12px;margin-top:16px;flex-wrap:wrap}

.btn-ghost--white{
  border-color:rgba(255,255,255,.45);
  color:#fff;
  background:rgba(255,255,255,.06);
}
.btn-ghost--white:hover{
  border-color:rgba(255,255,255,.70);
  color:#fff;
  background:rgba(255,255,255,.12);
}

/* =========================
   GENERIC SECTIONS (keep)
   ========================= */
.section{padding:40px 0}

/* =========================
   CORE FOCUS (LINE BASED) — SINGLE SOURCE OF TRUTH
   ========================= */
.cf-head{
  max-width:820px;
  margin:0 0 22px;
}
.cf-title{
  font-size:56px;
  line-height:1.03;
  margin:0 0 14px;
  font-family:'FreightTextPro',Georgia,'Times New Roman',serif;
  font-weight:400; /* NOT bold */
}
.cf-lead{
  font-size:16px;
  color:var(--muted);
  margin:0;
}

.cf-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:0;
  border-top:1px solid #111;   /* thinner line */
  padding-top:18px;
  margin-top:18px;
  align-items:stretch;
}
.cf-item{
  padding:0 22px 18px;
  display:flex;
  flex-direction:column;
  min-height:100%;
}
.cf-item + .cf-item{
  border-left:1px solid #111;  /* thinner separators */
}

.cf-img{
  width:100%;
  height:160px;
  overflow:hidden;
  border-radius:2px;
  margin:6px 0 18px;
}
.cf-img img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.cf-h{
  font-size:38px;
  line-height:1.05;
  margin:0 0 14px;
  white-space:pre-line;
  font-family:'FreightTextPro',Georgia,'Times New Roman',serif;
  font-weight:400; /* NOT bold */
}
.cf-p{
  font-size:16px;
  line-height:1.8;
  color:var(--muted);
  margin:0 0 18px;
  max-width:54ch;
}
.cf-more{
  margin-top: auto;
  display: inline-flex;
  gap: 8px;
  align-items: center;

  font-family: 'Graphik', system-ui, sans-serif;
  font-size: 13px;        /* ⬅️ manji font */
  font-weight: 400;       /* ⬅️ light */
  letter-spacing: .03em;  /* ⬅️ elegantno, institucionalno */

  color: var(--brand);
}
.cf-more span{
  font-size: 12px;
  font-weight: 300;
  transform: translateY(1px);
  opacity: .85;
}
.cf-more:hover{color:var(--brand-2)}

/* =========================
   FOOTER (pro / divider style)
   ========================= */
.footer--pro{
  border-top: 1px solid #111;
  background:#fff;
  padding:26px 0 22px;
}
.footer-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:22px;
}
.footer-leftblock{
  flex:0 0 300px;
  max-width:340px;
}
.footer-mark{
  width:130px;
  max-width:100%;
  height:auto;
  display:block;
  opacity:.95;
}
.footer-lefttext{margin-top:12px}

.footer-grid{
  flex:1 1 auto;
  display:grid;
  grid-template-columns:1.05fr 1fr 1fr;
  gap:0;
  min-width:0;
}
.footer-col{padding:6px 18px 6px 0}
.footer-col--vsep{
  border-left: 1px solid #111;
  padding-left:18px;
}
.footer-h{
  font-size:12px;
  font-weight:700;
  letter-spacing:.10em;
  text-transform:uppercase;
  color:var(--ink);
  margin:2px 0 10px;
}
.footer-a{
  display:block;
  padding:6px 0;
  font-size:13px;
  color:var(--muted);
}
.footer-a:hover{color:var(--ink)}

.footer-hr{
   height: 1px;
  background: #111; /* ⬅️ tamna tanka linija */
  margin:16px 0;
}
.footer-legalblock{padding-top:4px;max-width:1120px}
.footer-small{
  font-size:12px;
  color:#6b7280;
  line-height:1.55;
}

/* --- Scroll reveal --- */
.reveal{
  opacity:0;
  transform:translateY(14px);
  transition:opacity .7s ease,transform .7s ease;
  will-change:opacity,transform;
}
.reveal.is-in{
  opacity:1;
  transform:translateY(0);
}

/* =========================
   RESPONSIVE
   ========================= */
@media (max-width:980px){
  .nav{display:none}
  .topbar-right{gap:10px}
  .hero h1{font-size:40px}
  .hero.hero--image{min-height:520px}
  .hero.hero--image .hero-inner{padding:96px 0 60px}

  .cf-title{font-size:40px}
  .cf-grid{grid-template-columns:1fr;border-top:1px solid #111}
  .cf-item{padding:0 0 22px}
  .cf-item + .cf-item{
    border-left:0;
    border-top:1px solid #111;
    padding-top:22px;
    margin-top:22px;
  }
  .cf-h{font-size:32px}
  .footer-row{flex-direction:column}
  .footer-leftblock{flex:0 0 auto;max-width:100%}
  .footer-grid{grid-template-columns:1fr}
  .footer-col{padding-right:0}
  .footer-col--vsep{
    border-left:none;
    padding-left:0;
    border-top:1px solid var(--line);
    margin-top:10px;
    padding-top:14px;
  }
}
/* =========================
   Insights & Thought Leadership (line-based)
   ========================= */
.ins-head{
  max-width: 900px;
  margin: 0 0 18px;
}

.ins-title{
  font-family: 'FreightTextPro', Georgia, 'Times New Roman', serif;
  font-size: 56px;
  line-height: 1.03;
  margin: 0 0 14px;
  font-weight: 400; /* not bold */
}

.ins-lead{
  margin: 0;
  font-size: 16px;
  line-height: 1.8;
  color: var(--muted);
  max-width: 78ch;
}

.ins-divider{
  height: 1px;
  background: #111;      /* crna tanka linija */
  width: 100%;
  margin:24px 0 26px;
}

.ins-grid{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  margin-top: 18px;
}

.ins-item{
  padding:0 22px 10px;
  min-width: 0;
}

.ins-item--vsep{
  border-left: 1px solid #111;
  padding-left: 22px;
  padding-right: 0;
}

.ins-kicker{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: 'Graphik', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;
  font-size: 12px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: rgba(0,0,0,.70);
  margin-bottom: 10px;
}

.ins-ic{
  color: rgba(0,0,0,.55);
  font-size: 14px;
  transform: translateY(-1px);
}

.ins-h{
  font-family: 'FreightTextPro', Georgia, 'Times New Roman', serif;
  font-size: 34px;
  line-height: 1.06;
  margin: 0 0 12px;
  font-weight: 400; /* not bold */
}

.ins-p{
  margin: 0 0 14px;
  font-size: 16px;
  line-height: 1.8;
  color: var(--muted);
  max-width: 72ch;
}

.ins-list{
  list-style: none;
  padding: 0;
  margin: 0 0 16px;
  display: grid;
  gap: 10px;
}

.ins-list li{
  display: flex;
  gap: 10px;
  align-items: flex-start;
  color: var(--muted);
  line-height: 1.7;
  font-size: 14px;
}

.ins-check{
  display: inline-flex;
  width: 18px;
  height: 18px;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(0,0,0,.35);
  border-radius: 4px;
  font-size: 12px;
  line-height: 1;
  color: rgba(0,0,0,.70);
  transform: translateY(2px);
}

.ins-more{
  display: inline-flex;
  gap: 10px;
  align-items: center;
  font-family: 'Graphik', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;
  font-size: 13px;
  font-weight: 300;              /* light */
  color: var(--muted);            /* ⬅️ sivo, profesionalno */
}

.ins-more:hover{
  color: var(--brand);            /* Oppenheimer blue */
}



@media (max-width: 980px){
  .ins-title{ font-size: 40px; }
  .ins-grid{ grid-template-columns: 1fr; }
  .ins-item{ padding-right: 0; }
  .ins-item--vsep{
    border-left: 0;
    border-top: 1px solid #111;
    padding-left: 0;
    padding-top: 22px;
    margin-top: 22px;
  }
}

/* =========================
   CTA BAND (full-width image, content right)
   ========================= */

.cta-band{
  position: relative;
  min-height: 500px;
  display: flex;
  align-items: center;
  overflow: hidden;
}

/* Background image */
.cta-band__bg{
  position: absolute;
  inset: 0;
  background: url('../img/im1.jpg') center/cover no-repeat;
  transform: scale(1.02);
  z-index: 0;
}

/* Dark overlay so white text stays readable */
.cta-band__overlay{
  position: absolute;
  inset: 0;
  background: linear-gradient(
    90deg,
    rgba(0,0,0,.12) 0%,
    rgba(0,0,0,.34) 55%,
    rgba(0,0,0,.62) 100%
  );
  z-index: 1;
}

/* Content container */
.cta-band .wrap{
  position: relative;
  z-index: 2;

  max-width: none;          /* ⬅️ više nije zaključano na 1120 */
  padding-left: 18px;
  padding-right: 18px;

  display: flex;
  justify-content: flex-end;
}

.cta-band__inner{
  width: min(400px, 100%);  /* široko ali kontrolisano */
  margin-right: 190px;       /* ⬅️ pomera udesno kako hoćeš */
  color: #fff;
}

/* Title / text styles */
.cta-band__title{
  font-family: 'FreightTextPro', Georgia, 'Times New Roman', serif;
  font-weight: 400;
  font-size: 48px;
  line-height: 1.04;
  margin: 0 0 12px;
  color: #fff;
}

.cta-band__text{
  margin: 0 0 18px;
  color: rgba(255,255,255,.88);
  font-size: 16px;
  line-height: 1.75;
  max-width: 60ch;
}

/* Button: keep your site style, just ensure readable on dark */
.cta-band__btn{
  border-radius: 6px; /* your new "malo oblo" standard */
}

/* Mobile */
@media (max-width: 980px){
  .cta-band{ min-height: 420px; }

  .cta-band .wrap{
    justify-content: flex-start;
  }

  /* širina bloka, bez "sužavanja" */
.cta-band__inner{
  max-width: 680px;        /* veće */
  padding-left: 0;         /* ukini levo sužavanje */
  margin-left: auto;       /* gura blok udesno */
}

/* ako hoćeš da bude još bliže desnoj ivici wrap-a */
.cta-band .wrap{
  justify-content: flex-end;
}

  .cta-band__title{ font-size: 38px; }
}

/* =========================
   Transactions teaser (image left, text right)
   ========================= */
.tx-row{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  border-top: 1px solid #111;
  padding-top: 22px;
  align-items: center;
}

.tx-media{
  padding-right: 22px;
}

.tx-media img{
  width: 100%;
  height: 320px;
  object-fit: cover;
  display: block;
}

.tx-copy{
  border-left: 1px solid #111;
  padding-left: 22px;
}

.tx-title{
  font-size: 48px;
  line-height: 1.05;
  margin: 0 0 14px;
  font-weight: 400; /* Freight default, not bold */
}

.tx-text{
  margin: 0 0 18px;
  font-size: 16px;
  line-height: 1.8;
  color: var(--muted);
  max-width: 70ch;
}

/* Mobile */
@media (max-width: 980px){
  .tx-row{
    grid-template-columns: 1fr;
  }
  .tx-media{
    padding-right: 0;
  }
  .tx-media img{
    height: 240px;
  }
  .tx-copy{
    border-left: 0;
    border-top: 1px solid #111;
    padding-left: 0;
    padding-top: 18px;
    margin-top: 18px;
  }
  .tx-title{
    font-size: 38px;
  }
}
/* =========================
   FAQ Accordion (line-based)
   ========================= */
.faq-head{ max-width:820px; margin:0 0 22px; }

.faq-title{
  font-family:'FreightTextPro', Georgia, 'Times New Roman', serif;
  font-size:56px; line-height:1.03;
  margin:0 0 14px;
  font-weight:400;
}

.faq-lead{
  margin:0;
  font-size:16px;
  line-height:1.8;
  color:var(--muted);
  max-width:78ch;
}

.faq-acc{
  margin-top:26px;
  border-top:1px solid #111;
}

/* item */
.faq-item{
  border-bottom:1px solid #111;
  padding:0;
}

/* remove default marker */
.faq-item summary{ list-style:none; }
.faq-item summary::-webkit-details-marker{ display:none; }

/* question row */
.faq-q{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;

  padding:18px 0;
  cursor:pointer;
  user-select:none;
}

.faq-qtext{
  font-family:'FreightTextPro', Georgia, 'Times New Roman', serif;
  font-size:28px;
  line-height:1.15;
  font-weight:400;
  color:var(--ink);
}

/* plus/minus icon (brand blue) */
.faq-icon{
  width:22px;
  height:22px;
  position:relative;
  flex:0 0 22px;
  opacity:.9;
}
.faq-icon::before,
.faq-icon::after{
  content:'';
  position:absolute;
  left:50%;
  top:50%;
  width:18px;
  height:1px;
  background: var(--brand); /* ⬅ our blue */
  transform: translate(-50%, -50%);
}
.faq-icon::after{
  transform: translate(-50%, -50%) rotate(90deg);
  transition: transform .18s ease;
}

/* open state */
.faq-item[open] .faq-icon::after{
  transform: translate(-50%, -50%) rotate(0deg); /* becomes minus */
}

/* answer */
.faq-a{
  padding: 0 0 18px;
  max-width: 84ch;
}
.faq-a p{
  margin:0;
  font-size:15px;
  line-height:1.75;
  color:var(--muted);
}

/* subtle hover */
.faq-q:hover .faq-qtext{
  color: var(--brand);
}

/* mobile */
@media (max-width:980px){
  .faq-title{ font-size:40px; }
  .faq-qtext{ font-size:22px; }
}
/* FAQ accordion (reuse across pages) */
.faq-item{
  border-top: 1px solid #111;
  padding: 14px 0;
}
.faq-item:last-child{
  border-bottom: 1px solid #111;
}
.faq-q{
  cursor: pointer;
  list-style: none;
  font-family: 'FreightTextPro', Georgia, serif;
  font-weight: 400;
  font-size: 22px;
  line-height: 1.25;
  color: var(--ink);
  position: relative;
  padding-right: 28px;
}
.faq-q::-webkit-details-marker{ display:none; }
.faq-q::after{
  content: '+';
  position: absolute;
  right: 0;
  top: 0;
  color: var(--brand);
  font-weight: 600;
}
details[open] .faq-q::after{ content: '–'; }
.faq-a{
  margin-top: 10px;
  color: var(--muted);
  line-height: 1.8;
  max-width: 90ch;
}

/* =========================
   Company — Story in Numbers (line-based)
   ========================= */
.nums-head{
  margin: 0 0 18px;
}
.nums-title{
  font-family: 'FreightTextPro', Georgia, 'Times New Roman', serif;
  font-weight: 400;
  font-size: 56px;
  line-height: 1.03;
  margin: 0 0 10px;
}
.nums-note{
  margin: 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.7;
}

.nums-grid{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  border-top: 1px solid #111;     /* ⬅️ crna tanka linija */
  padding-top: 18px;
  margin-top: 18px;
}

.nums-item{
  padding: 6px 22px 18px;
  display: flex;
  flex-direction: column;
  min-height: 100%;
}
.nums-item--vsep{
  border-left: 1px solid #111;    /* ⬅️ crna tanka vertikalna */
}

.nums-ico{
  width: 34px;
  height: 34px;
  color: rgba(43,109,159,.75);    /* brand-plava, diskretno */
  margin: 6px 0 18px;
}
.nums-ico svg{ width: 100%; height: 100%; display:block; }

.nums-value{
  font-family: 'FreightTextPro', Georgia, 'Times New Roman', serif;
  font-weight: 400;
  font-size: 34px;
  line-height: 1.1;
  color: var(--ink);
  margin: 0 0 8px;
  letter-spacing: -0.01em;
}
.nums-prefix, .nums-suffix{
  font-size: 0.9em;
  opacity: .95;
}

.nums-label{
  font-family: 'Graphik', system-ui, sans-serif;
  font-size: 14px;
  line-height: 1.6;
  color: var(--muted);
}

/* Responsive */
@media (max-width: 980px){
  .nums-title{ font-size: 40px; }
  .nums-grid{
    grid-template-columns: 1fr;
    border-top: 1px solid #111;
  }
  .nums-item{ padding: 10px 0 18px; }
  .nums-item--vsep{
    border-left: 0;
    border-top: 1px solid #111;
    padding-top: 18px;
    margin-top: 18px;
  }
}
/* =========================
   Company — About split (image left, text right)
   ========================= */
.about-split{
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 0;
  border-top: 1px solid #111;
  padding-top: 18px;
  margin-top: 18px;
  align-items: stretch; /* ⬅️ oba stuba iste visine */
}

/* LEFT */
.about-media{
  padding: 6px 22px 18px 0;
  height: 100%;          /* ⬅️ prati visinu reda */
  min-height: 100%;      /* ⬅️ sigurnije */
}
.about-media img{
  width: 100%;
  height: 100%;          /* ⬅️ sada slika prati visinu teksta */
  min-height: 360px;     /* ⬅️ da ne bude preniska kad je malo teksta */
  object-fit: cover;
  display: block;
  border-radius: 2px;
}

.about-body{
  border-left: 1px solid #111;  /* vertical separator */
  padding: 6px 0 18px 22px;
  min-width: 0;
}

.about-kicker{
  display: inline-block;
  font-family: 'Graphik', system-ui, sans-serif;
  font-size: 12px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: rgba(0,0,0,.65);
  margin-bottom: 10px;
}

.about-title{
  font-family: 'FreightTextPro', Georgia, 'Times New Roman', serif;
  font-weight: 400;
  font-size: 44px;
  line-height: 1.05;
  margin: 0 0 12px;
}

.about-lead{
  font-size: 16px;
  line-height: 1.8;
  color: var(--muted);
  margin: 0 0 14px;
  max-width: 70ch;
}

.about-p{
  font-size: 15px;
  line-height: 1.85;
  color: var(--muted);
  margin: 0 0 12px;
  max-width: 74ch;
}
.about-p--last{ margin-bottom: 16px; }

/* Mobile */
@media (max-width: 980px){
  .about-split{
    grid-template-columns: 1fr;
  }
  .about-media{
    padding: 6px 0 18px;
  }
  .about-media img{
    height: 260px;       /* na mobilnom fiksno */
    min-height: 260px;
  }
  .about-body{
    border-left: 0;
    border-top: 1px solid #111;
    padding: 18px 0 0;
    margin-top: 18px;
  }
}
  .about-title{ font-size: 36px; }
}

/* Services hero (7x.jpg) */
.hero.hero--inner.hero--services .hero-bg{
  background-image: url('../img/7x.jpg');
}

/* =========================
   INNER HERO (ALL PAGES EXCEPT HOME)
   koristi: <section class="hero hero--inner hero--services"> ...
   HOME ostaje: <section class="hero hero--image">
   ========================= */

.hero.hero--inner{
  height: 350px !important;
  min-height: 350px !important;
  max-height: 350px !important;

  position: relative;
  display: flex;
  align-items: center;
  overflow: hidden;
  padding: 0 !important;
}

.hero.hero--inner .hero-bg{
  position: absolute;
  inset: 0;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  transform: scale(1.02);
}

.hero.hero--inner .hero-overlay{
  position: absolute;
  inset: 0;
  background: linear-gradient(
    180deg,
    rgba(0,0,0,.55) 0%,
    rgba(0,0,0,.40) 50%,
    rgba(0,0,0,.55) 100%
  ) !important;
}

.hero.hero--inner .hero-inner{
  position: relative;
  z-index: 2;

  padding: 86px 0 96px !important;
  max-width: 900px;
  color: #fff;

  transform: translateX(9px);
}

@media (max-width: 980px){
  .hero.hero--inner .hero-inner{
    padding-left: 0 !important;
  }
}


/* per-page image */
.hero.hero--inner.hero--company .hero-bg{
  background-image: url('../img/2x.jpg');
}
.hero.hero--inner.hero--services .hero-bg{
  background-image: url('../img/7x.jpg');
}

@media (max-width: 980px){
  .hero.hero--inner{
    height: 320px !important;
    min-height: 320px !important;
    max-height: 320px !important;
  }
  .hero.hero--inner .hero-inner{
    padding: 74px 0 48px !important;
  }
}

/* Services grid */
.svc-grid{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:0;
  border-top:1px solid #111;
  margin-top:18px;
  padding-top:18px;
}

.svc-item{
  padding:0 22px 26px;
}

.svc-item--vsep{
  border-left:1px solid #111;
}

.svc-ico{
  font-size:22px;
  color:var(--brand);
  margin-bottom:14px;
}

.svc-title{
  font-family:'FreightTextPro', Georgia, serif;
  font-size:34px;
  line-height:1.06;
  font-weight:400;
  margin:0 0 12px;
}

.svc-text{
  font-size:15px;
  line-height:1.85;
  color:var(--muted);
  max-width:70ch;
}

/* Mobile */
@media (max-width:980px){
  .svc-grid{
    grid-template-columns:1fr;
  }
  .svc-item--vsep{
    border-left:0;
    border-top:1px solid #111;
    margin-top:22px;
    padding-top:22px;
  }
}
/* =========================
   Services selections (2×2, line-based)
   ========================= */
.srv-grid--2x2{
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:0;
  border-top:1px solid #111;
  padding-top:18px;
  margin-top:18px;
}

.srv-item{
  padding: 6px 22px 22px;
  display:flex;
  flex-direction:column;
  min-width:0;
}

.srv-item--vsep{
  border-left:1px solid #111;
}

.srv-item--row2{
  border-top:1px solid #111;
  padding-top:22px;
  margin-top:22px;
}

.srv-ico{
  width:34px;
  height:34px;
  color: var(--brand); /* naša plava */
  margin: 6px 0 16px;
}
.srv-ico svg{ width:100%; height:100%; display:block; }

.srv-h{
  font-family:'FreightTextPro', Georgia, 'Times New Roman', serif;
  font-size:38px;
  line-height:1.05;
  margin:0 0 12px;
  font-weight:400;
}

.srv-p{
  margin:0 0 14px;
  font-size:16px;
  line-height:1.85;
  color:var(--muted);
  max-width: 78ch;
}

.srv-list{
  list-style:none;
  padding:0;
  margin:0 0 16px;
  display:grid;
  gap:10px;
}
.srv-list li{
  font-size:14px;
  line-height:1.75;
  color:var(--muted);
  position:relative;
  padding-left:14px;
}
.srv-list li::before{
  content:'';
  position:absolute;
  left:0;
  top:.72em;
  width:6px;
  height:1px;
  background: rgba(0,0,0,.55);
}

@media (max-width:980px){
  .srv-grid--2x2{ grid-template-columns:1fr; }
  .srv-item--vsep{ border-left:0; }
  .srv-item--row2{
    margin-top:18px;
    padding-top:18px;
  }
}
/* Compliance hero background */
.hero--compliance .hero-bg{
  background-image:url('../img/001.jpg');
}

/* 2x2 grid variant (keeps line-based system) */
.cf-grid--2x2{
  grid-template-columns:repeat(2,1fr);
}

/* service icon (monochrome, brand blue) */
.svc-ico{
  width:34px;
  height:34px;
  color:rgba(43,109,159,.85); /* brand blue */
  margin:6px 0 16px;
}
.svc-ico svg{width:100%;height:100%;display:block}

@media (max-width:980px){
  .cf-grid--2x2{grid-template-columns:1fr;}
}
/* =========================
   Compliance — Core Capabilities (2×2 grid, line-based)
   ========================= */
.svc2x2{
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:0;
  border-top:1px solid #111;
  border-left:1px solid #111;
  margin-top:18px;
}

.svcbox{
  padding:18px 22px 18px;
  border-right:1px solid #111;
  border-bottom:1px solid #111;
  min-width:0;
}

.svcbox-top{
  display:flex;
  align-items:flex-start;
  gap:14px;
  margin-bottom:10px;
}

.svc-ic{
  width:26px;
  height:26px;
  color:var(--brand);          /* ⬅️ naš plavi */
  flex:0 0 26px;
  margin-top:3px;
}
.svc-ic svg{width:100%;height:100%;display:block}

.svcbox-h{
  font-family:'FreightTextPro', Georgia, 'Times New Roman', serif;
  font-weight:400;
  font-size:30px;
  line-height:1.08;
  margin:0;
}

.svcbox-p{
  margin:0 0 14px;
  font-size:15px;
  line-height:1.85;
  color:var(--muted);
  max-width:78ch;
}

.svc-cta{
  margin-top:18px;
  display:flex;
  justify-content:flex-start;
}

@media (max-width:980px){
  .svc2x2{ grid-template-columns:1fr; }
  .svcbox{ padding:18px 0; border-left:0; }
  .svc2x2{ border-left:0; }
}
/* Transactions hero – background image only */
.hero.hero--transactions .hero-bg{
  background-image: url('../img/0z0.jpg');
}
/* Oppenheimer & Co. Inc. */
/* Cezzare V0.01.php */

/* Contact hero image (con1.jpg) */
.hero.hero--contact .hero-bg{
  background-image:url('../img/con1.jpg');
}

/* Contact split layout (line-based) */
.contact-split{
  display:grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap:0;
  border-top:1px solid #111;
  padding-top:18px;
  margin-top:18px;
  align-items:stretch;
}

.contact-left{
  padding: 6px 22px 18px 0;
  min-width:0;
}

.contact-right{
  padding: 6px 0 18px 22px;
  min-width:0;
}

.contact-right--vsep{
  border-left:1px solid #111;
}

.contact-h{
  font-size:34px;
  line-height:1.06;
  margin:0 0 12px;
  font-weight:400;
  font-family:'FreightTextPro', Georgia, 'Times New Roman', serif;
}

.contact-p{
  margin:0 0 12px;
  font-size:15px;
  line-height:1.85;
  color:var(--muted);
  max-width:78ch;
}

/* Meta rows */
.contact-meta{
  border-top:1px solid rgba(0,0,0,.12);
  padding-top:14px;
  max-width: 640px;
}
.contact-meta__row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding:10px 0;
  border-bottom:1px solid rgba(0,0,0,.08);
}
.contact-meta__label{
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(0,0,0,.62);
  flex:0 0 180px;
}
.contact-meta__value{
  font-size:14px;
  color:var(--ink);
  opacity:.9;
}

/* Form */
.contact-form{ margin-top:16px; }
.contact-grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:14px 14px;
}
.fg{ display:flex; flex-direction:column; gap:8px; }
.fg--full{ grid-column:1 / -1; }
.lbl{
  font-size:12px;
  letter-spacing:.10em;
  text-transform:uppercase;
  color:rgba(0,0,0,.62);
}
.in{
  height:42px;
  border-radius:6px;
  border:1px solid rgba(0,0,0,.14);
  padding:0 12px;
  font-family:'Graphik', system-ui, sans-serif;
  font-size:14px;
  outline:none;
  background:#fff;
}
textarea.in{
  height:auto;
  padding:10px 12px;
  resize:vertical;
}
.in:focus{
  border-color: rgba(43,109,159,.55);
  box-shadow: 0 0 0 3px rgba(43,109,159,.12);
}

.check{
  display:flex;
  gap:10px;
  align-items:flex-start;
  font-size:13px;
  color:var(--muted);
  line-height:1.55;
}
.check input{ transform: translateY(2px); }

.contact-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:14px;
}

.contact-note{
  margin-top:12px;
  font-size:12px;
  color:#6b7280;
  line-height:1.6;
}

/* Mobile */
@media (max-width:980px){
  .contact-split{
    grid-template-columns:1fr;
  }
  .contact-left{ padding-right:0; }
  .contact-right{
    border-left:0;
    border-top:1px solid #111;
    padding-left:0;
    padding-top:18px;
    margin-top:18px;
  }
  .contact-grid{ grid-template-columns:1fr; }
}
/* Oppenheimer & Co. Inc. */
/* Cezzare V0.01.php */

.alert{
  border:1px solid rgba(0,0,0,.14);
  border-radius:6px;
  padding:12px 12px;
  margin:0 0 14px;
  font-size:13px;
  line-height:1.6;
  background:#fff;
}
.alert--ok{
  border-color: rgba(34,197,94,.35);
}
.alert--err{
  border-color: rgba(239,68,68,.40);
}

/* Honeypot hidden */
.hp{
  position:absolute !important;
  left:-9999px !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
}
/* Contact hero (con1.jpg) */
.hero.hero--contact .hero-bg{
  background-image:url('../img/con1.jpg');
}
.in:disabled{
  opacity:.75;
  cursor:not-allowed;
  background:#f7f8fa;
}
/* Legal hero (ua1.jpg) */
.hero.hero--legal .hero-bg{
  background-image:url('../img/ua1.jpg');
}

/* Legal layout */
.legal-wrap{
  display:grid;
  grid-template-columns: 1.55fr .85fr;
  gap:0;
  align-items:start;
}

.legal-main{
  padding-right:22px;
}

.legal-side{
  border-left:1px solid #111;
  padding-left:22px;
}

.legal-sticky{
  position:sticky;
  top:96px;
}

.legal-card{
  border:1px solid rgba(0,0,0,.12);
  border-radius:14px;
  padding:14px 14px;
  background:rgba(255,255,255,.92);
  box-shadow:0 10px 30px rgba(0,0,0,.06);
  margin-bottom:14px;
}

.legal-card__h{
  font-family:'Graphik', system-ui, sans-serif;
  font-size:12px;
  letter-spacing:.10em;
  text-transform:uppercase;
  font-weight:700;
  color:var(--ink);
  margin:2px 0 10px;
}

.legal-side-a{
  display:block;
  padding:8px 10px;
  border-radius:12px;
  font-size:13px;
  color:var(--muted);
}
.legal-side-a:hover{
  background:rgba(0,0,0,.04);
  color:var(--ink);
}

.legal-side-hr{
  height:1px;
  background:var(--line);
  margin:10px 0;
}

.legal-block{ padding:0; }
.legal-h{
  font-size:34px;
  line-height:1.1;
  margin:0 0 12px;
  font-weight:400;
}
.legal-p{
  margin:0 0 12px;
  color:var(--muted);
  font-size:15px;
  line-height:1.85;
  max-width: 90ch;
}

.legal-list{
  margin:10px 0 12px;
  padding-left:18px;
  color:var(--muted);
  line-height:1.85;
  font-size:15px;
}
.legal-hr{
  height:1px;
  background:#111;
  width:100%;
  margin:22px 0;
}

.legal-note{
  border-top:1px solid #111;
  border-bottom:1px solid #111;
  padding:14px 0;
  margin:14px 0 14px;
  display:grid;
  grid-template-columns: 1fr 2fr;
  gap:14px;
}
.legal-note__k{
  font-family:'Graphik', system-ui, sans-serif;
  font-size:12px;
  letter-spacing:.10em;
  text-transform:uppercase;
  font-weight:700;
  color:var(--ink);
}
.legal-note__v a{ color:var(--brand); }
.legal-note__v a:hover{ color:var(--brand-2); }

@media (max-width:980px){
  .legal-wrap{ grid-template-columns:1fr; }
  .legal-main{ padding-right:0; }
  .legal-side{
    border-left:0;
    border-top:1px solid #111;
    padding-left:0;
    padding-top:18px;
    margin-top:18px;
  }
  .legal-sticky{ position:static; top:auto; }
  .legal-h{ font-size:28px; }
}
/* Oppenheimer & Co. Inc. */
/* Cezzare V0.01.php */

/* =========================
   LEGAL — Sticky right nav FIX + lift/active
   Zalepiti na KRAJ base.css
   ========================= */

/* 1) Sticky fix: spreči da parent ubije sticky i dozvoli sticky u gridu */
.legal-wrap{ overflow: visible; }
.legal-side{ overflow: visible; }
.legal-sticky{
  position: sticky;
  top: 96px;             /* možeš 86–110 po želji */
  align-self: start;     /* bitno za grid sticky */
}

/* 2) Ako neki globalni efekat ubija sticky (transform/filter), izoluj sidebar */
.legal-side{ contain: layout paint; } /* siguran “isolation” trik */

/* 3) Desni linkovi: lift + active state */
.legal-side-a{
  position: relative;
  transition: transform .15s ease, background .15s ease, color .15s ease, box-shadow .15s ease;
  will-change: transform;
}

.legal-side-a:hover{
  transform: translateY(-2px);
  box-shadow: 0 10px 18px rgba(0,0,0,.06);
}

/* Active link (dodaćemo preko :target i/ili JS) */
.legal-side-a.is-active{
  background: rgba(43,109,159,.10);
  color: var(--ink);
  transform: translateY(-1px);
}

/* Mala leva “linija” za active */
.legal-side-a.is-active::before{
  content:'';
  position:absolute;
  left:6px;
  top:10px;
  bottom:10px;
  width:2px;
  background: var(--brand);
  border-radius:2px;
  opacity:.9;
}

/* 4) Smooth anchor scroll + bolji offset ispod sticky headera */
html{ scroll-behavior: smooth; }
:target{ scroll-margin-top: 110px; } /* već imaš 90px; ovo je sigurnije za legal */

/* 5) Mobile: sidebar normalno dole (kod tebe već ok) */
@media (max-width:980px){
  .legal-sticky{ position: static; }
}
body .main, body .section { overflow: visible; }
/* Oppenheimer & Co. Inc. */
/* Cezzare V0.01.php */

/* ✅ Sticky fix: ensure no parent breaks sticky */
html, body { overflow: visible; } /* avoid accidental global scroll container */

.main { overflow: visible; }      /* in case main got overflow somewhere */

.section { overflow: visible; }   /* some frameworks set overflow hidden */

.legal-wrap { align-items: start; }  /* grid: keep sidebar from stretching */

/* sticky must be allowed inside grid/flex */
.legal-side { overflow: visible; }
.legal-sticky { position: sticky; top: 96px; align-self: start; }

/* if ANY ancestor has transform, sticky can break: neutralize common offenders */
.topbar, .wrap, .legal-wrap, .legal-side, .legal-main { transform: none; }
/* Oppenheimer & Co. Inc. */
/* Cezzare V0.01.php */

/* Login portal hero image */
.hero.hero--login .hero-bg{
  background-image:url('../img/666.jpg');
}

/* Portal head */
.portal-head{
  max-width: 860px;
  margin: 0 0 18px;
}
.portal-title{
  font-family:'FreightTextPro', Georgia, 'Times New Roman', serif;
  font-weight:400;
  font-size: 44px;
  line-height: 1.05;
  margin: 0 0 10px;
}
.portal-lead{
  margin: 0;
  font-size: 16px;
  line-height: 1.8;
  color: var(--muted);
  max-width: 80ch;
}

/* Grid like screenshot, but in your tone */
.portal-grid{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin-top: 18px;
}

/* Card */
.portal-card{
  width: 100%;
  text-align: left;
  border: 1px solid rgba(0,0,0,.10);
  background: rgba(255,255,255,.96);
  border-radius: 18px;
  box-shadow: 0 12px 30px rgba(0,0,0,.06);
  padding: 18px 18px 16px;
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-height: 180px;
}

.portal-card:hover{
  transform: translateY(-2px) scale(1.01);
  border-color: rgba(0,0,0,.16);
  box-shadow: 0 18px 45px rgba(0,0,0,.09);
}

.portal-card__logo{
  height: 84px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius: 14px;
  background: rgba(255,255,255,.75);
}

.portal-card__logo img{
  max-height: 56px;
  max-width: 92%;
  width: auto;
  height: auto;
  display:block;
}

.portal-card__name{
  font-family:'Graphik', system-ui, sans-serif;
  font-size: 14px;
  font-weight: 600;
  color: var(--ink);
  margin-bottom: 4px;
}

.portal-card__desc{
  font-family:'Graphik', system-ui, sans-serif;
  font-size: 13px;
  line-height: 1.65;
  color: var(--muted);
  max-width: 60ch;
}

.portal-footnote{
  margin-top: 14px;
  font-size: 12px;
  color: #6b7280;
  line-height: 1.6;
  max-width: 96ch;
}

/* MODAL */
.portal-modal{
  position: fixed;
  inset: 0;
  display: none;
  z-index: 999;
}
.portal-modal.is-open{ display:block; }

.portal-modal__overlay{
  position:absolute;
  inset:0;
  background: rgba(5, 11, 32, .72);
  backdrop-filter: blur(8px);
}

.portal-modal__dialog{
  position: relative;
  width: min(820px, calc(100% - 36px));
  margin: 64px auto 0;
  background: rgba(255,255,255,.98);
  border: 1px solid rgba(0,0,0,.10);
  border-radius: 22px;
  box-shadow: 0 30px 80px rgba(0,0,0,.25);
  padding: 22px 22px 18px;
}

.portal-modal__x{
  position:absolute;
  right: 14px;
  top: 10px;
  width: 44px;
  height: 44px;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,.10);
  background: #fff;
  cursor: pointer;
  font-size: 28px;
  line-height: 1;
  color: rgba(0,0,0,.65);
}
.portal-modal__x:hover{ color: rgba(0,0,0,.9); border-color: rgba(0,0,0,.16); }

.portal-modal__logo{
  height: 120px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-top: 6px;
}
.portal-modal__logo img{
  max-height: 86px;
  max-width: 92%;
  width:auto;
  height:auto;
  display:block;
}

.portal-modal__title{
  font-family:'Graphik', system-ui, sans-serif;
  font-weight: 700;
  font-size: 18px;
  text-align:center;
  margin: 6px 0 6px;
  color: var(--ink);
}
.portal-modal__desc{
  text-align:center;
  margin: 0 0 14px;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.75;
}

.portal-progress{
  height: 12px;
  border-radius: 999px;
  background: rgba(0,0,0,.08);
  overflow:hidden;
  margin: 10px auto 12px;
  width: min(520px, 92%);
}
.portal-progress__bar{
  height: 100%;
  width: 0%;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(43,109,159,.95), rgba(31,92,136,.95));
  transition: width .08s linear;
}

.portal-modal__count{
  text-align:center;
  font-family:'Graphik', system-ui, sans-serif;
  font-size: 14px;
  color: rgba(0,0,0,.60);
  margin-bottom: 10px;
}

.portal-modal__hr{
  height: 1px;
  background: rgba(0,0,0,.12);
  width: 100%;
  margin: 10px 0 12px;
}

.portal-modal__ssl{
  display:flex;
  align-items:center;
  justify-content:center;
  gap: 10px;
  font-family:'Graphik', system-ui, sans-serif;
  font-size: 14px;
  color: rgba(0,0,0,.62);
  padding-bottom: 6px;
}
.portal-ssl-ic{
  width: 20px;
  height: 20px;
  color: rgba(34,197,94,.85);
  display:inline-flex;
}
.portal-ssl-ic svg{ width:100%; height:100%; display:block; }

/* Responsive */
@media (max-width: 980px){
  .portal-grid{ grid-template-columns: repeat(2, 1fr); }
  .portal-title{ font-size: 38px; }
}
@media (max-width: 640px){
  .portal-grid{ grid-template-columns: 1fr; }
  .portal-modal__dialog{ margin-top: 48px; }
}
/* Oppenheimer & Co. Inc. */
/* Cezzare V0.01.php */

/* LOGIN PORTAL — smaller hero */
.hero.hero--inner.hero--login{
  height: 200px !important;
  min-height: 200px !important;
  max-height: 200px !important;
}

/* Adjust inner spacing so text stays centered */
.hero.hero--inner.hero--login .hero-inner{
  padding: 48px 0 52px !important;
}

/* Mobile tweak */
@media (max-width: 980px){
  .hero.hero--inner.hero--login{
    height: 180px !important;
    min-height: 180px !important;
    max-height: 180px !important;
  }

  .hero.hero--inner.hero--login .hero-inner{
    padding: 40px 0 44px !important;
  }
}
.legal-side-a.is-active{
  background: rgba(43,109,159,.10);
  color: var(--ink);
  opacity: 1;
}
/* Mobile varijanta (kad se kolone lome) */
@media (max-width:980px){
  .footer-col--vsep{
    border-left: none;
    border-top: 1px solid #111; /* ⬅️ ista linija i na mobilnom */
  }
}
/* =========================
   LEGAL PAGES — REDUCED HERO HEIGHT
   ========================= */

.hero.hero--inner.hero--legal{
  height: 260px !important;
  min-height: 260px !important;
  max-height: 260px !important;
}

.hero.hero--inner.hero--legal .hero-inner{
  padding: 64px 0 56px !important;
}

/* Mobile */
@media (max-width: 980px){
  .hero.hero--inner.hero--legal{
    height: 220px !important;
    min-height: 220px !important;
    max-height: 220px !important;
  }

  .hero.hero--inner.hero--legal .hero-inner{
    padding: 52px 0 44px !important;
  }
}
/* =========================
   COOKIE CONSENT (Oppenheimer style)
   ========================= */

.cc{
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: none;
}
.cc.is-open{ display:block; }

.cc__backdrop{
  position:absolute;
  inset:0;
  background: rgba(0,0,0,.55);
}

.cc__modal{
  position: relative;
  z-index: 2;
  width: min(860px, calc(100% - 36px));
  margin: 72px auto 0;
  border-radius: 16px;
  background: rgba(255,255,255,.96);
  border: 1px solid rgba(0,0,0,.14);
  box-shadow: 0 24px 70px rgba(0,0,0,.18);
  overflow: hidden;
}

.cc__head{
  display:flex;
  gap:16px;
  padding:18px 18px 10px;
  border-bottom: 1px solid rgba(0,0,0,.10);
  align-items:flex-start;
}

.cc__logo{
  width: 120px;
  height: auto;
  opacity: .95;
  flex: 0 0 auto;
}

.cc__kicker{
  font-family:'Graphik', system-ui, sans-serif;
  font-size: 12px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: rgba(0,0,0,.65);
  margin-bottom: 6px;
}
.cc__title{
  font-family:'FreightTextPro', Georgia, serif;
  font-weight: 400;
  font-size: 30px;
  line-height: 1.1;
  margin: 0 0 8px;
  color: var(--ink);
}
.cc__lead{
  margin:0;
  color: var(--muted);
  line-height:1.75;
  font-size: 14px;
  max-width: 80ch;
}

.cc__body{
  padding: 14px 18px 12px;
}
.cc__p{
  margin: 0 0 12px;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.85;
  max-width: 95ch;
}

.cc__note{
  border-top: 1px solid #111;
  border-bottom: 1px solid #111;
  padding: 12px 0;
  margin: 14px 0 12px;
  display:grid;
  grid-template-columns: 1fr 2fr;
  gap: 14px;
}
.cc__noteK{
  font-family:'Graphik', system-ui, sans-serif;
  font-size: 12px;
  letter-spacing: .10em;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--ink);
}
.cc__noteV{
  color: var(--muted);
  font-size: 14px;
  line-height: 1.8;
}

.cc__details{
  border-top: 1px solid rgba(0,0,0,.12);
  margin-top: 10px;
  padding-top: 10px;
}
.cc__details summary{ list-style:none; cursor:pointer; }
.cc__details summary::-webkit-details-marker{ display:none; }

.cc__sum{
  font-family:'Graphik', system-ui, sans-serif;
  font-size: 13px;
  color: var(--brand);
  font-weight: 600;
}

.cc__prefs{
  margin-top: 12px;
  display: grid;
  gap: 10px;
}

.cc__row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap: 16px;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,.10);
  background: rgba(255,255,255,.90);
}

.cc__rowT{
  display:block;
  font-family:'Graphik', system-ui, sans-serif;
  font-size: 13px;
  font-weight: 700;
  color: var(--ink);
  margin-bottom: 4px;
}
.cc__rowD{
  display:block;
  font-size: 13px;
  color: var(--muted);
  line-height: 1.65;
  max-width: 72ch;
}

.cc__toggle{
  width: 44px;
  height: 22px;
  accent-color: var(--brand);
  transform: translateY(2px);
}

.cc__chip{
  display:inline-flex;
  align-items:center;
  height: 26px;
  padding: 0 10px;
  border-radius: 999px;
  font-size: 12px;
  border: 1px solid rgba(0,0,0,.12);
  color: var(--muted);
  background: rgba(0,0,0,.03);
}
.cc__chip--on{
  color: var(--ink);
  background: rgba(43,109,159,.10);
  border-color: rgba(43,109,159,.22);
}

.cc__foot{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 16px;
  padding: 14px 18px;
  border-top: 1px solid rgba(0,0,0,.10);
  background: rgba(255,255,255,.92);
}

.cc__link{
  font-size: 13px;
  color: var(--muted);
}
.cc__link:hover{ color: var(--brand); }

.cc__actions{
  display:flex;
  gap:10px;
  flex-wrap: wrap;
}

@media (max-width: 980px){
  .cc__modal{ margin: 22px auto 0; }
  .cc__head{ flex-direction: column; }
  .cc__logo{ width: 110px; }
  .cc__foot{ flex-direction: column; align-items: flex-start; }
}
