/*
Theme Name: People Ecology TV
Theme URI: https://peopleecology.com/
Description: People Ecology TV用 yStandard子テーマ
Author: i.d.c.m.
Template: ystandard
Version: 0.1.0
Text Domain: peopleecology
*/




.dy-header {
  position: relative;
  z-index: 1000;
  width: 100%;
  background: #080808 !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}



.dy-header__inner {
  display: flex !important;
  align-items: center !important;
  width: min(calc(100% - 48px), 1400px);
  max-width: 1400px;
  min-height: 82px;
  margin: 0 auto;
  padding: 8px 0;
}



.dy-header__logo {
  flex: 0 0 auto;
  margin-right: 45px;
}

.dy-header__logo a {
  display: flex;
  align-items: center;
  text-decoration: none !important;
}

.dy-header__logo img {
  display: block !important;
  width: auto !important;
  height: 64px !important;
  max-width: 150px !important;
  object-fit: contain;
}



.dy-header__nav {
  flex: 1 1 auto;
  min-width: 0;
}

.dy-header__nav-list {
  display: flex !important;
  align-items: center;
  gap: 28px;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.dy-header__nav-list li {
  flex: 0 0 auto;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.dy-header__nav-list li::before,
.dy-header__nav-list li::after {
  display: none !important;
  content: none !important;
}

.dy-header__nav-list a {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 8px 0;
  color: #fff !important;
  text-decoration: none !important;
  white-space: nowrap;
  transition: opacity 0.2s ease;
}

.dy-header__nav-list a:hover {
  color: #fff !important;
  opacity: 0.75;
}



.dy-header__nav-list a::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 2px;
  background: #e50914;
  content: "";
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.2s ease;
}

.dy-header__nav-list a:hover::after {
  transform: scaleX(1);
}



.dy-header__nav-ja {
  display: block;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.03em;
}



.dy-header__nav-en {
  display: block;
  margin-top: 3px;
  color: rgba(255, 255, 255, 0.5);
  font-size: 9px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.06em;
}



.dy-header__actions {
  display: flex !important;
  flex: 0 0 auto;
  align-items: center;
  gap: 10px;
  margin-left: 35px;
}

.dy-header__login,
.dy-header__signup {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-width: 100px;
  min-height: 46px;
  padding: 7px 16px;
  border-radius: 5px;
  text-decoration: none !important;
  white-space: nowrap;
  transition:
    background-color 0.2s ease,
    border-color 0.2s ease,
    transform 0.2s ease;
}



.dy-header__login {
  color: #fff !important;
  border: 1px solid rgba(255, 255, 255, 0.35);
  background: transparent;
}

.dy-header__login:hover {
  color: #fff !important;
  border-color: rgba(255, 255, 255, 0.8);
  background: rgba(255, 255, 255, 0.07);
}



.dy-header__signup {
  color: #fff !important;
  border: 1px solid #e50914;
  background: #e50914;
}

.dy-header__signup:hover {
  color: #fff !important;
  border-color: #f31b25;
  background: #f31b25;
  transform: translateY(-1px);
}



.dy-header__action-ja {
  display: block;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.25;
}



.dy-header__action-en {
  display: block;
  margin-top: 3px;
  font-size: 8px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.06em;
  opacity: 0.6;
}



.dy-header__menu-button {
  display: none !important;
  flex: 0 0 auto;
  width: 44px;
  height: 44px;
  margin: 0;
  padding: 9px;
  border: 0;
  border-radius: 5px;
  background: transparent !important;
  box-shadow: none !important;
  cursor: pointer;
}

.dy-header__menu-button span {
  display: block;
  width: 100%;
  height: 2px;
  margin: 6px 0;
  background: #fff;
  transition:
    transform 0.25s ease,
    opacity 0.25s ease;
}



.dy-header__mobile-menu {
  display: none;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  background: #080808;
}

.dy-header__mobile-nav {
  width: min(calc(100% - 32px), 600px);
  margin: 0 auto;
  padding: 12px 0 24px;
}

.dy-header__mobile-nav > a {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  padding: 15px 4px;
  color: #fff !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  text-decoration: none !important;
}

.dy-header__mobile-nav > a span {
  font-size: 14px;
  font-weight: 700;
}

.dy-header__mobile-nav > a small {
  color: rgba(255, 255, 255, 0.45);
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.07em;
}



.dy-header__mobile-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 22px;
}

.dy-header__mobile-login,
.dy-header__mobile-signup {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 54px;
  padding: 8px 10px;
  border-radius: 5px;
  font-size: 13px;
  font-weight: 700;
  text-align: center;
  text-decoration: none !important;
}

.dy-header__mobile-login {
  color: #fff !important;
  border: 1px solid rgba(255, 255, 255, 0.35);
  background: transparent;
}

.dy-header__mobile-signup {
  color: #fff !important;
  border: 1px solid #e50914;
  background: #e50914;
}

.dy-header__mobile-actions small {
  display: block;
  margin-top: 3px;
  font-size: 8px;
  font-weight: 500;
  letter-spacing: 0.06em;
  opacity: 0.6;
}



@media screen and (max-width: 1150px) {

  .dy-header__inner {
    width: calc(100% - 32px);
  }

  .dy-header__logo {
    margin-right: 28px;
  }

  .dy-header__logo img {
    height: 56px !important;
    max-width: 130px !important;
  }

  .dy-header__nav-list {
    gap: 18px;
  }

  .dy-header__actions {
    gap: 7px;
    margin-left: 20px;
  }

  .dy-header__login,
  .dy-header__signup {
    min-width: 86px;
    padding-right: 10px;
    padding-left: 10px;
  }

}




@media screen and (max-width: 900px) {

  .dy-header__inner {
    justify-content: space-between;
    width: calc(100% - 28px);
    min-height: 68px;
    padding: 6px 0;
  }

  

  .dy-header__logo {
    margin-right: 0;
  }

  .dy-header__logo img {
    width: auto !important;
    height: 50px !important;
    max-width: 115px !important;
  }

  

  .dy-header__nav,
  .dy-header__actions {
    display: none !important;
  }

  

  .dy-header__menu-button {
    display: block !important;
  }

  

  .dy-header.is-open .dy-header__mobile-menu {
    display: block;
  }

  

  .dy-header.is-open
  .dy-header__menu-button
  span:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
  }

  .dy-header.is-open
  .dy-header__menu-button
  span:nth-child(2) {
    opacity: 0;
  }

  .dy-header.is-open
  .dy-header__menu-button
  span:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg);
  }

}




@media screen and (max-width: 480px) {

  .dy-header__inner {
    width: calc(100% - 22px);
  }

  .dy-header__logo img {
    height: 46px !important;
    max-width: 105px !important;
  }

  .dy-header__mobile-nav {
    width: calc(100% - 28px);
  }

}



.dy-home-hero {
  width: 100%;
  margin: 0;
  padding: 0;
  overflow: hidden;
}



.dy-home-hero .metaslider,
.dy-home-hero .flexslider {
  margin: 0 !important;
}




.dy-home-content {
  width: min(calc(100% - 64px), 1400px);
  margin: 0 auto;
  padding: 54px 0 100px;
}




.dy-home-section {
  margin-bottom: 64px;
}




.dy-section-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 30px;
  margin-bottom: 22px;
  padding-left: 14px;
  border-left: 3px solid #e50914;
}

.dy-section-heading__en {
  display: block;
  margin-bottom: 4px;
  color: #e50914;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.15em;
}

.dy-section-heading__title {
  margin: 0 !important;
  padding: 0 !important;
  color: #fff;
  border: 0 !important;
  background: none !important;
  font-size: clamp(20px, 2vw, 27px);
  font-weight: 700;
  line-height: 1.35;
}

.dy-section-heading__more {
  flex: 0 0 auto;
  padding-bottom: 2px;
  color: rgba(255, 255, 255, 0.75) !important;
  font-size: 11px;
  font-weight: 600;
  text-align: right;
  text-decoration: none !important;
  transition: color 0.2s ease;
}

.dy-section-heading__more span {
  display: block;
  margin-top: 2px;
  color: rgba(255, 255, 255, 0.4);
  font-size: 8px;
  font-weight: 500;
  letter-spacing: 0.08em;
}

.dy-section-heading__more:hover {
  color: #fff !important;
}




@media screen and (max-width: 700px) {

  .dy-home-content {
    width: calc(100% - 28px);
    padding-top: 36px;
  }

  .dy-home-section {
    margin-bottom: 46px;
  }

  .dy-section-heading {
    gap: 15px;
    margin-bottom: 16px;
    padding-left: 10px;
  }

  .dy-section-heading__title {
    font-size: 19px;
  }

  .dy-section-heading__more {
    font-size: 10px;
  }

}



.dy-membership-box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 50px;

  padding: 34px 38px;

  border: 1px solid rgba(255,255,255,.10);
  border-radius: 8px;

  background:
    linear-gradient(
      110deg,
      rgba(255,255,255,.06),
      rgba(255,255,255,.015)
    );
}

.dy-membership-box__text {
  flex: 1 1 auto;
  max-width: 720px;
}

.dy-membership-box__en {
  display: block;

  margin-bottom: 8px;

  color: #e50914;

  font-size: 10px;
  font-weight: 700;

  letter-spacing: .14em;
}

.dy-membership-box h2 {
  margin: 0 0 12px !important;
  padding: 0 !important;

  color: #fff;

  border: 0 !important;
  background: none !important;

  font-size: clamp(22px, 2.2vw, 30px);
  line-height: 1.35;
}

.dy-membership-box p {
  margin: 0;

  color: rgba(255,255,255,.75);

  font-size: 13px;
  line-height: 1.8;
}

.dy-membership-box__english {
  margin-top: 5px !important;

  color: rgba(255,255,255,.40) !important;

  font-size: 10px !important;
}




.dy-membership-box__actions {
  display: flex;
  flex: 0 0 auto;

  gap: 12px;
}

.dy-membership-button {
  display: flex;
  flex-direction: column;

  align-items: center;
  justify-content: center;

  min-width: 150px;
  min-height: 58px;

  padding: 9px 22px;

  border-radius: 5px;

  text-align: center;
  text-decoration: none !important;

  transition:
    background-color .2s ease,
    border-color .2s ease,
    transform .2s ease;
}

.dy-membership-button strong {
  font-size: 13px;
  line-height: 1.2;
}

.dy-membership-button span {
  margin-top: 4px;

  font-size: 8px;
  font-weight: 500;

  letter-spacing: .08em;

  opacity: .6;
}




.dy-membership-button--login {
  color: #fff !important;

  border: 1px solid rgba(255,255,255,.4);

  background: transparent;
}

.dy-membership-button--login:hover {
  color: #fff !important;

  border-color: #fff;

  background: rgba(255,255,255,.07);

  transform: translateY(-2px);
}




.dy-membership-button--signup {
  color: #fff !important;

  border: 1px solid #e50914;

  background: #e50914;
}

.dy-membership-button--signup:hover {
  color: #fff !important;

  border-color: #f21b26;

  background: #f21b26;

  transform: translateY(-2px);
}




@media screen and (max-width: 700px) {

  .dy-membership-box {
    display: block;

    padding: 25px 20px;
  }

  .dy-membership-box__actions {
    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 8px;

    margin-top: 22px;
  }

  .dy-membership-button {
    min-width: 0;

    padding-right: 10px;
    padding-left: 10px;
  }

}

@media screen and (max-width: 430px) {

  .dy-membership-box__actions {
    grid-template-columns: 1fr;
  }

}



.dy-section-more {
  display: flex;
  justify-content: flex-end;
  margin-top: 22px;
}

.dy-section-more__button {
  display: inline-flex;
  align-items: center;
  gap: 10px;

  min-height: 42px;
  padding: 9px 18px;

  border: 1px solid rgba(255,255,255,.25);
  border-radius: 5px;

  background: rgba(255,255,255,.03);

  color: #fff !important;
  text-decoration: none !important;

  transition:
    background-color .2s ease,
    border-color .2s ease,
    transform .2s ease;
}

.dy-section-more__button:hover {
  color: #fff !important;
  border-color: rgba(255,255,255,.65);
  background: rgba(255,255,255,.08);
  transform: translateY(-1px);
}

.dy-section-more__ja {
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
}

.dy-section-more__en {
  padding-left: 10px;

  border-left: 1px solid rgba(255,255,255,.18);

  color: rgba(255,255,255,.45);

  font-size: 8px;
  font-weight: 600;

  line-height: 1;
  letter-spacing: .08em;
}




@media screen and (max-width: 700px) {

  .dy-section-more {
    justify-content: center;
    margin-top: 18px;
  }

  .dy-section-more__button {
    width: 100%;
    max-width: 280px;
    justify-content: center;
  }

}



.dy-library {
  width: 100%;
  background: #080808;
  color: #fff;
}

.dy-library__inner {
  width: min(calc(100% - 64px), 1400px);
  margin: 0 auto;
  padding: 54px 0 100px;
}




.dy-library-header {
  margin-bottom: 46px;
}

.dy-library-header__en {
  display: block;
  margin-bottom: 8px;
  color: #e50914;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.14em;
}

.dy-library-header__title {
  margin: 0 0 12px !important;
  padding: 0 !important;
  color: #fff;
  border: 0 !important;
  background: none !important;
  font-size: clamp(26px, 3vw, 40px);
  font-weight: 700;
  line-height: 1.25;
}

.dy-library-header__description {
  margin: 0 0 5px;
  color: rgba(255,255,255,.72);
  font-size: 13px;
  line-height: 1.8;
}

.dy-library-header__description-en {
  margin: 0;
  color: rgba(255,255,255,.38);
  font-size: 10px;
  line-height: 1.7;
}




.dy-library-section {
  margin-top: 24px;
}




.dy-library-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 34px 20px;
  margin-top: 24px;
}




.dy-video-card {
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.dy-video-card__link {
  display: block;
  color: #fff !important;
  text-decoration: none !important;
}




.dy-video-card__thumbnail {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 5px;
  background: #151515;
}

.dy-video-card__image {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover;
  transition:
    transform .25s ease,
    opacity .25s ease;
}

.dy-video-card__link:hover .dy-video-card__image {
  transform: scale(1.035);
  opacity: .78;
}




.dy-video-card__play {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0,0,0,0);
  opacity: 0;
  transition:
    opacity .2s ease,
    background-color .2s ease;
}

.dy-video-card__link:hover .dy-video-card__play {
  background: rgba(0,0,0,.25);
  opacity: 1;
}

.dy-video-card__play-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  padding-left: 3px;
  border: 1px solid rgba(255,255,255,.85);
  border-radius: 50%;
  background: rgba(0,0,0,.48);
  color: #fff;
  font-size: 17px;
  line-height: 1;
}




.dy-video-card__no-image {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  color: rgba(255,255,255,.35);
  font-size: 10px;
  letter-spacing: .12em;
}




.dy-video-card__body {
  padding: 12px 3px 0;
}

