body {
  padding-top: 72px;
}

.section-divider {
  border-top: 2px dashed #dee2e6;
  margin: 1.5rem 0;
}

/* Navbar brand color */
.navbar.bg-primary {
  background: linear-gradient(90deg, #009FE3 0%, #3fb7eb 50%, #009FE3 100%) !important;
}

/* PlaneSpotting Hero Section */
.ps-hero {
  background: radial-gradient(140% 120% at 50% -10%, #ffffff 0%, #f5f9ff 55%, #ffffff 100%);
}

.ps-hero .carousel img {
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

/* Brand colour for PlaneSpotting (adjust if needed) */
:root{ --ps-blue: #009FE3; }

/* Accordion wrapper */
.ps-accordion .accordion-item { background:#f3f3f3; }
.ps-accordion .accordion-button {
  background:#f3f3f3;
  border-radius:1rem !important;
  padding:1.25rem 3rem 1.25rem 1.25rem;
  box-shadow:none;
}
.ps-accordion .accordion-button:not(.collapsed) {
  background:#eef8ff;
}

/* Left icon */
.ps-acc-icon{
  font-size:2rem;
  color:var(--ps-blue);
  margin-right:.75rem;
}

/* Title */
.ps-acc-title{
  font-weight:600;
  font-size:1.35rem;
}

/* Replace Bootstrap chevron with + / – */
.ps-accordion .accordion-button::after{
  background-image:none !important;
  content:"+";
  font-weight:700;
  font-size:1.5rem;
  color:#6c757d;
  transform:none !important;
}
.ps-accordion .accordion-button:not(.collapsed)::after{
  content:"–";
}

/* Body */
.ps-accordion .accordion-body{
  background:#fff;
  border-radius:0 0 1rem 1rem;
}

/* Images inside panels */
.ps-accordion .accordion-body img{
  width:100%;
  height:auto;
  display:block;
}
/* ================================
   PlaneSpotting accordion (clean)
   ================================ */

:root{
  --ps-blue: #2f74f5;        /* closed state */
  --ps-blue-hover: #1f60e6;
  --ps-red:  #c62828;        /* open state */
}

/* Item container */
.ps-accordion .accordion-item{
  border: 0;
  border-radius: 1rem;
  overflow: hidden;
  background: transparent;
}

/* Header button (default = collapsed) */
.ps-accordion .accordion-button{
  /* Make Bootstrap use our colors and also hard-set props */
  --bs-accordion-btn-bg: var(--ps-blue);
  --bs-accordion-btn-color: #fff;
  --bs-accordion-active-bg: var(--ps-red);
  --bs-accordion-active-color: #fff;
  --bs-accordion-btn-focus-box-shadow: 0 0 0 .25rem rgba(47,116,245,.25);

  background-color: var(--ps-blue) !important;
  color: #fff !important;

  border-radius: 1rem !important;
  padding: 1.25rem 3rem 1.25rem 1.25rem;
  box-shadow: none !important;
}

/* Hover (when still collapsed) */
.ps-accordion .accordion-button.collapsed:hover{
  background-color: var(--ps-blue-hover) !important;
}

/* OPEN (expanded) header */
.ps-accordion .accordion-button:not(.collapsed){
  background-color: var(--ps-red) !important;
  color: #fff !important;
  box-shadow: none !important;          /* kill Bootstrap’s inset line */
}

/* Replace chevron with + / – and keep it white */
.ps-accordion .accordion-button::after{
  background-image: none !important;
  content: "+";
  font-weight: 700;
  font-size: 1.5rem;
  color: rgba(255,255,255,.9);
  transform: none !important;
}
.ps-accordion .accordion-button:not(.collapsed)::after{
  content: "–";
}

/* Left icon in the header (white in both states) */
.ps-accordion .ps-acc-icon{
  font-size: 2rem;
  color: #fff;
  margin-right: .75rem;
}

/* Title text in the header */
.ps-accordion .ps-acc-title{
  font-weight: 600;
  font-size: 1.35rem;
}

/* Panel body */
.ps-accordion .accordion-body{
  background: #fff;
  border-radius: 0 0 1rem 1rem;
}

/* Images inside panels */
.ps-accordion .accordion-body img{
  width: 100%;
  height: auto;
  display: block;
}