/* Brand contrast guard: prevents dark text from leaking onto brown buttons/cards. */
.button-primary,.button-accent,.relationship-button.primary,.work-money-button.primary,.work-button.primary,.fortune-button.primary,.saju-button.primary,.ohaeng-button.primary,.result-button.primary,.compatibility-button.primary,.admin-dark,.admin-pass-button,[class*="button"][class~="primary"]{background:#543a3a!important;border-color:#543a3a!important;color:#fff!important}
.button-primary *, .button-accent *, .relationship-button.primary *, .work-money-button.primary *, .work-button.primary *, .fortune-button.primary *, .saju-button.primary *, .ohaeng-button.primary *, .result-button.primary *, .compatibility-button.primary *{color:#fff!important}
.button-ghost,.relationship-button.secondary,.work-money-button.secondary,.work-button.secondary,.fortune-button.secondary,.saju-button.secondary,.ohaeng-button.secondary,.result-button.secondary,.compatibility-button.secondary{background:#fff!important;color:#543a3a!important;border-color:#d8cbc6!important}
.choice-chip input:checked+span,.focus-card input:checked+span,.relationship-status-card input:checked+span,.zodiac-chip input:checked+span{background:#543a3a!important;border-color:#543a3a!important;color:#fff!important}
.choice-chip input:checked+span *,.focus-card input:checked+span *,.relationship-status-card input:checked+span *,.zodiac-chip input:checked+span *{color:#fff!important}
button:disabled,.button:disabled{opacity:.55;cursor:not-allowed}

/* Expanded service navigation: roomier desktop rhythm */
@media(min-width:1351px){
  .desktop-nav{gap:25px!important}
  .desktop-nav a{font-size:14px!important;line-height:22px!important;font-weight:500!important;white-space:nowrap!important}
}
@media(min-width:1280px) and (max-width:1350px){
  .desktop-nav{gap:17px!important}
  .desktop-nav a{font-size:13px!important;line-height:21px!important;white-space:nowrap!important}
  .header-inner{column-gap:22px!important}
}
@media(max-width:1279px){.desktop-nav{display:none!important}.menu-button{display:inline-flex!important}}
@media(max-width:767px){.button,.relationship-button,.work-money-button,.work-button,.fortune-button,.saju-button,.ohaeng-button,.result-button,.compatibility-button{min-height:46px}.form-submit-area .button-primary{width:100%!important}}

/* Homepage runtime contrast lock. */
html body main#main.home-main .home-image-hero .home-image-hero-inner,
html body main#main.home-main .home-image-hero .home-image-hero-copy,
html body main#main.home-main .home-services .service-visual-card>div{
  position:relative!important;
  z-index:5!important;
  opacity:1!important;
  filter:none!important;
  mix-blend-mode:normal!important;
}
html body main#main.home-main .home-image-hero .home-image-hero-copy .eyebrow{
  color:rgba(255,255,255,.82)!important;
  -webkit-text-fill-color:rgba(255,255,255,.82)!important;
  font-size:10px!important;
  line-height:15px!important;
}
html body main#main.home-main .home-image-hero .home-image-hero-copy h1{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:38px!important;
  line-height:48px!important;
  font-weight:700!important;
}
html body main#main.home-main .home-image-hero .home-image-hero-copy>p:not(.eyebrow){
  color:rgba(255,255,255,.92)!important;
  -webkit-text-fill-color:rgba(255,255,255,.92)!important;
  font-size:14px!important;
  line-height:23px!important;
}
html body main#main.home-main .home-image-hero .home-image-hero-actions .button.secondary{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
html body main#main.home-main .home-services .service-visual-card,
html body main#main.home-main .home-services .service-visual-card h3{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
html body main#main.home-main .home-services .service-visual-card h3{
  font-size:19px!important;
  line-height:27px!important;
  font-weight:700!important;
}
html body main#main.home-main .home-services .service-visual-card p{
  color:rgba(255,255,255,.92)!important;
  -webkit-text-fill-color:rgba(255,255,255,.92)!important;
  font-size:12px!important;
  line-height:19px!important;
}
html body main#main.home-main .home-services .service-visual-card .visual-index{display:none!important}

