.elementor-4225 .elementor-element.elementor-element-5ff159b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}/* Start custom CSS for html, class: .elementor-element-9e5fa4d *//* === Capital Pride London — Accessibility page ===
   Paste this ONCE into Appearance > Customize > Additional CSS.
   Pairs with accessibility-page-block.html (one HTML widget).
   Scoped under .cpl-acc; inherits the site's fonts so it matches
   the rest of your pages and renders correctly on the live site. */

.cpl-acc{
  --cpl-blue:#1B6E96; --cpl-blue-dark:#14506e; --cpl-green:#D1FF11;
  --cpl-ink:#1d1d1d; --cpl-body:#4d4d4d; --cpl-line:#e2eaef; --cpl-tint:#f3f8fb;
  --pp-red:#E40303; --pp-orange:#FF8C00; --pp-yellow:#FFED00; --pp-green:#008026;
  --pp-blue:#004DFF; --pp-purple:#750787; --pp-trans:#5BCEFA; --pp-pink:#F5A9B8; --pp-brown:#613915;
  --wrap:1080px;
  font-family:inherit;color:var(--cpl-body);line-height:1.65;
}
.cpl-acc *{box-sizing:border-box;}
.cpl-acc p{margin:0 0 1rem;}
.cpl-acc h1,.cpl-acc h2,.cpl-acc h3{font-family:inherit;}
.cpl-acc img{max-width:100%;height:auto;}
/* portrait photos sit beside the text (intro + contact) — suits tall images, no wasted space */
.cpl-acc .acc-split{display:grid;grid-template-columns:1fr 360px;gap:44px;align-items:center;}
.cpl-acc .acc-split.rev{grid-template-columns:360px 1fr;}
.cpl-acc .acc-photo{width:100%;height:auto;display:block;border-radius:18px;
  border:1px solid var(--cpl-line);box-shadow:0 12px 30px rgba(20,80,110,.10);}
.cpl-acc .acc-split > div > :first-child{margin-top:0;}
.cpl-acc .acc-split > div > :last-child{margin-bottom:0;}
.cpl-acc .wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px;}

/* celebratory Progress-Pride hairline (bookends the page) */
.cpl-acc .prideline{height:6px;width:100%;border:0;margin:0;
  background:linear-gradient(90deg,
    var(--pp-red) 0 11.1%, var(--pp-orange) 0 22.2%, var(--pp-yellow) 0 33.3%,
    var(--pp-green) 0 44.4%, var(--pp-blue) 0 55.5%, var(--pp-purple) 0 66.6%,
    var(--pp-trans) 0 77.7%, var(--pp-pink) 0 88.8%, var(--pp-brown) 0 100%);}

/* type */
.cpl-acc .eyebrow{display:inline-block;font-weight:700;font-size:.8rem;line-height:1;
  letter-spacing:.16em;text-transform:uppercase;color:var(--cpl-blue);
  padding-bottom:7px;border-bottom:3px solid var(--cpl-green);margin:0 0 16px;}
.cpl-acc h1{font-weight:800;font-size:clamp(2.1rem,5vw,3.2rem);line-height:1.05;
  color:var(--cpl-ink);letter-spacing:-.015em;margin:0 0 .6rem;}
.cpl-acc h2{font-weight:800;font-size:clamp(1.55rem,3.2vw,2.2rem);line-height:1.15;
  color:var(--cpl-blue);margin:0 0 .5rem;}
.cpl-acc h3{font-weight:700;font-size:1.18rem;line-height:1.3;color:var(--cpl-ink);margin:1.3rem 0 .4rem;}
/* no highlighted text — keep any <mark> plain (inherits colour, no yellow background) */
.cpl-acc mark{background:transparent;color:inherit;padding:0;}
.cpl-acc .lede{font-size:1.22rem;line-height:1.55;color:var(--cpl-ink);font-weight:500;max-width:62ch;}
.cpl-acc .sub{font-size:1.08rem;color:var(--cpl-body);max-width:64ch;}

