/* ═══ 1. Logo — LARGER ═══ */
.site-logo svg,.site-logo img{height:42px!important;width:auto!important}
@media(max-width:768px){
  .site-logo svg,.site-logo img{height:64px!important;width:auto!important}
  .site-header__inner{height:auto!important;min-height:64px;padding:.6rem 1.25rem!important}
}

/* ═══ 2. Mobile menu — CTA as proper button ═══ */
@media(max-width:768px){
  .site-nav{
    padding:0!important;
    background:#fff!important;
    border-top:3px solid var(--brand)!important;
    box-shadow:0 8px 24px rgba(0,0,0,.15)!important
  }
  .site-nav a{
    text-align:left!important;
    padding:.85rem 1.5rem!important;
    font-size:.92rem!important;
    font-weight:600!important;
    color:var(--black)!important;
    border-bottom:1px solid var(--g1)!important;
    border-radius:0!important;
    background:none!important;
    display:block!important;
    margin:0!important
  }
  .site-nav a:hover,.site-nav a.active{
    background:var(--g0)!important;
    color:var(--brand)!important;
    border-left:3px solid var(--brand)!important;
    padding-left:calc(1.5rem - 3px)!important
  }
  .site-nav__cta{
    text-align:left!important;
    margin:0!important;
    padding:.85rem 1.5rem!important;
    display:block!important;
    border:none!important;
    border-bottom:1px solid var(--g1)!important;
    border-left:none!important;
    background:none!important;
    color:var(--brand)!important;
    border-radius:0!important;
    font-weight:700!important
  }
  .site-nav__cta:hover{
    border-left:3px solid var(--brand)!important;
    padding-left:calc(1.5rem - 3px)!important;
    background:var(--g0)!important;
    color:var(--brand)!important
  }
  .mobile-search{
    display:block!important;
    padding:.6rem 1.25rem!important;
    border-bottom:1px solid var(--g1)!important;
    background:var(--g0)!important
  }
  .mobile-search form{display:flex;gap:.5rem}
  .mobile-search input{
    flex:1!important;padding:.5rem .75rem!important;border:1px solid var(--g2)!important;
    font-size:.85rem!important;font-family:var(--font)!important;border-radius:2px!important;background:#fff!important
  }
  .mobile-search button{
    padding:.5rem .75rem;border:none;background:var(--brand);color:#fff;
    font-size:.8rem;font-weight:600;cursor:pointer;border-radius:2px;font-family:var(--font)
  }
  .header-search{display:none!important}
}
@media(min-width:769px){.mobile-search{display:none!important}}

/* ═══ 3. Desktop dropdown menu ═══ */
.has-dropdown{position:relative}
.has-dropdown .dropdown{
  display:none;position:absolute;top:100%;left:0;min-width:220px;
  background:#fff;border:1px solid var(--g1);box-shadow:0 6px 20px rgba(0,0,0,.1);
  z-index:100;padding:.5rem 0
}
.has-dropdown:hover .dropdown{display:block}
.dropdown a{
  display:block!important;padding:.6rem 1.25rem!important;font-size:.85rem!important;
  font-weight:500!important;color:var(--g6)!important;border-bottom:none!important;
  white-space:nowrap
}
.dropdown a:hover{background:var(--g0)!important;color:var(--brand)!important}
.dropdown .dropdown__label{
  display:block;padding:.4rem 1.25rem;font-size:.68rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.08em;color:var(--g3);pointer-events:none
}

/* Mobile dropdown — just show inline */
@media(max-width:768px){
  .has-dropdown .dropdown{
    display:none;position:static;box-shadow:none;border:none;
    background:var(--g0);padding:0;min-width:auto
  }
  .has-dropdown.open .dropdown{display:block}
  .dropdown a{padding:.7rem 1.5rem .7rem 2.5rem!important;font-size:.88rem!important;border-bottom:1px solid var(--g1)!important}
  .dropdown .dropdown__label{padding:.5rem 1.5rem .3rem 2.5rem}
  .has-dropdown>a{position:relative}
  .has-dropdown>a::after{content:'▾';margin-left:.4rem;font-size:.7rem}
}

