/*
Theme Name: Astra Child
Theme URI: https://wpastra.com/
Template: astra
Author: Two Rings Official
Description: Custom Theme for Two Rings Matrimonial
Version: 3.0.0 (Ultimate App Header + Homepage Fix)
*/

/* =========================================
   1. GLOBAL VARIABLES & FONTS
   ========================================= */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Nastaliq+Urdu:wght@400;700&display=swap');

:root {
    --tr-pink-dark: #E91E63;
    --tr-pink-light: #FF4081;
    --tr-maroon: #900C3F;
    --tr-gradient: linear-gradient(90deg, var(--tr-pink-dark), var(--tr-pink-light));
    --tr-text-dark: #2C3E50;
    --tr-text-gray: #7F8C8D;
    --tr-bg-pink-soft: linear-gradient(180deg, #FFF0F5 0%, #FFF 100%);
}

body, html { 
    margin: 0; padding: 0; font-family: 'Poppins', sans-serif; 
    box-sizing: border-box; background-color: #fcfcfc; 
    color: #333; width: 100%; overflow-x: hidden;
}
/* Prevent content from hiding behind fixed header */
body { padding-top: 70px; }

*, *:before, *:after { box-sizing: border-box; }
a { text-decoration: none; transition: 0.3s; }

.tr-container { width: 100%; max-width: 1140px; margin: 0 auto; padding: 0 20px; }
.tr-container-narrow { width: 100%; max-width: 800px; margin: 0 auto; padding: 0 20px; }
.pink-highlight { color: var(--tr-pink-light); }

/* =========================================
   2. APP-STYLE HEADER (Hamburger + Center Logo)
   ========================================= */
.tr-app-header {
    background: #fff;
    height: 70px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
    position: fixed;
    top: 0; left: 0; right: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 20px;
}

/* Left: Menu & WhatsApp */
.header-left { display: flex; align-items: center; gap: 20px; flex: 1; }
.menu-trigger { font-size: 24px; color: #333; cursor: pointer; transition: 0.3s; }
.menu-trigger:hover { color: #E91E63; }
.whatsapp-icon { font-size: 26px; color: #25D366; transition: 0.3s; }
.whatsapp-icon:hover { transform: scale(1.1); }

/* Center: Logo */
.header-center { flex: 1; display: flex; justify-content: center; }
.app-logo { display: flex; align-items: center; gap: 8px; text-decoration: none; }
.app-logo i { font-size: 28px; color: #FF4081; transform: rotate(-15deg); }
.app-logo-text h3 { margin: 0; font-size: 20px; font-weight: 800; color: #E91E63; line-height: 1; }
.app-logo-text span { font-size: 10px; color: #FF4081; letter-spacing: 2px; font-weight: 600; text-transform: uppercase; display: block; }

/* Right: User Icon */
.header-right { flex: 1; display: flex; justify-content: flex-end; }
.user-icon-btn { font-size: 22px; color: #2C3E50; cursor: pointer; transition: 0.3s; }
.user-icon-btn:hover { color: #E91E63; }

/* Dropdown Menu */
.tr-dropdown-menu {
    position: fixed; top: 70px; left: 0; width: 260px; background: #fff; height: 100vh;
    box-shadow: 4px 0 15px rgba(0,0,0,0.1);
    transform: translateX(-100%); transition: transform 0.3s ease-in-out;
    z-index: 9998; padding: 20px 0;
}
.tr-dropdown-menu.active { transform: translateX(0); }
.menu-link {
    display: flex; align-items: center; gap: 15px; padding: 15px 25px;
    color: #333; text-decoration: none; font-weight: 500; font-size: 15px;
    border-left: 4px solid transparent; transition: 0.2s;
}
.menu-link:hover { background: #FFF0F5; color: #E91E63; border-left: 4px solid #E91E63; }
.menu-link i { width: 20px; text-align: center; color: #7F8C8D; }
.menu-link:hover i { color: #E91E63; }
.menu-overlay { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,0.5); z-index: 9997; display: none; }
.menu-overlay.active { display: block; }

@media(max-width: 400px) { .app-logo-text { display: none; } }

/* =========================================
   3. HOMEPAGE SECTIONS (RESTORED!)
   ========================================= */
/* ==========================================================================
   HERO SECTION FIX (Clear Image + Stylish Buttons)
   ========================================================================== */

.tr-new-hero {
    /* 1. FIXED OVERLAY: Reduced opacity (0.5) so image is clear, not blurred */
    background: linear-gradient(rgba(255, 240, 246, 0.5), rgba(255, 240, 246, 0.6)), url('http://two-rings-official.local/wp-content/uploads/2026/01/download.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 160px 0 120px; /* More spacing */
    text-align: center;
    border-bottom: 1px solid #ffdeeb;
    position: relative;
}

.tr-new-hero h1 {
    font-size: 48px;
    font-weight: 800;
    color: #2C3E50;
    margin-bottom: 15px;
    line-height: 1.2;
}

.pink-highlight { color: #E91E63; }

.hero-subtext {
    font-size: 18px;
    color: #555;
    max-width: 700px;
    margin: 0 auto 30px;
    font-weight: 500;
    text-shadow: none; /* Removed the white outline */
}

.trusted-badge {
    display: inline-block;
    background: #fff;
    color: #E91E63;
    padding: 8px 20px;
    border-radius: 50px;
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 20px;
    box-shadow: 0 4px 15px rgba(233, 30, 99, 0.15);
}

/* 2. FIXED BUTTONS STYLING */
.hero-buttons {
    display: flex;
    gap: 15px;
    justify-content: center;
    margin-top: 30px;
}

.btn-main-pink {
    background: #E91E63;
    color: #fff !important; /* Force white text */
    padding: 15px 40px;
    border-radius: 50px;
    text-decoration: none;
    font-weight: 700;
    font-size: 16px;
    transition: 0.3s;
    box-shadow: 0 10px 20px rgba(233, 30, 99, 0.3);
    border: 2px solid #E91E63;
}

.btn-main-pink:hover {
    background: #C2185B;
    border-color: #C2185B;
    transform: translateY(-3px);
}

.btn-outline-pink {
    background: transparent;
    color: #E91E63 !important;
    padding: 15px 40px;
    border-radius: 50px;
    text-decoration: none;
    font-weight: 700;
    font-size: 16px;
    border: 2px solid #E91E63;
    transition: 0.3s;
    background: rgba(255,255,255,0.8); /* Slight white background for readability */
}

.btn-outline-pink:hover {
    background: #E91E63;
    color: #fff !important;
    transform: translateY(-3px);
}

/* Mobile Fix for Buttons */
@media (max-width: 600px) {
    .hero-buttons { flex-direction: column; gap: 15px; padding: 0 20px; }
    .tr-new-hero h1 { font-size: 32px; }
}
/* Stats & Trust Bar */
.tr-stats-section { padding: 20px 0 80px; background: linear-gradient(180deg, #fff5f8 0%, #fff 40%); }
.tr-trust-bar { display: flex; justify-content: center; gap: 40px; margin-bottom: 40px; color: #666; font-size: 14px; font-weight: 500; }
.tr-stats-card { background: #fff; border-radius: 20px; box-shadow: 0 15px 40px rgba(233, 30, 99, 0.08); padding: 50px 40px; display: flex; justify-content: space-between; align-items: center; margin-bottom: 70px; position: relative; top: -10px; width: 100%; }
.stat-box { text-align: center; flex: 1; border-right: 1px solid #eee; }
.stat-box:last-child { border-right: none; }
.stat-num { font-size: 36px; font-weight: 700; color: var(--tr-pink-dark); margin: 0 0 5px 0; }
.stat-label { font-size: 15px; color: #777; }

/* Features */
.tr-features-section { padding-bottom: 100px; background: #fff; }
.features-grid { display: flex; justify-content: space-between; gap: 30px; flex-wrap: wrap; }
.feature-card { flex: 1; min-width: 200px; text-align: center; padding: 20px 10px; }
.icon-box { width: 70px; height: 70px; background-color: #FFF0F5; border-radius: 20px; display: flex; align-items: center; justify-content: center; margin: 0 auto 25px auto; color: var(--tr-pink-dark); font-size: 28px; }
.feature-card h3 { font-size: 18px; font-weight: 600; color: var(--tr-text-dark); margin-bottom: 15px; }
.feature-card p { font-size: 14px; color: #666; line-height: 1.6; margin: 0; padding: 0 10px; }

/* Steps */
.tr-works-section { padding: 80px 0 100px; background: #fff; text-align: center; }
.step-circle { width: 80px; height: 80px; background: var(--tr-pink-dark); color: #fff; font-size: 24px; font-weight: 700; border-radius: 50%; display: flex; align-items: center; justify-content: center; margin: 0 auto 25px auto; box-shadow: 0 10px 20px rgba(233, 30, 99, 0.3); }
.works-timeline { display: flex; justify-content: space-between; position: relative; padding: 0 20px; }
.step-item { position: relative; z-index: 1; flex: 1; padding: 0 15px; }
.step-item h3 { font-size: 18px; font-weight: 600; color: var(--tr-text-dark); margin-bottom: 15px; }
.step-item p { font-size: 14px; color: #666; line-height: 1.6; }

/* CTA */
.tr-cta-section { background-color: #FFF0F5; padding: 100px 0; text-align: center; }
.cta-content { max-width: 700px; margin: 0 auto; }
.cta-icon { font-size: 40px; color: var(--tr-pink-light); margin-bottom: 25px; }
.tr-cta-section h2 { font-size: 36px; font-weight: 700; color: var(--tr-text-dark); margin-bottom: 15px; }
.cta-buttons { display: flex; justify-content: center; gap: 20px; margin-top: 30px; }

/* =========================================
   4. FOOTER
   ========================================= */
.tr-footer { background-color: var(--tr-maroon); color: #fff; padding: 70px 0 0 0; }
.footer-top { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 40px; padding-bottom: 50px; }
.footer-col { flex: 1; min-width: 200px; }
.footer-col h4 { font-size: 18px; margin-bottom: 25px; font-weight: 600; color: #fff; }
.footer-col ul { list-style: none; padding: 0; margin: 0; }
.footer-col ul li { margin-bottom: 15px; }
.footer-col ul li a { color: #fff; text-decoration: none; font-size: 14px; opacity: 0.7; transition: opacity 0.3s; }
.footer-col ul li a:hover { opacity: 1; color: var(--tr-pink-light); }
.footer-bottom { border-top: 1px solid rgba(255,255,255,0.1); padding: 25px 0; text-align: center; font-size: 13px; opacity: 0.6; }
.footer-bottom p { margin: 0; }

/* =========================================
   5. SUBMIT PROFILE PAGE
   ========================================= */
.tr-profile-page { background-color: #f8f9fa; padding-bottom: 80px; min-height: 100vh; }
.tr-page-title { text-align: center; padding: 50px 0 40px; }
.tr-page-title h1 { font-size: 36px; font-weight: 700; color: #333; }
.form-card { background: #fff; border-radius: 15px; padding: 30px; box-shadow: 0 5px 25px rgba(0,0,0,0.05); margin-bottom: 25px; border: 1px solid #eee; }
.card-title { font-size: 18px; font-weight: 700; color: #2C3E50; margin-bottom: 20px; border-bottom: 1px solid #f0f0f0; padding-bottom: 15px; display: flex; align-items: center; gap: 10px; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.form-group { margin-bottom: 5px; }
.form-group label { display: block; font-size: 14px; font-weight: 600; color: #555; margin-bottom: 8px; }
.form-group input, .form-group select, .form-group textarea { width: 100%; padding: 12px 15px; min-height: 50px; border: 1px solid #e0e0e0; border-radius: 8px; font-size: 15px; color: #333; background: #fff; box-sizing: border-box; }
.full-width { grid-column: span 2; }
.photo-upload-area { display: flex; flex-direction: column; align-items: center; padding: 20px; border: 2px dashed #eee; border-radius: 10px; }
.btn-upload { background: #E91E63; color: #fff; padding: 12px 25px; border-radius: 50px; cursor: pointer; font-weight: 600; display: inline-block; }
.btn-submit-profile { width: 100%; background: linear-gradient(135deg, #E91E63, #FF4081); color: #fff; border: none; padding: 15px; font-size: 18px; font-weight: 700; border-radius: 50px; cursor: pointer; box-shadow: 0 10px 20px rgba(233, 30, 99, 0.3); margin-top: 20px; }

/* =========================================
   6. BROWSE PROFILES (PINK BORDER CARD)
   ========================================= */
.tr-browse-page { background-color: #f8f9fa; padding-bottom: 100px; }
.browse-header { background: linear-gradient(135deg, #E91E63 0%, #d81b60 100%); padding: 60px 20px; text-align: center; color: #fff; margin-bottom: 40px; }
.header-badge { background: rgba(255,255,255,0.2); display: inline-block; padding: 8px 20px; border-radius: 50px; font-size: 14px; margin-bottom: 20px; }
.search-container { background: #fff; padding: 30px; border-radius: 10px; box-shadow: 0 10px 30px rgba(0,0,0,0.08); margin-top: -80px; margin-bottom: 50px; position: relative; z-index: 10; width: 100%; }
.search-top { position: relative; margin-bottom: 20px; }
.search-top input { width: 100%; padding: 15px 15px 15px 45px; border: 1px solid #eee; border-radius: 5px; font-size: 16px; }
.search-top i { position: absolute; left: 15px; top: 50%; transform: translateY(-50%); color: #999; }
.filters-row { display: flex; gap: 15px; flex-wrap: wrap; }
.filter-col { flex: 1; min-width: 140px; }

/* Card Grid */
.profiles-grid-layout { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 30px; }
.profile-card-modern {
    position: relative; height: 450px; border-radius: 20px; overflow: hidden;
    box-shadow: 0 10px 30px rgba(0,0,0,0.1); background: #000;
    transition: transform 0.3s ease, border-color 0.3s ease;
    border: 3px solid #E91E63;
}
.profile-card-modern:hover { transform: translateY(-5px); border-color: #FF4081; }
.card-img-wrapper { width: 100%; height: 100%; position: relative; }
.card-img-wrapper img { width: 100%; height: 100%; object-fit: cover; object-position: top center; display: block; }
.img-overlay { position: absolute; bottom: 0; left: 0; width: 100%; height: 70%; background: linear-gradient(to top, rgba(0,0,0,0.9) 10%, rgba(0,0,0,0.5) 50%, transparent 100%); z-index: 1; }
.card-top-badges { position: absolute; top: 15px; left: 15px; z-index: 5; }
.badge-pill { padding: 5px 12px; border-radius: 30px; font-size: 11px; font-weight: 700; color: #fff; text-transform: uppercase; box-shadow: 0 2px 5px rgba(0,0,0,0.2); }
.b-pink { background: #E91E63; }
.b-blue { background: #2196F3; }
.card-content-overlay { position: absolute; bottom: 0; left: 0; width: 100%; padding: 20px; z-index: 3; color: #fff; }
.main-info h2 { font-size: 22px; font-weight: 700; margin: 0 0 5px; color: #fff; display: flex; align-items: center; gap: 8px; text-shadow: 0 2px 5px rgba(0,0,0,0.5); }
.verified-icon { color: #2196F3; background: #fff; border-radius: 50%; font-size: 16px; border: 2px solid #fff; }
.sub-info p { margin: 3px 0; font-size: 13px; color: rgba(255,255,255,0.9); }
.btn-view-modern { display: block; margin-top: 15px; text-align: center; background: rgba(255,255,255,0.2); backdrop-filter: blur(5px); border: 1px solid rgba(255,255,255,0.4); color: #fff; padding: 10px; border-radius: 50px; font-weight: 600; font-size: 13px; transition: 0.3s; }
.btn-view-modern:hover { background: #E91E63; border-color: #E91E63; }

/* =========================================
   7. LOGIN & DASHBOARD
   ========================================= */
.tr-login-page { background: #fcfcfc; padding: 60px 0 100px; }
.login-grid { display: flex; justify-content: center; gap: 40px; max-width: 900px; margin: 0 auto; }
.login-box { flex: 1; background: #fff; padding: 40px; border-radius: 15px; border: 1px solid #eee; }
.btn-social { width: 100%; padding: 12px; border-radius: 8px; display: flex; align-items: center; justify-content: center; gap: 10px; font-weight: 600; cursor: pointer; margin-bottom: 10px; border: 1px solid #ddd; background: #fff; }
.btn-phone { background: #2C3E50; color: #fff; border: none; }
.tr-dashboard-page .profile-status-card { background:#fff; padding:40px; border-radius:15px; text-align:center; box-shadow:0 5px 25px rgba(0,0,0,0.05); }
.dash-avatar { width:120px; height:120px; border-radius:50%; margin:0 auto 20px; overflow:hidden; border:4px solid #fff; box-shadow:0 5px 15px rgba(0,0,0,0.1); }
.btn-dash { display:inline-flex; align-items:center; gap:8px; padding:10px 20px; border-radius:30px; font-size:14px; font-weight:600; transition:0.3s; margin:5px; }
.btn-dash:hover { transform:translateY(-2px); box-shadow:0 5px 10px rgba(0,0,0,0.1); }

@media (max-width: 768px) {
    .hero-buttons, .features-grid, .works-timeline, .form-grid, .login-grid, .details-grid, .footer-top, .cta-buttons, .tr-trust-bar { 
        flex-direction: column; 
    }
    .full-width { grid-column: span 1; }
    .profile-card-modern { height: 400px; }
    .search-container { margin-top: 0; }
    .tr-stats-card { flex-direction: column; gap: 30px; }
    .stat-box { border-right: none; border-bottom: 1px solid #eee; padding-bottom: 20px; width: 100%; }
    .footer-bottom { text-align: center; }
}/* =========================================
   8. SINGLE PROFILE PAGE (Responsive Fix)
   ========================================= */

/* 1. Header Strip */
.profile-header-strip { 
    background: #fff; border-bottom: 1px solid #eee; padding: 30px 0; 
    margin-bottom: 40px; box-shadow: 0 2px 10px rgba(0,0,0,0.02); 
}
.profile-header-strip h1 { 
    margin: 0; font-size: 26px; color: #2C3E50; font-weight: 700; 
    display: flex; align-items: center; gap: 15px; flex-wrap: wrap; 
}
.id-badge { 
    font-size: 13px; background: #E91E63; color: #fff; 
    padding: 4px 12px; border-radius: 20px; font-weight: 500; 
}

/* 2. Main Layout Grid (FIXED: Reduced Left Column) */
.details-grid { 
    /* Changed from 350px to 280px to make photo smaller */
    display: grid; grid-template-columns: 280px 1fr; gap: 40px; margin-bottom: 80px; 
}
.left-col { display: flex; flex-direction: column; gap: 25px; }

/* 3. Cards */
.detail-card { 
    background: #fff; padding: 25px; border-radius: 15px; 
    box-shadow: 0 5px 25px rgba(0,0,0,0.05); border: 1px solid #f0f0f0; margin-bottom: 25px; 
}
.photo-card { padding: 10px; text-align: center; }
.photo-card img { 
    width: 100%; height: auto; border-radius: 10px; display: block; object-fit: cover; 
}

/* 4. Admin Contact Box (FIXED: More Compact) */
.admin-contact-box { 
    background: linear-gradient(135deg, #900C3F 0%, #C70039 100%); 
    color: #fff; 
    padding: 25px 20px; /* Reduced padding */
    border-radius: 15px; text-align: center; 
    box-shadow: 0 10px 30px rgba(144, 12, 63, 0.3); 
}
.admin-contact-box i { 
    font-size: 32px; /* Smaller Icon */
    margin-bottom: 10px; opacity: 0.9; 
}
.admin-contact-box h3 { color: #fff; margin: 0 0 5px; font-size: 18px; }
.admin-contact-box p { 
    color: rgba(255,255,255,0.8); font-size: 13px; margin-bottom: 20px; line-height: 1.4; 
}

.btn-whatsapp-chat { 
    background: #25D366; color: #fff; 
    padding: 10px 20px; /* Smaller Button */
    border-radius: 50px; font-weight: 600; font-size: 14px;
    display: inline-flex; align-items: center; gap: 8px; 
    text-decoration: none; box-shadow: 0 4px 10px rgba(37, 211, 102, 0.4); 
    transition: 0.3s; 
}
.btn-whatsapp-chat:hover { 
    transform: translateY(-2px); box-shadow: 0 6px 15px rgba(37, 211, 102, 0.5); color: #fff; 
}

/* 5. Data Tables */
.card-header { 
    border-bottom: 1px solid #eee; padding-bottom: 12px; margin-bottom: 15px; 
    display: flex; align-items: center; gap: 10px; 
}
.card-header h3 { margin: 0; font-size: 17px; font-weight: 700; color: #2C3E50; }
.card-header i { font-size: 18px; color: #E91E63; }

.info-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 20px; }
.info-row { 
    display: flex; justify-content: space-between; border-bottom: 1px dashed #eee; 
    padding: 10px 0; font-size: 14px; 
}
.info-row:last-child { border-bottom: none; }
.info-row .label { color: #777; }
.info-row .value { font-weight: 600; color: #333; }

/* 6. Partner Preferences */
.pref-box { background-color: #FFF0F5; border: 1px solid #ffdeeb; }
.pref-box .card-header { border-bottom-color: #ffcce0; }
.pref-list { list-style: none; padding: 0; margin: 0; }
.pref-list li { margin-bottom: 10px; display: flex; gap: 10px; font-size: 14px; color: #444; }
.pref-list li i { color: #E91E63; margin-top: 3px; font-size: 12px; }

/* 7. MOBILE RESPONSIVE (FIXED: Centered & Smaller Photo) */
@media (max-width: 900px) {
    .details-grid { grid-template-columns: 1fr; gap: 30px; }
    .info-grid { grid-template-columns: 1fr; }
    
    /* Center and limit width of photo on mobile so it's not huge */
    .left-col { align-items: center; }
    .photo-card { width: 100%; max-width: 280px; } 
    .admin-contact-box { width: 100%; max-width: 280px; }
    
    .profile-header-strip { text-align: center; }
    .profile-header-strip h1 { justify-content: center; font-size: 22px; }
}
/* ==========================================================================
   NEW HOMEPAGE SECTIONS STYLES (FIXED)
   ========================================================================== */

/* --- GLOBAL SECTION STYLES --- */
.tr-section { padding: 80px 0; }
.tr-container { max-width: 1200px; margin: 0 auto; padding: 0 20px; }
.tr-section-header { text-align: center; margin-bottom: 50px; }
.tr-section-header h2 { font-size: 36px; color: #2C3E50; margin-bottom: 15px; font-weight: 700; }
.tr-section-header p { font-size: 18px; color: #777; }
.swiper-pagination-bullet-active { background: #E91E63 !important; }

/* --- 1. TEAM SECTION (Glow Card Style) --- */
.tr-team-section { background: #f9f9f9; }
.team-slider-container { padding: 20px 5px; /* Space for shadow */ }

.team-card-glow {
    background: #fff;
    border-radius: 20px;
    padding: 30px 20px;
    text-align: center;
    border: 2px solid #ffdeeb;
    box-shadow: 0 10px 30px rgba(233, 30, 99, 0.15);
    transition: transform 0.3s ease;
}
.team-card-glow:hover { transform: translateY(-5px); }

.tc-photo-wrap {
    width: 150px; height: 150px; margin: 0 auto 20px;
    border-radius: 50%; overflow: hidden;
    border: 5px solid #fff0f6;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
    background: #f0f0f0; /* Placeholder color */
}
.tc-photo-wrap img { width: 100%; height: 100%; object-fit: cover; }

.tc-name { font-size: 22px; color: #880E4F; margin-bottom: 5px; font-weight: 700; }
.tc-role { display: block; font-size: 14px; color: #E91E63; margin-bottom: 25px; font-weight: 600; text-transform: uppercase; letter-spacing: 1px; }

.tc-contact-btn {
    display: inline-block; width: 100%;
    background: #880E4F;
    color: #fff; text-decoration: none;
    padding: 15px; border-radius: 10px;
    font-weight: 600; font-size: 16px;
    transition: 0.3s;
}
.tc-contact-btn:hover { background: #E91E63; color: #fff; }
.tc-contact-btn i { margin-right: 8px; }


/* --- 2. LINKS & DOCS SECTION --- */
.tr-links-section { background: #fff; border-top: 1px solid #eee; border-bottom: 1px solid #eee; }
.links-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; }

.links-box h3 { font-size: 24px; margin-bottom: 15px; display: flex; align-items: center; gap: 10px; }
.links-box p { color: #666; margin-bottom: 30px; }

.social-icons-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }
.si-item {
    display: flex; align-items: center; padding: 15px;
    border-radius: 8px; text-decoration: none;
    font-weight: 600; transition: 0.3s; border: 1px solid #eee;
}
.si-item i { font-size: 20px; margin-right: 15px; width: 25px; text-align: center; }
.fb { color: #3b5998; background: #f1f5ff; } .fb:hover { background: #dbe7ff; }
.insta { color: #E1306C; background: #fff0f5; } .insta:hover { background: #ffdee9; }
.yt { color: #FF0000; background: #fff0f0; } .yt:hover { background: #ffe0e0; }
.linkedin { color: #0077b5; background: #f0f7ff; } .linkedin:hover { background: #dbefff; }

.doc-list { list-style: none; padding: 0; margin: 0; }
.doc-list li { margin-bottom: 15px; }
.doc-list a {
    display: flex; align-items: center;
    text-decoration: none; color: #333;
    font-weight: 500; font-size: 16px; transition: 0.2s;
}
.doc-list a i { margin-right: 15px; color: #ccc; font-size: 14px; transition: 0.2s; }
.doc-list a:hover { color: #E91E63; }
.doc-list a:hover i { color: #E91E63; transform: translateX(5px); }


/* --- 3. REVIEWS SECTION (FIXED FRAME) --- */
.tr-reviews-section { background: #fff0f6; }
.header-pink h2 { color: #333; }

/* FIX: Add padding to slider to make room for pop-up photo */
.review-slider-container .swiper-slide {
    padding-top: 60px;
    padding-bottom: 30px;
}

.review-card-clean {
    background: #fff;
    max-width: 800px; margin: 0 auto;
    padding: 0 50px 50px; /* Removed top padding */
    border-radius: 25px;
    text-align: center;
    box-shadow: 0 10px 40px rgba(0,0,0,0.05);
    position: relative;
}

/* FIX: Adjusted negative margin to match padding */
.rc-photo {
    width: 120px; height: 120px;
    margin: -60px auto 25px; /* Pulls up exactly 60px */
    border-radius: 50%; overflow: hidden;
    border: 6px solid #E91E63;
    background: #fff; box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}
.rc-photo img { width: 100%; height: 100%; object-fit: cover; }

.rc-name { font-size: 22px; font-weight: 700; margin-bottom: 25px; color: #333; }
.rc-text { font-size: 18px; line-height: 1.6; font-style: italic; color: #555; position: relative; }
.rc-text::before {
    content: '\201C'; font-family: sans-serif;
    position: absolute; top: -30px; left: 50%; transform: translateX(-50%);
    font-size: 100px; color: #f7dcea; opacity: 0.5; z-index: 0;
}

/* --- RESPONSIVE --- */
@media (max-width: 768px) {
    .links-grid { grid-template-columns: 1fr; gap: 40px; }
    .social-icons-grid { grid-template-columns: 1fr; }
    .review-card-clean { padding: 0 20px 30px; }
    .rc-photo { width: 100px; height: 100px; margin-top: -50px; }
    .review-slider-container .swiper-slide { padding-top: 50px; }
    .rc-text { font-size: 16px; }
    .tr-section-header h2 { font-size: 28px; }
}
/* --- FORCE BLUE TICK VERIFICATION --- */
.fa-check-circle, 
.dash-alert.success i, 
.badge-verified i,
.fc-info h3 i {
    color: #2196F3 !important; /* Material Blue */
}

/* Background for the "Verified" badge on single profile */
.badge-verified {
    background: #2196F3 !important; 
    color: white !important;
}
/* --- PRIVACY BLUR FIX --- */
.privacy-blur, 
img.privacy-blur, 
.main-img img.privacy-blur, 
.fc-image img.privacy-blur {
    filter: blur(20px) !important;
    -webkit-filter: blur(20px) !important;
    transform: scale(1.1); /* Hides the white edges */
    pointer-events: none;    /* Prevents right-click save */
}

/* Fix container so blurred edges don't spill out */
.main-img, .fc-image {
    overflow: hidden !important;
    position: relative;
}