.dy-video-card__title {
  display: -webkit-box;
  overflow: hidden;
  margin: 0 !important;
  padding: 0 !important;
  color: #fff !important;
  border: 0 !important;
  background: none !important;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.55;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.dy-video-card__watch {
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
  margin-top: 7px;
  color: #e50914;
  font-size: 10px;
  font-weight: 700;
}

.dy-video-card__watch small {
  color: rgba(255,255,255,.35);
  font-size: 8px;
  font-weight: 500;
  letter-spacing: .05em;
}




.dy-library-pagination {
  margin-top: 60px;
  text-align: center;
}

.dy-library-pagination .nav-links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.dy-library-pagination .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  min-height: 40px;
  padding: 7px 11px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 4px;
  background: rgba(255,255,255,.03);
  color: rgba(255,255,255,.72) !important;
  font-size: 10px;
  text-decoration: none !important;
}

.dy-library-pagination .page-numbers:hover {
  border-color: rgba(255,255,255,.4);
  background: rgba(255,255,255,.08);
  color: #fff !important;
}

.dy-library-pagination .page-numbers.current {
  border-color: #e50914;
  background: #e50914;
  color: #fff !important;
}




.dy-library-empty {
  padding: 60px 20px;
  text-align: center;
}

.dy-library-empty p {
  margin: 0;
  color: rgba(255,255,255,.7);
  font-size: 14px;
}

.dy-library-empty__en {
  margin-top: 5px !important;
  color: rgba(255,255,255,.35) !important;
  font-size: 10px !important;
}




.dy-library-locked {
  max-width: 760px;
  margin: 20px auto 0;
  padding: 55px 40px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 8px;
  background:
    linear-gradient(
      120deg,
      rgba(255,255,255,.055),
      rgba(255,255,255,.012)
    );
  text-align: center;
}

.dy-library-locked__icon {
  margin-bottom: 16px;
  font-size: 28px;
}

.dy-library-locked__en {
  display: block;
  margin-bottom: 9px;
  color: #e50914;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .14em;
}

.dy-library-locked h2 {
  margin: 0 0 16px !important;
  padding: 0 !important;
  color: #fff;
  border: 0 !important;
  background: none !important;
  font-size: clamp(24px, 3vw, 34px);
  line-height: 1.45;
}

.dy-library-locked p {
  max-width: 580px;
  margin: 0 auto;
  color: rgba(255,255,255,.68);
  font-size: 13px;
  line-height: 1.9;
}

.dy-library-locked__english {
  margin-top: 8px !important;
  color: rgba(255,255,255,.38) !important;
  font-size: 10px !important;
}

.dy-library-locked__actions {
  display: flex;
  justify-content: center;
  gap: 12px;
  margin-top: 28px;
}




@media screen and (max-width: 1100px) {

  .dy-library-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

}




@media screen and (max-width: 700px) {

  .dy-library__inner {
    width: calc(100% - 28px);
    padding: 36px 0 70px;
  }

  .dy-library-header {
    margin-bottom: 32px;
  }

  .dy-library-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 26px 10px;
  }

  .dy-video-card__thumbnail {
    border-radius: 4px;
  }

  .dy-video-card__body {
    padding-top: 9px;
  }

  .dy-video-card__title {
    font-size: 12px;
  }

  .dy-video-card__watch {
    font-size: 9px;
  }

  .dy-video-card__play-icon {
    width: 40px;
    height: 40px;
    font-size: 14px;
  }

  .dy-library-pagination {
    margin-top: 42px;
  }

  .dy-library-locked {
    padding: 38px 20px;
  }

  .dy-library-locked__actions {
    flex-direction: column;
  }

  .dy-library-locked__actions .dy-membership-button {
    width: 100%;
  }

}




@media screen and (max-width: 420px) {

  .dy-library-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap-right: 8px;
  }

  .dy-video-card__title {
    font-size: 11px;
  }

}



.dy-watch-page {
  width: 100%;
  background: #080808;
  color: #fff;
}

.dy-watch-page__inner {
  width: min(calc(100% - 64px), 1280px);
  margin: 0 auto;
  padding: 46px 0 100px;
}




.dy-watch-header {
  margin-bottom: 24px;
}

.dy-watch-header__en {
  display: block;
  margin-bottom: 8px;
  color: #e50914;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .14em;
}

.dy-watch-header__title {
  margin: 0 !important;
  padding: 0 !important;
  color: #fff !important;
  border: 0 !important;
  background: none !important;
  font-size: clamp(26px, 3vw, 40px);
  font-weight: 700;
  line-height: 1.3;
}




.dy-watch-content {
  margin: 0 !important;
  padding: 0 !important;
  color: rgba(255,255,255,.82);
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.dy-watch-content > *:first-child {
  margin-top: 0 !important;
}

.dy-watch-content p {
  color: rgba(255,255,255,.72);
  font-size: 14px;
  line-height: 1.9;
}

.dy-watch-content h2,
.dy-watch-content h3,
.dy-watch-content h4,
.dy-watch-content h5,
.dy-watch-content h6 {
  margin-top: 36px !important;
  margin-bottom: 12px !important;
  padding: 0 0 9px !important;
  color: #fff !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(255,255,255,.12) !important;
  background: none !important;
  font-weight: 700;
  line-height: 1.4;
}

.dy-watch-content h2 {
  font-size: 20px;
}

.dy-watch-content h3 {
  font-size: 18px;
}

.dy-watch-content h4,
.dy-watch-content h5,
.dy-watch-content h6 {
  font-size: 16px;
}




.dy-watch-content .presto-player,
.dy-watch-content .presto-block-video,
.dy-watch-content .wp-block-presto-player-reusable-edit,
.dy-watch-content .wp-block-presto-player-premium-video {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 34px !important;
}

.dy-watch-content .presto-player__wrapper,
.dy-watch-content .plyr,
.dy-watch-content video {
  width: 100% !important;
  max-width: 100% !important;
}

.dy-watch-content .plyr {
  overflow: hidden;
  border-radius: 7px;
  background: #000;
}




.dy-watch-content > p,
.dy-watch-content > h2,
.dy-watch-content > h3,
.dy-watch-content > h4,
.dy-watch-content > h5,
.dy-watch-content > h6,
.dy-watch-content > ul,
.dy-watch-content > ol {
  max-width: 900px;
}

.dy-watch-content ul,
.dy-watch-content ol {
  padding-left: 1.4em;
  color: rgba(255,255,255,.72);
}




.dy-watch-back {
  display: flex;
  justify-content: flex-start;
  margin-top: 44px;
}

.dy-watch-back__button {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-height: 46px;
  padding: 9px 18px;
  border: 1px solid rgba(255,255,255,.24);
  border-radius: 5px;
  background: rgba(255,255,255,.03);
  color: #fff !important;
  text-decoration: none !important;
  transition:
    background-color .2s ease,
    border-color .2s ease,
    transform .2s ease;
}

.dy-watch-back__button:hover {
  border-color: rgba(255,255,255,.6);
  background: rgba(255,255,255,.07);
  transform: translateY(-1px);
}

.dy-watch-back__arrow {
  color: #e50914;
  font-size: 18px;
  line-height: 1;
}

.dy-watch-back__button > span:last-child {
  display: flex;
  flex-direction: column;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.2;
}

.dy-watch-back__button small {
  margin-top: 3px;
  color: rgba(255,255,255,.38);
  font-size: 8px;
  font-weight: 500;
  letter-spacing: .06em;
}




.dy-watch-related {
  margin-top: 72px;
  padding-top: 42px;
  border-top: 1px solid rgba(255,255,255,.08);
}

.dy-watch-related .dy-library-grid {
  margin-top: 24px;
}




@media screen and (max-width: 1000px) {

  .dy-watch-page__inner {
    width: calc(100% - 40px);
  }

}




@media screen and (max-width: 700px) {

  .dy-watch-page__inner {
    width: calc(100% - 24px);
    padding: 30px 0 70px;
  }

  .dy-watch-header {
    margin-bottom: 18px;
  }

  .dy-watch-header__title {
    font-size: 24px;
  }

  .dy-watch-content .plyr {
    border-radius: 4px;
  }

  .dy-watch-content h2 {
    font-size: 18px;
  }

  .dy-watch-content h3 {
    font-size: 16px;
  }

  .dy-watch-content p {
    font-size: 13px;
  }

  .dy-watch-back {
    margin-top: 34px;
  }

  .dy-watch-back__button {
    width: 100%;
    justify-content: center;
  }

  .dy-watch-related {
    margin-top: 54px;
    padding-top: 32px;
  }

}



body.pe-account .site-content {
  background: #080808;
}

body.pe-account .content__wrap {
  display: block;
}

body.pe-account .content__main {
  width: 100%;
  max-width: none;
}

body.pe-account .singular-article {
  max-width: 1100px;
  margin: 0 auto;
  padding: 50px 32px 100px;
  background: transparent;
  border: 0;
  box-shadow: none;
}




body.pe-account .singular-header {
  margin-bottom: 42px;
}

body.pe-account .singular-header__title {
  margin: 0 !important;
  padding: 0 !important;
  color: #fff;
  border: 0 !important;
  background: none !important;
  font-size: clamp(28px, 3vw, 40px);
  line-height: 1.3;
}




body.pe-account .pmpro {
  color: #fff;
}

body.pe-account .pmpro_section {
  margin: 0 0 48px;
}




body.pe-account .pmpro_section_title {
  margin: 0 0 18px !important;
  padding: 0 0 0 14px !important;
  color: #fff !important;
  border: 0 !important;
  border-left: 3px solid #e50914 !important;
  background: none !important;
  font-size: 22px !important;
  font-weight: 700;
  line-height: 1.4;
}




body.pe-account .pmpro_card {
  overflow: hidden;
  margin: 0 0 16px !important;
  padding: 0 !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  border-radius: 8px !important;
  background:
    linear-gradient(
      120deg,
      rgba(255,255,255,.055),
      rgba(255,255,255,.015)
    ) !important;
  box-shadow: none !important;
}




body.pe-account .pmpro_card_title {
  margin: 0 !important;
  padding: 22px 24px 14px !important;
  color: #fff !important;
  border: 0 !important;
  background: none !important;
  font-size: 18px !important;
  font-weight: 700;
}




body.pe-account .pmpro_heading-with-avatar {
  display: flex;
  align-items: center;
  gap: 14px;
}

body.pe-account .pmpro_heading-with-avatar img {
  width: 48px !important;
  height: 48px !important;
  margin: 0 !important;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 50%;
}




body.pe-account .pmpro_card_content {
  padding: 0 24px 22px !important;
  color: rgba(255,255,255,.72);
}

body.pe-account .pmpro_list {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.pe-account .pmpro_list_item {
  margin: 7px 0 !important;
  padding: 0 !important;
  color: rgba(255,255,255,.7);
  font-size: 13px;
  line-height: 1.7;
}

body.pe-account .pmpro_list_item strong {
  color: #fff;
}




body.pe-account .pmpro_card_actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;

  padding: 14px 24px !important;

  border-top: 1px solid rgba(255,255,255,.08);

  background: rgba(0,0,0,.18);
}

body.pe-account .pmpro_card_action_separator {
  display: none;
}

body.pe-account .pmpro_card_action {
  margin: 0 !important;
}

body.pe-account .pmpro_card_action a {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 36px;
  padding: 7px 13px;

  border: 1px solid rgba(255,255,255,.22);
  border-radius: 4px;

  background: rgba(255,255,255,.025);

  color: #fff !important;

  font-size: 10px;
  font-weight: 700;

  text-decoration: none !important;

  transition:
    background-color .2s ease,
    border-color .2s ease;
}

body.pe-account .pmpro_card_action a:hover {
  border-color: rgba(255,255,255,.55);
  background: rgba(255,255,255,.07);
}




body.pe-account
a[id^="pmpro_actionlink-cancel"] {
  color: #ff6b72 !important;
  border-color: rgba(229,9,20,.45);
}

body.pe-account
a[id^="pmpro_actionlink-cancel"]:hover {
  color: #fff !important;
  border-color: #e50914;
  background: #e50914;
}




body.pe-account #pmpro_account-membership .pmpro_section_content {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

body.pe-account #pmpro_account-membership .pmpro_card {
  display: flex;
  flex-direction: column;
  margin: 0 !important;
}

body.pe-account #pmpro_account-membership .pmpro_card_actions {
  margin-top: auto;
}




@media screen and (max-width: 700px) {

  body.pe-account .singular-article {
    padding: 34px 16px 70px;
  }

  body.pe-account .singular-header {
    margin-bottom: 30px;
  }

  body.pe-account .pmpro_section {
    margin-bottom: 38px;
  }

  body.pe-account #pmpro_account-membership .pmpro_section_content {
    grid-template-columns: 1fr;
  }

  body.pe-account .pmpro_card_title {
    padding: 19px 18px 12px !important;
  }

  body.pe-account .pmpro_card_content {
    padding: 0 18px 18px !important;
  }

  body.pe-account .pmpro_card_actions {
    padding: 12px 18px !important;
  }

  body.pe-account .pmpro_card_action a {
    min-height: 38px;
  }

}






.dy-login-page {
  width: 100%;
  min-height: 70vh;
  padding: 70px 24px 110px;
  background:
    radial-gradient(
      circle at 50% 0%,
      rgba(229, 9, 20, .07),
      transparent 420px
    ),
    #080808;
  color: #fff;
}

.dy-login-container {
  width: 100%;
  max-width: 560px;
  margin: 0 auto;
}




.dy-login-header {
  margin-bottom: 30px;
  text-align: center;
}

.dy-login-eyebrow {
  display: block;
  margin-bottom: 10px;

  color: #e50914;

  font-size: 10px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: .16em;
}

.dy-login-title {
  margin: 0 0 14px !important;
  padding: 0 !important;

  border: 0 !important;
  background: none !important;

  color: #fff !important;

  font-size: clamp(30px, 4vw, 40px);
  font-weight: 700;
  line-height: 1.3;
}

.dy-login-description {
  margin: 0;

  color: rgba(255,255,255,.70);

  font-size: 13px;
  line-height: 1.8;
}

.dy-login-description-en {
  margin: 6px 0 0;

  color: rgba(255,255,255,.38);

  font-size: 10px;
  line-height: 1.6;
}




.dy-login-card {
  overflow: hidden;

  margin: 0;
  padding: 34px;

  border: 1px solid rgba(255,255,255,.13);
  border-radius: 8px;

  background:
    linear-gradient(
      135deg,
      rgba(255,255,255,.055),
      rgba(255,255,255,.015)
    );

  box-shadow: 0 20px 60px rgba(0,0,0,.25);
}




.dy-login-card .pmpro,
.dy-login-card .pmpro_section,
.dy-login-card .pmpro_card {
  margin: 0 !important;
}




.dy-login-card .pmpro_card {
  padding: 0 !important;

  border: 0 !important;
  background: transparent !important;

  box-shadow: none !important;
}

.dy-login-card .pmpro_card_content {
  padding: 0 !important;
}




.dy-login-card label {
  display: block;

  margin: 0 0 7px;

  color: rgba(255,255,255,.78);

  font-size: 11px;
  font-weight: 700;
  line-height: 1.5;
}




