/*!
 * PelicanCorp Site Custom CSS
 * Version: v.pc006  —  LOCKED
 * Status: Canonical patch (Header Icons / Caret / Burger)
 * Date: 2025-09-15
 * Authors: Meg Askey + ChatGPT
 * Notes:
 *  - Nukes dropdown tofu; restores ONE right-aligned caret on desktop
 *  - Ensures single off-canvas hamburger; no stray “×”
 *  - Keeps homepage visuals intact (carousels, modals, hero, etc.)
 *  - Reapply after Helix/template updates; clear Joomla/Helix/JCH/Cloudflare caches
 */

/* ======================================= */
/* 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;
}
.bi, [class^="bi-"], [class*=" bi-"] {
  font-family: "bootstrap-icons" !important;
  font-style: normal;
}

/* ======================================= */
/* 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;
}

/* ======================================= */
/* FEATURES SLIDESHOW                      */
/* ======================================= */
#features-carousel { background-color: #f5f5f5; padding: 4rem 0; }
#features-carousel .container { max-width: 1200px; margin: 0 auto; padding: 0 15px; }
#features-carousel h2.section-title {
  font-size: 2rem; font-weight: 600; color: #212529;
  margin-bottom: 2rem; text-align: center;
}
.carousel-wrapper { position: relative; }
.main-carousel { position: relative; overflow: hidden; }
.carousel-slide { display: none; position: relative; }
.carousel-slide.active { display: block; }
.carousel-slide img { width: 100%; height: auto; display: block; }
.carousel-overlay {
  position: absolute; top: 10%; left: 5%;
  background: rgba(255,255,255,0.95);
  padding: 2rem; max-width: 600px;
  box-shadow: 0 0 15px rgba(0,0,0,0.1);
}
.carousel-overlay h3 { color: #3e67a3; font-size: 1.75rem; margin-bottom: .5rem; }
.carousel-overlay p { color: #212529; font-size: 1rem; margin: 0; }
.carousel-thumbnails { display: flex; justify-content: center; margin-top: 2rem; }
.carousel-thumbnails img.thumb {
  width: 100px; height: auto; margin: 0 .5rem; cursor: pointer;
  opacity: .6; border: 2px solid transparent; transition: all .3s ease;
}
.carousel-thumbnails img.thumb.active { opacity: 1; border-color: #3e67a3; }
.btn.btn-outline-light.btn-lg:hover { color: #00A1DF !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; }
.fa-angle-up { --fa:"\f286" !important; font-family:"bootstrap-icons" !important; }
.fa-search { --fa:"\F52A" !important; font-family:"bootstrap-icons" !important; }
.fa-search-plus { --fa:"\F18E" !important; font-family:"bootstrap-icons" !important; }
#sp-header .container .container-inner .row { justify-content: space-between !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;}
}

/* =========================================================
   v.pc005 + v.pc006 + v.pc007 (Header / Caret / Burger fixes)
   ========================================================= */
nav.sp-megamenu-wrapper .sp-megamenu-parent > li.sp-has-child i,
nav.sp-megamenu-wrapper .sp-megamenu-parent > li.sp-has-child .menu-toggler { display:none!important; }
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;display:none!important; }

@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;}

@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:""!important;position:absolute!important;right:2px!important;top:50%!important;
    transform:translateY(-50%)!important;width:0;height:0;
    border-left:5px solid transparent!important;border-right:5px solid transparent!important;border-top:6px solid #159bd7!important;
    display: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;
}

/* ======================================= */
/* 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;}

/* Footer brand alignment */
#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;}
}

/* ======================================= */
/* PelicanCorp Main Menu Alignment — Legacy Look */
/* ======================================= */
#sp-header .container .row{justify-content:flex-start!important;}
#sp-header .sp-megamenu-parent{margin-left:2rem;}

/* ======================================= */
/* News Section — Shared Styling            */
/* Applies to Events, PR, Industry News,    */
/* Case Studies, Blog                       */
/* ======================================= */

