/* Info banner / support section styles */
.phone-footer-checkout {
    text-align: left;
    justify-content: center;
}

.info-items-container {
 max-width: 1800px;
    margin: 0 auto;
    padding-left: 0px;
    padding-right: 0px;
 display: flex;
  justify-content: space-between;
  background-color: #f4f4f4;
  padding: 40px 20px 40px 20px;
}

.info-banner {
  background-color: #f4f4f4;
}

.info-item {
  flex: 1;
  text-align: center;
  padding: 0 20px 0 20px;
  border-right: 1px solid #ddd;
  margin-bottom: 10px;
}

.info-item:last-child {
  border-right: none;
}

.info-icon {
  width: 50px;
 margin:0 auto;
 display: block;
  margin-bottom: 10px;
}

.info-item h3 {
  font-size: 1.25rem;
  font-weight: 700;
  color: #222223;
  margin-bottom: 10px;
}

.info-item p {
  font-size: 1rem;
  color: #333;
  margin: 0;
}

@media (max-width: 768px) {
    .info-items-container {
 flex-direction: column;
    align-items: center;
}

    .info-item {
  border-right: none;
}
}

@media (max-width: 991px) {
.footer-brand-dec {
        padding-right:50px !important;
}}

/* Footer styles */
.social-icons svg {
   width: 20px;
   height: 20px;
   color: white;
}

.footer {
  background-color: black;
  color: white;
  padding: 40px 20px 80px 20px;
  font-family: 'Inter', sans-serif;
}

.footer-top {
  text-align: center;
  margin-bottom: 30px;
  border-bottom: 1px solid white;
  padding-bottom: 33px;
}

.footer-slogan {
  font-size: 18px;
  font-weight: 800;
  margin-bottom: 10px;
      margin-right: 6px;
   color: white !important;
}

.social-icons img {
width: 22px;
    height: 22px;
    margin: 0 2px;
    vertical-align: sub;
    display: inline-block;
}

.footer-main {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 30px;
}

.newsletter {
  flex: 1;
padding-right: 100px;
  margin-bottom: 40px;
  color: white !important;
}

.newsletter h3 {
  font-size: 20px;
  font-weight: 800;
  color: white;
  margin-bottom: 10px;
   color: white !important;
}

.newsletter p {
  font-size: 15px;
  margin-bottom: 20px; color: white !important;
}

.newsletter input {
  width: 100%;
  padding: 12px 15px;
  margin-bottom: 15px;
  border: none;
  border-radius: 6px;
  background: #27405F;
  color: white;
}

.newsletter input::placeholder {
  color: #b5c7da;
}

.subscribe-button {
  width: 100%;
  background: #496d8f !important;
  border: none;
  color: white;
  padding: 14px;
  font-size: 16px;
  font-weight: 500;
  border-radius: 6px;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
}

.subscribe-button img {
  width: 18px;
  margin-right: 8px;
}

.footer-links {
  display: flex;
  flex: 2;
  flex-wrap: wrap;
  gap: 50px;
}

.link-section {
  min-width: 150px;
}

.link-section h4 {
  font-size: 16px;
  font-weight: 800;
  margin-bottom: 12px;
  color: white;
}

.link-section a {
  display: block;
  font-size: 13px;
  color: white;
  text-decoration: none;
  margin-bottom: 0px;
   color: white !important;
}

.link-section a:hover {
  text-decoration: underline;
}

.link-section p {
  font-size: 14px;
  margin-bottom: 10px;
  line-height: 1.4;
   color: white !important;
}

.footer-bottom {
 border-top: 1px solid white;
    margin-top: -10px;
    padding-top: 40px;
    padding-left: 30px;
    padding-right: 80px;
    text-align: center;
    padding-bottom: 20px !important;
}

.footer-bottom p {
  font-size: 13px;
   color: white !important;
}

.payment-icons img {
  height: 28px;
  margin: 0 5px;
  vertical-align: middle;
}

.inline-list  {
list-style: none;
list-style-type: none;
margin: 0;
}

.inline-list li {
 display: inline;
}
.footer-container {
  max-width: 1800px;
  width: 100%;
  margin: 0 auto;
  padding: 60px 15px  80px 15px;
}

.footer-row {
  display: flex;
  flex-wrap: wrap;
  gap: 50px;
  justify-content: space-between;
}

.footer-col {
  flex: 1 1 220px;
  min-width: 220px;
}

.newsletter-col {
  flex: 2 1 450px;
}

.newsletter h3 {
  font-size: 20px;
  font-weight: 800;
  margin-bottom: 15px;
}

.newsletter p {
  font-size: 15px;
  margin-bottom: 20px;
}