/* ═══ 4. Dividend cards — used on history page ═══ */
.dividend-card{
  background:var(--white);border:1px solid var(--g1);border-left:4px solid var(--brand);
  padding:1.5rem;margin-bottom:1rem;
  display:grid;grid-template-columns:1fr 1fr 1fr 1fr auto;gap:1rem;align-items:center
}
.dividend-card:hover{box-shadow:0 2px 8px rgba(0,0,0,.06)}
.dividend-card__field{display:flex;flex-direction:column;gap:.2rem}
.dividend-card__label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--g4)}
.dividend-card__value{font-size:1rem;font-weight:700;color:var(--black)}
.dividend-card__value--accent{color:var(--brand)}
.dividend-card__actions{display:flex;gap:.5rem;flex-wrap:wrap}
.dividend-card__actions .btn{font-size:.75rem;padding:.35rem .75rem}
.div-status{display:inline-block;padding:.15rem .5rem;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;border-radius:2px}
.div-status--upcoming{background:#dff0f0;color:var(--brand)}
.div-status--paid{background:#e8f5e9;color:#2e7d32}
@media(max-width:768px){
  .dividend-card{grid-template-columns:1fr 1fr;gap:.75rem;padding:1.25rem}
  .dividend-card__actions{grid-column:1/-1;padding-top:.5rem;border-top:1px solid var(--g1)}
}

/* ═══ 6. Product quick-links near footer — visual cards ═══ */
.quick-links{
  display:grid;grid-template-columns:1fr 1fr;gap:0;
  border:1px solid var(--g1);background:var(--g0)
}
.quick-link{
  display:block;padding:2rem 1.5rem;text-align:center;text-decoration:none;
  color:inherit;border-right:1px solid var(--g1);border-bottom:1px solid var(--g1);
  background:var(--g0);position:relative;transition:all .25s
}
.quick-link:nth-child(2n){border-right:none}
.quick-link:nth-child(n+3){border-bottom:none}
.quick-link::before{
  content:'';position:absolute;bottom:0;left:0;right:0;height:3px;
  background:var(--brand);transform:scaleX(0);transition:transform .3s
}
.quick-link:hover::before{transform:scaleX(1)}
.quick-link:hover{background:var(--brand);color:#fff}
.quick-link:hover h4{color:#fff}
.quick-link:hover p{color:rgba(255,255,255,.8)}
.quick-link h4{font-size:1.05rem;font-weight:800;margin:0 0 .25rem;color:var(--black)}
.quick-link p{font-size:.82rem;color:var(--g4);line-height:1.4;margin:0}
@media(max-width:600px){
  .quick-links{grid-template-columns:1fr}
  .quick-link{border-right:none!important;border-bottom:1px solid var(--g1)!important;text-align:left;padding:1.5rem}
  .quick-link:last-child{border-bottom:none!important}
}

/* ═══ FAQ accordion ═══ */
.faq-item{border-bottom:1px solid var(--g1)}
.faq-item__q{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;cursor:pointer;font-size:.95rem;font-weight:700;color:var(--black)}
.faq-item__q:hover{color:var(--brand)}
.faq-item__q::after{content:'+';font-size:1.2rem;font-weight:400;color:var(--g3)}
.faq-item.active .faq-item__q::after{content:'−'}
.faq-item__a{display:none;padding:0 0 1rem;font-size:.9rem;line-height:1.7;color:var(--g5)}
.faq-item.active .faq-item__a{display:block}

/* ═══ Dividend table fallback ═══ */
.dividend-table{width:100%;border-collapse:collapse;margin-top:1.5rem}
.dividend-table th{text-align:left;padding:.75rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--g4);border-bottom:2px solid var(--g2);background:var(--g0)}
.dividend-table td{padding:.75rem;border-bottom:1px solid var(--g1);font-size:.9rem;vertical-align:middle}


/* ═══ MOBILE MENU — full width items, centred ═══ */
@media(max-width:768px){
  .site-nav{
    left:0!important;right:0!important;width:100%!important
  }
  .site-nav a,
  .site-nav .site-nav__cta{
    width:100%!important;
    box-sizing:border-box!important
  }
  /* Hide logo when menu is open */
  .site-logo{transition:opacity .15s ease}
  .menu-open .site-logo{opacity:0;pointer-events:none}
  /* Search bar full width */
  .mobile-search{width:100%!important;box-sizing:border-box!important}
  .mobile-search input{width:100%!important;box-sizing:border-box!important}
  /* Dropdown items indented slightly */
  .has-dropdown .dropdown a{
    padding-left:2rem!important;
    font-size:.88rem!important
  }
  .has-dropdown .dropdown .dropdown__label{
    padding-left:2rem!important
  }
}

/* ═══ SCROLL ANIMATIONS — subtle fade-in-up ═══ */
.fade-in{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}
.fade-in.visible{opacity:1;transform:translateY(0)}
.fade-in-delay-1{transition-delay:.1s}
.fade-in-delay-2{transition-delay:.2s}
.fade-in-delay-3{transition-delay:.3s}

/* Auto-apply to key sections */
.section,.card,.dividend-box,.quick-link,.pricing-card,.dividend-card{
  opacity:0;transform:translateY(15px);transition:opacity .5s ease,transform .5s ease
}
.section.visible,.card.visible,.dividend-box.visible,.quick-link.visible,.pricing-card.visible,.dividend-card.visible{
  opacity:1;transform:translateY(0)
}
/* Don't animate hero or header */
.hero-banner,.site-header,.page-header,.utility-bar,.site-footer{opacity:1!important;transform:none!important}

/* ═══ FIX: Services dropdown parent — force left align like siblings ═══ */
@media(max-width:768px){
  .has-dropdown{display:block!important;width:100%!important}
  .has-dropdown>a{
    text-align:left!important;
    width:100%!important;
    box-sizing:border-box!important;
    display:block!important
  }
}


/* ═══ JOURNEY CARDS ═══ */
.journey-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem}
.journey-card{background:var(--white);border:1px solid var(--g1);padding:1.5rem;border-top:3px solid var(--brand);transition:box-shadow .3s}
.journey-card:hover{box-shadow:0 4px 16px rgba(0,0,0,.07)}
.journey-card__date{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--brand);display:block;margin-bottom:.5rem}
.journey-card__title{font-size:.95rem;font-weight:700;margin:0 0 .5rem;color:var(--black)}
.journey-card__text{font-size:.85rem;line-height:1.6;color:var(--g5);margin:0}
.journey-card--current{background:var(--brand);border-color:var(--brand);border-top-color:rgba(255,255,255,.3)}
.journey-card--current .journey-card__date{color:rgba(255,255,255,.5)}
.journey-card--current .journey-card__title{color:#fff}
.journey-card--current .journey-card__text{color:rgba(255,255,255,.8)}
@media(max-width:768px){.journey-grid{grid-template-columns:1fr}}

/* ═══ STATS GRID ═══ */
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--g1);background:var(--white)}
.stats-grid__item{padding:2rem;text-align:center;border-right:1px solid var(--g1)}
.stats-grid__item:last-child{border-right:none}
.stats-grid__item h3{font-size:2rem;color:var(--brand);margin:0 0 .25rem}
.stats-grid__item p{font-size:.82rem;color:var(--g5);text-transform:uppercase;letter-spacing:.06em;font-weight:600;margin:0}
@media(max-width:600px){
  .stats-grid{grid-template-columns:1fr 1fr}
  .stats-grid__item:nth-child(2n){border-right:none}
  .stats-grid__item{border-bottom:1px solid var(--g1)}
}

