/* =============================================================================
   Adonis Group — 2026 theme (adonisgroup.gr, English + Turkish pages)
   Loaded last in base.html so it overrides style.css and page-level <style>.
   Fonts: DM Serif Display (headings, numbers) + Manrope (text).
   Palette: midnight navy, ivory, gold. Gold text on light uses --t-gold-deep.
   ============================================================================= */

:root {
    --t-midnight:   #0B1B33;
    --t-navy:       #10264A;
    --t-navy-2:     #16294A;
    --t-ivory:      #F7F4EE;
    --t-paper:      #FFFFFF;
    --t-gold:       #D4AF37;
    --t-gold-mid:   #B8960C;
    --t-gold-deep:  #7A5E14;
    --t-ink:        #1A2333;
    --t-slate:      #4A5568;
    --t-line:       #DCD4C3;
    --t-on-dark:    #C9D1DE;
    --t-on-dark-2:  #A9B4C7;
    --t-radius:     20px;
    --t-display:    'DM Serif Display', Georgia, 'Times New Roman', serif;
    --t-sans:       'Manrope', system-ui, -apple-system, 'Segoe UI', sans-serif;

    /* re-point the legacy tokens used across style.css and page styles */
    --font-heading: var(--t-display);
    --font-body:    var(--t-sans);
    --color-primary:      #10264A;
    --color-primary-dark: #0B1B33;
    --color-accent:       #D4AF37;
    --color-accent-hover: #B8960C;
}

/* ── Base ─────────────────────────────────────────────────────────────────── */
html body {
    font-family: var(--t-sans);
    font-variant-numeric: lining-nums;
    color: var(--t-ink);
    background: var(--t-ivory);
    -webkit-font-smoothing: antialiased;
}
body h1, body h2, body h3.section-title, body .section-title,
body .hero-title, body .page-title, body .page-hero h1 {
    font-family: var(--t-display) !important;
    font-weight: 400 !important;
    letter-spacing: -0.01em;
    font-variant-numeric: lining-nums;
}
body h3, body h4, body h5, body h6 { font-family: var(--t-sans); }
body p, body li, body input, body select, body textarea, body button, body label, body a {
    font-family: inherit;
}

/* Eyebrow labels (section badges) — no pill, gold text with a rule */
body .section-badge, body .intro-badge, body .hero-badge, body .catalogue-badge {
    display: inline-flex !important;
    align-items: center;
    gap: 12px;
    background: none !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
    font-family: var(--t-sans) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.22em !important;
    text-transform: uppercase !important;
    color: var(--t-gold-deep) !important;
}
body .section-badge::before, body .intro-badge::before,
body .hero-badge::before, body .catalogue-badge::before {
    content: "";
    display: block;
    width: 32px;
    height: 1px;
    background: currentColor;
}
body .section-badge i, body .intro-badge i, body .catalogue-badge i { display: none !important; }

body .section-header { margin-bottom: 48px; }
body .section-title {
    font-size: clamp(34px, 4.4vw, 54px) !important;
    line-height: 1.1 !important;
    color: var(--t-midnight) !important;
    margin: 14px 0 12px !important;
}
body .section-desc {
    font-size: 17px !important;
    line-height: 1.65 !important;
    color: var(--t-slate) !important;
    max-width: 620px;
    margin-left: auto;
    margin-right: auto;
}

/* ── Buttons ──────────────────────────────────────────────────────────────── */
body .btn {
    border-radius: 999px !important;
    font-family: var(--t-sans) !important;
    font-weight: 700 !important;
    letter-spacing: 0.01em !important;
    text-transform: none !important;
    box-shadow: none !important;
}
body .btn-gold, body .btn-primary {
    background: var(--t-gold) !important;
    color: var(--t-midnight) !important;
    border: 1px solid var(--t-gold) !important;
}
body .btn-gold:hover, body .btn-primary:hover {
    background: #E2C25A !important;
    border-color: #E2C25A !important;
    transform: translateY(-1px);
}
body .btn-outline, body .btn-outline-white, body .btn-secondary {
    background: transparent !important;
    border: 1px solid currentColor !important;
}
body .btn-lg { padding: 16px 30px !important; font-size: 15px !important; }

