/* Regenique Elegance Brand Styles */

/* Import Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Pinyon+Script&display=block');
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&family=Montserrat:wght@300;400;500;600&family=Cormorant+Garamond:ital,wght@0,400;0,500;1,400;1,500&display=swap');

/* CSS Variables for Brand Colors */
:root {
    --champagne-gold: #D4AF37;
    --champagne-gold-text: #8B7225; /* Accessible gold for text on light backgrounds (4.63:1 contrast) */
    --midnight-plum: #3D1E36;
    --soft-ivory: #FAF8F5;
    --rose-quartz: #E8C4C4;
    --charcoal-silk: #2C2C2C;
    --pearl-white: #FDFCFB;

    /* Override Astra's global colors */
    --ast-global-color-0: #D4AF37;
    --ast-global-color-1: #3D1E36;
    --ast-global-color-2: #3D1E36;
    --ast-global-color-3: #2C2C2C;
    --ast-global-color-4: #D4AF37;
    --ast-global-color-5: #FFFFFF;
    --ast-global-color-6: #3D1E36;
    --ast-global-color-7: #FFFFFF;
    --ast-global-color-8: #3D1E36;
}

/* Body & Background - Purple everywhere */
body,
#page,
.site-content,
.ast-container,
#primary,
.content-area,
.ast-separate-container,
.ast-plain-container,
.ast-page-builder-template .site-content > .ast-container {
    background-color: var(--midnight-plum);
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
}

/* Text color for body */
body {
    color: var(--charcoal-silk);
}

/* Site Header - full purple background */
.ast-primary-header-bar,
.site-header,
.ast-above-header,
.ast-below-header,
#ast-fixed-header,
.site-header-primary-section-left,
.site-header-primary-section-right,
.ast-primary-header-bar .site-primary-header-wrap,
.ast-header-break-point .site-header,
.ast-header-break-point .ast-primary-header-bar,
#masthead,
body .site-header,
body .ast-primary-header-bar,
.main-header-bar,
.ast-primary-header {
    background-color: #3D1E36;
    border-bottom: none;
    padding: 0;
}

.ast-builder-grid-row {
    background: #3D1E36;
}

/* Remove any white gaps */
.ast-separate-container #primary {
    margin-top: 0;
    padding-top: 0;
}

.ast-separate-container .ast-article-post:first-child {
    margin-top: 0;
}

/* Custom HTML Logo - Vertical Centered */
.regenique-custom-logo {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 0.5rem 0;
    gap: 0;
}

.regenique-custom-logo .logo-icon {
    flex-shrink: 0;
    margin-bottom: 0.25rem;
    display: block;
}

.regenique-custom-logo .logo-icon svg {
    width: 36px;
    height: 44px;
    display: block;
}

.regenique-custom-logo .logo-regenique {
    font-family: 'Playfair Display', serif;
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: 0.25em;
    color: #D4AF37;
    line-height: 1.1;
    margin-bottom: 0.15rem;
    display: block;
    border: none;
    text-decoration: none;
    background: none;
}

.regenique-custom-logo .logo-elegance {
    font-family: 'Pinyon Script', cursive;
    font-size: 2.25rem;
    color: #D4AF37;
    margin-top: 0;
    line-height: 1;
    display: block;
    border: none;
    text-decoration: none;
    background: none;
}

.site-title a,
a.regenique-logo-link,
.regenique-logo-link {
    text-decoration: none;
    border: none;
    background: none;
}

.site-title a:hover .logo-regenique,
.site-title a:hover .logo-elegance,
.regenique-logo-link:hover .logo-regenique,
.regenique-logo-link:hover .logo-elegance {
    color: var(--rose-quartz);
}

/* Ensure logo visibility - override Astra JS */
.ast-site-identity .regenique-custom-logo,
.site-branding .regenique-custom-logo {
    visibility: visible;
    opacity: 1;
}

a.regenique-logo-link,
.regenique-logo-link,
.site-branding a.regenique-logo-link,
.ast-site-identity a.regenique-logo-link {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
    margin-left: 2.5rem;
}

/* Header layout - logo top left */
.ast-site-identity {
    padding: 0.5rem 0;
}

