/* ==========================================================================
   Castos Embed Page  —  castos.css
   Theme: mybizniche  |  Template: templates-redesign/template-castos.php
   Brand colours:
     Navy dark  #15253B   Navy mid  #1B334E
     Gold       #907E50   Gold lite #C2C282
     Red/orange #E64324
   Fonts: Oswald (headings), Work Sans (body), kepler-std (serif italic)
   ========================================================================== */


/* --------------------------------------------------------------------------
   BAND 1 — HERO
   -------------------------------------------------------------------------- */

.page-template-template-castos-landing .nav, .page-template-template-castos-landing .mobile-nav, .page-template-template-castos-landing .footer{display: none;}
.page-template-template-castos-landing .content-wrap{margin-top:0;}
.sec-banner-castos .hero-wrap {
    position: relative;
    /*min-height: 520px;*/
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    display: flex;
    align-items: center;
}
.sec-banner-castos .hero-wrap > img{    width: 100%;
    max-height: 820px;
    object-fit: cover;}

.sec-banner-castos .hero-overlay {
    position: absolute;
    inset: 0;
    /*background: linear-gradient(135deg, rgba(32, 43, 41, 0.82) 55%, rgba(32, 43, 41, 0.60) 100%);*/
    display: flex;
    align-items: end;
    width: 100%;
}

.sec-banner-castos .grid-container {
    width: 100%;
    position: relative;
    z-index: 1;
    margin: 0 auto;
}

.page-template-template-castos .grid-container, .page-template-template-castos-landing .grid-container{margin:0 auto;}

.sec-banner-castos .hero-content {
    padding: 150px 0 60px;
}

.sec-banner-castos .hero-content h1 {
    font-family: 'Oswald', sans-serif;
    font-size: 58px;
    font-weight: 700;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin: 0 0 32px;
    line-height: 1.1;
}

.sec-banner-castos .hero-cta-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    align-items: center;
    justify-content: center;
}

/* Listen — filled red */
.sec-banner-castos .hero-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-family: 'Oswald', sans-serif;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    text-decoration: none;
    padding: 14px 36px;
    border-radius: 3px;
    border: 2px solid transparent;
    transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
    cursor: pointer;
}

.sec-banner-castos .btn-listen, .sec-banner-castos .btn-subscribe {
    background: #E64324;
    border-color: #E64324;
    color: #ffffff;
}

.sec-banner-castos .btn-listen:hover,
.sec-banner-castos .btn-listen:focus,
.sec-banner-castos .btn-subscribe:hover,
.sec-banner-castos .btn-subscribe:focus{
    background: #c53820;
    border-color: #c53820;
    color: #ffffff;
}

/* Play triangle inside Listen button */
.sec-banner-castos .btn-play-icon {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 11px;
    border-color: transparent transparent transparent #ffffff;
    display: inline-block;
    flex-shrink: 0;
}

/* Subscribe — outline white 
.sec-banner-castos .btn-subscribe {
    background: transparent;
    border-color: #ffffff;
    color: #ffffff;
}

.sec-banner-castos .btn-subscribe:hover,
.sec-banner-castos .btn-subscribe:focus {
    background: rgba(255, 255, 255, 0.15);
    color: #ffffff;
}*/

@media (max-width: 991px){
	.sec-banner-castos .hero-content{padding:1em 0;}
}

@media (max-width: 767px){
	.sec-banner-castos .hero-overlay{position: relative;}
	.sec-banner-castos .hero-wrap{display: block;}
}

@media (max-width: 639px) {
   /* .sec-banner-castos .hero-wrap { min-height: 420px; }*/
    .sec-banner-castos .hero-content h1 { font-size: 36px; }
   
}

@media (min-width: 640px) and (max-width: 1023px) {
    .sec-banner-castos .hero-content h1 { font-size: 46px; }
}


/* --------------------------------------------------------------------------
   BAND 2 — CASTOS EMBED PLAYER
   -------------------------------------------------------------------------- */

.sec-castos-player {
    background: #ffffff;
    padding: 80px;
}

.sec-castos-player .castos-embed-wrap iframe,
.sec-castos-player .castos-embed-wrap > div {
    width: 100%;
    max-width: 100%;
    border: none;
}

@media (max-width: 767px){
    .sec-castos-player{padding: 40px 25px;}
}


/* --------------------------------------------------------------------------
   BAND 3 — ABOUT
   -------------------------------------------------------------------------- */

.sec-castos-about {
    background: #FDF8F0;
        position: relative;    overflow: hidden;
}
.sec-castos-about 