/* Wrapper: sidebar + main content */
.news {
  display: flex;
  flex-wrap: wrap;
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px 20px;
  box-sizing: border-box;
  gap: 30px; /* space between sidebar and content */
}

/* Sidebar */
.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;
}

/* Main content */
.news .main-content {
  flex: 1 1 0;
  min-width: 300px;
}

/* Individual event/post */
.news .content-block {
  margin-bottom: 60px;
  overflow: auto; /* clears floated logos */
  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;
  /* no border-left, no padding-left */
}

.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;
}

/* Logos */
.news .content-block .logo {
  float: left;
  max-width: 220px;
  max-height: 120px;
  margin: 0 20px 10px 0;
  object-fit: contain;
}

/* Dividers */
.news .content-block hr {
  border: 0;
  border-top: 1px solid #ccc;
  margin: 40px auto;
  width: 75%;
  max-width: 700px;
  clear: both;
}

/* Responsive adjustments */
@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 */
.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;
  text-align: center;
}

/* Confetti Canvas */
#confetti-canvas {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  border-radius: 12px;
}
/* ============================================================
   ICON FIX — Scoped Rules (PelicanCorp, 2025-09-29)
   ------------------------------------------------------------
   ❌ Removed global "i { ... }" overrides
   ✅ Scoped to footer + sidebar headers only
   ✅ Restores Bootstrap Icons site-wide
   ============================================================ */

/* Footer icons (gold, with spacing) */
#sparkle-footer i {
  color: #f7b84a;
  font-size: 1.5rem;
  margin-right: 10px;
}

/* Sidebar header icons (gold, sized, spacing) */
.news .sidebar-header i {
  color: #f7b84a;
  font-size: 1.5rem;
  margin-right: 10px;
}

/* Card icons (slightly larger, spacing below) */
.card-body i {
  margin-bottom: 0.5rem;
  font-size: 1.05rem;
}
/* PelicanCorp Top Menu Alignment Fix — v.pc006 */
.sp-megamenu-parent {
  margin-left: auto !important;   /* push menu items to the right */
  margin-right: 0 !important;
  justify-content: flex-end !important;
}
/* ============================================== */
/* UE Prize Page — Final CSS v1.1 (Neutral)       */
/* ============================================== */

:root {
  --pc-orange: #f79222;
  --pc-orange-dark: #d97a12;
}

/* Hero */
.prize-hero {
  position: relative;
  min-height: 480px;
  text-align: center;
  background: url('https://cdn.pelicancorp.com/images/PC/25-PCNA-ue-prize-lg.jpg') center/cover no-repeat;
  border-radius: 0 0 30px 30px;
}
.prize-hero .overlay {
  position: absolute; inset: 0;
  background: linear-gradient(to bottom, rgba(34,34,34,.7), rgba(34,34,34,.3));
  border-radius: 0 0 30px 30px;
}
.prize-hero .hero-content {
  position: absolute; top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  background: rgba(255,255,255,.9);
  padding: 1.5rem 2rem;
  border-radius: 12px;
  max-width: 700px;
  text-align: center;
  color: #222;
}
.prize-hero .hero-content h1 {
  font-size: 2.3rem; font-weight: 800;
  margin-bottom: .5rem;
  color: #222 !important;
}
.prize-hero .hero-content .subhead { font-size: 1rem; color: #555; }
.prize-hero .hero-content .value-tag {
  background: #555; /* neutral badge */
  color: #fff; border-radius: 20px;
  padding: .3rem .9rem; font-size: .95rem;
  display: inline-block; margin: .5rem 0;
}
.prize-hero .hero-content .cta-btn {
  background: var(--pc-orange); color: #fff;
  border: none; border-radius: 30px;
  padding: 12px 28px; font-size: 1.1rem;
  font-weight: 700;
  box-shadow: 0 3px 8px rgba(0,0,0,.15);
  transition: all .25s ease;
}
.prize-hero .hero-content .cta-btn:hover {
  background: var(--pc-orange-dark); transform: translateY(-2px);
}

/* Intro */
.prize-intro {
  background: #fff; padding: 2.5rem 1rem;
  text-align: center;
}
.prize-intro h2 {
  font-size: 1.8rem; font-weight: 700;
  color: #222 !important;
}
.prize-description {
  max-width: 700px; margin: 1rem auto 2rem;
  color: #444;
}
.geo-rule {
  color: #666;
  font-size: 1.8rem;
  display: flex; justify-content: center; gap: 1.5rem;
}

/* Entry Area */
#entry-area {
  background: #f8f9fa; padding: 3rem 1rem;
}
#entry-area .row {
  display: flex; gap: 1.25rem; align-items: stretch;
}
@media (min-width: 992px){
  #entry-area .col-lg-3 { flex: 0 0 25%; max-width: 25%; }
  #entry-area .col-lg-5 { flex: 0 0 40%; max-width: 40%; }
  #entry-area .col-lg-4 { flex: 0 0 35%; max-width: 35%; }
}

