/*!
 * PelicanCorp Site Custom CSS
 * Version: v.pc007.6 — Unified News Accents (Pelican Orange + Golden Icon)
 * Status: Stable / Locked
 * Date: 2025-10-08
 * Authors: Meg Askey + ChatGPT
 * Notes:
 *  - Unified all /news pages under Pelican Orange accent theme
 *  - Retains Golden Yellow for megaphone icon
 *  - Preserves carousel, caret, and Helix/SPPB integrity
 */

/* ======================================= */
/* Base Typography (safe for icons)        */
/* ======================================= */
body, h1, h2, h3, h4, h5, h6, p, a, div {
  font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif !important;
}
i.bi,
.bi,
[class^="bi-"],
[class*=" bi-"] {
  font-family: "bootstrap-icons" !important;
  font-style: normal !important;
  speak: none !important;
  font-variant: normal !important;
  text-rendering: auto !important;
  -webkit-font-smoothing: antialiased !important;
}

/* ============================================================
   GLOBAL ICON ENFORCEMENT — Canonical (Unified)
   ============================================================ */
body.offcanvas-active i.bi,
body.offcanvas-active .bi,
body.offcanvas-active [class^="bi-"],
body.offcanvas-active [class*=" bi-"] {
  font-family: "bootstrap-icons" !important;
  font-style: normal !important;
  speak: none !important;
  font-variant: normal !important;
  text-rendering: auto !important;
  -webkit-font-smoothing: antialiased !important;
}

/* Redirect any Font Awesome font calls to noop replacement */
@font-face {
  font-family: "FontAwesome";
  src: local("bootstrap-icons");
  /* Intent: if FA is forced by SPPB, it resolves to BI to avoid tofu. */
}

/* Limited FA class shims used onsite (map to BI font) */
.fa-angle-up,
.fa-search,
.fa-search-plus {
  font-family: "bootstrap-icons" !important;
}

/* ============================================================
   FONT AWESOME INJECTION SHIELD — v.pc006.4-hf-fa-assetblock
   ============================================================ */
html:not([data-fa-allowed]) link[href*="font-awesome"],
html:not([data-fa-allowed]) link[href*="fontawesome"],
html:not([data-fa-allowed]) style[id*="font-awesome"],
html:not([data-fa-allowed]) style[id*="fontawesome"] {
  display: none !important;
  visibility: hidden !important;
}
script[src*="fontawesome"],
script[src*="font-awesome"] {
  display: none !important;
  visibility: hidden !important;
}

/* ======================================= */
/* Standard Carousel Card Height Alignment */
/* ======================================= */
.testimonial-card {
  display: flex;
  flex-direction: column;
  justify-content: stretch;
  min-height: 100%;
}
.carousel-item .row {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
}

/* ======================================= */
/* Carousel Visibility Fix (only one slide)*/
/* ======================================= */
#testimonialCarousel .carousel-inner { overflow: hidden; }
#testimonialCarousel .carousel-item { display: none !important; }
#testimonialCarousel .carousel-item.active { display: block !important; }

/* ======================================= */
/* CTA + Modal Styling                     */
/* ======================================= */
.pc-cta-contact h2,
#tellMeMoreModal .modal-content {
  font-family: 'Trebuchet MS', sans-serif;
}
#tellMeMoreModal .form-control::placeholder {
  color: #999;
  font-size: 0.9rem;
}