.dy-login-card input[type="text"],
.dy-login-card input[type="email"],
.dy-login-card input[type="password"] {
  box-sizing: border-box;

  width: 100%;
  min-height: 48px;

  padding: 10px 13px;

  border: 1px solid rgba(255,255,255,.18);
  border-radius: 5px;

  outline: none;

  background: rgba(255,255,255,.04);

  color: #fff;

  font-size: 14px;

  transition:
    border-color .2s ease,
    background-color .2s ease,
    box-shadow .2s ease;
}

.dy-login-card input[type="text"]:focus,
.dy-login-card input[type="email"]:focus,
.dy-login-card input[type="password"]:focus {
  border-color: #e50914;

  background: rgba(255,255,255,.06);

  box-shadow: 0 0 0 3px rgba(229,9,20,.10);
}




.dy-login-card .pmpro_form_field,
.dy-login-card .login-username,
.dy-login-card .login-password {
  margin-bottom: 20px;
}




.dy-login-card .login-remember,
.dy-login-card .pmpro_form_field-checkbox {
  margin: 0 0 20px;
}

.dy-login-card .login-remember label,
.dy-login-card .pmpro_form_field-checkbox label {
  display: inline-flex;
  align-items: center;
  gap: 7px;

  margin: 0;

  color: rgba(255,255,255,.58);

  font-size: 10px;
  font-weight: 500;
}

.dy-login-card input[type="checkbox"] {
  accent-color: #e50914;
}




.dy-login-card input[type="submit"],
.dy-login-card button[type="submit"],
.dy-login-card .pmpro_btn {
  display: flex;
  align-items: center;
  justify-content: center;

  width: 100%;
  min-height: 50px;

  margin: 0;
  padding: 10px 20px;

  border: 1px solid #e50914 !important;
  border-radius: 5px !important;

  background: #e50914 !important;

  color: #fff !important;

  font-size: 13px !important;
  font-weight: 700 !important;

  text-align: center;
  text-decoration: none !important;

  cursor: pointer;

  transition:
    background-color .2s ease,
    border-color .2s ease,
    transform .2s ease;
}

.dy-login-card input[type="submit"]:hover,
.dy-login-card button[type="submit"]:hover,
.dy-login-card .pmpro_btn:hover {
  border-color: #f21b26 !important;
  background: #f21b26 !important;

  transform: translateY(-1px);
}




.dy-login-card a {
  color: rgba(255,255,255,.70);
  text-decoration: none;
}

.dy-login-card a:hover {
  color: #fff;
}




.dy-login-card .pmpro_actions_nav,
.dy-login-card .pmpro_form_field-password-toggle {
  margin-top: 15px;

  color: rgba(255,255,255,.45);

  font-size: 10px;

  text-align: center;
}




.dy-login-signup {
  margin-top: 42px;
  text-align: center;
}




.dy-login-divider {
  position: relative;

  margin-bottom: 25px;

  text-align: center;
}

.dy-login-divider::before {
  position: absolute;
  top: 50%;
  right: 0;
  left: 0;

  height: 1px;

  background: rgba(255,255,255,.10);

  content: "";
}

.dy-login-divider span {
  position: relative;
  z-index: 1;

  display: inline-block;

  padding: 0 14px;

  background: #080808;

  color: #e50914;

  font-size: 9px;
  font-weight: 700;

  letter-spacing: .15em;
}




.dy-login-signup-title {
  margin: 0 0 12px !important;
  padding: 0 !important;

  border: 0 !important;
  background: none !important;

  color: #fff !important;

  font-size: 21px !important;
  font-weight: 700;
}

.dy-login-signup-text {
  margin: 0;

  color: rgba(255,255,255,.65);

  font-size: 12px;
  line-height: 1.8;
}

.dy-login-signup-text-en {
  margin: 5px 0 0;

  color: rgba(255,255,255,.34);

  font-size: 9px;
  line-height: 1.6;
}




.dy-login-signup-buttons {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;

  margin-top: 24px;
}

.dy-login-signup-button {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  min-height: 58px;

  padding: 10px 20px;

  border: 1px solid rgba(255,255,255,.24);
  border-radius: 5px;

  background: rgba(255,255,255,.025);

  color: #fff !important;

  text-decoration: none !important;

  transition:
    background-color .2s ease,
    border-color .2s ease,
    transform .2s ease;
}

.dy-login-signup-button:hover {
  border-color: rgba(255,255,255,.60);

  background: rgba(255,255,255,.07);

  transform: translateY(-1px);
}

.dy-login-signup-button strong {
  color: #fff;

  font-size: 12px;
  font-weight: 700;
}

.dy-login-signup-button span {
  margin-top: 3px;

  color: rgba(255,255,255,.40);

  font-size: 8px;

  letter-spacing: .04em;
}




.dy-login-signup-button--primary {
  border-color: #e50914;

  background: #e50914;
}

.dy-login-signup-button--primary:hover {
  border-color: #f21b26;

  background: #f21b26;
}

.dy-login-signup-button--primary span {
  color: rgba(255,255,255,.65);
}




@media screen and (max-width: 600px) {

  .dy-login-page {
    padding: 44px 14px 75px;
  }

  .dy-login-container {
    max-width: 100%;
  }

  .dy-login-header {
    margin-bottom: 24px;
  }

  .dy-login-title {
    font-size: 29px;
  }

  .dy-login-description {
    font-size: 12px;
  }

  .dy-login-card {
    padding: 25px 20px;
  }

  .dy-login-signup {
    margin-top: 36px;
  }

  .dy-login-signup-title {
    font-size: 18px !important;
  }

  .pc-only {
    display: none;
  }

}



.dy-checkout-page {
	background: #050505;
	color: #fff;
	min-height: 100vh;
	padding: 70px 20px 100px;
}

.dy-checkout-container {
	width: min(1180px, 100%);
	margin: 0 auto;
}




.dy-checkout-header {
	margin-bottom: 34px;
}

.dy-checkout-eyebrow {
	display: block;
	margin-bottom: 10px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.18em;
	color: #d22;
}

.dy-checkout-title {
	margin: 0;
	font-size: clamp(32px, 4vw, 58px);
	line-height: 1.15;
	font-weight: 800;
	color: #fff;
}

.dy-checkout-subtitle {
	margin: 14px 0 0;
	font-size: 18px;
	font-weight: 700;
	color: #fff;
}

.dy-checkout-subtitle-en {
	margin: 5px 0 0;
	font-size: 13px;
	color: #999;
}




.dy-checkout-visual {
	margin: 0 0 42px;
	border: 1px solid #222;
	background: #000;
	overflow: hidden;
}

.dy-checkout-visual img {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
}




.dy-checkout-plan {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 0;
	margin-bottom: 70px;
	border: 1px solid #252525;
	background: #0c0c0c;
}

.dy-checkout-plan__main,
.dy-checkout-plan__features {
	padding: 42px;
}

.dy-checkout-plan__main {
	border-right: 1px solid #252525;
}

.dy-checkout-plan__label {
	display: inline-block;
	margin-bottom: 12px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.16em;
	color: #d22;
}

.dy-checkout-plan__main h2 {
	margin: 0 0 22px;
	font-size: clamp(23px, 2.3vw, 34px);
	line-height: 1.4;
	color: #fff;
}




.dy-checkout-price {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 6px;
	margin-bottom: 10px;
}

.dy-checkout-price__yen {
	font-size: 28px;
	font-weight: 700;
}

.dy-checkout-price strong {
	font-size: clamp(52px, 6vw, 78px);
	line-height: 1;
	font-weight: 800;
	letter-spacing: -0.03em;
	color: #fff;
}

.dy-checkout-price__unit {
	font-size: 17px;
	font-weight: 700;
}

.dy-checkout-price-usd {
	margin-top: 14px;
	font-size: 15px;
	color: #bbb;
}

.dy-checkout-price-usd strong {
	color: #fff;
}

.dy-checkout-tax {
	margin: 8px 0 0;
	font-size: 13px;
	color: #888;
}

.dy-checkout-exchange-note {
	margin: 18px 0 0;
	padding-top: 16px;
	border-top: 1px solid #242424;
	font-size: 11px;
	line-height: 1.8;
	color: #777;
}




.dy-checkout-plan__features {
	display: flex;
	align-items: center;
}

.dy-checkout-plan__features ul {
	list-style: none;
	margin: 0;
	padding: 0;
	width: 100%;
}

.dy-checkout-plan__features li {
	position: relative;
	padding: 17px 0 17px 34px;
	border-bottom: 1px solid #222;
	font-size: 16px;
	font-weight: 700;
	color: #fff;
}

.dy-checkout-plan__features li:last-child {
	border-bottom: 0;
}

.dy-checkout-plan__features li::before {
	content: "✓";
	position: absolute;
	top: 17px;
	left: 0;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: #b5161b;
	color: #fff;
	font-size: 13px;
	line-height: 22px;
	text-align: center;
	font-weight: 800;
}

.dy-checkout-plan__features li span {
	display: block;
	margin-top: 5px;
	font-size: 12px;
	font-weight: 400;
	color: #888;
}




.dy-section-heading {
	margin-bottom: 24px;
	padding-left: 18px;
	border-left: 4px solid #b5161b;
}

.dy-section-heading__en {
	display: block;
	margin-bottom: 5px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.16em;
	color: #b5161b;
}

.dy-section-heading__title {
	margin: 0;
	font-size: clamp(26px, 3vw, 38px);
	line-height: 1.3;
	color: #fff;
}




.dy-checkout-info {
	margin-bottom: 70px;
}

.dy-checkout-info__content {
	padding: 28px 32px;
	border: 1px solid #222;
	background: #0c0c0c;
}

.dy-checkout-info__content p {
	margin: 0 0 10px;
	font-size: 15px;
	line-height: 1.9;
	color: #ddd;
}

.dy-checkout-info__content p:last-child {
	margin-bottom: 0;
}

.dy-checkout-info__en {
	margin-top: 20px !important;
	padding-top: 18px;
	border-top: 1px solid #222;
	font-size: 13px !important;
	color: #888 !important;
}




.dy-checkout-form-section {
	margin-bottom: 60px;
}

.dy-checkout-form {
	padding: 36px;
	border: 1px solid #252525;
	background: #0c0c0c;
}




.dy-checkout-form .pmpro,
.dy-checkout-form .pmpro_checkout {
	color: #ddd;
}

.dy-checkout-form h2,
.dy-checkout-form h3,
.dy-checkout-form legend,
.dy-checkout-form label {
	color: #fff;
}

.dy-checkout-form fieldset {
	margin: 0 0 34px;
	padding: 0 0 30px;
	border: 0;
	border-bottom: 1px solid #292929;
}

.dy-checkout-form fieldset:last-child {
	border-bottom: 0;
}

.dy-checkout-form legend {
	margin-bottom: 18px;
	font-size: 21px;
	font-weight: 700;
}

.dy-checkout-form .pmpro_checkout-field {
	margin-bottom: 18px;
}

.dy-checkout-form label {
	display: block;
	margin-bottom: 7px;
	font-size: 13px;
	font-weight: 700;
}




.dy-checkout-form input[type="text"],
.dy-checkout-form input[type="email"],
.dy-checkout-form input[type="password"],
.dy-checkout-form input[type="tel"],
.dy-checkout-form input[type="number"],
.dy-checkout-form select,
.dy-checkout-form textarea {
	width: 100%;
	max-width: none;
	box-sizing: border-box;
	padding: 14px 15px;
	border: 1px solid #333;
	border-radius: 4px;
	background: #151515;
	color: #fff;
	font-size: 16px;
	box-shadow: none;
}

.dy-checkout-form input:focus,
.dy-checkout-form select:focus,
.dy-checkout-form textarea:focus {
	outline: none;
	border-color: #b5161b;
	background: #181818;
}




.dy-checkout-form input[type="checkbox"],
.dy-checkout-form input[type="radio"] {
	accent-color: #b5161b;
}




.dy-checkout-form small,
.dy-checkout-form .pmpro_checkout-field-description,
.dy-checkout-form .pmpro_asterisk,
.dy-checkout-form .lite {
	color: #888;
}




.dy-checkout-form a {
	color: #ddd;
	text-decoration: underline;
}

.dy-checkout-form a:hover {
	color: #fff;
}




.dy-checkout-form input[type="submit"],
.dy-checkout-form button[type="submit"],
.dy-checkout-form .pmpro_btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 0 34px;
	border: 0;
	border-radius: 3px;
	background: #b5161b;
	color: #fff;
	font-size: 15px;
	font-weight: 800;
	text-decoration: none;
	cursor: pointer;
	transition: opacity .2s ease, transform .2s ease;
}

.dy-checkout-form input[type="submit"]:hover,
.dy-checkout-form button[type="submit"]:hover,
.dy-checkout-form .pmpro_btn:hover {
	opacity: .88;
	color: #fff;
	transform: translateY(-1px);
}




.dy-checkout-notice {
	margin-top: 50px;
	padding: 30px 32px;
	border: 1px solid #2a2a2a;
	background: #090909;
}

.dy-checkout-notice h3 {
	margin: 0 0 18px;
	font-size: 20px;
	color: #fff;
}

.dy-checkout-notice ul {
	margin: 0;
	padding-left: 1.3em;
}

.dy-checkout-notice li {
	margin-bottom: 9px;
	font-size: 13px;
	line-height: 1.8;
	color: #aaa;
}

.dy-checkout-notice a {
	color: #fff;
	text-decoration: underline;
}

.dy-checkout-notice__en {
	margin: 20px 0 0;
	padding-top: 18px;
	border-top: 1px solid #242424;
	font-size: 12px;
	line-height: 1.8;
	color: #777;
}




@media screen and (max-width: 900px) {

	.dy-checkout-page {
		padding-top: 50px;
	}

	.dy-checkout-plan {
		grid-template-columns: 1fr;
	}

	.dy-checkout-plan__main {
		border-right: 0;
		border-bottom: 1px solid #252525;
	}

}




@media screen and (max-width: 600px) {

	.dy-checkout-page {
		padding: 38px 16px 70px;
	}

	.dy-checkout-header {
		margin-bottom: 24px;
	}

	.dy-checkout-title {
		font-size: 32px;
	}

	.dy-checkout-subtitle {
		font-size: 15px;
	}

	.dy-checkout-visual {
		margin-bottom: 28px;
	}

	.dy-checkout-plan {
		margin-bottom: 50px;
	}

	.dy-checkout-plan__main,
	.dy-checkout-plan__features {
		padding: 25px 20px;
	}

	.dy-checkout-price strong {
		font-size: 54px;
	}

	.dy-checkout-price__unit {
		font-size: 14px;
	}

	.dy-checkout-info {
		margin-bottom: 50px;
	}

	.dy-checkout-info__content {
		padding: 22px 20px;
	}

	.dy-checkout-form {
		padding: 24px 18px;
	}

	.dy-checkout-form input[type="submit"],
	.dy-checkout-form button[type="submit"],
	.dy-checkout-form .pmpro_btn {
		width: 100%;
	}

	.dy-checkout-notice {
		padding: 24px 20px;
	}

}