/* Steps */
.step-vertical {
  display: flex; flex-direction: column;
  align-items: flex-start;
  background: #fff; border: 1px solid #eee;
  border-radius: 10px; padding: 1rem;
  margin-bottom: 1rem;
  transition: transform .2s ease;
}
.step-vertical:hover { transform: translateY(-2px); }
.step-number {
  width: 42px; height: 42px; line-height: 42px;
  border-radius: 50%; background: #444; color: #fff;
  font-weight: 700; text-align: center;
  margin-bottom: .5rem; align-self: center;
}
.step-vertical h5 {
  margin: 0; font-size: 1rem;
  color: #222;
}
.step-vertical p {
  margin: .25rem 0 0;
  font-size: .9rem; color: #555;
}

/* Form */
.entry-form {
  background: #fff; border-radius: 10px;
  padding: 1.5rem;
  box-shadow: 0 4px 12px rgba(0,0,0,.08);
}
.entry-form h3 {
  font-size: 1.3rem; margin-bottom: 1rem;
  color: #222 !important;
}
.entry-form .form-control {
  margin-bottom: 1rem;
  border: 1px solid #cfd8dc;
  border-radius: 8px; height: 42px;
}
.entry-form .form-control:focus {
  border-color: #666;
  box-shadow: 0 0 0 .15rem rgba(100,100,100,.2);
}
.entry-form .cta-btn {
  width: 100%;
  background: var(--pc-orange);
  border-radius: 28px;
  font-weight: 700;
}
.entry-form .cta-btn:hover {
  background: var(--pc-orange-dark);
  transform: translateY(-1px);
}

/* Geolantis Card */
.geolantis-card {
  background: #fff; border: 1px solid #eee;
  border-radius: 10px; padding: 1.25rem;
  text-align: left;
}
.geolantis-card img {
  max-width: 100%; height: auto;
  margin-bottom: 1rem;
}
.geolantis-card h4 {
  color: #222 !important;
  font-weight: 600; margin-bottom: .5rem;
}
.geolantis-card .cta-btn { display: none !important; }

/* Terms */
section.bg-white { padding: 2rem 1rem; }
section.bg-white h4 {
  color: #222 !important;
  margin-bottom: 1rem;
}
section.bg-white p {
  font-size: .95rem; color: #444;
  text-align: left !important;
}
/* Prize Page — Force One Row (20/40/40 layout) */
@media (min-width: 992px) {
  #entry-area .row {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    gap: 1.25rem !important;
  }
  #entry-area .col-lg-3 {
    flex: 0 0 20% !important;
    max-width: 20% !important;
  }
  #entry-area .col-lg-5 {
    flex: 0 0 40% !important;
    max-width: 40% !important;
  }
  #entry-area .col-lg-4 {
    flex: 0 0 40% !important;
    max-width: 40% !important;
  }
}

/* Tweak Geolantis card so it fits gracefully */
#entry-area .geolantis-card img {
  max-width: 75% !important;
  height: auto !important;
  margin: 0 auto 0.75rem auto !important;
  display: block !important;
}
#entry-area .geolantis-card {
  padding: 1rem !important;
}
