:root{--primary:#1B2D45;--primary-light:#2E4A6E;--secondary:#D9C5B2;--accent:#A0714F;--accent-light:#C49A6C;--bg-light:#FAF8F5;--text-dark:#1A1A1A;--text-muted:#5C5C5C;--white:#FFFFFF;--gold-gradient:linear-gradient(135deg,#A0714F 0%,#C49A6C 100%);--soft-shadow:0 15px 35px rgba(0,0,0,0.05);--card-shadow:0 4px 20px rgba(0,0,0,0.06);--glass:rgba(255,255,255,0.88);--radius-sm:10px;--radius-md:16px;--radius-lg:24px;--transition:0.3s cubic-bezier(0.4,0,0.2,1)}
.skip-link{position:absolute;left:20px;top:-60px;z-index:10000;padding:12px 20px;background:var(--primary,#1B2D45);color:#fff;font-family:Montserrat,system-ui,sans-serif;font-weight:600;font-size:14px;border-radius:8px;text-decoration:none;transition:top 0.2s ease}
.skip-link:focus,.skip-link:focus-visible{top:20px;outline:3px solid #FFD166;outline-offset:2px}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:'Montserrat',sans-serif;background-color:var(--bg-light);color:var(--text-dark);line-height:1.75;overflow-x:hidden;overflow-x:clip}
html{overflow-x:hidden;overflow-x:clip}
a{text-decoration:none!important;color:inherit;transition:var(--transition)}
img{max-width:100%;height:auto;transition:transform 0.6s cubic-bezier(0.2,0.8,0.2,1)}
h1,h2,h3,h4,.serif{font-family:'Cormorant Garamond',serif;font-weight:600}
#main-nav{position:fixed;top:0;width:100%;height:88px;display:flex;justify-content:space-between;align-items:center;padding:0 clamp(1rem,4vw,6%);background:var(--glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);z-index:1600;border-bottom:1px solid rgba(212,175,55,0.15);transition:height 0.4s ease,box-shadow 0.4s ease,background 0.4s ease}
#main-nav.nav-scrolled{height:64px;box-shadow:0 4px 20px rgba(0,0,0,0.08);background:rgba(255,255,255,0.96)}
#main-nav.nav-scrolled .logo{font-size:clamp(0.9rem,1vw+0.7rem,1.15rem)}
.logo{font-size:clamp(1.02rem,1vw+0.8rem,1.35rem);font-weight:800;color:var(--primary);letter-spacing:2px;text-transform:uppercase;white-space:nowrap;transition:font-size 0.4s ease}
.nav-links{display:flex;gap:clamp(0.7rem,1.5vw,2rem);align-items:center;min-width:0}
.nav-links>a{color:var(--text-dark);font-weight:500;font-size:clamp(0.8rem,0.25vw+0.75rem,0.9rem);position:relative;padding:0.3rem 0;white-space:nowrap}
.nav-links>a::after{content:'';position:absolute;bottom:-3px;left:0;width:0;height:1px;background:var(--accent);transition:width 0.3s ease}
.nav-links>a:hover::after{width:100%}
.nav-links>a:hover{color:var(--primary)}
.nav-cta-btn{background:var(--gold-gradient);color:var(--white)!important;padding:0.6rem clamp(0.95rem,1vw,1.4rem);border-radius:50px;font-weight:600;font-size:0.85rem;display:flex;align-items:center;gap:0.4rem;box-shadow:0 4px 15px rgba(160,113,79,0.3);transition:transform 0.3s ease,box-shadow 0.3s ease;white-space:nowrap}
.nav-cta-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(160,113,79,0.4);color:var(--white)!important}
.nav-cta-btn::after{display:none!important}
.dropdown{position:relative;display:inline-block}
.dropdown-content{display:none;position:absolute;background:var(--white);min-width:440px;box-shadow:0 10px 40px rgba(0,0,0,0.12);border-radius:var(--radius-md);padding:0.75rem 0;z-index:1100;top:calc(100%+12px);left:0;border:1px solid rgba(160,113,79,0.1)}
.dropdown-content::before{content:'';position:absolute;top:-12px;left:0;width:100%;height:12px;background:transparent}
.dropdown-content a{color:var(--text-dark)!important;padding:0.75rem 1.5rem;display:flex;align-items:center;gap:0.6rem;font-size:0.88rem;transition:background 0.2s,padding-left 0.2s,color 0.2s}
.dropdown-content a:hover{background:var(--bg-light);color:var(--primary)!important;padding-left:1.8rem}
.dropdown:hover .dropdown-content,.dropdown:focus-within .dropdown-content,.dropdown.open .dropdown-content{display:grid;grid-template-columns:1fr 1fr;gap:0;animation:menuFadeIn 0.35s cubic-bezier(0.165,0.84,0.44,1)}
.dropdown .drop-trigger .fa-chevron-down{transition:transform 0.25s ease;display:inline-block}
.dropdown:hover .drop-trigger .fa-chevron-down,.dropdown:focus-within .drop-trigger .fa-chevron-down,.dropdown.open .drop-trigger .fa-chevron-down,.dropdown .drop-trigger[aria-expanded="true"] .fa-chevron-down{transform:rotate(180deg)}
@keyframes menuFadeIn{from{opacity:0;transform:translateY(10px)}
to{opacity:1;transform:translateY(0)}
}
@media (max-width:600px){.dropdown-content{position:static;min-width:0;width:100%;box-shadow:none;border:none;padding:0;background:transparent}
.dropdown:hover .dropdown-content,.dropdown:focus-within .dropdown-content,.dropdown.open .dropdown-content{grid-template-columns:1fr}
}
.lang-switcher .drop-trigger{display:flex;align-items:center;gap:0.4rem;color:var(--primary)!important;font-weight:600;font-size:0.88rem;cursor:pointer}
.lang-dropdown{min-width:160px;grid-template-columns:1fr!important}
.lang-flag{font-size:1.1rem}
.lang-active{background:rgba(27,45,69,0.08)!important;color:var(--primary)!important;font-weight:600}
.mobile-menu-btn{display:none;font-size:1.6rem;cursor:pointer;z-index:2000;color:var(--primary);width:44px;height:44px;align-items:center;justify-content:center;border-radius:10px;transition:background 0.2s}
.mobile-menu-btn:hover{background:rgba(27,45,69,0.08)}
@media (max-width:1180px){#main-nav{height:78px}
.nav-links>a,.lang-switcher .drop-trigger{font-size:0.82rem}
.dropdown-content{min-width:200px}
}
@media (max-width:1100px){.mobile-menu-btn{display:flex}
.nav-links{position:fixed;top:0;right:-100%;width:85%;max-width:360px;height:100%;max-height:100%;background:rgba(255,255,255,0.99);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);flex-direction:column;justify-content:flex-start;align-items:flex-start;padding:72px 2.5rem 2.5rem;transition:right 0.45s cubic-bezier(0.85,0,0.15,1);z-index:1500;gap:0.2rem;box-shadow:-10px 0 40px rgba(0,0,0,0.15);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
.nav-links.active{right:0}
.nav-links::before{content:'';display:block;position:absolute;top:0;left:0;right:0;height:64px;background:rgba(255,255,255,0.99);border-bottom:1px solid rgba(184,134,11,.1);z-index:1;pointer-events:none}
.nav-links>a{font-size:1.2rem;font-family:'Cormorant Garamond',serif;width:100%;padding:0.7rem 0;border-bottom:1px solid rgba(27,45,69,0.07)}
.nav-cta-btn{width:100%;justify-content:center;padding:1rem 1.5rem;font-size:1rem;margin-top:0.8rem;border-bottom:none!important}
.dropdown{width:100%}
.dropdown-content{position:static;display:none;box-shadow:none;background:rgba(27,45,69,0.05);border-radius:var(--radius-sm);padding:0.4rem 0;margin-top:0.3rem;border:none;overflow:hidden;transition:none}
.dropdown.open .dropdown-content{display:grid;grid-template-columns:1fr;max-height:60vh;overflow-y:auto}
.dropdown-content a{font-size:0.95rem;padding:0.55rem 1rem}
.drop-trigger{pointer-events:auto;cursor:pointer;opacity:1;font-size:1.2rem;font-family:'Cormorant Garamond',serif;display:flex;align-items:center;justify-content:space-between;width:100%;padding:0.7rem 0;border-bottom:1px solid rgba(27,45,69,0.07);text-transform:none;letter-spacing:normal}
.drop-trigger .fa-chevron-down{transition:transform 0.25s ease;font-size:0.7rem;opacity:0.6}
.dropdown.open .drop-trigger .fa-chevron-down{transform:rotate(180deg)}
.lang-switcher{order:-1;margin-bottom:0.3rem}
.lang-dropdown{background:rgba(27,45,69,0.05)!important}
.lang-trigger{font-size:0.9rem!important;font-family:'Montserrat',sans-serif!important}
}
.nav-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.5);z-index:1400}
.nav-overlay.active{display:block}
.quick-nav{background:var(--white);padding:1.2rem 0;border-top:1px solid rgba(160,113,79,0.08);border-bottom:1px solid rgba(160,113,79,0.08);position:relative;z-index:10;overflow-x:auto;scrollbar-width:none}
.quick-nav::-webkit-scrollbar{display:none}
.quick-nav-container{max-width:1200px;margin:0 auto;display:flex;justify-content:center;gap:1.5rem;padding:0 5%;white-space:nowrap}
.q-link{font-family:'Cormorant Garamond',serif;font-size:1rem;font-weight:700;color:var(--primary);text-transform:uppercase;letter-spacing:1.5px;display:flex;align-items:center;gap:0.4rem;transition:var(--transition);position:relative;padding:0.2rem 0}
.q-link i{font-size:0.8rem}
.q-link:hover{color:var(--accent);transform:translateY(-2px)}
.q-link::after{content:'';position:absolute;bottom:-3px;left:0;width:0;height:1px;background:var(--accent);transition:width 0.3s}
.q-link:hover::after{width:100%}
.keyword-strip{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-light) 100%);padding:1rem 0;overflow:hidden}
.keyword-strip-inner{display:flex;align-items:center;gap:1.5rem;animation:scrollKeywords 25s linear infinite;white-space:nowrap;width:max-content;padding:0 2rem}
.keyword-strip-inner span{color:rgba(255,255,255,0.9);font-size:0.85rem;font-weight:500;letter-spacing:1px;text-transform:uppercase}
.ks-dot{color:var(--accent-light)!important;font-size:0.7rem!important}
@keyframes scrollKeywords{0%{transform:translateX(0)}
100%{transform:translateX(-50%)}
}
.trust-strip{background:var(--white);border-bottom:1px solid rgba(27,45,69,0.06);padding:1.5rem 0}
.trust-strip-inner{max-width:800px;margin:0 auto;display:flex;justify-content:center;gap:3rem;padding:0 5%}
.trust-item{text-align:center}
.trust-item strong{font-family:'Cormorant Garamond',serif;font-size:1.6rem;color:var(--primary);display:block;line-height:1}
.trust-item span{font-size:0.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;margin-top:0.2rem;display:block}
@media (max-width:600px){.trust-strip-inner{gap:1.5rem}
.trust-item strong{font-size:1.3rem}
.trust-item span{font-size:0.65rem}
}
.hero{min-height:auto;display:flex;align-items:center;justify-content:space-between;gap:3rem;padding:120px 6% 50px;background:linear-gradient(135deg,rgba(253,251,250,0.92) 0%,rgba(253,251,250,0.85) 100%),url('../assets/celestial-bg.webp') center/cover no-repeat;position:relative}
.hero::after{content:'';position:absolute;bottom:0;left:0;right:0;height:80px;background:linear-gradient(to bottom,transparent,var(--white));pointer-events:none}
.hero-content{flex:1;max-width:580px}
.hero-tagline{font-size:0.82rem;color:var(--primary);text-transform:uppercase;letter-spacing:3px;margin-bottom:1.5rem;display:block;font-weight:600}
.hero h1{font-size:3.6rem;margin-bottom:1.5rem;color:var(--text-dark);line-height:1.15}
.hero p{font-size:1.05rem;color:var(--text-muted);margin-bottom:2rem;line-height:1.8}
.hero-cta-group{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:2rem}
.hero-trust-badges{display:flex;gap:1.5rem;flex-wrap:wrap}
.trust-badge{display:flex;align-items:center;gap:0.4rem;font-size:0.82rem;color:var(--text-muted);font-weight:500}
.trust-badge i{color:var(--accent);font-size:0.9rem}
.hero-image-wrapper{flex:0 0 auto;width:400px}
.hero-image-frame{position:relative;border-radius:var(--radius-lg);overflow:visible}
.hero-image-frame img{width:100%;border-radius:var(--radius-lg);box-shadow:0 25px 60px rgba(27,45,69,0.2);display:block}
.hero-img-badge{position:absolute;bottom:-16px;left:-16px;background:var(--gold-gradient);color:var(--white);padding:1rem 1.3rem;border-radius:var(--radius-md);display:flex;align-items:center;gap:0.7rem;font-size:0.85rem;font-weight:600;box-shadow:0 10px 25px rgba(160,113,79,0.3);line-height:1.3}
.hero-img-badge i{font-size:1.3rem}
.cta-button{display:inline-flex;align-items:center;gap:0.6rem;padding:1rem 2.5rem;border-radius:50px;font-weight:600;font-size:0.95rem;border:none;cursor:pointer;transition:transform 0.3s ease,box-shadow 0.3s ease;text-transform:uppercase;letter-spacing:1px;white-space:nowrap}
.cta-primary,.cta-button:not(.cta-secondary){background:var(--gold-gradient);color:var(--white);box-shadow:0 10px 25px rgba(160,113,79,0.25)}
.cta-primary:hover,.cta-button:not(.cta-secondary):hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(160,113,79,0.4);color:var(--white)}
.cta-secondary{background:transparent;color:var(--text-dark);border:2px solid var(--primary)}
.cta-secondary:hover{background:var(--primary);color:var(--white);transform:translateY(-3px)}
.reveal{opacity:0;transform:translateY(40px);transition:opacity 1.2s cubic-bezier(0.2,0.8,0.2,1),transform 1.2s cubic-bezier(0.2,0.8,0.2,1)}
.reveal.active{opacity:1;transform:translateY(0)}
.section-header{text-align:center;margin-bottom:2.5rem}
.section-subtitle{color:var(--primary);text-transform:uppercase;letter-spacing:3px;font-weight:600;font-size:0.82rem;display:block;margin-bottom:0.8rem}
.section-title{font-size:2.8rem;margin-bottom:1rem;line-height:1.2}
.section-desc{color:var(--text-muted);font-size:1rem;max-width:500px;margin:0 auto}
.featured{display:flex;align-items:center;gap:4rem;padding:4rem 6%}
.featured-img{flex:1;position:relative}
.featured-img img{width:100%;border-radius:var(--radius-lg);box-shadow:var(--soft-shadow)}
.featured-img img:hover{transform:scale(1.02)}
.about-badge{position:absolute;bottom:-16px;right:-16px;background:var(--primary);color:var(--white);padding:1.2rem 1.5rem;border-radius:var(--radius-md);display:flex;align-items:center;gap:0.7rem;font-size:0.9rem;font-weight:600;box-shadow:0 10px 25px rgba(27,45,69,0.3);line-height:1.3}
.about-badge i{font-size:1.4rem}
.featured-content{flex:1}
.featured-content h2{font-size:2.8rem;margin-bottom:1.5rem;line-height:1.2}
.featured-content p{font-size:1.05rem;color:var(--text-muted);margin-bottom:1.5rem}
.about-stats{display:flex;gap:2rem;margin:2rem 0;flex-wrap:wrap}
.stat-item{text-align:center;padding:1rem 1.5rem;background:var(--bg-light);border-radius:var(--radius-sm);border:1px solid rgba(160,113,79,0.1);min-width:90px}
.stat-item strong{font-family:'Cormorant Garamond',serif;font-size:2rem;color:var(--accent);display:block;line-height:1}
.stat-item span{font-size:0.78rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;display:block;margin-top:0.3rem}
.services{padding:4.5rem 6%;background:var(--white)}
.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:2rem;margin-top:0}
.service-card{background:var(--white);padding:2.5rem 2rem;border-radius:var(--radius-lg);box-shadow:var(--card-shadow);transition:transform 0.4s ease,box-shadow 0.4s ease,border-color 0.4s ease;position:relative;overflow:hidden;border:1px solid rgba(160,113,79,0.06);text-decoration:none!important;color:inherit;display:flex;flex-direction:column}
.service-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:var(--gold-gradient);transform:scaleX(0);transition:transform 0.4s ease;transform-origin:left}
.service-card:hover::before{transform:scaleX(1)}
.service-card:hover{transform:translateY(-4px);box-shadow:0 8px 32px rgba(160,113,79,0.15);border-color:rgba(160,113,79,0.15)}
.service-icon-wrap{width:64px;height:64px;background:linear-gradient(135deg,rgba(27,45,69,0.1),rgba(160,113,79,0.08));border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem;transition:transform 0.3s ease,background 0.3s ease}
.service-card:hover .service-icon-wrap{transform:rotate(5deg) scale(1.1);background:linear-gradient(135deg,rgba(27,45,69,0.2),rgba(160,113,79,0.15))}
.service-icon-wrap i{font-size:1.8rem;color:var(--primary)}
.service-card h3{font-size:1.6rem;margin-bottom:0.8rem;color:var(--text-dark)}
.service-card p{font-size:0.95rem;color:var(--text-muted);line-height:1.7;margin-bottom:1.5rem;flex:1}
.service-link{display:inline-flex;align-items:center;gap:0.5rem;color:var(--accent)!important;font-weight:600;font-size:0.88rem;text-transform:uppercase;letter-spacing:1px;padding:0.6rem 1.2rem;background:rgba(160,113,79,0.06);border-radius:50px;transition:background 0.3s,transform 0.3s}
.service-card:hover .service-link{background:var(--gold-gradient);color:var(--white)!important;transform:translateX(4px)}
.testimonials-section{padding:4.5rem 6%;background:linear-gradient(135deg,#F5F0EB 0%,#FAF8F5 100%)}
.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}
.testimonial-avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--accent));color:var(--white);display:flex;align-items:center;justify-content:center;font-size:0.8rem;font-weight:700;letter-spacing:0.5px;margin-bottom:1rem;flex-shrink:0}
.testimonial-card{background:var(--white);padding:2.5rem;border-radius:var(--radius-lg);box-shadow:var(--card-shadow);border:1px solid rgba(160,113,79,0.08);transition:transform 0.3s ease}
.testimonial-card:hover{transform:translateY(-6px)}
.stars{color:var(--accent-light);font-size:1.2rem;letter-spacing:2px;margin-bottom:1rem}
.testimonial-card p{font-size:0.95rem;color:var(--text-muted);font-style:italic;line-height:1.8;margin-bottom:1.5rem}
.testimonial-card p::before{content:'"'; font-size: 2rem; color: var(--primary); opacity: 0.3; display: block; line-height: 0.5; margin-bottom: 0.5rem; font-family: 'Cormorant Garamond', serif; }

.testimonial-author {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

.testimonial-author strong { font-size: 0.95rem; color: var(--text-dark); }
.testimonial-author span { font-size: 0.8rem; color: var(--text-muted); }


.faq-section {
    padding: 4rem 6%;
    background: var(--white);
}

.faq-grid {
    max-width: 800px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.faq-item {
    border: 1px solid rgba(27, 45, 69, 0.12);
    border-radius: var(--radius-md);
    overflow: hidden;
    background: var(--bg-light);
    transition: box-shadow 0.3s ease, border-color 0.3s ease;
}

.faq-item:hover { box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06); }

.faq-item[open] {
    border-color: rgba(184, 134, 11, 0.25);
    box-shadow: 0 6px 22px rgba(184, 134, 11, 0.08);
}

.faq-item summary {
    padding: 1.2rem 1.6rem;
    font-weight: 600;
    font-size: 0.95rem;
    cursor: pointer;
    list-style: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: var(--text-dark);
    transition: color 0.25s ease, background 0.25s ease;
    -webkit-user-select: none;
    user-select: none;
}

.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary::marker { display: none; }

.faq-item summary::after {
    content: '\f078'; 
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    font-size: 0.75rem;
    color: var(--accent);
    transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    flex-shrink: 0;
    margin-left: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: rgba(160, 113, 79, 0.08);
}

.faq-item[open] summary::after { transform: rotate(180deg); }
.faq-item[open] summary {
    color: var(--primary);
    background: rgba(184, 134, 11, 0.04);
}


.faq-item .faq-answer {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.faq-item[open] .faq-answer {
    grid-template-rows: 1fr;
}

.faq-item .faq-answer > * {
    overflow: hidden;
}

.faq-item p {
    padding: 0 1.6rem 1.2rem;
    font-size: 0.92rem;
    color: var(--text-muted);
    line-height: 1.8;
}


.scroll-magic {
    position: fixed;
    right: 50px;
    bottom: 50%;
    transform: translateY(50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
    z-index: 100;
    cursor: pointer;
    transition: opacity 0.8s ease, transform 0.8s ease;
}

.scroll-line {
    width: 2px;
    height: 100px;
    background: rgba(160, 113, 79, 0.15);
    position: relative;
    overflow: hidden;
    border-radius: 2px;
}

.scroll-line::after {
    content: '';
    position: absolute;
    top: -100%;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to bottom, transparent, var(--accent), transparent);
    animation: lineAnim 2.5s infinite cubic-bezier(0.77, 0, 0.175, 1);
}

@keyframes lineAnim {
    0%   { transform: translateY(0); }
    100% { transform: translateY(200%); }
}

.scroll-text {
    font-family: 'Cormorant Garamond', serif;
    font-size: 0.75rem;
    color: var(--accent);
    text-transform: uppercase;
    letter-spacing: 5px;
    writing-mode: vertical-rl;
    font-weight: 700;
    opacity: 0.7;
    transition: opacity 0.3s, letter-spacing 0.3s;
}

.scroll-magic:hover .scroll-text { opacity: 1; letter-spacing: 8px; }

@media (max-width: 968px) {
    .scroll-magic { right: 20px; bottom: 100px; transform: none; }
    .scroll-line { height: 60px; }
    .scroll-text { font-size: 0.65rem; }
}


.whatsapp-float {
    position: fixed;
    bottom: calc(1.5rem + env(safe-area-inset-bottom));
    left: 1.875rem;
    width: 60px;
    height: 60px;
    background: #25D366;
    color: var(--white);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.8rem;
    box-shadow: 0 6px 25px rgba(37, 211, 102, 0.4);
    z-index: 9999;
    transition: transform 0.3s, box-shadow 0.3s;
}

.whatsapp-float:hover {
    transform: scale(1.12);
    box-shadow: 0 10px 35px rgba(37, 211, 102, 0.5);
}

.wa-tooltip {
    position: absolute;
    left: 70px;
    background: #1A1A1A;
    color: var(--white);
    padding: 0.5rem 0.9rem;
    border-radius: 8px;
    font-size: 0.8rem;
    font-weight: 600;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s;
}

.wa-tooltip::before {
    content: '';
    position: absolute;
    left: -6px;
    top: 50%;
    transform: translateY(-50%);
    border: 6px solid transparent;
    border-right-color: #1A1A1A;
    border-left: none;
}

.whatsapp-float:hover .wa-tooltip { opacity: 1; }


footer {
    background: #111111;
    color: var(--white);
    padding: 4rem 6% 2rem;
}

.footer-content {
    max-width: 1200px;
    margin: 0 auto;
}

.footer-logo {
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--accent-light);
    display: block;
    margin-bottom: 0.8rem;
}

.footer-content > p {
    color: #c8d1e0;
    font-size: 0.9rem;
    margin-bottom: 3rem;
}

.footer-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 2.5rem;
    margin-bottom: 3rem;
    padding-bottom: 3rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.footer-col h4 {
    color: var(--accent-light);
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.1rem;
    margin-bottom: 1.2rem;
    font-weight: 700;
}

.footer-col a {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: #d6dde8;
    font-size: 0.88rem;
    margin-bottom: 0.7rem;
    transition: color 0.2s, transform 0.2s;
}

.footer-col a:hover { color: var(--white); transform: translateX(4px); }
.footer-col a i { width: 16px; color: var(--accent); font-size: 0.9rem; }

.footer-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
}

.footer-bottom p { color: #b4bcc9; font-size: 0.82rem; }

.footer-lang {
    display: flex;
    gap: 1rem;
}

.footer-lang-link {
    color: #c8d1e0;
    font-size: 0.85rem;
    font-weight: 600;
    padding: 0.4rem 0.8rem;
    border-radius: 6px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    transition: all 0.2s;
}

.footer-lang-link:hover,
.footer-lang-link.active {
    color: var(--accent-light);
    border-color: var(--accent);
    background: rgba(160, 113, 79, 0.1);
}


#mystic-loader {
    position: fixed;
    top: 0; left: 0;
    width: 100%; height: 100%;
    background: #090A0F;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
    transition: opacity 0.8s ease, visibility 0.8s ease;
}