.dy-kuzu-hero {
	display: grid;
	grid-template-columns: minmax(300px, 42%) 1fr;
	margin: 0 0 42px;
	border: 1px solid #252525;
	background: #0b0b0b;
	overflow: hidden;
}




.dy-kuzu-hero__visual {
	background: #000;
}

.dy-kuzu-hero__visual img {
	display: block;
	width: 100%;
	height: 100%;
	max-height: 680px;
	object-fit: cover;
	object-position: center;
	margin: 0;
}




.dy-kuzu-hero__content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: clamp(32px, 5vw, 70px);
}

.dy-kuzu-hero__label {
	display: block;
	margin-bottom: 14px;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .18em;
	color: #d22;
}

.dy-kuzu-hero__content h2 {
	margin: 0 0 24px;
	font-size: clamp(30px, 3.5vw, 48px);
	line-height: 1.4;
	color: #fff;
}

.dy-kuzu-hero__content > p {
	margin: 0 0 14px;
	font-size: 15px;
	line-height: 1.9;
	color: #ccc;
}

.dy-kuzu-hero__content .dy-kuzu-hero__en {
	margin-top: 4px;
	font-size: 13px;
	line-height: 1.8;
	color: #777;
}




.dy-kuzu-hero__price {
	margin-top: 30px;
	padding-top: 25px;
	border-top: 1px solid #292929;
}

.dy-kuzu-hero__price > span {
	display: block;
	margin-bottom: 7px;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .16em;
	color: #d22;
}

.dy-kuzu-hero__price > div {
	display: flex;
	align-items: baseline;
	gap: 5px;
}

.dy-kuzu-hero__price > div small:first-child {
	font-size: 24px;
	font-weight: 700;
	color: #fff;
}

.dy-kuzu-hero__price > div strong {
	font-size: clamp(48px, 5vw, 70px);
	line-height: 1;
	color: #fff;
	letter-spacing: -.03em;
}

.dy-kuzu-hero__price > div small:last-child {
	font-size: 15px;
	font-weight: 700;
	color: #fff;
}

.dy-kuzu-hero__price > p {
	margin: 12px 0 0;
	font-size: 13px;
	color: #888;
}

.dy-kuzu-hero__price > p strong {
	color: #ddd;
}




.dy-kuzu-old-member .dy-checkout-info__content {
	border-left: 3px solid #b5161b;
}

.dy-kuzu-old-member strong {
	color: #fff;
}




@media screen and (max-width: 800px) {

	.dy-kuzu-hero {
		grid-template-columns: 1fr;
	}

	.dy-kuzu-hero__visual {
		text-align: center;
		background: #050505;
	}

	.dy-kuzu-hero__visual img {
		width: auto;
		max-width: 100%;
		height: auto;
		max-height: 650px;
		margin: 0 auto;
		object-fit: contain;
	}

	.dy-kuzu-hero__content {
		padding: 32px 25px;
	}

}


@media screen and (max-width: 600px) {

	.dy-kuzu-hero {
		margin-bottom: 30px;
	}

	.dy-kuzu-hero__content h2 {
		font-size: 28px;
	}

	.dy-kuzu-hero__price > div strong {
		font-size: 52px;
	}

}



.dy-confirm-page {
	background: #050505;
	color: #fff;
	min-height: 100vh;
	padding: 70px 20px 100px;
}

.dy-confirm-container {
	width: min(1080px, 100%);
	margin: 0 auto;
}




.dy-confirm-header {
	text-align: center;
	margin-bottom: 70px;
}

.dy-confirm-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 68px;
	height: 68px;
	margin: 0 auto 22px;
	border-radius: 50%;
	background: #b5161b;
	color: #fff;
	font-size: 34px;
	font-weight: 800;
	line-height: 1;
}

.dy-confirm-eyebrow {
	display: block;
	margin-bottom: 10px;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .18em;
	color: #d22;
}

.dy-confirm-title {
	margin: 0;
	font-size: clamp(32px, 4vw, 54px);
	line-height: 1.25;
	color: #fff;
}

.dy-confirm-description {
	margin: 18px 0 0;
	font-size: 17px;
	line-height: 1.9;
	color: #ddd;
}

.dy-confirm-description-en {
	margin: 12px 0 0;
	font-size: 13px;
	line-height: 1.8;
	color: #888;
}




.dy-confirm-details {
	margin-bottom: 70px;
}

.dy-confirm-pmpro {
	padding: 34px;
	border: 1px solid #252525;
	background: #0c0c0c;
}




.dy-confirm-pmpro,
.dy-confirm-pmpro .pmpro {
	color: #ddd;
}

.dy-confirm-pmpro h2,
.dy-confirm-pmpro h3,
.dy-confirm-pmpro h4,
.dy-confirm-pmpro strong {
	color: #fff;
}

.dy-confirm-pmpro p {
	font-size: 14px;
	line-height: 1.9;
	color: #ccc;
}

.dy-confirm-pmpro a {
	color: #fff;
	text-decoration: underline;
}

.dy-confirm-pmpro a:hover {
	color: #d22;
}




.dy-confirm-pmpro .pmpro_message,
.dy-confirm-pmpro .pmpro_alert,
.dy-confirm-pmpro .pmpro_success,
.dy-confirm-pmpro .pmpro_error {
	margin: 24px 0;
	padding: 16px 18px;
	border-radius: 3px;
	border: 1px solid #3a3a3a;
	background: #151515;
	color: #ddd;
}




.dy-confirm-pmpro .pmpro_message.pmpro_alert,
.dy-confirm-pmpro .pmpro_alert {
	border-color: #5d5025;
	background: #211d0e;
	color: #e8d68b;
}




.dy-confirm-pmpro .pmpro_card,
.dy-confirm-pmpro .pmpro_box,
.dy-confirm-pmpro .pmpro_confirmation_wrap {
	border: 1px solid #292929;
	background: #090909;
	border-radius: 4px;
}

.dy-confirm-pmpro .pmpro_card {
	padding: 26px;
}

.dy-confirm-pmpro table {
	width: 100%;
	border-collapse: collapse;
	background: transparent;
	color: #ddd;
}

.dy-confirm-pmpro th,
.dy-confirm-pmpro td {
	padding: 14px 12px;
	border-bottom: 1px solid #252525;
	text-align: left;
}

.dy-confirm-pmpro th {
	color: #fff;
	font-weight: 700;
}




.dy-confirm-next {
	margin-bottom: 55px;
	padding: 42px;
	border: 1px solid #252525;
	background: #0b0b0b;
	text-align: center;
}

.dy-confirm-next__eyebrow {
	display: block;
	margin-bottom: 10px;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .18em;
	color: #d22;
}

.dy-confirm-next h2 {
	margin: 0;
	font-size: clamp(26px, 3vw, 38px);
	color: #fff;
}

.dy-confirm-next > p {
	margin: 16px 0 0;
	font-size: 15px;
	line-height: 1.8;
	color: #ccc;
}

.dy-confirm-next__en {
	font-size: 13px !important;
	color: #777 !important;
}




.dy-confirm-actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	margin-top: 30px;
}

.dy-confirm-btn {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: 74px;
	padding: 16px 22px;
	border-radius: 3px;
	text-decoration: none !important;
	transition: .2s ease;
}

.dy-confirm-btn span {
	font-size: 15px;
	font-weight: 800;
}

.dy-confirm-btn small {
	margin-top: 4px;
	font-size: 10px;
	letter-spacing: .06em;
	opacity: .7;
}

.dy-confirm-btn--primary {
	background: #b5161b;
	color: #fff;
	border: 1px solid #b5161b;
}

.dy-confirm-btn--secondary {
	background: #111;
	color: #fff;
	border: 1px solid #444;
}

.dy-confirm-btn:hover {
	transform: translateY(-1px);
	opacity: .9;
	color: #fff;
}




.dy-confirm-notice {
	padding-top: 26px;
	border-top: 1px solid #252525;
	text-align: center;
}

.dy-confirm-notice p {
	margin: 5px 0;
	font-size: 12px;
	line-height: 1.8;
	color: #777;
}




.dy-confirm-page .dy-section-heading {
	margin-bottom: 24px;
	padding-left: 18px;
	border-left: 4px solid #b5161b;
}

.dy-confirm-page .dy-section-heading__en {
	display: block;
	margin-bottom: 5px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .16em;
	color: #b5161b;
}

.dy-confirm-page .dy-section-heading__title {
	margin: 0;
	font-size: clamp(26px, 3vw, 38px);
	line-height: 1.3;
	color: #fff;
}




@media screen and (max-width: 700px) {

	.dy-confirm-page {
		padding: 42px 16px 70px;
	}

	.dy-confirm-header {
		margin-bottom: 50px;
	}

	.dy-confirm-title {
		font-size: 32px;
	}

	.dy-confirm-description {
		font-size: 15px;
	}

	.dy-confirm-pmpro {
		padding: 22px 18px;
	}

	.dy-confirm-next {
		padding: 30px 20px;
	}

	.dy-confirm-actions {
		grid-template-columns: 1fr;
	}

	.dy-confirm-btn {
		min-height: 68px;
	}

}


.dy-cancel-page {
	background: #050505;
	color: #fff;
	min-height: 100vh;
	padding: 70px 20px 100px;
}

.dy-cancel-container {
	width: min(1080px, 100%);
	margin: 0 auto;
}




.dy-cancel-header {
	margin-bottom: 50px;
}

.dy-cancel-eyebrow {
	display: block;
	margin-bottom: 10px;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .18em;
	color: #d22;
}

.dy-cancel-title {
	margin: 0;
	font-size: clamp(32px, 4vw, 52px);
	line-height: 1.25;
	color: #fff;
}

.dy-cancel-description {
	margin: 18px 0 0;
	font-size: 16px;
	line-height: 1.9;
	color: #ddd;
}

.dy-cancel-description-en {
	margin: 10px 0 0;
	font-size: 13px;
	line-height: 1.8;
	color: #888;
}




.dy-cancel-notice {
	display: grid;
	grid-template-columns: 58px 1fr;
	gap: 24px;
	margin-bottom: 65px;
	padding: 32px;
	border: 1px solid #3a2525;
	border-left: 4px solid #b5161b;
	background: #0d0909;
}

.dy-cancel-notice__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: #b5161b;
	color: #fff;
	font-size: 26px;
	font-weight: 800;
}

.dy-cancel-notice__content h2 {
	margin: 0 0 18px;
	font-size: 24px;
	color: #fff;
}

.dy-cancel-notice__content ul {
	margin: 0;
	padding-left: 1.3em;
}

.dy-cancel-notice__content li {
	margin-bottom: 10px;
	font-size: 14px;
	line-height: 1.8;
	color: #ddd;
}

.dy-cancel-notice__content li:last-child {
	margin-bottom: 0;
}

.dy-cancel-notice__en {
	margin: 22px 0 0;
	padding-top: 18px;
	border-top: 1px solid #2a2020;
	font-size: 12px;
	line-height: 1.8;
	color: #888;
}




.dy-cancel-form-section {
	margin-bottom: 50px;
}

.dy-cancel-page .dy-section-heading {
	margin-bottom: 24px;
	padding-left: 18px;
	border-left: 4px solid #b5161b;
}

.dy-cancel-page .dy-section-heading__en {
	display: block;
	margin-bottom: 5px;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .16em;
	color: #b5161b;
}

.dy-cancel-page .dy-section-heading__title {
	margin: 0;
	font-size: clamp(26px, 3vw, 38px);
	color: #fff;
}




.dy-cancel-pmpro {
	padding: 34px;
	border: 1px solid #292929;
	background: #0b0b0b;
}

.dy-cancel-pmpro,
.dy-cancel-pmpro .pmpro {
	color: #ddd;
}

.dy-cancel-pmpro h2,
.dy-cancel-pmpro h3,
.dy-cancel-pmpro h4 {
	color: #fff;
}

.dy-cancel-pmpro p {
	font-size: 14px;
	line-height: 1.9;
	color: #ccc;
}




.dy-cancel-pmpro table {
	width: 100%;
	margin-top: 24px;
	border-collapse: collapse;
	background: transparent;
}

.dy-cancel-pmpro th,
.dy-cancel-pmpro td {
	padding: 18px 14px;
	border-bottom: 1px solid #292929;
	text-align: left;
	vertical-align: middle;
}

.dy-cancel-pmpro th {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .04em;
	color: #888;
}

.dy-cancel-pmpro td {
	font-size: 14px;
	color: #fff;
}

.dy-cancel-pmpro tr:last-child td {
	border-bottom: 0;
}




.dy-cancel-pmpro a {
	color: #ddd;
}

.dy-cancel-pmpro a[href*="cancel"],
.dy-cancel-pmpro .pmpro_btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 0 20px;
	border: 1px solid #b5161b;
	border-radius: 3px;
	background: transparent;
	color: #fff;
	font-size: 13px;
	font-weight: 800;
	text-decoration: none;
	transition: .2s ease;
}

.dy-cancel-pmpro a[href*="cancel"]:hover,
.dy-cancel-pmpro .pmpro_btn:hover {
	background: #b5161b;
	color: #fff;
}




.dy-cancel-pmpro .pmpro_card,
.dy-cancel-pmpro .pmpro_box {
	padding: 28px;
	border: 1px solid #292929;
	border-radius: 4px;
	background: #080808;
}

.dy-cancel-pmpro .pmpro_message,
.dy-cancel-pmpro .pmpro_alert {
	margin: 24px 0;
	padding: 16px 18px;
	border: 1px solid #4a3a28;
	background: #17130d;
	color: #e4d2a3;
}




.dy-cancel-pmpro input[type="submit"],
.dy-cancel-pmpro button,
.dy-cancel-pmpro .pmpro_btn-submit {
	min-height: 48px;
	padding: 0 24px;
	border-radius: 3px;
	border: 1px solid #444;
	background: #111;
	color: #fff;
	font-size: 14px;
	font-weight: 800;
	cursor: pointer;
	transition: .2s ease;
}

.dy-cancel-pmpro input[type="submit"]:hover,
.dy-cancel-pmpro button:hover,
.dy-cancel-pmpro .pmpro_btn-submit:hover {
	background: #1b1b1b;
	color: #fff;
}




.dy-cancel-pmpro input[value*="cancel"],
.dy-cancel-pmpro input[value*="Cancel"],
.dy-cancel-pmpro button[value*="cancel"],
.dy-cancel-pmpro button[value*="Cancel"] {
	border-color: #b5161b;
	background: #b5161b;
	color: #fff;
}




.dy-cancel-back {
	margin-top: 40px;
	text-align: center;
}

.dy-cancel-back__btn {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-width: 280px;
	min-height: 66px;
	padding: 13px 30px;
	border: 1px solid #444;
	border-radius: 3px;
	background: #0c0c0c;
	color: #fff;
	text-decoration: none;
	transition: .2s ease;
}

.dy-cancel-back__btn span {
	font-size: 14px;
	font-weight: 800;
}

.dy-cancel-back__btn small {
	margin-top: 4px;
	font-size: 10px;
	color: #777;
}

.dy-cancel-back__btn:hover {
	border-color: #777;
	background: #141414;
	color: #fff;
}




