/* WP P48 WhatIsOn Plugin Styles */
@font-face {
    font-family: MinervaModern;
    font-weight: 400;
    src: url(/wp-content/plugins/wp-p48-whatison/assets/fonts/MinervaModern.ttf);
}
.p48-whatison-container {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 20px;
    margin: 20px 0;
}

.p48-whatison-item {
    position: relative;
    min-height: 200px;
    padding: 20px;
    border-radius: 8px;
    background-size: cover;
    background-position: center;
    color: #fff;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    overflow: hidden;
}

.p48-whatison-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 0;
}

.p48-whatison-tag {
    position: relative;
    display: inline-block;
    padding: 3px 8px;
    border-radius: 3px;
    font-size: 12px;
    font-weight: bold;
    margin-bottom: 10px;
    z-index: 1;
}

.p48-tag-gray {
    background-color: #f0f0f0;
    color: #333;
}

.p48-tag-yellow {
    background-color: #ffff99;
    color: #333;
}

.p48-whatison-title {
    position: relative;
    margin: 0 0 15px 0;
    z-index: 1;
}

.p48-whatison-title a {
    color: #fff;
    text-decoration: none;
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}

.p48-whatison-title a:hover {
    border-bottom-color: #fff;
}

.p48-whatison-button {
    position: relative;
    padding: 8px 15px;
    background-color: #007cba;
    color: white;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 14px;
    z-index: 1;
}

.p48-whatison-button:hover {
    background-color: #006ba1;
}

.p48-whatison-button:disabled {
    background-color: #666;
    cursor: not-allowed;
}

.p48-whatison-response {
    position: relative;
    margin-bottom: 10px;
    padding: 8px;
    border-radius: 4px;
    z-index: 1;
}

.p48-whatison-response.success {
    background-color: rgba(76, 175, 80, 0.8);
    color: white;
}
/* home-page-begin */
@media only screen and (max-width: 767px) {
    #subscribe_button_2025 {
        padding: 12px !important;
    }
}
.page-home .home-fr-links1>.et_pb_column {
	display: flex;
	align-items: flex-end;
}
.page-home .home-fr-links1 .et_pb_text_4{
	line-height: 1;
	max-width: max-content;
	bottom: -5px;
}

.page-home .home-fr-links1 .et_pb_image_1,.page-home .home-fr-links1 .et_pb_image_2 {

}
.page-home .home-fr-links1 .et_pb_image_1 img,.page-home .home-fr-links1 .et_pb_image_2 img {

}
@media only screen and (min-width: 1920px) {
	.home #post-4047 .et_pb_text_4 {
   		 font-size: 18px;
       line-height: 1;
    }
    .home #post-4047 .et_pb_image_1, .home #post-4047 .et_pb_image_2 {
        width: 24px;
    }
}
/* home-page-end */
/* iframe-button-start */
.ven-custom-modal-btn-text {
    position: fixed;
    bottom: calc(25vw - 24px) !important;
    z-index: 9999999999999;
    right: 27px;
    color: #000;
    line-height: 24px;
    cursor: pointer;
    font-weight: 400;
    font-family: MinervaModern;
}
/* iframe-button-end */
/* ===== P48 Nav (replacement for Divi Mad Menu) ===== */
.p48-nav {
    background-color: transparent;
    border-width: 0;
    width: 100%;
}

.p48-nav__nav,
.p48-nav__wrapper {
    width: 100%;
}

.p48-nav__menu {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
}

.p48-nav__item {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    text-align: left;
    margin-bottom: 1.25vw; /* PC 抽屉的项间距，原 madmenu 用的是 1.25vw */
}

.p48-nav__item:last-child {
    margin-bottom: 0;
}

.p48-nav__item > a {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
    color: #FFFFFF;
    font-size: 2.08vw;
    line-height: 2.5vw;
    text-transform: uppercase;
}

/* hover / active 下划线动画 */
.p48-nav__text {
    position: relative;
    display: inline-flex;
    align-items: center;
    transition: opacity 0.8s ease-in-out, transform 0.8s ease-in-out;
}

.p48-nav__text::after {
    content: '';
    position: absolute;
    width: 0;
    height: 1px;
    bottom: -4px;
    left: 0;
    background-color: #fff;
    transition: width 0.3s ease-in-out;
}

.p48-nav__text:hover::after,
.p48-nav__item.current-menu-item .p48-nav__text::after {
    width: 100%;
}
#p48-app-header-popup .popup-content {
    display: flex;
    flex-direction: column;
    height: 100%;
}

#p48-app-header-popup .p48-nav--pc {
    flex: 1;                 /* 占满剩余高度 */
    display: flex;
    align-items: center;     /* 垂直居中 */
    padding-left: 4.48vw;    /* 和原来 madmenu 的左内边距一致 */
    padding-right: 4.48vw;
    box-sizing: border-box;
    width: 100%;
}