.site-header .ast-container {
    padding-top: 0;
    padding-bottom: 0;
}

/* Hide text tagline in header */
.site-description {
    display: none;
}

/* Navigation */
.main-navigation a,
.ast-header-sections-navigation a,
.main-header-menu a,
.ast-builder-menu-1 .menu-item > .menu-link,
.ast-builder-menu-1 .menu-item.current-menu-item > .menu-link,
.ast-builder-menu-1 .current-menu-ancestor > .menu-link {
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    color: var(--champagne-gold);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 0.85rem;
}

.main-navigation a:hover,
.main-header-menu a:hover,
.ast-builder-menu-1 .menu-item > .menu-link:hover {
    color: var(--rose-quartz);
}

/* Headlines */
h1, h2, h3, h4, h5, h6,
.entry-title,
.entry-title a,
.ast-archive-title,
.page-title {
    font-family: 'Playfair Display', serif;
    color: var(--midnight-plum);
    font-weight: 500;
}

h1, .entry-title {
    font-size: 2.5rem;
    line-height: 1.3;
}

h2 {
    font-size: 1.875rem;
    line-height: 1.4;
    margin-top: 2rem;
}

h3 {
    font-size: 1.5rem;
    line-height: 1.4;
}

/* Entry Title Links */
.entry-title a {
    color: var(--midnight-plum);
}

.entry-title a:hover {
    color: var(--champagne-gold);
}

/* Body Text */
.entry-content,
.entry-content p,
.ast-article-post p {
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    color: var(--charcoal-silk);
    font-size: 1.0625rem;
    line-height: 1.8;
}

/* Blockquotes */
blockquote {
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    font-size: 1.25rem;
    color: var(--midnight-plum);
    border-left: 17px solid #fff;
    padding-left: 1.5rem;
    margin: 2rem 0;
}

blockquote p {
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
}

/* Links */
a {
    color: var(--champagne-gold-text);
    transition: color 0.3s ease;
}

a:hover {
    color: var(--midnight-plum);
}

/* Category/Meta Links */
.cat-links a,
.entry-meta a,
.posted-on a,
.byline a {
    color: var(--champagne-gold-text);
    text-transform: uppercase;
    font-size: 0.75rem;
    letter-spacing: 0.1em;
    font-weight: 500;
}

.cat-links a:hover,
.entry-meta a:hover {
    color: var(--midnight-plum);
}

/* Buttons */
.ast-button,
button,
input[type="submit"],
.wp-block-button__link {
    background-color: var(--champagne-gold);
    color: var(--pearl-white);
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    border: none;
    padding: 0.875rem 2rem;
    transition: all 0.3s ease;
}

.ast-button:hover,
button:hover,
input[type="submit"]:hover,
.wp-block-button__link:hover {
    background-color: var(--midnight-plum);
    color: var(--pearl-white);
}

/* Post Cards/Archive - white cards floating on purple background */
.ast-blog-layout-4-grid .ast-article-post {
    width: 100%;
    margin-bottom: 2em;
    border-bottom: 0;
    background-color: transparent;
}

.ast-article-post {
    background-color: #FFFFFF;
    padding: 0;
    margin-bottom: 2rem;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}

.ast-article-post > div,
.ast-article-post .blog-layout-1,
.ast-article-post .ast-post-format-,
.ast-article-post .post-content,
.ast-article-post .entry-content,
.ast-article-post .ast-excerpt-container {
    background-color: #FFFFFF;
}

/* Add padding around post grid so purple shows */
#primary.content-area {
    padding: 2rem;
}

/* Space between grid items */
.ast-grid-3 {
    gap: 2rem;
}

/* Change homepage to 2 columns */
#primary.ast-grid-3 .ast-row {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
}

@media (max-width: 768px) {
    #primary.ast-grid-3 {
        grid-template-columns: 1fr;
    }
}

/* Post card content styling - clean white background */
.ast-article-post .cat-links {
    display: block;
    padding: 1rem 1.5rem 0.5rem 1.5rem;
    margin: 0;
}

.ast-article-post .cat-links a {
    color: var(--champagne-gold-text);
}

/* Entry title styling */
.ast-article-post h2.entry-title {
    padding: 0 1.5rem 0.5rem 1.5rem;
    margin: 0;
}