@media screen and (max-width: 700px) {

	.dy-cancel-page {
		padding: 42px 16px 70px;
	}

	.dy-cancel-header {
		margin-bottom: 38px;
	}

	.dy-cancel-title {
		font-size: 31px;
	}

	.dy-cancel-description {
		font-size: 14px;
	}

	.dy-cancel-notice {
		grid-template-columns: 1fr;
		gap: 16px;
		padding: 24px 20px;
	}

	.dy-cancel-pmpro {
		padding: 22px 18px;
		overflow-x: auto;
	}

	.dy-cancel-pmpro table {
		min-width: 600px;
	}

	.dy-cancel-back__btn {
		width: 100%;
		min-width: 0;
	}

}



.dy-billing-page {
	background: #050505;
	color: #fff;
	min-height: 100vh;
	padding: 70px 20px 100px;
}

.dy-billing-container {
	width: min(1080px, 100%);
	margin: 0 auto;
}




.dy-billing-header {
	margin-bottom: 48px;
}

.dy-billing-eyebrow {
	display: block;
	margin-bottom: 10px;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .18em;
	color: #d22;
}

.dy-billing-title {
	margin: 0;
	font-size: clamp(32px, 4vw, 52px);
	line-height: 1.25;
	color: #fff;
}

.dy-billing-description {
	margin: 18px 0 0;
	font-size: 16px;
	line-height: 1.9;
	color: #ddd;
}

.dy-billing-description-en {
	margin: 10px 0 0;
	font-size: 13px;
	line-height: 1.8;
	color: #888;
}




.dy-billing-info {
	display: grid;
	grid-template-columns: 58px 1fr;
	gap: 24px;
	margin-bottom: 60px;
	padding: 32px;
	border: 1px solid #252525;
	border-left: 4px solid #b5161b;
	background: #0b0b0b;
}

.dy-billing-info__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: #b5161b;
	color: #fff;
	font-size: 22px;
	font-weight: 800;
}

.dy-billing-info__content h2 {
	margin: 0 0 16px;
	font-size: 24px;
	color: #fff;
}

.dy-billing-info__content p {
	margin: 0 0 10px;
	font-size: 14px;
	line-height: 1.8;
	color: #ddd;
}

.dy-billing-info__en {
	margin-top: 20px !important;
	padding-top: 16px;
	border-top: 1px solid #252525;
	font-size: 12px !important;
	color: #888 !important;
}




.dy-billing-form-section {
	margin-bottom: 55px;
}

.dy-billing-page .dy-section-heading {
	margin-bottom: 24px;
	padding-left: 18px;
	border-left: 4px solid #b5161b;
}

.dy-billing-page .dy-section-heading__en {
	display: block;
	margin-bottom: 5px;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .16em;
	color: #b5161b;
}

.dy-billing-page .dy-section-heading__title {
	margin: 0;
	font-size: clamp(26px, 3vw, 38px);
	line-height: 1.3;
	color: #fff;
}




.dy-billing-pmpro {
	padding: 34px;
	border: 1px solid #292929;
	background: #0b0b0b;
}

.dy-billing-pmpro,
.dy-billing-pmpro .pmpro {
	color: #ddd;
}

.dy-billing-pmpro h2,
.dy-billing-pmpro h3,
.dy-billing-pmpro h4,
.dy-billing-pmpro strong {
	color: #fff;
}

.dy-billing-pmpro p {
	font-size: 14px;
	line-height: 1.8;
	color: #ccc;
}




.dy-billing-pmpro .pmpro_card,
.dy-billing-pmpro .pmpro_box,
.dy-billing-pmpro .pmpro_section,
.dy-billing-pmpro .pmpro_billing_wrap {
	margin-bottom: 18px;
	padding: 26px;
	border: 1px solid #2a2a2a;
	border-radius: 4px;
	background: #080808;
}

.dy-billing-pmpro .pmpro_card:last-child,
.dy-billing-pmpro .pmpro_box:last-child {
	margin-bottom: 0;
}




.dy-billing-pmpro table {
	width: 100%;
	border-collapse: collapse;
	background: transparent;
	color: #ddd;
}

.dy-billing-pmpro th,
.dy-billing-pmpro td {
	padding: 16px 14px;
	border-bottom: 1px solid #292929;
	text-align: left;
	vertical-align: middle;
}

.dy-billing-pmpro th {
	font-size: 12px;
	font-weight: 700;
	color: #888;
}

.dy-billing-pmpro td {
	font-size: 14px;
	color: #fff;
}




.dy-billing-pmpro label {
	display: block;
	margin-bottom: 7px;
	font-size: 13px;
	font-weight: 700;
	color: #fff;
}

.dy-billing-pmpro input[type="text"],
.dy-billing-pmpro input[type="email"],
.dy-billing-pmpro input[type="tel"],
.dy-billing-pmpro input[type="number"],
.dy-billing-pmpro input[type="password"],
.dy-billing-pmpro select,
.dy-billing-pmpro textarea {
	width: 100%;
	max-width: none;
	box-sizing: border-box;
	padding: 14px 15px;
	border: 1px solid #333;
	border-radius: 4px;
	background: #151515;
	color: #fff;
	font-size: 16px;
	box-shadow: none;
}

.dy-billing-pmpro input:focus,
.dy-billing-pmpro select:focus,
.dy-billing-pmpro textarea:focus {
	outline: none;
	border-color: #b5161b;
	background: #181818;
}




.dy-billing-pmpro a {
	color: #ddd;
	text-decoration: underline;
}

.dy-billing-pmpro a:hover {
	color: #fff;
}




.dy-billing-pmpro a[href*="cancel"] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 0 18px;
	border: 1px solid #b5161b;
	border-radius: 3px;
	background: transparent;
	color: #fff;
	font-size: 13px;
	font-weight: 800;
	text-decoration: none;
	transition: .2s ease;
}

.dy-billing-pmpro a[href*="cancel"]:hover {
	background: #b5161b;
	color: #fff;
}




.dy-billing-pmpro input[type="submit"],
.dy-billing-pmpro button,
.dy-billing-pmpro .pmpro_btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding: 0 26px;
	border: 0;
	border-radius: 3px;
	background: #b5161b;
	color: #fff;
	font-size: 14px;
	font-weight: 800;
	text-decoration: none;
	cursor: pointer;
	transition: .2s ease;
}

.dy-billing-pmpro input[type="submit"]:hover,
.dy-billing-pmpro button:hover,
.dy-billing-pmpro .pmpro_btn:hover {
	opacity: .88;
	color: #fff;
	transform: translateY(-1px);
}




.dy-billing-notice {
	margin-top: 45px;
	padding: 30px 32px;
	border: 1px solid #282828;
	background: #090909;
}

.dy-billing-notice h3 {
	margin: 0 0 18px;
	font-size: 20px;
	color: #fff;
}

.dy-billing-notice ul {
	margin: 0;
	padding-left: 1.3em;
}

.dy-billing-notice li {
	margin-bottom: 9px;
	font-size: 13px;
	line-height: 1.8;
	color: #aaa;
}

.dy-billing-notice__en {
	margin: 20px 0 0;
	padding-top: 17px;
	border-top: 1px solid #242424;
	font-size: 12px;
	line-height: 1.8;
	color: #777;
}




.dy-billing-back {
	margin-top: 38px;
	text-align: center;
}

.dy-billing-back__btn {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-width: 280px;
	min-height: 66px;
	padding: 13px 30px;
	border: 1px solid #444;
	border-radius: 3px;
	background: #0c0c0c;
	color: #fff;
	text-decoration: none;
	transition: .2s ease;
}

.dy-billing-back__btn span {
	font-size: 14px;
	font-weight: 800;
}

.dy-billing-back__btn small {
	margin-top: 4px;
	font-size: 10px;
	color: #777;
}

.dy-billing-back__btn:hover {
	border-color: #777;
	background: #141414;
	color: #fff;
}




@media screen and (max-width: 700px) {

	.dy-billing-page {
		padding: 42px 16px 70px;
	}

	.dy-billing-header {
		margin-bottom: 38px;
	}

	.dy-billing-title {
		font-size: 31px;
	}

	.dy-billing-description {
		font-size: 14px;
	}

	.dy-billing-info {
		grid-template-columns: 1fr;
		gap: 16px;
		padding: 24px 20px;
	}

	.dy-billing-pmpro {
		padding: 22px 18px;
	}

	.dy-billing-back__btn {
		width: 100%;
		min-width: 0;
	}

}



.dy-orders-page {
	background: #050505;
	color: #fff;
	min-height: 100vh;
	padding: 70px 20px 100px;
}

.dy-orders-container {
	width: min(1080px, 100%);
	margin: 0 auto;
}




.dy-orders-header {
	margin-bottom: 48px;
}

.dy-orders-eyebrow {
	display: block;
	margin-bottom: 10px;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .18em;
	color: #d22;
}

.dy-orders-title {
	margin: 0;
	font-size: clamp(32px, 4vw, 52px);
	line-height: 1.25;
	color: #fff;
}

.dy-orders-description {
	margin: 18px 0 0;
	font-size: 16px;
	line-height: 1.9;
	color: #ddd;
}

.dy-orders-description-en {
	margin: 10px 0 0;
	font-size: 13px;
	line-height: 1.8;
	color: #888;
}




.dy-orders-info {
	display: grid;
	grid-template-columns: 58px 1fr;
	gap: 24px;
	margin-bottom: 60px;
	padding: 32px;
	border: 1px solid #252525;
	border-left: 4px solid #b5161b;
	background: #0b0b0b;
}

.dy-orders-info__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: #b5161b;
	color: #fff;
	font-size: 22px;
	font-weight: 800;
}

.dy-orders-info__content h2 {
	margin: 0 0 16px;
	font-size: 24px;
	color: #fff;
}

.dy-orders-info__content p {
	margin: 0 0 10px;
	font-size: 14px;
	line-height: 1.8;
	color: #ddd;
}

.dy-orders-info__en {
	margin-top: 20px !important;
	padding-top: 16px;
	border-top: 1px solid #252525;
	font-size: 12px !important;
	color: #888 !important;
}




.dy-orders-history {
	margin-bottom: 55px;
}

.dy-orders-page .dy-section-heading {
	margin-bottom: 24px;
	padding-left: 18px;
	border-left: 4px solid #b5161b;
}

.dy-orders-page .dy-section-heading__en {
	display: block;
	margin-bottom: 5px;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .16em;
	color: #b5161b;
}

.dy-orders-page .dy-section-heading__title {
	margin: 0;
	font-size: clamp(26px, 3vw, 38px);
	line-height: 1.3;
	color: #fff;
}




.dy-orders-pmpro {
	padding: 34px;
	border: 1px solid #292929;
	background: #0b0b0b;
}

.dy-orders-pmpro,
.dy-orders-pmpro .pmpro {
	color: #ddd;
}

.dy-orders-pmpro h2,
.dy-orders-pmpro h3,
.dy-orders-pmpro h4,
.dy-orders-pmpro strong {
	color: #fff;
}

.dy-orders-pmpro p {
	font-size: 14px;
	line-height: 1.8;
	color: #ccc;
}




.dy-orders-pmpro table {
	width: 100%;
	border-collapse: collapse;
	background: transparent;
	color: #ddd;
}

.dy-orders-pmpro thead {
	background: #111;
}

.dy-orders-pmpro th,
.dy-orders-pmpro td {
	padding: 16px 14px;
	border-bottom: 1px solid #292929;
	text-align: left;
	vertical-align: middle;
}

.dy-orders-pmpro th {
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .06em;
	color: #888;
}

.dy-orders-pmpro td {
	font-size: 14px;
	color: #fff;
}

.dy-orders-pmpro tbody tr {
	transition: background .2s ease;
}

.dy-orders-pmpro tbody tr:hover {
	background: #101010;
}

.dy-orders-pmpro tr:last-child td {
	border-bottom: 0;
}




.dy-orders-pmpro .pmpro_card,
.dy-orders-pmpro .pmpro_box,
.dy-orders-pmpro .pmpro_section,
.dy-orders-pmpro .pmpro_invoice_wrap {
	margin-bottom: 18px;
	padding: 26px;
	border: 1px solid #2a2a2a;
	border-radius: 4px;
	background: #080808;
}

.dy-orders-pmpro .pmpro_card:last-child,
.dy-orders-pmpro .pmpro_box:last-child {
	margin-bottom: 0;
}




.dy-orders-pmpro a {
	color: #ddd;
	text-decoration: underline;
}

.dy-orders-pmpro a:hover {
	color: #fff;
}




.dy-orders-pmpro a[href*="invoice"],
.dy-orders-pmpro a[href*="order"] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 40px;
	padding: 0 16px;
	border: 1px solid #444;
	border-radius: 3px;
	background: #111;
	color: #fff;
	font-size: 12px;
	font-weight: 800;
	text-decoration: none;
	transition: .2s ease;
}

.dy-orders-pmpro a[href*="invoice"]:hover,
.dy-orders-pmpro a[href*="order"]:hover {
	border-color: #b5161b;
	background: #b5161b;
	color: #fff;
}




.dy-orders-pmpro .pmpro_message,
.dy-orders-pmpro .pmpro_alert,
.dy-orders-pmpro .pmpro_success,
.dy-orders-pmpro .pmpro_error {
	margin: 20px 0;
	padding: 16px 18px;
	border: 1px solid #333;
	border-radius: 3px;
	background: #111;
	color: #ddd;
}




.dy-orders-notice {
	margin-top: 45px;
	padding: 30px 32px;
	border: 1px solid #282828;
	background: #090909;
}

.dy-orders-notice h3 {
	margin: 0 0 18px;
	font-size: 20px;
	color: #fff;
}

.dy-orders-notice ul {
	margin: 0;
	padding-left: 1.3em;
}

.dy-orders-notice li {
	margin-bottom: 9px;
	font-size: 13px;
	line-height: 1.8;
	color: #aaa;
}

.dy-orders-notice__en {
	margin: 20px 0 0;
	padding-top: 17px;
	border-top: 1px solid #242424;
	font-size: 12px;
	line-height: 1.8;
	color: #777;
}




.dy-orders-back {
	margin-top: 38px;
	text-align: center;
}

.dy-orders-back__btn {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-width: 280px;
	min-height: 66px;
	padding: 13px 30px;
	border: 1px solid #444;
	border-radius: 3px;
	background: #0c0c0c;
	color: #fff;
	text-decoration: none;
	transition: .2s ease;
}

.dy-orders-back__btn span {
	font-size: 14px;
	font-weight: 800;
}

.dy-orders-back__btn small {
	margin-top: 4px;
	font-size: 10px;
	color: #777;
}

.dy-orders-back__btn:hover {
	border-color: #777;
	background: #141414;
	color: #fff;
}




@media screen and (max-width: 700px) {

	.dy-orders-page {
		padding: 42px 16px 70px;
	}

	.dy-orders-header {
		margin-bottom: 38px;
	}

	.dy-orders-title {
		font-size: 31px;
	}

	.dy-orders-description {
		font-size: 14px;
	}

	.dy-orders-info {
		grid-template-columns: 1fr;
		gap: 16px;
		padding: 24px 20px;
	}

	.dy-orders-pmpro {
		padding: 22px 18px;
		overflow-x: auto;
	}

	.dy-orders-pmpro table {
		min-width: 700px;
	}

	.dy-orders-back__btn {
		width: 100%;
		min-width: 0;
	}

}