.newsletter input {
  width: 100%;
  padding: 12px 15px;
  margin-bottom: 15px;
  border: none;
  border-radius: 0px;
  background: #27405F;
  color: white;
}

.newsletter input::placeholder {
  color: #b5c7da;
}

.subscribe-button {
  width: 100%;
  background: #496d8f !important;
  border: none;
  padding: 14px;
  font-size: 16px;
  font-weight: 600;
  color: white;
  border-radius: 0px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

.subscribe-button img {
  width: 18px;
  margin-right: 8px;
}

.link-section h4 {
  font-size: 16px;
  font-weight: 800;
  margin-bottom: 15px;
}

.link-section a, 
.link-section p {
  display: block;
  font-size: 13px;
  margin-bottom: 0px;
  color: white;
  text-decoration: none;
}

.link-section a:hover {
  text-decoration: underline;
}

@media (max-width: 768px) {
  .footer-row {
    flex-direction: column;
    align-items: center;
  }

  .footer-col, 
  .newsletter-col {
    width: 100%;
    text-align: left;
      flex: 2;
  }
  
  .newsletter{
       padding-right: 0;
       margin-bottom: 0;
  }
  
  .social-icons {
      display: block !important;
    margin-top: 20px !important;
  }
  
  .footer-container {
           padding: 0 0px 15px 0px;
    }
    
    .newsletter-col {
        flex: 2;
    }
    
    .footer-bottom {
    margin-top: 15px;
    }
    
    .payment-icons {
        display: none !important;
    }
  
    .footer-col {
       text-align:left;
    }
    
    .footer-bottom {
    padding-left: 7px;
    }
}


/* ============================================================
   VIVOCANIN footer — Huel-style (namespace: .nf)
   ============================================================ */
.nf { background:#0c0c0c; color:#fff; }
.nf-wrap { max-width:1800px; margin:0 auto; padding:0 20px; }

/* --- newsletter signup --- */
.nf-signup { padding:30px 0 26px; }
.nf-signup-grid { display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:stretch; }
.nf-signup-copy { display:flex; flex-direction:column; justify-content:center; }
.nf-signup-form-col { display:flex; flex-direction:column; justify-content:center; }
@media (min-width:769px){ .nf-signup-form-col { margin-top:16px; } }
.nf-signup-title { color:#fff; font-family:'Barlow',sans-serif; font-size:32px; font-weight:700; margin:0 0 8px; }
.nf-signup-sub { color:#b3b3b3; font-size:15px; margin:0; }
.nf-field-label { display:block; color:#dcdcdc; font-size:13px; margin:0 0 8px; }
.nf-field-row { display:flex; gap:12px; }
.nf-input { flex:1; height:48px; border:none; border-radius:0; padding:0 16px; font-size:15px; background:#fff; color:#111; }
.nf-input::placeholder { color:#8a8a8a; }
.nf-btn { display:inline-flex; align-items:center; justify-content:center; height:48px; padding:0 24px; border-radius:0; font-size:14px; font-weight:600; cursor:pointer; text-decoration:none; white-space:nowrap; border:1px solid transparent; transition:background .15s,color .15s; }
.nf-btn-light { background:#fff; color:#111; }
.nf-btn-light:hover { background:#e6e6e6; }
.nf-btn-outline { background:transparent; color:#fff; border-color:#fff; height:44px; }
.nf-btn-outline:hover { background:#fff; color:#111; }
.nf-signup-note { color:#8f8f8f; font-size:12px; margin:12px 0 0; line-height:1.5; }
.nf-signup-note a { color:#cfcfcf; text-decoration:underline; }
.nf-signup-msg { font-size:13px; margin:8px 0 0; min-height:16px; }
.nf-signup-msg.is-ok { color:#5fd08a; }
.nf-signup-msg.is-error { color:#ff8a8a; }

/* --- main: brand + links --- */
.nf-main { border-top:1px solid #232323; padding:48px 0; }
.nf-main-grid { display:grid; grid-template-columns:1.1fr 2fr; gap:48px; }
.nf-badge { display:inline-block; font-family:'Roboto',sans-serif; font-weight:700; letter-spacing:1.5px; color:#fff; font-size:20px; text-decoration:none; border:2px solid #fff; padding:10px 14px; border-radius:6px; }
.nf-brand-tagline { color:#fff; font-family:'Barlow',sans-serif; font-size:24px; font-weight:700; line-height:1.15; margin:22px 0 12px; max-width:420px; }
.nf-brand-desc { color:#a9a9a9; font-size:14px; line-height:1.65; margin:0 0 24px; max-width:420px; }
/* brez naslova nad opisom: prva vrstica se opticno poravna z naslovi stolpcev desno */
.nf-brand-col { padding-top:0; }
@media (max-width:900px) { .nf-brand-col { padding-top:0; } .nf-brand-desc { margin-bottom:18px; } }
.nf-links { display:grid; grid-template-columns:repeat(3,1fr); gap:32px; }
.nf-link-h { color:#fff; font-size:15px; font-weight:600; margin:0 0 14px; }
.nf-link-col a { display:block; color:#adadad; font-size:14px; text-decoration:none; margin:0 0 10px; }
.nf-link-col a:hover { color:#fff; }
.nf-rich, .nf-rich * { color:#adadad; font-size:13px; line-height:1.6; }
.nf-rich a { color:#cfcfcf; text-decoration:underline; }

/* --- meta: region / copyright / payments --- */
.nf-meta { display:flex; justify-content:space-between; align-items:center; gap:16px; padding:18px 20px; border-top:1px solid #232323; flex-wrap:wrap; max-width:1800px; margin:0 auto; }
.nf-meta-left { display:flex; align-items:center; gap:18px; flex-wrap:wrap; }
.nf-region { display:inline-flex; align-items:center; gap:8px; color:#cfcfcf; font-size:13px; }
.nf-flag { width:18px; height:12px; object-fit:cover; border-radius:2px; }
.nf-copy { color:#8f8f8f; font-size:12px; }
.nf-pay-list { display:flex; gap:6px; list-style:none; margin:0; padding:0; flex-wrap:wrap; }
.nf-pay-list .payment-icon { width:38px; height:24px; }

/* --- wordmark + socials --- */
.nf-brandbar { display:flex; justify-content:space-between; align-items:center; padding:24px 20px; border-top:1px solid #232323; flex-wrap:wrap; gap:16px; max-width:1800px; margin:0 auto; }
.nf-wordmark { color:#fff; font-family:'Roboto',sans-serif; font-weight:700; letter-spacing:2px; font-size:34px; text-decoration:none; }
.nf-social { display:flex; gap:12px; list-style:none; margin:0; padding:0; }
.nf-social a { display:inline-flex; align-items:center; justify-content:center; width:38px; height:38px; border:1px solid #3a3a3a; border-radius:50%; transition:border-color .15s; }
.nf-social a:hover { border-color:#fff; }
.nf-social img { width:18px; height:18px; }

/* --- responsive --- */
@media (max-width:900px) {
  .nf-main-grid { grid-template-columns:1fr; gap:32px; }
  .nf-links { grid-template-columns:repeat(3,1fr); gap:20px; }
}
@media (max-width:768px) {
  .nf-signup-grid { grid-template-columns:1fr; gap:16px; }
  .nf-field-row { flex-direction:column; }
  .nf-btn-light { width:100%; }
  .nf-links { grid-template-columns:1fr 1fr; }
  .nf-meta, .nf-brandbar { flex-direction:column; align-items:flex-start; }
  .nf-wordmark { font-size:28px; }
  /* tighter vertical rhythm on mobile (less gap around the divider line) */
  .nf-signup { padding:18px 0 12px; }
  .nf-main { padding:14px 0; }
  .nf-main-grid { gap:20px; }
  .nf-meta { padding-top:12px; padding-bottom:12px; }
}

/* --- background image band (Huel-style) --- */
.nf-bg { position:relative; }
.nf-bg.has-img { background-size:cover; background-position:center; background-repeat:no-repeat; }
.nf-bg.has-img::before { content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(12,12,12,.85), rgba(12,12,12,.93)); pointer-events:none; }
.nf-bg > * { position:relative; z-index:1; }

/* --- legal fine print row --- */
.nf-legal { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:22px 20px 40px; border-top:1px solid #232323; flex-wrap:wrap; max-width:1800px; margin:0 auto; }
.nf-legal-text { color:#7d7d7d; font-size:11px; line-height:1.6; margin:0; max-width:760px; }
.nf-legal-btn { height:40px; font-size:13px; flex:0 0 auto; }
@media (max-width:768px) { .nf-legal { flex-direction:column; align-items:flex-start; } }


/* Protect footer text from page-content overrides like h1,h2,h3,p{color:black!important} */
.nf .nf-signup-title,
.nf .nf-brand-tagline { color:#fff !important; }
.nf .nf-signup-sub { color:#b3b3b3 !important; }
.nf .nf-brand-desc { color:#a9a9a9 !important; }
.nf .nf-signup-note { color:#8f8f8f !important; }
.nf .nf-signup-note a { color:#cfcfcf !important; }
.nf .nf-legal-text { color:#7d7d7d !important; }