.ast-article-post h2.entry-title a {
    color: var(--midnight-plum);
}

.ast-article-post h2.entry-title a:hover {
    color: var(--champagne-gold);
}

/* Entry meta styling */
.ast-article-post .entry-header.ast-blog-meta-container {
    padding: 0 1.5rem 1rem 1.5rem;
    margin: 0;
}

.ast-article-post .entry-header .entry-meta,
.ast-article-post .entry-header .entry-meta a,
.ast-article-post .entry-header .posted-on a,
.ast-article-post .entry-header .byline a {
    color: var(--champagne-gold-text);
}

.ast-article-post .entry-header .entry-meta {
    color: var(--charcoal-silk);
}

/* Meta spans (author, date) - accessible contrast on white cards */
.entry-meta .author-name,
.entry-meta .published,
.entry-meta .updated,
.entry-meta span,
.ast-article-post .entry-meta .author-name,
.ast-article-post .entry-meta .published {
    color: var(--champagne-gold-text);
}

/* Pagination - readable on plum background */
.ast-pagination,
.ast-pagination .nav-links {
    color: var(--soft-ivory);
}

.ast-pagination .page-numbers,
.ast-pagination a.page-numbers,
.ast-pagination .next,
.ast-pagination .prev {
    color: var(--soft-ivory);
}

.ast-pagination .page-numbers:hover {
    color: var(--champagne-gold);
}

.ast-pagination .page-numbers.current {
    color: var(--pearl-white);
}

/* Ensure text outside white cards is readable on plum */
#primary > p,
.ast-pagination + p,
.navigation.pagination + p {
    color: var(--soft-ivory);
}

/* Entry content/summary padding */
.ast-article-post .entry-content,
.ast-article-post .entry-summary,
.ast-article-post .ast-excerpt-container {
    padding: 0 1.5rem 1.5rem 1.5rem;
}

/* Featured Images */
.post-thumbnail img,
.attachment-post-thumbnail {
    border-radius: 4px;
}

/* Figure Captions */
figcaption,
.wp-caption-text {
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    color: var(--midnight-plum);
    font-size: 0.9375rem;
    text-align: center;
    margin-top: 0.75rem;
}

/* Footer */
.site-footer,
.ast-footer-overlay {
    background-color: var(--midnight-plum);
    color: var(--soft-ivory);
}

.site-footer a {
    color: var(--champagne-gold);
}

.site-footer p,
.ast-footer-copyright p,
.site-footer-below-section-1 p {
    color: var(--soft-ivory);
}

/* Footer links distinguishable from surrounding text */
.ast-footer-copyright a,
.site-footer-below-section-1 a {
    text-decoration: underline;
    text-underline-offset: 2px;
}

.site-footer a:hover {
    color: var(--rose-quartz);
}

/* Widget Titles */
.widget-title {
    font-family: 'Playfair Display', serif;
    color: var(--midnight-plum);
    font-size: 1.25rem;
    border-bottom: 2px solid var(--champagne-gold);
    padding-bottom: 0.5rem;
    margin-bottom: 1rem;
}

/* Lists */
.entry-content ul,
.entry-content ol {
    color: var(--charcoal-silk);
}

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

/* Horizontal Rule */
hr {
    border-color: var(--rose-quartz);
}

/* Selection */
::selection {
    background-color: var(--champagne-gold);
    color: var(--pearl-white);
}

/* Content Container */
.ast-container {
    max-width: 1200px;
}

/* Widen homepage blog grid */
.home .site-main,
.home .ast-row {
    max-width: 100%;
    width: 100%;
}

.home #primary.content-area {
    max-width: 1200px;
    margin: 0 auto;
}


/* Single Post Page - white background */
.single .site-content,
.single #primary,
.single .ast-article-single,
.single article,
.single .entry-content,
.single .ast-container,
.single .post-navigation,
.single .comments-area,
.ast-separate-container .ast-article-single,
.ast-separate-container.ast-single-post .site-content > .ast-container,
.single .ast-article-single > .ast-post-format-,
.single .ast-article-single > div,
.single .entry-header,
.single .ast-single-post-order {
    background-color: #FFFFFF;
}