.dy-profile-page {
	background: #050505;
	color: #fff;
	min-height: 100vh;
	padding: 70px 20px 100px;
}

.dy-profile-container {
	width: min(1080px, 100%);
	margin: 0 auto;
}




.dy-profile-header {
	margin-bottom: 48px;
}

.dy-profile-eyebrow {
	display: block;
	margin-bottom: 10px;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .18em;
	color: #d22;
}

.dy-profile-title {
	margin: 0;
	font-size: clamp(32px, 4vw, 52px);
	line-height: 1.25;
	color: #fff;
}

.dy-profile-description {
	margin: 18px 0 0;
	font-size: 16px;
	line-height: 1.9;
	color: #ddd;
}

.dy-profile-description-en {
	margin: 10px 0 0;
	font-size: 13px;
	line-height: 1.8;
	color: #888;
}




.dy-profile-info {
	display: grid;
	grid-template-columns: 58px 1fr;
	gap: 24px;
	margin-bottom: 60px;
	padding: 32px;
	border: 1px solid #252525;
	border-left: 4px solid #b5161b;
	background: #0b0b0b;
}

.dy-profile-info__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: #b5161b;
	color: #fff;
	font-size: 20px;
	font-weight: 800;
}

.dy-profile-info__content h2 {
	margin: 0 0 16px;
	font-size: 24px;
	color: #fff;
}

.dy-profile-info__content p {
	margin: 0 0 10px;
	font-size: 14px;
	line-height: 1.8;
	color: #ddd;
}

.dy-profile-info__en {
	margin-top: 20px !important;
	padding-top: 16px;
	border-top: 1px solid #252525;
	font-size: 12px !important;
	color: #888 !important;
}




.dy-profile-form-section {
	margin-bottom: 55px;
}

.dy-profile-page .dy-section-heading {
	margin-bottom: 24px;
	padding-left: 18px;
	border-left: 4px solid #b5161b;
}

.dy-profile-page .dy-section-heading__en {
	display: block;
	margin-bottom: 5px;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .16em;
	color: #b5161b;
}

.dy-profile-page .dy-section-heading__title {
	margin: 0;
	font-size: clamp(26px, 3vw, 38px);
	line-height: 1.3;
	color: #fff;
}




.dy-profile-pmpro {
	padding: 34px;
	border: 1px solid #292929;
	background: #0b0b0b;
}

.dy-profile-pmpro,
.dy-profile-pmpro .pmpro {
	color: #ddd;
}

.dy-profile-pmpro h2,
.dy-profile-pmpro h3,
.dy-profile-pmpro h4,
.dy-profile-pmpro legend,
.dy-profile-pmpro strong {
	color: #fff;
}

.dy-profile-pmpro p {
	font-size: 14px;
	line-height: 1.8;
	color: #ccc;
}




.dy-profile-pmpro fieldset {
	margin: 0 0 34px;
	padding: 0 0 30px;
	border: 0;
	border-bottom: 1px solid #292929;
}

.dy-profile-pmpro fieldset:last-child {
	margin-bottom: 0;
	border-bottom: 0;
}

.dy-profile-pmpro legend {
	margin-bottom: 20px;
	font-size: 20px;
	font-weight: 800;
}

.dy-profile-pmpro .pmpro_member_profile_edit-field,
.dy-profile-pmpro .pmpro_form_field,
.dy-profile-pmpro .pmpro_checkout-field {
	margin-bottom: 20px;
}




.dy-profile-pmpro label {
	display: block;
	margin-bottom: 7px;
	font-size: 13px;
	font-weight: 700;
	color: #fff;
}




.dy-profile-pmpro input[type="text"],
.dy-profile-pmpro input[type="email"],
.dy-profile-pmpro input[type="tel"],
.dy-profile-pmpro input[type="password"],
.dy-profile-pmpro input[type="number"],
.dy-profile-pmpro input[type="url"],
.dy-profile-pmpro select,
.dy-profile-pmpro textarea {
	width: 100%;
	max-width: none;
	box-sizing: border-box;
	padding: 14px 15px;
	border: 1px solid #333;
	border-radius: 4px;
	background: #151515;
	color: #fff;
	font-size: 16px;
	box-shadow: none;
}

.dy-profile-pmpro textarea {
	min-height: 120px;
	resize: vertical;
}

.dy-profile-pmpro input:focus,
.dy-profile-pmpro select:focus,
.dy-profile-pmpro textarea:focus {
	outline: none;
	border-color: #b5161b;
	background: #181818;
}




.dy-profile-pmpro input[type="checkbox"],
.dy-profile-pmpro input[type="radio"] {
	accent-color: #b5161b;
}




.dy-profile-pmpro small,
.dy-profile-pmpro .pmpro_form_hint,
.dy-profile-pmpro .pmpro_asterisk,
.dy-profile-pmpro .lite,
.dy-profile-pmpro .description {
	color: #888;
	font-size: 12px;
	line-height: 1.6;
}




.dy-profile-pmpro a {
	color: #ddd;
	text-decoration: underline;
}

.dy-profile-pmpro a:hover {
	color: #fff;
}




.dy-profile-pmpro input[type="submit"],
.dy-profile-pmpro button[type="submit"],
.dy-profile-pmpro .pmpro_btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding: 0 28px;
	border: 0;
	border-radius: 3px;
	background: #b5161b;
	color: #fff;
	font-size: 14px;
	font-weight: 800;
	text-decoration: none;
	cursor: pointer;
	transition: .2s ease;
}

.dy-profile-pmpro input[type="submit"]:hover,
.dy-profile-pmpro button[type="submit"]:hover,
.dy-profile-pmpro .pmpro_btn:hover {
	opacity: .88;
	color: #fff;
	transform: translateY(-1px);
}




.dy-profile-pmpro .pmpro_message,
.dy-profile-pmpro .pmpro_alert,
.dy-profile-pmpro .pmpro_success,
.dy-profile-pmpro .pmpro_error {
	margin: 20px 0;
	padding: 16px 18px;
	border: 1px solid #333;
	border-radius: 3px;
	background: #111;
	color: #ddd;
}




.dy-profile-notice {
	margin-top: 45px;
	padding: 30px 32px;
	border: 1px solid #282828;
	background: #090909;
}

.dy-profile-notice h3 {
	margin: 0 0 18px;
	font-size: 20px;
	color: #fff;
}

.dy-profile-notice ul {
	margin: 0;
	padding-left: 1.3em;
}

.dy-profile-notice li {
	margin-bottom: 9px;
	font-size: 13px;
	line-height: 1.8;
	color: #aaa;
}

.dy-profile-notice__en {
	margin: 20px 0 0;
	padding-top: 17px;
	border-top: 1px solid #242424;
	font-size: 12px;
	line-height: 1.8;
	color: #777;
}




.dy-profile-back {
	margin-top: 38px;
	text-align: center;
}

.dy-profile-back__btn {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-width: 280px;
	min-height: 66px;
	padding: 13px 30px;
	border: 1px solid #444;
	border-radius: 3px;
	background: #0c0c0c;
	color: #fff;
	text-decoration: none;
	transition: .2s ease;
}

.dy-profile-back__btn span {
	font-size: 14px;
	font-weight: 800;
}

.dy-profile-back__btn small {
	margin-top: 4px;
	font-size: 10px;
	color: #777;
}

.dy-profile-back__btn:hover {
	border-color: #777;
	background: #141414;
	color: #fff;
}




@media screen and (max-width: 700px) {

	.dy-profile-page {
		padding: 42px 16px 70px;
	}

	.dy-profile-header {
		margin-bottom: 38px;
	}

	.dy-profile-title {
		font-size: 31px;
	}

	.dy-profile-description {
		font-size: 14px;
	}

	.dy-profile-info {
		grid-template-columns: 1fr;
		gap: 16px;
		padding: 24px 20px;
	}

	.dy-profile-pmpro {
		padding: 22px 18px;
	}

	.dy-profile-pmpro input[type="submit"],
	.dy-profile-pmpro button[type="submit"],
	.dy-profile-pmpro .pmpro_btn {
		width: 100%;
	}

	.dy-profile-back__btn {
		width: 100%;
		min-width: 0;
	}

}



.dy-password-page .dy-profile-info {
	border-left-color: #b5161b;
}

.dy-password-page .dy-profile-pmpro input[type="password"] {
	min-height: 52px;
	font-size: 16px;
	letter-spacing: .04em;
}

.dy-password-page .dy-profile-pmpro input[type="password"]:focus {
	border-color: #b5161b;
	box-shadow: 0 0 0 1px #b5161b;
}

.dy-password-page .dy-profile-pmpro .pmpro_btn,
.dy-password-page .dy-profile-pmpro button[type="submit"],
.dy-password-page .dy-profile-pmpro input[type="submit"] {
	min-width: 220px;
}



.dy-levels-page {
	background: #050505;
	color: #fff;
	min-height: 100vh;
	padding: 70px 20px 100px;
}

.dy-levels-container {
	width: min(1080px, 100%);
	margin: 0 auto;
}




.dy-levels-header {
	margin-bottom: 50px;
}

.dy-levels-eyebrow {
	display: block;
	margin-bottom: 10px;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .18em;
	color: #d22;
}

.dy-levels-title {
	margin: 0;
	font-size: clamp(34px, 4vw, 54px);
	line-height: 1.2;
	color: #fff;
}

.dy-levels-description {
	margin: 18px 0 0;
	font-size: 16px;
	line-height: 1.9;
	color: #ddd;
}

.dy-levels-description-en {
	margin: 10px 0 0;
	font-size: 13px;
	line-height: 1.8;
	color: #888;
}




.dy-levels-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
	margin-bottom: 60px;
}




.dy-level-card {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 36px 32px;
	border: 1px solid #292929;
	background: #0b0b0b;
}

.dy-level-card--premium {
	border-top: 4px solid #b5161b;
}

.dy-level-card--kuzu {
	border-top: 4px solid #444;
}

.dy-level-card__label {
	display: inline-block;
	align-self: flex-start;
	margin-bottom: 18px;
	padding: 5px 9px;
	border: 1px solid #333;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .12em;
	color: #999;
}

.dy-level-card--premium .dy-level-card__label {
	border-color: #5a1518;
	color: #d55;
}

.dy-level-card__title {
	margin: 0;
	font-size: clamp(27px, 3vw, 38px);
	line-height: 1.3;
	color: #fff;
}

.dy-level-card__subtitle {
	margin: 7px 0 0;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .15em;
	color: #777;
}




.dy-level-card__price {
	margin: 30px 0 28px;
	padding: 24px 0;
	border-top: 1px solid #252525;
	border-bottom: 1px solid #252525;
}

.dy-level-card__price strong {
	font-size: 43px;
	line-height: 1;
	color: #fff;
}

.dy-level-card__price span {
	margin-left: 6px;
	font-size: 13px;
	color: #aaa;
}

.dy-level-card__price small {
	display: block;
	margin-top: 10px;
	font-size: 11px;
	color: #777;
}




.dy-level-card__features {
	margin: 0 0 32px;
	padding: 0;
	list-style: none;
}

.dy-level-card__features li {
	position: relative;
	margin-bottom: 13px;
	padding-left: 23px;
	font-size: 14px;
	line-height: 1.7;
	color: #ddd;
}

.dy-level-card__features li::before {
	content: "✓";
	position: absolute;
	top: 0;
	left: 0;
	color: #b5161b;
	font-weight: 900;
}




.dy-level-card__button {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: 64px;
	margin-top: auto;
	padding: 12px 20px;
	border: 1px solid #444;
	border-radius: 3px;
	background: #111;
	color: #fff;
	text-decoration: none;
	transition: .2s ease;
}

.dy-level-card__button--primary {
	border-color: #b5161b;
	background: #b5161b;
}

.dy-level-card__button span {
	font-size: 14px;
	font-weight: 800;
}

.dy-level-card__button small {
	margin-top: 4px;
	font-size: 10px;
	color: #888;
}

.dy-level-card__button--primary small {
	color: rgba(255,255,255,.7);
}

.dy-level-card__button:hover {
	border-color: #777;
	background: #191919;
	color: #fff;
	transform: translateY(-1px);
}

.dy-level-card__button--primary:hover {
	border-color: #d22;
	background: #d22;
}




.dy-levels-notice {
	margin-bottom: 28px;
	padding: 30px 32px;
	border: 1px solid #292929;
	border-left: 4px solid #b5161b;
	background: #0a0a0a;
}

.dy-levels-notice h2 {
	margin: 0 0 16px;
	font-size: 22px;
	color: #fff;
}

.dy-levels-notice p {
	margin: 0 0 9px;
	font-size: 14px;
	line-height: 1.8;
	color: #bbb;
}

.dy-levels-notice__en {
	margin-top: 18px !important;
	padding-top: 16px;
	border-top: 1px solid #242424;
	font-size: 12px !important;
	color: #777 !important;
}




.dy-levels-member {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 30px;
	padding: 30px 32px;
	border: 1px solid #292929;
	background: #080808;
}

.dy-levels-member__eyebrow {
	display: block;
	margin-bottom: 7px;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .15em;
	color: #b5161b;
}

.dy-levels-member h2 {
	margin: 0;
	font-size: 24px;
	color: #fff;
}

.dy-levels-member p {
	margin: 8px 0 0;
	font-size: 13px;
	color: #999;
}

.dy-levels-member__button {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-width: 210px;
	min-height: 62px;
	padding: 10px 25px;
	border: 1px solid #444;
	border-radius: 3px;
	background: #111;
	color: #fff;
	text-decoration: none;
	transition: .2s ease;
}

.dy-levels-member__button span {
	font-size: 13px;
	font-weight: 800;
}

.dy-levels-member__button small {
	margin-top: 3px;
	font-size: 10px;
	color: #777;
}

.dy-levels-member__button:hover {
	border-color: #777;
	background: #171717;
	color: #fff;
}




@media screen and (max-width: 760px) {

	.dy-levels-page {
		padding: 42px 16px 70px;
	}

	.dy-levels-title {
		font-size: 32px;
	}

	.dy-levels-description {
		font-size: 14px;
	}

	.dy-levels-grid {
		grid-template-columns: 1fr;
	}

	.dy-level-card {
		padding: 28px 22px;
	}

	.dy-level-card__price strong {
		font-size: 38px;
	}

	.dy-levels-member {
		flex-direction: column;
		align-items: stretch;
		padding: 25px 22px;
	}

	.dy-levels-member__button {
		width: 100%;
		min-width: 0;
	}

}



.dy-header-nav {
	display: flex;
	align-items: center;
	gap: 28px;
}

.dy-header-nav a {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	color: #fff;
	text-decoration: none;
	line-height: 1.15;
	transition: opacity .2s ease;
}

.dy-header-nav a:hover {
	opacity: .7;
	color: #fff;
	text-decoration: none;
}

