:root {
    --primary: #FFFFFF;
    --secondary: #F8F9FA;
    --surface: #F1F3F5;
    --text-main: #1A1A1A;
    --text-secondary: #4A4A4A;
    --accent: #000000;
    --font-serif: 'Playfair Display', serif;
    --font-sans: 'Inter', sans-serif;
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: var(--font-sans);
    color: var(--text-main);
    background-color: var(--primary);
    margin: 0;
    padding: 0;
    -webkit-font-smoothing: antialiased;
}

.text-muted {
    color: #757575 !important;
}

.premium-section-padding {
    padding: 120px 0;
}

.editorial-title {
    font-family: var(--font-serif);
    font-size: 4rem;
    letter-spacing: -0.02em;
    line-height: 1.1;
}

.card-minimal {
    background: transparent;
    border: none;
    border-bottom: 1px solid #E9ECEF;
    padding: 2rem 0;
    transition: opacity 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

.card-minimal:hover {
    opacity: 0.8;
}

.btn-minimal {
    color: var(--accent);
    background: transparent;
    border: none;
    border-bottom: 1px solid var(--accent);
    text-transform: uppercase;
    font-size: 0.875rem;
    letter-spacing: 0.05em;
    padding: 0.5rem 0;
    transition: all 0.3s ease;
    text-decoration: none;
    font-weight: 600;
}

.btn-minimal:hover {
    border-bottom-width: 2px;
}

/* ===== header ===== */
.main-header {
    background-color: #FFFFFF !important;
    border-bottom: 1px solid #E9ECEF;
    padding: 1.25rem 0;
    transition: all 0.6s cubic-bezier(0.16, 1, 0.3, 1);
    z-index: 1030;
}

.main-header .navbar-brand {
    font-family: 'Playfair Display', serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: #1A1A1A;
    text-decoration: none;
}

.main-header .navbar-brand img {
    max-width: 45px;
    height: auto;
    object-fit: contain;
}

.main-header .nav-link {
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    font-size: 0.875rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #4A4A4A !important;
    padding: 0.5rem 1.25rem !important;
    position: relative;
    transition: color 0.3s ease;
}

.main-header .nav-link::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 1.25rem;
    right: 1.25rem;
    height: 1px;
    background-color: #000000;
    transform: scaleX(0);
    transition: transform 0.3s ease;
}

.main-header .nav-link:hover {
    color: #000000 !important;
}

.main-header .nav-link:hover::after {
    transform: scaleX(1);
}

.main-header .btn-cta {
    font-family: 'Inter', sans-serif;
    font-size: 0.8125rem;
    font-weight: 600;
    text-transform: uppercase;
    font-variant: small-caps;
    letter-spacing: 0.08em;
    color: #000000;
    text-decoration: none;
    border-bottom: 1px solid #000000;
    padding: 0.25rem 0;
    transition: opacity 0.3s ease;
    background: transparent;
}

.main-header .btn-cta:hover {
    opacity: 0.7;
}

.main-header .navbar-toggler {
    font-size: 1.5rem;
    color: #1A1A1A;
    padding: 0;
}

@media (max-width: 991.98px) {
    .main-header {
        padding: 1rem 0;
    }

    .main-header .navbar-collapse {
        background-color: #FFFFFF;
        padding: 2rem 0;
        border-top: 1px solid #F1F3F5;
        margin-top: 1rem;
    }

    .main-header .nav-link {
        padding: 1rem 0 !important;
        font-size: 0.8rem;
        border-bottom: 1px solid #F1F3F5;
    }

    .main-header .nav-link::after {
        display: none;
    }

    .main-header .btn-cta {
        margin-top: 1.5rem;
        display: inline-block;
    }
}

/* ===== hero ===== */
.hero-editorial {
    position: relative;
    width: 100%;
    min-height: 100vh;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #FFFFFF;
}

.hero-editorial__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    filter: blur(2px);
    transform: scale(1.05);
    z-index: 1;
}

.hero-editorial__overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.4);
    z-index: 2;
}

.hero-editorial__container {
    position: relative;
    z-index: 3;
    padding: 120px 0;
}

.hero-editorial__content {
    position: relative;
}

.hero-editorial__script {
    display: block;
    font-family: 'Playfair Display', serif;
    font-style: italic;
    font-size: 1.5rem;
    color: #FF4D4D;
    margin-bottom: -1.5rem;
    position: relative;
    z-index: 10;
    letter-spacing: 0.05em;
}

.hero-editorial__title {
    font-family: 'Playfair Display', serif;
    font-size: clamp(3rem, 10vw, 6rem);
    font-weight: 700;
    line-height: 1.1;
    color: #1A1A1A;
    margin-bottom: 2rem;
    letter-spacing: -0.02em;
    text-transform: none;
}

.hero-editorial__description {
    font-family: 'Inter', sans-serif;
    font-size: 1.125rem;
    line-height: 1.8;
    color: #4A4A4A;
    max-width: 600px;
    margin: 0 auto 3rem;
}

.hero-editorial__actions {
    display: flex;
    gap: 2rem;
    justify-content: center;
    flex-wrap: wrap;
}