.tarot-loader-icon {
    width: 50px; height: 80px;
    border: 2px solid var(--accent);
    border-radius: 5px;
    display: flex;
    justify-content: center;
    align-items: center;
    animation: floatTarot 2s ease-in-out infinite, glowTarot 2s infinite;
}

.tarot-loader-icon::after {
    content: '✧';
    color: var(--accent);
    font-size: 30px;
    animation: spinSymbol 4s linear infinite;
}

@keyframes floatTarot  { 0%, 100% { transform: translateY(0); }  50% { transform: translateY(-15px); } }
@keyframes glowTarot   { 0%, 100% { box-shadow: 0 0 10px rgba(160, 113, 79, 0.4); } 50% { box-shadow: 0 0 30px rgba(160, 113, 79, 0.8); } }
@keyframes spinSymbol  { 100% { transform: rotate(360deg); } }


.blog-header {
    background: linear-gradient(rgba(10,10,12,0.85), rgba(10,10,12,0.85)), url('https://images.unsplash.com/photo-1628157731215-68b375e24c29?q=80&w=2070&auto=format&fit=crop') no-repeat center center/cover;
}

@media (max-width: 1100px) {
    .blog-container { display: flex !important; flex-direction: column !important; gap: 3rem !important; }
    .blog-sidebar   { position: static !important; width: 100% !important; margin-top: 3rem; order: 2; }
    .main-blog-content { width: 100% !important; order: 1; }
}

.blog-sidebar a:hover { color: var(--primary) !important; transform: translateX(5px); display: inline-block; }


.alpha-btn {
    padding: 10px 15px;
    background: var(--white);
    border: 1px solid rgba(160, 113, 79, 0.2);
    border-radius: 8px;
    color: var(--primary);
    font-size: 1rem;
    font-weight: 500;
    transition: all 0.3s;
    box-shadow: 0 4px 10px rgba(0,0,0,0.02);
}

.alpha-btn:hover {
    background: var(--primary);
    color: var(--white);
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(27, 45, 69, 0.2);
    border-color: var(--primary);
}


.alpha-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 0.8rem;
    justify-content: center;
    margin-bottom: 4rem;
}
.letter-section {
    margin-bottom: 3.5rem;
    scroll-margin-top: 100px;
}
.letter-heading {
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.9rem;
    color: var(--primary);
    border-bottom: 2px solid var(--secondary);
    display: inline-block;
    padding-bottom: 8px;
    margin-bottom: 1.5rem;
}
.symbol-entry {
    padding: 1rem 0;
    border-bottom: 1px solid rgba(160,113,79,0.08);
}
.symbol-entry:last-child { border-bottom: none; }
.symbol-entry strong {
    color: var(--primary);
    font-size: 1.05rem;
    display: block;
    margin-bottom: 0.3rem;
}
.symbol-entry p { margin: 0; color: var(--text-muted); font-size: 0.95rem; line-height: 1.75; }


.featured-dream-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1.5rem;
    margin: 2rem 0 4rem;
}
.featured-dream-card {
    background: var(--white);
    border-radius: 18px;
    padding: 1.8rem;
    box-shadow: 0 4px 20px rgba(0,0,0,0.06);
    border: 1px solid rgba(160,113,79,0.1);
    transition: transform 0.25s, box-shadow 0.25s;
}
.featured-dream-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 36px rgba(27,45,69,0.12);
}
.featured-dream-icon {
    font-size: 2rem;
    margin-bottom: 0.8rem;
    display: block;
}
.featured-dream-card h3 {
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.3rem;
    color: var(--primary);
    margin-bottom: 0.6rem;
}
.featured-dream-card p { font-size: 0.9rem; color: var(--text-muted); line-height: 1.75; margin: 0; }


.dream-types-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 1.5rem;
    margin: 2rem 0;
}
.dream-type-card {
    background: var(--bg-light);
    border-radius: 16px;
    padding: 1.5rem;
    border-left: 4px solid var(--primary);
}
.dream-type-card h4 {
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.2rem;
    color: var(--primary);
    margin-bottom: 0.5rem;
}
.dream-type-card p { font-size: 0.88rem; color: var(--text-muted); line-height: 1.7; margin: 0; }

@media (max-width: 640px) {
    .featured-dream-grid { grid-template-columns: 1fr; }
}


.bio-container {
    max-width: 500px;
    margin: 0 auto;
    padding: 4rem 1.5rem;
    text-align: center;
}

.bio-card {
    background: var(--white);
    padding: 1.5rem;
    border-radius: var(--radius-md);
    margin-bottom: 1.2rem;
    color: var(--text-dark);
    font-weight: 500;
    border: 1px solid rgba(160, 113, 79, 0.1);
    transition: var(--transition);
    display: block;
    box-shadow: var(--soft-shadow);
}

.bio-card:hover {
    transform: scale(1.02);
    border-color: var(--accent);
    background: var(--bg-light);
}


.star-dust {
    position: fixed;
    top: 0; left: 0;
    width: 100%; height: 100%;
    z-index: -1;
    overflow: hidden;
    background: radial-gradient(ellipse at bottom, #1B2735 0%, #090A0F 100%);
}

.star {
    position: absolute;
    background: var(--white);
    border-radius: 50%;
    opacity: 0.5;
    animation: twinkle var(--duration) infinite ease-in-out;
}

@keyframes twinkle {
    0%, 100% { opacity: 0.3; transform: scale(1); }
    50%       { opacity: 1;   transform: scale(1.2); }
}


@media (max-width: 1100px) {
    .footer-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
    .footer-grid { grid-template-columns: 1fr; }
}

@media (max-width: 968px) {
    #main-nav { height: 75px; padding: 0 5%; }

    .hero {
        flex-direction: column;
        text-align: center;
        padding: 110px 5% 60px;
        min-height: auto;
    }

    .hero h1 { font-size: 2.6rem; }

    .hero-image-wrapper {
        width: 100%;
        max-width: 340px;
        margin: 0 auto;
    }

    .hero-cta-group { justify-content: center; }
    .hero-trust-badges { justify-content: center; }

    .featured {
        flex-direction: column;
        gap: 2.5rem;
        padding: 4rem 5%;
        text-align: center;
    }

    .about-badge {
        right: auto;
        left: 50%;
        transform: translateX(-50%);
    }

    .about-stats { justify-content: center; }

    .featured-content .cta-button { margin-top: 1.5rem; }

    .section-title { font-size: 2.2rem; }

    .testimonials-section, .faq-section, .services { padding: 3rem 5%; }

    
    .faq-grid { max-width: 100%; }
    .faq-prose-list { max-width: 100%; }

    
    .services-grid {
        grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
        gap: 1.5rem;
    }

    .footer-grid { grid-template-columns: repeat(2, 1fr); gap: 1.5rem; }
    .footer-bottom { flex-direction: column; text-align: center; }
}


@media (max-width: 480px) {
    .hero h1 { font-size: 2rem; }

    .cta-button {
        padding: 0.9rem 1.8rem;
        font-size: 0.88rem;
        width: 100%;
        justify-content: center;
    }

    .hero-cta-group { flex-direction: column; }
    .hero-trust-badges { flex-direction: column; align-items: center; }

    .services-grid { grid-template-columns: 1fr; }


    .section-title { font-size: 1.9rem; }

    .service-card { padding: 2rem 1.5rem; }

    .q-link { font-size: 0.85rem; }

    .whatsapp-float { width: 52px; height: 52px; font-size: 1.5rem; bottom: calc(1.25rem + env(safe-area-inset-bottom)); left: 1.25rem; }

    
    .faq-grid {
        gap: 0.6rem;
    }

    .faq-item summary {
        padding: 1rem 1.2rem;
        font-size: 0.9rem;
    }

    .faq-item p {
        padding: 0 1.2rem 1rem;
        font-size: 0.88rem;
    }

    .faq-item summary::after {
        width: 24px;
        height: 24px;
        font-size: 0.65rem;
    }

    
    .featured-content h2 { font-size: 2rem; }
    .featured-content p { font-size: 0.95rem; }

    
    .service-detail-card {
        padding: 1.8rem 1.3rem;
        margin-bottom: 1.5rem;
    }

    
    .section-subtitle { font-size: 0.68rem; letter-spacing: 2px; }
    body { font-size: 15px; }
}


@media (max-width: 360px) {
    .hero h1 { font-size: 1.75rem; }
    .section-title { font-size: 1.7rem; }

    .faq-item summary { padding: 0.9rem 1rem; font-size: 0.87rem; }
    .faq-item p { padding: 0 1rem 0.9rem; }

    .service-card { padding: 1.5rem 1.2rem; }
    .testimonial-card { padding: 1.5rem; }
}




.scroll-progress {
    position: fixed;
    top: 0;
    left: 0;
    height: 3px;
    width: 0%;
    background: linear-gradient(90deg, #B8860B, #D4AF37, #B8860B);
    background-size: 200% 100%;
    animation: shimmerProgress 2s linear infinite;
    z-index: 9999;
    transition: width 0.1s linear;
    box-shadow: 0 0 8px rgba(184,134,11,0.6);
}

@keyframes shimmerProgress {
    0%   { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}


.hero-section {
    position: relative;
    overflow: hidden;
}

.hero-section::before,
.hero-section::after {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
}

.hero-section::before {
    background-image:
        radial-gradient(1px 1px at 8% 20%, rgba(212,175,55,0.8) 0%, transparent 100%),
        radial-gradient(1.5px 1.5px at 15% 70%, rgba(184,134,11,0.6) 0%, transparent 100%),
        radial-gradient(1px 1px at 22% 40%, rgba(212,175,55,0.9) 0%, transparent 100%),
        radial-gradient(2px 2px at 30% 15%, rgba(184,134,11,0.5) 0%, transparent 100%),
        radial-gradient(1px 1px at 38% 80%, rgba(212,175,55,0.7) 0%, transparent 100%),
        radial-gradient(1.5px 1.5px at 45% 35%, rgba(196,154,108,0.5) 0%, transparent 100%),
        radial-gradient(1px 1px at 52% 60%, rgba(212,175,55,0.8) 0%, transparent 100%),
        radial-gradient(2px 2px at 60% 25%, rgba(184,134,11,0.5) 0%, transparent 100%),
        radial-gradient(1px 1px at 68% 75%, rgba(212,175,55,0.7) 0%, transparent 100%),
        radial-gradient(1.5px 1.5px at 75% 50%, rgba(27,45,69,0.4) 0%, transparent 100%),
        radial-gradient(1px 1px at 82% 18%, rgba(212,175,55,0.9) 0%, transparent 100%),
        radial-gradient(2px 2px at 90% 65%, rgba(184,134,11,0.6) 0%, transparent 100%);
    animation: starsFloat1 18s ease-in-out infinite alternate;
}

.hero-section::after {
    background-image:
        radial-gradient(1px 1px at 5% 55%, rgba(212,175,55,0.6) 0%, transparent 100%),
        radial-gradient(1.5px 1.5px at 12% 30%, rgba(184,134,11,0.8) 0%, transparent 100%),
        radial-gradient(1px 1px at 28% 85%, rgba(212,175,55,0.5) 0%, transparent 100%),
        radial-gradient(2px 2px at 42% 10%, rgba(196,154,108,0.6) 0%, transparent 100%),
        radial-gradient(1px 1px at 55% 45%, rgba(212,175,55,0.9) 0%, transparent 100%),
        radial-gradient(1.5px 1.5px at 65% 90%, rgba(184,134,11,0.5) 0%, transparent 100%),
        radial-gradient(1px 1px at 78% 35%, rgba(212,175,55,0.7) 0%, transparent 100%),
        radial-gradient(2px 2px at 88% 12%, rgba(184,134,11,0.6) 0%, transparent 100%),
        radial-gradient(1px 1px at 95% 78%, rgba(212,175,55,0.8) 0%, transparent 100%),
        radial-gradient(1.5px 1.5px at 35% 55%, rgba(27,45,69,0.3) 0%, transparent 100%),
        radial-gradient(1px 1px at 72% 22%, rgba(212,175,55,0.6) 0%, transparent 100%);
    animation: starsFloat2 24s ease-in-out infinite alternate-reverse;
}

@keyframes starsFloat1 {
    0%   { transform: translateY(0) translateX(0); opacity: 0.7; }
    33%  { transform: translateY(-18px) translateX(10px); opacity: 1; }
    66%  { transform: translateY(12px) translateX(-8px); opacity: 0.5; }
    100% { transform: translateY(-25px) translateX(15px); opacity: 0.9; }
}

@keyframes starsFloat2 {
    0%   { transform: translateY(0) translateX(0); opacity: 0.5; }
    50%  { transform: translateY(20px) translateX(-12px); opacity: 0.9; }
    100% { transform: translateY(-15px) translateX(8px); opacity: 0.6; }
}


@keyframes heroTitleEntrance {
    0%   { opacity: 0; transform: translateY(30px) scale(0.96); filter: blur(4px); }
    100% { opacity: 1; transform: translateY(0) scale(1); filter: blur(0); }
}

.hero-content h1 {
    animation: heroTitleEntrance 1.2s cubic-bezier(0.19,1,0.22,1) 0.2s both;
}

.hero-content p {
    animation: heroTitleEntrance 1.2s cubic-bezier(0.19,1,0.22,1) 0.5s both;
}

.hero-cta-group {
    animation: heroTitleEntrance 1.2s cubic-bezier(0.19,1,0.22,1) 0.8s both;
}


.service-card {
    position: relative;
    overflow: hidden;
}

.service-card::after {
    content: '';
    position: absolute;
    inset: -2px;
    border-radius: calc(var(--radius-lg, 16px) + 2px);
    background: conic-gradient(
        from var(--card-angle, 0deg),
        transparent 0deg 80deg,
        rgba(184,134,11,0.6) 80deg 120deg,
        transparent 120deg 200deg,
        rgba(212,175,55,0.4) 200deg 240deg,
        transparent 240deg 360deg
    );
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: -1;
}

@property --card-angle {
    syntax: '<angle>';
    initial-value: 0deg;
    inherits: false;
}

@keyframes cardGlowSpin {
    from { --card-angle: 0deg; }
    to   { --card-angle: 360deg; }
}

.service-card:hover::after {
    opacity: 1;
    animation: cardGlowSpin 3s linear infinite;
}


@property --mystical-angle {
    syntax: '<angle>';
    initial-value: 0deg;
    inherits: false;
}

@keyframes mysticalBorderSpin {
    from { --mystical-angle: 0deg; }
    to   { --mystical-angle: 360deg; }
}

.featured-img {
    position: relative;
}

.featured-img::before {
    content: '';
    position: absolute;
    inset: -3px;
    border-radius: calc(var(--radius-lg, 16px) + 3px);
    background: conic-gradient(
        from var(--mystical-angle),
        #B8860B 0deg,
        #D4AF37 60deg,
        #1B2D45 120deg,
        transparent 160deg,
        #B8860B 200deg,
        transparent 240deg,
        #D4AF37 300deg,
        #B8860B 360deg
    );
    animation: mysticalBorderSpin 6s linear infinite;
    z-index: -1;
}


.cta-glass-section {
    position: relative;
    background: linear-gradient(135deg, #1B2D45 0%, #0d1a2e 50%, #0f1a2e 100%);
    padding: 4rem 2rem;
    overflow: hidden;
    border-radius: 2rem;
    margin: 3rem auto;
    max-width: 1200px;
}

.cta-glass-section::before {
    content: '';
    position: absolute;
    width: 500px;
    height: 500px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(27,45,69,0.2) 0%, transparent 70%);
    top: -100px;
    left: -100px;
    pointer-events: none;
}

.cta-glass-section::after {
    content: '';
    position: absolute;
    width: 400px;
    height: 400px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(184,134,11,0.2) 0%, transparent 70%);
    bottom: -80px;
    right: -80px;
    pointer-events: none;
}

.cta-glass-card {
    position: relative;
    z-index: 1;
    background: rgba(255,255,255,0.06);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(212,175,55,0.25);
    border-radius: 1.5rem;
    padding: 3.5rem 3rem;
    text-align: center;
    color: #fff;
    max-width: 700px;
    margin: 0 auto;
    box-shadow: 0 25px 80px rgba(0,0,0,0.4), inset 0 1px 0 rgba(255,255,255,0.1);
}

.cta-glass-card h2 {
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(2rem, 4vw, 3rem);
    color: #D4AF37;
    margin-bottom: 1rem;
    letter-spacing: -0.02em;
}

.cta-glass-card p {
    font-size: 1.1rem;
    color: rgba(255,255,255,0.8);
    margin-bottom: 2.5rem;
    line-height: 1.7;
}

.cta-glass-card .btn-primary {
    font-size: 1.1rem;
    padding: 1rem 2.5rem;
    background: linear-gradient(135deg, #B8860B, #D4AF37);
    color: #fff;
    border: none;
    box-shadow: 0 8px 30px rgba(184,134,11,0.5);
}


.testimonial-card {
    position: relative;
    overflow: hidden;
}

.testimonial-card::before {
    content: '\201C';
    position: absolute;
    top: -10px;
    left: 20px;
    font-family: 'Cormorant Garamond', serif;
    font-size: 8rem;
    line-height: 1;
    color: rgba(184,134,11,0.12);
    pointer-events: none;
    z-index: 0;
}

.testimonial-card::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, transparent, #D4AF37, transparent);
    transform: scaleX(0);
    transition: transform 0.4s ease;
    border-radius: 0 0 var(--radius-lg, 16px) var(--radius-lg, 16px);
}

.testimonial-card:hover::after {
    transform: scaleX(1);
}


.lead-capture-section {
    padding: 3.5rem 6%;
    background: var(--primary);
    color: var(--white);
    text-align: center;
}

.lead-capture-inner {
    max-width: 520px;
    margin: 0 auto;
}

.lead-capture-inner h2 {
    color: var(--white);
    font-size: 2.2rem;
    margin-bottom: 0.8rem;
}

.lead-capture-inner p {
    color: rgba(255, 255, 255, 0.75);
    font-size: 0.95rem;
    margin-bottom: 2rem;
    line-height: 1.7;
}

.lead-form {
    display: flex;
    gap: 0.8rem;
    max-width: 440px;
    margin: 0 auto;
}

.lead-form input[type="email"] {
    flex: 1;
    padding: 0.9rem 1.2rem;
    border: 2px solid rgba(255, 255, 255, 0.2);
    border-radius: 50px;
    background: rgba(255, 255, 255, 0.1);
    color: var(--white);
    font-size: 16px;
    font-family: inherit;
    outline: none;
    transition: border-color 0.3s, box-shadow 0.3s;
}

.lead-form input[type="email"]::placeholder {
    color: rgba(255, 255, 255, 0.72);
}

.lead-form input[type="email"]:focus {
    border-color: var(--accent-light);
}

.lead-form input[type="email"]:focus-visible {
    outline: 2px solid var(--accent-light);
    outline-offset: 2px;
    box-shadow: 0 0 0 4px rgba(196, 154, 108, 0.25);
}

.lead-form .cta-button {
    padding: 0.9rem 1.8rem;
    font-size: 0.85rem;
    white-space: nowrap;
}

@media (max-width: 500px) {
    .lead-form {
        flex-direction: column;
    }
    .lead-form .cta-button {
        justify-content: center;
    }
}


a:focus-visible,
button:focus-visible,
summary:focus-visible,
[role="menuitem"]:focus-visible {
    outline: 2px solid var(--accent);
    outline-offset: 3px;
    border-radius: 4px;
}

.cta-button:focus-visible {
    outline: 3px solid var(--primary);
    outline-offset: 3px;
}


@keyframes statShimmer {
    0%   { background-position: -200% center; }
    100% { background-position: 200% center; }
}

.stat-number, .trust-stat strong {
    background: linear-gradient(90deg, #B8860B 20%, #D4AF37 50%, #B8860B 80%);
    background-size: 200% auto;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    animation: statShimmer 3s linear infinite;
}


.services-grid .service-card:nth-child(1) { animation-delay: 0.05s; }
.services-grid .service-card:nth-child(2) { animation-delay: 0.12s; }
.services-grid .service-card:nth-child(3) { animation-delay: 0.19s; }
.services-grid .service-card:nth-child(4) { animation-delay: 0.26s; }
.services-grid .service-card:nth-child(5) { animation-delay: 0.33s; }
.services-grid .service-card:nth-child(6) { animation-delay: 0.40s; }

.testimonials-grid .testimonial-card:nth-child(1) { animation-delay: 0.05s; }
.testimonials-grid .testimonial-card:nth-child(2) { animation-delay: 0.15s; }
.testimonials-grid .testimonial-card:nth-child(3) { animation-delay: 0.25s; }

.faq-list .faq-item:nth-child(1) { animation-delay: 0.05s; }
.faq-list .faq-item:nth-child(2) { animation-delay: 0.10s; }
.faq-list .faq-item:nth-child(3) { animation-delay: 0.15s; }
.faq-list .faq-item:nth-child(4) { animation-delay: 0.20s; }
.faq-list .faq-item:nth-child(5) { animation-delay: 0.25s; }
.faq-list .faq-item:nth-child(6) { animation-delay: 0.30s; }




.data-table-wrapper {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    border-radius: 12px;
    margin: 2rem 0;
}
.data-table-wrapper .data-table { margin: 0; }


img[loading="lazy"] {
    transition: opacity .3s ease;
}


.quick-nav-container {
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
}
.quick-nav-container::-webkit-scrollbar { display: none; }


.section-subtitle {
    display: inline-block;
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: var(--accent);
    margin-bottom: .6rem;
}


a:focus-visible,
button:focus-visible {
    outline: 2px solid var(--primary);
    outline-offset: 3px;
    border-radius: 4px;
}








.aio-answer {
    background: linear-gradient(135deg, rgba(27,45,69,.07), rgba(184,134,11,.05));
    border-left: 4px solid var(--primary);
    padding: 1.4rem 1.8rem;
    border-radius: 0 16px 16px 0;
    margin: 2rem 0;
    font-size: 1.04rem;
    line-height: 1.85;
    color: #2d2d2d;
}


.info-box {
    background: #FAF8F5;
    border: 1px solid rgba(27,45,69,.15);
    border-radius: 16px;
    padding: 1.6rem 1.8rem;
    margin: 2rem 0;
}

.info-box h4 { color: var(--primary); margin-bottom: .7rem; font-size: 1.1rem; }


.data-table {
    width: 100%;
    border-collapse: collapse;
    margin: 2rem 0;
    font-size: .93rem;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 12px rgba(0,0,0,.06);
}

.data-table th {
    background: var(--primary);
    color: var(--white);
    padding: .85rem 1.1rem;
    text-align: left;
    font-size: .88rem;
}

.data-table td {
    padding: .8rem 1.1rem;
    border-bottom: 1px solid rgba(0,0,0,.055);
    vertical-align: top;
}

.data-table tr:last-child td { border-bottom: none; }
.data-table tr:nth-child(even) { background: rgba(27,45,69,.04); }
.data-table tr:hover td { background: rgba(184,134,11,.05); }


nav ul.nav-links,
#main-nav ul.nav-links {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    gap: 2rem;
    align-items: center;
}

nav ul.nav-links > li,
#main-nav ul.nav-links > li {
    display: contents; 
}

@media (max-width: 968px) {
    nav ul.nav-links,
    #main-nav ul.nav-links {
        flex-direction: column;
        align-items: flex-start;
        gap: 1.5rem;
    }

    nav ul.nav-links > li,
    #main-nav ul.nav-links > li {
        display: block;
        width: 100%;
    }
}




.section-subtitle {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: .7rem;
}
.section-subtitle::before,
.section-subtitle::after {
    content: '✦';
    font-size: .55rem;
    color: rgba(184,134,11,.5);
    flex-shrink: 0;
}


.section-title {
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(2rem, 4vw, 3rem);
    color: var(--primary);
    line-height: 1.15;
    letter-spacing: -.015em;
    margin-bottom: 1rem;
}