.dy-header-nav a span {
	display: block;
	font-size: 13px;
	font-weight: 800;
	white-space: nowrap;
}

.dy-header-nav a small {
	display: block;
	margin-top: 4px;
	font-size: 9px;
	font-weight: 500;
	letter-spacing: .04em;
	color: #777;
	white-space: nowrap;
}




@media screen and (max-width: 900px) {

	.dy-header-nav {
		gap: 18px;
	}

	.dy-header-nav a span {
		font-size: 12px;
	}

	.dy-header-nav a small {
		font-size: 8px;
	}

}



.dy-site-header {
	position: relative;
	z-index: 1000;
	width: 100%;
	background: #050505;
	border-bottom: 1px solid #181818;
}

.dy-header-inner {
	display: flex;
	align-items: center;
	width: min(1320px, calc(100% - 40px));
	min-height: 76px;
	margin: 0 auto;
}




.dy-header-logo {
	flex: 0 0 auto;
	margin-right: 38px;
}

.dy-header-logo a {
	display: block;
	line-height: 0;
}

.dy-header-logo img {
	display: block;
	width: auto;
	max-width: 82px;
	max-height: 58px;
}




.dy-header-menu {
	display: flex;
	align-items: center;
	flex: 1;
	min-width: 0;
}




.dy-header-nav {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 28px;

	
	margin-right: auto;
}

.dy-header-nav a {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	color: #fff;
	text-decoration: none;
	line-height: 1.15;
	transition: opacity .2s ease;
}

.dy-header-nav a:hover {
	color: #fff;
	text-decoration: none;
	opacity: .65;
}

.dy-header-nav a span {
	display: block;
	font-size: 13px;
	font-weight: 800;
	white-space: nowrap;
}

.dy-header-nav a small {
	display: block;
	margin-top: 5px;
	font-size: 9px;
	font-weight: 500;
	letter-spacing: .03em;
	color: #777;
	white-space: nowrap;
}




.dy-header-account {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-left: 30px;
}

.dy-header-account__btn {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-width: 92px;
	min-height: 42px;
	padding: 7px 14px;
	border: 1px solid #3b3b3b;
	border-radius: 4px;
	background: #090909;
	color: #fff;
	text-decoration: none;
	transition: .2s ease;
}

.dy-header-account__btn span {
	font-size: 11px;
	font-weight: 800;
}

.dy-header-account__btn small {
	margin-top: 3px;
	font-size: 8px;
	color: #888;
}

.dy-header-account__btn:hover {
	border-color: #777;
	background: #141414;
	color: #fff;
}

.dy-header-account__btn--logout {
	border-color: #b5161b;
	background: #d71920;
}

.dy-header-account__btn--logout:hover {
	border-color: #e22;
	background: #e22;
}




.dy-menu-toggle {
	display: none;
	width: 42px;
	height: 42px;
	margin-left: auto;
	padding: 9px;
	border: 1px solid #333;
	border-radius: 4px;
	background: #0b0b0b;
	cursor: pointer;
}

.dy-menu-toggle span {
	display: block;
	width: 100%;
	height: 2px;
	margin: 5px 0;
	background: #fff;
	transition: .25s ease;
}




@media screen and (max-width: 800px) {

	.dy-header-inner {
		position: relative;
		width: calc(100% - 28px);
		min-height: 64px;
	}

	.dy-header-logo {
		margin-right: 0;
	}

	.dy-header-logo img {
		max-width: 68px;
		max-height: 48px;
	}

	.dy-menu-toggle {
		display: block;
	}


	
	.dy-header-menu {
		position: absolute;
		top: 100%;
		left: -14px;
		right: -14px;

		display: none;
		flex-direction: column;
		align-items: stretch;

		padding: 12px 18px 20px;

		background: #050505;
		border-top: 1px solid #202020;
		border-bottom: 1px solid #202020;

		box-shadow: 0 12px 30px rgba(0,0,0,.55);
	}

	.dy-header-menu.is-open {
		display: flex;
	}


	
	.dy-header-nav {
		display: flex;
		flex-direction: column;
		align-items: stretch;
		gap: 0;
		width: 100%;
		margin: 0;
	}

	.dy-header-nav a {
		display: flex;
		align-items: flex-start;
		padding: 15px 4px;
		border-bottom: 1px solid #1f1f1f;
	}

	.dy-header-nav a span {
		font-size: 14px;
	}

	.dy-header-nav a small {
		margin-top: 4px;
		font-size: 9px;
	}


	
	.dy-header-account {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 10px;
		width: 100%;
		margin: 16px 0 0;
	}

	.dy-header-account__btn {
		width: 100%;
		min-height: 48px;
	}


	
	.dy-menu-toggle.is-open span:nth-child(1) {
		transform: translateY(7px) rotate(45deg);
	}

	.dy-menu-toggle.is-open span:nth-child(2) {
		opacity: 0;
	}

	.dy-menu-toggle.is-open span:nth-child(3) {
		transform: translateY(-7px) rotate(-45deg);
	}

}



.dy-site-footer {
	background: #050505;
	color: #fff;
	border-top: 1px solid #1d1d1d;
}

.dy-footer-container {
	width: min(1320px, calc(100% - 40px));
	margin: 0 auto;
	padding: 58px 0 26px;
}




.dy-footer-top {
	display: grid;
	grid-template-columns: 1.7fr 1fr 1fr 1.2fr;
	gap: 50px;
	padding-bottom: 48px;
}




.dy-footer-brand {
	max-width: 340px;
}

.dy-footer-logo {
	display: inline-block;
	margin-bottom: 20px;
	line-height: 0;
}

.dy-footer-logo img {
	display: block;
	width: auto;
	max-width: 100px;
	max-height: 70px;
}

.dy-footer-brand__text {
	margin: 0;
	font-size: 13px;
	line-height: 1.9;
	color: #aaa;
}

.dy-footer-brand__text-en {
	margin: 13px 0 0;
	font-size: 10px;
	line-height: 1.7;
	color: #666;
}




.dy-footer-column__title {
	display: block;
	margin-bottom: 18px;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .16em;
	color: #b5161b;
}

.dy-footer-nav {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.dy-footer-nav a {
	display: inline-block;
	width: fit-content;
	color: #bbb;
	font-size: 13px;
	line-height: 1.5;
	text-decoration: none;
	transition: .2s ease;
}

.dy-footer-nav a:hover {
	color: #fff;
	transform: translateX(2px);
}




.dy-footer-bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 30px;
	padding-top: 22px;
	border-top: 1px solid #1d1d1d;
}

.dy-footer-bottom p {
	margin: 0;
	font-size: 10px;
	color: #666;
}

.dy-footer-bottom__note {
	text-align: right;
}




@media screen and (max-width: 800px) {

	.dy-footer-container {
		width: calc(100% - 32px);
		padding: 42px 0 22px;
	}

	.dy-footer-top {
		grid-template-columns: 1fr 1fr;
		gap: 34px 28px;
		padding-bottom: 38px;
	}

	.dy-footer-brand {
		grid-column: 1 / -1;
		max-width: none;
	}

	.dy-footer-logo img {
		max-width: 82px;
	}

	.dy-footer-brand__text {
		max-width: 420px;
		font-size: 12px;
	}

	.dy-footer-bottom {
		flex-direction: column;
		align-items: flex-start;
		gap: 8px;
	}

	.dy-footer-bottom__note {
		text-align: left;
	}

}

@media screen and (max-width: 480px) {

	.dy-footer-top {
		grid-template-columns: 1fr;
	}

	.dy-footer-brand {
		grid-column: auto;
	}

}



.dy-membership-gate {
	margin: 32px 0 48px;
	padding: 1px;
	background: linear-gradient(
		135deg,
		#6b1317 0%,
		#292929 35%,
		#292929 100%
	);
}

.dy-membership-gate__inner {
	padding: 52px 42px;
	background:
		radial-gradient(
			circle at 50% 0%,
			rgba(181, 22, 27, .16),
			transparent 38%
		),
		#080808;
	text-align: center;
}

.dy-membership-gate__eyebrow {
	display: block;
	margin-bottom: 18px;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .2em;
	color: #d22;
}

.dy-membership-gate__lock {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	margin: 0 auto 22px;
	border: 1px solid #612025;
	border-radius: 50%;
	background: #19090b;
}

.dy-membership-gate__lock span {
	font-size: 22px;
}

.dy-membership-gate__title {
	margin: 0;
	font-size: clamp(27px, 3.2vw, 42px);
	line-height: 1.45;
	color: #fff;
}

.dy-membership-gate__title-en {
	margin: 14px 0 0;
	font-size: 11px;
	line-height: 1.7;
	color: #777;
}




.dy-membership-gate__visual {
	position: relative;
	max-width: 820px;
	margin: 34px auto 0;
	overflow: hidden;
	border: 1px solid #292929;
	background: #000;
}

.dy-membership-gate__image {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	opacity: .55;
	filter: brightness(.7);
}

.dy-membership-gate__visual-overlay {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	background: rgba(0,0,0,.18);
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .18em;
	color: rgba(255,255,255,.8);
}

.dy-membership-gate__play {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 62px;
	height: 62px;
	padding-left: 4px;
	border: 1px solid rgba(255,255,255,.45);
	border-radius: 50%;
	background: rgba(0,0,0,.55);
	font-size: 21px;
	color: #fff;
}




.dy-membership-gate__offer {
	max-width: 680px;
	margin: 0 auto;
}

.dy-membership-gate__price {
	margin: 34px 0 25px;
}

.dy-membership-gate__price strong {
	font-size: 44px;
	line-height: 1;
	color: #fff;
}

.dy-membership-gate__price span {
	margin-left: 6px;
	font-size: 13px;
	color: #aaa;
}

.dy-membership-gate__price small {
	display: block;
	margin-top: 10px;
	font-size: 10px;
	color: #666;
}




.dy-membership-gate__features {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 11px 25px;
	max-width: 600px;
	margin: 0 auto 32px;
	padding: 23px 0;
	border-top: 1px solid #252525;
	border-bottom: 1px solid #252525;
	list-style: none;
	text-align: left;
}

.dy-membership-gate__features li {
	position: relative;
	margin: 0;
	padding-left: 23px;
	font-size: 13px;
	line-height: 1.7;
	color: #ccc;
}

.dy-membership-gate__features li::before {
	content: "✓";
	position: absolute;
	top: 0;
	left: 0;
	font-weight: 900;
	color: #d22;
}




.dy-membership-gate__join {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: min(440px, 100%);
	min-height: 70px;
	margin: 0 auto;
	padding: 12px 24px;
	border-radius: 4px;
	background: #b5161b;
	color: #fff;
	text-decoration: none;
	transition: .2s ease;
}

.dy-membership-gate__join span {
	font-size: 15px;
	font-weight: 800;
}

.dy-membership-gate__join small {
	margin-top: 4px;
	font-size: 9px;
	letter-spacing: .08em;
	color: rgba(255,255,255,.7);
}

.dy-membership-gate__join:hover {
	background: #d21b21;
	color: #fff;
	transform: translateY(-1px);
}




.dy-membership-gate__login {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	margin-top: 22px;
	font-size: 12px;
	color: #777;
}

.dy-membership-gate__login a {
	color: #fff;
	font-weight: 700;
	text-decoration: underline;
}

.dy-membership-gate__login a:hover {
	color: #ddd;
}




.dy-membership-gate__more {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 30px;
	font-size: 11px;
	color: #777;
	text-decoration: none;
	transition: .2s ease;
}

.dy-membership-gate__more:hover {
	color: #bbb;
}




@media screen and (max-width: 650px) {

	.dy-membership-gate__inner {
		padding: 38px 18px;
	}

	.dy-membership-gate__title {
		font-size: 25px;
	}

	.dy-membership-gate__visual {
		margin-top: 28px;
	}

	.dy-membership-gate__play {
		width: 52px;
		height: 52px;
		font-size: 18px;
	}

	.dy-membership-gate__price strong {
		font-size: 38px;
	}

	.dy-membership-gate__features {
		grid-template-columns: 1fr;
		gap: 10px;
		max-width: 380px;
	}

	.dy-membership-gate__login {
		flex-direction: column;
		gap: 5px;
	}

}



.dy-home-memberships {
	width: min(1160px, calc(100% - 40px));
	margin: 44px auto 60px;
}

.dy-home-memberships__heading {
	margin-bottom: 24px;
}

.dy-home-memberships__heading > span {
	display: block;
	margin-bottom: 8px;
	font-size: 9px;
	font-weight: 800;
	letter-spacing: .18em;
	color: #d22;
}

.dy-home-memberships__heading h2 {
	margin: 0;
	font-size: clamp(24px, 3vw, 34px);
	line-height: 1.4;
	color: #fff;
}

.dy-home-memberships__heading p {
	margin: 10px 0 0;
	font-size: 12px;
	line-height: 1.8;
	color: #777;
}




.dy-home-memberships__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}




.dy-home-membership-card {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 30px;
	border: 1px solid #292929;
	background: #0b0b0b;
}

.dy-home-membership-card--premium {
	border-top: 2px solid #b5161b;
}

.dy-home-membership-card--kuzu {
	border-top: 2px solid #555;
}

.dy-home-membership-card__eyebrow {
	display: block;
	margin-bottom: 10px;
	font-size: 9px;
	font-weight: 800;
	letter-spacing: .15em;
	color: #d22;
}

.dy-home-membership-card--kuzu
.dy-home-membership-card__eyebrow {
	color: #888;
}

.dy-home-membership-card h3 {
	margin: 0;
	font-size: 22px;
	line-height: 1.4;
	color: #fff;
}

.dy-home-membership-card__description {
	min-height: 52px;
	margin: 13px 0 0;
	font-size: 12px;
	line-height: 1.8;
	color: #999;
}




.dy-home-membership-card__price {
	margin: 22px 0;
	padding: 20px 0;
	border-top: 1px solid #242424;
	border-bottom: 1px solid #242424;
}

.dy-home-membership-card__price strong {
	font-size: 30px;
	line-height: 1;
	color: #fff;
}

.dy-home-membership-card__price span {
	margin-left: 5px;
	font-size: 11px;
	color: #888;
}




.dy-home-membership-card ul {
	flex: 1;
	margin: 0 0 25px;
	padding: 0;
	list-style: none;
}

.dy-home-membership-card li {
	position: relative;
	margin: 10px 0;
	padding-left: 20px;
	font-size: 12px;
	line-height: 1.6;
	color: #ccc;
}

.dy-home-membership-card li::before {
	content: "✓";
	position: absolute;
	left: 0;
	color: #d22;
	font-weight: 900;
}




.dy-home-membership-card__button {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: 58px;
	padding: 10px 20px;
	border: 1px solid #444;
	background: #111;
	color: #fff;
	text-decoration: none;
	transition: .2s ease;
}

.dy-home-membership-card__button--primary {
	border-color: #b5161b;
	background: #b5161b;
}

.dy-home-membership-card__button span {
	font-size: 13px;
	font-weight: 800;
}