/* ── Navigation ───────────────────────────────────────────────────────────── */
body .navbar {
    background: rgba(11, 27, 51, 0.96) !important;
    border-bottom: 1px solid rgba(212, 175, 55, 0.18) !important;
    box-shadow: none !important;
    backdrop-filter: blur(10px);
}
body .navbar .nav-link {
    font-family: var(--t-sans) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    letter-spacing: 0.02em !important;
    text-transform: none !important;
    color: #F4EFE3 !important;
    background: none !important;
}
body .navbar .nav-link:hover, body .navbar .nav-link.active { color: var(--t-gold) !important; }
body .navbar .nav-link.active::after { background: var(--t-gold) !important; }

/* ── Hero (home) ──────────────────────────────────────────────────────────── */
body .hero .hero-content {
    text-align: left !important;
    max-width: 760px;
    margin-left: 0 !important;
    margin-right: auto !important;
    align-items: flex-start !important;
}
body .hero .hero-badge { color: var(--t-gold) !important; margin-bottom: 22px; }
body .hero .hero-title {
    font-size: clamp(46px, 7vw, 86px) !important;
    line-height: 1.02 !important;
    margin-bottom: 22px !important;
}
body .hero .hero-subtitle {
    font-size: 18px !important;
    line-height: 1.65 !important;
    max-width: 560px;
    margin-left: 0 !important;
    color: var(--t-on-dark) !important;
}
body .hero .hero-buttons { justify-content: flex-start !important; gap: 14px !important; }
body .hero .hero-buttons .btn-outline-white { color: #F4EFE3 !important; border-color: rgba(244,239,227,0.5) !important; }
body .hero .hero-stats { display: none !important; }
body .hero .hero-gv-cta { text-align: left !important; justify-content: flex-start !important; }
body .hero .btn-golden-visa {
    background: none !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 4px 0 !important;
    color: var(--t-gold) !important;
    border-bottom: 1px solid var(--t-gold) !important;
    border-radius: 0 !important;
    font-size: 15px !important;
    text-transform: none !important;
    letter-spacing: 0.01em !important;
}
body .hero .btn-golden-visa i { display: none; }

/* ── Stats band (home) ────────────────────────────────────────────────────── */
.t26-stats { background: var(--t-paper); border-bottom: 1px solid #E6E0D3; }
.t26-stats__grid {
    max-width: 1280px;
    margin: 0 auto;
    padding: 44px 24px;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 28px 24px;
}
.t26-stat { display: flex; flex-direction: column; gap: 6px; }
.t26-stat__num {
    font-family: var(--t-display);
    font-size: clamp(40px, 4.6vw, 58px);
    line-height: 1;
    color: var(--t-midnight);
}
.t26-stat__num em { font-style: normal; color: var(--t-gold-mid); }
.t26-stat__label { font-size: 14px; color: var(--t-slate); }

/* ── Intro (home) ─────────────────────────────────────────────────────────── */
body .section-intro { background: var(--t-ivory) !important; }
body .section-intro .intro-title {
    font-size: clamp(34px, 4.2vw, 50px) !important;
    color: var(--t-midnight) !important;
    line-height: 1.1 !important;
}
body .section-intro .intro-text, body .section-intro .intro-feature span { color: var(--t-slate) !important; }
body .section-intro .intro-feature i { color: var(--t-gold-mid) !important; }
body .section-intro .intro-buttons .btn-outline { color: var(--t-midnight) !important; }
body .intro-video-container, body .intro-video-placeholder { border-radius: var(--t-radius) !important; overflow: hidden; }

/* ── Golden Visa tiers (home) ─────────────────────────────────────────────── */
body .section-gv-tiers { background: var(--t-paper) !important; }
body .gvt-card { border-radius: var(--t-radius) !important; box-shadow: none !important; }
body .gvt-card-title { font-family: var(--t-display) !important; font-weight: 400 !important; font-size: 32px !important; }
body .gvt-price-badge {
    background: var(--t-gold) !important;
    color: var(--t-midnight) !important;
    border-radius: 999px !important;
    border: 0 !important;
}
body .gvt-price-badge * { color: var(--t-midnight) !important; }
body .gvt-more-btn { color: var(--t-gold) !important; }

/* ── Property cards (home grid + any .prop-card) ──────────────────────────── */
body .section-prop-grid { background: var(--t-midnight) !important; }
body .section-prop-grid .section-badge { color: var(--t-gold) !important; }
body .section-prop-grid .section-title { color: #FFFFFF !important; }
body .section-prop-grid .section-desc { color: var(--t-on-dark) !important; }
body .prop-grid { gap: 24px !important; }
body .prop-card {
    border-radius: var(--t-radius) !important;
    overflow: hidden !important;
    box-shadow: none !important;
    border: 0 !important;
    aspect-ratio: 4 / 5;
    min-height: 0 !important;
    height: auto !important;
}
body .prop-card-overlay {
    background: linear-gradient(to top, rgba(6,14,30,0.94) 0%, rgba(6,14,30,0.55) 38%, rgba(6,14,30,0) 64%) !important;
}
body .prop-card-badges { top: 18px !important; left: 18px !important; right: 18px !important; }
body .prop-price-badge, body .prop-status-badge {
    border-radius: 999px !important;
    font-family: var(--t-sans) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    padding: 8px 14px !important;
    border: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
}
body .prop-price-badge { background: var(--t-gold) !important; color: var(--t-midnight) !important; }
body .prop-status-badge { background: rgba(255,255,255,0.9) !important; color: var(--t-midnight) !important; }
body .prop-card-content { left: 24px !important; right: 24px !important; bottom: 24px !important; padding: 0 !important; }
body .prop-card-title {
    font-family: var(--t-display) !important;
    font-weight: 400 !important;
    font-size: clamp(28px, 2.6vw, 34px) !important;
    line-height: 1.1 !important;
    color: #FFFFFF !important;
    margin: 0 0 6px !important;
}
body .prop-card-loc {
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: 0.16em !important;
    text-transform: uppercase !important;
    color: #E7D9AE !important;
    margin: 0 !important;
}
body .prop-card-loc i { display: none !important; }
body .prop-card-more {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    margin-top: 16px !important;
    padding-top: 14px !important;
    border-top: 1px solid rgba(255,255,255,0.22) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 0.02em !important;
    text-transform: none !important;
    color: #FFFFFF !important;
    background: none !important;
    opacity: 1 !important;
    transform: none !important;
}
body .prop-card-more i {
    width: 44px;
    height: 44px;
    border-radius: 999px;
    background: var(--t-gold);
    color: var(--t-midnight) !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    transform: rotate(-45deg);
    font-size: 15px;
}
body .prop-view-all-btn {
    background: none !important;
    border: 0 !important;
    border-bottom: 1px solid var(--t-gold) !important;
    border-radius: 0 !important;
    padding: 4px 0 !important;
    color: var(--t-gold) !important;
    font-weight: 600 !important;
    box-shadow: none !important;
}
body .prop-view-all-btn i { display: none; }

/* ── Golden Visa benefits (home "services") — ivory, ruled grid ───────────── */
body .section-golden-visa { background: var(--t-ivory) !important; }
body .section-golden-visa .gv-background { display: none !important; }
body .section-golden-visa .gv-stats { display: none !important; }
body .section-golden-visa .section-title { color: var(--t-midnight) !important; }
body .section-golden-visa .section-desc { color: var(--t-slate) !important; }
body .gv-benefits-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 0 !important;
    border-top: 1px solid var(--t-line);
    border-left: 1px solid var(--t-line);
}
body .gv-benefit {
    background: none !important;
    border: 0 !important;
    border-right: 1px solid var(--t-line) !important;
    border-bottom: 1px solid var(--t-line) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    padding: 34px 30px !important;
    text-align: left !important;
}
body .gv-benefit-icon {
    background: none !important;
    border: 0 !important;
    box-shadow: none !important;
    width: auto !important;
    height: auto !important;
    margin: 0 0 14px !important;
    justify-content: flex-start !important;
    color: var(--t-gold-mid) !important;
    font-size: 26px !important;
}
body .gv-benefit-icon i { color: var(--t-gold-mid) !important; }
body .gv-benefit h3 {
    font-family: var(--t-sans) !important;
    font-size: 19px !important;
    font-weight: 700 !important;
    color: var(--t-midnight) !important;
    margin: 0 0 8px !important;
}
body .gv-benefit p { color: var(--t-slate) !important; font-size: 15px !important; margin: 0 !important; }

/* ── Process (home) — numbered columns on white ───────────────────────────── */
body .section-process-cards { background: var(--t-paper) !important; }
body .section-process-cards .section-badge { color: var(--t-gold-deep) !important; }
body .process-cards-grid { gap: 32px !important; }
body .process-card {
    background: none !important;
    border: 0 !important;
    border-top: 2px solid var(--t-midnight) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 22px 0 0 !important;
    overflow: visible !important;
    transform: none !important;
}
body .process-card-bg, body .process-card-overlay, body .process-card-icon, body .process-card-badge { display: none !important; }
body .process-card-number {
    position: static !important;
    background: none !important;
    box-shadow: none !important;
    border: 0 !important;
    width: auto !important;
    height: auto !important;
    padding: 0 !important;
    margin-bottom: 12px !important;
    font-family: var(--t-display) !important;
    font-size: 44px !important;
    line-height: 1 !important;
    color: var(--t-gold-mid) !important;
    justify-content: flex-start !important;
}
body .process-card-content { position: static !important; padding: 0 !important; background: none !important; }
body .process-card-content h3 {
    font-family: var(--t-sans) !important;
    font-size: 19px !important;
    font-weight: 700 !important;
    color: var(--t-midnight) !important;
    margin: 0 0 8px !important;
}
body .process-card-content p { color: var(--t-slate) !important; font-size: 15px !important; }
body .process-card-tags span {
    background: var(--t-ivory) !important;
    color: var(--t-ink) !important;
    border: 1px solid var(--t-line) !important;
    border-radius: 999px !important;
}
body .process-card-tags span i { color: var(--t-gold-mid) !important; }
body .process-cta-btn {
    background: var(--t-midnight) !important;
    color: #F4EFE3 !important;
    border-radius: 999px !important;
    box-shadow: none !important;
    border: 0 !important;
}

/* ── Catalogue banner ─────────────────────────────────────────────────────── */
body .catalogue-banner { background: var(--t-navy) !important; }
body .catalogue-banner-bg, body .catalogue-banner-pattern { display: none !important; }
body .catalogue-banner .catalogue-badge { color: var(--t-gold) !important; }
body .catalogue-banner h3 { font-family: var(--t-display) !important; font-weight: 400 !important; font-size: clamp(30px, 3.4vw, 42px) !important; color: #FFFFFF !important; }
body .catalogue-banner p { color: var(--t-on-dark) !important; }
body .catalogue-btn { border-radius: 999px !important; box-shadow: none !important; }
body .catalogue-btn-gold { background: var(--t-gold) !important; color: var(--t-midnight) !important; border-color: var(--t-gold) !important; }
body .catalogue-btn-gold * { color: var(--t-midnight) !important; }

/* ── Testimonials ─────────────────────────────────────────────────────────── */
body .section-testimonials { background: var(--t-ivory) !important; }
body .testimonial-card { border-radius: var(--t-radius) !important; box-shadow: none !important; }
body .tcard-author h4 { font-family: var(--t-display) !important; font-weight: 400 !important; font-size: 22px !important; letter-spacing: 0 !important; text-transform: none !important; }
body .tcard-rating i, body .tmodal-rating i { color: var(--t-gold) !important; }
body .tcard-more { color: var(--t-gold) !important; }
body .testimonial-nav-btn { background: var(--t-paper) !important; color: var(--t-midnight) !important; border: 1px solid var(--t-line) !important; box-shadow: none !important; }

/* ── FAQ (home) ───────────────────────────────────────────────────────────── */
.t26-faq { background: var(--t-paper); }
.t26-faq__inner {
    max-width: 1280px;
    margin: 0 auto;
    padding: 96px 24px;
    display: flex;
    flex-wrap: wrap;
    gap: 48px;
}
.t26-faq__intro { flex: 1 1 320px; min-width: 0; display: flex; flex-direction: column; gap: 14px; align-items: flex-start; }
.t26-faq__intro .section-title { margin: 0 !important; text-align: left; }
.t26-faq__intro p { margin: 0; color: var(--t-slate); }
.t26-faq__list { flex: 999 1 520px; min-width: 0; border-top: 1px solid var(--t-line); }
.t26-faq__item { border-bottom: 1px solid var(--t-line); }
.t26-faq__item summary {
    list-style: none;
    cursor: pointer;
    padding: 24px 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    font-size: 18px;
    font-weight: 600;
    color: var(--t-midnight);
}
.t26-faq__item summary::-webkit-details-marker { display: none; }
.t26-faq__item summary::after {
    content: "+";
    font-size: 26px;
    font-weight: 400;
    line-height: 1;
    color: var(--t-gold-mid);
    flex-shrink: 0;
}
.t26-faq__item[open] summary::after { content: "−"; }
.t26-faq__item p { margin: 0; padding: 0 40px 26px 0; color: var(--t-slate); font-size: 16px; line-height: 1.65; }

/* ── Contact / consultation ───────────────────────────────────────────────── */
body .section-contact { background: var(--t-navy) !important; }
body .section-contact .contact-info h2 {
    font-size: clamp(34px, 4.4vw, 54px) !important;
    line-height: 1.1 !important;
    color: #FFFFFF !important;
}
body .section-contact .section-badge { color: var(--t-gold) !important; }
body .section-contact .contact-info > p { color: var(--t-on-dark) !important; }
body .contact-whatsapp {
    background: rgba(255,255,255,0.05) !important;
    border: 1px solid rgba(244,239,227,0.18) !important;
    border-radius: 16px !important;
    box-shadow: none !important;
}
body .contact-whatsapp h3 { font-family: var(--t-display) !important; font-weight: 400 !important; font-size: 24px !important; }
body .contact-details .detail i {
    background: rgba(212,175,55,0.12) !important;
    color: var(--t-gold) !important;
    border: 0 !important;
}
body .contact-form-wrapper {
    background: var(--t-ivory) !important;
    border: 0 !important;
    border-radius: var(--t-radius) !important;
    box-shadow: none !important;
}
body .contact-form-wrapper label { color: var(--t-ink) !important; font-weight: 600 !important; font-size: 13px !important; }
body .form-input, body .form-select, body .form-textarea,
body .contact-form input:not([type=hidden]):not([type=checkbox]):not([type=radio]),
body .contact-form select, body .contact-form textarea {
    font-family: var(--t-sans) !important;
    font-size: 16px !important;
    background: #FFFFFF !important;
    color: var(--t-ink) !important;
    border: 1px solid #C9BFA9 !important;
    border-radius: 10px !important;
    box-shadow: none !important;
}
body .form-input::placeholder, body .form-textarea::placeholder { color: #8A8F99 !important; }
body .form-input:focus, body .form-select:focus, body .form-textarea:focus {
    border-color: var(--t-gold-mid) !important;
    outline: 2px solid rgba(212,175,55,0.35) !important;
    outline-offset: 1px;
}
body .contact-form-wrapper .btn-gold {
    background: var(--t-midnight) !important;
    color: #F4EFE3 !important;
    border-color: var(--t-midnight) !important;
}

/* ── Footer ───────────────────────────────────────────────────────────────── */
body .footer { background: var(--t-midnight) !important; border-top: 0 !important; }
body .footer h4, body .footer .footer-col h4 {
    font-family: var(--t-sans) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.2em !important;
    text-transform: uppercase !important;
    color: var(--t-gold) !important;
}
body .footer a { color: #F4EFE3 !important; }
body .footer a:hover { color: var(--t-gold) !important; }
body .footer .footer-desc, body .footer p, body .footer span { color: var(--t-on-dark-2); }

/* ── Mobile ───────────────────────────────────────────────────────────────── */
@media (max-width: 900px) {
    body .gv-benefits-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
    .t26-stats__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 36px 20px; }
}
@media (max-width: 640px) {
    body .section { padding-top: 72px !important; padding-bottom: 72px !important; }
    body .section-header { margin-bottom: 36px; text-align: left !important; }
    body .section-header .section-desc { margin-left: 0; }
    body .gv-benefits-grid { grid-template-columns: minmax(0, 1fr) !important; }
    body .gv-benefit { padding: 26px 22px !important; }
    body .prop-grid { grid-template-columns: minmax(0, 1fr) !important; }
    body .hero .hero-buttons { flex-direction: column; align-items: stretch !important; width: 100%; }
    body .hero .hero-buttons .btn { justify-content: center; width: 100%; }
    .t26-faq__inner { padding: 72px 20px; gap: 28px; }
    .t26-faq__item summary { font-size: 17px; padding: 20px 0; }
    .t26-faq__item p { padding-right: 0; }
}

/* ── Fixes after first preview ────────────────────────────────────────────── */
body .hero { background-color: var(--t-midnight) !important; }
body .hero .hero-bg { background-color: var(--t-midnight); }
body .section-title, body .hero-title, body .prop-card-title, body .gvt-card-title { text-shadow: none !important; }

body .prop-card-more { position: static !important; }
body .prop-card-content { display: flex !important; flex-direction: column !important; gap: 4px !important; }

body .process-cards-grid { align-items: start !important; }
body .process-card { display: block !important; cursor: default; }
body .process-card:hover .process-card-content { transform: none !important; }

/* homepage form: ivory card, dark text (page CSS targets #contactForm) */
body .section-contact #contactForm .form-group label { color: var(--t-ink) !important; }
body .section-contact #contactForm input:not([type=hidden]),
body .section-contact #contactForm select,
body .section-contact #contactForm textarea {
    background: #FFFFFF !important;
    color: var(--t-ink) !important;
    border: 1px solid #C9BFA9 !important;
}
body .section-contact #contactForm input::placeholder,
body .section-contact #contactForm textarea::placeholder { color: #8A8F99 !important; }
body .section-contact #contactForm input:focus,
body .section-contact #contactForm select:focus,
body .section-contact #contactForm textarea:focus { background: #FFFFFF !important; border-color: var(--t-gold-mid) !important; }
body .section-contact #contactForm .iti__selected-dial-code { color: var(--t-ink) !important; }

@media (max-width: 640px) {
    body .container { padding-left: 20px !important; padding-right: 20px !important; }
    body .section-intro .intro-content { text-align: left !important; }
    body .section-intro .intro-features { align-items: flex-start !important; }
    body .section-intro .intro-feature { justify-content: flex-start !important; }
}

/* ── Properties list ──────────────────────────────────────────────────────── */
body .proj-filter-btn {
    border-radius: 999px !important;
    border: 1px solid var(--t-line) !important;
    background: #FFFFFF !important;
    color: var(--t-ink) !important;
    box-shadow: none !important;
    font-weight: 600 !important;
}
body .proj-filter-btn.active, body .proj-filter-btn:hover {
    background: var(--t-midnight) !important;
    border-color: var(--t-midnight) !important;
    color: #F4EFE3 !important;
}
body .proj-card {
    border-radius: var(--t-radius) !important;
    border: 1px solid #E6E0D3 !important;
    box-shadow: none !important;
    overflow: hidden !important;
    background: #FFFFFF !important;
}
body .proj-card-image { border-radius: 0 !important; }
body .proj-card-overlay {
    background: linear-gradient(to top, rgba(6,14,30,0.92) 0%, rgba(6,14,30,0.5) 45%, rgba(6,14,30,0) 75%) !important;
}
body .proj-card-overlay-title {
    font-family: var(--t-display) !important;
    font-weight: 400 !important;
    font-size: 30px !important;
    line-height: 1.1 !important;
    text-shadow: none !important;
}
body .proj-overlay-item {
    background: rgba(255,255,255,0.12) !important;
    border: 1px solid rgba(255,255,255,0.18) !important;
    border-radius: 999px !important;
    backdrop-filter: none !important;
}
body .proj-overlay-item i { color: var(--t-gold) !important; }
body .visa-tag {
    border-radius: 999px !important;
    font-family: var(--t-sans) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.12em !important;
    padding: 7px 13px !important;
    border: 0 !important;
    box-shadow: none !important;
}
body .visa-tag.visa-price { background: var(--t-gold) !important; color: var(--t-midnight) !important; }
body .visa-tag.visa-available { background: var(--t-midnight) !important; color: #F4EFE3 !important; }
body .visa-tag.visa-soon { background: #F7F4EE !important; color: var(--t-gold-deep) !important; }
body .visa-tag.visa-sold { background: rgba(255,255,255,0.92) !important; color: var(--t-slate) !important; }
body .proj-card-tagline { color: var(--t-slate) !important; font-size: 14px !important; }
body .proj-card-am-chip, body .proj-card-am-more {
    background: var(--t-ivory) !important;
    color: var(--t-ink) !important;
    border: 1px solid var(--t-line) !important;
    border-radius: 999px !important;
}
body .proj-card-am-chip svg { color: var(--t-gold-mid) !important; }
body .proj-card-buttons .btn:not(.btn-gold) {
    background: transparent !important;
    color: var(--t-midnight) !important;
    border: 1px solid var(--t-midnight) !important;
}
body .proj-intro-features > *, body .proj-feature {
    border-radius: 999px !important;
    background: #FFFFFF !important;
    border: 1px solid var(--t-line) !important;
    box-shadow: none !important;
}
body .proj-feature i { color: var(--t-gold-mid) !important; }

/* ── Blog list — light ────────────────────────────────────────────────────── */
body .blog-list-section { background: var(--t-ivory) !important; }
body .blog-filter-btn {
    background: #FFFFFF !important;
    border: 1px solid var(--t-line) !important;
    color: var(--t-ink) !important;
    font-weight: 600 !important;
}
body .blog-filter-btn.active, body .blog-filter-btn:hover {
    background: var(--t-midnight) !important;
    border-color: var(--t-midnight) !important;
    color: #F4EFE3 !important;
}
body .blog-list-section .blog-card {
    background: #FFFFFF !important;
    border: 1px solid #E6E0D3 !important;
    box-shadow: none !important;
}
body .blog-list-section .blog-card-meta { color: var(--t-slate) !important; }
body .blog-list-section .blog-card-meta i { color: var(--t-gold-mid) !important; }
body .blog-list-section .blog-card-excerpt { color: var(--t-slate) !important; }
body .blog-list-section .blog-card-link { color: var(--t-gold-deep) !important; }
body .blog-list-section .blog-card-link::after { background: var(--t-gold-deep) !important; }
body .blog-card-title { font-family: var(--t-display) !important; font-weight: 400 !important; text-shadow: none !important; }
body .blog-hero-badge, body .blog-card-category, body .blog-detail-category {
    border-radius: 999px !important;
    box-shadow: none !important;
}

/* ── Blog article — light reading view ────────────────────────────────────── */
body .blog-detail-section { background: var(--t-ivory) !important; }
body .blog-detail-main {
    background: #FFFFFF !important;
    border: 1px solid #E6E0D3 !important;
    box-shadow: none !important;
}
body .blog-detail-image { background: var(--t-ivory) !important; }
body .blog-content, body .blog-content p, body .blog-content li { color: #2A3342 !important; }
body .blog-content { font-size: 17px !important; line-height: 1.75 !important; }
body .blog-content h2, body .blog-content h3, body .blog-content h4 { color: var(--t-midnight) !important; }
body .blog-content h2, body .blog-content h3 { font-family: var(--t-display) !important; font-weight: 400 !important; }
body .blog-content h2 { font-size: 34px !important; line-height: 1.15 !important; }
body .blog-content h3 { font-size: 26px !important; line-height: 1.2 !important; }
body .blog-content strong, body .blog-content b { color: var(--t-ink) !important; }
body .blog-content a { color: var(--t-gold-deep) !important; text-decoration: underline; text-underline-offset: 3px; }
body .blog-content a:hover { color: var(--t-midnight) !important; }
body .blog-content blockquote {
    background: var(--t-ivory) !important;
    border-left-color: var(--t-gold) !important;
    color: var(--t-ink) !important;
}
body .blog-content figcaption { color: var(--t-slate) !important; }
body .blog-toc {
    background: var(--t-ivory) !important;
    border: 1px solid var(--t-line) !important;
}
body .blog-toc, body .blog-toc a, body .blog-toc-title, body .blog-toc li { color: var(--t-ink) !important; }
body .blog-toc a:hover { color: var(--t-gold-deep) !important; }
body .blog-footer { border-top: 1px solid var(--t-line) !important; }
body .blog-share-label, body .blog-views { color: var(--t-slate) !important; }
body .blog-share-btn {
    background: var(--t-ivory) !important;
    color: var(--t-midnight) !important;
    border: 1px solid var(--t-line) !important;
}
body .blog-share-btn:hover { background: var(--t-midnight) !important; color: #F4EFE3 !important; }

/* ── Partnerships ─────────────────────────────────────────────────────────── */
body .pp-benefits-overlay { background: linear-gradient(135deg, rgba(11,27,51,0.92) 0%, rgba(16,38,74,0.88) 100%) !important; }

/* ── Generic page heroes: dark fallback while media loads ─────────────────── */
body .proj-hero, body .blog-hero, body .blog-detail-hero, body .page-hero { background-color: var(--t-midnight) !important; }

@media (max-width: 640px) {
    body .proj-card-image { max-height: 380px; }
    body .proj-card-image img { height: 100% !important; object-fit: cover; }
}

/* Golden Visa landing: consultation banner in brand navy instead of teal */
body .gv-mid-consult-banner__card {
    background: linear-gradient(135deg, var(--t-midnight) 0%, var(--t-navy) 100%) !important;
    border: 1px solid rgba(212,175,55,0.25) !important;
    box-shadow: none !important;
}
body .gv-mid-consult-banner__card .btn, body .gv-mid-consult-banner__card a.btn {
    background: var(--t-gold) !important;
    color: var(--t-midnight) !important;
    border-color: var(--t-gold) !important;
}

/* Language dropdown: style.css gives every .container overflow-x:hidden, which
   clipped the menu at the navbar's bottom edge. The navbar never scrolls sideways. */
body .navbar .container { overflow: visible !important; }
body .lang-dropdown-menu {
    background: var(--t-midnight) !important;
    border: 1px solid rgba(212,175,55,0.25) !important;
    min-width: 8.5rem !important;
}
body .lang-dropdown-item { font-family: var(--t-sans) !important; padding: 0.6rem 0.7rem !important; }
body .lang-dropdown-item.is-active { background: rgba(212,175,55,0.2) !important; }