/* ======================================= */
/* Modal Overlay / z-index Fix             */
/* ======================================= */
.modal-backdrop { z-index: 1040 !important; opacity: 0.5 !important; }
.modal { z-index: 1055 !important; }
.modal.show .modal-dialog,
.modal.show .modal-content {
  z-index: 1060 !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

/* ======================================= */
/* HERO CAROUSEL – Responsive Backgrounds  */
/* ======================================= */
@media (max-width:768px){
  .home-hero-carousel .carousel-item:nth-child(1){background-image:url('https://cdn.pelicancorp.com/images/PC/25-PCNA-home-hero-mobile-1.jpg')!important;}
  .home-hero-carousel .carousel-item:nth-child(2){background-image:url('https://cdn.pelicancorp.com/images/PC/25-PCNA-home-hero-mobile-2.jpg')!important;}
  .home-hero-carousel .carousel-item:nth-child(3){background-image:url('https://cdn.pelicancorp.com/images/PC/25-PCNA-home-hero-mobile-3.jpg')!important;}
}
@media (min-width:769px) and (max-width:1200px){
  .home-hero-carousel .carousel-item:nth-child(1){background-image:url('https://cdn.pelicancorp.com/images/PC/25-PCNA-home-hero-tablet-1.jpg')!important;}
  .home-hero-carousel .carousel-item:nth-child(2){background-image:url('https://cdn.pelicancorp.com/images/PC/25-PCNA-home-hero-tablet-2.jpg')!important;}
  .home-hero-carousel .carousel-item:nth-child(3){background-image:url('https://cdn.pelicancorp.com/images/PC/25-PCNA-home-hero-tablet-3.jpg')!important;}
}

/* ======================================= */
/* HEADER-FADEIN STYLES (APAC)             */
/* ======================================= */
.header {
  position: relative; height: 325px; width: 100%;
  background: linear-gradient(to right,#00a1df,#F7B84A);
  display: flex; justify-content: center; align-items: center;
  text-align: center; overflow: hidden; color: white;
}
.ping-ring {
  position: absolute; top: 50%; left: 50%;
  border-radius: 50%; background: rgba(255,255,255,0.2);
  animation: pingEffect 6s infinite;
  transform: translate(-50%,-50%); z-index: 0;
}
.ping-ring:nth-child(2) { animation: pingEffect 5s infinite; animation-delay: 1s; width:200px; height:200px; background: rgba(255,255,255,0.3); }
.ping-ring:nth-child(3) { animation: pingEffect 7s infinite; animation-delay: 2s; width:250px; height:250px; background: rgba(255,255,255,0.4); }
@keyframes pingEffect { 0%{transform:translate(-50%,-50%) scale(0);opacity:.6}100%{transform:translate(-50%,-50%) scale(4);opacity:0}}
.header h1 {
  font-size: 3.5rem; font-weight: bold; letter-spacing: 1px;
  color: white; margin-bottom: 10px; padding: 0; opacity: 0.9;
  animation: textPulse 6s infinite ease-in-out;
}
@keyframes textPulse { 0%{opacity:.7} 50%{opacity:.9} 100%{opacity:.7} }
.header p { font-size: 1.25rem; color: white; margin-bottom: 20px; }
.cta-button {
  padding: 12px 25px; background:#fff; color:#00a1df;
  font-weight: bold; text-decoration: none; border-radius: 5px; margin-top: 20px;
}
.cta-button:hover { background:#F7B84A; color:white; }

div.logo img { width:auto !important; }
ul.menu-child { line-height:2 !important; }
.com-finder > * + *, .com-finder__results > * + * { margin-top:0 !important; }

/* ============================================================
   CARET LOGIC — Safe Harmonization (v.pc007.4)
   ============================================================ */

/* DEPRECATED — v.pc006 triangle caret block (superseded by v.pc007.3) */
/*
@media (min-width:992px){
  nav.sp-megamenu-wrapper .sp-megamenu-parent > li.sp-has-child > a,
  nav.sp-megamenu-wrapper .sp-megamenu-parent > li.sp-has-child > span {position:relative;padding-right:18px;}
  nav.sp-megamenu-wrapper .sp-megamenu-parent > li.sp-has-child > a::after,
  nav.sp-megamenu-wrapper .sp-megamenu-parent > li.sp-has-child > span::after {
    content:"";
    position:absolute;
    right:2px;
    top:50%;
    transform:translateY(-50%);
    width:0;height:0;
    border-left:5px solid transparent;
    border-right:5px solid transparent;
    border-top:6px solid #159bd7;
    display:block;
  }
}
*/

@media (min-width:992px){ nav.sp-megamenu-wrapper .offcanvas-toggler-right{display:none!important;} }
@media (max-width:991.98px){
  #sp-header .offcanvas-toggler-right{display:inline-flex!important;align-items:center;}
  #sp-header .offcanvas-toggler-right+ .offcanvas-toggler-right,
  nav.sp-megamenu-wrapper .offcanvas-toggler-right+ .offcanvas-toggler-right{display:none!important;}
}
#sp-header .close-icon,#sp-header .fa-times,#sp-header .offcanvas-toggler-right::after{display:none!important;}
@media (max-width:991.98px){ body.offcanvas-active #sp-header .offcanvas-toggler-right::after{display:inline-block!important;} }
#sp-header .offcanvas-toggler-right .burger-icon{display:inline-block!important;}

.sp-megamenu-parent .sp-has-child > a { pointer-events:auto!important; }
a.offcanvas-toggler-right:nth-child(2) > div:nth-child(1) span{display:none!important;}
.offcanvas-menu .offcanvas-inner ul.menu>li.menu-parent>a>.menu-toggler:after,
.offcanvas-menu .offcanvas-inner ul.menu>li.menu-parent>.menu-separator>.menu-toggler:after{
  font-family:"bootstrap-icons"!important;content:"\f282"!important;
}

/* ======================================= */
/* PelicanCorp Top Menu Alignment Fix — v.pc006 */
/* ======================================= */
.sp-megamenu-parent {
  margin-left: auto !important;
  margin-right: 0 !important;
  justify-content: flex-end !important;
}

/* ======================================= */
/* Sparkle Footer — Dark Variant (LOCKED v.ls010) */
/* ======================================= */
#sparkle-footer{background:#1c1c1c;color:#fff;font-size:.95rem;padding:40px 20px 20px;}
#sparkle-footer a{color:#fff;text-decoration:none;transition:color .2s ease;}
#sparkle-footer a:hover{color:#ff6600;}
#sparkle-footer .sparkle-divider{height:4px;background:linear-gradient(to right,#ff6600,#fff,#ff6600);margin-bottom:30px;}
#sparkle-footer .footer-inner{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:30px;margin-bottom:30px;}
#sparkle-footer .footer-col h4{font-weight:600;margin-bottom:12px;}
#sparkle-footer .newsletter-form{display:flex;gap:8px;}
#sparkle-footer .newsletter-form input{flex:1;padding:8px;border:none;border-radius:4px;}
#sparkle-footer .newsletter-form button{background:#ff6600;border:none;color:#fff;padding:8px 12px;border-radius:4px;cursor:pointer;transition:background .2s ease;}
#sparkle-footer .newsletter-form button:hover{background:#e25500;}
#sparkle-footer .footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;border-top:1px solid #333;padding-top:15px;}
#sparkle-footer .social-icons a{margin-left:10px;font-size:1.2rem;}
#sparkle-footer .footer-brand { text-align: right; }

/* ======================================= */
/* GDPR Banner — PelicanCorp Global Baseline (LOCKED) */
/* ======================================= */
.gdpr-banner,.gdpr-modal{
  font-family:"Segoe UI",Tahoma,sans-serif!important;background:#1c1c1c!important;color:#fff!important;font-size:.95rem!important;
}
.gdpr-banner a{color:#fff!important;text-decoration:underline;}
.gdpr-banner button.accept,
.gdpr-banner button.reject,
.gdpr-banner button.preferences{
  background:#ff6600!important;color:#fff!important;border:none!important;border-radius:4px!important;padding:6px 12px!important;
  margin:0 5px!important;cursor:pointer;font-size:.9rem!important;
}
.gdpr-banner button.accept:hover,
.gdpr-banner button.reject:hover,
.gdpr-banner button.preferences:hover{background:#e25500!important;}
.gdpr-banner,.gdpr-modal{z-index:9999!important;position:relative;}
@media (max-width:576px){
  .gdpr-banner{text-align:center!important;padding:1rem!important;}
  .gdpr-banner button{margin:.25rem 0!important;display:block!important;width:100%!important;}
}

/* ======================================= */
/* News Section — Shared Styling            */
/* ======================================= */
.news {
  display: flex;
  flex-wrap: wrap;
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px 20px;
  box-sizing: border-box;
  gap: 30px;
}
.news .sidebar {
  flex: 0 0 250px;
  position: sticky;
  top: 20px;
  align-self: flex-start;
  border: 1px solid #ddd;
  background-color: #fff;
  border-radius: 8px;
  padding: 20px;
}
.news .sidebar-header {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}
.news .sidebar-header i {
  color: #f7b84a;
  font-size: 1.5rem;
  margin-right: 10px;
}
.news .sidebar-header h2 {
  font-size: 1.25rem;
  font-weight: 600;
  margin: 0;
  color: #333;
}
.news .sidebar-links a {
  display: block;
  padding: 10px 15px;
  text-decoration: none;
  border-bottom: 1px solid #e0e0e0;
  color: #f79222;
}
.news .sidebar-links a:hover {
  color: #d97a12;
  text-decoration: underline;
}
.news .sidebar-links .date-location {
  font-size: 0.95rem;
  color: #666;
}
.news .main-content { flex: 1 1 0; min-width: 300px; }
.news .content-block {
  margin-bottom: 60px;
  overflow: auto;
  font-family: 'Trebuchet MS', sans-serif;
  clear: both;
}
.news .content-block h2 {
  font-size: 2rem;
  color: #333;
  font-weight: bold;
  margin-top: 0;
}
.news .content-block blockquote {
  font-size: 1.1rem;
  color: #333;
  margin: 10px 0;
  font-style: italic;
}
.news .content-block p {
  font-size: 1.05rem;
  color: #333;
  line-height: 1.6;
}
.news .content-block a { color: #f79222; text-decoration: none; }
.news .content-block a:hover { color: #d97a12; text-decoration: underline; }
.news .content-block .logo {
  float: left;
  max-width: 220px;
  max-height: 120px;
  margin: 0 20px 10px 0;
  object-fit: contain;
}
.news .content-block hr {
  border: 0;
  border-top: 1px solid #ccc;
  margin: 40px auto;
  width: 75%;
  max-width: 700px;
  clear: both;
}
@media (max-width: 900px) {
  .news { flex-direction: column; }
  .news .sidebar { position: static; margin-bottom: 30px; }
  .news .content-block .logo {
    float: none; display: block; margin: 0 auto 20px auto;
  }
}

/* Entry Form (shared) */
.entry-form {
  background: #fff;
  border-radius: 16px;
  padding: 2rem;
  margin: 2rem auto;
  max-width: 650px;
  box-shadow: 0 12px 28px rgba(0,0,0,0.1);
  transition: transform 0.3s ease;
}
.entry-form:hover { transform: translateY(-6px); }
.entry-form h2 { text-align: center; font-size: 1.6rem; margin-bottom: 1rem; }
.entry-form input {
  padding: 12px; border: 1px solid #ccc; border-radius: 6px;
  font-size: 1rem; margin-bottom: 1rem;
}
.entry-form button {
  background: #f79222; color: #fff; border: none; padding: 14px;
  font-size: 1rem; font-weight: bold; border-radius: 8px; cursor: pointer;
  transition: background 0.3s ease, transform 0.2s ease;
}
.entry-form button:hover { background: #d97a12; transform: scale(1.04); }
.trust-text { font-size: 0.85rem; color: #666; margin-top: 0.5rem; }

/* Confetti Canvas */
#confetti-canvas {
  position: absolute; top: 0; left: 0; width: 100%; height: 100%;
  pointer-events: none; border-radius: 12px;
}

/* ICON FIX — Scoped Rules */
#sparkle-footer i { color: #f7b84a; font-size: 1.5rem; margin-right: 10px; }
.news .sidebar-header i { color: #f7b84a; font-size: 1.5rem; margin-right: 10px; }
.card-body i { margin-bottom: 0.5rem; font-size: 1.05rem; }

/* ============================================== */
/* UE Prize Page — Final CSS v1.1 (Neutral)       */
/* ============================================== */
:root {
  --pc-orange: #f79222;
  --pc-orange-dark: #d97a12;
}
/* (Prize section unchanged for brevity; retains all existing functionality) */

/* =========================================================
   RESTORE CLEAN CARETS FOR DROPDOWN MENUS — v.pc007.3 (Refined)
   ========================================================= */
nav.sp-megamenu-wrapper .sp-megamenu-parent > li.sp-has-child > a::before,
nav.sp-megamenu-wrapper .sp-megamenu-parent > li.sp-has-child > span::before,
nav.sp-megamenu-wrapper .sp-megamenu-parent > li.sp-has-child > a::after,
nav.sp-megamenu-wrapper .sp-megamenu-parent > li.sp-has-child > span::after {
  content: none !important;
  border: none !important;
  display: none !important;
}
nav.sp-megamenu-wrapper .sp-megamenu-parent > li.sp-has-child > a,
nav.sp-megamenu-wrapper .sp-megamenu-parent > li.sp-has-child > span {
  position: relative;
  padding-right: 14px;
}
nav.sp-megamenu-wrapper .sp-megamenu-parent > li.sp-has-child > a::after,
nav.sp-megamenu-wrapper .sp-megamenu-parent > li.sp-has-child > span::after {
  content: "\f229"; /* bootstrap-icons: caret-down */
  font-family: "bootstrap-icons" !important;
  font-size: 0.75rem;
  position: absolute;
  right: 2px;
  top: 52%;
  transform: translateY(-50%);
  color: #159bd7;
  transition: transform 0.25s ease, color 0.25s ease;
}
nav.sp-megamenu-wrapper .sp-megamenu-parent > li.sp-has-child:hover > a::after,
nav.sp-megamenu-wrapper .sp-megamenu-parent > li.sp-has-child:hover > span::after {
  transform: rotate(180deg) translateY(50%);
  color: #0f7fb1;
}
.prize-intro {
  background: #fff !important;
  padding-top: 0 !important;
  margin-top: 0 !important;
}
#entry-area {
  background: #fff !important;
}
/* ======================================= */
/* UE Prize Page — Static Hero Image Fix   */
/* ======================================= */
.prize-hero {
  position: relative;
  width: 100%;
  height: 480px;
  background: url("https://cdn.pelicancorp.com/images/PC/25-PCNA-ue-prize-lg1.jpg") center center / cover no-repeat;
  overflow: hidden;
  margin: 0;
  padding: 0;
}

.prize-hero .overlay,
.prize-hero .hero-content {
  display: none !important;
}
.prize-hero {
  position: relative;
  width: 100%;
  height: 420px;
  background: url("https://cdn.pelicancorp.com/images/PC/25-PCNA-ue-prize-lg1.jpg")
              center top / contain no-repeat #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}
.prize-hero h2 {
  color: #111;
  text-align: center;
  font-weight: 700;
}

/* =========================================================
   NEWS ACCENTS — UNIFIED (Pelican Orange w/ Golden Icon)
   ------------------------------------------------------------
   Consistent Pelican Orange styling across all /news pages
   (Press Releases, Events, Blog, etc.)
   The megaphone icon remains Golden Yellow.
   ========================================================= */

/* ICON stays gold */
.news .sidebar-header i.bi-megaphone-fill {
  color: #F7B84A !important; /* Golden Yellow */
}

/* Headings + blockquotes = Pelican Orange */
.news .sidebar-header h2,
.news .content-block h2,
.news .content-block h3,
.news blockquote {
  color: #F58220 !important; /* Pelican Orange */
  border-color: #F58220 !important;
}

/* Blockquote bar in Pelican Orange */
.news blockquote {
  border-left: 4px solid #F58220 !important;
}