/* sections / bands */
.cpl-acc .sect{padding:50px 0;}
.cpl-acc .band--tint{background:var(--cpl-tint);border-top:1px solid var(--cpl-line);border-bottom:1px solid var(--cpl-line);}

/* tick lists (neon-green check, non-text accent) */
.cpl-acc ul.ticks{list-style:none;margin:.6rem 0 0;padding:0;}
.cpl-acc ul.ticks li{position:relative;padding:0 0 .85rem 1.9rem;line-height:1.55;}
.cpl-acc ul.ticks li:last-child{padding-bottom:0;}
.cpl-acc ul.ticks li::before{content:"";position:absolute;left:2px;top:.4em;width:13px;height:7px;
  border-left:3px solid var(--cpl-green);border-bottom:3px solid var(--cpl-green);transform:rotate(-45deg);}
.cpl-acc ul.ticks li strong{color:var(--cpl-ink);}

/* two-column feature layout */
.cpl-acc .cols{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:1.4rem;}

/* travel cards */
.cpl-acc .travel-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:1.5rem;}
.cpl-acc .travel-grid article{background:#fff;border:1px solid var(--cpl-line);border-radius:16px;
  padding:24px 26px;box-shadow:0 6px 20px rgba(20,80,110,.05);}
.cpl-acc .travel-grid h3{margin-top:0;color:var(--cpl-blue);}

/* buttons */
.cpl-acc .btn{display:inline-flex;align-items:center;gap:8px;background:var(--cpl-blue);color:#fff;
  text-decoration:none;font-weight:700;padding:13px 24px;border-radius:999px;line-height:1.2;}
.cpl-acc .btn:hover{background:var(--cpl-blue-dark);}
.cpl-acc .btn--ghost{background:#fff;color:var(--cpl-blue);border:2px solid var(--cpl-blue);padding:11px 22px;}
.cpl-acc .btn--ghost:hover{background:var(--cpl-blue);color:#fff;}
.cpl-acc .btnrow{display:flex;flex-wrap:wrap;gap:14px;margin-top:1.1rem;}

/* FAQ — native <details> accordion (keyboard + screen-reader friendly) */
.cpl-acc .faq details{background:#fff;border:1px solid var(--cpl-line);border-radius:12px;margin:0 0 12px;}
.cpl-acc .faq summary{cursor:pointer;list-style:none;padding:16px 50px 16px 20px;
  font-weight:700;color:var(--cpl-ink);position:relative;}
.cpl-acc .faq summary::-webkit-details-marker{display:none;}
.cpl-acc .faq summary::after{content:"";position:absolute;right:22px;top:50%;width:9px;height:9px;
  border-right:3px solid var(--cpl-blue);border-bottom:3px solid var(--cpl-blue);
  transform:translateY(-70%) rotate(45deg);transition:transform .2s ease;}
.cpl-acc .faq details[open] summary::after{transform:translateY(-30%) rotate(225deg);}
.cpl-acc .faq details > p{margin:0;padding:2px 20px 18px;}

/* links + visible keyboard focus (accessibility) */
.cpl-acc a{color:var(--cpl-blue-dark);}
.cpl-acc a:hover{text-decoration:underline;}
.cpl-acc a:focus-visible,.cpl-acc summary:focus-visible{outline:3px solid var(--cpl-blue);outline-offset:2px;border-radius:4px;}

/* screen-reader-only helper text */
.cpl-acc .sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}

@media (max-width:760px){
  .cpl-acc .cols,.cpl-acc .travel-grid{grid-template-columns:1fr;gap:22px;}
  .cpl-acc .sect{padding:36px 0;}
  .cpl-acc .acc-split,.cpl-acc .acc-split.rev{grid-template-columns:1fr;gap:22px;}
  .cpl-acc .acc-photo{max-width:340px;margin:0 auto;}
}/* End custom CSS */