/* Opt-in button styles. Add ONE class to the individual core/button block.
 * hd-btn-underline: underline + arrow; hd-btn-offset: green + offset outline.
 * Existing buttons without these classes retain their original design.
 */
.wp-block-button:is(.hd-btn-underline,.hd-btn-offset){max-width:100%;overflow:visible}
.wp-block-button:is(.hd-btn-underline,.hd-btn-offset) > .wp-block-button__link{
  --hd-btn-accent:var(--color_main,#005a49);
  --hd-btn-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 34 24'%3E%3Cpath d='M2 12H31M26 7L31 12L26 17' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  position:relative;isolation:isolate;box-sizing:border-box;display:flex;align-items:center;
  min-height:58px;min-width:min(280px,100%);max-width:100%;width:100%;
  padding:17px 84px 17px 22px;border:1px solid transparent;border-radius:0;
  font-size:14px;font-weight:600;line-height:1.6;letter-spacing:.02em;
  text-align:left;text-decoration:none;white-space:normal;overflow-wrap:anywhere;
  box-shadow:none;overflow:visible;opacity:1;
}
.wp-block-button:is(.hd-btn-underline,.hd-btn-offset) > .wp-block-button__link::before{
  content:"";position:absolute;inset:auto 22px auto auto;top:calc(50% - 12px);
  display:block;width:34px;height:24px;margin:0;border:0;background:currentColor;
  -webkit-mask:var(--hd-btn-arrow) center / contain no-repeat;
  mask:var(--hd-btn-arrow) center / contain no-repeat;
  transform:none;transition:transform .22s ease;pointer-events:none;
}
.wp-block-button.hd-btn-underline > .wp-block-button__link{
  padding:14px 70px 14px 0;min-height:56px;border:0;border-bottom:1px solid #15140f;
  background:transparent;color:#15140f;transition:color .2s,border-color .2s;
}
.wp-block-button.hd-btn-underline > .wp-block-button__link::before{right:0}
.wp-block-button.hd-btn-underline > .wp-block-button__link::after{content:none}
.wp-block-button.hd-btn-offset > .wp-block-button__link{
  border-color:var(--hd-btn-accent);border-radius:3px;background:var(--hd-btn-accent);color:#fff;
  transition:background-color .2s,border-color .2s;
}
.wp-block-button.hd-btn-offset > .wp-block-button__link::after{
  content:"";position:absolute;z-index:-2;inset:4px -6px -6px 4px;
  width:auto;height:auto; margin:0;background:none;opacity:1;
  border:0;border-right:1.5px solid var(--hd-btn-accent);border-bottom:1.5px solid var(--hd-btn-accent);
  border-bottom-right-radius:3px;transform:none;pointer-events:none;
}
.wp-block-button:is(.hd-btn-underline,.hd-btn-offset) > .wp-block-button__link:focus-visible{
  outline:3px solid var(--hd-btn-accent);outline-offset:9px;
}
@media(hover:hover){
  .wp-block-button.hd-btn-underline > .wp-block-button__link:hover{background:transparent;color:var(--hd-btn-accent);border-color:var(--hd-btn-accent);opacity:1}
  .wp-block-button.hd-btn-underline > .wp-block-button__link:hover::before{transform:translateX(5px)}
  .wp-block-button.hd-btn-offset > .wp-block-button__link:hover{background:color-mix(in srgb,var(--hd-btn-accent) 78%,black);color:#fff;border-color:color-mix(in srgb,var(--hd-btn-accent) 78%,black);opacity:1}
}
@media(prefers-reduced-motion:reduce){
  .wp-block-button:is(.hd-btn-underline,.hd-btn-offset) > .wp-block-button__link,
  .wp-block-button:is(.hd-btn-underline,.hd-btn-offset) > .wp-block-button__link::before,
  .wp-block-button:is(.hd-btn-underline,.hd-btn-offset) > .wp-block-button__link::after{transition:none;transform:none}
}
