.button{
  display:inline-flex;min-height:43px;align-items:center;justify-content:center;
  padding:10px 25px;border:0;border-radius:var(--radius);
  font-weight:700;font-size:15px;line-height:1;text-transform:uppercase;
  cursor:pointer;transition:background-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast),filter var(--transition-fast)
}
.button--green{background:var(--color-lime);color:#fff;box-shadow:var(--shadow-soft)}
.button--block{width:100%}
.text-link{
  display:inline-flex;align-items:center;justify-content:center;
  font-weight:700;color:var(--color-lime);font-size:15px;
  text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;
  text-transform:uppercase;text-align:center;
  transition:color var(--transition-fast),text-decoration-thickness var(--transition-fast)
}
.download-button{
  display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:33px;
  padding:6px 12px;border-radius:var(--radius);background:var(--color-teal);color:#fff;
  font-size:13px;font-weight:500;cursor:pointer;
  transition:filter var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)
}
@media (hover:hover){
  .button--green:hover{background:var(--color-lime-hover);box-shadow:0 4px 16px rgba(0,49,40,.14);transform:translateY(-1px)}
  .text-link:hover{color:var(--color-primary);text-decoration-thickness:2px}
  .download-button:hover{filter:brightness(.94);box-shadow:0 4px 14px rgba(0,49,40,.16);transform:translateY(-1px)}
}
.button:active,.download-button:active{transform:translateY(0);filter:brightness(.92)}

/* Canonical light section-title modifier must survive Home's generic title rule. */
.section-title.section-title--light{color:#fff}

.panel-arrow{cursor:pointer;transition:filter var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}
@media (hover:hover){.panel-arrow:hover{filter:brightness(.96);box-shadow:0 3px 10px rgba(0,49,40,.12);transform:translateY(-1px)}}
.panel-arrow:active{transform:translateY(0);filter:brightness(.9)}
[data-section-title-reveal]{--section-title-reveal-duration:600ms;--section-title-reveal-steps:20;--section-title-reveal-clip-top:0;--section-title-reveal-clip-bottom:0}
[data-section-title-reveal="short"]{--section-title-reveal-duration:425ms;--section-title-reveal-steps:14}
[data-section-title-reveal="long"]{--section-title-reveal-duration:760ms;--section-title-reveal-steps:28}
[data-section-title-reveal="extra-long"]{--section-title-reveal-duration:850ms;--section-title-reveal-steps:32}
[data-section-title-reveal].is-section-title-reveal-ready{clip-path:inset(var(--section-title-reveal-clip-top) 100% var(--section-title-reveal-clip-bottom) 0)}
@media (prefers-reduced-motion:no-preference){[data-section-title-reveal].is-section-title-reveal-active{animation:sectionTitleClipReveal var(--section-title-reveal-duration) steps(var(--section-title-reveal-steps),end) both}}
@keyframes sectionTitleClipReveal{from{clip-path:inset(var(--section-title-reveal-clip-top) 100% var(--section-title-reveal-clip-bottom) 0)}to{clip-path:inset(var(--section-title-reveal-clip-top) 0 var(--section-title-reveal-clip-bottom) 0)}}