/* ═══ SUPPORT WIDGET SVG ═══ */
.support-widget__btn{display:flex!important;align-items:center!important;justify-content:center!important}
.support-widget__btn svg{width:22px!important;height:22px!important;fill:none!important;stroke:#fff!important;stroke-width:2!important;flex-shrink:0}

/* ═══ COOKIE BANNER ═══ */
.cookie-banner{
  position:fixed;bottom:0;left:0;right:0;z-index:9999;
  background:#1a1a1a;color:#fff;padding:1rem 1.5rem;
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
  font-size:.85rem;line-height:1.5;box-shadow:0 -4px 20px rgba(0,0,0,.2);
  transform:translateY(100%);transition:transform .4s ease
}
.cookie-banner.show{transform:translateY(0)}
.cookie-banner p{margin:0;flex:1;color:rgba(255,255,255,.85)}
.cookie-banner p a{color:var(--brand);text-decoration:underline}
.cookie-banner__buttons{display:flex;gap:.5rem;flex-shrink:0}
.cookie-banner__btn{padding:.5rem 1.25rem;font-size:.82rem;font-weight:700;border:none;cursor:pointer;border-radius:2px;font-family:inherit}
.cookie-banner__btn--accept{background:var(--brand);color:#fff}
.cookie-banner__btn--accept:hover{background:#0c5052}
.cookie-banner__btn--reject{background:transparent;color:rgba(255,255,255,.6);border:1px solid rgba(255,255,255,.2)}
.cookie-banner__btn--reject:hover{color:#fff;border-color:rgba(255,255,255,.4)}
@media(max-width:600px){
  .cookie-banner{flex-direction:column;text-align:center;padding:1.25rem}
  .cookie-banner__buttons{width:100%;justify-content:center}
}


/* ═══ FIX: Gap between services header and product buttons ═══ */
.quick-links{margin-top:1rem!important}
