/*
Theme Name: FantasyCreatures
Author: Annie Gage
Description: Custom theme for Fantasy Creatures site
Version: 1.0
Text Domain: fantasycreatures
*/

body{
  background:#1a0029;
  color:#eaeaea;
  font-family:'Poppins',sans-serif;
  font-display: swap;
}

h2 {font-size: 30px; }

h3{font-weight:bold;}

p{color:#cfcfcf !important;}
p a{text-decoration:underline;color:#14ffe4;}

.navbar{
  position:fixed;top:0;left:0;right:0;
  z-index:1000;background:#000 !important;
}
.navbar.sticky-lg-top{position:static;}
.navbar .container{padding-left:0 !important;padding-right:0 !important;}

.navbar-brand{
  font-weight:bold;font-size:24px;
  padding-left:0 !important;margin-left:0 !important;
}
.navbar-brand img{width:400px;height:auto;}
.brand-fantasy{color:#14ffe4;}
.brand-creatures{color:#fff;text-shadow:0 0 8px rgba(20,255,228,.9),0 0 16px rgba(20,255,228,.7);}

a.nav-link:hover,
a.nav-link:focus,
a.nav-link.active{color:#b4d453 !important;}

.offcanvas{background:linear-gradient(180deg,#0d0d1a 0%,#1a0029 50%,#00695c 100%) !important;}

.hero .btn-join,
.navbar .btn-join{
  background:rgba(20,255,228,.1) !important;
  border:1px solid #14ffe4 !important;
  color:#14ffe4 !important;
  font-weight:700 !important;
  padding:10px 28px !important;
  border-radius:12px !important;
  transition:all .3s ease !important;
}
.hero .btn-join:hover,
.navbar .btn-join:hover{
  background:#14ffe4 !important;color:#000 !important;
  box-shadow:0 0 15px rgba(20,255,228,.9) !important;
}

.hero{
  min-height:80vh;display:flex;align-items:center;
  background:linear-gradient(135deg,#0d0d1a 0%,#1f1230 40%,#009688 100%);
  padding:33px 0;
}

.hero-img{
  display:block;
  margin:0 auto;
  width:100%;
  height:auto;
  aspect-ratio:600 / 440;
  object-fit:contain;
}

.hero .col-lg-6{
  min-height:300px;
}

.hero h1{  
  font-size:31px; line-height: 36px; color:#cfcfcf !important;text-shadow:0 0 14px rgba(20,255,228,.7);
}
.hero h1,.text-box h1{color:#fff;}

.hero-title {
	font-family:'Cinzel Decorative',serif;
font-display: swap;
  font-size:68px; line-height: 70px; color:#fff;text-shadow:0 0 14px rgba(20,255,228,.7);
}

.navbar-dark .navbar-toggler{
  padding:0 !important;
}
.navbar-dark .navbar-toggler-icon{
  background-image:url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='%23b4d453' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}

.navbar-toggler-icon {
	width: 2rem;
	height: 2rem;
}

.navbar-dark .navbar-toggler:focus{box-shadow:0 0 6px #b4d453;outline:none;}
.navbar-dark .navbar-toggler:hover{box-shadow:0 0 6px #b4d453;}

.text-white-50{color:#cfcfcf !important;}

.tagline{font-size:1.7rem;color:#14ffe4;}
.tagline .highlight{color:#fff;font-weight:700;text-shadow:0 0 8px rgba(20,255,228,.9),0 0 16px rgba(20,255,228,.7);}

.character-card{
  background:linear-gradient(135deg,#2d1f3d 0%,#1a0029 100%);
  border:none;border-radius:12px;overflow:hidden;
  box-shadow:0 0 12px rgba(20,255,228,.3);
  transition:transform .2s ease,box-shadow .2s ease;
  border:1px #018d82 solid;
}
.character-card:hover{transform:translateY(-5px);box-shadow:0 0 20px rgba(20,255,228,.6);}
.character-card img{object-fit:contain;background:#000;}
.character-card .card-title{
  font-family:'Cinzel Decorative',serif;
font-display: swap;
  font-size:1.1rem;color:#fff;margin-top:10px;
}
.character-card .card-text{font-size:.9rem;color:#cfcfcf;margin-top:5px;}

.profile-icon{
  display:inline-block;font-size:1.4rem;color:#b4d453;
  transition:color .3s ease,transform .2s ease,opacity .3s ease;
}
#profiles{padding-bottom:0 !important;padding-top:20px !important;}
.profile-icon:hover{color:#0ed6bf;opacity:1;transform:scale(1.15);}
.profile-icon i{text-shadow:0 0 4px rgba(20,255,228,.6);}

.image-container{position:relative;display:inline-block;width:100%;}
.image-container img{width:100%;height:auto;display:block;border-radius:.5rem .5rem 0 0;}

.image-name-box{
  position:absolute;top:15px;left:0;background:rgba(0,0,0,.55);
  color:#fff;font-size:16px;font-weight:600;padding:4px 16px;
  border-radius:0 6px 6px 0;border:1px #018d82 solid;border-left:none;
}

.how-steps{color:#fff;}
.how-steps h2{letter-spacing:.3px;}
.how-steps .step-card{

  background:radial-gradient(900px 400px at 8% 5%,rgba(20,255,228,.07),transparent),
             linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,0));
  border:1px solid rgba(20,255,228,.25);
  border-radius:20px;
  box-shadow:0 0 36px rgba(20,255,228,.08) inset,0 10px 30px rgba(0,0,0,.45);
}
.how-steps .step-badge{
  display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;
  margin:-8px auto 8px;background:radial-gradient(circle at 30% 30%,#14ffe4 0%,#0fe6cf 60%,#09cbb6 100%);
  color:#061015;font-weight:800;border:2px solid rgba(20,255,228,.75);box-shadow:0 0 16px rgba(20,255,228,.35);
}
.how-steps .step-title{font-size:1.1rem;margin:.35rem 0 .25rem;}
.how-steps .step-desc{font-size:.98rem;min-height:3.6em;}

.how-steps .phone{
  position:relative;width:min(260px,100%);aspect-ratio:9/19;
  background:linear-gradient(145deg,#0e0f18,#141827);
  border-radius:28px;border:2px solid rgba(20,255,228,.35);
  box-shadow:0 10px 40px rgba(0,0,0,.6),0 0 24px rgba(20,255,228,.14);
  overflow:hidden;
}
.how-steps .phone::before{
  content:"";position:absolute;left:50%;transform:translateX(-50%);
  top:8px;width:38%;height:10px;border-radius:8px;background:#0e0f18;border:1px solid rgba(255,255,255,.06);
}
.how-steps .phone-screen{
  position:absolute;inset:22px 10px 12px 10px;
  width:calc(100% - 20px);height:calc(100% - 34px);
  object-fit:cover;border-radius:20px;
}

#guide{
  background-color:#000 !important;position:relative;overflow-x:hidden;margin-top:30px;
  --divider-line:#018d82;--divider-glow:rgba(20,255,228,.45);
}
#guide::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--divider-line);z-index:2;}
#guide::after{
  content:"";position:absolute;top:-8px;left:0;right:0;height:18px;
  background:linear-gradient(180deg,var(--divider-glow) 0%,rgba(0,0,0,0) 100%);
  filter:blur(6px);pointer-events:none;z-index:1;
}

p{color:#cfcfcf !important;}

#guide .simple-img{border:none !important;box-shadow:none !important;border-radius:0 !important;}

#guide h2,
.simple-split h2,
.hero-caption h2, .seo-box h2{
  font-family:'Cinzel Decorative',serif !important;font-size:28px !important;color:#fff !important;font-weight:700 !important;
  text-shadow:0 0 10px rgba(63,169,245,.9),0 0 20px rgba(63,169,245,.8),0 0 40px rgba(63,169,245,.7),0 0 60px rgba(63,169,245,.6) !important;
  white-space:nowrap !important;
}

.seo-box h2{
  white-space: normal !important;
  font-weight: bold;
}

.lime-text{color:lime;font-size:18px;}

.creature-intro{
  padding:8px 0;border-radius:8px;display:block;text-align:left;
  max-width:900px;margin:0 auto;
  font-size:16px;opacity:.8;line-height:1.4;
}

.creature-intro p {
  color:#fff !important;
  padding: 0 !important;margin: 0 !important;
}

.faq-box, .seo-box {
  background:#111;border-radius:12px;border:1px solid #8B5FBF;
  box-shadow:inset 0 0 12px rgba(139,95,191,.12),0 0 20px rgba(139,95,191,.18);
  max-width:900px;margin:0 auto;padding-left:0 !important;padding-right:0 !important;
}

.seo-box {
  padding: 0 !important;
  border: none;
  background: none !important;
}

.faq-box .about-content h1 {
  font-family: 'Cinzel Decorative', serif !important;
  font-weight: bold;
  color: #fff !important;
  font-size: 32px;
  text-shadow:
    0 0 10px rgba(139, 95, 191, 0.9),
    0 0 20px rgba(139, 95, 191, 0.8),
    0 0 40px rgba(139, 95, 191, 0.7),
    0 0 60px rgba(139, 95, 191, 0.6);
}

.accordion-item{border:none !important;background:transparent !important;position:relative;}
.accordion-item::after{
  content:"";position:absolute;bottom:0;left:1rem;right:1rem;height:1px;
  background:linear-gradient(90deg,rgba(139,95,191,0),rgba(139,95,191,.8),rgba(139,95,191,0));
}
.accordion-item:last-child::after{display:none;}
.accordion-button{border:none !important;box-shadow:none !important;background:transparent !important;color:#fff !important;}
.accordion-body{border:none !important;padding-top:.5rem;padding-bottom:1rem;}
.accordion-button:hover{color:#A866E3 !important;}
.faq-title {
  text-align:center !important;font-family:'Cinzel Decorative',serif;
font-display: swap;color:#fff !important;font-weight:bold;margin-bottom:1.5rem;
  text-shadow:0 0 10px rgba(139,95,191,.9),0 0 20px rgba(139,95,191,.8),0 0 40px rgba(139,95,191,.7),0 0 60px rgba(139,95,191,.6); font-size: 29px;
}

.accordion-collapse{border-bottom:none !important;margin-bottom:0 !important;}
.accordion-button::after{content:"\25BC";font-size:.95rem;color:#96C;transform:rotate(0);transition:transform .3s ease;}
.accordion-button:not(.collapsed)::after{content:"\25B2";color:#96C;transform:rotate(0);}

:root{
  --aqua:#14ffe4;
  --ink:#0c0a1a;
  --panel:#0f0a22;
  --ink-600:#6ddfd2;
  --text:#e6e6f0;
  --muted:#a5a3bb;
}

.footer{position:relative;background:var(--ink);padding:56px 0 28px;}
.footer .container{
  background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,0));
  border-radius:18px;padding:36px 0 10px 36px;position:relative;border-top:2px solid rgba(20,255,228,.25);
  box-shadow:0 -10px 40px rgba(20,255,228,.06) inset;
}
.footer .container::after{
  content:"";position:absolute;left:16px;right:16px;bottom:0;height:6px;border-radius:6px 6px 0 0;
  background:linear-gradient(90deg,transparent,var(--aqua),transparent);opacity:.35;
}
.footer,.footer p,.footer small{color:var(--text);}
.footer p{color:var(--muted);}
.footer-brand .brand-wordmark{font-weight:700;letter-spacing:.2px;}
.footer .social{
  display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;
  border:1px solid rgba(255,255,255,.12);font-size:.8rem;text-decoration:none;color:var(--text);
  transition:transform .2s ease,border-color .2s ease,color .2s ease;
}
.footer .social:hover{transform:translateY(-2px);border-color:var(--aqua);color:var(--aqua);}
.footer-heading{font-size:.95rem;text-transform:uppercase;letter-spacing:.06em;color:#14ffe4;margin-bottom:.75rem;}
.footer-links{list-style:none;padding:0;margin:0;columns:2;column-gap:28px;}
.footer-links li{break-inside:avoid;margin:.35rem 0;}
.footer-links a{color:var(--text);text-decoration:none;opacity:.9;border-bottom:1px dotted transparent;transition:color .2s ease,border-color .2s ease;}
.footer-links a:hover{color:var(--aqua);border-color:rgba(20,255,228,.45);}
.footer-meta{border-top:1px solid rgba(255,255,255,.08);color:var(--muted);}
.footer .back-top{color:var(--text);text-decoration:none;}
.footer .back-top:hover{color:var(--aqua);}
.footer .socials a{color:#14ffe4;font-size:1.2rem;transition:color .2s ease;}
.footer .socials a:hover{color:#fff;}
.footer-panel{background:rgba(0,0,0,.35);border-radius:12px;padding:18px;}

.newsletter-block{display:flex;flex-wrap:wrap;border-radius:14px;overflow:hidden;background:#0c0a1a;}
.newsletter-content{
  flex:1 1 50%;color:#fff;display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;padding:18px 0;
}
.newsletter-image{flex:1 1 50%;min-height:260px;background:url("images/fantasy-creatures-newsletter.jpg") center/cover no-repeat;}
.newsletter-form-wrap{flex:1 1 100%;padding:1rem 2px;background:#0c0a1a;}
.newsletter-block h6{color:#14ffe4;margin-bottom:.75rem;}
.newsletter-block p{color:#a5a3bb;margin-bottom:0;}

/* FIXES BELOW */
.newsletter-form{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem;
}

.newsletter-form input{
  flex:1 1 180px;
  padding:.7rem 1rem;
  border-radius:8px;
  border:none;
  outline:none;
  min-width:0;
}

.newsletter-form button{
  background:#14ffe4;color:#000;font-weight:700;border-radius:8px;padding:.7rem 1.4rem;border:none;transition:box-shadow .2s;
  flex:0 0 auto;
}

.newsletter-form button:hover{box-shadow:0 0 14px rgba(20,255,228,.7);}

.newsletter-message{
  flex:0 0 100%;
}

/* PROFILE */

.character-name{
  font-family:'Cinzel Decorative',serif;
font-display: swap;font-size:2.2rem;line-height:2.5rem;color:#fff;text-align:left;
  text-shadow:0 0 12px rgba(20,255,228,.7);font-weight:700;
}
.character-name span{color:#73cac7;display:block;}
.character-intro{
  font-size:16px;color:#fff;border-bottom:1px solid #73cac7;padding-bottom:1rem;margin-bottom:.5rem;
}
.story{font-size:28px;font-weight:700;color:#fff;text-shadow:0 0 12px rgba(20,255,228,.7);}
.profile h1{font-size:30px;color:#fff;text-align:left;text-shadow:0 0 12px rgba(20,255,228,.7);font-weight:bold; margin: 5px 0;}
.profile h2{font-size:28px;font-weight:700;color:#fff;margin-bottom:1rem;text-shadow:0 0 12px rgba(20,255,228,.7);}
.profile h3{
  font-family:'Cinzel Decorative',serif;
font-display: swap;font-size:1.3rem;color:#14ffe4;margin-top:1.5rem;margin-bottom:.75rem;
  text-shadow:0 0 6px rgba(20,255,228,.4);
}
.profile-bio p{font-size:1rem;line-height:1.6;margin-bottom:.5rem;}
.profile-bio h2{margin-top:-.5rem;margin-bottom:.5rem;}
.profile-bio h3{margin-top:.5rem;margin-bottom:.5rem;}
.profile-intro p {
  border-bottom: 1px solid #73cac7;
  padding-bottom: 1rem;
  margin: 5px 0 5px 0;
}

.profile-container{
  background:var(--ink);border-radius:16px;border-top:2px solid rgba(20,255,228,.25);
  box-shadow:0 -10px 40px rgba(20,255,228,.06) inset;padding:2rem;
}
profile-grid,
.profile-grid{
  display:grid;grid-template-columns:1fr;
  grid-template-areas:"character" "media" "intro" "bio";
  row-gap:0;column-gap:0;max-width:900px;margin:0 auto;
}
.profile-character{grid-area:character;}
.profile-intro{grid-area:intro;}
.profile-media{grid-area:media;}
.profile-bio{grid-area:bio;}

.profile-image{
  max-width:320px;margin:0 auto;background:linear-gradient(135deg,#2d1f3d 0%,#1a0029 100%);
  border:none;border-radius:12px;overflow:hidden;box-shadow:0 0 12px rgba(20,255,228,.3);
  transition:transform .2s ease,box-shadow .2s ease;border:1px #018d82 solid;position:relative;
}
.profile-image .card-img-top{width:100%;height:auto;border-radius:16px;display:block;}
.image-name-box{
  position:absolute;top:15px;left:0;background:rgba(0,0,0,.55);color:#fff;font-size:16px;font-weight:600;
  padding:4px 16px;border-radius:0 6px 6px 0;border:1px #018d82 solid;border-left:none;z-index:10;
}

.profile-buttons{display:flex;gap:.5rem;margin-top:12px;max-width:320px;margin-left:auto;margin-right:auto;}
.chat-btn{
  flex:1;text-align:center;background:#14ffe4;color:#000;font-weight:700;border-radius:8px;padding:.7rem 1rem;
  border:none;transition:box-shadow .2s;text-decoration:none;display:inline-block;
}
.chat-btn:hover{box-shadow:0 0 14px rgba(20,255,228,.7);background:#3CC;color:#000;}

.pics-btn{
  flex:1;text-align:center;background:#c5d64c;color:#000;font-weight:700;border-radius:8px;padding:.7rem 1rem;
  border:none;transition:box-shadow .2s;text-decoration:none;display:inline-block;
}
.pics-btn:hover{box-shadow:0 0 14px rgba(50,205,50,.7);background:#acbc3c;color:#000;}

.chat-btn-centered{
  text-align:center;background:#14ffe4;color:#000;font-weight:700;border-radius:8px;padding:.7rem 1rem;
  border:none;transition:box-shadow .2s;text-decoration:none;display:block;margin:2rem auto 0;max-width:200px;width:100%;
}
.chat-btn-centered:hover{box-shadow:0 0 14px rgba(20,255,228,.7);background:#3CC;color:#000;}

/* CHARACTER SLIDER SECTION */

.character-slider-section{border-top:1px solid rgba(20,255,228,.3);border-bottom:1px solid rgba(20,255,228,.3);}
.slider-title{
  font-family:'Cinzel Decorative',serif;
font-display: swap;font-size:1.8rem;color:#fff;text-align:center;margin:.5rem 0 1.5rem;
  text-shadow:0 0 12px rgba(20,255,228,.7);font-weight:700;
}
.character-slider{position:relative;overflow:hidden;padding:0 1.25rem;cursor:grab;}
.character-slider:active{cursor:grabbing;}
.character-slider-container{display:flex;transition:transform .3s ease;--gap:1rem;gap:var(--gap);}
.character-slide{cursor:pointer;}

.character-slider .card-title {
  font-size: 14px !important;
  margin: 0;
}

.blue_wrapper {
	margin: 0 auto;
	max-width: 620px;
	background:linear-gradient(135deg,#1a0029 0%,#2d1f3d 100%);
  border-color:#14ffe4;box-shadow:0 0 20px rgba(20,255,228,.3);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;position:relative;
  transition:transform .2s ease,box-shadow .2s ease;		
}

.blue_wrapper:hover{transform:translateY(-2px);box-shadow:0 0 15px rgba(20,255,228,.4);border-color:#14ffe4;}
.blue_wrapper.recommended{border: 1px solid #14ffe4;
box-shadow:0 0 20px rgba(20,255,228,.3);}

/* Registration Page Styles */

/* Free Credits Heading */
.free-credits-heading {
  font-size: 2.5rem;
  font-weight: 700;
  color: #b4d453;
  text-shadow: 0 0 15px rgba(180, 212, 83, .8), 0 0 30px rgba(180, 212, 83, .5);
  margin: 20px 0 25px;
  letter-spacing: 2px;
}

/* Email display box */
#user-email-display {
  color: white;
  font-size: .9rem;
  background: rgba(20, 255, 228, .1);
  padding: 8px 15px;
  border-radius: 8px;
  border: 1px solid #14ffe4;
  box-shadow: 0 0 20px rgba(20, 255, 228, .3);
}

/* Envelope icon color */
#user-email-display .fa-envelope {
  color: #14ffe4;
}

/* Email address text color */
#email-address {
  color: #14ffe4;
}

/* Error messages */
.error-message {
  color: #14ffe4;
  font-size: .85rem;
  margin-top: 10px;
}

.error-message.hidden {
  display: none;
}

/* Success Popup Styles */
.registration-popup-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, .8);
  backdrop-filter: blur(10px);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10000;
  animation: fadeInOverlay .3s ease-out;
}

.registration-popup-container {
  background: linear-gradient(135deg, #2d1f3d 0%, #1a0029 100%);
  border: 2px solid #14ffe4;
  border-radius: 20px;
  padding: 40px;
  max-width: 500px;
  width: 90%;
  text-align: center;
  box-shadow: 0 0 40px rgba(20, 255, 228, .6), 0 20px 60px rgba(0, 0, 0, .8);
  animation: popupSlideIn .4s ease-out;
  position: relative;
  overflow: hidden;
}

.registration-popup-bg-gradient {
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: radial-gradient(circle, rgba(20, 255, 228, .1) 0%, transparent 70%);
  pointer-events: none;
}

.registration-popup-content {
  position: relative;
  z-index: 2;
}

.registration-popup-header {
  margin-bottom: 25px;
}

.registration-popup-icon {
  font-size: 3rem;
  color: #14ffe4;
  margin-bottom: 15px;
  animation: glowPulse 2s ease-in-out infinite;
}

.registration-popup-title {
  color: #fff;
  font-size: 2rem;
  font-weight: 700;
  margin: 0 0 10px 0;
  text-shadow: 0 0 20px rgba(20, 255, 228, .5);
}

.registration-popup-subtitle {
  color: #cfcfcf;
  font-size: 1.1rem;
  margin: 0;
  line-height: 1.5;
}

.registration-popup-credits-box {
  background: rgba(20, 255, 228, .15);
  border: 1px solid rgba(20, 255, 228, .3);
  border-radius: 15px;
  padding: 20px;
  margin: 25px 0;
}

.registration-popup-credits-title {
  color: #14ffe4;
  font-size: 1.3rem;
  font-weight: 600;
  margin-bottom: 8px;
}

.registration-popup-credits-amount {
  color: #14ffe4;
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 5px;
}

.registration-popup-credits-text {
  color: #cfcfcf;
  font-size: .95rem;
}

.registration-popup-demo-box {
  background: rgba(255, 255, 255, .05);
  border: 1px solid #14ffe4;
  border-radius: 10px;
  padding: 15px;
  margin: 20px 0;
  text-align: left;
  box-shadow: 0 0 20px rgba(20, 255, 228, .3);
}

.registration-popup-demo-label {
  color: #999;
  font-size: .8rem;
  margin-bottom: 5px;
}

.registration-popup-demo-text {
  color: #14ffe4;
  font-size: .9rem;
}

.registration-popup-demo-text-white {
  color: white;
}

.registration-popup-redirect-text {
  color: #14ffe4;
  font-size: .9rem;
  margin: 20px 0;
  font-style: italic;
}

.registration-popup-button {
  background: linear-gradient(135deg, #14ffe4 0%, #0ed6bf 100%);
  color: #000;
  border: none;
  border-radius: 12px;
  padding: 15px 40px;
  font-weight: 700;
  font-size: 1.1rem;
  cursor: pointer;
  transition: all .3s ease;
  box-shadow: 0 4px 15px rgba(20, 255, 228, .4);
  margin-top: 10px;
}

.registration-popup-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(20, 255, 228, .6);
}

.subscribe-button {
  background: linear-gradient(135deg, #14ffe4 0%, #0ed6bf 100%);
  color: #000;
  border: none;
  border-radius: 12px;
  padding: 15px 40px;
  font-weight: 700;
  font-size: 1.1rem;
  cursor: pointer;
  transition: all .3s ease;
  box-shadow: 0 4px 15px rgba(20, 255, 228, .4);
  margin-top: 10px;
}

.subscribe-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(20, 255, 228, .6);
}

/* Popup Animations */
@keyframes fadeInOverlay {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes popupSlideIn {
  from {
    transform: scale(.7) translateY(-50px);
    opacity: 0;
  }
  to {
    transform: scale(1) translateY(0);
    opacity: 1;
  }
}

@keyframes glowPulse {
  0%, 100% {
    transform: scale(1);
    filter: drop-shadow(0 0 10px rgba(20, 255, 228, .5));
  }
  50% {
    transform: scale(1.05);
    filter: drop-shadow(0 0 20px rgba(20, 255, 228, .8));
  }
}

@media (min-width:1200px){
  .character-slide{flex:0 0 200px;}
  .character-slide .character-card img{height:280px;}
}
@media (min-width:768px) and (max-width:1199.98px){
  .character-slide{flex:0 0 180px;}
  .character-slide .card-title{font-size:11px;}
  .character-slide .character-card img{height:260px;}
}

.header-actions-mobile-sticky{
  position: static;
}

@media (max-width:767.98px){
  .character-slide{flex:0 0 160px;}
  .character-slide .card-title{font-size:10px;min-height:28px;}
  .character-slide .character-card img{height:240px;}
  
  .faq-box .about-content h1 {
  font-size: 28px;
}

.hero{
    align-items:flex-start;
    padding-top: 80px;
  }

.hero .col-lg-6.order-2{
  min-height:auto !important;
  height:auto !important;
}

.navbar{position:relative;overflow:visible;}
  .navbar.sticky-lg-top{position:static;}
  .navbar,.navbar .container,.navbar .d-flex.w-100{overflow:visible;}
  .header-actions-mobile-sticky{
    position:relative;
    z-index:1001;
    background:#000;
    padding:0.5rem 15px;
    margin:0 -15px;
    width:calc(100% + 30px);
    box-shadow:0 2px 8px rgba(0,0,0,.3);
    transition:all 0.2s ease;
  }
  .header-actions-mobile-sticky.is-stuck{
    position:fixed !important;
    top:0 !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    margin:0 !important;
    padding: 15px !important;
    box-shadow:0 2px 8px rgba(0,0,0,.3) !important;
  }

}

@media (max-width:575.98px){.character-slider{padding:0 .75rem;}
.profile-intro {margin-top: 15px; }
}

.character-slide .character-card{margin:0;height:100%;transition:none;position:relative;}
.character-slide .character-card:hover{transform:none;box-shadow:none;border-color:rgba(20,255,228,.3);}
.character-slide .character-card img{
  width:100%;height:280px;object-fit:cover;border-radius:12px 12px 0 0;
}
.character-slide .image-name-box{
  position:absolute;top:10px;left:0;background:rgba(0,0,0,.7);color:#fff;font-size:12px;font-weight:600;
  padding:3px 10px;border-radius:0 6px 6px 0;border:1px #018d82 solid;border-left:none;z-index:10;opacity:1 !important;display:block !important;
}

.slider-nav{
  position:absolute;top:50%;transform:translateY(-50%);background:rgba(20,255,228,.1);
  border:1px solid #14ffe4;color:#14ffe4;width:40px;height:40px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;z-index:10;
}
.slider-nav:hover{background:#14ffe4;color:#000;box-shadow:0 0 15px rgba(20,255,228,.7);}
.slider-nav.prev{left:.25rem;}
.slider-nav.next{right:.25rem;}
.slider-nav.disabled{opacity:.3;cursor:not-allowed;pointer-events:none;}
.slider-nav.disabled:hover{background:rgba(20,255,228,.1);color:#14ffe4;box-shadow:none;}

.pictures-section{border-top:1px solid rgba(20,255,228,.3);}

.pictures-title {
  font-family: 'Cinzel Decorative', serif;
  font-size: 1.8rem;
  line-height: 1.2;
  text-shadow: 0 0 12px rgba(20, 255, 228, 0.7);
  font-weight: 700;
}

.pictures-subtitle{
  font-size:1rem;opacity:.9;max-width:900px;margin:0 auto;color:#37C7CE !important;font-weight:bold;
}
.picture-item{
  background:linear-gradient(135deg,#2d1f3d 0%,#1a0029 100%);
  border:1px solid rgba(20,255,228,.3);border-radius:8px;overflow:hidden;position:relative;cursor:pointer;
  transition:transform .2s ease,box-shadow .2s ease;
}

.picture-item.can_unlock {
  transform: translateY(-2px);
  box-shadow: 0 0 15px rgba(20,255,228,.4);
  border: 2px solid #b4d453;
}

.picture-item.can_unlock:hover {
  transform: translateY(-4px);
  box-shadow: 0 0 25px rgba(20,255,228,.7);
  border: 1px solid #14ffe4;
}
.picture-item img{width:100%;height:100%;object-fit:cover;}

/* start-slider */

.character-slider{padding:0 !important;overflow:hidden;}
.character-slider-container{display:flex;gap:16px;transition:transform .3s ease;}
.character-slide{flex:0 0 auto;box-sizing:border-box;}
@media (min-width:1200px){.character-slide{flex-basis:calc((100% - 4*16px)/5);}}
@media (min-width:768px) and (max-width:1199.98px){.character-slide{flex-basis:calc((100% - 2*16px)/3);}}
@media (max-width:767.98px){.character-slide{flex-basis:calc((100% - 1*16px)/2);}}
.character-slide .character-card img{width:100% !important;height:auto !important;object-fit:unset !important;display:block;border-radius:12px 12px 0 0;}
.character-slide{width:auto !important;}

/* end-slider */

/* unlock-image-popup-start */

.picture-item.locked img{filter:blur(6px);pointer-events:none;}
.picture-item.locked{position:relative;cursor:pointer;}
.unlock-overlay{position:fixed;inset:0;background:rgba(0,0,0,.7);display:grid;place-items:center;z-index:1050;}
.unlock-box{
  background:#0f1220;color:#fff;border:1px solid rgba(255,255,255,.12);
  border-radius:12px;padding:22px 20px;width:min(420px,92vw);box-shadow:0 10px 40px rgba(0,0,0,.45);
}
.unlock-title{margin:0 0 .5rem;font-weight:600;text-align:center;}
.unlock-sub{margin:0 0 1rem;text-align:center;color:#aeb0c2;}
.unlock-actions{display:flex;justify-content:center;gap:.75rem;margin-top:.25rem;}
.unlock-btn{border:none;border-radius:10px;padding:.6rem 1.2rem;font-weight:700;cursor:pointer;}
.unlock-btn.no{background:#2b3045;color:#e6e6f0;}
.unlock-btn.no:hover{filter:brightness(1.1);}
.unlock-btn.yes{background:#14ffe4;color:#061015;}
.unlock-btn.yes:hover{filter:brightness(1.05);}
.unlock-overlay[hidden]{display:none !important;}

/* unlock-image-popup-end */

/* unlock-image-popup-start (duplicate kept) */

.picture-item.locked img{filter:blur(6px);pointer-events:none;}
.picture-item.locked{position:relative;cursor:pointer;}
.unlock-overlay{position:fixed;inset:0;background:rgba(0,0,0,.7);display:grid;place-items:center;z-index:1050;}
.unlock-box{
  background:#0f1220;color:#fff;border:1px solid rgba(255,255,255,.12);
  border-radius:12px;padding:22px 20px;width:min(420px,92vw);box-shadow:0 10px 40px rgba(0,0,0,.45);
}
.unlock-title{margin:0 0 .5rem;font-weight:600;text-align:center;}
.unlock-sub{margin:0 0 1rem;text-align:center;color:#aeb0c2;}
.unlock-actions{display:flex;justify-content:center;gap:.75rem;margin-top:.25rem;}
.unlock-btn{border:none;border-radius:10px;padding:.6rem 1.2rem;font-weight:700;cursor:pointer;}
.unlock-btn.no{background:#2b3045;color:#e6e6f0;}
.unlock-btn.no:hover{filter:brightness(1.1);}
.unlock-btn.yes{background:#14ffe4;color:#061015;}
.unlock-btn.yes:hover{filter:brightness(1.05);}
.unlock-overlay[hidden]{display:none !important;}

/* unlock-image-popup-end */

/* Full-Screen Image Viewer */

.image-viewer{
  position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.7);
  display:flex;align-items:center;justify-content:center;z-index:2000;cursor:pointer;
}
.image-viewer-content{
  position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;
  padding:20px;box-sizing:border-box;
}
.image-viewer-img{
  max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;
  background:linear-gradient(135deg,#2d1f3d 0%,#1a0029 100%);border:1px solid rgba(20,255,228,.3);
  border-radius:8px;box-shadow:0 20px 60px rgba(0,0,0,.8);pointer-events:none;
}
.image-viewer-close{
  position:absolute;top:20px;right:20px;background:rgba(255,255,255,.9);border:none;border-radius:50%;
  width:50px;height:50px;font-size:28px;font-weight:bold;color:#333;cursor:pointer;display:flex;align-items:center;justify-content:center;
  transition:all .2s ease;z-index:2001;
}
.image-viewer-close:hover{background:#fff;transform:scale(1.1);}
@media (max-width:1024px) and (min-width:769px){
  .image-viewer-content{padding:30px;}
  .image-viewer-close{top:30px;right:30px;width:45px;height:45px;font-size:26px;}
}
@media (max-width:768px){
  .image-viewer-close{top:10px;right:10px;width:35px;height:35px;font-size:20px;}
  .image-viewer-content{padding:15px;}
  .navbar-brand img {
    width: 343px;
}
}

/* SEO Content Section */

#seo-content{background:var(--ink);margin-top:1rem;}
.seo-content-box{
  border:1px solid rgba(20,255,228,.3);border-radius:16px;box-shadow:0 0 12px rgba(20,255,228,.3);
  margin-top:2rem;margin-bottom:2rem;
}

.seo-text-content h2{font-family: 'Cinzel Decorative', serif !important;
  color: #fff !important;

  text-shadow: 0 0 12px rgba(20, 255, 228, 0.7) !important;
  font-weight: 700 !important;}
.seo-text-content h3, .faq-box h3 {color:#14ffe4; margin-top:1.5rem; font-size: 1.5rem;font-weight: bold;}
.seo-box h3 {color:#14ffe4;font-size: 19px !important; margin: 5px 0 !important; font-weight: normal !important;     margin-top: 1.5rem;}
.seo-text-content p{color:#cfcfcf;line-height:1.6;}
.seo-text-content ul{color:#cfcfcf;padding-left:1.5rem;}
.seo-text-content li{margin-bottom:.5rem;}
.seo-cta .btn{
  background:#14ffe4;color:#000;font-weight:700;border:none;border-radius:8px;padding:.75rem 2rem;transition:all .3s ease;
}
.seo-cta .btn:hover{background:#0ed6bf;box-shadow:0 0 15px rgba(20,255,228,.7);transform:translateY(-2px);}
.seo-image-container {
  position: relative;
  overflow: hidden;
}

.seo-image-container img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
  border: 1px solid rgba(20,255,228,.3);
  border-radius: 16px;
  box-shadow: 0 0 12px rgba(20,255,228,.3);
}

.position-sticky {
  position: sticky;
  z-index: 2;
  padding-top: 20px;
}

.position-sticky img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 0;
  object-fit: cover;
}

@media (max-width:991.98px){
  .seo-content-box{margin-top:0;}
  .seo-title{text-align:left !important;}
  
  .creature-intro p {
	text-align: center;
	margin-bottom: 10px!important;
}
}
@media (min-width:992px){
  .seo-image-container{position:sticky;padding-top:2.5rem;z-index:10;}

  .sticky-left-col {
    position: sticky;
    top: 75px;
    height: fit-content;
  }

}

/* Video */

.video-container{width:100%;height:0;padding-bottom:133.25%;position:relative;overflow:hidden;}
.responsive-video{
  position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;border-radius:12px;background:#000;border:none;outline:none;
  -webkit-appearance:none;-moz-appearance:none;appearance:none;pointer-events:none;
}
.responsive-video::-webkit-media-controls,
.responsive-video::-webkit-media-controls-panel,
.responsive-video::-webkit-media-controls-play-button,
.responsive-video::-webkit-media-controls-timeline,
.responsive-video::-webkit-media-controls-current-time-display,
.responsive-video::-webkit-media-controls-time-remaining-display,
.responsive-video::-webkit-media-controls-mute-button,
.responsive-video::-webkit-media-controls-volume-slider,
.responsive-video::-webkit-media-controls-fullscreen-button{display:none !important;}

.video-wrap {
    position: relative;
    display: inline-block;
    width: 100%;
    max-width: 406px;
    border: 1px solid #8B5FBF;
    border-radius: 16px;
    box-shadow: 0 0 18px rgba(20,255,228,.6);
    overflow: hidden;
  }

  .video-wrap .play-overlay {
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    pointer-events: auto;
    transition: opacity .2s ease;
  }

  .video-wrap .play-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 78px; height: 78px;
    border: 2px solid #8B5FBF;
    border-radius: 50%;
    background: rgba(0,0,0,.45);
    box-shadow: 0 0 18px rgba(20,255,228,.6);
    cursor: pointer;
  }
  .video-wrap .play-btn svg {
    width: 26px; height: 26px;
    margin-left: 3px;
    fill: #8B5FBF;
  }

  .video-wrap.is-playing .play-overlay { opacity: 0; pointer-events: none; }

  .video-element {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 3 / 4;
    object-fit: cover;
    background: #000;
    border-radius: 16px;
  }

/* BASE (NON-MEDIA) */

.chat-navbar{position:sticky !important;top:0 !important;z-index:1020 !important;}
.chat-navbar .container{padding-left:10px !important;padding-right:10px !important;}
.chat-navbar img{border-radius:12px;border:1px solid #14ffe4; width: 70px !important; height: 70px !important;}
.chat-navbar .d-flex.justify-content-between{gap:.25rem !important;border-bottom:1px solid #14ffe4;padding-bottom:15px;}
.chat-navbar .text-light{font-size:15px;font-weight:600;color:#14ffe4 !important;text-align:center;}

.chat-input-container{margin-top:2rem;padding:0 1rem;}
.chat-input-bar{
  display:flex;align-items:center;background:#fff;border-radius:25px;padding:.5rem 1rem;gap:.75rem;
  box-shadow:0 2px 10px rgba(20,255,228,.3);
}
/*.camera-btn{background:none;border:none;color:#000;font-size:1.2rem;cursor:pointer;padding:.5rem;border-radius:50%;transition:background-color .2s ease;}
.camera-btn:hover{background-color:rgba(0,0,0,.1);}*/
.chat-input {
    flex: 1;
    border: none;
    background: transparent;
    color: #000;
    font-size: 1rem;
    outline: none;
    padding: 0 0;
    width: 85%;
}
.chat-input::placeholder{color:rgba(0,0,0,.6);}
.send-btn{background:#000;color:#14ffe4;border:none;padding:.5rem 1.5rem;border-radius:20px;font-weight:600;cursor:pointer;transition:all .2s ease;}
.send-btn:hover{background:#333;transform:translateY(-1px);}

.chat-demo{background:#1a0029;padding:1rem 0;width:100%;}
.chat-container{max-width:700px;margin:0 auto;display:flex;flex-direction:column;padding-bottom:100px;}
.message{display:flex;margin-bottom:1rem;}
.creature-message{justify-content:flex-start;}
.user-message{justify-content:flex-end;}
.message-content{max-width:70%;padding:1rem;border-radius:6px;position:relative;}
.creature-message .message-content{background:linear-gradient(135deg,#14ffe4 0%,#0ed6bf 100%);color:#000;border-bottom-left-radius:6px;}
.user-message .message-content{background:linear-gradient(135deg,#007bff 0%,#0056b3 100%);color:#fff;border-bottom-right-radius:4px;}
.message-text{font-size:1rem;line-height:1.5;font-weight:500;}

.chat-input-container{
  position:fixed;bottom:0;left:0;right:0;background:#1a0029;padding:1rem;z-index:1000;
}
.chat-input-bar{
  display:flex;align-items:center;background:#fff;border-radius:6px;padding:.5rem 1rem;gap:.75rem;
  box-shadow:0 -2px 10px rgba(0,0,0,.3);max-width:700px;margin:0 auto;
}
.send-btn{border-radius:6px;}

#pictures{scroll-margin-top:120px;}

/* SUBSCRIPTION PAGE */

.subscription-title{
  font-family:'Cinzel Decorative',serif;
font-display: swap;font-size:3rem;color:#fff;text-shadow:0 0 12px rgba(20,255,228,.7);
  font-weight:700;margin-bottom:1rem;
}
.subscription-subtitle{font-size:1.2rem;color:#cfcfcf;line-height:1.6;}
.features-list{margin-bottom:3rem;}

.feature-item{
  display:flex;align-items:flex-start;margin:1rem 0;padding:1.5rem;
  background:linear-gradient(135deg,#2d1f3d 0%,#1a0029 100%);
  border:1px solid rgba(20,255,228,.3);border-radius:12px;transition:transform .2s ease,box-shadow .2s ease;
}
.feature-item:hover{transform:translateY(-2px);box-shadow:0 0 15px rgba(20,255,228,.4);border-color:#14ffe4;}
.feature-icon{

  width:50px;height:50px;background:linear-gradient(135deg,#14ffe4 0%,#0ed6bf 100%);
  border-radius:50%;display:flex;align-items:center;justify-content:center;margin-right:1.5rem;flex-shrink:0;
}
.feature-icon i{color:#000;font-size:1.2rem;}
.feature-content h4{color:#fff;font-size:1.2rem;margin-bottom:.5rem;font-weight:600;}
.feature-content p{color:#cfcfcf;margin:0;line-height:1.5;}

.subscription-benefits{
  background:linear-gradient(135deg,#2d1f3d 0%,#1a0029 100%);
  border:1px solid rgba(20,255,228,.3);border-radius:12px;padding:2rem;
}
.subscription-benefits h3{color:#14ffe4;font-size:1.5rem;margin-bottom:1rem;text-shadow:0 0 6px rgba(20,255,228,.4);}
.subscription-benefits ul{list-style:none;padding:0;margin:0;}
.subscription-benefits li{color:#cfcfcf;margin-bottom:.75rem;padding-left:1.5rem;position:relative;}
.subscription-benefits li::before{content:"✓";position:absolute;left:0;color:#14ffe4;font-weight:bold;}

.payment-options{
  background:linear-gradient(135deg,#2d1f3d 0%,#1a0029 100%);
  border:1px solid rgba(20,255,228,.3);border-radius:16px;padding:2rem;position:sticky;top:2rem;
}
.payment-title{
  font-family:'Cinzel Decorative',serif;
font-display: swap;color:#fff;text-align:center;margin-bottom:2rem;
  text-shadow:0 0 12px rgba(20,255,228,.7);font-weight:700;
}

.plan-card{
  background:linear-gradient(135deg,#1a0029 0%,#2d1f3d 100%);
  border:1px solid rgba(20,255,228,.3);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;position:relative;
  transition:transform .2s ease,box-shadow .2s ease;
}
.plan-card:hover{transform:translateY(-2px);box-shadow:0 0 15px rgba(20,255,228,.4);border-color:#14ffe4;}

.plan-card.recommended{border-color:#14ffe4;box-shadow:0 0 20px rgba(20,255,228,.3);}
.plan-badge{
  position:absolute;top:-17px;right:16px;background:linear-gradient(135deg,#14ffe4 0%,#0ed6bf 100%);
  color:#000;padding:.5rem 1rem;border-radius:20px;font-size:.8rem;font-weight:700;
}
.plan-header{text-align:center;margin-bottom:1.5rem;padding-top:1rem;}
.plan-header h3{color:#fff;font-size:1.5rem;margin-bottom:0;font-weight:600;}

.plan-price{display:flex;align-items:baseline;justify-content:center;margin-bottom:.5rem;}
.currency{color:#14ffe4;font-size:1.2rem;font-weight:600;}
.amount{color:#fff;font-size:3rem;font-weight:700;margin:0 .25rem;}
.period{color:#cfcfcf;font-size:1rem;font-weight:bold;}

.existing-customer-discount{
  background:linear-gradient(135deg,rgba(20,255,228,.15) 0%,rgba(20,255,228,.05) 100%);
  border:1px solid rgba(20,255,228,.4);border-radius:8px;padding:1rem;margin:1.5rem 0;position:relative;overflow:hidden;
}
.existing-customer-discount::before{
  content:"";position:absolute;top:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,#14ffe4,#0ed6bf,#14ffe4);animation:pulse 2s infinite;
}
@keyframes pulse{0%,100%{opacity:.5}50%{opacity:1}}

.discount-content{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.5rem;text-align:center;}
.discount-label{color:#cfcfcf;font-size:.9rem;font-weight:500;}
.discount-price{color:#14ffe4;font-size:1.4rem;font-weight:700;text-shadow:0 0 8px rgba(20,255,228,.5);}

.plan-features{margin-top:1.5rem;}
.plan-features ul{list-style:none;padding:0;margin:0 0 2rem;}
.plan-features li{color:#cfcfcf;margin-bottom:.75rem;padding-left:1.5rem;position:relative;}
.plan-features li::before{content:"✓";position:absolute;left:0;color:#14ffe4;font-weight:bold;}

.plan-btn{
  width:100%;background:#14ffe4;color:#000;border:none;border-radius:8px;padding:.75rem 1.5rem;
  font-weight:700;font-size:1.1rem;transition:all .3s ease;
}
.plan-btn:hover{background:#0ed6bf;box-shadow:0 0 15px rgba(20,255,228,.7);transform:translateY(-2px);}

.payment-methods{text-align:center;margin-top:2rem;padding-top:1.5rem;border-top:1px solid rgba(20,255,228,.3);}
.payment-methods h4{color:#fff;font-size:1.1rem;margin-bottom:1rem;text-align:center;}
.payment-note{color:#cfcfcf;margin:0;font-size:.9rem;}
.payment-note i{color:#14ffe4;margin-right:.5rem;}

.payment-options-list{display:flex;justify-content:space-around;margin-bottom:1rem;}
.payment-option{
  display:flex;flex-direction:column;align-items:center;padding:1rem;background:linear-gradient(135deg,#1a0029 0%,#2d1f3d 100%);
  border:1px solid rgba(20,255,228,.3);border-radius:8px;transition:all .3s ease;cursor:pointer;min-width:120px;
}
.payment-option:hover{border-color:#14ffe4;box-shadow:0 0 10px rgba(20,255,228,.4);transform:translateY(-2px);}
.payment-option i{color:#14ffe4;font-size:1.5rem;margin-bottom:.5rem;}
.payment-option span{color:#fff;font-size:.9rem;font-weight:600;}

#buy{scroll-margin-top:120px;}
.subscribe-grid{display:grid;gap:1.5rem;}
.subscribe-grid .sg-intro{order:1;}
.subscribe-grid .sg-pay{order:2;}
.subscribe-grid .sg-features{order:3;}

.payment-options{padding:2rem;}
.payment-title{margin-bottom:1.25rem;}
.plan-card{padding:1rem;margin-bottom:1rem;}
.plan-price{margin-bottom:.25rem;}
.existing-customer-discount{margin:0 !important;padding:.75rem;}
.discount-price{font-size:1.25rem;}
.plan-features{margin-top:1rem;}
.plan-features ul{margin:0 0 1rem;}
.plan-features li{margin-bottom:.5rem;}
.plan-btn{display:none !important;}
.payment-options-list{gap:.75rem;}
.payment-option{padding:.75rem .9rem;}

/* CREDIT CARD FORM */

.cc-form-card{max-width:620px;margin:0 auto;}
.cc-title{
  display:flex;justify-content:center;align-items:center;gap:.6rem;margin:0 0 1.5rem;
  color:#fff;font-weight:700;font-size:1.6rem;text-align:center;
}
.cc-title i{color:#14ffe4;}
.cc-accepted{text-align:center;margin-bottom:1rem;}
.cc-accepted-label{display:block;color:#cfcfcf;font-size:.95rem;margin-bottom:.35rem; text-align: center;}
.cc-accepted-img{display:block;margin:0 auto;max-width:220px;height:auto;}

.cc-field{margin-bottom:1rem;}
.cc-field label{display:block;color:#cfcfcf;font-size:.95rem;margin-bottom:.35rem;}
.cc-field input{
  width:100%;background:#0e0716;color:#fff;border:1px solid rgba(20,255,228,.35);
  border-radius:10px;padding:.75rem .95rem;outline:none;transition:border-color .2s ease,box-shadow .2s ease;
}
.cc-field input::placeholder{color:rgba(255,255,255,.35);}
.cc-field input:focus{border-color:#14ffe4;box-shadow:0 0 0 3px rgba(20,255,228,.15);}

.cc-row{display:flex;gap:.75rem;margin-bottom:1rem;}
.cc-row .cc-field{flex:1;margin-bottom:0;}

.cc-submit{
  width:100%;background:#14ffe4;color:#000;border:0;border-radius:12px;padding:.95rem 1.1rem;
  font-weight:900;font-size:1.05rem;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  transition:transform .15s ease,box-shadow .2s ease,background .2s ease;
}
.cc-submit:hover{background:#0ed6bf;box-shadow:0 0 16px rgba(20,255,228,.6);transform:translateY(-1px);}

.cc-trust{text-align:center;color:#9fdad4;font-size:.9rem;margin-top:.8rem;}
.cc-trust i{margin-right:.4rem;color:#14ffe4;}

.input-with-icon{position:relative;}
.input-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#14ffe4;font-size:.9rem;z-index:2;}
.input-with-icon input{padding-left:40px;}

.credit-card-page .col-lg-6{width:100% !important;}

/* Registration Complete Page */
body.page-template-page-complete-registration .payment-options {
    background: linear-gradient(135deg, #2d1f3d 0%, #1a0029 100%);
    border: 1px solid rgba(20, 255, 228, 1);
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 0 20px rgba(20, 255, 228, .3);
    padding: 2rem;
    width: 100%;
    margin: 0;
    max-width: 620px;
    margin: 0 auto;
}

/* Force dark background for registration form inputs */
.registration-complete-page .cc-field input {
    background: #0e0716 !important;
    color: white !important;
    border: 1px solid rgba(20, 255, 228, 0.35) !important;
}

.registration-complete-page .cc-field input:focus {
    background: #0e0716 !important;
    color: white !important;
    border-color: #14ffe4 !important;
    box-shadow: 0 0 0 3px rgba(20, 255, 228, 0.15) !important;
}

.registration-complete-page .cc-field input:-webkit-autofill,
.registration-complete-page .cc-field input:-webkit-autofill:hover,
.registration-complete-page .cc-field input:-webkit-autofill:focus,
.registration-complete-page .cc-field input:-webkit-autofill:active {
    -webkit-text-fill-color: white !important;
    -webkit-box-shadow: 0 0 0px 1000px #0e0716 inset !important;
    background-color: #0e0716 !important;
    background: #0e0716 !important;
    border: 1px solid rgba(20, 255, 228, 0.35) !important;
}

.cc-terms{text-align:center;margin:1rem 0;}
.cc-terms p{color:#cfcfcf;font-size:.85rem;line-height:1.4;margin:0;}
.cc-terms a{color:#14ffe4;text-decoration:underline;transition:color .2s ease;}
.cc-terms a:hover{color:#0ed6bf;}

.video-container,
.image-container,
.character-slider-container { position: relative; }

.badge-star {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 25;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 79px;
  height: 79px;
  background: radial-gradient(circle at center, rgba(20,255,228,0.8) 0%, rgba(0,212,170,0.15) 70%, transparent 100%);
  clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);
  color: #fff;
  font-weight: 700;
  font-size: 13px;
  letter-spacing: 0.5px;
  text-shadow: 0 0 8px rgba(0,0,0,0.8);
  border: 1px solid rgba(20,255,228,.8);
  box-shadow: 0 0 14px rgba(20,255,228,.6), inset 0 0 3px rgba(20,255,228,.3);
  opacity: .95;
}

.badge-star--left { right:auto; left:0; }

.profile-intro p:empty,
.profile-intro p:has(br:only-child),
.profile-intro h1:empty,
.profile-intro h2:empty,
.profile-intro h3:empty,
.profile-intro div:empty { 

  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

.profile-intro > * { margin-top: 0; }
.profile-intro > * + * { margin-top: .6rem; }

.profile-intro hr { display: none !important; }

.username-dropdown {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer;
}

.username-dropdown:hover {
    opacity: 0.8;
}

.credits-display {
    color: #fff;
    margin-right: 1rem;
}

.dropdown-toggle::after {
    margin-left: 0.5rem;
}

.dropdown-menu {
    background-color: #2d2d2d;
    border: 1px solid #444;
}

.dropdown-item {
    color: #fff;
    padding: 0.75rem 1rem;
}

.dropdown-item:hover {
    background-color: #3d3d3d;
    color: #fff;
}

.dropdown-item i {
    width: 20px;
    margin-right: 0.5rem;
}

.username-dropdown.dropdown-toggle::after {
    display: none !important;
}

.divider {
    height: 1px;
    background-color: #444;
    margin: 0.5rem 0;
}

.text-danger,
.teal {
    color: #14ffe4 !important;
	line-height: 20px;
}

/* My Creatures Page */

.my-creatures-page .card-body {
  padding: 0 10px !important;
}

.my-creatures-page .card-title{
  font-size:14px;
}

.my-creatures-page .card-body {
  padding: 0 12px 8px 12px !important;
}

.my-creatures-page .remove-creature-icon {
  display: inline-block;
  font-size: 1.4rem;
  color: #b4d453;
  cursor: pointer;
  transition: color .3s ease, transform .2s ease, opacity .3s ease;
  text-shadow: 0 0 4px rgba(20, 255, 228, .6);
}

.my-creatures-page .remove-creature-icon:hover {
  color: #0ed6bf;
  opacity: 1;
  transform: scale(1.15);
}

.my-creatures-info {
  color: #a5a3bb;
  font-size: 0.9rem;
  margin: 0.5rem 0 0 0;
  line-height: 1.5;
  font-weight: bold;
}

.my-creatures-info i {
  margin: 0 4px;
}

.remove-confirm-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.8);
  backdrop-filter: blur(5px);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10000;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.remove-confirm-overlay.active {
  opacity: 1;
}

.remove-confirm-modal {
  background: linear-gradient(135deg, #2d1f3d 0%, #1a0029 100%);
  border: 2px solid #14ffe4;
  border-radius: 16px;
  padding: 2rem;
  max-width: 450px;
  width: 90%;
  box-shadow: 0 0 30px rgba(20, 255, 228, 0.4), 0 20px 60px rgba(0, 0, 0, 0.8);
  transform: scale(0.9);
  transition: transform 0.3s ease;
}

.remove-confirm-overlay.active .remove-confirm-modal {
  transform: scale(1);
}

.remove-confirm-header {
  text-align: center;
  margin-bottom: 10px;
}

.remove-confirm-header i {
  font-size: 2.5rem;
  color: #b4d453;
  margin-bottom: 0.5rem;
  display: block;
  text-shadow: 0 0 10px rgba(20, 255, 228, 0.6);
}

.remove-confirm-header h3 {
  color: #fff;
  font-size: 1.5rem;
  font-weight: 700;
  margin: 0;
  text-shadow: 0 0 10px rgba(20, 255, 228, 0.5);
}

.remove-confirm-body {
  margin-bottom: 1.5rem;
  text-align: center;
}

.remove-confirm-body p {
  color: #cfcfcf;
  font-size: 1rem;
  line-height: 1.6;
  margin: 0;
}

.remove-confirm-body p strong {
  color: #14ffe4;
  font-weight: 600;
}

.remove-confirm-actions {
  display: flex;
  gap: 1rem;
  justify-content: center;
}

.remove-confirm-actions button {
  padding: 0.75rem 2rem;
  border-radius: 8px;
  font-weight: 700;
  font-size: 1rem;
  cursor: pointer;
  transition: all 0.3s ease;
  border: none;
}

.remove-confirm-cancel {
  background: rgba(255, 255, 255, 0.1);
  color: #cfcfcf;
  border: 1px solid rgba(255, 255, 255, 0.2);
}

.remove-confirm-cancel:hover {
  background: rgba(255, 255, 255, 0.2);
  color: #fff;
  transform: translateY(-2px);
}

.remove-confirm-remove {
  background: linear-gradient(135deg, #14ffe4 0%, #0ed6bf 100%);
  color: #000;
  box-shadow: 0 4px 15px rgba(20, 255, 228, 0.4);
}

.remove-confirm-remove:hover {
  background: linear-gradient(135deg, #0ed6bf 0%, #14ffe4 100%);
  box-shadow: 0 6px 20px rgba(20, 255, 228, 0.6);
  transform: translateY(-2px);
}

/* My Creatures Page-End */

/* blog start */

/* ===== SINGLE POST PAGE STYLES ===== */

.single-post-featured-image {
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 0 20px rgba(20, 255, 228, 0.3);
    border: 1px solid #018d82;
}

.single-post-featured-image img {
    width: 100%;
    height: auto;
    display: block;
}

.single-post-header {
    margin-bottom: 1.5rem;
}

.single-post-title {
    font-size: 35px;
    color: #fff;
    line-height: 38px;
    margin-bottom: 1rem;
    font-weight: bold;
}

.single-post-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 1.5rem;
    color: #cfcfcf;
    font-size: 0.95rem;
}

.single-post-meta i {
    color: #14ffe4;
}

.single-post-content {
    color: #cfcfcf;
    line-height: 1.8;
    font-size: 1.05rem;
}

.single-post-content h2 {
    color: #fff;
    font-size: 2rem;
}

.single-post-content a {
    color: #14ffe4;
    text-decoration: underline;
}

.single-post-content a:hover {
    color: #b4d453;
}

.single-post-content ul,
.single-post-content ol {
    margin-bottom: 1.25rem;
    padding-left: 2rem;
}

.single-post-content li {
    margin-bottom: 0.5rem;
}

.single-post-content img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
    box-shadow: 0 0 15px rgba(20, 255, 228, 0.2);
}

.post-navigation {
    margin-top: 2rem;
    margin-bottom: 2rem;
}

.post-nav-link {
    display: flex;
    align-items: center;
    padding: 1rem;
    background: linear-gradient(135deg, #2d1f3d 0%, #1a0029 100%);
    border: 1px solid #018d82;
    border-radius: 8px;
    color: #14ffe4;
    text-decoration: none;
    transition: all 0.3s ease;
    height: 100%;
}

.post-nav-link:hover {
    border-color: #14ffe4;
    box-shadow: 0 0 15px rgba(20, 255, 228, 0.9);
    transform: translateY(-2px);
}

.post-nav-prev {
    text-align: left;
}

.post-nav-next {
    text-align: right;
    justify-content: flex-end;


}

.post-nav-label {
    font-size: 0.85rem;
    opacity: 0.8;
    margin-bottom: 0.25rem;
}

.post-nav-title {
    font-weight: 600;
    font-size: 0.95rem;
	color: #fff;
}

@media (max-width: 768px) {
    .single-post-title {
        font-size: 1.8rem;
    }
    
    .single-post-content {
        font-size: 1rem;
    }
    
    .single-post-meta {
        gap: 1rem;
    }
    
    .post-nav-link {
        flex-direction: column;
        text-align: center;
    }
    
    .post-nav-next {
        flex-direction: column;
    }
}

/* ===== ARTICLES PAGE STYLES ===== */

.articles-page-title {
    font-size: 35px;
    line-height: 38px;
}

/* Blog Card Styles */
.blog-card {
    background: linear-gradient(135deg, #2d1f3d 0%, #1a0029 100%) !important;
    border: none !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 0 12px rgba(20, 255, 228, 0.3) !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease !important;
    border: 1px #018d82 solid !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
}

.blog-card:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 0 20px rgba(20, 255, 228, 0.6) !important;
}

.blog-image-container {
    width: 100%;
    padding-top: 100%; /* Square aspect ratio */
    position: relative;
    overflow: hidden;
    background: #000;
}

/* Fix for Imagify picture elements */
.blog-image-container picture,
.blog-featured-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
    image-rendering: -webkit-optimize-contrast;
    image-rendering: auto;
    -ms-interpolation-mode: bicubic;
}

.blog-image-container picture {
    display: block;
}

.blog-image-container picture img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    image-rendering: -webkit-optimize-contrast;
    image-rendering: auto;
    -ms-interpolation-mode: bicubic;
}

.blog-card:hover .blog-featured-image,
.blog-card:hover .blog-image-container picture {
    transform: scale(1.05);
}

.blog-placeholder-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #1a0029;
    color: #14ffe4;
    font-size: 3rem;
}

.blog-card .card-body {
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.blog-title {
    font-size: 25px;
    color: #fff;
    line-height: 28px;
    text-decoration: none;
}

.blog-card a:hover .blog-title {
    color: #14ffe4;
}

.blog-excerpt {
    font-size: 0.95rem;
    color: #cfcfcf;
    margin-bottom: 1rem;
    flex-grow: 1;
    line-height: 1.6;
}

.blog-read-more {
    color: #14ffe4;
    font-weight: 600;
    font-size: 0.9rem;
    margin-top: auto;
    transition: color 0.2s ease;
}

.blog-card:hover .blog-read-more {
    color: #b4d453;
}

.blog-read-more i {
    transition: transform 0.2s ease;
}

.blog-card:hover .blog-read-more i {
    transform: translateX(5px);
}

/* Pagination Styles */
.pagination {
    list-style: none;
    padding: 0;
}

.pagination li {
    display: inline-block;
    margin: 0 5px;
}

.pagination a,
.pagination span {
    display: inline-block;
    padding: 10px 15px;
    background: linear-gradient(135deg, #2d1f3d 0%, #1a0029 100%);
    border: 1px solid #018d82;
    border-radius: 8px;
    color: #14ffe4;
    text-decoration: none;
    transition: all 0.3s ease;
}

.pagination a:hover {
    background: #14ffe4;
    color: #000;
    box-shadow: 0 0 15px rgba(20, 255, 228, 0.9);
}

.pagination .current {
    background: #14ffe4;
    color: #000;
    border-color: #14ffe4;
}

.pagination .dots {
    background: transparent;
    border: none;
    color: #cfcfcf;
}

.post-categories-meta a {
	color: #cfcfcf !important;
}

.blog-intro {
    max-width: 820px !important;
    margin: 0 auto;
}

/* blog end */

@media (max-width: 375px){
  .navbar .navbar-toggler { margin-right: 12px; }
}

/* add-credits-start */

/* add-credits-start */
.add-credits-intro{
  position:sticky;top:2rem;align-self:start;
}
.add-credits-intro .subscription-title,
.add-credits-user-info .subscription-title{
  font-family:'Poppins',sans-serif !important;
  font-size:30px !important;
  text-align:center !important;
}
.add-credits-user-info{
  display:flex;flex-direction:column;gap:1.5rem;
}
.credits-expired-message{
  background:linear-gradient(135deg,#2d1f3d 0%,#1a0029 100%);
  border:1px solid rgba(20,255,228,.4);border-radius:16px;padding:2rem;
  text-align:center;
}
.expired-icon{
  width:80px;height:80px;margin:0 auto 1.5rem;
  background:linear-gradient(135deg,#14ffe4 0%,#0ed6bf 100%);
  border-radius:50%;display:flex;align-items:center;justify-content:center;
  box-shadow:0 0 20px rgba(20,255,228,.5);
}
.expired-icon i{
  color:#000;font-size:2.5rem;font-weight:700;
}
.expired-title{
  font-family:'Poppins',sans-serif;color:#14ffe4;font-size:1.8rem;
  margin-bottom:1rem;font-weight:700;
}
.expired-text{
  color:#cfcfcf;font-size:1.1rem;line-height:1.6;margin:0;
}
.expired-text strong{color:#14ffe4;font-weight:700;}
.purchase-instructions{
  background:linear-gradient(135deg,#2d1f3d 0%,#1a0029 100%);
  border:1px solid rgba(20,255,228,.3);border-radius:12px;padding:1.5rem;
}
.instructions-title{
  color:#14ffe4;font-size:1.3rem;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem;
  font-weight:600;
}
.instructions-title i{font-size:1.1rem;}
.instructions-text{
  color:#cfcfcf;font-size:1rem;line-height:1.6;margin:0;
}
/* Credit Package Selection */
.credit-packages{
  display:flex;flex-direction:column;gap:1rem;margin-top:.5rem;margin-bottom:1.5rem;
}
.credit-package-option{
  display:block;position:relative;cursor:pointer;
  background:linear-gradient(135deg,#2d1f3d 0%,#1a0029 100%);
  border:2px solid rgba(20,255,228,.3);border-radius:12px;padding:1rem;
  transition:all .3s ease;
}
.credit-package-option:hover{
  border-color:rgba(20,255,228,.5);
  box-shadow:0 0 10px rgba(20,255,228,.2);
}
.credit-package-option.selected{
  background:linear-gradient(135deg,#14ffe4 0%,#0ed6bf 100%);
  border-color:#14ffe4;
  box-shadow:0 0 20px rgba(20,255,228,.5);
}
.credit-package-option input[type="radio"]{
  position:absolute;opacity:0;pointer-events:none;
}
.package-content{
  display:flex;justify-content:space-between;align-items:center;
}
.package-credits{
  font-family:'Poppins',sans-serif;color:#fff;font-size:1.2rem;font-weight:600;
}
.credit-package-option.selected .package-credits{
  color:#000;
}
.package-price{
  font-family:'Poppins',sans-serif;color:#14ffe4;font-size:1.3rem;font-weight:700;
}
.credit-package-option.selected .package-price{
  color:#000;
}
.package-savings {
    margin-top: 0;
    color: #b4d453;
    font-size: 17px;
    font-weight: 400;
    font-family: 'Poppins', sans-serif;
}
.credit-package-option.selected .package-savings{
  color:#000;
}
/* Payment methods inside card (add-credits specific) */
.payment-methods.in-card{
  margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(20,255,228,.3);
}
.payment-methods.in-card h4{
  color:#fff;font-size:1.1rem;margin-bottom:1rem;text-align:center;
}
.payment-methods.in-card h4 strong{
  color:#fff;
}
.payment-option.active{
  background:linear-gradient(135deg,#14ffe4 0%,#0ed6bf 100%) !important;
  border-color:#14ffe4 !important;
  box-shadow:0 0 15px rgba(20,255,228,.6) !important;
}
.payment-option.active i,
.payment-option.active span{
  color:#000 !important;
}
.continue-button{
  width:100%;margin-top:1.5rem;padding:1rem 2rem;
  background:linear-gradient(135deg,#14ffe4 0%,#0ed6bf 100%);
  border:2px solid #14ffe4;border-radius:8px;
  color:#000;font-family:'Poppins',sans-serif;font-size:1.1rem;font-weight:700;
  cursor:pointer;transition:all .3s ease;
  box-shadow:0 0 15px rgba(20,255,228,.3);
}
.continue-button:hover:not(.disabled-state){
  box-shadow:0 0 25px rgba(20,255,228,.5);
  transform:translateY(-2px);
}
.continue-button.disabled-state{
  background:linear-gradient(135deg,#2d1f3d 0%,#1a0029 100%);
  border-color:rgba(20,255,228,.3);color:#fff;
  cursor:pointer;box-shadow:none;
}
.continue-button.disabled-state:hover{
  box-shadow:0 0 10px rgba(20,255,228,.2);
}
.continue-error{
  margin-top:.75rem;color:#b4d453;font-size:.9rem;text-align:center;font-weight:700;
}
/* Mobile responsive for add-credits page */
@media (max-width:991.98px){
  .add-credits-intro{position:static;top:auto;}
}

/* add-credits-end */

/* Subscribe Header Button Styles */
.btn-subscribe-header{
  background:#b4d453;
  color:#000;
  font-weight:700;
  padding:0.35rem 1rem;
  border-radius:6px;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  white-space:nowrap;
  transition:all .2s ease;
  border:none;
  font-size:16px;
}
.btn-subscribe-header:hover{
  background:#9fc03a;
  color:#000;
  transform:translateY(-1px);
  box-shadow:0 2px 8px rgba(180,212,83,.4);
}

/* Subscribe button responsive */
@media (max-width:991.98px){
  .navbar .d-flex.w-100{
    flex-wrap:wrap;
  }
  .subscribe-button-wrapper{
    flex-basis:100%;
    width:100%;
    display:flex;
    justify-content:center;
    margin:0.5rem 0 0;
    order:1;
  }
  .navbar-brand{
    order:0;
    flex:0 0 auto;
  }
  .header-actions-mobile-sticky{
    order:2;
    flex:0 0 auto;
    width:100%;
  }
  .btn-subscribe-header{
    width:auto;
    margin:0;
  }
}
@media (min-width:992px){
  .subscribe-button-wrapper{
    display:flex;
    align-items:center;
    margin-left:auto;
    margin-right:0.5rem;
  }
  .navbar .d-flex.w-100{
    flex-wrap:nowrap;
  }
  .navbar .d-flex.w-100 > .header-actions-mobile-sticky{
    margin-left:0;
  }
  .btn-subscribe-header{
    margin:0;
  }
}

/* Subscribe Header Button Styles - END */

/* Age Verification & Cookie Consent Popup - Compact Fantasy Theme */

.age-verification-overlay {
  position: fixed;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%) translateY(120%);
  z-index: 9999;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
  max-width: 600px;
  width: calc(100% - 40px);
}

.age-verification-overlay.show {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}

.age-verification-modal {
  background: linear-gradient(135deg, #2d1f3d 0%, #1a0029 100%);
  border: 2px solid #14ffe4;
  border-radius: 16px;
  padding: 20px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5), 0 0 20px rgba(20, 255, 228, 0.3);
  position: relative;
}

.age-verification-modal::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(135deg, rgba(20, 255, 228, 0.05) 0%, rgba(0, 153, 136, 0.05) 100%);
  border-radius: 14px;
  pointer-events: none;
}

.age-verification-content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 5px;
  text-align: center;
  align-items: center;
}

.age-verification-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
  margin-bottom: 8px;
  width: 100%;
}

.age-verification-icon-wrapper {
  flex-shrink: 0;
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(20, 255, 228, 0.15);
  border: 2px solid #14ffe4;
  border-radius: 12px;
}

.age-verification-icon {
  font-size: 1.5rem;
  color: #14ffe4;
  font-weight: 700;
}

.age-verification-title {
  font-size: 1.2rem;
  font-weight: 700;
  color: #fff;
  margin: 0;
  font-family: 'Poppins', sans-serif;
  text-align: center;
}

.age-verification-text {
  font-size: 0.85rem;
  color: #cfcfcf;
  line-height: 1.5;
  margin: 0;
  font-family: 'Poppins', sans-serif;
  text-align: center;
}

.age-verification-text a {
  color: #14ffe4;
  text-decoration: underline;
  cursor: pointer;
}

.age-verification-text a:hover {
  color: #b4d453;
}

.age-verification-buttons {
  display: flex;
  gap: 10px;
  margin-top: 8px;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
}

.age-verification-btn {
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  padding: 10px 20px;
  border-radius: 10px;
  border: none;
  cursor: pointer;
  transition: all 0.3s ease;
  font-size: 0.9rem;
  flex: 1;
  min-width: 120px;
}

.age-verification-btn-confirm {
  background: #14ffe4;
  border: 2px solid #14ffe4;
  color: #000;
  font-weight: 700;
}

.age-verification-btn-confirm:hover {
  background: #0ed6bf;
  border-color: #0ed6bf;
  color: #000;
  box-shadow: 0 0 15px rgba(20, 255, 228, 0.6);
  transform: translateY(-1px);
}

.age-verification-btn-settings {
  background: rgba(180, 212, 83, 0.1);
  border: 2px solid #b4d453;
  color: #b4d453;
}

.age-verification-btn-settings:hover {
  background: #b4d453;
  color: #000;
  box-shadow: 0 0 15px rgba(180, 212, 83, 0.6);
  transform: translateY(-1px);
}

.age-verification-btn:active {
  transform: translateY(0);
}

.age-verification-cookie-notice {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px;
  background: rgba(20, 255, 228, 0.05);
  border: 1px solid rgba(20, 255, 228, 0.2);
  border-radius: 10px;
  font-size: 0.8rem;
  color: #cfcfcf;
  margin-top: 4px;
  text-align: center;
  width: 100%;
}

.age-verification-cookie-notice i {
  color: #14ffe4;
  font-size: 1rem;
}

/* Mobile Responsive */
@media (max-width: 768px) {
  .age-verification-overlay {
    bottom: 10px;
    width: calc(100% - 20px);
    max-width: none;
  }

  .age-verification-modal {
    padding: 16px;
  }

  .age-verification-header {
    flex-direction: column;
    align-items: center;
    gap: 12px;
  }

  .age-verification-icon-wrapper {
    width: 40px;
    height: 40px;
  }

  .age-verification-icon {
    font-size: 1.2rem;
  }

  .age-verification-title {
    font-size: 1.1rem;
  }

  .age-verification-text {
    font-size: 0.8rem;
  }

  .age-verification-buttons {
    flex-direction: column;
  }

  .age-verification-btn {
    width: 100%;
    min-width: auto;
  }
}

@media (max-width: 480px) {
  .age-verification-overlay {
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    max-width: 100%;
    transform: translateY(100%);
    border-radius: 0;
  }

  .age-verification-overlay.show {
    transform: translateY(0);
  }

  .age-verification-modal {
    border-radius: 16px 16px 0 0;
    border-left: none;
    border-right: none;
    border-bottom: none;
    margin: 0 1rem;
  }
}

/* Cookie Settings Modal - start */
.cookie-settings-modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  backdrop-filter: blur(4px);
  z-index: 10000;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

.cookie-settings-modal.show {
  display: flex;
  opacity: 1;
  visibility: visible;
}

.cookie-settings-content {
  background: linear-gradient(135deg, #2d1f3d 0%, #1a0029 100%);
  border: 2px solid #14ffe4;
  border-radius: 16px;
  padding: 24px;
  max-width: 600px;
  width: calc(100% - 40px);
  max-height: 90vh;
  overflow-y: auto;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5), 0 0 20px rgba(20, 255, 228, 0.3);
  position: relative;
  transform: scale(0.9);
  transition: transform 0.3s ease;
}

.cookie-settings-modal.show .cookie-settings-content {
  transform: scale(1);
}

.cookie-settings-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(20, 255, 228, 0.2);
}

.cookie-settings-title {
  font-size: 1.5rem;
  font-weight: 700;
  color: #fff;
  margin: 0;
  font-family: 'Poppins', sans-serif;
}

.cookie-settings-close {
  background: transparent;
  border: none;
  color: #14ffe4;
  font-size: 1.5rem;
  cursor: pointer;
  padding: 0;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  transition: all 0.3s ease;
}

.cookie-settings-close:hover {
  background: rgba(20, 255, 228, 0.1);
  color: #b4d453;
}

.cookie-settings-description {
  color: #cfcfcf;
  font-size: 0.9rem;
  line-height: 1.6;
  margin-bottom: 24px;
  text-align: center;
}

.cookie-category {
  background: rgba(20, 255, 228, 0.05);
  border: 1px solid rgba(20, 255, 228, 0.2);
  border-radius: 12px;
  padding: 16px;
  margin-bottom: 16px;
}

.cookie-category-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 8px;
}

.cookie-category-title {
  font-size: 1.1rem;
  font-weight: 600;
  color: #fff;
  margin: 0;
  font-family: 'Poppins', sans-serif;
}

.cookie-category-description {
  color: #cfcfcf;
  font-size: 0.85rem;
  line-height: 1.5;
  margin: 0;
}

.cookie-category.essential .cookie-toggle {
  opacity: 0.5;
  cursor: not-allowed;
}

.cookie-toggle-wrapper {
  position: relative;
  display: inline-block;
  width: 50px;
  height: 26px;
}

.cookie-toggle {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

.cookie-toggle-label {
  display: block;
  width: 50px;
  height: 26px;
  background: rgba(255, 255, 255, 0.2);
  border-radius: 26px;
  position: relative;
  cursor: pointer;
  transition: background 0.3s ease;
}

.cookie-toggle-label::after {
  content: '';
  position: absolute;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #fff;
  top: 3px;
  left: 3px;
  transition: transform 0.3s ease;
}

.cookie-toggle:checked + .cookie-toggle-label {
  background: #14ffe4;
}

.cookie-toggle:checked + .cookie-toggle-label::after {
  transform: translateX(24px);
}

.cookie-toggle:disabled + .cookie-toggle-label {
  opacity: 0.5;
  cursor: not-allowed;
}

.cookie-settings-buttons {
  display: flex;
  gap: 12px;
  margin-top: 24px;
  justify-content: center;
  flex-wrap: wrap;
}

.cookie-settings-btn {
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  padding: 12px 24px;
  border-radius: 10px;
  border: none;
  cursor: pointer;
  transition: all 0.3s ease;
  font-size: 0.9rem;
  min-width: 120px;
}

.cookie-settings-btn-save {
  background: rgba(20, 255, 228, 0.1);
  border: 2px solid #14ffe4;
  color: #14ffe4;
}

.cookie-settings-btn-save:hover {
  background: #14ffe4;
  color: #000;
  box-shadow: 0 0 15px rgba(20, 255, 228, 0.6);
}

.cookie-settings-btn-accept-all {
  background: rgba(180, 212, 83, 0.1);
  border: 2px solid #b4d453;
  color: #b4d453;
}

.cookie-settings-btn-accept-all:hover {
  background: #b4d453;
  color: #000;
  box-shadow: 0 0 15px rgba(180, 212, 83, 0.6);
}

@media (max-width: 768px) {
  .cookie-settings-content {
    padding: 20px;
    max-width: 95%;
  }

  .cookie-settings-title {
    font-size: 1.3rem;
  }

  .cookie-settings-buttons {
    flex-direction: column;
  }

  .cookie-settings-btn {
    width: 100%;
    min-width: auto;
  }
}

/* Cookie Settings Modal - end */


/* MAIN-OTHER RESPONSIVE MEDIA QUERIES */

/* >= 992px */
@media (min-width:992px){
  .footer .sitemap-panel,.footer .newsletter-content.footer-panel{margin-top:40px !important;}
  .col-lg-5{position:sticky;top:2rem;z-index:10;}

  .hero .order-lg-1 .hero-join{display:inline-flex !important;align-self:flex-start;margin-top:.75rem;}
  .hero h1{  
  font-size:27px; line-height: 32px;
}
  .hero .tagline{margin:0 !important;}

  .navbar.sticky-lg-top{position:sticky;top:0;z-index:1020;}

  .subscribe-grid{
    grid-template-columns:58.333% 41.667%;
    grid-template-rows:auto 1fr;align-items:start;column-gap:2rem;row-gap:1.25rem;
  }
  .sg-intro{grid-column:1;grid-row:1;}
  .sg-features{grid-column:1;grid-row:2;}
  .sg-pay{grid-column:2;grid-row:1 / span 2;}
}

/* >= 768px */
@media (min-width:768px){
  .chat-navbar .d-flex.justify-content-between{gap:.5rem !important;margin:0 auto;max-width:700px;}
  .chat-navbar img{width:70px; height: 70px;}
  .chat-navbar .text-light{font-size:16px !important;}

  .profile-grid{
    grid-template-columns:280px 1fr !important;
    grid-template-areas:"media character" "media intro" "media bio" !important;
    column-gap:2rem !important;row-gap:0 !important;align-items:start !important;
  }
  .profile-media{padding:0 !important;margin:0 !important;padding-left:15px !important;}
  .profile-character{display:block !important;}
  .profile-image{max-width:260px !important;margin:0 !important;}
  .profile-buttons{max-width:260px !important;margin-left:0 !important;margin-right:0 !important;}
}

/* 768px–991.98px */
@media (min-width:768px) and (max-width:991.98px){
  .character-name{font-size:1.5rem !important;line-height:1.8rem !important;}
  .character-slide{width:180px;}
  .character-slide .character-card img{height:220px;}

  .footer .sitemap-panel{display:flex;flex-direction:column;justify-content:center;height:100%;}
  .footer .sitemap-panel .footer-links{text-align:left;}

  #site-footer .row > .col-md-6.order-1{flex:0 0 66.6667% !important;max-width:66.6667% !important;}
  #site-footer .row > .col-md-6.order-2{flex:0 0 33.3333% !important;max-width:33.3333% !important;}
  
  .hero{
    align-items:center !important;
    padding-top:0 !important;
  }

  .hero .col-lg-6{
    min-height:auto !important;
  }
  
  .hero .col-lg-6.order-2{
    min-height:auto !important;
    height:auto !important;
    overflow:hidden;
  }
}


/* <= 991.98px */
@media (max-width:991.98px){
  .hero .d-lg-none .hero-join{display:none !important;}
  .hero .order-3 .hero-join{display:inline-flex !important;margin:0 auto 24px !important;}

  .footer .container{padding:28px;}
  .footer-links{columns:1;}

  #pictures{scroll-margin-top:80px;}

  .payment-options{position:static;top:auto;margin-bottom:1.25rem;}
  #buy{scroll-margin-top:80px;}
  .sg-intro .subscription-content{text-align:center;}
  .subscription-title{text-align:center;}
  .subscription-subtitle{text-align:center;margin-left:auto;margin-right:auto;}

  .no-gutter-mobile{--bs-gutter-x:0;padding-left:0 !important;padding-right:0 !important;}
}

/* <= 768px */
@media (max-width:768px){
  .chat-input-bar{padding:.4rem .8rem;gap:.5rem;}
  .send-btn{padding:.4rem 1rem;font-size:.9rem;}

  .chat-container{padding:0;padding-bottom:61px;}
  .message-content{max-width:85%;padding:.8rem 1.2rem;}
  .message-text{font-size:.9rem;}
  
  .hero-title {
    font-size:45px;
  }
}

/* <= 767.98px */
@media (max-width:767.98px){
  .tagline{white-space:normal;}
  .hero{text-align:center;padding:0;}

  .navbar-brand{display:block !important;margin:0 auto !important;text-align:center !important;padding:0 10px !important;}
  .navbar-brand img{width:auto !important;max-width:100% !important;}

  .character-name{text-align:center;font-size:1.5rem;line-height:1.8rem;}
  .image-name-box{top:10px;left:0;font-size:14px;padding:3px 12px;}

  .profile-container{padding:1rem 0 !important;margin:0 !important;}
  .newsletter-block{border-radius:14px;overflow:hidden;background:#0c0a1a;}
  .newsletter-content,.newsletter-image{flex:1 1 100%;}
  .newsletter-content{padding:16px;display:block;}
  .newsletter-image{min-height:300px;background-position:center top;background-size:cover;}
  .newsletter-form-wrap{padding:12px 16px 16px;}

  #site-footer .newsletter-form{display:flex !important;flex-direction:row !important;align-items:center;gap:.5rem;width:100%;}
  #site-footer .newsletter-form .form-control{flex:1 1 auto !important;margin:0 !important;}
  #site-footer .newsletter-form .btn{flex:0 0 auto !important;white-space:nowrap;margin:0 !important;padding:.6rem 1rem;}
  #site-footer .newsletter-content,#site-footer .newsletter-form-wrap{padding-left:0 !important;padding-right:0 !important;}

  .cc-row{flex-direction:column;}
}

/* <= 575.98px */
@media (max-width:575.98px){
  .footer{padding:20px 10px;}
  .footer .container{padding:22px;}
  .footer-panel{padding:18px 0;}

  .profile-media{padding:0 !important;}
  .profile-image{margin:0 !important;max-width:100% !important;}
  .profile-buttons{margin:12px 0 0 0 !important;max-width:100% !important;}

  .character-intro{border-bottom:none;padding-bottom:.5rem;margin-bottom:.5rem;box-shadow:none;text-align:center;}

  .character-slide{width:160px;}
  .character-slide .character-card img{height:200px;}
  .slider-nav{width:35px;height:35px;}

  .pictures-title{font-size:1.5rem;}
  .pictures-subtitle{font-size:16px;}

  .payment-options{padding:1rem;}
  .plan-card{padding:1rem;}
  .payment-options-list{gap:.5rem;}
  
      .hero-title {
		font-size: 30px;
        line-height: 33px;
        padding-bottom: 10px;
}

}

/* END MAIN-OTHER RESPONSIVE MEDIA QUERIES */

@media (max-width:380px){
  .plan-card .plan-header{padding-top:2.75rem;}
  .plan-card .plan-badge{right:12px;}
}