.service-card {
    background: linear-gradient(160deg, #ffffff 60%, rgba(253,251,250,.5) 100%) !important;
}
.service-card:hover {
    background: linear-gradient(160deg, #ffffff 40%, rgba(184,134,11,.03) 100%) !important;
}
.service-icon-wrap {
    border: 1px solid rgba(184,134,11,.1);
}


.testimonial-card {
    position: relative;
    background: linear-gradient(160deg, #ffffff 70%, rgba(253,251,250,.7) 100%) !important;
}
.testimonial-card::before {
    content: '\201C';
    position: absolute;
    top: 1rem;
    left: 1.5rem;
    font-family: 'Cormorant Garamond', serif;
    font-size: 5rem;
    line-height: 1;
    color: rgba(160,113,79,.1);
    font-style: normal;
    pointer-events: none;
}
.testimonial-card p::before { display: none !important; }
.testimonial-card p {
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.05rem !important;
    color: #3a3a3a !important;
    line-height: 1.8 !important;
    font-style: italic;
    padding-top: .5rem;
}
.testimonial-author {
    padding-top: 1rem;
    border-top: 1px solid rgba(184,134,11,.1);
    margin-top: 1rem;
}
.testimonial-author strong { color: var(--primary) !important; font-size: 1rem !important; }


.stat-item {
    border-left: 3px solid rgba(184,134,11,.25) !important;
    border-radius: 0 var(--radius-sm) var(--radius-sm) 0 !important;
    background: linear-gradient(135deg, rgba(253,251,250,1), rgba(184,134,11,.03)) !important;
}
.stat-item strong {
    font-size: 2.4rem !important;
    background: linear-gradient(135deg, var(--accent), var(--accent-light));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}


.logo::after {
    content: ' ✦';
    font-size: .7em;
    color: rgba(184,134,11,.45);
    font-weight: 400;
    letter-spacing: 0;
}


.nav-cta-btn {
    background: linear-gradient(135deg, #B8860B 0%, #D4AF37 50%, #B8860B 100%) !important;
    background-size: 200% 100% !important;
    transition: background-position .4s ease, transform .3s ease, box-shadow .3s ease !important;
}
.nav-cta-btn:hover {
    background-position: right center !important;
}


.hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image:
        radial-gradient(1px 1px at 15% 20%, rgba(184,134,11,.15) 0%, transparent 0%),
        radial-gradient(1px 1px at 80% 15%, rgba(184,134,11,.1) 0%, transparent 0%),
        radial-gradient(1px 1px at 45% 75%, rgba(184,134,11,.12) 0%, transparent 0%),
        radial-gradient(1px 1px at 70% 60%, rgba(184,134,11,.1) 0%, transparent 0%),
        radial-gradient(1px 1px at 30% 50%, rgba(184,134,11,.08) 0%, transparent 0%);
    pointer-events: none;
    z-index: 0;
}
.hero-content,
.hero-image-wrapper { position: relative; z-index: 1; }


.hero-image-frame::after {
    content: '';
    position: absolute;
    inset: -8px;
    border-radius: calc(var(--radius-lg) + 8px);
    border: 1px solid rgba(184,134,11,.12);
    pointer-events: none;
}


footer {
    background: linear-gradient(160deg, #0a1520 0%, #111111 60%) !important;
}
.footer-logo {
    font-size: 1.6rem !important;
    letter-spacing: 2.5px;
}
.footer-logo::after {
    content: ' ✦';
    font-size: .6em;
    color: rgba(212,175,55,.35);
    font-weight: 400;
}
.footer-col h4 {
    padding-bottom: .7rem;
    border-bottom: 1px solid rgba(212,175,55,.12);
    display: inline-block;
}


.whatsapp-float {
    bottom: calc(1.5rem + env(safe-area-inset-bottom)) !important;
    left: 2rem !important;
    box-shadow: 0 6px 28px rgba(37,211,102,.38) !important;
}


.keyword-strip {
    background: linear-gradient(135deg, #1B2D45 0%, #152538 50%, #1B2D45 100%) !important;
    border-top: 2px solid rgba(184,134,11,.5) !important;
    border-bottom: 2px solid rgba(184,134,11,.5) !important;
    padding: 1.2rem 0 !important;
}
.keyword-strip-inner span {
    color: #fff !important;
    font-size: 0.9rem !important;
    font-weight: 600 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    text-shadow: 0 0 12px rgba(255,255,255,0.3) !important;
}
.ks-dot {
    color: #B8860B !important;
    font-size: 0.85rem !important;
}


.aio-answer {
    border-left: 3px solid var(--accent) !important;
    border-radius: 0 18px 18px 0 !important;
    box-shadow: 0 2px 14px rgba(184,134,11,.06) !important;
}


#mystic-loader {
    background: linear-gradient(160deg, #0a1520, #1B2D45) !important;
}
.tarot-loader-icon {
    width: 44px !important;
    height: 72px !important;
    border-color: rgba(212,175,55,.6) !important;
    box-shadow: 0 0 24px rgba(184,134,11,.3) !important;
    border-radius: 6px !important;
}
.tarot-loader-icon::after {
    color: rgba(212,175,55,.85) !important;
    font-size: 26px !important;
}




.about-badge {
    background: linear-gradient(135deg, #1B2D45, #2a4060) !important;
    box-shadow: 0 10px 28px rgba(27,45,69,.2) !important;
}
.hero-img-badge {
    box-shadow: 0 10px 28px rgba(184,134,11,.35) !important;
}




.page-hero-centered {
    min-height: 45vh;
    justify-content: center;
    text-align: center;
    padding-top: 130px;
    padding-bottom: 3.5rem;
}

.page-hero-centered .hero-content {
    max-width: 820px;
    margin: 0 auto;
    text-align: center;
}

.page-hero-centered .page-breadcrumbs {
    justify-content: center;
}


.about-stats-strip {
    display: flex;
    justify-content: center;
    gap: 0;
    background: linear-gradient(135deg, #111e30 0%, #1B2D45 50%, #2a4060 100%);
    padding: 2rem 5%;
    flex-wrap: wrap;
}

.stat-strip-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 1rem 3rem;
    border-right: 1px solid rgba(212,175,55,0.2);
    gap: 0.3rem;
}

.stat-strip-item:last-child { border-right: none; }

.stat-strip-item strong {
    font-family: 'Cormorant Garamond', serif;
    font-size: 2rem;
    font-weight: 700;
    color: #D4AF37;
    line-height: 1;
}

.stat-strip-item span {
    font-size: 0.78rem;
    color: rgba(255,255,255,0.7);
    text-transform: uppercase;
    letter-spacing: 1.5px;
    font-weight: 500;
}

@media (max-width: 640px) {
    .about-stats-strip { gap: 0; }
    .stat-strip-item {
        padding: 1rem 1.5rem;
        border-right: 1px solid rgba(212,175,55,0.2);
    }
    .stat-strip-item:nth-child(2n) { border-right: none; }
    .stat-strip-item strong { font-size: 1.6rem; }
}



.expertise-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
    margin-top: 1.5rem;
}

.expertise-item {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
    padding: 1rem;
    background: rgba(27, 45, 69, 0.05);
    border-radius: 10px;
    border: 1px solid rgba(27, 45, 69, 0.1);
    transition: background 0.2s;
}

.expertise-item:hover {
    background: rgba(27, 45, 69, 0.08);
}

.expertise-icon {
    flex-shrink: 0;
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(160, 113, 79, 0.1);
    border-radius: 8px;
    color: var(--accent);
    font-size: 1rem;
}

.expertise-text strong {
    display: block;
    font-size: 0.9rem;
    color: var(--text-dark);
    font-weight: 600;
    margin-bottom: 0.25rem;
}

.expertise-text p {
    font-size: 0.82rem;
    color: var(--text-muted);
    line-height: 1.55;
    margin: 0;
}

@media (max-width: 640px) {
    .expertise-grid { grid-template-columns: 1fr; }
}


.why-card-icon {
    width: 52px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(27, 45, 69, 0.1);
    border-radius: 12px;
    color: var(--primary);
    margin-bottom: 1rem;
}


.service-dual-cta {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-top: auto;
    padding-top: 1rem;
    flex-wrap: wrap;
}

.service-link-wa {
    font-size: 0.82rem;
    font-weight: 600;
    color: #25d366;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    transition: opacity 0.2s;
}

.service-link-wa:hover { opacity: 0.8; }


.tag-chips-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
    padding: 1rem 0;
}


.section-light  { padding: 4rem 8%; background-color: var(--bg-light); }
.section-white  { padding: 4rem 8%; background-color: var(--white); }
.section-purple { padding: 4rem 8%; background: linear-gradient(135deg, rgba(27,45,69,.06) 0%, rgba(184,134,11,.03) 100%); }

.section-inner {
    max-width: 900px;
    margin: 0 auto;
}

.section-inner-wide {
    max-width: 1100px;
    margin: 0 auto;
}


.service-card-featured {
    border: 1px solid rgba(184,134,11,0.35) !important;
    background: rgba(184,134,11,0.03) !important;
}

.service-card-featured .service-icon-wrap i,
.service-card-featured h3,
.service-card-featured .service-link {
    color: var(--accent) !important;
}


.how-it-works-section {
    padding: 4rem 5%;
    background: var(--white);
}

.how-it-works-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 2rem;
    max-width: 1100px;
    margin: 0 auto;
}

.how-step-card {
    background: var(--white);
    border-radius: 20px;
    padding: 2.5rem;
    text-align: center;
    box-shadow: var(--soft-shadow);
    border: 1px solid rgba(184,134,11,0.08);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.how-step-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 45px rgba(0,0,0,0.09);
}

.how-step-number {
    width: 56px;
    height: 56px;
    background: var(--primary);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    color: var(--white);
    font-size: 1.4rem;
    font-weight: 700;
    font-family: 'Cormorant Garamond', serif;
}

.how-step-card h3 {
    font-size: 1.3rem;
    margin-bottom: 0.8rem;
}

.how-step-card p {
    font-size: 0.92rem;
    color: var(--text-muted);
    line-height: 1.7;
}


.service-detail-card {
    background: var(--white);
    border-radius: 24px;
    padding: 2.8rem;
    margin-bottom: 2rem;
    box-shadow: var(--soft-shadow);
    border: 1px solid rgba(184,134,11,0.08);
    transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
    position: relative;
    overflow: hidden;
}

.service-detail-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 3px;
    background: var(--gold-gradient);
    transform: scaleX(0);
    transition: transform 0.4s ease;
    transform-origin: left;
}

.service-detail-card:hover::before { transform: scaleX(1); }

.service-detail-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 40px rgba(0,0,0,0.08);
    border-color: rgba(184,134,11,0.15);
}

.service-detail-header {
    display: flex;
    align-items: flex-start;
    gap: 1.5rem;
    margin-bottom: 1.5rem;
}

.service-detail-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, rgba(160,113,79,0.12), rgba(184,134,11,0.08));
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    color: var(--primary);
    flex-shrink: 0;
    border: 1px solid rgba(27,45,69,0.12);
}

.service-detail-header h2 {
    font-size: clamp(1.4rem, 3vw, 1.9rem);
    margin-bottom: 0.3rem;
    line-height: 1.2;
}

.service-detail-meta {
    font-size: 0.82rem;
    color: var(--accent);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin: 0;
}

.service-price-range {
    font-size: 0.85rem;
    color: var(--primary);
    font-weight: 600;
    margin: 0.4rem 0 0;
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

.service-price-range i { font-size: 0.75rem; }

.service-detail-card > p {
    font-size: 1rem;
    color: var(--text-muted);
    line-height: 1.8;
}

.service-detail-features {
    display: flex;
    flex-wrap: wrap;
    gap: 0.7rem;
    margin: 1.5rem 0 1.2rem;
}

.service-detail-features span {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.83rem;
    color: var(--text-dark);
    background: rgba(27,45,69,0.06);
    padding: 0.4rem 0.9rem;
    border-radius: 50px;
    border: 1px solid rgba(160,113,79,0.12);
    font-weight: 500;
}

.service-detail-features span i {
    color: var(--primary);
    font-size: 0.75rem;
}

.service-detail-link {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    color: var(--accent);
    font-weight: 700;
    font-size: 0.88rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: gap 0.2s;
}

.service-detail-link:hover { gap: 0.8rem; }

@media (max-width: 640px) {
    .service-detail-header { flex-direction: column; gap: 1rem; }
    .service-detail-card { padding: 2rem 1.5rem; }
}


.page-hero {
    min-height: 42vh;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 130px 5% 3.5rem;
    background: linear-gradient(160deg, #0f1e30 0%, #1B2D45 45%, #2a4060 100%);
    position: relative;
    overflow: hidden;
    isolation: isolate;
}
.page-hero::before {
    content: '';
    position: absolute; inset: 0;
    background-image:
        radial-gradient(1.5px 1.5px at 12% 22%, rgba(255,255,255,.5) 0%, transparent 0%),
        radial-gradient(1px 1px at 68% 14%, rgba(255,255,255,.4) 0%, transparent 0%),
        radial-gradient(2px 2px at 36% 58%, rgba(212,175,55,.55) 0%, transparent 0%),
        radial-gradient(1px 1px at 84% 35%, rgba(255,255,255,.35) 0%, transparent 0%),
        radial-gradient(1px 1px at 52% 9%, rgba(255,255,255,.45) 0%, transparent 0%),
        radial-gradient(1.5px 1.5px at 26% 78%, rgba(255,255,255,.3) 0%, transparent 0%),
        radial-gradient(1px 1px at 62% 48%, rgba(212,175,55,.45) 0%, transparent 0%),
        radial-gradient(2px 2px at 91% 21%, rgba(212,175,55,.4) 0%, transparent 0%),
        radial-gradient(1px 1px at 7% 65%, rgba(255,255,255,.4) 0%, transparent 0%),
        radial-gradient(1px 1px at 46% 88%, rgba(255,255,255,.25) 0%, transparent 0%);
    z-index: 0; pointer-events: none;
}
.page-hero > * { position: relative; z-index: 1; }
.page-hero h1 {
    color: #F5F0EB;
    font-size: clamp(1.9rem, 4.5vw, 3.2rem);
    text-shadow: 0 2px 24px rgba(0,0,0,.45);
    margin-bottom: .8rem;
}
.page-hero p {
    color: rgba(212,175,55,.85);
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.1rem;
    font-style: italic;
    max-width: 680px;
    margin: 0 auto;
}
.page-hero .hero-tagline {
    color: rgba(212,175,55,.75) !important;
    display: block;
    margin-bottom: 1rem;
}


.content-wrapper {
    max-width: 960px;
    margin: 0 auto;
    padding: 4rem 5% 5rem;
}
.content-wrapper-wide {
    max-width: 1200px;
    margin: 0 auto;
    padding: 4rem 5% 5rem;
}


.breadcrumb {
    padding: .9rem 0 1.5rem;
    font-size: .82rem;
    color: var(--text-muted);
    display: flex;
    align-items: center;
    gap: .3rem;
    flex-wrap: wrap;
}
.breadcrumb a { color: var(--primary); }
.breadcrumb a:hover { color: var(--accent); }
.breadcrumb .bc-sep { color: rgba(184,134,11,.4); margin: 0 .1rem; }


.highlight-card {
    background: linear-gradient(135deg, rgba(27,45,69,.07), rgba(184,134,11,.05));
    border-left: 3px solid var(--primary);
    border-radius: 0 16px 16px 0;
    padding: 1.4rem 1.8rem;
    margin: 1.6rem 0 2rem;
    font-size: .97rem;
    line-height: 1.8;
}
.highlight-card strong {
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.1rem;
    color: var(--primary);
    display: block;
    margin-bottom: .4rem;
}


.info-table {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    background: linear-gradient(135deg, rgba(26,15,46,.03), rgba(184,134,11,.05));
    border: 1px solid rgba(184,134,11,.15);
    border-radius: 18px;
    overflow: hidden;
    margin-bottom: 2rem;
}
.info-table-cell {
    flex: 1;
    min-width: 110px;
    padding: 1.1rem 1.3rem;
    border-right: 1px solid rgba(184,134,11,.1);
    border-bottom: 1px solid rgba(184,134,11,.1);
}
.info-table-cell:last-child { border-right: none; }
.info-table-label {
    font-size: .68rem;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: var(--text-muted);
    margin-bottom: .25rem;
    display: block;
}
.info-table-value {
    color: var(--primary);
    font-weight: 600;
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.05rem;
    display: block;
    line-height: 1.3;
}
@media (max-width: 600px) {
    .info-table-cell { min-width: 45%; }
}


.tag-chip {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    background: rgba(160,113,79,.08);
    border: 1px solid rgba(160,113,79,.15);
    border-radius: 50px;
    padding: .28rem .85rem;
    font-size: .78rem;
    font-weight: 600;
    color: var(--primary);
    letter-spacing: .3px;
    margin: .2rem .15rem;
    text-decoration: none !important;
    transition: background .2s, border-color .2s;
}
.tag-chip:hover {
    background: rgba(27,45,69,.12);
    border-color: rgba(160,113,79,.25);
}
.tag-chip.gold {
    background: rgba(184,134,11,.08);
    border-color: rgba(184,134,11,.2);
    color: #7a560a;
}


.section-divider {
    border: none;
    border-top: 1px solid rgba(184,134,11,.12);
    margin: 3rem 0;
}
.text-lead {
    font-size: 1.12rem;
    font-weight: 500;
    line-height: 1.85;
    color: var(--text-dark);
    margin-bottom: 1.6rem;
}
.text-muted-sm {
    font-size: .87rem;
    color: var(--text-muted);
    line-height: 1.7;
}
.gold-accent { color: var(--accent); }
.primary-accent { color: var(--primary); }


.related-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 1.4rem;
    margin: 2rem 0 3rem;
}
.related-card {
    background: var(--white);
    border: 1px solid rgba(184,134,11,.1);
    border-radius: 16px;
    padding: 1.4rem 1.6rem;
    transition: transform .25s ease, box-shadow .25s ease;
    text-decoration: none !important;
    color: inherit;
    display: block;
}
.related-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 32px rgba(0,0,0,.09);
    border-color: rgba(27,45,69,.15);
}
.related-card-category {
    font-size: .7rem;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: var(--accent);
    font-weight: 700;
    margin-bottom: .5rem;
}
.related-card h4 {
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.1rem;
    color: var(--primary);
    margin: 0 0 .5rem;
    line-height: 1.3;
}
.related-card p {
    font-size: .85rem;
    color: var(--text-muted);
    line-height: 1.7;
    margin: 0;
}

@media (max-width: 600px) {
    .related-grid { grid-template-columns: 1fr; }
    .page-hero { min-height: 40vh; padding: 130px 5% 3rem; }
}




.aio-answer-block {
    background: linear-gradient(135deg, rgba(27,45,69,.06), rgba(184,134,11,.04));
    border-left: 4px solid var(--primary);
    border-radius: 0 14px 14px 0;
    padding: 1.4rem 1.8rem;
    margin-bottom: 0;
}
.aio-answer-block strong {
    display: block;
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.15rem;
    color: var(--primary);
    margin-bottom: .5rem;
}
.aio-answer-block p { margin: 0; line-height: 1.8; font-size: .97rem; }


