/* CARDO Core: hero slider, forms and notices. Buttons and colours come from the CARDO theme. */
:root{--green:#15543A;--green-2:#0D2F21;--green-3:#071B12;--ink:#0D3B29;--gold:#F3BC2E;--line:#D5DCD6;--f-display:"Anton","Bebas Neue","League Gothic","Avenir Next Condensed","Impact","Haettenschweiler","Arial Narrow Bold","sans-serif-condensed",sans-serif}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}

/* Hero */
.cd-hero{position:relative;background:var(--green-3);color:#fff;overflow:hidden}
.cd-hero-track{position:relative;height:clamp(540px,84vh,800px)}
.cd-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .9s ease,visibility .9s}
.cd-slide.is-active{opacity:1;visibility:visible;z-index:1}
.cd-hero:not(.is-js) .cd-slide:first-child{opacity:1;visibility:visible}
.cd-slide picture,.cd-slide img{display:block;width:100%;height:100%}
.cd-slide img{object-fit:cover}
.cd-hero.is-js .cd-slide.is-active img{animation:cdZoom 10s ease-out both}
@keyframes cdZoom{from{transform:scale(1)}to{transform:scale(1.06)}}
.cd-slide::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,27,18,.9) 0%,rgba(7,27,18,.62) 45%,rgba(7,27,18,.12) 100%),linear-gradient(0deg,rgba(7,27,18,.5),rgba(7,27,18,0) 40%);pointer-events:none}
.cd-slide-copy{position:absolute;inset:0;z-index:2;display:flex;align-items:center}
.cd-slide-copy .cx-wrap>*{max-width:48rem}
.cd-slide-copy h2{font-family:var(--f-display);text-transform:uppercase;font-weight:400;font-size:clamp(2.9rem,7.6vw,6.2rem);line-height:.95;margin:0 0 1.1rem;color:#fff;letter-spacing:.005em}
.cd-slide-copy p{font-size:clamp(1rem,1.5vw,1.15rem);line-height:1.55;margin:0 0 1.6rem;color:#EAF1EC;max-width:36rem}
.cd-slide-copy .cx-eyebrow{color:var(--gold)}
.cd-hero-ui{position:absolute;left:0;right:0;bottom:1.6rem;z-index:3;display:flex;align-items:center;gap:1rem;max-width:1180px;margin:0 auto;padding:0 clamp(1.1rem,4vw,2.25rem)}
.cd-dots{display:flex;gap:.2rem}
.cd-dot{width:48px;height:32px;border:0;background:transparent;padding:0;cursor:pointer;position:relative}
.cd-dot::before{content:"";position:absolute;left:4px;right:4px;top:50%;height:4px;margin-top:-2px;background:rgba(255,255,255,.4)}
.cd-dot.is-active::before{background:var(--gold)}
.cd-hero-btn{width:46px;height:46px;border-radius:50%;border:1.5px solid rgba(255,255,255,.55);background:rgba(7,27,18,.5);color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}
.cd-hero-btn:hover{background:#fff;color:var(--green-3)}
.cd-hero-btn .i-play{display:none}.cd-hero-btn.is-paused .i-play{display:block}.cd-hero-btn.is-paused .i-pause{display:none}
.cd-pause{width:36px;height:36px}
.cd-prev,.cd-next{position:absolute;top:50%;margin-top:-23px;z-index:3}
.cd-prev{left:1rem}.cd-next{right:1rem}
.cd-scroll{position:absolute;right:1.2rem;bottom:7rem;z-index:3;writing-mode:vertical-rl;text-transform:uppercase;letter-spacing:.16em;font-size:.62rem;font-weight:800;color:#fff;text-decoration:none;opacity:.85}
.cd-hero a:focus-visible,.cd-hero button:focus-visible{outline:3px solid #FFD54A;outline-offset:2px}
@media (max-width:760px){
  .cd-slide::after{background:linear-gradient(0deg,rgba(7,27,18,.92) 0%,rgba(7,27,18,.6) 55%,rgba(7,27,18,.2) 100%)}
  .cd-slide-copy{align-items:flex-end;padding-bottom:5.5rem}
  .cd-prev,.cd-next,.cd-scroll{display:none}
}
@media (prefers-reduced-motion:reduce){.cd-slide{transition:none}.cd-hero.is-js .cd-slide.is-active img{animation:none}}

/* Forms */
.cd-form{max-width:640px}
.cd-field{margin:0 0 1.1rem}
.cd-field label{display:block;font-weight:800;font-size:.78rem;margin-bottom:.35rem;color:var(--ink)}
.cd-form input[type=text],.cd-form input[type=email],.cd-form input[type=number],.cd-form select,.cd-form textarea{width:100%;box-sizing:border-box;min-height:48px;padding:.65rem .85rem;border:1.5px solid #B9C4BC;border-radius:0;background:#fff;color:var(--ink);font:inherit}
.cd-form textarea{min-height:9rem}
.cd-req{color:#B3261E}
.cd-check label{display:flex;gap:.6rem;align-items:flex-start;font-weight:400;line-height:1.45;font-size:.9rem}
.cd-check input{width:22px;height:22px;margin-top:.1rem;flex:none;accent-color:var(--green)}
.cd-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.cd-notice{padding:1rem 1.25rem;margin:0 0 1.25rem;border:2px solid;font-weight:600}
.cd-notice-success{background:#E9F6EC;border-color:#1E7F2B;color:#0F3D18}
.cd-notice-error{background:#FDECEA;border-color:#B3261E;color:#5F130E}
.cd-formwrap{max-width:640px}
.cd-donate-off{background:#F6F3E8;border:1px solid #E2E6E1;padding:1.5rem}
.cx-nl-form .cd-notice{color:#0F3D18}
