/* One restrained material system: pearl faces, emerald glass and cut-light edges.
   Decorative layers never change control geometry or intercept interaction. */
:root{
  --ui-ease:cubic-bezier(.2,.75,.25,1);
  --ui-edge:rgba(209,237,219,.54);
  --ui-emerald-deep:#003b29;
  --ui-focus:#237653;
}

/* Action buttons are defined in buttons.css. */

/* Film controls feel like the same clear, circular cut of emerald material. */
.story-play{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border:1px solid #effff3c9;
  background:linear-gradient(145deg,#ffffff38 0%,#ffffff0a 42%,#003d2bc7 100%);
  -webkit-backdrop-filter:blur(9px) saturate(120%);
  backdrop-filter:blur(9px) saturate(120%);
  box-shadow:inset 0 1px 1px #ffffffa1,inset 0 -2px 3px #00312673,0 5px 18px -5px #001d2273;
  transition:background-color 180ms ease,border-color 180ms ease,box-shadow 220ms var(--ui-ease),transform 180ms var(--ui-ease);
}
.story-play::before{
  content:'';
  position:absolute;
  inset:4px;
  border-radius:50%;
  border:1px solid #ffffff30;
  pointer-events:none;
}
.story-play::after{
  content:'';
  position:absolute;
  z-index:-1;
  inset:-50%;
  background:linear-gradient(120deg,transparent 37%,#ffffff08 43%,#ffffff73 49%,#ffffff1a 53%,transparent 59%);
  transform:translateX(-72%);
  transition:transform 650ms var(--ui-ease);
  pointer-events:none;
}
.story-play svg{filter:drop-shadow(0 1px 2px #002e2e80)}
.story-watch:not(:disabled):hover .story-play,.story-watch:not(:disabled):focus-visible .story-play{
  background:linear-gradient(145deg,#ffffff52 0%,#ffffff12 42%,#003d2be6 100%);
  border-color:#fff;
  box-shadow:inset 0 1px 1px #ffffffbf,inset 0 -2px 3px #00312673,0 6px 22px -5px #001d228c;
  transform:scale(1.035);
}
.story-watch:not(:disabled):hover .story-play::after,.story-watch:not(:disabled):focus-visible .story-play::after{transform:translateX(72%)}
.story-watch:not(:disabled):active .story-play{transform:scale(.975);transition-duration:80ms}
.story-watch:focus-visible{outline:2px solid #e5ffed;outline-offset:6px}
.story-watch:disabled .story-play{transform:none}
.story-watch:disabled .story-play::after{display:none}
.story-close{
  border-radius:10px;
  border-color:#739982;
  background:linear-gradient(145deg,#ffffff12,#ffffff03);
  box-shadow:inset 0 1px 0 #ffffff29;
  transition:background-color 180ms ease,border-color 180ms ease;
}
.story-close:hover{background:#244e3c;border-color:#b9d7c0}

/* FAQ rows keep their original structure; the light follows the chosen row. */
.faq-list details{border-color:#bdd0bf}
.faq-list details:last-child{border-bottom-color:#bdd0bf}
.faq-list summary{position:relative;isolation:isolate}
.faq-list summary::before{
  content:'';
  position:absolute;
  z-index:-1;
  inset:3px -10px;
  border-radius:10px;
  background:linear-gradient(105deg,#ffffff52,#ffffff14 65%,#d1e1d142);
  box-shadow:inset 0 1px 0 #ffffff52,inset 0 -1px 0 #a3c1ac29;
  opacity:0;
  transition:opacity 180ms ease;
  pointer-events:none;
}
.faq-list summary:hover::before,.faq-list summary:focus-visible::before,.faq-list details[open]>summary::before{opacity:1}
.faq-list summary:focus-visible{outline:2px solid var(--ui-focus);outline-offset:4px;border-radius:7px}
.faq-list summary>span[aria-hidden="true"]{
  position:relative;
  isolation:isolate;
  color:#245d40;
  transition:transform 240ms var(--ui-ease),color 180ms ease;
}
.faq-list summary>span[aria-hidden="true"]::before{
  content:'';
  position:absolute;
  z-index:-1;
  width:29px;
  height:29px;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  border:1px solid #abc6b169;
  border-radius:50%;
  background:linear-gradient(145deg,#ffffffb8,#e3edde73);
  box-shadow:inset 0 1px 0 #ffffffcc,0 2px 4px -3px #164c324d;
  pointer-events:none;
}
.faq-list details[open]>summary>span[aria-hidden="true"]{color:#003f2b}
.faq-list details[open]>:not(summary){animation:ui-answer-appear 180ms ease-out both}
@keyframes ui-answer-appear{from{opacity:.55}to{opacity:1}}

/* The form remains opaque; only its edge and active controls catch the light. */
#enter .form-card{
  border-radius:16px;
  border-color:#bfd3c2;
  background:#fff;
  box-shadow:inset 0 1px 0 #fff,0 2px 5px -3px #143f322b,0 24px 52px -27px #123c343b;
}
#enter .form-card:focus-within{
  border-color:#86a991;
  box-shadow:inset 0 1px 0 #fff,0 2px 5px -3px #143f3238,0 24px 52px -27px #123c3447;
}
#enter .entry-tabs{
  border-radius:12px;
  border-color:#c4d8c8;
  background:linear-gradient(160deg,#f4f8f0,#e4eee1);
  box-shadow:inset 0 1px 2px #123c3312,0 1px 0 #fff;
}
#enter .entry-tab{border-radius:8px}
#enter .entry-tab:not(.is-active):not(:disabled):hover{background:#ffffff8c}
#enter .entry-tab:focus-visible{outline:2px solid var(--ui-focus);outline-offset:3px}
#enter .entry-tab.is-active:focus-visible{outline-color:#397957}
#enter .entry-tab:active:not(:disabled){box-shadow:inset 0 2px 3px #003c2526}
@supports selector(:has(*)){
  #enter .entry-tabs::before{
    border-radius:8px;
    background:linear-gradient(150deg,#28684b 0%,#075037 40%,#003f2b 85%);
    box-shadow:inset 0 1px 0 #ccecd552,inset 0 -1px 0 #00201666,0 2px 4px #003f2b24;
    transition:transform 300ms cubic-bezier(.18,.82,.22,1);
  }
}
#enter .field input,#enter .field select,#enter .field textarea{
  border-radius:8px;
  border-color:#b5cdbb;
  background:#f8fbf6;
  box-shadow:inset 0 1px 2px #143f3208;
  transition:border-color 150ms ease,background-color 150ms ease,box-shadow 180ms ease;
}
#enter .field input:not(:disabled):hover,#enter .field select:not(:disabled):hover,#enter .field textarea:not(:disabled):hover{
  border-color:#759c81;
  background:#fcfefb;
}
#enter .field input:focus,#enter .field select:focus,#enter .field textarea:focus{
  border-color:#2e6f4d;
  background:#fff;
  box-shadow:0 0 0 3px #4f8a6512,inset 0 1px 2px #143f3205;
}
#enter .field input:focus-visible,#enter .field select:focus-visible,#enter .field textarea:focus-visible,
#enter .consent input:focus-visible,#enter .form-submit:focus-visible,#enter .share-button:focus-visible{
  outline:2px solid var(--ui-focus);
  outline-offset:3px;
}
#enter .campaign-note{border-radius:8px;box-shadow:inset 0 1px 0 #ffffffa6}
#enter .consent a{text-decoration-thickness:1px;text-underline-offset:3px}
#enter .consent a:hover{text-decoration:underline}

/* Navigation gets a precise, finite underline rather than animated decoration. */
.site-header{box-shadow:inset 0 -1px 0 #b6d5bf24}
.desktop-link,.site-footer .footer-nav a{
  background-image:linear-gradient(90deg,#d8f6de,#8abb98);
  background-repeat:no-repeat;
  background-position:0 calc(100% - 7px);
  background-size:0 1px;
  transition:color 160ms ease,background-size 220ms var(--ui-ease);
}
.desktop-link:hover,.desktop-link:focus-visible,.site-footer .footer-nav a:hover,.site-footer .footer-nav a:focus-visible{
  color:#fff;
  background-size:100% 1px;
  text-decoration:none;
}
.site-footer.campaign-footer{box-shadow:inset 0 1px 0 #a9c9b047}
.footer-bottom{border-top-color:#739b815e}

@media(prefers-reduced-motion:reduce){
  .button,.header-cta,.button>span[aria-hidden="true"],.header-cta>span[aria-hidden="true"],
  .story-play,.story-close,.faq-list summary::before,.faq-list summary>span[aria-hidden="true"],
  #enter .form-card,#enter .entry-tabs::before,#enter .entry-tab,#enter .field input,
  #enter .field select,#enter .field textarea,#enter .form-submit,#enter .share-button,
  .desktop-link,.site-footer .footer-nav a{transition:none}
  .button::after,.header-cta::after,#enter .form-submit::after,#enter .share-button::after,.story-play::after{display:none}
  .button:active,.header-cta:active,#enter .form-submit:not(:disabled):active,#enter .share-button:not(:disabled):active,
  .button:hover>span[aria-hidden="true"],.button:focus-visible>span[aria-hidden="true"],
  .header-cta:hover>span[aria-hidden="true"],.header-cta:focus-visible>span[aria-hidden="true"]{transform:none}
  .story-watch:not(:disabled):hover .story-play,.story-watch:not(:disabled):focus-visible .story-play,
  .story-watch:not(:disabled):active .story-play{transform:none}
  .faq-list details[open]>:not(summary){animation:none}
}

@media(forced-colors:active){
  .button,.header-cta,.story-play,#enter .entry-tabs,#enter .entry-tab,#enter .field input,
  #enter .field select,#enter .field textarea,#enter .form-submit,#enter .share-button{box-shadow:none;border:1px solid ButtonText}
  .button::after,.header-cta::after,.story-play::before,.story-play::after,
  .faq-list summary::before,.faq-list summary>span[aria-hidden="true"]::before{display:none}
  #enter .entry-tab.is-active{background:Highlight;color:HighlightText;forced-color-adjust:none}
  .desktop-link:hover,.site-footer .footer-nav a:hover{text-decoration:underline}
}