.hero-editorial__btn-primary {
    font-family: 'Inter', sans-serif;
    font-weight: 600;
    font-size: 0.875rem;
    color: #000000;
    text-decoration: none;
    text-transform: uppercase;
    font-variant: small-caps;
    letter-spacing: 0.1em;
    border-bottom: 1px solid #000000;
    padding: 0.5rem 0;
    transition: all 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

.hero-editorial__btn-primary:hover {
    color: #333333;
    border-bottom-color: #333333;
    padding-left: 1rem;
    padding-right: 1rem;
}

.hero-editorial__btn-secondary {
    font-family: 'Inter', sans-serif;
    font-size: 0.875rem;
    color: #757575;
    text-decoration: none;
    border-bottom: 1px solid transparent;
    padding: 0.5rem 0;
    transition: all 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

.hero-editorial__btn-secondary:hover {
    color: #1A1A1A;
    border-bottom-color: #DEE2E6;
}

.js-fade-up {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 1.2s ease, transform 1.2s ease;
}

.js-fade-up.is-visible {
    opacity: 1;
    transform: translateY(0);
}

@media (max-width: 768px) {
    .hero-editorial__title {
        font-size: 2.5rem;
    }

    .hero-editorial__script {
        font-size: 1.1rem;
        margin-bottom: -0.5rem;
    }

    .hero-editorial__description {
        font-size: 1rem;
    }

    .hero-editorial__actions {
        flex-direction: column;
        gap: 1rem;
        align-items: center;
    }
}

/* ===== latest-lifehacks ===== */
.latest-lifehacks-section {
    padding: 120px 0;
    background-color: #FFFFFF;
    overflow: hidden;
}

.latest-lifehacks-section .section-title {
    font-family: 'Playfair Display', serif;
    font-size: 2.5rem;
    color: #1A1A1A;
    margin-bottom: 1rem;
    letter-spacing: -0.02em;
}

.latest-lifehacks-section .section-subtitle {
    font-family: 'Inter', sans-serif;
    font-size: 1.125rem;
    color: #4A4A4A;
    max-width: 600px;
    margin: 0 auto;
    line-height: 1.6;
}

.latest-lifehacks-section .lifehack-card {
    background: transparent;
    border: none;
    padding: 0;
    transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

.latest-lifehacks-section .lifehack-image-wrapper {
    aspect-ratio: 4 / 5;
    overflow: hidden;
    margin-bottom: 2rem;
    background-color: #F8F9FA;
}

.latest-lifehacks-section .lifehack-image-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

.latest-lifehacks-section .lifehack-card:hover .lifehack-image-wrapper img {
    transform: scale(1.05);
}

.latest-lifehacks-section .category-label {
    font-family: 'Inter', sans-serif;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: #757575;
    margin-bottom: 0.75rem;
    display: block;
}

.latest-lifehacks-section .lifehack-title {
    font-family: 'Playfair Display', serif;
    font-size: 1.75rem;
    line-height: 1.2;
    margin-bottom: 1.5rem;
    letter-spacing: -0.01em;
}

.latest-lifehacks-section .lifehack-title a {
    color: #1A1A1A;
    text-decoration: none;
    transition: color 0.3s ease;
}

.latest-lifehacks-section .lifehack-title a:hover {
    color: #4A4A4A;
}

.latest-lifehacks-section .lifehack-meta {
    border-top: 1px solid #E9ECEF;
    padding-top: 1.5rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.latest-lifehacks-section .post-date {
    font-family: 'Inter', sans-serif;
    font-size: 0.875rem;
    color: #757575;
}

.latest-lifehacks-section .cta-button-minimal {
    font-family: 'Inter', sans-serif;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #000000;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    transition: gap 0.3s ease;
}

.latest-lifehacks-section .cta-button-minimal i {
    font-size: 1rem;
}

.latest-lifehacks-section .cta-button-minimal:hover {
    gap: 0.75rem;
}

@media (max-width: 767px) {
    .latest-lifehacks-section {
        padding: 60px 0;
    }

    .latest-lifehacks-section .section-title {
        font-size: 1.75rem;
    }

    .latest-lifehacks-section .lifehack-title {
        font-size: 1.5rem;
    }
}

/* ===== health-tips ===== */
.health-tips-block {
    padding: 120px 0;
    background-color: #FFFFFF;
}

.health-tips-block .health-tips-header {
    max-width: 600px;
}

.health-tips-block .health-tips-main-title {
    font-family: 'Playfair Display', serif;
    font-size: 2.5rem;
    font-weight: 700;
    color: #1A1A1A;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

.health-tips-block .health-tips-subtitle {
    font-family: 'Inter', sans-serif;
    font-size: 1.125rem;
    color: #4A4A4A;
    line-height: 1.6;
}

.health-tips-block .health-card {
    height: 100%;
    display: flex;
    flex-direction: column;
    border-bottom: 1px solid #E9ECEF;
    padding-bottom: 2rem;
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.6s cubic-bezier(0.16, 1, 0.3, 1), transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

.health-tips-block .health-card.is-visible {
    opacity: 1;
    transform: translateY(0);
}

.health-tips-block .health-card-image-wrap {
    position: relative;
    overflow: hidden;
    aspect-ratio: 4 / 3;
    margin-bottom: 1.5rem;
}

.health-tips-block .health-card-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

.health-tips-block .health-card:hover .health-card-img {
    transform: scale(1.05);
}

.health-tips-block .health-card-content {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.health-tips-block .health-card-meta {
    font-family: 'Inter', sans-serif;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: #757575;
    margin-bottom: 0.75rem;
}

.health-tips-block .health-card-title {
    font-family: 'Playfair Display', serif;
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 1.25rem;
}

.health-tips-block .health-card-title-link {
    color: #1A1A1A;
    text-decoration: none;
    transition: color 0.3s ease;
}

.health-tips-block .health-card-title-link:hover {
    color: #4A4A4A;
}

.health-tips-block .health-card-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-family: 'Inter', sans-serif;
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
    font-variant: small-caps;
    letter-spacing: 0.05em;
    color: #000000;
    text-decoration: none;
    border-bottom: 1px solid #000000;
    width: fit-content;
    padding-bottom: 4px;
    margin-top: auto;
    transition: border-color 0.3s ease, opacity 0.3s ease;
}

.health-tips-block .health-card-btn:hover {
    border-color: #757575;
    opacity: 0.8;
}

@media (max-width: 768px) {
    .health-tips-block {
        padding: 60px 0;
    }

    .health-tips-block .health-tips-main-title {
        font-size: 1.75rem;
    }

    .health-tips-block .health-card-title {
        font-size: 1.25rem;
    }
}

/* ===== newsletter ===== */
.dt-newsletter {
    padding: 120px 0;
    background-color: #F8F9FA;
    font-family: 'Inter', sans-serif;
}

.dt-newsletter .dt-newsletter__card {
    background: #FFFFFF;
    border-radius: 0;
    min-height: 500px;
    display: flex;
    border: 1px solid #E9ECEF;
}

.dt-newsletter .dt-newsletter__image-side {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    min-height: 100%;
}

.dt-newsletter .dt-newsletter__content-side {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.dt-newsletter h2 {
    font-family: 'Playfair Display', serif;
    color: #1A1A1A;
    font-weight: 700;
    line-height: 1.2;
    font-size: 2.5rem;
    letter-spacing: -0.02em;
}

.dt-newsletter .dt-newsletter__description {
    color: #4A4A4A;
    line-height: 1.6;
    font-size: 1.1rem;
}

.dt-newsletter .dt-newsletter__input {
    height: 55px;
    border-radius: 0;
    border: 1px solid #DEE2E6;
    padding-left: 1.5rem;
    background-color: #FFFFFF;
    color: #1A1A1A;
    transition: border-color 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

.dt-newsletter .dt-newsletter__input:focus {
    outline: none;
    border-color: #000000;
    box-shadow: none;
}

.dt-newsletter .dt-newsletter__input::placeholder {
    color: #757575;
    opacity: 1;
}

.dt-newsletter .dt-newsletter__submit {
    background-color: #000000;
    color: #FFFFFF;
    border: none;
    border-radius: 0;
    height: 55px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-size: 0.9rem;
    transition: background-color 0.6s cubic-bezier(0.16, 1, 0.3, 1);
    display: flex;
    align-items: center;
    justify-content: center;
}

.dt-newsletter .dt-newsletter__submit:hover {
    background-color: #333333;
    color: #FFFFFF;
}

.dt-newsletter .dt-newsletter__legal {
    font-size: 0.8rem;
    color: #757575;
    line-height: 1.4;
    margin-bottom: 0;
}

@media (max-width: 767px) {
    .dt-newsletter {
        padding: 60px 0;
    }

    .dt-newsletter h2 {
        font-size: 16px !important;
    }

    .dt-newsletter .dt-newsletter__description {
        font-size: 0.9rem;
    }

    .dt-newsletter .dt-newsletter__content-side {
        padding: 2rem !important;
    }

    .dt-newsletter .dt-newsletter__submit {
        font-size: 0.8rem;
    }
}

/* ===== footer ===== */
.dt-footer {
    background-color: #F8F9FA;
    color: #1A1A1A;
    padding: 120px 0 60px 0;
    border-top: 1px solid #DEE2E6;
    font-family: 'Inter', sans-serif;
}

.dt-footer__heading {
    font-family: 'Playfair Display', serif;
    font-weight: 700;
    font-size: 1.25rem;
    color: #1A1A1A;
    letter-spacing: -0.02em;
}

.dt-footer__disclaimer {
    border-left: 4px solid #1A1A1A;
}

.dt-footer__disclaimer p {
    color: #4A4A4A;
    line-height: 1.6;
}

.dt-footer__desc {
    color: #4A4A4A;
    font-size: 0.9375rem;
    line-height: 1.7;
}

.dt-footer__links a,
.dt-footer__contact-info a,
.dt-footer__legal a {
    color: #4A4A4A;
    font-size: 0.875rem;
    transition: 0.3s cubic-bezier(0.16, 1, 0.3, 1);
    position: relative;
}

.dt-footer__links a:hover,
.dt-footer__contact-info a:hover,
.dt-footer__legal a:hover {
    color: #000000;
    padding-left: 4px;
}

.dt-footer__input {
    padding: 0.75rem 1rem;
    font-size: 0.875rem;
    border: 1px solid #DEE2E6 !important;
}

.dt-footer__input:focus {
    box-shadow: none;
    border-color: #000000 !important;
}

.dt-footer__btn {
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    padding: 0.75rem 1rem;
    transition: 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.dt-footer__btn:hover {
    background-color: #333333;
    border-color: #333333;
}

.dt-footer__legal li {
    border-right: 1px solid #DEE2E6;
    padding-right: 10px;
}

.dt-footer__legal li:last-child {
    border-right: none;
}

@media (max-width: 767.98px) {
    .dt-footer {
        padding: 60px 0 40px 0;
    }

    .dt-footer__heading {
        font-size: 1.1rem;
    }

    .dt-footer__legal li {
        border-right: none;
        display: block;
        margin-bottom: 10px;
    }
}

/* ===== PAGE: privacy ===== */
.policy-document-wrapper { color: #1A1A1A; font-family: 'Inter', sans-serif; line-height: 1.7; max-width: 800px; margin: 0 auto; padding: 40px 15px; } .policy-intro-section { margin-bottom: 3rem; text-align: left; } .policy-main-title { font-family: 'Playfair Display', serif; font-size: 3rem; font-weight: 700; color: #000000; margin-bottom: 1rem; line-height: 1.2; } .policy-last-update { font-size: 0.875rem; color: #757575; text-transform: uppercase; letter-spacing: 0.05em; margin-bottom: 2rem; } .policy-lead-text { font-size: 1.125rem; color: #4A4A4A; font-style: italic; border-left: 2px solid #000000; padding-left: 1.5rem; margin-bottom: 3rem; } .policy-section-block { margin-bottom: 2.5rem; } .policy-section-block h2 { font-family: 'Playfair Display', serif; font-size: 1.75rem; color: #000000; margin-bottom: 1.25rem; font-weight: 600; border-bottom: 1px solid #E9ECEF; padding-bottom: 0.5rem; } .policy-section-block p { margin-bottom: 1.2rem; font-size: 1rem; color: #1A1A1A; } .policy-list { list-style: none; padding-left: 0; margin-bottom: 1.5rem; } .policy-list li { position: relative; padding-left: 1.5rem; margin-bottom: 0.75rem; } .policy-list li::before { content: '\EB7E'; font-family: 'remixicon'; position: absolute; left: 0; top: 0.2rem; color: #000000; font-size: 0.9rem; } .policy-link { color: #000000; text-decoration: none; border-bottom: 1px solid #DEE2E6; transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1); } .policy-link:hover { border-bottom-color: #000000; color: #333333; } @media (max-width: 768px) { .policy-main-title { font-size: 2.25rem; } .policy-section-block h2 { font-size: 1.5rem; } .policy-lead-text { font-size: 1rem; } .policy-document-wrapper { padding: 30px 15px; } }

/* ===== PAGE: terms ===== */
.policy-document-content { max-width: 900px; margin: 0 auto; padding: 60px 20px; font-family: 'Inter', sans-serif; color: #1A1A1A; line-height: 1.8; } .policy-document-content h1 { font-family: 'Playfair Display', serif; font-size: 3.5rem; color: #000000; margin-bottom: 1rem; font-weight: 700; letter-spacing: -0.02em; } .policy-document-content .lead { font-size: 1.25rem; color: #4A4A4A; font-weight: 300; margin-bottom: 2rem; } .policy-document-content h2 { font-family: 'Playfair Display', serif; font-size: 2rem; color: #000000; margin-top: 3rem; margin-bottom: 1.5rem; border-bottom: 1px solid #E9ECEF; padding-bottom: 0.75rem; } .policy-document-content p { margin-bottom: 1.25rem; } .policy-document-content ul { margin-bottom: 2rem; padding-left: 1.5rem; } .policy-document-content ul li { margin-bottom: 0.75rem; position: relative; } .policy-document-content a { color: #000000; text-decoration: none; border-bottom: 1px solid transparent; transition: all 0.3s ease; font-weight: 600; } .policy-document-content a:hover { border-bottom-color: #000000; opacity: 0.8; } .policy-document-content .list-unstyled { list-style: none; padding-left: 0; } .policy-document-content .list-unstyled li { margin-bottom: 1rem; } @media (max-width: 768px) { .policy-document-content { padding: 40px 15px; } .policy-document-content h1 { font-size: 1.1rem; } .policy-document-content h2 { font-size: 1rem; } .policy-document-content .lead { font-size: 0.9rem; } .policy-document-content p, .policy-document-content li { font-size: 0.85rem; } }

/* ===== PAGE: disclaimer ===== */

/* ===== PAGE: cookies ===== */
.policy-document-content {
  padding: 120px 0;
  background-color: #FFFFFF;
  color: #1A1A1A;
  font-family: 'Inter', sans-serif;
  line-height: 1.7;
}

.policy-document-content .policy-inner {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 20px;
}

.policy-document-content .policy-header {
  margin-bottom: 80px;
  text-align: left;
}

.policy-document-content h1 {
  font-family: 'Playfair Display', serif;
  font-size: 4rem;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 24px;
  color: #000000;
  letter-spacing: -0.02em;
}

.policy-document-content .policy-intro-text {
  font-size: 1.25rem;
  color: #4A4A4A;
  max-width: 600px;
}

.policy-document-content .policy-section {
  margin-bottom: 60px;
}

.policy-document-content h2 {
  font-family: 'Playfair Display', serif;
  font-size: 1.75rem;
  font-weight: 700;
  margin-bottom: 24px;
  color: #000000;
  border-bottom: 1px solid #E9ECEF;
  padding-bottom: 12px;
}

.policy-document-content p {
  margin-bottom: 20px;
  color: #4A4A4A;
}

.policy-document-content .policy-list {
  list-style-type: none;
  padding-left: 0;
  margin-bottom: 24px;
}

.policy-document-content .policy-list li {
  position: relative;
  padding-left: 24px;
  margin-bottom: 12px;
  color: #4A4A4A;
}

.policy-document-content .policy-list li::before {
  content: "\eb7e";
  font-family: 'remixicon';
  position: absolute;
  left: 0;
  top: 4px;
  font-size: 14px;
  color: #000000;
}

.policy-document-content strong {
  font-weight: 600;
  color: #1A1A1A;
}

@media (max-width: 768px) {
  .policy-document-content {
    padding: 60px 0;
  }
  .policy-document-content h1 {
    font-size: 2.5rem;
  }
  .policy-document-content h2 {
    font-size: 1.5rem;
  }
  .policy-document-content .policy-header {
    margin-bottom: 40px;
  }
}

/* ===== PAGE: home-lifehacks ===== */
.lh-page-container {
  --lh-accent: #000000;
  --lh-muted: #757575;
  --lh-border: #E9ECEF;
  --lh-bg-soft: #F8F9FA;
  --lh-transition: 0.6s cubic-bezier(0.16, 1, 0.3, 1);
  background-color: #FFFFFF;
  padding-bottom: 120px;
}

.lh-hero-section {
  padding: 120px 0 60px;
}

.lh-subtitle {
  font-family: 'Inter', sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--lh-muted);
}

.lh-main-title {
  font-family: 'Playfair Display', serif;
  font-size: 3.5rem;
  line-height: 1.1;
  color: var(--lh-accent);
  font-weight: 700;
}

.lh-description {
  font-family: 'Inter', sans-serif;
  font-size: 1.25rem;
  line-height: 1.6;
  color: var(--lh-muted);
  max-width: 800px;
}

.lh-filter-btn {
  background: none;
  border: none;
  padding: 0 0 5px 0;
  font-family: 'Inter', sans-serif;
  font-size: 0.9rem;
  font-weight: 600;
  color: var(--lh-muted);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  border-bottom: 1px solid transparent;
  transition: var(--lh-transition);
}

.lh-filter-btn:hover,
.lh-filter-btn.active {
  color: var(--lh-accent);
  border-bottom-color: var(--lh-accent);
}

.lh-search-input {
  border: none;
  border-bottom: 1px solid var(--lh-border);
  border-radius: 0;
  padding: 8px 0;
  font-family: 'Inter', sans-serif;
  font-size: 0.9rem;
  box-shadow: none !important;
}

.lh-search-input::placeholder {
  color: #ADB5BD;
}

.lh-post-card {
  background: transparent;
  border: none;
  border-bottom: 1px solid var(--lh-border);
  padding-bottom: 2rem;
  transition: var(--lh-transition);
}

.lh-image-container {
  aspect-ratio: 16 / 10;
  background-color: var(--lh-bg-soft);
}

.lh-post-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: var(--lh-transition);
}

.lh-post-card:hover .lh-post-img {
  transform: scale(1.05);
}

.lh-post-meta {
  font-size: 0.75rem;
  color: var(--lh-muted);
  font-family: 'Inter', sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.lh-post-title {
  font-family: 'Playfair Display', serif;
  font-size: 1.5rem;
  color: var(--lh-accent);
  line-height: 1.3;
  transition: opacity 0.3s ease;
}

.lh-post-title:hover {
  opacity: 0.7;
}

.lh-post-excerpt {
  font-family: 'Inter', sans-serif;
  font-size: 0.95rem;
  line-height: 1.6;
  color: var(--lh-muted);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.lh-btn-link {
  font-family: 'Inter', sans-serif;
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--lh-accent);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  padding-bottom: 4px;
  border-bottom: 1px solid var(--lh-accent);
  transition: var(--lh-transition);
}

.lh-btn-link:hover {
  color: var(--lh-muted);
  border-bottom-color: var(--lh-muted);
}

@media (max-width: 768px) {
  .lh-main-title {
    font-size: 2.25rem;
  }
  .lh-hero-section {
    padding: 60px 0 40px;
  }
  .lh-post-title {
    font-size: 1.25rem;
  }
}

/* ===== PAGE: health-secrets ===== */
.health-category-section { padding: 120px 0; background-color: #FFFFFF; } .health-category-subtitle { font-family: 'Inter', sans-serif; font-size: 0.875rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.1em; color: #757575; } .health-category-title { font-family: 'Playfair Display', serif; font-size: 3.5rem; color: #1A1A1A; line-height: 1.1; } .health-category-divider { width: 60px; height: 1px; background-color: #000000; } .health-category-description { font-family: 'Inter', sans-serif; font-size: 1.125rem; line-height: 1.8; color: #4A4A4A; max-width: 600px; } .health-search-wrapper .health-search-input { height: 50px; border: none; border-bottom: 1px solid #DEE2E6; border-radius: 0; padding-left: 35px; font-family: 'Inter', sans-serif; box-shadow: none !important; background-color: transparent; } .health-search-wrapper .health-search-input::placeholder { color: #A0A0A0; font-style: italic; } .health-search-icon { position: absolute; left: 0; top: 50%; transform: translateY(-50%); font-size: 1.25rem; color: #4A4A4A; } .health-card { border-bottom: 1px solid #E9ECEF; padding-bottom: 2rem; transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1); } .health-card-image-link { display: block; position: relative; height: 300px; margin-bottom: 1.5rem; } .health-card-img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1); } .health-card:hover .health-card-img { transform: scale(1.05); } .health-card-meta { font-family: 'Inter', sans-serif; font-size: 0.75rem; text-transform: uppercase; color: #757575; letter-spacing: 0.05em; display: flex; align-items: center; gap: 8px; } .health-card-dot { width: 3px; height: 3px; background-color: #DEE2E6; border-radius: 50%; } .health-card-title { font-family: 'Playfair Display', serif; font-size: 1.5rem; line-height: 1.3; } .health-card-title a { color: #1A1A1A; text-decoration: none; transition: opacity 0.3s ease; } .health-card-title a:hover { opacity: 0.7; } .health-card-btn { display: inline-block; font-family: 'Inter', sans-serif; font-size: 0.75rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.1em; color: #000000; text-decoration: none; padding-bottom: 4px; border-bottom: 1px solid transparent; transition: border-color 0.3s ease; } .health-card-btn:hover { border-bottom-color: #000000; } .health-no-results-text { font-family: 'Inter', sans-serif; font-size: 1.25rem; color: #757575; } @media (max-width: 991.98px) { .health-category-title { font-size: 2.5rem; } .health-category-section { padding: 80px 0; } } @media (max-width: 767.98px) { .health-category-title { font-size: 2rem; } .health-card-image-link { height: 250px; } }

/* ===== PAGE: product-reviews ===== */
.product-reviews-section {
  background-color: #ffffff;
  font-family: 'Inter', sans-serif;
}

.product-reviews-section h1 {
  font-family: 'Playfair Display', serif;
  font-weight: 700;
  color: #1a1a1a;
}

.product-reviews-section h2 {
  font-family: 'Playfair Display', serif;
  font-weight: 700;
  line-height: 1.3;
}

.product-reviews-section .tracking-widest {
  letter-spacing: 0.15em;
}

.product-reviews-section .search-box-wrapper {
  max-width: 400px;
}

.product-reviews-section .search-box-wrapper .form-control:focus {
  box-shadow: none;
  border-color: #000000;
}

.product-reviews-section .search-box-wrapper .input-group-text {
  border-color: #dee2e6;
}

.product-reviews-section .card {
  transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
  border-bottom: 1px solid #e9ecef !important;
  padding-bottom: 2rem;
}

.product-reviews-section .card a.d-block img {
  transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}

.product-reviews-section .card:hover a.d-block img {
  transform: scale(1.05);
}

.product-reviews-section .badge {
  font-size: 0.7rem;
  padding: 0.5em 0.8em;
  border-radius: 0;
  font-weight: 600;
}

.product-reviews-section .btn-outline-dark {
  border-radius: 0;
  text-transform: uppercase;
  font-size: 0.8rem;
  letter-spacing: 0.05em;
  font-weight: 600;
  padding: 0.6rem 1.2rem;
}

.product-reviews-section .btn-outline-dark.active {
  background-color: #000000;
  border-color: #000000;
  color: #ffffff;
}

.product-reviews-section .btn-link {
  font-size: 0.85rem;
  letter-spacing: 0.05em;
  transition: opacity 0.3s ease;
}

.product-reviews-section .btn-link:hover {
  opacity: 0.7;
}

/* ===== PAGE: about-contact ===== */
.about-contact-page .about-section h2 { font-family: 'Playfair Display', serif; color: #1A1A1A; font-weight: 700; line-height: 1.1; }.about-contact-page .ls-wide { letter-spacing: 0.15em; }.about-contact-page .about-text-lead { border-left: 2px solid #000; padding-left: 1.5rem; }.about-contact-page .about-image-wrapper img { width: 100%; height: 600px; object-fit: cover; }.about-contact-page .contact-card { box-shadow: 0 10px 30px rgba(0,0,0,0.02); }.about-contact-page .form-control { background-color: transparent !important; box-shadow: none !important; }.about-contact-page .form-control:focus { border-color: #000 !important; }.about-contact-page .form-floating > label { color: #757575; transition: all 0.3s; }.about-contact-page .btn-submit { background: #000; color: #fff; border: 1px solid #000; padding: 1rem 3rem; font-size: 0.875rem; letter-spacing: 0.1em; transition: all 0.3s ease; cursor: pointer; }.about-contact-page .btn-submit:hover { background: transparent; color: #000; }@media (max-width: 768px) { .about-contact-page .about-image-wrapper img { height: 350px; } .about-contact-page .display-4 { font-size: 2.5rem; } }

.comment-item {
    border-color: #E9ECEF !important;
}

.avatar-circle {
    width: 54px;
    height: 54px;
    background-color: #1A1A1A;
    color: #FFFFFF;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-family: 'Inter', sans-serif;
    font-weight: 600;
    font-size: 1rem;
    letter-spacing: 0.05em;
}

.comment-author {
    font-family: 'Playfair Display', serif;
    font-weight: 700;
    font-size: 1.15rem;
    color: #1A1A1A;
}

.comment-date {
    font-family: 'Inter', sans-serif;
    font-size: 0.875rem;
    color: #757575;
}

.comment-body p {
    font-family: 'Inter', sans-serif;
    font-size: 1rem;
    line-height: 1.7;
    color: #4A4A4A;
    margin-bottom: 0;
}

.btn-minimal {
    background: transparent;
    border: none;
    border-bottom: 1px solid transparent;
    padding: 0 0 2px 0;
    font-family: 'Inter', sans-serif;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #1A1A1A;
    transition: 0.6s cubic-bezier(0.16, 1, 0.3, 1);
    display: inline-flex;
    align-items: center;
}

.btn-minimal:hover {
    border-bottom-color: #1A1A1A;
    color: #000000;
}

.reply-item {
    border-left: 1px solid #DEE2E6 !important;
}

.avatar-reply {
    width: 44px;
    height: 44px;
    background-color: #F1F3F5;
    color: #1A1A1A;
    font-size: 0.875rem;
}

.reply-item .comment-author {
    font-size: 1rem;
}

.reply-item .comment-body p {
    font-size: 0.95rem;
    color: #4A4A4A;
}


/* ===== PAGE TEMPLATE: home-lifehacks ===== */
.article-detail-block {
    font-family: 'Inter', sans-serif;
    background-color: #FFFFFF;
}

.section-heading {
    font-family: 'Playfair Display', serif;
    font-weight: 700;
    color: #1A1A1A;
    position: relative;
    padding-bottom: 1rem;
}

.section-heading::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 60px;
    height: 2px;
    background: #000000;
}

.article-intro {
    line-height: 1.8;
    color: #4A4A4A;
    font-style: italic;
    border-left: 3px solid #1A1A1A;
    padding-left: 1.5rem;
}

.nav-pills .nav-link {
    color: #4A4A4A;
    border-radius: 0;
    border-bottom: 1px solid #E9ECEF;
    font-size: 0.875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    transition: all 0.3s ease;
}

.nav-pills .nav-link.active {
    background-color: transparent;
    color: #000000;
    border-bottom-color: #000000;
}

.tab-pane {
    color: #4A4A4A;
    line-height: 1.7;
    padding: 1.5rem 0;
}

.btn-share {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: 1px solid #E9ECEF;
    border-radius: 50%;
    color: #4A4A4A;
    transition: all 0.3s ease;
    text-decoration: none;
}

.btn-share:hover {
    background-color: #000000;
    color: #FFFFFF;
    border-color: #000000;
}

.sidebar-heading {
    font-family: 'Playfair Display', serif;
    font-size: 1.25rem;
    font-weight: 700;
}

.sidebar-post-title {
    font-size: 0.9375rem;
    font-weight: 600;
    color: #1A1A1A;
    transition: color 0.3s ease;
}

.sidebar-post-title:hover {
    color: #757575;
}

.btn-article-primary {
    font-family: 'Inter', sans-serif;
    font-weight: 600;
    font-size: 0.8125rem;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    background: #000000;
    color: #FFFFFF;
    border: none;
    padding: 1rem 2rem;
    transition: background 0.3s ease;
}

.btn-article-primary:hover {
    background: #333333;
}

.slider-container {
    background: #F8F9FA;
}

.slider-track {
    display: flex;
    transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

.slider-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.9);
    border: none;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
    cursor: pointer;
    transition: 0.3s;
}

.slider-btn:hover {
    background: #000000;
    color: #FFFFFF;
}

.slider-prev {
    left: 10px;
}

.slider-next {
    right: 10px;
}

.comment-item {
    animation: fadeIn 0.5s ease;
}

.avatar-circle {
    width: 45px;
    height: 45px;
    background: #1A1A1A;
    color: #FFFFFF;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 0.875rem;
}

.btn-minimal {
    background: none;
    border: none;
    padding: 0;
    font-size: 0.8125rem;
    font-weight: 600;
    color: #757575;
    transition: 0.3s;
}

.btn-minimal:hover {
    color: #000000;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ===== PAGE TEMPLATE: health-secrets ===== */
.detail-hero {
    position: relative;
    min-height: 60vh;
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: flex-end;
    padding: 80px 0;
    color: #FFFFFF;
}

.detail-hero__overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0.2) 100%);
    z-index: 1;
}

.detail-hero__content {
    position: relative;
    z-index: 2;
}

.detail-hero .breadcrumb {
    background: transparent;
    padding: 0;
}

.detail-hero .breadcrumb-item,
.detail-hero .breadcrumb-item a {
    color: rgba(255, 255, 255, 0.7);
    text-decoration: none;
    font-size: 0.8125rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.detail-hero .breadcrumb-item.active {
    color: #FFFFFF;
}

.detail-hero__category {
    background-color: #000000;
    color: #FFFFFF;
    padding: 4px 12px;
    font-size: 0.75rem;
    text-transform: uppercase;
    font-weight: 600;
}

.detail-hero__title {
    font-family: 'Playfair Display', serif;
    font-size: clamp(2rem, 5vw, 3.5rem);
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 1.5rem;
}

.detail-hero__meta {
    font-size: 0.875rem;
    color: rgba(255, 255, 255, 0.8);
}

.detail-article__intro {
    font-family: 'Playfair Display', serif;
    font-size: 1.5rem;
    font-style: italic;
    color: #1A1A1A;
    line-height: 1.5;
    border-left: 3px solid #000000;
    padding-left: 2rem;
}

.detail-article__body {
    font-family: 'Inter', sans-serif;
    font-size: 1.125rem;
    line-height: 1.8;
    color: #4A4A4A;
}

.detail-article__body h2,
.detail-article__body h3 {
    font-family: 'Playfair Display', serif;
    color: #1A1A1A;
    margin: 2.5rem 0 1.5rem;
}

.detail-article__body p {
    margin-bottom: 1.5rem;
}

.share-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: 1px solid #E9ECEF;
    color: #1A1A1A;
    text-decoration: none;
    transition: all 0.3s ease;
}

.share-btn:hover {
    background-color: #000000;
    color: #FFFFFF;
    border-color: #000000;
}

.sidebar-widget__title {
    font-family: 'Playfair Display', serif;
    font-size: 1.25rem;
    font-weight: 700;
    border-bottom: 1px solid #000000;
    padding-bottom: 10px;
}

.sidebar-item__date {
    font-size: 0.75rem;
    color: #757575;
    text-transform: uppercase;
}

.sidebar-item__title {
    font-size: 1rem;
    font-family: 'Playfair Display', serif;
    font-weight: 700;
    color: #1A1A1A;
    transition: opacity 0.3s ease;
}

.sidebar-item:hover .sidebar-item__title {
    opacity: 0.7;
}

.avatar-circle {
    width: 50px;
    height: 50px;
    background-color: #000000;
    color: #FFFFFF;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 0.875rem;
}

.comment-author {
    font-family: 'Playfair Display', serif;
    font-size: 1.125rem;
    font-weight: 700;
}

.comment-date {
    font-size: 0.8125rem;
    color: #757575;
}

.btn-minimal {
    background: none;
    border: none;
    padding: 0;
    font-size: 0.8125rem;
    color: #4A4A4A;
    transition: color 0.3s ease;
}

.btn-minimal:hover {
    color: #000000;
}

.sidebar-sticky {
    position: sticky;
    top: 100px;
}

@media (max-width: 991px) {
    .sidebar-sticky {
        position: static;
    }

    .detail-hero {
        min-height: 50vh;
    }
}

@media (max-width: 767px) {
    .detail-article__intro {
        font-size: 1.25rem;
        padding-left: 1rem;
    }

    .detail-hero__title {
        font-size: 1.75rem;
    }
}

/* ===== PAGE TEMPLATE: product-reviews ===== */
.product-review-detail {
    padding-top: 40px;
    background-color: #FFFFFF;
    color: #1A1A1A;
    overflow-x: hidden;
}

.review-hero__title {
    font-family: 'Playfair Display', serif;
    font-size: clamp(2.5rem, 5vw, 4rem);
    line-height: 0.82;
    font-weight: 700;
    margin-bottom: 0.75rem;
}

.review-hero__subtitle {
    font-size: 1.25rem;
    color: #4A4A4A;
    line-height: 1.6;
    max-width: 600px;
    margin-bottom: 0.5rem;
}

.review-hero__category {
    font-family: 'Inter', sans-serif;
    font-size: 0.75rem;
    letter-spacing: 0.15em;
    color: #757575;
}

.review-article {
    font-family: 'Inter', sans-serif;
    font-size: 1.125rem;
    line-height: 1.8;
    color: #1A1A1A;
}

.font-serif {
    font-family: 'Playfair Display', serif;
}

.review-slider {
    margin: 3rem 0;
}

.slider-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: #FFFFFF;
    border: none;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    z-index: 10;
    transition: 0.3s;
}

.slider-btn:hover {
    background: #000000;
    color: #FFFFFF;
}

.slider-btn.prev {
    left: 10px;
}

.slider-btn.next {
    right: 10px;
}

.review-verdict {
    border-left: 4px solid #000000;
}

.pros-list li::before {
    content: '\eb7a';
    font-family: 'remixicon';
    color: #198754;
    margin-right: 10px;
}

.cons-list li::before {
    content: '\f1ae';
    font-family: 'remixicon';
    color: #dc3545;
    margin-right: 10px;
}

.share-link {
    font-size: 1.25rem;
    color: #1A1A1A;
    transition: 0.3s;
}

.share-link:hover {
    color: #757575;
}

.avatar-circle {
    width: 50px;
    height: 50px;
    background-color: #F1F3F5;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    color: #1A1A1A;
}

.btn-minimal {
    background: none;
    border: none;
    padding: 0;
    font-size: 0.875rem;
    color: #757575;
    transition: 0.3s;
}

.btn-minimal:hover {
    color: #000000;
}

.btn-editorial-dark {
    background: #000000;
    color: #FFFFFF;
    border: none;
    padding: 1rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    transition: 0.3s;
}

.btn-editorial-dark:hover {
    background: #333333;
}

.pointer {
    cursor: pointer;
}

@media (max-width: 768px) {
    .review-hero__title {
        font-size: 2rem;
    }

    .review-hero__img-wrapper {
        height: 300px;
        margin-top: 2rem;
    }
}