/* Custom image hero runtime lock.
   Keep each page's own layout intact. Only align typography/height with the standard sub-hero. */
html body .talisman-image-hero .talisman-image-hero-copy,
html body .guide-image-hero .guide-image-hero-copy,
html body .quick-hero .quick-hero-copy,
html body .sub-hero>.container{
  position:relative!important;
  z-index:5!important;
  opacity:1!important;
  filter:none!important;
  mix-blend-mode:normal!important;
}

/* Standardize only custom hero dimensions; never alter .sub-hero structure here. */
html body .talisman-image-hero,
html body .guide-image-hero,
html body .quick-hero{
  min-height:390px!important;
}
html body .talisman-image-hero .talisman-image-hero-inner,
html body .guide-image-hero .guide-image-hero-inner,
html body .quick-hero .quick-hero-inner{
  min-height:390px!important;
  padding:48px!important;
}

html body .talisman-image-hero .talisman-image-hero-copy .eyebrow,
html body .guide-image-hero .guide-image-hero-copy .eyebrow,
html body .quick-hero .quick-hero-copy .eyebrow,
html body .sub-hero .eyebrow{
  color:rgba(255,255,255,.78)!important;
  -webkit-text-fill-color:rgba(255,255,255,.78)!important;
}
html body .talisman-image-hero .talisman-image-hero-copy .eyebrow,
html body .guide-image-hero .guide-image-hero-copy .eyebrow,
html body .quick-hero .quick-hero-copy .eyebrow{
  font-size:10px!important;
  line-height:15px!important;
  margin-bottom:8px!important;
}
html body .talisman-image-hero .talisman-image-hero-copy h1,
html body .guide-image-hero .guide-image-hero-copy h1,
html body .quick-hero .quick-hero-copy h1,
html body .sub-hero h1{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-weight:700!important;
}
html body .talisman-image-hero .talisman-image-hero-copy h1,
html body .guide-image-hero .guide-image-hero-copy h1,
html body .quick-hero .quick-hero-copy h1{
  font-size:34px!important;
  line-height:44px!important;
  letter-spacing:-.02em!important;
  margin-bottom:14px!important;
}
html body .talisman-image-hero .talisman-image-hero-copy>p:not(.eyebrow),
html body .guide-image-hero .guide-image-hero-copy>p:not(.eyebrow),
html body .quick-hero .quick-hero-copy>p:not(.eyebrow),
html body .sub-hero .sub-lead{
  color:rgba(255,255,255,.84)!important;
  -webkit-text-fill-color:rgba(255,255,255,.84)!important;
}
html body .talisman-image-hero .talisman-image-hero-copy>p:not(.eyebrow),
html body .guide-image-hero .guide-image-hero-copy>p:not(.eyebrow),
html body .quick-hero .quick-hero-copy>p:not(.eyebrow){
  font-size:14px!important;
  line-height:23px!important;
}
html body .talisman-image-hero .button,
html body .guide-image-hero .button{
  background:#fff!important;
  border-color:#fff!important;
  color:#543a3a!important;
  -webkit-text-fill-color:#543a3a!important;
}
@media(max-width:767px){
  html body main#main.home-main .home-image-hero .home-image-hero-copy h1{font-size:30px!important;line-height:39px!important}
  html body .talisman-image-hero,
  html body .guide-image-hero,
  html body .quick-hero{min-height:320px!important}
  html body .talisman-image-hero .talisman-image-hero-inner,
  html body .guide-image-hero .guide-image-hero-inner,
  html body .quick-hero .quick-hero-inner{min-height:320px!important;padding:28px 22px!important}
  html body .talisman-image-hero .talisman-image-hero-copy h1,
  html body .quick-hero .quick-hero-copy h1,
  html body .guide-image-hero .guide-image-hero-copy h1{font-size:29px!important;line-height:38px!important}
  html body .talisman-image-hero .talisman-image-hero-copy>p:not(.eyebrow),
  html body .guide-image-hero .guide-image-hero-copy>p:not(.eyebrow),
  html body .quick-hero .quick-hero-copy>p:not(.eyebrow){font-size:13px!important;line-height:21px!important}
}
