/* Figma 11092:1971: shared resting/hover pairs. Keep geometry unchanged. */
.site-header .brand,.site-footer .brand,.header-phone{transition:opacity .25s ease-out}
.desktop-nav a,.footer-body nav a{transition:color .25s ease-out}
.header-cta,.contact-card,.pill,.faq-page-tabs>a,.route-cards>a{transition:background-color .25s ease-out,color .25s ease-out,border-color .25s ease-out,box-shadow .25s ease-out}
.site-footer .back-top{transition:transform .25s ease-out}
.contact-card.phone{--contact-hover:#9e6a3b}
.contact-card.mail{--contact-hover:#ffbb00}
.contact-card.line{--contact-hover:#36a830}
.consultation .contact-card.line,.inherit-contact .contact-card.line{--contact-hover:#afe370}
/* Native circle/arrow artwork, including the inverse pairs from Figma. */
body .pill>span[aria-hidden]{font-size:0;background:#fff url('../images/95cf1.svg') center/contain no-repeat}
body .pill.brown>span[aria-hidden]{background-image:url('../images/42d8a.svg')}
body .reasons-home .pill>span[aria-hidden],body .pill.secondary>span[aria-hidden]{background:#36a830 url('../images/0b1e9.svg') center/contain no-repeat}
body .route-cards>a>.route-arrow[aria-hidden]{font-size:0;line-height:0;border:0;background:transparent url('../images/78fda.svg') center/contain no-repeat}
body .route-cards>a:nth-child(2)>.route-arrow[aria-hidden]{background-image:url('../images/5f528.svg')}
/* Reference: kupuna-co.com banner character imageMove, 2s ease-in-out. */
@keyframes tto-route-bounce{
  0%,20%,40%,100%{transform:translateY(0)}
  10%,30%{transform:translateY(-10px)}
}

/* Keyboard focus receives the same visual feedback as pointer hover. */
body .site-header .brand:focus-visible,body .site-footer .brand:focus-visible,body .header-phone:focus-visible{opacity:.7}
body .desktop-nav a:focus-visible,body .footer-body nav a:focus-visible{color:#36a830}
body .header-cta:focus-visible{background:#e2f0d1;color:#36a830}
body .header-cta:focus-visible .header-mail-icon{content:url('../images/cb050.svg');filter:none}
body .contact-cards .contact-card:focus-visible{background:var(--contact-hover);color:#fff;border-color:#fff}
body .contact-card.phone:focus-visible>img{content:url('../images/74839.svg')}
body .contact-card.mail:focus-visible>img{content:url('../images/a77df.svg')}
body .contact-card.line:focus-visible>img{content:url('../images/c884f.svg')}
body .consultation .contact-card.line:focus-visible>img,body .inherit-contact .contact-card.line:focus-visible>img{content:url('../images/640df.svg')}
body .pill:focus-visible{background:#fff;color:#36a830;border-color:#36a830}
body .pill:focus-visible>span{background:#36a830 url('../images/0b1e9.svg') center/contain no-repeat}
body .pill.brown:focus-visible{color:#9e6a3b;border-color:#9e6a3b}
body .pill.brown:focus-visible>span{background:#9e6a3b url('../images/98fec.svg') center/contain no-repeat}
body .reasons-home .pill:focus-visible,body .pill.secondary:focus-visible{background:#36a830;color:#fff}
body .reasons-home .pill:focus-visible>span,body .pill.secondary:focus-visible>span{background:#fff url('../images/95cf1.svg') center/contain no-repeat}
body .faq-page-tabs>a:focus-visible{background:#fff;color:#36a830;box-shadow:inset 0 0 0 3px #36a830}
body .faq-page-tabs>a:focus-visible>.tab-arrow>img{content:url('../images/550bb.svg')}
body .route-cards>a:focus-visible{background:#fff;color:#36a830;border-color:#36a830}
body .route-cards>a:nth-child(2):focus-visible{color:#9e6a3b;border-color:#9e6a3b}
body .route-cards>a:focus-visible>.route-arrow[aria-hidden]{background-image:url('../images/6e6be.svg')}
body .route-cards>a:nth-child(2):focus-visible>.route-arrow[aria-hidden]{background-image:url('../images/aa303.svg')}
body .route-cards>a:focus-visible>.route-art{animation:tto-route-bounce 2s ease-in-out infinite}
body .site-footer .back-top:focus-visible{transform:translateY(-10px)}

/* Touch devices keep their resting state; hover is limited to a mouse/trackpad. */
@media(hover:hover) and (pointer:fine){
  body .site-header .brand:hover,body .site-footer .brand:hover,body .header-phone:hover{opacity:.7}
  body .desktop-nav a:hover,body .footer-body nav a:hover{color:#36a830}
  body .header-cta:hover{background:#e2f0d1;color:#36a830}
  body .header-cta:hover .header-mail-icon{content:url('../images/cb050.svg');filter:none}
  body .contact-cards .contact-card:hover{background:var(--contact-hover);color:#fff;border-color:#fff}
  body .contact-card.phone:hover>img{content:url('../images/74839.svg')}
  body .contact-card.mail:hover>img{content:url('../images/a77df.svg')}
  body .contact-card.line:hover>img{content:url('../images/c884f.svg')}
  body .consultation .contact-card.line:hover>img,body .inherit-contact .contact-card.line:hover>img{content:url('../images/640df.svg')}
  body .pill:hover{background:#fff;color:#36a830;border-color:#36a830}
  body .pill:hover>span{background:#36a830 url('../images/0b1e9.svg') center/contain no-repeat}
  body .pill.brown:hover{color:#9e6a3b;border-color:#9e6a3b}
  body .pill.brown:hover>span{background:#9e6a3b url('../images/98fec.svg') center/contain no-repeat}
  body .reasons-home .pill:hover,body .pill.secondary:hover{background:#36a830;color:#fff}
  body .reasons-home .pill:hover>span,body .pill.secondary:hover>span{background:#fff url('../images/95cf1.svg') center/contain no-repeat}
  body .faq-page-tabs>a:hover{background:#fff;color:#36a830;box-shadow:inset 0 0 0 3px #36a830}
  body .faq-page-tabs>a:hover>.tab-arrow>img{content:url('../images/550bb.svg')}
  body .route-cards>a:hover{background:#fff;color:#36a830;border-color:#36a830}
  body .route-cards>a:nth-child(2):hover{color:#9e6a3b;border-color:#9e6a3b}
  body .route-cards>a:hover>.route-arrow[aria-hidden]{background-image:url('../images/6e6be.svg')}
  body .route-cards>a:nth-child(2):hover>.route-arrow[aria-hidden]{background-image:url('../images/aa303.svg')}
  body .route-cards>a:hover>.route-art{animation:tto-route-bounce 2s ease-in-out infinite}
  body .site-footer .back-top:hover{transform:translateY(-10px)}
}
@media(prefers-reduced-motion:reduce){
  body .site-header .brand,body .site-footer .brand,body .header-phone,body .desktop-nav a,body .footer-body nav a,body .header-cta,body .contact-card,body .pill,body .faq-page-tabs>a,body .route-cards>a,body .site-footer .back-top{transition:none}
  body .route-cards>a>.route-art{animation:none!important}
  body .site-footer .back-top:hover,body .site-footer .back-top:focus-visible{transform:none}
}