/* 菜单整体宽度由 wrapper 决定 */
#p48-app-header-popup .p48-nav--pc .p48-nav__nav,
#p48-app-header-popup .p48-nav--pc .p48-nav__wrapper {
    width: 100%;
}
#fullscreenPopup .popup-content > .p48-nav--mob {
    width: 90%;
    min-height: 100vh;
    display: flex;
    justify-content: center;
    box-sizing: border-box;
}

/* 菜单项按设计放在左上方，如果你想居左+顶部留白 */
#fullscreenPopup .p48-nav--mob .p48-nav__nav {
    width: 100%;
}
  /* ===== fullscreenPopup 菜单样式：复刻 index.html 弹窗效果 ===== */
  /* 对应 index.html 的 et_pb_section_5_tb_header（全屏黑底区块） */
  #fullscreenPopup .p48-nav {
    min-height: 100vh;
    width: 100%;
    max-width: 100%;
    padding-top: 19.36vh;
    padding-bottom: 0;
    background-color: #000;
    box-sizing: border-box;
  }

  /* 对应 et_pb_row_3_tb_header：宽 90%、水平居中、超高可滚动 */
  #fullscreenPopup .p48-nav__nav {
    width: 90%;
    margin: 0 auto;
    height: max-content;
    overflow-x: hidden;
  }

  #fullscreenPopup .p48-nav__menu {
    padding: 0;
    margin: 0;
    list-style: none;
  }

  #fullscreenPopup .p48-nav__item {
    margin: 0 0 2.4vh;
  }

  #fullscreenPopup .p48-nav__item:last-child {
    margin-bottom: 0;
  }

  #fullscreenPopup .p48-nav__item a {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 10px 0;
    color: #FFF;
    text-decoration: none;
    text-transform: uppercase;
    text-align: left;
    font-size: 5.31vw;
    line-height: 100%;
  }

  /* 菜单项文字：初始隐藏（供 JS 做逐项滑入动画），同 index.html 的 dvmm_link_text */
  #fullscreenPopup .p48-nav__text {
    position: relative;
    display: inline-flex;
    align-items: center;
    opacity: 0;
    transform: translateX(10%);
    transition: opacity 0.8s ease-in-out, transform 0.8s ease-in-out;
  }

  /* hover 下划线动效：对应 index.html 的 et_pb_code_5_tb_header 内联样式 */
  #fullscreenPopup .p48-nav__text::after {
    content: '';
    position: absolute;
    width: 0;
    height: 1px;
    bottom: -4px;
    left: 0;
    background-color: white;
    transition: width 0.3s ease-in-out;
  }

  #fullscreenPopup .p48-nav__text:hover::after {
    width: 100%;
  }

  /* ===== 关键修复：弹窗祖先不能带 transform / backdrop-filter ===== */
  /* 模板自带的 .et_pb_code_3_tb_header{transform:translateY(5px)} 会把 fixed 弹窗的
     包含块劫持为该模块，导致弹窗被限制在页头区域内（index.html 无此规则所以正常） */
  #p48-app-mobile-header .et_pb_code_3_tb_header {
    transform: none !important;
  }
  /* 页头滚动变黑时带 backdrop-filter，同样会劫持包含块：弹窗打开期间禁用 */
  #p48-app-mobile-header.p48-popup-open {
    backdrop-filter: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    z-index: 15 !important;
  }
  body.p48-popup-open {
    overflow: hidden;
  }

  @media only screen and (max-width: 767px) {
    #fullscreenPopup .p48-nav {
      padding-top: 23.24vh;
    }
    #fullscreenPopup .p48-nav__item a {
      padding: 0;
      font-size: 13.04vw;
    }
  }
  /* ===== fullscreenPopup 菜单样式结束 ===== */

/* ===== 移动端覆盖（原 madmenu_vertical_1 的字号） ===== */
@media only screen and (max-width: 980px) {
    .p48-nav--mob .p48-nav__item {
        margin-bottom: 2.4vh;
    }

    .p48-nav--mob .p48-nav__item > a {
        font-size: 13.04vw;   /* 原移动端 madmenu 字号 */
        line-height: 100%;
        text-transform: uppercase;
        text-align: justify;
    }

    .p48-nav--mob .p48-nav__item > a .p48-nav__text {
        font-size: 13.04vw;
    }
}

/* PC 抽屉弹窗内的字号（原 madmenu_vertical_0 在弹窗里的覆盖） */
@media only screen and (min-width: 981px) {
    #p48-app-header-popup .p48-nav--pc .p48-nav__item > a,
    #p48-app-header-popup .p48-nav--pc .p48-nav__item > a .p48-nav__text {
        font-size: 2.08vw;
        line-height: 2.5vw;
    }
    #p48-app-header-popup .p48-nav--pc .p48-nav__item {
        margin-bottom: 1.25vw;
    }
}
/* ===== P48 Nav (replacement for Divi Mad Menu) ===== */