/* Single post hero image */
.single-post-hero {
    width: 100%;
    margin-bottom: 2rem;
}

.single-post-hero .single-featured-image {
    width: 100%;
    height: auto;
    max-height: 500px;
    object-fit: cover;
    border-radius: 8px;
}

/* Single post card container */
.single .ast-article-single {
    padding: 0;
    border-radius: 8px;
    margin: 2rem;
    overflow: hidden;
}

/* Single post header */
.single .entry-header {
    padding: 3rem 3rem 1rem 3rem;
}

/* Single post content */
.single .entry-content {
    max-width: 800px;
    padding: 0 15px;
}

/* Fix blockquote styling */
.single .entry-content blockquote {
    margin-left: 0;
    margin-right: 0;
    padding: 1.5rem 2rem;
    background-color: var(--soft-ivory);
    width: 100%;
    box-sizing: border-box;
    border-radius: 4px;
}

/* Tagline Style */
.site-description {
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    color: var(--champagne-gold);
}

/* Read More Link */
.read-more a,
.more-link {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 0.8125rem;
    color: var(--champagne-gold-text);
    border-bottom: 1px solid var(--champagne-gold-text);
    padding-bottom: 2px;
}

.read-more a:hover,
.more-link:hover {
    color: var(--midnight-plum);
    border-color: var(--midnight-plum);
}

/* Smooth scrolling */
html {
    scroll-behavior: smooth;
}

/* Image styling */
.entry-content img {
    border-radius: 4px;
}

/* Strong/Bold text */
strong, b {
    font-weight: 600;
    color: var(--midnight-plum);
}

/* Shop Now CTA Widget */
.regenique-shop-cta {
    background-color: var(--midnight-plum);
    border-radius: 8px;
    padding: 2rem 1.5rem;
    text-align: center;
    margin-bottom: 2rem;
}

.regenique-shop-cta .shop-cta__tagline {
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    color: var(--rose-quartz);
    font-size: 0.9375rem;
    margin-bottom: 0.5rem;
}

.regenique-shop-cta .shop-cta__heading {
    font-family: 'Playfair Display', serif;
    color: var(--champagne-gold);
    font-size: 1.375rem;
    font-weight: 500;
    margin-bottom: 0.75rem;
    line-height: 1.3;
}

.regenique-shop-cta .shop-cta__text {
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    color: var(--soft-ivory);
    font-size: 0.875rem;
    line-height: 1.6;
    margin-bottom: 1.25rem;
}

.regenique-shop-cta .shop-cta__button {
    display: inline-block;
    background-color: var(--champagne-gold);
    color: var(--midnight-plum);
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.8125rem;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    text-decoration: none;
    padding: 0.75rem 2rem;
    border: 2px solid var(--champagne-gold);
    transition: all 0.3s ease;
    margin-bottom: 1rem;
}

.regenique-shop-cta .shop-cta__button:hover {
    background-color: transparent;
    color: var(--champagne-gold);
}