.sec-castos-about .about-main-wrap {
    padding: 80px 80px 0;
        position: relative;
}
.sec-castos-about .grid-container{    position: relative; padding-right:0;}
.sec-castos-about .about-stats-bar .grid-container{padding: 0 32px;}

/* --- text column --- */

.sec-castos-about .about-text-col {
    padding-top: 5%;
    padding-bottom: 5%;
    padding-right: 8%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.sec-castos-about .show-title {
    font-size: 46px;
    font-weight: 700;
    margin: 0 0 14px;
    color: #202B29;
    text-transform: uppercase;
}

.sec-castos-about .show-subtitle {
    font-family: "Special Elite", system-ui;
    font-size: 33px;
    margin: 0 0 16px;
}

.sec-castos-about .show-description {
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
    color: #202B29;

}
.sec-castos-about .show-description.mobile-description{display: none;}

.sec-castos-about .show-description p {
    margin-bottom: 14px;
}

/* --- platform buttons column --- */

.sec-castos-about .about-platform-col {
    padding: 0 16px;
}

.sec-castos-about .platform-links-wrap {
    display: flex;
    flex-direction: column;
    gap: 14px;
    position: absolute;
    top: 0;
    z-index: 2;
    right: 40%;
    background-image: url(https://pacificleg3dev.wpenginepowered.com/wp-content/uploads/2026/04/ap_mm-arrow-1.png);
    background-size: 100px;
    background-repeat: no-repeat;
    background-position: center bottom;
    padding-bottom: 100px;
}

.sec-castos-about .platform-btn {
     display: flex;
    align-items: center;
    gap: 14px;
    background: #907E50;
    border: 1.5px solid #D0D9E3;
    border-radius: 50px;
    padding: 10px 22px 10px 10px;
    text-decoration: none;
    transition: box-shadow 0.2s ease, border-color 0.2s ease;
    max-width: 290px;
}

.sec-castos-about .platform-btn:hover {
    box-shadow: 0 4px 18px rgba(21, 37, 59, 0.14);
    border-color: #15253B;
}

.sec-castos-about .platform-icon {
     width: 42px;
    height: 42px;
    border-radius: 50%;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    flex-shrink: 0;
}

.sec-castos-about .platform-icon img {
    width: 26px;
    height: 26px;
    object-fit: contain;
    display: block;
}

.sec-castos-about .platform-label {
    font-family: 'Oswald', sans-serif;
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: #FFF;
}

/* --- device image column --- */

.sec-castos-about .about-device-col {
    margin-right: calc(-1 * ((100vw - 100%) / 2));
	padding-right: 0;
}

.sec-castos-about .device-image-wrap {
	text-align: center;
    /* position: absolute; */
    width: auto;
    top: 0;
    display: flex;
    height: 100%;
    width: 100%;
    height: 100%;
    align-items: center;
}

.sec-castos-about .device-img {
	/*height: 100%;
    object-fit: cover;
    object-position: center top;
    display: block;
    margin-right: calc(-1 * (100vw - 100%) / 2);
    width: calc(100% + (100vw - 100%) / 2);
    max-width: none;*/
}

/* --- stats bar --- */

.sec-castos-about .about-stats-bar {
   background: #202B29;
    padding: 32px 0;
    width: 80%;
    position: absolute;
    bottom: 60px;
    z-index: 0;
}

.sec-castos-about .stat-item {
    display: flex;
    align-items: center;
    gap: 22px;
    padding: 8px 0;
}
.sec-castos-about .stat-item span img{min-height: 80px;}

/* Circular play icon */
.sec-castos-about .stat-play-circle {
    width: 58px;
    height: 58px;
    border-radius: 50%;
    border: 3px solid #907E50;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    position: relative;
}

.sec-castos-about .stat-play-circle::after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 0 10px 18px;
    border-color: transparent transparent transparent #907E50;
    margin-left: 5px;
}

.sec-castos-about .stat-stars {
    font-size: 26px;
    color: #C2C282;
    letter-spacing: 3px;
    flex-shrink: 0;
    line-height: 1;
}

.sec-castos-about .stat-text {
    display: flex;
    flex-direction: column;
}

.sec-castos-about .stat-number {
    font-family: 'Oswald', sans-serif;
    font-size: 44px;
    font-weight: 700;
    color: #ffffff;
    line-height: 1;
}

.sec-castos-about .stat-label {
    font-size: 20px;
    letter-spacing: 2.5px;
    text-transform: uppercase;
    color: #fff;
    margin-top: 5px;
}
.sec-castos-about .about-stats-bar .grid-x{gap: 3em;}
.sec-castos-about .about-stats-bar .grid-x > .cell{width: auto;}
.sec-banner-castos .hero-wrap > img.mobile_img{display: none;}


@media (min-width: 1024px) and (max-width: 1460px){
    .sec-castos-about .about-main-wrap{padding-left: 40px;}
    .sec-castos-about .about-stats-bar .grid-x{flex-wrap: nowrap; gap:2em;}
    .sec-castos-about .show-subtitle{font-size: 23px; margin: 0 0 10px;}
    
    .sec-castos-about .about-device-col{bottom:0;}
    .sec-castos-about .about-stats-bar{position: relative; width: 100%;}
    .sec-castos-about .stat-item span img { min-height: 50px;}
    .sec-castos-about .about-stats-bar .grid-x > .cell{max-width: 45%;}
	.sec-castos-about .device-img{width: 100%;}
}

/* About section responsive */
@media (max-width: 1023px) {
    .sec-castos-about .about-text-col { padding-right:5%; }
    .sec-castos-about .about-platform-col { padding: 24px 0 0; }
    .sec-castos-about .platform-btn { }
    .sec-castos-about .about-device-col {justify-content: flex-end; }
    .sec-castos-about .device-img {         max-width: 200%;
        width: 120%;}
    .sec-castos-about .about-stats-bar{position: relative; bottom:0;}
    .sec-castos-about .stat-item { flex-direction: row; }
    .sec-castos-about .stat-number { font-size: 34px; }
    .sec-castos-about .about-main-wrap{padding-left: 40px; padding-right: 40px;}
}

@media (max-width: 991px){
     .sec-castos-about .about-text-col, .sec-castos-about .about-device-col{width: 100%;}
    .sec-castos-about .show-description.mobile-description{display: block;}
    .sec-castos-about .show-description.desktop-description{display: none;}
    .sec-castos-about .about-stats-bar{width: 100%; position: relative; bottom: 0;}
    .sec-castos-about .about-stats-bar .grid-x{    align-items: center; justify-content: center;}
    .sec-castos-about .about-stats-bar .grid-x > .cell{width: 80%;}
    .sec-castos-about .stat-item{align-items: center; justify-content: center;flex-direction: column;}
    .sec-castos-about .about-text-col{padding-bottom: 30px;}
    .sec-castos-about .about-device-col{display: block;  padding-bottom: 10%;}
    .sec-castos-about .device-image-wrap{ position: relative; width: 100%; height: auto;        margin-bottom: 40px;}
    .sec-castos-about .device-img{width: 100%; height: auto;}
    .sec-castos-about .platform-links-wrap{left:0;}
    .sec-castos-about .stat-text{text-align:center;}
	.sec-banner-castos .hero-wrap > img.mobile_img{display: block;}
    .sec-banner-castos .hero-wrap > img.desktop_img{display: none;}
}

@media (max-width: 767px){
    .sec-castos-about .about-main-wrap{padding: 45px 20px 0;}  
    .sec-castos-about .show-title{font-size: 30px;}
    .sec-castos-about .show-subtitle{font-size: 20px;}
    .sec-castos-about .platform-btn{gap: 8px; padding: 6px 12px 6px 10px;}
    .sec-castos-about .platform-icon{width: 32px; height: 32px;}
    .sec-castos-about .platform-label{font-size: 70%;}
    .sec-castos-about .stat-item span img{min-height: 40px;}
    .sec-castos-about .stat-text{text-align: center;}
    .sec-castos-about .stat-item{gap:5px; flex-direction: column; }
    .sec-castos-about .about-stats-bar .grid-x{gap:0;}
    .sec-castos-about .about-device-col{padding-bottom: 3em; }
}

@media (max-width: 639px) {
    .sec-castos-about .about-stats-bar .cell { padding-bottom: 16px; }
    .sec-castos-about .stat-number { font-size: 30px; }
}


/* --------------------------------------------------------------------------
   BAND 4 — SCOTUS SCOOP SUBSCRIBE FORM
   -------------------------------------------------------------------------- */

.sec-castos-subscribe {
    padding: 0;
    border-top: 4px solid #E64324;
    margin: 80px auto 0;
}

.sec-castos-subscribe .subscribe-heading {
      font-family: 'Oswald', sans-serif;
    font-size: 38px;
    font-weight: 700;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin: 0 0 20px;
    line-height: 1.1;
    text-align: center;
    padding-top: 50px;
    margin-bottom: -30px;
}

.sec-castos-subscribe .subscribe-subtext {
    font-family: 'Work Sans', sans-serif;
    font-size: 17px;
    color: #444;
    line-height: 1.75;
    margin-bottom: 40px;
}

.sec-castos-subscribe .subscribe-subtext p {
    margin-bottom: 10px;
}

/* Gravity Forms overrides */
.sec-castos-subscribe .gform_wrapper.gravity-theme .gform_fields {
    grid-template-columns: 1fr 1fr;
    gap: 16px 20px;
}

.sec-castos-subscribe .gform_wrapper{margin:0;}
/* Push email to full width if it gets its own row */
.sec-castos-subscribe .gform_wrapper.gravity-theme .gfield.gfield--type-email {
    grid-column: 1 / -1;
}

.sec-castos-subscribe .gform_wrapper.gravity-theme input[type="text"],
.sec-castos-subscribe .gform_wrapper.gravity-theme input[type="email"] {
    border: 1px solid #C8D2DC;
    border-radius: 3px;
    padding: 13px 16px;
    font-family: 'Work Sans', sans-serif;
    font-size: 15px;
    color: #222;
    width: 100%;
    background: #F8FAFC;
    transition: border-color 0.15s ease;
}

.sec-castos-subscribe .gform_wrapper.gravity-theme input[type="text"]:focus,
.sec-castos-subscribe .gform_wrapper.gravity-theme input[type="email"]:focus {
    border-color: #15253B;
    outline: none;
    background: #ffffff;
}

.sec-castos-subscribe .gform_wrapper .gform_footer input[type="submit"],
.sec-castos-subscribe .gform_wrapper.gravity-theme .gform_footer input[type="submit"] {
    background: #E64324;
    color: #ffffff;
    border: none;
    padding: 15px 44px;
    font-family: 'Oswald', sans-serif;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    cursor: pointer;
    border-radius: 3px;
    transition: background 0.2s ease;
}

.sec-castos-subscribe .gform_wrapper .gform_footer input[type="submit"]:hover,
.sec-castos-subscribe .gform_wrapper.gravity-theme .gform_footer input[type="submit"]:hover {
    background: #c53820;
}

.sec-castos-subscribe .gform_wrapper.gravity-theme .gfield_label {
    font-family: 'Work Sans', sans-serif;
    font-size: 13px;
    font-weight: 600;
    color: #15253B;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}
.str_buttons{display: flex;
    align-items: center;
    justify-content: center;
    gap: 10%;}
.str_buttons .str_button{}
.str_buttons .str_button img{    max-width: 12em;}

.episodes_section{padding: 80px 0 0;}
.episodes_section h2{text-align: center;
    color: #090C0B;
    text-transform: uppercase;
    font-size: 40px;}
.episode_container{    margin: 0 0 50px}
.episode_container > h3{color: #090C0B;
    font-family: "Work Sans", sans-serif;
    font-size: 20px;
    text-transform: uppercase;
    line-height: 1.5;}
.episode_container .episode_cont{display: flex; gap:20px; flex-direction: column;}
.episode_container .episode_cont .single_episode{    background: #202B29;
    padding: 20px 40px;
    color: #FFF;
    display: flex;
    border-radius: 5px;}
.episode_container .episode_cont .single_episode .episode_inner{    gap: 20px;
    width: 100%;
    display: flex;
    align-items: center;}
.episode_container .episode_cont .single_episode .episode_inner > div{font-weight: 500;}
.episode_container .episode_cont .single_episode .episode_inner img{width: 42px;}
.episode_container .episode_cont .single_episode .episode_inner .title_bar{}
.episode_container .episode_cont .single_episode .episode_inner .title_bar span{font-weight: 700;}
.episode_container .episode_cont .single_episode .episode_inner .meta_bar{}
.episode_container .episode_cont .single_episode .episode_inner a{text-decoration: underline;}
.episode_container .episode_cont .single_episode .episode_inner > div.mobile_bar{display: none;}

@media (max-width: 1460px){

}

@media (max-width: 991px){
	.str_buttons{flex-wrap: wrap; gap: 5%;}
	.str_buttons .str_button img {
    max-width: 7em;}
}

@media (max-width: 639px) {
    .sec-castos-subscribe { padding: 10px 0 20px;        margin: 40px auto 0; }
    .sec-castos-subscribe .subscribe-heading { font-size: 28px; }
    .sec-castos-subscribe .gform_wrapper.gravity-theme .gform_fields {
        grid-template-columns: 1fr;
    }
	.sec-castos-subscribe h3{font-size: 28px;}
	.sec-castos-subscribe .gform-theme--foundation .gfield.title_block{margin-bottom:0 !important;}
	.str_buttons{flex-direction: column;        gap: 40px;}
	.episode_container > h3{text-align: center;}
	.episode_container .episode_cont .single_episode .episode_inner > div.mobile_bar{display: block;}
	.episode_container .episode_cont .single_episode .episode_inner > div.desktop_bar{display: none;}
	.episode_container .episode_cont .single_episode .episode_inner{align-items: flex-start;}
}