.dy-home-membership-card__button small {
	margin-top: 4px;
	font-size: 8px;
	color: rgba(255,255,255,.55);
}

.dy-home-membership-card__button:hover {
	border-color: #777;
	background: #191919;
	color: #fff;
	transform: translateY(-1px);
}

.dy-home-membership-card__button--primary:hover {
	border-color: #d21b21;
	background: #d21b21;
}




.dy-home-memberships__login {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	margin-top: 22px;
	font-size: 11px;
	color: #777;
}

.dy-home-memberships__login a {
	color: #fff;
	font-weight: 700;
	text-decoration: underline;
}




@media screen and (max-width: 700px) {

	.dy-home-memberships {
		width: calc(100% - 28px);
		margin-top: 32px;
	}

	.dy-home-memberships__grid {
		grid-template-columns: 1fr;
	}

	.dy-home-membership-card {
		padding: 24px 20px;
	}

	.dy-home-membership-card__description {
		min-height: 0;
	}

}



@media screen and (max-width: 800px) {

	.dy-footer-logo,
	.dy-footer-logo .custom-logo-link {
		display: inline-block;
		width: auto;
		max-width: 150px;
	}

	.dy-footer-logo img,
	.dy-footer-logo .custom-logo {
		display: block;
		width: auto !important;
		height: auto !important;
		max-width: 150px !important;
		max-height: none !important;
	}

}



.dy-footer-logo {
	display: block;
	margin-bottom: 20px;
}

.dy-footer-logo .custom-logo-link {
	display: inline-block;
	width: auto;
	line-height: 0;
}

.dy-footer-logo .custom-logo {
	display: block;
	width: 100px !important;
	height: auto !important;
	max-width: 100px !important;
}




@media screen and (max-width: 800px) {

	.dy-footer-logo .custom-logo {
		width: 140px !important;
		max-width: 140px !important;
		height: auto !important;
	}

}

.dy-category-search {
	margin: 30px 0 36px;
}

.dy-category-search__form {
	display: flex;
	max-width: 560px;
}

.dy-category-search__form input[type="search"] {
	flex: 1;
	min-width: 0;
	padding: 14px 16px;
	border: 1px solid #2a2a2a;
	border-right: 0;
	background: #0c0c0c;
	color: #fff;
	font-size: 14px;
	outline: none;
}

.dy-category-search__form input[type="search"]:focus {
	border-color: #b5161b;
}

.dy-category-search__form button {
	padding: 0 24px;
	border: 1px solid #b5161b;
	background: #b5161b;
	color: #fff;
	font-weight: 700;
	cursor: pointer;
}

.dy-category-search__form button:hover {
	background: #d21b21;
}

@media screen and (max-width: 600px) {

	.dy-category-search__form {
		max-width: none;
		width: 100%;
	}

	.dy-category-search__form button {
		padding: 0 18px;
	}

}



.dy-search-page {
	background: #050505;
	color: #fff;
	min-height: 70vh;
	padding: 54px 0 80px;
}

.dy-search-page__inner {
	width: min(1160px, calc(100% - 40px));
	margin: 0 auto;
}




.dy-search-header {
	margin-bottom: 28px;
}

.dy-search-header__eyebrow {
	display: block;
	margin-bottom: 8px;
	font-size: 9px;
	font-weight: 800;
	letter-spacing: .18em;
	color: #d22;
}

.dy-search-header h1 {
	margin: 0;
	font-size: clamp(28px, 3.5vw, 42px);
	line-height: 1.35;
	color: #fff;
}

.dy-search-header p {
	margin: 10px 0 0;
	font-size: 13px;
	line-height: 1.8;
	color: #999;
}




.dy-search-form {
	display: flex;
	max-width: 680px;
	margin-bottom: 28px;
}

.dy-search-form input[type="search"] {
	flex: 1;
	min-width: 0;
	height: 50px;
	padding: 0 16px;
	border: 1px solid #2b2b2b;
	border-right: 0;
	background: #0b0b0b;
	color: #fff;
	font-size: 14px;
	outline: none;
}

.dy-search-form input[type="search"]::placeholder {
	color: #666;
}

.dy-search-form input[type="search"]:focus {
	border-color: #b5161b;
}

.dy-search-form button {
	min-width: 110px;
	height: 50px;
	padding: 0 24px;
	border: 1px solid #b5161b;
	background: #b5161b;
	color: #fff;
	font-size: 13px;
	font-weight: 800;
	cursor: pointer;
	transition: .2s ease;
}

.dy-search-form button:hover {
	background: #d21b21;
	border-color: #d21b21;
}




.dy-search-count {
	margin: 0 0 18px;
	padding-bottom: 12px;
	border-bottom: 1px solid #222;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .14em;
	color: #777;
}




.dy-video-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 28px 18px;
}

.dy-video-card {
	margin: 0;
}

.dy-video-card a {
	display: block;
	color: inherit;
	text-decoration: none;
}

.dy-video-card__thumb {
	position: relative;
	overflow: hidden;
	aspect-ratio: 16 / 9;
	background: #111;
}

.dy-video-card__thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .25s ease;
}

.dy-video-card:hover .dy-video-card__thumb img {
	transform: scale(1.035);
}

.dy-video-card__body {
	padding-top: 11px;
}

.dy-video-card__body h2 {
	margin: 0;
	font-size: 14px;
	line-height: 1.6;
	color: #fff;
	font-weight: 700;
}

.dy-video-card:hover .dy-video-card__body h2 {
	color: #ddd;
}




.dy-search-empty {
	padding: 60px 20px;
	border: 1px solid #252525;
	background: #0b0b0b;
	text-align: center;
}

.dy-search-empty h2 {
	margin: 0 0 10px;
	font-size: 22px;
	color: #fff;
}

.dy-search-empty p {
	margin: 0;
	font-size: 13px;
	color: #888;
}




.dy-search-pagination {
	margin-top: 48px;
	text-align: center;
}

.dy-search-pagination .nav-links {
	display: flex;
	justify-content: center;
	gap: 8px;
}

.dy-search-pagination .page-numbers {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 38px;
	height: 38px;
	padding: 0 10px;
	border: 1px solid #292929;
	background: #0b0b0b;
	color: #aaa;
	text-decoration: none;
}

.dy-search-pagination .page-numbers.current {
	border-color: #b5161b;
	background: #b5161b;
	color: #fff;
}

.dy-search-pagination a.page-numbers:hover {
	border-color: #555;
	color: #fff;
}




@media screen and (max-width: 1000px) {

	.dy-video-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

}




@media screen and (max-width: 700px) {

	.dy-search-page {
		padding: 36px 0 60px;
	}

	.dy-search-page__inner {
		width: calc(100% - 28px);
	}

	.dy-search-form {
		max-width: none;
		width: 100%;
	}

	.dy-search-form input[type="search"] {
		height: 46px;
	}

	.dy-search-form button {
		min-width: 84px;
		height: 46px;
		padding: 0 16px;
	}

	.dy-video-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 22px 12px;
	}

	.dy-video-card__body h2 {
		font-size: 13px;
	}

}


.zz-entry {
  --zz-red: #c62835;
  --zz-border: #343434;
  max-width: 820px;
  margin: 0 auto;
  color: #f5f5f5;
  font-size: 15px;
  line-height: 1.8;
}

.zz-entry *,
.zz-entry *::before,
.zz-entry *::after {
  box-sizing: border-box;
}

.zz-form-intro {
  margin-bottom: 36px;
  text-align: center;
}

.zz-form-intro h2 {
  font-size: clamp(24px, 4vw, 34px);
  color: #fff;
  margin-bottom: 16px;
}

.zz-form-section {
  padding: 32px;
  margin-bottom: 24px;
  border: 1px solid var(--zz-border);
  background: #191919;
  border-radius: 10px;
}

.zz-form-section h3 {
  display: flex;
  align-items: center;
  gap: 12px;
  color: #fff;
  font-size: 21px;
  border-bottom: 1px solid var(--zz-border);
  padding-bottom: 16px;
  margin: 0 0 28px;
}

.zz-form-section h3 span {
  color: var(--zz-red);
  font-size: 14px;
  font-weight: 800;
}

.zz-form-section > label {
  display: block;
  margin: 0 0 24px;
  font-weight: 600;
  color: #eee;
}

.zz-entry input[type="text"],
.zz-entry input[type="email"],
.zz-entry input[type="tel"],
.zz-entry input[type="date"],
.zz-entry input[type="number"],
.zz-entry textarea {
  display: block;
  width: 100%;
  margin-top: 8px;
  padding: 13px 15px;
  border: 1px solid #454545;
  border-radius: 6px;
  background: #262626;
  color: #fff;
  font: inherit;
  font-weight: 400;
}

.zz-entry input::placeholder,
.zz-entry textarea::placeholder {
  color: #aaa;
}

.zz-entry textarea {
  min-height: 120px;
  resize: vertical;
}

.zz-entry input:focus,
.zz-entry textarea:focus {
  outline: 2px solid var(--zz-red);
  outline-offset: 1px;
}

.zz-entry input[type="file"] {
  display: block;
  width: 100%;
  max-width: 100%;
  margin-top: 10px;
  padding: 12px;
  background: #262626;
  border: 1px dashed #555;
  border-radius: 6px;
  color: #ddd;
}

.zz-note {
  color: #aaa;
  font-size: 13px;
  margin: 6px 0 16px;
  font-weight: 400;
}

.zz-info {
  background: #282020;
  border-left: 3px solid var(--zz-red);
  padding: 16px 20px;
  margin-bottom: 28px;
  color: #eee;
}

.zz-info p {
  margin: 0 0 10px;
}

.zz-info p:last-child {
  margin-bottom: 0;
}

.zz-question {
  border-bottom: 1px solid var(--zz-border);
  padding: 20px 0;
}

.zz-question-title {
  font-size: 16px;
  font-weight: 700;
  color: #fff;
  margin: 0;
}

.zz-entry .wpcf7-list-item {
  display: block;
  margin: 8px 0;
}

.zz-entry .wpcf7-list-item label {
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  font-weight: 400;
}

.zz-entry input[type="radio"],
.zz-entry input[type="checkbox"] {
  accent-color: var(--zz-red);
  width: 17px;
  height: 17px;
  flex-shrink: 0;
}

.zz-entry .wpcf7-acceptance {
  display: block;
  margin: 25px 0;
}

.zz-submit {
  margin-top: 30px;
  text-align: center;
}

.zz-entry input[type="submit"] {
  display: block;
  width: 100%;
  max-width: 420px;
  margin: 0 auto;
  padding: 18px 24px;
  border: 0;
  border-radius: 6px;
  background: var(--zz-red);
  color: #fff;
  font-size: 17px;
  font-weight: 800;
  cursor: pointer;
  transition: background .2s, transform .2s;
}

.zz-entry input[type="submit"]:hover {
  background: #e03846;
  transform: translateY(-2px);
}

.zz-entry .wpcf7-not-valid-tip {
  color: #ff8181;
  font-size: 13px;
}

.zz-entry .wpcf7-response-output {
  padding: 16px;
  border-radius: 6px;
  color: #fff;
}

@media (max-width: 600px) {
  .zz-form-section {
    padding: 22px 17px;
  }

  .zz-form-section h3 {
    font-size: 18px;
  }

  .zz-entry {
    font-size: 14px;
  }
}


body{background:#080808;color:#f4f4f4}.pe-main{width:min(1200px,calc(100% - 40px));margin:0 auto;padding:60px 0;min-height:60vh}.pe-hero{padding:90px 0;background:linear-gradient(120deg,#151515,#080808);border-bottom:1px solid #292929}.pe-hero h1{font-size:clamp(32px,6vw,64px);line-height:1.2}.pe-hero p{color:#ccc}.pe-section{margin:55px 0}.pe-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.pe-card{min-width:0}.pe-card a{color:#fff;text-decoration:none}.pe-card img,.pe-placeholder{width:100%;aspect-ratio:16/9;object-fit:cover;background:#222;border-radius:8px;display:block}.pe-card h3{font-size:16px;margin:12px 0;line-height:1.6}.pe-cta{display:inline-block;background:#b91c27;color:#fff!important;padding:14px 28px;border-radius:5px;text-decoration:none;margin:8px 12px 8px 0}.pe-panel{padding:32px;background:#151515;border:1px solid #303030;border-radius:12px}.pe-price{font-size:22px}.pe-main .entry-content{max-width:960px;margin:auto}.pe-main .entry-content a{color:#ef9ba1}.pe-main .entry-content input,.pe-main .entry-content select,.pe-main .entry-content textarea{background:#fff;color:#171717}.pe-main .entry-content label{color:inherit}.pe-header-search{max-width:350px;margin:20px 0}.pe-header-search input{width:100%;padding:12px;color:#111;background:#fff}.pe-pagination{margin:35px 0;display:flex;gap:12px;flex-wrap:wrap}.pe-pagination a{color:#fff}.dy-header-logo img{width:auto;max-width:260px;max-height:65px}.pe-footer-links{display:flex;gap:22px;flex-wrap:wrap}.pe-footer-links a{color:#ccc}.pe-footer{background:#111;padding:40px 20px;color:#ccc}.pe-footer>div{max-width:1200px;margin:auto}.pe-empty{padding:25px;color:#aaa}
@media(max-width:900px){.pe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.pe-main{width:calc(100% - 28px);padding:35px 0}.pe-grid{gap:18px 12px}.pe-card h3{font-size:14px}.pe-panel{padding:22px}.pe-hero{padding:55px 0}}

/* People Ecology TV top video lists */
.dy-home .pe-section .sp-pcp-title,.dy-home .pe-section .sp-pcp-title a{color:#fff!important;background:none!important;border:0!important;font-size:16px!important;line-height:1.6!important}.dy-home .pe-section .pcp-readmore-link{display:none!important}.dy-home .pe-section .sp-pcp-thumb{display:block;overflow:hidden;border-radius:8px;aspect-ratio:16/9;background:#181818}.dy-home .pe-section .sp-pcp-thumb img{width:100%!important;height:100%!important;object-fit:cover}.dy-home .pe-section .sp-pcp-row{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:0!important}.dy-home .pe-section .sp-pcp-row>div{width:100%!important;max-width:100%!important;padding:0!important}.dy-home .pe-section>h2{color:#fff;border-left:3px solid #b91c27;padding-left:14px}.dy-home-hero .metaslider{max-width:1600px;margin:auto!important}.dy-home-hero .flex-control-nav{bottom:12px!important;z-index:5}.dy-home-hero .flex-control-nav a{background:#777!important}.dy-home-hero .flex-control-nav a.flex-active{background:#e50914!important}@media(max-width:900px){.dy-home .pe-section .sp-pcp-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}}

/* Full-width, centered Presto videos on individual posts. */
.single-post .pe-main.dy-watch-page .dy-watch-content{width:100%;max-width:none;margin-left:auto!important;margin-right:auto!important}
.single-post .dy-watch-content .presto-block-video{width:100%!important;max-width:100%!important;margin-left:auto!important;margin-right:auto!important;float:none}
.single-post .dy-watch-content presto-player{display:block;width:100%;max-width:100%;margin-left:auto;margin-right:auto}