.cta-box-dark {
    background: linear-gradient(135deg, #0f1e30 0%, #0d1a2e 100%);
    border-radius: 20px;
    padding: 3rem 3.5rem;
    text-align: center;
    border-top: 3px solid var(--accent);
    box-shadow: 0 12px 40px rgba(0,0,0,.25);
}
.cta-box-dark h3 { color: var(--accent); margin-bottom: .8rem; }
.cta-box-dark p  { color: rgba(255,255,255,.78); line-height: 1.8; margin: 0; }
@media(max-width:600px){
    .cta-box-dark { padding: 2rem 1.5rem; }
}


.cta-section-dark {
    padding: 4rem 8%;
    text-align: center;
    background: linear-gradient(160deg, #1B2D45, #1B2D45);
}
.cta-section-dark h2 { color: var(--accent-light); margin-bottom: 1rem; }
.cta-section-dark p  { color: rgba(255,255,255,.8); margin-bottom: 2rem; line-height: 1.8; max-width: 700px; margin-left: auto; margin-right: auto; }


.text-link {
    color: var(--primary);
    text-decoration: none;
    font-weight: 600;
    border-bottom: 1px solid rgba(27,45,69,.25);
    transition: border-color .2s, color .2s;
}
.text-link:hover { color: var(--accent); border-color: var(--accent); }


.tag-chips { display: flex; flex-wrap: wrap; gap: .3rem; margin-top: .8rem; }


.breadcrumb span { margin: 0 .4rem; color: rgba(184,134,11,.5); }


.info-table-wrapper { overflow-x: auto; margin-top: 1.5rem; }
.info-table {
    width: 100%;
    border-collapse: collapse;
    font-size: .88rem;
}
.info-table th {
    background: rgba(160,113,79,.1);
    color: var(--primary);
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    padding: .7rem 1rem;
    text-align: left;
    border-bottom: 2px solid rgba(27,45,69,.15);
}
.info-table td {
    padding: .65rem 1rem;
    border-bottom: 1px solid rgba(160,113,79,.08);
    color: var(--text-dark);
    vertical-align: top;
}
.info-table tr:hover td { background: rgba(27,45,69,.03); }


.related-card-icon {
    width: 46px; height: 46px;
    background: rgba(160,113,79,.1);
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    margin-bottom: .8rem;
    color: var(--primary);
    font-size: 1.1rem;
}
.related-link {
    display: inline-block;
    margin-top: .8rem;
    font-size: .82rem;
    font-weight: 600;
    color: var(--primary);
    text-decoration: none;
}
.related-link:hover { color: var(--accent); }


.nav-link-icon {
    width: 18px;
    color: var(--primary);
    flex-shrink: 0;
}
.dropdown-content a i {
    width: 18px;
    color: var(--primary);
    flex-shrink: 0;
    text-align: center;
}


.content-wrapper {
    max-width: 900px;
    margin: 0 auto;
    padding: 4rem 4% 6rem;
}


.prose-body {
    line-height: 1.95;
    color: var(--text-dark);
}
.prose-body h2 {
    font-family: 'Cormorant Garamond', serif;
    color: var(--primary);
    margin: 2.5rem 0 1rem;
    font-size: 2rem;
    font-weight: 600;
    line-height: 1.25;
}
.prose-body h3 {
    font-family: 'Cormorant Garamond', serif;
    color: var(--text-dark);
    margin: 2rem 0 0.75rem;
    font-size: 1.5rem;
}
.prose-body p { margin-bottom: 1.2rem; }
.prose-body ul, .prose-body ol {
    padding-left: 1.5rem;
    margin-bottom: 1.2rem;
}
.prose-body li { margin-bottom: 0.5rem; }
.prose-body strong { color: var(--primary); font-weight: 600; }


.page-hero .hero-tagline { color: var(--accent-light, #d4a843); }


.faq-prose-section { margin-top: 3rem; }
.faq-prose-section h2 { font-family: 'Cormorant Garamond', serif; font-size: 1.8rem; color: var(--primary); margin-bottom: 1.5rem; }
.faq-prose-list { display: flex; flex-direction: column; gap: 0.75rem; }
.faq-prose-item {
    background: var(--bg-light);
    border: 1px solid rgba(27, 45, 69, 0.12);
    border-radius: var(--radius-md);
    padding: 0;
    overflow: hidden;
    transition: box-shadow 0.3s ease, border-color 0.3s ease;
}
.faq-prose-item:hover { box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06); }
.faq-prose-item[open] {
    border-color: rgba(184, 134, 11, 0.25);
    box-shadow: 0 6px 22px rgba(184, 134, 11, 0.08);
}
.faq-prose-item summary {
    cursor: pointer;
    font-weight: 600;
    color: var(--text-dark);
    font-size: 0.95rem;
    list-style: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.2rem 1.6rem;
    transition: color 0.25s ease, background 0.25s ease;
    -webkit-user-select: none;
    user-select: none;
}
.faq-prose-item summary::-webkit-details-marker { display: none; }
.faq-prose-item summary::marker { display: none; }
.faq-prose-item summary::after {
    content: '\f078';
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    font-size: 0.75rem;
    color: var(--accent);
    transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    flex-shrink: 0;
    margin-left: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: rgba(160, 113, 79, 0.08);
}
.faq-prose-item[open] summary::after { transform: rotate(180deg); }
.faq-prose-item[open] summary {
    color: var(--primary);
    background: rgba(184, 134, 11, 0.04);
}
.faq-prose-item p { padding: 0 1.6rem 1.2rem; margin-top: 0; line-height: 1.8; color: var(--text-muted); margin-bottom: 0; }


.related-chip-grid { display: flex; gap: 0.8rem; flex-wrap: wrap; margin-top: 1rem; }
.related-chip {
    text-decoration: none;
    padding: 0.5rem 1.1rem;
    background: var(--primary);
    color: var(--white);
    border-radius: 10px;
    font-size: 0.9rem;
    font-weight: 600;
    transition: background 0.2s, transform 0.15s;
}
.related-chip:hover { background: var(--accent); transform: translateY(-1px); }


.cta-box-light {
    margin-top: 3rem;
    padding: 3rem 3.5rem;
    background: rgba(255,255,255,0.5);
    border-radius: 20px;
    text-align: center;
    border: 1px solid rgba(184,134,11,0.1);
    box-shadow: var(--soft-shadow);
}
.cta-box-light h3 { font-family: 'Cormorant Garamond', serif; font-size: 2rem; color: var(--primary); margin-bottom: 0.8rem; }
.cta-box-light p { margin-bottom: 2rem; color: var(--text-muted); }
@media(max-width:600px) {
    .cta-box-light { padding: 2rem 1.5rem; }
    .content-wrapper { padding: 2.5rem 5% 3rem; }
    .prose-body h2 { font-size: 1.6rem; }

    
    .faq-prose-list { gap: 0.6rem; }
    .faq-prose-item summary { padding: 1rem 1.2rem; font-size: 0.9rem; }
    .faq-prose-item summary::after { width: 24px; height: 24px; font-size: 0.65rem; }
    .faq-prose-item p { padding: 0 1.2rem 1rem; font-size: 0.88rem; }
    .faq-prose-section { margin-top: 2rem; }
}


.hero-sub {
    color: rgba(255,255,255,0.85);
    font-size: 1.1rem;
    max-width: 700px;
    margin: 1.5rem auto 0;
    line-height: 1.75;
}


.bc-current { color: var(--text-dark); font-weight: 500; }


.related-section-box {
    margin-top: 3rem;
    padding: 2rem;
    background: rgba(255,255,255,0.5);
    border-radius: 20px;
    text-align: left;
    border: 1px solid rgba(184,134,11,0.1);
}
.related-section-title {
    font-size: 1.5rem;
    color: var(--primary);
    margin-bottom: 1.5rem;
}


.highlight-list {
    list-style: none;
    padding: 0;
    margin: 1rem 0;
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
}
.highlight-list li {
    padding: 0.8rem 1.2rem;
    background: rgba(27,45,69,0.06);
    border-radius: 10px;
    border-left: 3px solid var(--primary);
}
.highlight-list li strong { color: var(--primary); }


.blog-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(310px, 1fr));
    gap: 2rem;
}
.blog-card {
    background: var(--white);
    border-radius: 22px;
    overflow: hidden;
    box-shadow: 0 6px 24px rgba(0,0,0,0.065);
    border: 1px solid rgba(184,134,11,0.09);
    transition: transform 0.35s cubic-bezier(.19,1,.22,1), box-shadow 0.35s cubic-bezier(.19,1,.22,1);
    display: flex;
    flex-direction: column;
    position: relative;
}
.blog-card::after {
    content: '';
    position: absolute;
    bottom: 0; left: 0; right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, rgba(184,134,11,0.35), transparent);
    opacity: 0;
    transition: opacity 0.3s;
}
.blog-card:hover { transform: translateY(-7px); box-shadow: 0 20px 48px rgba(0,0,0,0.11); }
.blog-card:hover::after { opacity: 1; }
.blog-card-icon { padding: 2.4rem 2rem 1.4rem; position: relative; }
.blog-card-icon i { font-size: 2.2rem; display: block; }
.blog-card-body { padding: 0 2rem 2rem; flex: 1; display: flex; flex-direction: column; }
.blog-tag {
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2.5px;
    padding: 0.28rem 0.82rem;
    border-radius: 50px;
    display: inline-block;
    margin-bottom: 0.75rem;
}
.blog-tag.istanbul { background: rgba(160,113,79,0.1); color: var(--primary); border: 1px solid rgba(160,113,79,0.15); }
.blog-tag.tarot    { background: rgba(184,134,11,0.08); color: #96680a; border: 1px solid rgba(184,134,11,0.18); }
.blog-tag.astroloji{ background: rgba(52,152,219,0.08); color: #2471a3; border: 1px solid rgba(52,152,219,0.18); }
.blog-tag.kahve    { background: rgba(107,76,58,0.08); color: #6b4c3a; border: 1px solid rgba(107,76,58,0.16); }
.blog-tag.spirituel{ background: rgba(160,113,79,0.08); color: #1B2D45; border: 1px solid rgba(160,113,79,0.15); }
.blog-tag.ruyalar  { background: rgba(27,45,69,0.06); color: #1B2D45; border: 1px solid rgba(27,45,69,0.12); }
.blog-card-body h3 {
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.35rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
    line-height: 1.3;
    color: var(--primary);
}
.blog-card-body p { font-size: 0.88rem; color: var(--text-muted); line-height: 1.75; flex: 1; }
.blog-card-footer {
    padding: 1rem 2rem;
    border-top: 1px solid rgba(184,134,11,0.08);
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.read-more {
    font-size: 0.78rem;
    font-weight: 700;
    color: var(--accent);
    text-transform: uppercase;
    letter-spacing: 1.5px;
    display: flex;
    align-items: center;
    gap: 0.4rem;
    transition: gap 0.2s;
}
.blog-card:hover .read-more { gap: 0.65rem; }
.category-filter {
    display: flex;
    gap: 0.7rem;
    flex-wrap: wrap;
    margin-bottom: 3rem;
    justify-content: center;
}
.filter-btn {
    padding: 0.58rem 1.3rem;
    border-radius: 50px;
    font-size: 0.82rem;
    font-weight: 600;
    border: 1.5px solid rgba(27,45,69,0.15);
    color: #666;
    background: var(--white);
    cursor: pointer;
    transition: all 0.22s;
    text-decoration: none;
    letter-spacing: 0.2px;
}
.filter-btn:hover { border-color: var(--primary); color: var(--primary); background: rgba(27,45,69,0.05); }
.filter-btn.active { background: linear-gradient(135deg, #1B2D45, #2a4060); color: var(--white); border-color: transparent; box-shadow: 0 4px 14px rgba(27,45,69,0.18); }
.filter-btn-highlight { border-color: var(--accent); color: var(--accent); font-weight: 700; }
.filter-btn-highlight:hover { background: rgba(184,134,11,0.08); }
.filter-btn-highlight.active { background: linear-gradient(135deg, #8a5a00, #c49020); }
header.hero.blog-listing-hero {
    background: linear-gradient(160deg, #1B2D45 0%, #1B2D45 50%, #2a4060 100%) !important;
}
@media (max-width: 640px) {
    .blog-grid { grid-template-columns: 1fr; }
}


.contact-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 2rem;
    max-width: 1000px;
    margin: 0 auto 4rem;
}
.contact-card {
    background: var(--white);
    border-radius: 24px;
    padding: 2.5rem;
    text-align: center;
    box-shadow: var(--soft-shadow);
    border: 1px solid rgba(160,113,79,0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.contact-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 50px rgba(27,45,69,0.12);
}
.contact-icon {
    width: 64px;
    height: 64px;
    border-radius: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    font-size: 1.6rem;
}
.contact-icon-wa  { background: linear-gradient(135deg, #25D366 0%, #128C7E 100%); color: var(--white); }
.contact-icon-ig  { background: linear-gradient(135deg, #E1306C 0%, #C13584 50%, #833AB4 100%); color: var(--white); }
.contact-icon-time{ background: linear-gradient(135deg, var(--primary) 0%, #2a4060 100%); color: var(--white); }
.contact-card h3  { font-size: 1.4rem; margin-bottom: 0.75rem; color: var(--text-dark); }
.contact-card p   { color: var(--text-muted); font-size: 0.95rem; margin-bottom: 1.5rem; line-height: 1.7; }
.contact-faq-section { max-width: 800px; margin: 0 auto; padding: 0 8% 4rem; }
.how-works-contact { background: var(--bg-light); padding: 4rem 8%; }
.steps-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 2rem;
    max-width: 900px;
    margin: 2rem auto 0;
}
.step-item { text-align: center; padding: 1.5rem; }
.step-num {
    width: 48px;
    height: 48px;
    background: var(--primary);
    color: var(--white);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 1.1rem;
    margin: 0 auto 1rem;
}
.step-item h4 { font-family: 'Cormorant Garamond', serif; font-size: 1.2rem; margin-bottom: 0.5rem; }
.step-item p  { font-size: 0.9rem; color: var(--text-muted); }


.coffee-symbol-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
    gap: 1.4rem;
    margin: 1.8rem 0 2.5rem;
}
.coffee-symbol-card {
    background: var(--white);
    padding: 1.4rem 1.6rem;
    border-radius: 16px;
    border: 1px solid rgba(184,134,11,0.12);
    box-shadow: var(--soft-shadow);
}


body.ui-shell-ready {
    --surface-strong: rgba(255, 255, 255, 0.92);
    --surface-soft: rgba(255, 255, 255, 0.78);
    --border-soft: rgba(27, 45, 69, 0.14);
    --text-strong: #1A1A1A;
    --text-soft: #5C5C5C;
}

body.nav-open {
    overflow: hidden;
}

body.ui-shell-ready .ui-eyebrow,
body.ui-shell-ready .hero-tagline,
body.ui-shell-ready .section-subtitle,
body.ui-shell-ready .page-kicker,
body.ui-shell-ready .card-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    padding: 0.42rem 0.9rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.84);
    border: 1px solid rgba(160, 113, 79, 0.18);
    color: var(--text-strong);
    text-shadow: none;
}

body.ui-shell-ready .hero-tagline,
body.ui-shell-ready header.hero .section-subtitle,
body.ui-shell-ready .page-hero .section-subtitle {
    background: rgba(255, 250, 244, 0.9);
}

body.ui-shell-ready #main-nav {
    gap: 1rem;
}

body.ui-shell-ready #main-nav.nav-scrolled {
    box-shadow: 0 18px 40px rgba(27, 45, 69, 0.08);
    background: rgba(255, 252, 248, 0.92);
}

body.ui-shell-ready .nav-desktop {
    flex: 1;
    justify-content: flex-end;
}

body.ui-shell-ready .nav-link,
body.ui-shell-ready .drop-trigger {
    appearance: none;
    background: transparent;
    border: 0;
    color: var(--text-dark);
    font: inherit;
    font-weight: 500;
    font-size: clamp(0.82rem, 0.25vw + 0.76rem, 0.94rem);
    padding: 0.35rem 0;
    cursor: pointer;
}

body.ui-shell-ready .drop-trigger {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
}

body.ui-shell-ready .dropdown.open > .drop-trigger,
body.ui-shell-ready .dropdown > .drop-trigger[aria-expanded="true"] {
    color: var(--primary);
}

body.ui-shell-ready .site-guide-dropdown .dropdown-content,
body.ui-shell-ready .lang-switcher .dropdown-content {
    min-width: 260px;
    right: 0;
    left: auto;
}

body.ui-shell-ready .site-tools-dropdown .dropdown-content {
    min-width: 220px;
    right: 0;
    left: auto;
}


body.ui-shell-ready .dropdown:hover .dropdown-content {
    display: none;
}
body.ui-shell-ready .dropdown.open .dropdown-content {
    display: grid !important;
    animation: menuFadeIn 0.25s ease;
}
body.ui-shell-ready .dropdown.open .tools-dropdown {
    grid-template-columns: 1fr !important;
}
body.ui-shell-ready .lang-switcher.dropdown.open .dropdown-content {
    grid-template-columns: 1fr !important;
}


body.ui-shell-ready .tools-dropdown {
    min-width: 220px;
    padding: 0.6rem 0.5rem;
    display: none;
    grid-template-columns: 1fr;
    gap: 0.2rem;
    border-radius: 12px;
    box-shadow: 0 10px 32px rgba(27, 45, 69, 0.16);
}

body.ui-shell-ready .tools-link {
    padding: 0.55rem 0.9rem;
    border-radius: 8px;
    font-size: 0.9rem;
    color: var(--text-dark);
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    transition: background 0.15s, color 0.15s;
}

body.ui-shell-ready .tools-link:hover {
    background: rgba(27, 45, 69, 0.1);
    color: var(--primary);
}

body.ui-shell-ready .tools-link.is-active {
    color: var(--primary);
    font-weight: 600;
}


body.ui-shell-ready .mega-dropdown {
    width: min(560px, calc(100vw - 2rem));
    padding: 1.25rem 1.5rem;
    display: none;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
    right: 0;
    left: auto;
    border-radius: 14px;
    box-shadow: 0 12px 40px rgba(27, 45, 69, 0.18);
}

body.ui-shell-ready .dropdown.open .dropdown-content {
    display: grid;
    animation: menuFadeIn 0.25s ease;
}

body.ui-shell-ready .lang-switcher.dropdown.open .dropdown-content {
    display: block;
}

body.ui-shell-ready .guide-group {
    display: grid;
    gap: 0.25rem;
    padding: 0.75rem;
    background: rgba(27, 45, 69, 0.04);
    border-radius: 10px;
    border: 1px solid rgba(160, 113, 79, 0.08);
}

body.ui-shell-ready .guide-group-title {
    display: block;
    margin-bottom: 0.5rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid rgba(160, 113, 79, 0.15);
    color: var(--accent);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

body.ui-shell-ready .mega-dropdown .nav-panel-link {
    padding: 0.45rem 0.6rem;
    border-radius: 6px;
    font-size: 0.87rem;
    color: var(--text-dark);
    text-decoration: none;
    transition: background 0.15s, color 0.15s;
}

body.ui-shell-ready .mega-dropdown .nav-panel-link:hover {
    background: rgba(27, 45, 69, 0.1);
    color: var(--primary);
}

body.ui-shell-ready .nav-overlay {
    position: fixed;
    inset: 0;
    background: rgba(16, 11, 28, 0.4);
    backdrop-filter: blur(4px);
    z-index: 1590;
}

body.ui-shell-ready .nav-panel {
    position: fixed;
    top: 0;
    right: 0;
    width: min(360px, 85vw);
    max-width: 85vw;
    height: 100vh;
    padding: 1.1rem 1rem 1.4rem;
    background: rgba(255, 252, 248, 0.98);
    box-shadow: -16px 0 40px rgba(27, 45, 69, 0.16);
    z-index: 1605;
    overflow-y: auto;
    overflow-x: hidden;
}

body.ui-shell-ready .nav-panel-cta {
    justify-content: center;
    margin-top: 1rem;
    width: 100%;
    text-align: center;
}

body.ui-shell-ready.is-rtl .nav-panel {
    right: auto;
    left: 0;
    box-shadow: 16px 0 40px rgba(27, 45, 69, 0.16);
}

body.ui-shell-ready .nav-panel-header,
body.ui-shell-ready .nav-panel-links,
body.ui-shell-ready .nav-panel-lang,
body.ui-shell-ready .nav-accordion-panel,
body.ui-shell-ready .language-pill-row {
    display: grid;
    gap: 0.7rem;
}

body.ui-shell-ready .nav-panel-header {
    grid-template-columns: 1fr auto;
    align-items: center;
    padding-bottom: 1rem;
    margin-bottom: 0.5rem;
    border-bottom: 1px solid rgba(184, 134, 11, 0.15);
}

body.ui-shell-ready .nav-panel-close {
    appearance: none;
    border: 0;
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: rgba(27, 45, 69, 0.08);
    color: var(--primary);
    cursor: pointer;
}

body.ui-shell-ready .nav-panel-body {
    display: grid;
    gap: 1rem;
    padding-top: 1rem;
}

body.ui-shell-ready .nav-panel-guides {
    display: grid;
    gap: 0.6rem;
}

body.ui-shell-ready .nav-panel-link,
body.ui-shell-ready .footer-link-list a {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    color: var(--text-soft);
    padding: 0.2rem 0;
}

body.ui-shell-ready .nav-panel-links .nav-panel-link {
    padding: 0.85rem 0;
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--text-dark, #1B2D45);
    border-bottom: 1px solid rgba(27, 45, 69, 0.06);
    transition: color 0.2s, padding-left 0.2s;
}

body.ui-shell-ready .nav-panel-links .nav-panel-link:hover {
    color: var(--accent, #b8860b);
    padding-left: 0.5rem;
}

body.ui-shell-ready .nav-panel-link.is-active,
body.ui-shell-ready .nav-link.is-active,
body.ui-shell-ready .footer-link-list a:hover,
body.ui-shell-ready .footer-lang-link:hover {
    color: var(--primary);
}

body.ui-shell-ready .footer-link-list a[aria-current="page"] {
    color: var(--primary);
}

body.ui-shell-ready .nav-accordion {
    margin: 0.3rem 0;
    border: 1px solid rgba(27, 45, 69, 0.08);
    border-radius: 12px;
    background: var(--surface-soft);
    padding: 0.2rem 0.9rem;
    overflow: hidden;
}

body.ui-shell-ready .nav-accordion summary {
    list-style: none;
    cursor: pointer;
    padding: 0.9rem 0;
    font-weight: 700;
    font-size: 0.95rem;
    color: var(--text-strong);
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: rgba(27, 45, 69, 0.03);
    margin: -0.2rem -0.9rem;
    padding-left: 0.9rem;
    padding-right: 0.9rem;
}

body.ui-shell-ready .nav-accordion[open] summary {
    background: rgba(27, 45, 69, 0.06);
    border-bottom: 1px solid rgba(27, 45, 69, 0.08);
}

body.ui-shell-ready .nav-accordion summary::-webkit-details-marker {
    display: none;
}

body.ui-shell-ready .nav-accordion summary::after {
    content: '+';
    font-size: 1.1rem;
    font-weight: 300;
    color: var(--primary, #7B6699);
    transition: transform 0.25s ease;
    flex-shrink: 0;
}

body.ui-shell-ready .nav-accordion[open] summary::after {
    transform: rotate(45deg);
}

body.ui-shell-ready .language-pill-row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

body.ui-shell-ready .nav-panel .language-pill-row {
    display: flex;
    gap: 0.5rem;
    margin-top: 0.8rem;
}

body.ui-shell-ready .nav-panel .footer-lang-link {
    flex: 1;
    padding: 0.65rem;
    border-radius: 10px;
    text-align: center;
    font-weight: 700;
    font-size: 0.9rem;
    border: 1px solid rgba(27, 45, 69, 0.12);
    transition: all 0.2s;
}

body.ui-shell-ready .nav-panel .footer-lang-link:hover,
body.ui-shell-ready .nav-panel .footer-lang-link.active {
    background: var(--primary);
    color: var(--white);
    border-color: var(--primary);
}

body.ui-shell-ready .footer-lang-link {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-height: 40px;
    padding: 0.5rem 0.75rem;
    border-radius: 999px;
    border: 1px solid rgba(27, 45, 69, 0.16);
    background: rgba(255, 255, 255, 0.86);
    font-size: 0.84rem;
    font-weight: 700;
}

body.ui-shell-ready .footer-lang-link.active {
    background: linear-gradient(135deg, #1B2D45, #2a4060);
    border-color: transparent;
    color: #fff;
}

body.ui-shell-ready .footer-shell {
    padding-top: 4rem;
}

body.ui-shell-ready .footer-brand p,
body.ui-shell-ready .footer-col p,
body.ui-shell-ready .footer-bottom p {
    color: var(--text-soft);
}

body.ui-shell-ready .footer-link-list {
    display: grid;
    gap: 0.55rem;
}

body.ui-shell-ready .page-shell-breadcrumb {
    position: relative;
    z-index: 2;
    width: fit-content;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding: 0.65rem 1rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.88);
    border: 1px solid rgba(160, 113, 79, 0.14);
    box-shadow: 0 10px 24px rgba(27, 45, 69, 0.06);
}

body.ui-shell-ready .meta-inline,
body.ui-shell-ready .testimonial-author,
body.ui-shell-ready .blog-card-meta,
body.ui-shell-ready .hero-trust-badges,
body.ui-shell-ready .about-stats {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.6rem;
}

body.ui-shell-ready .testimonial-author span,
body.ui-shell-ready .testimonial-author strong,
body.ui-shell-ready .blog-card-meta > span {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
}

body.ui-shell-ready .meta-separator {
    color: rgba(27, 45, 69, 0.5);
}

body.ui-shell-ready .blog-filter-bar {
    display: flex;
    flex-wrap: wrap;
    gap: 0.8rem;
    justify-content: flex-start;
    margin-bottom: 2.4rem;
}

body.ui-shell-ready .filter-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    min-height: 44px;
    padding: 0.7rem 1.15rem;
    border-radius: 999px;
    font-size: 0.86rem;
    font-weight: 700;
}

body.ui-shell-ready .filter-btn:focus-visible,
body.ui-shell-ready .nav-link:focus-visible,
body.ui-shell-ready .drop-trigger:focus-visible,
body.ui-shell-ready .nav-panel-link:focus-visible,
body.ui-shell-ready .footer-lang-link:focus-visible {
    outline: 3px solid rgba(27, 45, 69, 0.32);
    outline-offset: 2px;
}

body.ui-shell-ready .blog-card {
    min-height: 100%;
    background: var(--surface-strong);
}

body.ui-shell-ready .blog-card-body {
    gap: 0.75rem;
}

body.ui-shell-ready .blog-card-body h3 {
    color: var(--text-strong);
}

body.ui-shell-ready .blog-card-body p {
    color: var(--text-soft);
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

body.ui-shell-ready .blog-card-footer {
    gap: 0.8rem;
}

body.ui-shell-ready .blog-card[hidden] {
    display: none !important;
}

body.ui-shell-ready .hero-trust-badges,
body.ui-shell-ready .about-stats,
body.ui-shell-ready .metric-band {
    gap: 1rem;
}

body.ui-shell-ready .hero-image-wrapper {
    width: min(100%, 430px);
}

body.ui-shell-ready .trust-badge {
    min-width: 0;
}

body.ui-shell-ready .page-hero-centered,
body.ui-shell-ready .hero.page-hero-centered {
    background: linear-gradient(180deg, rgba(255, 251, 246, 0.98), rgba(255, 255, 255, 0.92));
}

body.ui-shell-ready .page-hero-centered h1,
body.ui-shell-ready .page-hero-centered .serif {
    color: var(--text-strong);
}

body.ui-shell-ready .page-hero-centered .page-lede,
body.ui-shell-ready .page-hero-centered p {
    color: var(--text-soft) !important;
}

body.ui-shell-ready.is-rtl .page-breadcrumbs,
body.ui-shell-ready.is-rtl .page-kicker,
body.ui-shell-ready.is-rtl .hero-content,
body.ui-shell-ready.is-rtl .featured-content {
    text-align: right;
}

body.ui-shell-ready.is-rtl .meta-inline,
body.ui-shell-ready.is-rtl .testimonial-author,
body.ui-shell-ready.is-rtl .blog-card-meta,
body.ui-shell-ready.is-rtl .hero-trust-badges,
body.ui-shell-ready.is-rtl .about-stats {
    justify-content: flex-end;
}

body.ui-shell-ready .trust-badge,
body.ui-shell-ready .stat-item,
body.ui-shell-ready .metric-card {
    background: rgba(255, 255, 255, 0.84);
    border: 1px solid rgba(160, 113, 79, 0.14);
}

body.ui-shell-ready .trust-badge span,
body.ui-shell-ready .stat-item span,
body.ui-shell-ready .metric-card span {
    color: var(--text-soft);
}

body.ui-shell-ready .reveal {
    opacity: 0;
    transform: translateY(18px);
    transition: opacity 0.45s ease, transform 0.45s ease;
}

body.ui-shell-ready .reveal.revealed,
body.ui-shell-ready .reveal.active {
    opacity: 1;
    transform: translateY(0);
}

body.ui-shell-ready .whatsapp-float.is-pulsing {
    transform: scale(1.06);
    box-shadow: 0 16px 28px rgba(37, 211, 102, 0.3);
}

@media (max-width: 1100px) {
    body.ui-shell-ready .nav-desktop {
        display: none;
    }

    body.ui-shell-ready .mobile-menu-btn {
        display: inline-flex;
        margin-left: auto;
    }

    body.ui-shell-ready .page-shell-breadcrumb {
        width: 100%;
        border-radius: 22px;
    }
}

@media (min-width: 1101px) {
    body.ui-shell-ready .nav-panel,
    body.ui-shell-ready .nav-overlay,
    body.ui-shell-ready .mobile-menu-btn {
        display: none !important;
    }
}

@media (max-width: 767px) {
    body.ui-shell-ready .blog-filter-bar {
        justify-content: stretch;
    }

    body.ui-shell-ready .filter-btn {
        flex: 1 1 calc(50% - 0.4rem);
    }

    body.ui-shell-ready .footer-grid {
        gap: 1.5rem;
    }

    body.ui-shell-ready .hero-trust-badges,
    body.ui-shell-ready .about-stats,
    body.ui-shell-ready .blog-card-meta {
        align-items: flex-start;
    }

    body.ui-shell-ready .hero-trust-badges {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
    }

    body.ui-shell-ready .trust-badge {
        justify-content: center;
    }
}

@media (max-width: 968px) {
    body.ui-shell-ready.is-rtl .hero,
    body.ui-shell-ready.is-rtl .featured {
        flex-direction: column !important;
    }

    body.ui-shell-ready.is-rtl .hero-image-wrapper,
    body.ui-shell-ready.is-rtl .featured-img {
        margin-inline: auto;
    }

    body.ui-shell-ready.is-rtl .hero-cta-group,
    body.ui-shell-ready.is-rtl .hero-trust-badges,
    body.ui-shell-ready.is-rtl .about-stats {
        justify-content: center;
    }
}

@media (max-width: 520px) {
    body.ui-shell-ready .hero-trust-badges {
        grid-template-columns: 1fr;
    }
}
.coffee-symbol-card h4,
.coffee-symbol-card h4.serif {
    font-family: 'Cormorant Garamond', serif;
    color: #1B2D45;
    font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: 0.5rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}
.coffee-symbol-card h4 i,
.coffee-symbol-card h4.serif i {
    color: #8B5E3C;
}
.coffee-symbol-card p { font-size: 0.9rem; margin: 0; color: #3A3A3A; line-height: 1.7; }


.cta-dark-box {
    margin-top: 3.5rem;
    padding: 3.5rem;
    background: linear-gradient(135deg, #0f1e30, #1B2D45);
    border-radius: 24px;
    text-align: center;
    box-shadow: 0 12px 40px rgba(13,8,25,0.3);
}
.cta-dark-box h3 { font-family: 'Cormorant Garamond', serif; font-size: 2.2rem; margin-bottom: 1rem; color: #F5F0EB; }
.cta-dark-box p  { margin-bottom: 2rem; color: rgba(240,234,248,0.75); max-width: 560px; margin-left: auto; margin-right: auto; }
@media(max-width:600px) {
    .cta-dark-box { padding: 2rem 1.5rem; }
    .cta-dark-box h3 { font-size: 1.6rem; }
    .coffee-symbol-grid { grid-template-columns: 1fr; }
}


.definition-box {
    background: linear-gradient(135deg, rgba(13,26,46,0.04), rgba(184,134,11,0.03));
    border-radius: 16px;
    padding: 1.5rem;
    margin: 1.5rem 0;
    border: 1px solid rgba(160,113,79,0.1);
}
.definition-box h2 { margin-bottom: 0.7rem; font-size: 1.3rem; }
.definition-box p  { line-height: 1.8; color: var(--text-muted); margin: 0; }

.awakening-signs-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 0.9rem;
    margin: 1.5rem 0;
}
.awakening-sign-item {
    display: flex;
    gap: 0.8rem;
    align-items: flex-start;
}
.awakening-sign-item .sign-bullet {
    color: var(--primary);
    font-size: 1.1rem;
    flex-shrink: 0;
    margin-top: 0.1rem;
}
.awakening-sign-item p { font-size: 0.9rem; color: var(--text-muted); margin: 0.2rem 0 0; }

.awakening-stages { margin: 1.5rem 0; }
.awakening-stage {
    border-left: 3px solid var(--primary);
    margin-bottom: 1.5rem;
    padding-left: 1.5rem;
}
.awakening-stage.stage-danger { border-left-color: rgba(192,57,43,0.7); }
.awakening-stage.stage-success { border-left-color: #27ae60; }
.awakening-stage h3 { font-size: 1.05rem; margin-bottom: 0.5rem; color: var(--primary); }
.awakening-stage.stage-danger h3 { color: #c0392b; }
.awakening-stage.stage-success h3 { color: #1a6b2f; }
.awakening-stage p  { color: var(--text-muted); line-height: 1.7; font-size: 0.9rem; }

.support-box {
    background: rgba(39,174,96,0.06);
    border-radius: 16px;
    padding: 1.5rem;
    margin: 2rem 0;
    border: 1px solid rgba(39,174,96,0.15);
}
.support-box h3 { margin-bottom: 0.8rem; font-size: 1.05rem; }
.support-box p  { font-size: 0.92rem; line-height: 1.7; color: var(--text-muted); margin-bottom: 1rem; }
.support-box .btn-wa {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: #25D366;
    color: var(--white);
    padding: 0.8rem 1.5rem;
    border-radius: 10px;
    text-decoration: none;
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    font-size: 0.9rem;
}

.related-card-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1rem;
    margin-top: 1.2rem;
}
.related-card-link {
    background: rgba(27,45,69,0.05);
    border-radius: 14px;
    padding: 1.2rem;
    text-decoration: none;
    color: var(--text-dark);
    transition: background 0.2s;
}
.related-card-link:hover { background: rgba(160,113,79,0.12); }
.related-card-link .card-icon { font-size: 1.5rem; margin-bottom: 0.5rem; }
.related-card-link .card-title { font-weight: 600; font-size: 0.9rem; }
.related-card-link .card-desc  { font-size: 0.8rem; color: var(--text-muted); margin-top: 0.3rem; }
@media(max-width:600px) {
    .awakening-signs-grid { grid-template-columns: 1fr; }
    .related-card-grid { grid-template-columns: 1fr 1fr; }
}


.why-section {
    padding: 4rem 8%;
    background-color: var(--bg-light);
}
.why-section h2 {
    text-align: center;
    font-size: clamp(1.8rem, 4vw, 2.6rem);
    margin-bottom: 2rem;
}
.why-card-grid {
    max-width: 900px;
    margin: 0 auto 3rem;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 1.5rem;
}
.why-card {
    background: var(--white);
    border-radius: 20px;
    padding: 2rem;
    border: 1px solid rgba(184,134,11,0.1);
    box-shadow: var(--soft-shadow);
}
.why-card .card-emoji { font-size: 1.8rem; margin-bottom: 0.8rem; }
.why-card h3 { font-family: 'Cormorant Garamond', serif; font-size: 1.2rem; margin-bottom: 0.6rem; }
.why-card p  { font-size: 0.92rem; color: var(--text-muted); line-height: 1.7; margin: 0; }

.cta-center-box {
    max-width: 900px;
    margin: 0 auto;
    text-align: center;
    padding: 3rem;
    background: var(--white);
    border-radius: 30px;
    box-shadow: var(--soft-shadow);
}
.cta-center-box h3 { font-family: 'Cormorant Garamond', serif; font-size: 1.9rem; margin-bottom: 1rem; }
.cta-center-box p  { color: var(--text-muted); margin-bottom: 1.5rem; max-width: 500px; margin-left: auto; margin-right: auto; line-height: 1.7; }


.free-tarot-section {
    padding: 4rem 8%;
    background: var(--white);
}
.free-tarot-section h2 { margin-bottom: 1rem; font-size: 2rem; }
.free-tarot-section p  { font-size: 1.05rem; color: var(--text-dark); line-height: 1.8; margin-bottom: 1.2rem; }
.tarot-types-mini-grid {
    max-width: 900px;
    margin-top: 2.5rem;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 1rem;
}
.tarot-type-mini {
    background: var(--bg-light);
    border-radius: 14px;
    padding: 1.2rem 1rem;
    text-align: center;
}
.tarot-type-mini .type-icon { font-size: 1.6rem; margin-bottom: 0.4rem; }
.tarot-type-mini strong    { font-size: 0.9rem; display: block; }
.tarot-type-mini p         { font-size: 0.8rem; color: var(--text-muted); margin: 0.3rem 0 0; }
@media(max-width:600px) {
    .why-section { padding: 3rem 5%; }
    .free-tarot-section { padding: 3rem 5%; }
    .cta-center-box { padding: 2rem 1.5rem; }
}


.combo-method-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 1.2rem;
    margin: 1.5rem 0;
}
.combo-method-item {
    background: rgba(27,45,69,0.05);
    border-radius: 14px;
    padding: 1.3rem;
}
.combo-method-item .step-label {
    font-weight: 700;
    color: var(--primary);
    margin-bottom: 0.6rem;
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.combo-method-item p { font-size: 0.85rem; color: var(--text-muted); line-height: 1.6; margin: 0; }

h3.combo-section-title {
    border-bottom: 2px solid rgba(184,134,11,0.2);
    padding-bottom: 0.5rem;
    margin-top: 2rem;
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.4rem;
}

.combo-list { display: grid; gap: 0.8rem; margin: 1.2rem 0; }
.combo-card {
    background: var(--white);
    border-radius: 12px;
    padding: 1.2rem;
    border: 1px solid rgba(160,113,79,0.1);
    display: grid;
    grid-template-columns: 80px 1fr;
    gap: 1rem;
    align-items: start;
}
.combo-card .combo-icon { text-align: center; }
.combo-card .combo-icon .icon-emoji { font-size: 1.4rem; }
.combo-card .combo-icon .icon-label { font-size: 0.7rem; color: var(--text-muted); font-weight: 600; margin-top: 0.2rem; }
.combo-card p { font-size: 0.88rem; line-height: 1.6; color: var(--text-muted); margin: 0; }

.combo-warning-box {
    background: rgba(192,57,43,0.04);
    border-radius: 16px;
    padding: 1.5rem;
    margin: 1rem 0;
}
.combo-warning-box > p { font-size: 0.9rem; line-height: 1.7; color: var(--text-muted); margin-bottom: 1rem; }
.combo-warning-list { display: grid; gap: 0.8rem; }
.combo-warning-item {
    display: flex;
    gap: 1rem;
    background: var(--white);
    border-radius: 10px;
    padding: 1rem;
    border-left: 3px solid rgba(192,57,43,0.4);
}
.combo-warning-item .warn-icon { font-size: 1.2rem; flex-shrink: 0; }
.combo-warning-item p { font-size: 0.85rem; color: var(--text-muted); margin: 0; }

.combo-cta-section {
    margin-top: 3rem;
    padding-top: 2rem;
    border-top: 1px solid rgba(160,113,79,0.12);
    text-align: center;
}
.combo-cta-section h3 { margin-bottom: 1.5rem; }
.combo-cta-section p  { color: var(--text-muted); font-size: 0.92rem; margin-bottom: 1.5rem; }
@media(max-width:600px) {
    .combo-card { grid-template-columns: 1fr; }
}


.shadow-card-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 1.2rem;
    margin: 1.5rem 0;
}
.shadow-card {
    background: rgba(45,27,78,0.05);
    border-radius: 14px;
    padding: 1.3rem;
    border-left: 4px solid #1B2D45;
}
.shadow-card h3 { font-size: 1rem; margin-bottom: 0.6rem; }
.shadow-card p  { font-size: 0.88rem; color: var(--text-muted); line-height: 1.6; margin: 0; }

.shadow-spread-box {
    background: var(--white);
    border-radius: 20px;
    padding: 2rem;
    box-shadow: 0 4px 20px rgba(0,0,0,0.06);
    border: 1px solid rgba(184,134,11,0.1);
    margin: 1.5rem 0;
}
.shadow-spread-positions {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 0.6rem;
    text-align: center;
    margin-bottom: 1.5rem;
}
.shadow-spread-pos-num {
    background: rgba(45,27,78,0.06);
    border-radius: 10px;
    padding: 0.8rem;
    font-size: 0.78rem;
    font-weight: 600;
}
.shadow-spread-list { display: grid; gap: 0.8rem; }
.shadow-spread-item {
    display: flex;
    gap: 1rem;
    align-items: flex-start;
    padding: 0.8rem;
    border-radius: 10px;
    background: rgba(27,45,69,0.04);
}
.shadow-spread-item .item-num {
    background: var(--primary);
    color: var(--white);
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 0.85rem;
    flex-shrink: 0;
}
.shadow-spread-item p { font-size: 0.9rem; color: var(--text-muted); margin: 0; }

.warning-box {
    background: rgba(192,57,43,0.05);
    border-left: 4px solid #c0392b;
    border-radius: 0 14px 14px 0;
    padding: 1.2rem 1.5rem;
    margin: 1.5rem 0;
}
.warning-box p { margin: 0; font-size: 0.92rem; line-height: 1.8; color: var(--text-dark); }
@media(max-width:600px) {
    .shadow-card-grid { grid-template-columns: 1fr; }
    .shadow-spread-positions { grid-template-columns: repeat(5, 1fr); font-size: 0.7rem; }
}


.week-badge {
    display: inline-block;
    background: rgba(212,175,55,.15);
    border: 1px solid rgba(212,175,55,.3);
    border-radius: 50px;
    padding: .4rem 1.2rem;
    font-size: .8rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(212,175,55,.9);
    margin-bottom: 1.2rem;
}
.planet-strip {
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(212,175,55,.15);
    border-radius: 12px;
    padding: .8rem 1.5rem;
    margin-top: 1.8rem;
    display: flex;
    gap: 1.5rem;
    flex-wrap: wrap;
    justify-content: center;
    font-size: .82rem;
    color: rgba(240,234,248,.7);
}
.planet-strip span { display: flex; align-items: center; gap: .4rem; }
.burclar-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));
    gap: 2rem;
    max-width: 1200px;
    margin: 0 auto;
    padding: 4rem 5%;
}
.burc-week-card {
    background: var(--white);
    border-radius: 20px;
    border: 1px solid rgba(184,134,11,.1);
    box-shadow: 0 4px 24px rgba(0,0,0,.05);
    overflow: hidden;
    transition: transform .3s ease, box-shadow .3s ease;
}
.burc-week-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 16px 40px rgba(0,0,0,.1);
}
.burc-card-header {
    padding: 1.4rem 1.8rem 1.2rem;
    background: linear-gradient(135deg, rgba(27,45,69,.06), rgba(184,134,11,.04));
    border-bottom: 1px solid rgba(184,134,11,.08);
    display: flex;
    align-items: center;
    gap: 1rem;
}
.burc-symbol {
    width: 52px; height: 52px;
    border-radius: 14px;
    background: linear-gradient(135deg, #1B2D45, #2a4060);
    display: flex; align-items: center; justify-content: center;
    font-size: 1.6rem;
    color: var(--white);
    flex-shrink: 0;
    box-shadow: 0 4px 14px rgba(27,45,69,.2);
}
.burc-card-header-info { flex: 1; }
.burc-card-header-info h2 {
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.4rem;
    color: #1B2D45;
    margin: 0 0 .2rem;
}
.burc-meta {
    font-size: .75rem;
    color: var(--text-muted);
    letter-spacing: .5px;
}
.burc-card-body { padding: 1.6rem 1.8rem; }
.burc-summary {
    font-size: .97rem;
    line-height: 1.8;
    color: var(--text-dark);
    margin-bottom: 1.2rem;
    border-left: 3px solid var(--primary);
    padding-left: 1rem;
    font-style: italic;
}
.burc-detail { font-size: .93rem; line-height: 1.85; color: #444; margin-bottom: 1.4rem; }
.burc-focus-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: .6rem;
    margin-bottom: 1.2rem;
}
.burc-focus-item {
    background: rgba(27,45,69,.06);
    border: 1px solid rgba(160,113,79,.12);
    border-radius: 10px;
    padding: .6rem .8rem;
    text-align: center;
    font-size: .75rem;
    color: var(--primary);
}
.burc-focus-item strong {
    display: block;
    font-size: .7rem;
    color: var(--text-muted);
    margin-bottom: .15rem;
    text-transform: uppercase;
    letter-spacing: .5px;
}
.burc-tarot-link {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    font-size: .82rem;
    color: var(--primary);
    font-weight: 600;
    padding: .4rem .9rem;
    border: 1px solid rgba(27,45,69,.15);
    border-radius: 8px;
    transition: background .2s, border-color .2s;
}
.burc-tarot-link:hover {
    background: rgba(160,113,79,.08);
    border-color: rgba(27,45,69,.25);
}
.energy-bar {
    height: 4px;
    border-radius: 2px;
    background: linear-gradient(90deg, #1B2D45, #D4AF37);
    margin: 1rem 0 .4rem;
}
.energy-label { font-size: .7rem; color: var(--text-muted); display: flex; justify-content: space-between; }
.planet-info-box {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 5% 3rem;
}
.planet-info-inner {
    background: linear-gradient(135deg, rgba(27,45,69,.05), rgba(184,134,11,.03));
    border: 1px solid rgba(184,134,11,.15);
    border-radius: 20px;
    padding: 2rem 2.4rem;
}
.planet-info-inner h3 {
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.5rem;
    color: var(--primary);
    margin-bottom: 1rem;
}
.planet-list { display: flex; flex-wrap: wrap; gap: .8rem; }
.planet-tag {
    display: flex; align-items: center; gap: .5rem;
    background: var(--white);
    border: 1px solid rgba(184,134,11,.15);
    border-radius: 10px;
    padding: .5rem 1rem;
    font-size: .85rem;
}
.planet-tag i { color: var(--accent); width: 14px; }
.burc-faq { max-width: 860px; margin: 0 auto; padding: 0 5% 5rem; }
.burc-faq h2 {
    font-family: 'Cormorant Garamond', serif;
    font-size: 2rem;
    color: var(--primary);
    margin-bottom: 1.5rem;
}
@media (max-width: 768px) {
    .burclar-grid { grid-template-columns: 1fr; padding: 2.5rem 5%; }
    .burc-focus-grid { grid-template-columns: 1fr 1fr; }
    .planet-strip { gap: .8rem; }
}




.astro-content {
    padding: 4rem 8%;
    max-width: 900px;
    margin: 0 auto;
    line-height: 1.9;
    color: var(--text-dark);
}


.tarot-content {
    padding: 4rem 8%;
    line-height: 1.9;
    color: var(--text-dark);
}


.tarot-related {
    padding: 3rem 8%;
    max-width: 1200px;
    margin: 0 auto;
}


.prose-section {
    padding: 4rem 8%;
    max-width: 900px;
    margin: 0 auto;
    line-height: 1.9;
    color: var(--text-dark);
}


.blog-cta {
    padding: 2.5rem 8%;
    background: rgba(160, 113, 79, 0.03);
    border-top: 1px solid rgba(160, 113, 79, 0.1);
}


.about-section {
    padding: 4rem 5%;
    background: linear-gradient(135deg, rgba(27,45,69,.04) 0%, rgba(184,134,11,.03) 100%);
}
.about-section-inner {
    max-width: 900px;
    margin: 0 auto;
    text-align: center;
}
.about-section-text {
    font-size: 1.1rem;
    color: var(--text-muted);
    line-height: 1.9;
    margin-bottom: 1.2rem;
    max-width: 720px;
    margin-left: auto;
    margin-right: auto;
}
.about-section-quote {
    font-size: 1.05rem;
    color: var(--text-muted);
    line-height: 1.9;
    margin-bottom: 2.5rem;
    max-width: 680px;
    margin-left: auto;
    margin-right: auto;
}
.about-quote-em {
    color: var(--primary);
    font-size: 1.15rem;
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
}


.tarot-preview-section {
    padding: 4rem 5%;
    background: var(--bg-light);
}
.tarot-preview-grid {
    max-width: 1100px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
    align-items: center;
}
.tarot-preview-list {
    list-style: none;
    margin-bottom: 2rem;
}
.tarot-preview-list li {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: .9rem;
}
.tarot-preview-icon {
    width: 28px;
    height: 28px;
    background: var(--primary);
    border-radius: 50%;
    color: var(--white);
    font-size: .75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-top: 2px;
}
.tarot-preview-cta {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
}
.tarot-card-visual {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    transform: perspective(800px) rotateY(-6deg);
}
.tarot-card-mini {
    background: linear-gradient(145deg, #1B2D45, #2a4060);
    border-radius: 12px;
    aspect-ratio: 2/3;
    box-shadow: 0 8px 30px rgba(0,0,0,.15);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    padding: 12px 8px;
    border: 2px solid rgba(212,175,55,.4);
}
.tarot-card-mini.featured {
    transform: translateY(-16px) scale(1.05);
}
.tarot-card-mini .tcm-num {
    font-size: .6rem;
    color: rgba(255,255,255,.7);
    letter-spacing: .15em;
    font-family: serif;
}
.tarot-card-mini .tcm-symbol {
    font-size: 2rem;
}
.tarot-card-mini .tcm-name {
    font-size: .55rem;
    font-weight: 700;
    letter-spacing: .1em;
    color: rgba(255,255,255,.9);
    font-family: serif;
    text-transform: uppercase;
    text-align: center;
}
@media(max-width:768px) {
    .tarot-preview-grid { grid-template-columns: 1fr; gap: 2rem; }
    .tarot-card-visual { display: none; }
}




.hero-page-sub {
    color: #ddd;
    font-size: 1.15rem;
    max-width: 700px;
    margin: 1.5rem auto 0;
}


.cta-inline {
    margin-top: 2rem;
}


.prose-lead {
    font-size: 1.1rem;
    font-weight: 500;
    margin-bottom: 2rem;
    line-height: 1.75;
}


.burc-info-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
    margin: 2rem 0;
    padding: 1.5rem;
    background: rgba(27, 45, 69, 0.06);
    border-radius: 16px;
}


.burc-info-grid strong,
.info-label {
    display: block;
    color: var(--primary);
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin-bottom: 0.25rem;
}


.burc-info-grid a,
.info-link {
    color: var(--secondary);
    text-decoration: none;
    font-size: 1.05rem;
    font-weight: 500;
    transition: color 0.2s;
}
.burc-info-grid a:hover,
.info-link:hover {
    color: var(--primary);
}


.burc-nav-box {
    margin-top: 3rem;
    padding: 2.5rem;
    background: rgba(27, 45, 69, 0.06);
    border-radius: 20px;
    border-left: 4px solid var(--primary);
}

.burc-nav-box h3 {
    font-size: 1.7rem;
    margin-bottom: 1rem;
    color: var(--primary);
}

.burc-nav-chips {
    display: flex;
    gap: 0.8rem;
    flex-wrap: wrap;
}


.burc-chip {
    display: inline-block;
    padding: 0.4rem 0.9rem;
    background: var(--secondary);
    color: var(--white);
    border-radius: 8px;
    font-size: 0.85rem;
    text-decoration: none;
    transition: background 0.2s, transform 0.15s;
}
.burc-chip:hover {
    background: var(--primary);
    transform: translateY(-1px);
}


.footer-minor {
    font-size: 0.85rem;
    color: #c8d1e0;
    margin-top: 0.5rem;
}
a.footer-minor:hover {
    color: #ffffff;
}


.about-h2 {
    font-size: clamp(2rem, 4vw, 3rem);
    margin: 1rem 0 1.8rem;
    line-height: 1.2;
}


.section-cta-center {
    text-align: center;
    margin-top: 3rem;
}


.tarot-preview-h2 {
    text-align: left;
    margin-bottom: 1.2rem;
}


.page-hero h1.serif {
    color: var(--white);
    font-size: clamp(2rem, 4vw, 3rem);
    text-shadow: 0 2px 20px rgba(0, 0, 0, 0.5);
}


.hero-tagline-accent {
    color: var(--accent-light) !important;
}


.cta-button {
    text-decoration: none;
}


.services-cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.7rem;
}


.text-primary { color: var(--primary); }
.text-italic { font-style: italic; }


.about-stats-centered {
    justify-content: center;
    margin-bottom: 2.5rem;
}


.tarot-preview-desc {
    color: var(--text-dark);
    line-height: 1.8;
    margin-bottom: 1.2rem;
}


.nav-drop-icon {
    width: 18px;
    color: var(--primary);
}




.hero-radial-overlay {
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse at 30% 50%, rgba(27, 45, 69, 0.15) 0%, transparent 65%);
}


.hero-kicker {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 3px;
    color: var(--primary);
    margin-bottom: 1rem;
    font-family: 'Montserrat', sans-serif;
}


.hero-h1-light {
    font-size: clamp(2rem, 5vw, 3.2rem);
    color: #f5e6c8;
    font-weight: 300;
    line-height: 1.2;
    margin-bottom: 1.2rem;
}


.golge-content {
    max-width: 760px;
    margin: 0 auto;
    padding: 3rem 5%;
}


.golge-essence-box {
    background: linear-gradient(135deg, rgba(45, 27, 78, 0.04), rgba(160, 113, 79, 0.03));
    border-radius: 16px;
    padding: 1.5rem;
    margin: 1.5rem 0;
    border: 1px solid rgba(27, 45, 69, 0.1);
}

.golge-essence-text {
    line-height: 1.8;
    color: var(--text-muted);
    margin: 0;
}


.prose-list,
.prose-list-ol {
    margin: 1.2rem 0;
    padding-left: 1.5rem;
    line-height: 2;
}
.prose-list-ol { line-height: 2.2; }


.golge-kart-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 1.2rem;
    margin: 1.5rem 0;
}

.golge-kart-item {
    background: rgba(45, 27, 78, 0.05);
    border-radius: 14px;
    padding: 1.3rem;
    border-left: 4px solid #1B2D45;
}

.golge-kart-title {
    font-size: 1rem;
    margin-bottom: 0.6rem;
}

.golge-kart-desc {
    font-size: 0.88rem;
    color: var(--text-muted);
    line-height: 1.6;
    margin: 0;
}


.golge-acilim-box {
    background: var(--white);
    border-radius: 20px;
    padding: 2rem;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
    border: 1px solid rgba(160, 113, 79, 0.1);
    margin: 1.5rem 0;
}

.golge-pos-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 0.5rem;
    text-align: center;
    margin-bottom: 1.5rem;
    font-weight: 700;
    color: var(--primary);
}

.golge-pos-num {
    background: rgba(45, 27, 78, 0.06);
    border-radius: 10px;
    padding: 0.8rem;
    font-size: 0.78rem;
    font-weight: 600;
}


.golge-step-list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.8rem;
}

.golge-step-item {
    display: flex;
    gap: 1rem;
    align-items: flex-start;
    padding: 0.8rem;
    border-radius: 10px;
    background: rgba(27, 45, 69, 0.04);
}

.golge-step-num {
    background: var(--primary);
    color: var(--white);
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 0.85rem;
    flex-shrink: 0;
}

.golge-step-text {
    color: var(--text-muted);
    font-size: 0.9rem;
}


.warning-box {
    background: rgba(192, 57, 43, 0.05);
    border-left: 4px solid #c0392b;
    border-radius: 0 14px 14px 0;
    padding: 1.2rem 1.5rem;
    margin: 1.5rem 0;
}

.warning-text {
    margin: 0;
    font-size: 0.92rem;
    line-height: 1.8;
    color: var(--text-dark);
}


.continue-section {
    margin-top: 3rem;
    padding-top: 2rem;
    border-top: 1px solid rgba(27, 45, 69, 0.12);
}

.continue-title {
    margin-bottom: 1.2rem;
}

.continue-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1rem;
}

.continue-card {
    background: rgba(27, 45, 69, 0.05);
    border-radius: 14px;
    padding: 1.2rem;
    text-decoration: none;
    color: var(--text-dark);
    transition: background 0.2s, transform 0.2s;
}

.continue-card:hover {
    background: rgba(27, 45, 69, 0.1);
    transform: translateY(-2px);
}

.continue-emoji {
    font-size: 1.5rem;
    margin-bottom: 0.5rem;
}

.continue-card-title {
    font-weight: 600;
    font-size: 0.9rem;
}

.continue-card-desc {
    font-size: 0.8rem;
    color: var(--text-muted);
    margin-top: 0.3rem;
}



.oracle-draw-center { text-align: center; }

.eh-guide-section {
    padding: 4rem 5%;
    max-width: 920px;
    margin: 0 auto;
}

.section-h2-center {
    text-align: center;
    margin-bottom: 2.5rem;
}

.section-h2-left { text-align: left; }

.mb-lg { margin-bottom: 1.5rem; }

.essence-title { margin-bottom: 0.7rem; }

.section-white-padded {
    background: var(--white);
    padding: 4rem 5%;
}

.content-max-760 {
    max-width: 760px;
    margin: 0 auto;
}

.text-center { text-align: center; }

.section-lead-muted {
    color: var(--text-muted);
    margin-bottom: 2rem;
    line-height: 1.8;
}


.polarity-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1rem;
}

.polarity-card {
    border-radius: 14px;
    padding: 1.3rem;
}

.polarity-yes  { background: rgba(39, 174, 96, 0.06); border-left: 4px solid #27ae60; }
.polarity-no   { background: rgba(192, 57, 43, 0.06); border-left: 4px solid #c0392b; }
.polarity-maybe { background: rgba(160, 113, 79, 0.06); border-left: 4px solid var(--primary); }

.polarity-label {
    font-weight: 700;
    margin-bottom: 0.6rem;
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.polarity-label-yes   { color: #1a6b2f; }
.polarity-label-no    { color: #8b1a1a; }
.polarity-label-maybe { color: #7a5c1e; }

.polarity-text {
    font-size: 0.85rem;
    color: var(--text-muted);
    line-height: 1.6;
    margin: 0;
}


.section-bg-light-padded {
    background: var(--bg-light, #f9f7f3);
    padding: 3.5rem 5%;
}


.explore-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 1rem;
}

.explore-card {
    background: var(--white);
    border-radius: 16px;
    padding: 1.5rem;
    text-decoration: none;
    color: var(--text-dark);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.05);
    border: 1px solid rgba(160, 113, 79, 0.08);
    transition: transform 0.2s;
    display: block;
}

.explore-card:hover { transform: translateY(-3px); }

.explore-emoji {
    font-size: 1.8rem;
    margin-bottom: 0.7rem;
}

.explore-title {
    font-weight: 600;
    font-size: 0.95rem;
    margin-bottom: 0.4rem;
}

.explore-desc {
    font-size: 0.83rem;
    color: var(--text-muted);
}




.article-h2 {
    color: var(--primary);
    font-size: 2.1rem;
    margin-top: 3rem;
    margin-bottom: 1.2rem;
    line-height: 1.25;
}


.pull-quote {
    font-size: 1.15rem;
    font-style: italic;
    border-left: 4px solid var(--primary);
    padding-left: 1.2rem;
    margin-bottom: 2.5rem;
    color: var(--text-dark);
    line-height: 1.7;
}


.blog-cta-box {
    margin: 3.5rem 0;
    padding: 2.5rem;
    background: linear-gradient(135deg, rgba(160, 113, 79, 0.08), rgba(27, 45, 69, 0.08));
    border-radius: 16px;
    border: 1px solid rgba(160, 113, 79, 0.2);
    text-align: center;
}

.blog-cta-title {
    color: var(--primary);
    font-size: 1.8rem;
    margin-bottom: 1rem;
}

.blog-cta-desc {
    margin-bottom: 1.5rem;
    line-height: 1.7;
}


.faq-list {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.faq-list > .faq-item {
    background: var(--bg-light);
    border: 1px solid rgba(27, 45, 69, 0.12);
    border-radius: var(--radius-md);
    padding: 0;
    overflow: hidden;
}

.faq-list > .faq-item .faq-q {
    font-weight: 600;
    cursor: pointer;
    color: var(--text-dark);
    padding: 1.2rem 1.6rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: color 0.25s ease, background 0.25s ease;
}

.faq-list > .faq-item .faq-q::after {
    content: '\f078';
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    font-size: 0.75rem;
    color: var(--accent);
    transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    flex-shrink: 0;
    margin-left: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: rgba(160, 113, 79, 0.08);
}

.faq-list > .faq-item.open .faq-q::after { transform: rotate(180deg); }
.faq-list > .faq-item.open .faq-q {
    color: var(--primary);
    background: rgba(184, 134, 11, 0.04);
}

.faq-a-text {
    padding: 0 1.6rem 1.2rem;
    line-height: 1.8;
    color: var(--text-muted);
    font-size: 0.92rem;
}


.article-sidebar {
    padding: 2rem;
    background: rgba(160, 113, 79, 0.03);
    border-radius: 16px;
    border: 1px solid rgba(160, 113, 79, 0.15);
    height: fit-content;
    position: sticky;
    top: 100px;
}

.sidebar-title {
    color: var(--primary);
    margin-bottom: 1.5rem;
    font-size: 1.5rem;
    border-bottom: 2px solid rgba(160, 113, 79, 0.2);
    padding-bottom: 0.8rem;
}

.sidebar-links {
    list-style: none;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 1.2rem;
}

.sidebar-link {
    color: var(--text-dark);
    text-decoration: none;
    font-weight: 500;
    transition: color 0.2s;
}
.sidebar-link:hover { color: var(--primary); }

.sidebar-icon {
    color: var(--accent);
    margin-right: 10px;
}

.sidebar-cta {
    margin-top: 2rem;
    text-align: center;
    border-top: 1px solid rgba(160, 113, 79, 0.2);
    padding-top: 1.5rem;
}

.sidebar-cta-label {
    font-size: 0.9rem;
    color: var(--text-muted);
    margin-bottom: 1rem;
}


.cta-block {
    display: block;
    text-align: center;
    font-size: 0.9rem;
    padding: 0.8rem 1rem;
}






.oracle-hero {
    background: linear-gradient(160deg, #0f1e30 0%, #1B2D45 50%, #0f1e30 100%);
    min-height: 420px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 6rem 5% 4rem;
    position: relative;
    overflow: hidden;
}
.oracle-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse at 50% 60%, rgba(184,134,11,0.12) 0%, transparent 70%);
}
.oracle-hero-content { position: relative; z-index: 1; max-width: 680px; }
.oracle-hero h1 { font-size: clamp(2rem, 5vw, 3rem); color: #f5e6c8; margin-bottom: 1rem; font-weight: 300; letter-spacing: 1px; }
.oracle-hero h1 em { color: var(--primary); font-style: italic; }
.oracle-intro { color: rgba(245,230,200,0.75); font-size: 1.05rem; line-height: 1.8; max-width: 540px; margin: 0 auto 1.5rem; }
.stars-deco { font-size: 1.5rem; letter-spacing: 0.5rem; color: rgba(184,134,11,0.6); margin-bottom: 1rem; }

.oracle-section { background: var(--bg-light, #f9f7f3); padding: 4rem 5%; }
.oracle-card {
    background: var(--white);
    border-radius: 30px;
    padding: 3rem;
    box-shadow: 0 20px 60px rgba(0,0,0,0.08);
    border: 1px solid rgba(184,134,11,0.1);
    max-width: 660px;
    margin: 0 auto;
}
.oracle-draw-center { text-align: center; margin-bottom: 1rem; }

.question-area { margin-bottom: 2rem; }
.question-area label {
    display: block;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: var(--text-muted);
    margin-bottom: 0.75rem;
    font-family: 'Montserrat', sans-serif;
}
.question-input {
    width: 100%;
    padding: 1rem 1.2rem;
    border: 2px solid rgba(27,45,69,0.15);
    border-radius: 16px;
    font-size: 1rem;
    font-family: 'Montserrat', sans-serif;
    background: var(--bg-light, #f9f7f3);
    transition: border-color 0.3s;
    resize: none;
    box-sizing: border-box;
}
.question-input:focus { outline: none; border-color: var(--primary); }
.question-hint { font-size: 0.78rem; color: var(--text-muted); margin-top: 0.5rem; font-style: italic; }

.draw-btn {
    width: 100%;
    padding: 1.2rem;
    background: linear-gradient(135deg, #1B2D45 0%, var(--primary) 100%);
    color: var(--white);
    border: none;
    border-radius: 16px;
    font-size: 1.1rem;
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    cursor: pointer;
    transition: transform 0.2s, box-shadow 0.2s;
    letter-spacing: 0.5px;
}
.draw-btn:hover { transform: translateY(-2px); box-shadow: 0 10px 30px rgba(45,27,78,0.35); }
.draw-btn:active { transform: translateY(0); }

.redraw-btn {
    background: none;
    border: 1px solid rgba(27,45,69,0.2);
    border-radius: 50px;
    padding: 0.5rem 1.4rem;
    font-size: 0.82rem;
    font-family: 'Montserrat', sans-serif;
    color: var(--text-muted);
    cursor: pointer;
    transition: all 0.2s;
    margin-top: 1rem;
}
.redraw-btn:hover { border-color: var(--primary); color: var(--primary); }

.card-reveal {
    display: none;
    margin-top: 2.5rem;
    animation: fadeInUp 0.7s ease;
}
.verdict-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.7rem 1.8rem;
    border-radius: 50px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 1.1rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 1.5rem;
}
.verdict-evet  { background: linear-gradient(135deg, #1a6b2f, #27ae60); color: var(--white); box-shadow: 0 8px 24px rgba(39,174,96,0.3); }
.verdict-hayir { background: linear-gradient(135deg, #8b1a1a, #c0392b); color: var(--white); box-shadow: 0 8px 24px rgba(192,57,43,0.3); }
.verdict-belki { background: linear-gradient(135deg, #7a5c1e, var(--primary)); color: var(--white); box-shadow: 0 8px 24px rgba(184,134,11,0.3); }

.card-frame {
    background: linear-gradient(160deg, rgba(45,27,78,0.07), rgba(184,134,11,0.05));
    border-radius: 20px;
    padding: 2rem;
    margin-bottom: 1.5rem;
    border: 1px solid rgba(160,113,79,0.12);
    text-align: center;
}
.card-symbol { font-size: 4rem; margin-bottom: 0.5rem; display: block; }
.card-image-wrap {
    width: 160px;
    margin: 0 auto 1.2rem;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 8px 30px rgba(27, 45, 69, 0.2);
    transition: transform 0.6s ease;
}
.card-image-wrap img {
    width: 100%;
    height: auto;
    display: block;
}
.card-image-wrap.card-reversed {
    transform: rotate(180deg);
}
.card-name-tr { font-family: 'Cormorant Garamond', serif; font-size: 1.8rem; color: var(--text-dark); margin-bottom: 0.3rem; }
.card-position-tag {
    display: inline-block;
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    padding: 0.25rem 0.8rem;
    border-radius: 20px;
    margin-bottom: 1rem;
    font-family: 'Montserrat', sans-serif;
}
.pos-duz  { background: rgba(39,174,96,0.12); color: #1a6b2f; }
.pos-ters { background: rgba(192,57,43,0.12); color: #8b1a1a; }

.verdict-explanation {
    font-size: 0.92rem;
    color: var(--text-muted);
    line-height: 1.75;
    margin-top: 0.8rem;
    font-style: italic;
}





.tr-page { background: var(--bg-light, #FDFBFA); }


.tr-breadcrumb {
  font-size: 0.78rem; color: var(--text-muted);
  font-family: 'Montserrat', sans-serif;
  padding: 100px 6% 0; max-width: 1200px; margin: 0 auto;
}
.tr-breadcrumb a { color: var(--text-muted); }
.tr-breadcrumb a:hover { color: var(--primary); }
.tr-breadcrumb span { margin: 0 8px; color: var(--primary); opacity: 0.5; }


.tr-hero {
  background: linear-gradient(135deg, #FAF8F5 0%, #fdf9f0 100%);
  border-bottom: 1px solid rgba(160,113,79,0.1);
  padding: 56px 6% 60px;
  text-align: center;
}
.tr-hero .eyebrow {
  font-family: 'Montserrat', sans-serif; font-size: 0.72rem;
  letter-spacing: 0.35em; text-transform: uppercase;
  color: var(--accent-light, #D4AF37); display: block; margin-bottom: 1rem;
}
.tr-hero h1 {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(2.2rem, 5vw, 3.8rem); font-weight: 700;
  color: var(--text-dark, #1F1F1F); margin-bottom: 1rem; line-height: 1.15;
}
.tr-hero h1 em { color: var(--primary, #1B2D45); font-style: italic; }
.tr-hero .hero-desc {
  font-size: 1rem; color: var(--text-muted, #5A5A5A); max-width: 580px;
  margin: 0 auto 2rem; line-height: 1.8;
}
.tr-hero .hero-stats {
  display: flex; justify-content: center; gap: 40px; flex-wrap: wrap;
  margin-bottom: 2.5rem;
}
.hero-stat { text-align: center; }
.hero-stat strong {
  display: block; font-family: 'Cormorant Garamond', serif;
  font-size: 1.8rem; color: var(--primary); font-weight: 700;
}
.hero-stat span { font-size: 0.78rem; color: var(--text-muted); font-family: 'Montserrat', sans-serif; }


.tr-section { padding: 64px 6%; }
.tr-section-inner { max-width: 1100px; margin: 0 auto; }
.tr-section-head { text-align: center; margin-bottom: 48px; }
.tr-section-head .s-label {
  font-family: 'Montserrat', sans-serif; font-size: 0.7rem;
  letter-spacing: 0.33em; text-transform: uppercase;
  color: var(--accent-light, #D4AF37); display: block; margin-bottom: 0.8rem;
}
.tr-section-head h2 {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(1.8rem, 4vw, 2.8rem); color: var(--text-dark); margin-bottom: 0.6rem;
}
.tr-section-head p { font-size: 0.92rem; color: var(--text-muted); max-width: 480px; margin: 0 auto; }
.s-divider {
  width: 50px; height: 2px; margin: 1rem auto 0;
  background: linear-gradient(90deg, var(--primary), var(--accent-light));
  border-radius: 2px;
}


#spread-pick { background: #fff; border-top: 1px solid rgba(160,113,79,0.08); }

.spread-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 16px;
}
.sp-card {
  border: 2px solid rgba(27,45,69,0.12);
  border-radius: 18px; padding: 24px 20px;
  cursor: pointer; text-align: center;
  transition: all 0.3s cubic-bezier(0.4,0,0.2,1);
  background: #fff; position: relative; overflow: hidden;
}
.sp-card::before {
  content: ''; position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(27,45,69,0.06), rgba(212,175,55,0.04));
  opacity: 0; transition: opacity 0.3s;
}
.sp-card:hover, .sp-card.active {
  border-color: var(--primary, #1B2D45);
  transform: translateY(-4px);
  box-shadow: 0 12px 35px rgba(160,113,79,0.15);
}
.sp-card:hover::before, .sp-card.active::before { opacity: 1; }
.sp-card.active { background: linear-gradient(135deg, rgba(27,45,69,0.05), #fff); }
.sp-card .sp-icon {
  font-size: 2rem; margin-bottom: 0.8rem; display: block;
  color: var(--primary);
}
.sp-card h3 {
  font-family: 'Cormorant Garamond', serif; font-size: 1.2rem;
  color: var(--text-dark); margin-bottom: 0.3rem;
}
.sp-card p { font-size: 0.78rem; color: var(--text-muted); line-height: 1.5; margin-bottom: 0.8rem; }
.sp-badge {
  font-size: 0.62rem; font-weight: 600; letter-spacing: 0.15em;
  text-transform: uppercase; color: var(--primary);
  border: 1px solid rgba(27,45,69,0.2);
  padding: 3px 10px; border-radius: 50px;
}


#reading-area {
  background: linear-gradient(135deg, #FAF8F5 0%, #fdfbfa 100%);
  border-top: 1px solid rgba(160,113,79,0.08);
}


.deck-zone { text-align: center; padding: 20px 0 40px; }
.deck-zone h3 {
  font-family: 'Cormorant Garamond', serif; font-size: 1.7rem;
  color: var(--text-dark); margin-bottom: 0.3rem;
}
.deck-zone p { font-size: 0.82rem; color: var(--text-muted); margin-bottom: 36px; font-family: 'Montserrat', sans-serif; }

.deck-stack {
  display: flex; justify-content: center; align-items: flex-end;
  height: 230px; position: relative; margin-bottom: 32px;
}
.dk {
  width: 100px; height: 170px; position: absolute;
  transform-origin: bottom center; border-radius: 10px;
  box-shadow: 0 6px 20px rgba(0,0,0,0.12);
}
.dk:nth-child(1) { transform: rotate(-12deg) translate(-90px, 4px); z-index: 1; }
.dk:nth-child(2) { transform: rotate(-6deg) translate(-45px, 2px); z-index: 2; }
.dk:nth-child(3) { transform: rotate(0deg) translate(0, 0); z-index: 3; }
.dk:nth-child(4) { transform: rotate(6deg) translate(45px, 2px); z-index: 2; }
.dk:nth-child(5) { transform: rotate(12deg) translate(90px, 4px); z-index: 1; }


.card-back-face {
  width: 100%; height: 100%; border-radius: 10px;
  background: linear-gradient(145deg, #1B2D45 0%, #2a4060 100%);
  border: 2px solid #D4AF37;
  position: relative; overflow: hidden;
}
.card-back-face::before {
  content: ''; position: absolute; inset: 6px;
  border: 1px solid rgba(212,175,55,0.4); border-radius: 6px;
}
.card-back-face::after {
  content: '✦'; position: absolute; top: 50%; left: 50%;
  transform: translate(-50%,-50%); font-size: 3rem;
  color: rgba(212,175,55,0.2); line-height: 1;
}
.cbf-dots {
  position: absolute; inset: 0; pointer-events: none;
  background-image: radial-gradient(circle, rgba(212,175,55,0.25) 1px, transparent 1px);
  background-size: 16px 16px;
}


.deck-shuffling .dk:nth-child(1) { animation: sh1 1.8s ease-in-out; }
.deck-shuffling .dk:nth-child(2) { animation: sh2 1.8s ease-in-out 0.05s; }
.deck-shuffling .dk:nth-child(3) { animation: sh3 1.8s ease-in-out 0.02s; }
.deck-shuffling .dk:nth-child(4) { animation: sh4 1.8s ease-in-out 0.08s; }
.deck-shuffling .dk:nth-child(5) { animation: sh5 1.8s ease-in-out 0.1s; }
@keyframes sh1{0%{transform:rotate(-12deg) translate(-90px,4px)}30%{transform:rotate(-35deg) translate(-160px,-40px) scale(.95)}80%{transform:rotate(-18deg) translate(-110px,10px)}100%{transform:rotate(-12deg) translate(-90px,4px)}}
@keyframes sh2{0%{transform:rotate(-6deg) translate(-45px,2px)}25%{transform:rotate(22deg) translate(90px,-65px)}70%{transform:rotate(-10deg) translate(-55px,8px)}100%{transform:rotate(-6deg) translate(-45px,2px)}}
@keyframes sh3{0%{transform:rotate(0deg) translate(0,0)}20%{transform:rotate(-8deg) translate(-35px,-85px)}55%{transform:rotate(8deg) translate(45px,-100px)}80%{transform:rotate(-2deg) translate(-12px,-18px)}100%{transform:rotate(0deg) translate(0,0)}}
@keyframes sh4{0%{transform:rotate(6deg) translate(45px,2px)}25%{transform:rotate(28deg) translate(150px,-25px)}75%{transform:rotate(10deg) translate(70px,10px)}100%{transform:rotate(6deg) translate(45px,2px)}}
@keyframes sh5{0%{transform:rotate(12deg) translate(90px,4px)}30%{transform:rotate(-22deg) translate(-80px,-45px)}70%{transform:rotate(18deg) translate(120px,-8px)}100%{transform:rotate(12deg) translate(90px,4px)}}


.tr-btn-primary {
  background: linear-gradient(135deg, var(--primary,#1B2D45), #2a4060);
  color: #fff; border: none;
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.1rem; padding: 14px 44px; border-radius: 50px;
  cursor: pointer; transition: all 0.3s; letter-spacing: 0.06em;
  display: inline-flex; align-items: center; gap: 10px;
  box-shadow: 0 4px 20px rgba(27,45,69,0.2);
}
.tr-btn-primary:hover {
  transform: translateY(-2px); box-shadow: 0 8px 28px rgba(27,45,69,0.3);
  background: linear-gradient(135deg, #2a4060, #2a4060);
}
.tr-btn-primary:disabled { opacity: 0.5; cursor: not-allowed; transform: none; }
.tr-btn-primary i { font-size: 0.9em; }

.tr-btn-ghost {
  background: transparent; border: 1.5px solid rgba(27,45,69,0.2);
  color: var(--text-muted); font-family: 'Montserrat', sans-serif;
  font-size: 0.8rem; padding: 9px 22px; border-radius: 50px;
  cursor: pointer; transition: all 0.3s; display: inline-flex; align-items: center; gap: 8px;
}
.tr-btn-ghost:hover { border-color: var(--primary); color: var(--primary); }


.positions-zone { padding: 10px 0; }
.pos-header { text-align: center; margin-bottom: 40px; }
.pos-header h3 {
  font-family: 'Cormorant Garamond', serif; font-size: 1.7rem; color: var(--text-dark); margin-bottom: 0.3rem;
}
.pos-header p { font-size: 0.82rem; color: var(--text-muted); font-family: 'Montserrat', sans-serif; }

.positions-row {
  display: flex; justify-content: center; align-items: flex-start;
  gap: 20px; flex-wrap: wrap;
}
.pos-col {
  display: flex; flex-direction: column; align-items: center; gap: 10px;
}
.pos-name {
  font-family: 'Cormorant Garamond', serif; font-size: 0.95rem;
  color: var(--primary); font-weight: 600; text-align: center;
}
.pos-q {
  font-size: 0.68rem; color: var(--text-muted); text-align: center;
  max-width: 110px; line-height: 1.45; font-family: 'Montserrat', sans-serif;
}


.tc-wrap { width: 110px; height: 186px; perspective: 1100px; }

.tc-inner {
  width: 100%; height: 100%;
  transform-style: preserve-3d;
  transition: transform 0.75s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative; cursor: pointer;
  will-change: transform;
}
.tc-inner.flipped { transform: rotateY(180deg); }
.tc-inner.reversed.flipped { transform: rotateY(180deg) rotateZ(180deg); }
.tc-inner.waiting {
  animation: cardPulse 2.2s ease-in-out infinite;
}
@keyframes cardPulse {
  0%,100%{ box-shadow: 0 0 0 0 rgba(27,45,69,0.2); border-radius:10px; }
  50%{ box-shadow: 0 0 0 7px rgba(27,45,69,0); border-radius:10px; }
}

.tc-face {
  position: absolute; inset: 0;
  backface-visibility: hidden; border-radius: 10px; overflow: hidden;
}

.tc-back { box-shadow: 0 6px 22px rgba(0,0,0,0.14); }


.tc-front {
  transform: rotateY(180deg);
  background: #fff;
  border: 1px solid rgba(160,113,79,0.15);
  box-shadow: 0 8px 28px rgba(0,0,0,0.14);
  display: flex; flex-direction: column;
}
.tc-front img {
  width: 100%; flex: 1; object-fit: cover; display: block;
  min-height: 0;
}
.tc-front .card-label {
  padding: 5px 4px 6px; text-align: center;
  background: #fff; border-top: 1px solid rgba(160,113,79,0.1);
  font-family: 'Cormorant Garamond', serif; font-size: 0.58rem;
  font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase;
  color: var(--text-dark); line-height: 1.2;
}

.tc-front .card-fallback {
  flex: 1; display: flex; flex-direction: column;
  align-items: center; justify-content: space-between;
  padding: 8px 6px; background: var(--fb-grad, #1B2D45);
}
.tc-front .card-fallback .fb-roman {
  font-family: 'Cormorant Garamond', serif; font-size: 0.65rem;
  color: rgba(255,255,255,0.7); letter-spacing: 0.15em;
}
.tc-front .card-fallback .fb-sym {
  font-size: 2.8rem; color: rgba(255,255,255,0.9);
  filter: drop-shadow(0 0 8px rgba(0,0,0,0.3));
}
.tc-front .card-fallback .fb-name {
  font-family: 'Cormorant Garamond', serif; font-size: 0.55rem;
  font-weight: 700; letter-spacing: 0.12em; color: rgba(255,255,255,0.9);
  text-transform: uppercase; text-align: center;
}


@keyframes cardLand {
  from { opacity: 0; transform: translateY(-40px) scale(0.8); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}
.card-landing { animation: cardLand 0.55s cubic-bezier(0.34,1.56,0.64,1) forwards; }


#results-area {
  background: #fff; border-top: 1px solid rgba(160,113,79,0.08);
}

.results-top { text-align: center; margin-bottom: 48px; }
.results-top .r-date {
  font-size: 0.72rem; letter-spacing: 0.2em; color: var(--text-muted);
  font-family: 'Montserrat', sans-serif; margin-bottom: 0.5rem;
}
.results-top h2 {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(1.8rem, 4vw, 2.8rem); color: var(--text-dark); margin-bottom: 0.4rem;
}
.results-top p { font-size: 0.88rem; color: var(--text-muted); }


.r-cards-row {
  display: flex; justify-content: center; gap: 24px;
  flex-wrap: wrap; margin-bottom: 56px;
}
.r-card-col {
  display: flex; flex-direction: column; align-items: center; gap: 8px;
}
.r-pos-lbl {
  font-size: 0.65rem; letter-spacing: 0.2em;
  color: var(--primary); font-family: 'Montserrat', sans-serif;
  text-transform: uppercase; font-weight: 600;
}
.rev-tag {
  font-size: 0.58rem; border: 1px solid rgba(180,50,50,0.3);
  background: rgba(255,220,220,0.4); color: #c0392b;
  padding: 2px 8px; border-radius: 50px; font-family: 'Montserrat', sans-serif;
}


.interpretations { max-width: 780px; margin: 0 auto 60px; display: flex; flex-direction: column; gap: 24px; }

.iblock {
  border: 1px solid rgba(160,113,79,0.12); border-radius: 20px;
  overflow: hidden; background: #fff;
  box-shadow: 0 4px 20px rgba(0,0,0,0.05);
  opacity: 0; transform: translateY(22px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}
.iblock.vis { opacity: 1; transform: translateY(0); }

.iblock-top {
  display: flex; align-items: center; gap: 18px; padding: 20px 24px;
  background: linear-gradient(135deg, rgba(27,45,69,0.05), rgba(212,175,55,0.04));
  border-bottom: 1px solid rgba(160,113,79,0.08);
}

.ib-card-img {
  width: 64px; height: 108px; border-radius: 7px; overflow: hidden;
  flex-shrink: 0; border: 1px solid rgba(27,45,69,0.15);
  background: #F5F0EB;
}
.ib-card-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ib-card-img .ib-fallback {
  width: 100%; height: 100%; display: flex; align-items: center; justify-content: center;
  background: linear-gradient(135deg, #1B2D45, #2a4060); font-size: 1.8rem;
}

.ib-info { flex: 1; min-width: 0; }
.ib-pos-name {
  font-size: 0.62rem; letter-spacing: 0.22em; color: var(--primary);
  font-family: 'Montserrat', sans-serif; text-transform: uppercase; margin-bottom: 4px; font-weight: 600;
}
.ib-card-name {
  font-family: 'Cormorant Garamond', serif; font-size: 1.5rem; color: var(--text-dark); line-height: 1.1; margin-bottom: 7px;
}
.ib-kws { display: flex; gap: 5px; flex-wrap: wrap; }
.ib-kw {
  font-size: 0.6rem; border: 1px solid rgba(27,45,69,0.15);
  color: var(--primary); padding: 2px 9px; border-radius: 50px;
  font-family: 'Montserrat', sans-serif;
}

.iblock-body { padding: 20px 24px; }
.ib-pos-q {
  font-family: 'Cormorant Garamond', serif; font-size: 1rem;
  font-style: italic; color: var(--text-muted); margin-bottom: 12px;
  padding-left: 12px; border-left: 2px solid rgba(27,45,69,0.2);
}
.ib-text {
  font-size: 0.9rem; color: var(--text-dark); line-height: 1.9; margin-bottom: 16px;
  opacity: 0.85;
}
.ib-ece {
  background: rgba(27,45,69,0.05); border: 1px solid rgba(160,113,79,0.1);
  border-radius: 12px; padding: 12px 16px;
  display: flex; gap: 10px; align-items: flex-start;
}
.ib-ece-icon {
  width: 30px; height: 30px; border-radius: 50%; flex-shrink: 0;
  background: linear-gradient(135deg, var(--primary), #2a4060);
  display: flex; align-items: center; justify-content: center;
  font-size: 0.8rem; color: #D4AF37;
}
.ib-ece-text {
  font-family: 'Cormorant Garamond', serif; font-size: 0.88rem;
  font-style: italic; color: var(--text-muted); line-height: 1.75;
}
.ib-ece-text strong { color: var(--primary); font-style: normal; }


.tr-cta-box {
  background: linear-gradient(135deg, #FAF8F5 0%, #fdf9f0 100%);
  border: 1px solid rgba(27,45,69,0.12); border-radius: 22px;
  padding: 52px 40px; text-align: center; max-width: 640px;
  margin: 0 auto 60px;
}
.tr-cta-box .cta-label {
  font-size: 0.68rem; letter-spacing: 0.3em; color: var(--accent-light);
  font-family: 'Montserrat', sans-serif; text-transform: uppercase; margin-bottom: 0.8rem;
}
.tr-cta-box h3 {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(1.7rem, 3.5vw, 2.4rem); color: var(--text-dark); margin-bottom: 0.8rem;
}
.tr-cta-box p {
  font-size: 0.9rem; color: var(--text-muted); line-height: 1.8;
  max-width: 460px; margin: 0 auto 1.8rem;
}
.cta-wa {
  display: inline-flex; align-items: center; gap: 10px;
  background: linear-gradient(135deg, #25D366, #128C7E);
  color: #fff; font-family: 'Cormorant Garamond', serif;
  font-size: 1.1rem; padding: 15px 36px; border-radius: 50px;
  text-decoration: none; transition: all 0.3s;
  box-shadow: 0 6px 24px rgba(37,211,102,0.25);
}
.cta-wa:hover { transform: translateY(-2px); box-shadow: 0 10px 32px rgba(37,211,102,0.35); }
.restart-btn {
  background: none; border: none; cursor: pointer;
  font-family: 'Montserrat', sans-serif; font-size: 0.78rem;
  color: var(--text-muted); margin-top: 20px; display: block;
  margin-left: auto; margin-right: auto; padding: 8px 16px;
  transition: color 0.3s;
}
.restart-btn:hover { color: var(--primary); }


#seo-content { background: #FDFBFA; border-top: 1px solid rgba(160,113,79,0.08); }

.seo-intro {
  max-width: 800px; margin: 0 auto 56px;
  font-size: 0.95rem; color: var(--text-dark); line-height: 1.9; opacity: 0.85;
}
.seo-intro h2 {
  font-family: 'Cormorant Garamond', serif; font-size: 2rem; color: var(--text-dark);
  margin-bottom: 1rem; margin-top: 2rem;
}
.seo-intro h2:first-child { margin-top: 0; }


.faq-list { max-width: 800px; margin: 0 auto 56px; }
.faq-list h2 {
  font-family: 'Cormorant Garamond', serif; font-size: 2rem; color: var(--text-dark);
  margin-bottom: 1.5rem;
}
.faq-list .faq-item {
  border-bottom: 1px solid rgba(160,113,79,0.1); padding: 16px 0;
}
.faq-list .faq-q {
  font-family: 'Cormorant Garamond', serif; font-size: 1.15rem;
  color: var(--text-dark); font-weight: 600; margin-bottom: 8px; cursor: pointer;
  display: flex; justify-content: space-between; align-items: center; gap: 12px;
}
.faq-list .faq-q::after { content: '\f078'; font-family: 'Font Awesome 6 Free'; font-weight: 900; font-size: 0.7rem; color: var(--accent); transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1); flex-shrink: 0; }
.faq-list .faq-item.open .faq-q::after { transform: rotate(180deg); }
.faq-list .faq-a {
  font-size: 0.88rem; color: var(--text-muted); line-height: 1.85;
  display: none; padding-top: 4px;
}
.faq-list .faq-item.open .faq-a { display: block; }


.related-cards {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
  gap: 12px; max-width: 900px; margin: 0 auto;
}
.related-card-link {
  display: flex; align-items: center; gap: 10px; padding: 12px 14px;
  border: 1px solid rgba(160,113,79,0.12); border-radius: 12px;
  color: var(--text-dark); font-size: 0.82rem; transition: all 0.25s;
  background: #fff;
}
.related-card-link:hover {
  border-color: var(--primary); color: var(--primary);
  transform: translateY(-2px); box-shadow: 0 4px 16px rgba(160,113,79,0.1);
}
.related-card-link img {
  width: 28px; height: 47px; object-fit: cover; border-radius: 3px;
  border: 1px solid rgba(0,0,0,0.08); flex-shrink: 0;
}
.related-card-link span { font-family: 'Cormorant Garamond', serif; font-weight: 600; }


.hidden { display: none !important; }


.scroll-progress {
  position: fixed; top: 0; left: 0; height: 2px; width: 0;
  background: linear-gradient(90deg, var(--primary), var(--accent-light));
  z-index: 9999; transition: width 0.1s;
}


@media (max-width: 768px) {
  .spread-grid { grid-template-columns: 1fr 1fr; }
  .tc-wrap { width: 88px; height: 149px; }
  .ib-card-img { width: 56px; height: 95px; }
  .iblock-top { flex-direction: column; text-align: center; align-items: center; }
  .ib-pos-q { text-align: center; }
  .tr-cta-box { padding: 36px 24px; }
  .hero-stats { gap: 24px; }
}
@media (max-width: 480px) {
  .spread-grid { grid-template-columns: 1fr; }
  .tc-wrap { width: 78px; height: 132px; }
  .positions-row { gap: 10px; }
  .r-cards-row { gap: 14px; }
  .tr-section { padding: 48px 5%; }
}



        .calculator-card {
            background: var(--white);
            border-radius: 30px;
            padding: 3rem;
            box-shadow: 0 20px 60px rgba(0,0,0,0.08);
            border: 1px solid rgba(184,134,11,0.1);
            max-width: 600px;
            margin: 0 auto;
        }
        .date-input-group {
            display: flex;
            gap: 1rem;
            margin: 2rem 0;
            flex-wrap: wrap;
        }
        .date-input-group > div {
            flex: 1;
            min-width: 80px;
        }
        .date-input-group label {
            display: block;
            font-size: 0.75rem;
            text-transform: uppercase;
            letter-spacing: 1px;
            color: var(--text-muted);
            margin-bottom: 0.5rem;
        }
        .date-input-group input {
            width: 100%;
            padding: 0.8rem 1rem;
            border: 2px solid rgba(27,45,69,0.15);
            border-radius: 12px;
            font-size: 1.1rem;
            font-family: 'Montserrat', sans-serif;
            text-align: center;
            background: var(--bg-light);
            transition: border-color 0.3s;
        }
        .date-input-group input:focus {
            outline: none;
            border-color: var(--primary);
        }
        .calc-btn {
            width: 100%;
            padding: 1.2rem;
            background: linear-gradient(135deg, var(--primary) 0%, #2a4060 100%);
            color: var(--white);
            border: none;
            border-radius: 16px;
            font-size: 1.1rem;
            font-family: 'Montserrat', sans-serif;
            font-weight: 600;
            cursor: pointer;
            transition: transform 0.2s, box-shadow 0.2s;
            letter-spacing: 0.5px;
        }
        .calc-btn:hover {
            transform: translateY(-2px);
            box-shadow: 0 10px 30px rgba(27,45,69,0.2);
        }
        .result-section {
            display: none;
            margin-top: 3rem;
            animation: fadeInUp 0.6s ease;
        }
        @keyframes fadeInUp {
            from { opacity: 0; transform: translateY(20px); }
            to { opacity: 1; transform: translateY(0); }
        }
        .card-display {
            background: linear-gradient(135deg, rgba(160,113,79,0.08), rgba(184,134,11,0.05));
            border-radius: 20px;
            padding: 2rem;
            text-align: center;
            border: 1px solid rgba(27,45,69,0.12);
            margin-bottom: 1.5rem;
        }
        .card-number {
            font-size: 3rem;
            font-family: 'Cormorant Garamond', serif;
            color: var(--primary);
            font-weight: 700;
            line-height: 1;
        }
        .card-name-tr {
            font-size: 1.8rem;
            font-family: 'Cormorant Garamond', serif;
            color: var(--text-dark);
            margin: 0.3rem 0;
        }
        .card-name-en {
            font-size: 0.9rem;
            color: var(--text-muted);
            font-style: italic;
        }
        .card-image {
            width: 140px;
            border-radius: 12px;
            box-shadow: 0 8px 25px rgba(0,0,0,0.15);
            margin: 1.5rem auto;
            display: block;
        }
        .trait-tags {
            display: flex;
            flex-wrap: wrap;
            gap: 0.6rem;
            justify-content: center;
            margin-top: 1rem;
        }
        .trait-tag {
            padding: 0.3rem 0.9rem;
            background: rgba(160,113,79,0.1);
            border-radius: 20px;
            font-size: 0.8rem;
            color: var(--primary);
            font-weight: 500;
        }
        .calc-step {
            background: rgba(184,134,11,0.06);
            border: 1px solid rgba(184,134,11,0.15);
            border-radius: 12px;
            padding: 1rem 1.5rem;
            margin: 1rem 0;
            font-size: 0.9rem;
            font-family: 'Cormorant Garamond', serif;
            font-size: 1rem;
        }
        .error-msg {
            color: #c0392b;
            font-size: 0.9rem;
            margin-top: 0.5rem;
            display: none;
        }
    


        .tarot-intro { max-width: 820px; margin: 0 auto 4rem; text-align: center; }
        .tarot-intro p { font-size: 1.1rem; line-height: 1.85; color: var(--text-dark); }

        
        .suit-nav { display: flex; gap: .75rem; flex-wrap: wrap; justify-content: center; margin-bottom: 4rem; }
        .suit-nav a {
            padding: .58rem 1.3rem;
            border-radius: 50px;
            font-size: .84rem;
            font-weight: 600;
            text-decoration: none;
            border: 1.5px solid rgba(184,134,11,.22);
            color: #444;
            transition: all .22s cubic-bezier(.19,1,.22,1);
            background: var(--white);
            letter-spacing: .2px;
        }
        .suit-nav a:hover { background: linear-gradient(135deg, #1B2D45, #2a4060); color: var(--white); border-color: transparent; box-shadow: 0 4px 14px rgba(27,45,69,.15); }
        .suit-nav a.wands  { border-color: rgba(226,88,34,.3); }
        .suit-nav a.wands:hover  { background: linear-gradient(135deg, #c0391b, #e25822) !important; }
        .suit-nav a.cups   { border-color: rgba(41,128,185,.3); }
        .suit-nav a.cups:hover   { background: linear-gradient(135deg, #1e6fa0, #2980b9) !important; }
        .suit-nav a.swords { border-color: rgba(127,140,141,.3); }
        .suit-nav a.swords:hover { background: linear-gradient(135deg, #555d5e, #7f8c8d) !important; }
        .suit-nav a.pents  { border-color: rgba(39,174,96,.3); }
        .suit-nav a.pents:hover  { background: linear-gradient(135deg, #1e7a44, #27ae60) !important; }

        
        .arkana-section { margin-bottom: 5rem; }
        .arkana-header {
            display: flex;
            align-items: center;
            gap: 1.2rem;
            margin-bottom: 1rem;
            padding-bottom: 1rem;
            border-bottom: 1px solid rgba(184,134,11,.15);
            position: relative;
        }
        .arkana-header::after {
            content: '✦';
            position: absolute;
            bottom: -.55rem;
            left: 0;
            font-size: .6rem;
            color: var(--accent);
            background: var(--white);
            padding-right: .4rem;
        }
        .arkana-header .ah-icon {
            width: 46px; height: 46px;
            border-radius: 12px;
            display: flex; align-items: center; justify-content: center;
            font-size: 1.1rem;
            color: var(--white);
            flex-shrink: 0;
            box-shadow: 0 4px 14px rgba(0,0,0,.15);
        }
        .ah-major { background: linear-gradient(135deg, var(--primary), #2a4060); }
        .ah-wands  { background: linear-gradient(135deg, #e25822, #c0392b); }
        .ah-cups   { background: linear-gradient(135deg, #2980b9, #1a5276); }
        .ah-swords { background: linear-gradient(135deg, #636e72, #2d3436); }
        .ah-pents  { background: linear-gradient(135deg, #27ae60, #1e8449); }
        .arkana-header h2 { font-family: 'Cormorant Garamond', serif; font-size: 2rem; color: #1B2D45; margin: 0; }
        .arkana-header .ah-desc { font-size: .88rem; color: var(--text-muted); margin: 0; }

        
        .card-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 1.1rem; margin-top: 1.8rem; }

        .card-item {
            background: var(--white);
            padding: 1.4rem 1.1rem;
            border-radius: 16px;
            box-shadow: 0 2px 12px rgba(0,0,0,.055);
            border: 1px solid rgba(184,134,11,.09);
            text-align: center;
            transition: transform .3s cubic-bezier(.19,1,.22,1), box-shadow .3s, border-color .2s;
            text-decoration: none;
            color: inherit;
            display: flex;
            flex-direction: column;
            position: relative;
            overflow: hidden;
        }
        .card-item::after {
            content: '';
            position: absolute;
            bottom: 0; left: 0; right: 0;
            height: 2px;
            background: linear-gradient(90deg, transparent, rgba(184,134,11,.3), transparent);
            opacity: 0;
            transition: opacity .3s;
        }
        .card-item:hover { transform: translateY(-6px); box-shadow: 0 14px 32px rgba(0,0,0,.11); border-color: rgba(184,134,11,.2); }
        .card-item:hover::after { opacity: 1; }

        .card-item .ci-num { font-family: 'Cormorant Garamond', serif; font-size: .82rem; color: var(--text-muted); margin-bottom: .2rem; letter-spacing: .5px; }
        .card-item h4 { font-family: 'Cormorant Garamond', serif; color: var(--primary); font-size: 1.08rem; font-weight: 700; margin: 0 0 .35rem; line-height: 1.2; }
        .card-item .ci-keyword { font-size: .74rem; color: var(--accent); font-weight: 700; margin-bottom: .35rem; letter-spacing: .8px; text-transform: uppercase; }
        .card-item p { font-size: .8rem; color: var(--text-muted); margin: 0; line-height: 1.55; flex: 1; }

        .card-item.major { border-top: 3px solid var(--primary); }
        .card-item.wands { border-top: 3px solid #e25822; }
        .card-item.cups  { border-top: 3px solid #2980b9; }
        .card-item.swords{ border-top: 3px solid #7f8c8d; }
        .card-item.pents { border-top: 3px solid #27ae60; }

        
        .suit-intro-box {
            background: linear-gradient(135deg, rgba(184,134,11,.04), rgba(26,15,46,.03));
            border-left: 3px solid var(--accent);
            border-radius: 0 14px 14px 0;
            padding: 1.1rem 1.6rem;
            margin-bottom: 1.5rem;
            font-size: .95rem;
            color: var(--text-dark);
            line-height: 1.7;
            box-shadow: 0 2px 10px rgba(184,134,11,.05);
        }

        
        .faq-block {
            background: linear-gradient(135deg, rgba(253,251,250,1), rgba(184,134,11,.03));
            border-radius: 20px;
            padding: 2.8rem;
            margin-top: 5rem;
            border: 1px solid rgba(184,134,11,.1);
        }
        .faq-block h2 { font-family: 'Cormorant Garamond', serif; color: var(--primary); font-size: 2.1rem; margin-bottom: 2rem; padding-bottom: .8rem; border-bottom: 1px solid rgba(184,134,11,.12); }
        .faq-block details { border-bottom: 1px solid rgba(184,134,11,.12); padding: .9rem 0; }
        .faq-block summary { font-weight: 600; cursor: pointer; color: var(--text-dark); font-size: .97rem; list-style: none; display: flex; justify-content: space-between; align-items: center; transition: color 0.25s ease; }
        .faq-block summary::-webkit-details-marker { display: none; }
        .faq-block summary::marker { display: none; }
        .faq-block summary::after { content: '\f078'; font-family: 'Font Awesome 6 Free'; font-weight: 900; font-size: 0.7rem; color: var(--accent); transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1); flex-shrink: 0; }
        .faq-block details[open] summary { color: var(--primary); }
        .faq-block details[open] summary::after { transform: rotate(180deg); }
        .faq-block details p { margin-top: .7rem; color: var(--text-muted); font-size: .93rem; line-height: 1.75; }

        
        .card-search {
            width: 100%;
            max-width: 500px;
            margin: 0 auto 3rem;
            display: block;
            padding: .95rem 1.5rem;
            border: 1.5px solid rgba(184,134,11,.25);
            border-radius: 50px;
            font-size: 1rem;
            outline: none;
            font-family: 'Montserrat', sans-serif;
            background: var(--white);
            color: var(--text-dark);
            box-shadow: 0 2px 12px rgba(0,0,0,.05);
            transition: border-color .2s, box-shadow .2s;
        }
        .card-search:focus { border-color: var(--primary); box-shadow: 0 0 0 3px rgba(160,113,79,.12); }

        @media (max-width: 768px) {
            .card-grid { grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); }
            .faq-block { padding: 1.8rem; }
        }



body.site-shell {
    position: relative;
    background:
        radial-gradient(circle at top left, rgba(27, 45, 69, 0.16), transparent 30%),
        radial-gradient(circle at top right, rgba(212, 175, 55, 0.14), transparent 24%),
        linear-gradient(180deg, #fffdfb 0%, #fbf7f2 42%, #fffdfa 100%);
}

body.site-shell::before,
body.site-shell::after {
    content: '';
    position: fixed;
    inset: auto;
    z-index: 0;
    pointer-events: none;
    border-radius: 999px;
    filter: blur(90px);
    opacity: 0.45;
}

body.site-shell::before {
    width: 360px;
    height: 360px;
    top: 8%;
    left: -120px;
    background: rgba(27, 45, 69, 0.18);
}

body.site-shell::after {
    width: 320px;
    height: 320px;
    right: -110px;
    bottom: 10%;
    background: rgba(212, 175, 55, 0.16);
}

.site-main,
main.site-main {
    position: relative;
    z-index: 1;
}

.skip-link {
    position: fixed;
    top: -60px;
    left: 20px;
    z-index: 2600;
    padding: 0.8rem 1.15rem;
    border-radius: 999px;
    background: #1B2D45;
    color: #fff !important;
    font-weight: 700;
    font-size: 0.88rem;
    box-shadow: 0 12px 32px rgba(27, 45, 69, 0.22);
    transition: top 0.2s ease;
    text-decoration: none;
}

.skip-link:focus,
.skip-link:focus-visible {
    top: 18px;
    outline: 3px solid #FFD166;
    outline-offset: 2px;
}

.nav-links > a.is-active,
.nav-links > .dropdown.is-active > .drop-trigger,
.nav-links > a[aria-current="page"] {
    color: var(--primary);
    font-weight: 700;
}

.nav-links > a.is-active::after,
.nav-links > .dropdown.is-active > .drop-trigger::after,
.nav-links > a[aria-current="page"]::after {
    width: 100%;
}

.section-shell,
.section-shell-tight {
    position: relative;
    z-index: 1;
    width: min(1280px, calc(100% - 2.5rem));
    margin: 0 auto;
}

.section-shell {
    padding: 5rem 0;
}

.section-shell-tight {
    padding: 3rem 0;
}

.content-limit {
    width: min(1100px, 100%);
    margin: 0 auto;
}

.content-limit-narrow {
    width: min(860px, 100%);
    margin: 0 auto;
}

.page-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.65rem;
    margin-bottom: 1.2rem;
    font-size: 0.82rem;
    color: var(--text-muted);
}

.page-breadcrumbs a {
    color: var(--text-muted);
}

.page-breadcrumbs a:hover {
    color: var(--primary);
}

.page-kicker {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    margin-bottom: 1rem;
    padding: 0.42rem 0.95rem;
    border-radius: 999px;
    background: rgba(27, 45, 69, 0.08);
    border: 1px solid rgba(27, 45, 69, 0.14);
    color: var(--primary);
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.page-lede {
    max-width: 760px;
    margin: 1rem auto 0;
    color: var(--text-muted);
    font-size: 1.02rem;
    line-height: 1.9;
}

.hero-content .page-lede {
    color: rgba(245, 240, 235, 0.82);
}

.metric-band {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
}

.metric-card {
    padding: 1.4rem 1.3rem;
    background: rgba(255, 255, 255, 0.75);
    border: 1px solid rgba(27, 45, 69, 0.1);
    border-radius: 22px;
    box-shadow: 0 14px 38px rgba(27, 45, 69, 0.06);
}

.metric-card strong {
    display: block;
    margin-bottom: 0.45rem;
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--primary);
}

.metric-card span {
    display: block;
    font-size: 0.9rem;
    color: var(--text-muted);
    line-height: 1.6;
}

.editorial-grid,
.intent-grid,
.insight-grid,
.timeline-grid,
.bio-link-grid {
    display: grid;
    gap: 1.2rem;
}

.editorial-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.intent-grid,
.bio-link-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.insight-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.timeline-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.editorial-card,
.intent-card,
.insight-card,
.timeline-card,
.bio-link-card,
.content-panel,
.cta-panel,
.error-panel {
    position: relative;
    overflow: hidden;
    border-radius: 26px;
    border: 1px solid rgba(27, 45, 69, 0.1);
    background: rgba(255, 255, 255, 0.82);
    box-shadow: 0 16px 40px rgba(27, 45, 69, 0.08);
    transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
}

.editorial-card,
.intent-card,
.insight-card,
.timeline-card,
.bio-link-card,
.content-panel {
    padding: 1.5rem;
}

.intent-card {
    display: block;
}

.editorial-card:hover,
.intent-card:hover,
.insight-card:hover,
.timeline-card:hover,
.bio-link-card:hover,
.content-panel:hover {
    transform: translateY(-4px);
    box-shadow: 0 22px 46px rgba(27, 45, 69, 0.11);
    border-color: rgba(27, 45, 69, 0.16);
}

.editorial-card::after,
.intent-card::after,
.insight-card::after,
.timeline-card::after,
.bio-link-card::after,
.content-panel::after,
.cta-panel::after,
.error-panel::after {
    content: '';
    position: absolute;
    inset: auto -50px -70px auto;
    width: 160px;
    height: 160px;
    background: radial-gradient(circle, rgba(212, 175, 55, 0.16), transparent 70%);
    pointer-events: none;
}

.editorial-card h3,
.intent-card h3,
.insight-card h3,
.timeline-card h3,
.bio-link-card h3,
.content-panel h3 {
    margin-bottom: 0.75rem;
    color: #1A1A1A;
    font-size: 1.55rem;
}

.editorial-card p,
.intent-card p,
.insight-card p,
.timeline-card p,
.bio-link-card p,
.content-panel p {
    color: var(--text-muted);
    font-size: 0.95rem;
    line-height: 1.8;
}

.card-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    margin-bottom: 0.85rem;
    color: var(--accent);
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.split-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(320px, 0.8fr);
    gap: 1.4rem;
    align-items: stretch;
}

.check-list {
    display: grid;
    gap: 0.85rem;
    margin-top: 1.2rem;
    list-style: none;
}

.check-list li {
    position: relative;
    padding: 0.95rem 1rem 0.95rem 3rem;
    border-radius: 18px;
    background: rgba(27, 45, 69, 0.06);
    color: var(--text-dark);
    line-height: 1.7;
}

.check-list li::before {
    content: '✦';
    position: absolute;
    left: 1.1rem;
    top: 0.92rem;
    color: var(--accent);
    font-size: 1rem;
}

.chip-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-top: 1.2rem;
}

.chip-row span,
.chip-row a {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.55rem 0.95rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(27, 45, 69, 0.11);
    color: var(--text-dark);
    font-size: 0.84rem;
    font-weight: 600;
}

.timeline-card strong {
    display: block;
    margin-bottom: 0.75rem;
    font-size: 0.88rem;
    color: var(--accent);
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.cta-panel {
    padding: 2rem;
    background:
        linear-gradient(135deg, rgba(20, 35, 55, 0.96), rgba(46, 74, 110, 0.92)),
        linear-gradient(135deg, rgba(212, 175, 55, 0.16), transparent);
    border-color: rgba(212, 175, 55, 0.22);
}

.cta-panel h2,
.cta-panel h3 {
    color: #fff6e6;
    margin-bottom: 0.8rem;
}

.cta-panel p {
    color: rgba(255, 248, 235, 0.82);
    max-width: 780px;
}

.cta-panel .chip-row span,
.cta-panel .chip-row a {
    background: rgba(255, 255, 255, 0.08);
    color: #fff6e6;
    border-color: rgba(255, 255, 255, 0.12);
}

.section-divider {
    height: 1px;
    margin: 0 auto;
    width: min(1280px, calc(100% - 2.5rem));
    background: linear-gradient(to right, transparent, #c9a84c44, transparent);
}

.back-to-top {
    position: fixed;
    right: 22px;
    bottom: 96px;
    width: 50px;
    height: 50px;
    border: 0;
    border-radius: 50%;
    background: linear-gradient(135deg, #1B2D45, #1B2D45);
    color: #fff;
    font-size: 1rem;
    box-shadow: 0 16px 36px rgba(27, 45, 69, 0.22);
    cursor: pointer;
    opacity: 0;
    transform: translateY(12px);
    pointer-events: none;
    transition: opacity 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;
    z-index: 1800;
}

.back-to-top.is-visible {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

.back-to-top:hover {
    box-shadow: 0 20px 40px rgba(27, 45, 69, 0.28);
}

.bio-hero-card {
    position: relative;
    overflow: hidden;
    padding: 2.2rem;
    border-radius: 32px;
    background:
        linear-gradient(135deg, rgba(20, 35, 55, 0.96), rgba(46, 74, 110, 0.9)),
        radial-gradient(circle at top right, rgba(212, 175, 55, 0.18), transparent 34%);
    box-shadow: 0 24px 60px rgba(27, 45, 69, 0.18);
}

.bio-hero-card .page-breadcrumbs,
.bio-hero-card .page-kicker,
.bio-hero-card p,
.bio-hero-card li,
.bio-hero-card .metric-card span,
.bio-hero-card .metric-card strong {
    position: relative;
    z-index: 1;
}

.bio-hero-card .page-breadcrumbs,
.bio-hero-card .page-breadcrumbs a {
    color: rgba(255, 244, 228, 0.72);
}

.bio-hero-card .page-kicker {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(255, 255, 255, 0.12);
    color: #f9d995;
}

.bio-hero-card h1,
.bio-hero-card h2 {
    color: #fff9ee;
}

.bio-hero-card .page-lede {
    margin-left: 0;
    color: rgba(255, 244, 228, 0.82);
}

.bio-profile {
    display: grid;
    grid-template-columns: 160px minmax(0, 1fr);
    gap: 1.5rem;
    align-items: center;
}

.bio-avatar {
    width: 160px;
    height: 160px;
    border-radius: 28px;
    object-fit: cover;
    border: 1px solid rgba(255, 255, 255, 0.16);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.22);
}

.bio-link-card {
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
}

.bio-link-card .cta-button,
.bio-link-card .nav-cta-btn {
    width: fit-content;
}

.error-shell {
    min-height: 100vh;
    display: grid;
    place-items: center;
    padding: 8rem 1.25rem 3rem;
}

.error-panel {
    width: min(760px, 100%);
    padding: 2.4rem;
    text-align: center;
}

.error-symbol {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 88px;
    height: 88px;
    margin-bottom: 1.25rem;
    border-radius: 24px;
    background: rgba(27, 45, 69, 0.08);
    color: var(--accent);
    font-size: 2.5rem;
}

.faq-answer[hidden] {
    display: none !important;
}

.faq-item.is-collapsible .faq-question {
    position: relative;
    padding-right: 3.8rem;
    cursor: pointer;
    user-select: none;
}

.faq-item.is-collapsible .faq-question::after {
    content: '\f078';
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    position: absolute;
    right: 1.35rem;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0.75rem;
    line-height: 1;
    color: var(--accent);
    transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.faq-item.is-collapsible.is-open .faq-question::after,
.faq-item.is-collapsible.open .faq-question::after {
    transform: translateY(-50%) rotate(180deg);
}

.faq-item.is-collapsible.is-open .faq-question,
.faq-item.is-collapsible.open .faq-question {
    color: var(--primary);
}

.faq-item.is-collapsible .faq-question:focus-visible {
    outline: 2px solid rgba(160, 113, 79, 0.35);
    outline-offset: -2px;
}

@media (max-width: 1100px) {
    .editorial-grid,
    .insight-grid,
    .timeline-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .split-layout {
        grid-template-columns: 1fr;
    }
}

    @media (max-width: 768px) {
    .section-shell,
    .section-shell-tight {
        width: min(calc(100% - 1.4rem), 100%);
    }

    .metric-band,
    .editorial-grid,
    .intent-grid,
    .insight-grid,
    .timeline-grid,
    .bio-link-grid {
        grid-template-columns: 1fr;
    }

    .bio-profile {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .bio-avatar {
        margin: 0 auto;
    }

    .back-to-top {
        right: 16px;
        bottom: 86px;
    }

    .faq-item.is-collapsible .faq-question {
        padding-right: 3.2rem;
    }

    .faq-item.is-collapsible .faq-question::after {
        right: 1.1rem;
    }
}


.related-posts-section {
    background: var(--bg-light);
    padding: 3rem 5%;
    border-top: 1px solid rgba(160, 113, 79, 0.1);
}

.related-posts-inner {
    max-width: 900px;
    margin: 0 auto;
}

.related-posts-title {
    font-size: 1.4rem;
    color: var(--text-dark);
    margin-bottom: 1.2rem;
}

.related-posts-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 1rem;
}

.related-post-card {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1rem 1.2rem;
    background: var(--white);
    border-radius: 10px;
    border: 1px solid rgba(160, 113, 79, 0.1);
    text-decoration: none;
    color: var(--text-dark);
    font-size: 0.88rem;
    font-weight: 500;
    transition: border-color 0.2s, transform 0.2s;
}

.related-post-card:hover {
    border-color: var(--primary);
    transform: translateX(4px);
    color: var(--primary);
}

.related-post-card i {
    color: var(--accent);
    flex-shrink: 0;
    font-size: 0.75rem;
}


.mobile-sticky-bar {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: var(--white);
    padding: 0.8rem 1.2rem;
    box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.1);
    z-index: 9998;
    align-items: center;
    justify-content: space-between;
    gap: 0.8rem;
    border-top: 1px solid rgba(160, 113, 79, 0.1);
}

.mobile-sticky-bar p {
    font-size: 0.78rem;
    color: var(--text-dark);
    line-height: 1.3;
    margin: 0;
}

.btn-sticky {
    background: #0f7c3f;
    color: #ffffff !important;
    padding: 0.7rem 1.2rem;
    border-radius: 50px;
    font-weight: 700;
    font-size: 0.85rem;
    display: flex;
    align-items: center;
    gap: 0.4rem;
    white-space: nowrap;
    box-shadow: 0 4px 15px rgba(15, 124, 63, 0.35);
}
.btn-sticky:hover { background: #0a5e2f; }

@media (max-width: 768px) {
    .mobile-sticky-bar { display: flex; }
    .whatsapp-float { bottom: calc(4.5rem + env(safe-area-inset-bottom)); }
    
    body {
        padding-bottom: calc(4.5rem + env(safe-area-inset-bottom, 0));
    }
}


.scroll-top-btn {
    position: fixed;
    bottom: calc(1.5rem + env(safe-area-inset-bottom));
    right: 1.875rem;
    width: 46px;
    height: 46px;
    background: var(--primary);
    color: var(--white);
    border: none;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    cursor: pointer;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: opacity 0.3s, visibility 0.3s, transform 0.3s, background 0.3s;
    z-index: 9990;
    box-shadow: 0 4px 15px rgba(27, 45, 69, 0.25);
}

.scroll-top-btn.visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.scroll-top-btn:hover {
    background: var(--accent);
    transform: translateY(-3px);
    box-shadow: 0 8px 25px rgba(160, 113, 79, 0.35);
}

@media (max-width: 768px) {
    .scroll-top-btn {
        bottom: calc(5rem + env(safe-area-inset-bottom));
        right: 1.25rem;
        width: 40px;
        height: 40px;
        font-size: 0.95rem;
    }
}



.breadcrumb {
  max-width: var(--content-max-width, 1200px);
  margin: 1rem auto 0;
  padding: 0 var(--page-padding, 1.5rem);
  font-size: 0.875rem;
  color: var(--text-muted, #6a6a6a);
}
.breadcrumb-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  list-style: none;
  padding: 0;
  margin: 0;
}
.breadcrumb-list li {
  display: inline-flex;
  align-items: center;
}
.breadcrumb-list li + li::before {
  content: "\203A";
  margin-right: 0.5rem;
  color: var(--accent, #b99a5a);
  font-weight: 400;
}
.breadcrumb-list a {
  color: var(--text-muted, #6a6a6a);
  text-decoration: none;
  transition: color 0.2s;
}
.breadcrumb-list a:hover {
  color: var(--primary, #1B2D45);
  text-decoration: underline;
}
.breadcrumb-list [aria-current="page"] {
  color: var(--primary, #1B2D45);
  font-weight: 500;
}
[dir="rtl"] .breadcrumb-list li + li::before { content: "\2039"; margin-left: 0.5rem; margin-right: 0; }


.related-content {
  max-width: var(--content-max-width, 900px);
  margin: 3rem auto 2rem;
  padding: 2rem var(--page-padding, 1.5rem);
  background: var(--surface-soft, rgba(185,154,90,0.06));
  border-radius: 16px;
  border: 1px solid rgba(185,154,90,0.2);
}
.related-content h2 {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(1.4rem, 2.5vw, 1.75rem);
  color: var(--primary, #1B2D45);
  margin-top: 0;
  margin-bottom: 1.25rem;
  font-weight: 500;
}
.related-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.75rem;
}
@media (min-width: 600px) {
  .related-list { grid-template-columns: 1fr 1fr; }
}
.related-list a {
  display: block;
  padding: 0.85rem 1.1rem;
  background: #fff;
  border-radius: 10px;
  color: var(--primary, #1B2D45);
  text-decoration: none;
  transition: transform 0.2s, box-shadow 0.2s;
  font-size: 0.95rem;
  line-height: 1.4;
  border: 1px solid rgba(27,45,69,0.08);
}
.related-list a:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 14px rgba(27,45,69,0.08);
  border-color: var(--accent, #b99a5a);
}


.table-wrapper {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  margin: 1.5rem 0;
  border-radius: 10px;
  box-shadow: 0 2px 10px rgba(27,45,69,0.06);
}
.zodiac-tarot-table,
.eclipse-table {
  width: 100%;
  min-width: 540px;
  border-collapse: collapse;
  background: #fff;
  font-size: 0.96rem;
}
.zodiac-tarot-table thead,
.eclipse-table thead {
  background: var(--primary, #1B2D45);
  color: #fff;
}
.zodiac-tarot-table th,
.zodiac-tarot-table td,
.eclipse-table th,
.eclipse-table td {
  padding: 0.75rem 1rem;
  text-align: left;
  border-bottom: 1px solid rgba(27,45,69,0.08);
  vertical-align: top;
}
.zodiac-tarot-table th,
.eclipse-table th {
  font-weight: 600;
  letter-spacing: 0.02em;
}
.zodiac-tarot-table tbody tr:nth-child(even),
.eclipse-table tbody tr:nth-child(even) {
  background: rgba(185,154,90,0.05);
}
.zodiac-tarot-table tbody tr:hover,
.eclipse-table tbody tr:hover {
  background: rgba(185,154,90,0.12);
}
.zodiac-tarot-table a,
.eclipse-table a {
  color: var(--primary, #1B2D45);
  font-weight: 500;
  text-decoration: none;
  border-bottom: 1px dotted var(--accent, #b99a5a);
}
.zodiac-tarot-table a:hover,
.eclipse-table a:hover {
  color: var(--accent, #b99a5a);
}
@media (max-width: 600px) {
  .zodiac-tarot-table th,
  .zodiac-tarot-table td,
  .eclipse-table th,
  .eclipse-table td {
    padding: 0.6rem 0.7rem;
    font-size: 0.9rem;
  }
}


@media (max-width: 768px) {
  body.site-shell {
    padding-bottom: calc(84px + env(safe-area-inset-bottom));
  }
  .scroll-top-btn {
    width: 48px !important;
    height: 48px !important;
    font-size: 1.15rem;
  }
  
  article.prose-body p a,
  article.prose-body li a,
  .related-list a {
    min-height: 28px;
    display: inline-block;
    padding: 2px 0;
    line-height: 1.5;
  }
  
  footer .footer-grid a {
    min-height: 36px;
    display: inline-flex;
    align-items: center;
    padding: 4px 0;
  }
  
  main .article-hero h1,
  main header.hero h1 {
    line-height: 1.2;
  }
  
  .mobile-sticky-bar {
    padding-bottom: env(safe-area-inset-bottom);
  }
  
  .breadcrumb-list {
    flex-wrap: wrap;
    row-gap: 0.25rem;
  }
  .breadcrumb-list [aria-current="page"] {
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}




@media (max-width: 768px) {
  
  .table-wrapper {
    position: relative;
    background:
      linear-gradient(to right, #fff 30%, rgba(255,255,255,0)),
      linear-gradient(to right, rgba(255,255,255,0), #fff 70%) 100% 0,
      linear-gradient(to right, rgba(27,45,69,0.08), rgba(27,45,69,0)),
      linear-gradient(to left, rgba(27,45,69,0.08), rgba(27,45,69,0)) 100% 0;
    background-repeat: no-repeat;
    background-size: 30px 100%, 30px 100%, 14px 100%, 14px 100%;
    background-attachment: local, local, scroll, scroll;
    border-radius: 12px;
  }
  
  .zodiac-tarot-table th:first-child,
  .zodiac-tarot-table td:first-child,
  .eclipse-table th:first-child,
  .eclipse-table td:first-child {
    position: sticky;
    left: 0;
    background: #fff;
    z-index: 2;
    box-shadow: 4px 0 6px -3px rgba(27,45,69,0.08);
  }
  .zodiac-tarot-table thead th:first-child,
  .eclipse-table thead th:first-child {
    background: #f7f3ea;
  }
  
  .table-wrapper {
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x proximity;
  }
  .zodiac-tarot-table td,
  .eclipse-table td {
    scroll-snap-align: start;
  }
  
  .intent-grid,
  .blog-card-grid {
    gap: 0.9rem;
  }
  
  .service-card {
    padding: 1.5rem 1.3rem;
  }
  
  .testimonial-card {
    padding: 1.6rem 1.3rem;
  }
  
  .footer-grid {
    grid-template-columns: 1fr;
    gap: 1.8rem;
  }
  .footer-col h4 {
    margin-bottom: 0.6rem;
  }
  
  details > summary {
    min-height: 54px;
    display: flex;
    align-items: center;
  }
  
  article.prose-body img {
    max-width: 100%;
    height: auto;
  }
  
  article.prose-body .card-image,
  article.prose-body > figure img {
    display: block;
    margin-left: auto;
    margin-right: auto;
    max-width: min(280px, 80%);
  }
}


@media (max-width: 380px) {
  .breadcrumb {
    font-size: 0.8rem;
  }
  .zodiac-tarot-table td,
  .eclipse-table td,
  .zodiac-tarot-table th,
  .eclipse-table th {
    padding: 0.55rem 0.65rem;
    font-size: 0.85rem;
  }
  .cta-button {
    font-size: 0.88rem;
    padding: 0.8rem 1.2rem;
  }
}


html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body.site-shell,
body.ui-shell-ready {
  overflow-x: clip; 
}


@media (max-width: 768px) {
  body.site-shell,
  body.ui-shell-ready {
    padding-left: env(safe-area-inset-left, 0);
    padding-right: env(safe-area-inset-right, 0);
  }
  
  body.site-shell > nav,
  #main-nav {
    padding-left: env(safe-area-inset-left, 0);
    padding-right: env(safe-area-inset-right, 0);
  }
  
  .mobile-sticky-bar {
    padding-left: calc(0.5rem + env(safe-area-inset-left, 0));
    padding-right: calc(0.5rem + env(safe-area-inset-right, 0));
    padding-bottom: env(safe-area-inset-bottom, 0);
  }
  
  section.section-shell-tight,
  .section-shell-tight {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 1rem;
    padding-right: 1rem;
    width: 100% !important;
  }
  
  header.hero,
  .hero {
    width: 100%;
    max-width: 100%;
  }
  
  footer {
    width: 100%;
    padding-bottom: calc(2rem + env(safe-area-inset-bottom, 0));
  }
  
  img {
    max-width: 100%;
    height: auto;
  }
  
  p, h1, h2, h3, h4, li, a {
    overflow-wrap: break-word;
    word-wrap: break-word;
    hyphens: auto;
  }
  
  button, .btn, .cta-button {
    min-height: 44px;
  }
  
  section.section,
  section.services,
  section.about-section,
  section.tarot-preview-section {
    padding-left: max(1rem, env(safe-area-inset-left));
    padding-right: max(1rem, env(safe-area-inset-right));
  }
}


@media (max-width: 380px) {
  header.hero {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }
  .prose-body {
    padding-left: 0.9rem;
    padding-right: 0.9rem;
  }
}


input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
input[type="search"],
input[type="url"],
input[type="password"],
select,
textarea {
  font-size: 16px;
}


a, button, summary, [role=button] {
  -webkit-tap-highlight-color: rgba(27, 45, 69, 0.12);
}


::selection {
  background: var(--accent, #b99a5a);
  color: #fff;
}
::-moz-selection {
  background: var(--accent, #b99a5a);
  color: #fff;
}


@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
  html {
    scroll-behavior: auto !important;
  }
}


@media print {
  header, footer, nav, .mobile-menu-btn, .whatsapp-float,
  .mobile-sticky-bar, .scroll-to-top, .skip-link,
  .reading-progress, #mystic-loader, .quick-nav,
  .related-posts-section, .lead-form, .cta-button,
  .nav, .sticky-cta, .page-breadcrumbs + * .ui-eyebrow {
    display: none !important;
  }
  body {
    background: #fff !important;
    color: #000 !important;
    font-size: 12pt;
    line-height: 1.6;
    padding-bottom: 0 !important;
  }
  main, .site-main, article {
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  .article-layout { grid-template-columns: 1fr !important; }
  a {
    color: #000 !important;
    text-decoration: underline !important;
  }
  a[href^="http"]::after {
    content: " (" attr(href) ")";font-size:9pt;color:#555}
h1,h2,h3{page-break-after:avoid;color:#000!important}
p,li{page-break-inside:avoid}
img{max-width:100%;page-break-inside:avoid}
}
.aio-answer,.event-meta,.event-card,.retro-card,.phase-card{transition:transform 0.2s ease,box-shadow 0.2s ease}
.aio-answer:hover,.event-meta:hover,.event-card:hover,.retro-card:hover,.phase-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(27,45,69,0.08)}
.question-input:focus-visible,.date-input-group input:focus-visible,.card-search:focus-visible{outline:2px solid var(--primary,#1B2D45);outline-offset:2px;box-shadow:0 0 0 4px rgba(27,45,69,0.15)}