.regenique-shop-cta .shop-cta__links {
    display: flex;
    justify-content: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.regenique-shop-cta .shop-cta__links a {
    font-family: 'Montserrat', sans-serif;
    font-size: 0.75rem;
    font-weight: 400;
    letter-spacing: 0.05em;
    color: var(--rose-quartz);
    text-decoration: none;
    transition: color 0.3s ease;
}

.regenique-shop-cta .shop-cta__links a:hover {
    color: var(--champagne-gold);
}

/* Shop Ritual CTA (in blog posts) */
.shop-ritual-cta {
    background-color: var(--soft-ivory);
    border: 1px solid var(--rose-quartz);
    border-radius: 8px;
    padding: 2rem;
    margin-top: 2rem;
    text-align: center;
}

.shop-ritual-cta h3 {
    font-family: 'Playfair Display', serif;
    color: var(--midnight-plum);
    font-size: 1.5rem;
    margin-bottom: 0.75rem;
}

.shop-ritual-cta ul {
    list-style: none;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.5rem 1.5rem;
    margin-bottom: 1rem;
}

.shop-ritual-cta ul li {
    margin: 0;
}

.shop-ritual-cta ul li a {
    font-family: 'Montserrat', sans-serif;
    font-size: 0.875rem;
    font-weight: 400;
    color: var(--champagne-gold-text);
    text-decoration: underline;
    text-underline-offset: 3px;
}

.shop-ritual-cta ul li a:hover {
    color: var(--midnight-plum);
}

.shop-ritual-cta > p:last-child a {
    display: inline-block;
    background-color: var(--champagne-gold);
    color: var(--pearl-white);
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.8125rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    text-decoration: none;
    padding: 0.75rem 2rem;
    transition: all 0.3s ease;
}

.shop-ritual-cta > p:last-child a:hover {
    background-color: var(--midnight-plum);
    color: var(--pearl-white);
}

/* ===== Resources Page ===== */

/* Resources page - white background like single posts */
.page-template-default .site-content,
.page-template-default #primary,
.page-template-default .ast-article-single,
.page-template-default article,
.page-template-default .entry-content,
.page-template-default .ast-container {
    background-color: #FFFFFF;
}

/* Resources hero section */
.resources-hero {
    text-align: center;
    padding: 2rem 1.5rem 1rem;
    max-width: 700px;
    margin: 0 auto;
}

.resources-hero h1 {
    font-family: 'Playfair Display', serif;
    font-size: 2.5rem;
    color: var(--midnight-plum);
    margin-bottom: 0.75rem;
}

.resources-hero .resources-tagline {
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    font-size: 1.25rem;
    color: var(--champagne-gold-text);
    margin-bottom: 0.5rem;
}

.resources-hero p {
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    color: var(--charcoal-silk);
    font-size: 1rem;
    line-height: 1.7;
}

/* Tutorial cards grid */
.tutorial-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 2rem;
    padding: 1.5rem 0 3rem;
    max-width: 1100px;
    margin: 0 auto;
}

.tutorial-card {
    background: var(--pearl-white);
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    display: flex;
    flex-direction: column;
}

.tutorial-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
}

.tutorial-card-image {
    width: 100%;
    height: 200px;
    object-fit: cover;
}

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

.tutorial-card-skin-type {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--champagne-gold-text);
    margin-bottom: 0.5rem;
}

.tutorial-card-title {
    font-family: 'Playfair Display', serif;
    font-size: 1.375rem;
    font-weight: 500;
    color: var(--midnight-plum);
    margin-bottom: 0.75rem;
    line-height: 1.3;
}

.tutorial-card-description {
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    color: var(--charcoal-silk);
    font-size: 0.9375rem;
    line-height: 1.6;
    margin-bottom: 1.25rem;
    flex: 1;
}

.tutorial-card-actions {
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.tutorial-card-actions .btn-read {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.8125rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-decoration: none;
    color: var(--pearl-white);
    background-color: var(--midnight-plum);
    padding: 0.625rem 1.25rem;
    border-radius: 4px;
    transition: background-color 0.3s ease;
}

.tutorial-card-actions .btn-read:hover {
    background-color: var(--champagne-gold);
    color: var(--midnight-plum);
}

.tutorial-card-actions .btn-download {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.8125rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-decoration: none;
    color: var(--champagne-gold-text);
    background-color: transparent;
    padding: 0.625rem 1.25rem;
    border: 1px solid var(--champagne-gold);
    border-radius: 4px;
    transition: all 0.3s ease;
}

.tutorial-card-actions .btn-download:hover {
    background-color: var(--champagne-gold);
    color: var(--pearl-white);
}

/* Tutorial page-specific styles */
.tutorial-weekly-schedule {
    width: 100%;
    border-collapse: collapse;
    margin: 1.5rem 0;
    font-size: 0.9375rem;
}

.tutorial-weekly-schedule thead {
    background-color: var(--midnight-plum);
}

.tutorial-weekly-schedule thead th {
    color: var(--champagne-gold);
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.8125rem;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    padding: 0.75rem 1rem;
    text-align: left;
}

.tutorial-weekly-schedule tbody td {
    padding: 0.625rem 1rem;
    border-bottom: 1px solid var(--rose-quartz);
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    color: var(--charcoal-silk);
    font-size: 0.875rem;
    vertical-align: top;
}

.tutorial-weekly-schedule tbody tr:nth-child(even) {
    background-color: var(--soft-ivory);
}

/* Download CTA within tutorials */
.tutorial-download-cta {
    background: linear-gradient(135deg, var(--midnight-plum) 0%, #2a1225 100%);
    border-radius: 8px;
    padding: 2rem;
    text-align: center;
    margin: 2rem 0;
}

.tutorial-download-cta h3 {
    font-family: 'Playfair Display', serif;
    color: var(--champagne-gold);
    font-size: 1.5rem;
    margin-bottom: 0.75rem;
}

.tutorial-download-cta p {
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    color: var(--soft-ivory);
    font-size: 0.9375rem;
    margin-bottom: 1rem;
}

.tutorial-download-cta a {
    display: inline-block;
    background-color: var(--champagne-gold);
    color: var(--midnight-plum);
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.8125rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    text-decoration: none;
    padding: 0.75rem 2rem;
    border-radius: 4px;
    transition: all 0.3s ease;
}

.tutorial-download-cta a:hover {
    background-color: var(--rose-quartz);
    color: var(--midnight-plum);
}

/* Responsive adjustments for resources */
@media (max-width: 768px) {
    .tutorial-grid {
        grid-template-columns: 1fr;
        padding: 1rem 0 2rem;
    }

    .resources-hero h1 {
        font-size: 2rem;
    }

    .tutorial-card-actions {
        flex-direction: column;
    }

    .tutorial-card-actions .btn-read,
    .tutorial-card-actions .btn-download {
        text-align: center;
    }
}

/* ===== Tutorial Blog Post Images ===== */

/* Image figures with captions */
.entry-content .image-figure {
    margin: 1.5rem 0;
    text-align: center;
}

.entry-content .image-figure img {
    max-width: 100%;
    height: auto;
    border-radius: 6px;
}

.entry-content .image-caption {
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    font-size: 0.9rem;
    color: var(--midnight-plum);
    margin-top: 0.5rem;
}

/* ===== Author Bio Box ===== */

.regenique-author-bio {
    background-color: var(--soft-ivory);
    border: 1px solid var(--rose-quartz);
    border-radius: 8px;
    padding: 2rem;
    margin-top: 3rem;
    margin-bottom: 1rem;
}

.regenique-author-header {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    margin-bottom: 1.25rem;
}

.regenique-author-avatar {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    border: 3px solid var(--champagne-gold);
    object-fit: cover;
    flex-shrink: 0;
}

.regenique-author-label {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.6875rem;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    color: var(--champagne-gold-text);
    margin: 0 0 0.25rem 0;
}

.regenique-author-name {
    font-family: 'Playfair Display', serif;
    font-size: 1.375rem;
    font-weight: 600;
    color: var(--midnight-plum);
    margin: 0 0 0.25rem 0;
    line-height: 1.3;
}

.regenique-author-name a {
    color: var(--midnight-plum);
    text-decoration: none;
}

.regenique-author-name a:hover {
    color: var(--champagne-gold-text);
}

.regenique-author-title {
    font-family: 'Cormorant Garamond', serif;
    font-style: italic;
    font-size: 1.0625rem;
    color: var(--champagne-gold-text);
    margin: 0;
}

.regenique-author-body {
    margin-bottom: 1rem;
}

.regenique-author-body p {
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    font-size: 0.9375rem;
    line-height: 1.7;
    color: var(--charcoal-silk);
    margin: 0 0 0.75rem 0;
}

.regenique-author-body p:last-child {
    margin-bottom: 0;
}

.regenique-author-credentials {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1.5rem;
    padding-top: 1rem;
    border-top: 1px solid var(--rose-quartz);
}

.regenique-author-credentials li {
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 0.8125rem;
    color: var(--midnight-plum);
    padding-left: 1.25rem;
    position: relative;
    margin: 0;
}

.regenique-author-credentials li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.45em;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: var(--champagne-gold);
}

@media (max-width: 600px) {
    .regenique-author-header {
        flex-direction: column;
        text-align: center;
    }

    .regenique-author-avatar {
        width: 100px;
        height: 100px;
    }

    .regenique-author-bio {
        padding: 1.5rem;
    }

    .regenique-author-credentials {
        flex-direction: column;
        gap: 0.5rem;
    }
}
