/*
Theme Name: Palette Gallery
Theme URI: https://superbthemes.com/palette-gallery/palette-gallery-info/
Author: superbthemescom
Author URI: https://superbthemes.com/ 
Description: Palette Gallery lets you create a gallery website and turn it into the best advertisement for your company. This free WordPress theme features a minimal, minimalist aesthetic and a contemporary design that adapts responsively across mobile friendly and desktop views. Artists and writers can use it to showcase art, photography, paintings, sculptures, abstract illustration pieces, canvas work, and print collections with flawless curation. Whether you’re a museum highlighting an exhibition or a startup curating galleries of artwork, this WordPress theme makes each showcase feel creative and refined - plus, it's simple to use! Built free in Gutenberg with full-site editing (FSE), setup is easy, especially if you wanna create a landing page or one pager. even for bloggers focused on blogging or writers devoted to writing. You’ll benefit from super fast load times, the fastest in its class and built in SEO enhancements to boost your performance on search engines. A built in review system invites feedback from fans, critics, and customers alike. When you’re ready to sell, WooCommerce ecommerce integration lets your business spin up a storefront in minutes. Marketing features like custom color controls and rich schema markup help your portfolio stand out. From solo artists and photographers to established companies and startups, Palette Gallery streamlines the process of launching a vibrant, one page showcase that elevates every gallery and collection.
Requires at least: 6.1
Tested up to: 6.9
Template: awardify
Requires PHP: 5.6
Version: 1.2
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/old-licenses/gpl-2.0.html
Text Domain: palette-gallery
Tags: blog, entertainment, news, one-column, two-columns, block-patterns, block-styles, custom-background, custom-colors, custom-header, custom-logo, custom-menu, editor-style, featured-image-header, featured-images, footer-widgets, full-site-editing, full-width-template, sticky-post, style-variations, template-editing, threaded-comments, translation-ready, wide-blocks
*/

/* Local Font-Face Declarations */
@font-face {
  font-family: 'Cochin';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('assets/fonts/cochin/Cochin-Regular.woff2') format('woff2');
}

@font-face {
  font-family: 'Cochin';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('assets/fonts/cochin/Cochin-Italic.otf') format('opentype');
}

@font-face {
  font-family: 'Cochin';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('assets/fonts/cochin/Cochin-Bold.otf') format('opentype');
}

@font-face {
  font-family: 'Cochin';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url('assets/fonts/cochin/Cochin-Bold-Italic.otf') format('opentype');
}

@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url('assets/fonts/manrope/Manrope-VariableFont_wght.woff2') format('woff2-variations');
}

/* ==========================================================================
   Brandbook Design System Tokens & Utility Classes — Casa Lectio Divina
   ========================================================================== */
:root {
  /* Brandbook 5-Color Palette */
  --wp--preset--color--marfil: #FBF8F2 !important;
  --wp--preset--color--espresso: #1F130F !important;
  --wp--preset--color--cacao: #4B302E !important;
  --wp--preset--color--taupe: #B9AAA0 !important;
  --wp--preset--color--burdeos: #520303 !important;

  /* Theme Aliases */
  --wp--preset--color--primary: #520303 !important;
  --wp--preset--color--primary-hover: #4B302E !important;
  --wp--preset--color--secondary: #4B302E !important;
  --wp--preset--color--tertiary: #B9AAA0 !important;
  --wp--preset--color--base: #FBF8F2 !important;
  --wp--preset--color--contrast: #1F130F !important;
  --wp--preset--color--contrast-dark: #1F130F !important;
  --wp--preset--color--contrast-light: #FBF8F2 !important;
  --wp--preset--color--mono-1: #1F130F !important;
  --wp--preset--color--mono-2: #4B302E !important;
  --wp--preset--color--mono-3: #B9AAA0 !important;
  --wp--preset--color--mono-4: #FBF8F2 !important;
  --wp--preset--color--featured: #520303 !important;

  /* Typography */
  --wp--preset--font-family--cochin: 'Cochin', Georgia, serif !important;
  --wp--preset--font-family--manrope: 'Manrope', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
  --wp--preset--font-family--fontprimary: var(--wp--preset--font-family--manrope) !important;
  --wp--preset--font-family--fontsecondary: var(--wp--preset--font-family--cochin) !important;
}

body {
  background-color: var(--wp--preset--color--marfil);
  color: var(--wp--preset--color--espresso);
  font-family: var(--wp--preset--font-family--manrope);
}

h1, h2, .h1, .h2 {
  font-family: var(--wp--preset--font-family--cochin);
  color: var(--wp--preset--color--espresso);
}

h3, h4, h5, h6 {
  font-family: var(--wp--preset--font-family--manrope);
}

/* Gutenberg Palette Utility Classes */
.has-marfil-background-color { background-color: #FBF8F2 !important; }
.has-marfil-color { color: #FBF8F2 !important; }
.has-espresso-background-color { background-color: #1F130F !important; }
.has-espresso-color { color: #1F130F !important; }
.has-cacao-background-color { background-color: #4B302E !important; }
.has-cacao-color { color: #4B302E !important; }
.has-taupe-background-color { background-color: #B9AAA0 !important; }
.has-taupe-color { color: #B9AAA0 !important; }
.has-taupe-border-color { border-color: #B9AAA0 !important; }
.has-burdeos-background-color { background-color: #520303 !important; }
.has-burdeos-color { color: #520303 !important; }

/* Font Family Helper Classes */
.has-cochin-font-family { font-family: 'Cochin', Georgia, serif !important; }
.has-manrope-font-family { font-family: 'Manrope', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important; }

/* Global Link Styles */
a {
  color: inherit;
  text-decoration: none;
  transition: color 0.2s ease;
}
a:hover {
  color: var(--wp--preset--color--burdeos);
}

/* Button Refinement */
.wp-element-button,
.wp-block-button__link {
  font-family: var(--wp--preset--font-family--manrope) !important;
  font-weight: 500 !important;
  letter-spacing: 0.5px;
  background-color: var(--wp--preset--color--burdeos) !important;
  color: var(--wp--preset--color--marfil) !important;
  border-radius: 2px !important;
  transition: all 0.25s ease !important;
}

.wp-element-button:hover,
.wp-block-button__link:hover {
  background-color: var(--wp--preset--color--cacao) !important;
  color: var(--wp--preset--color--marfil) !important;
}

/* Navigation Overrides */
.wp-block-navigation {
  font-family: var(--wp--preset--font-family--manrope);
  font-size: 14px;
  font-weight: 500;
  color: var(--wp--preset--color--espresso);
}

.wp-block-navigation .wp-block-navigation-item__content {
  color: var(--wp--preset--color--espresso);
  font-size: 14px;
  letter-spacing: 0.25px;
}

.wp-block-navigation .wp-block-navigation-item__content:hover {
  color: var(--wp--preset--color--burdeos);
}

/* Header & Footer Container Styles */
.casa-lectio-header {
  background-color: #FBF8F2;
  border-bottom: 1px solid #B9AAA0;
}

.casa-lectio-footer {
  background-color: #FBF8F2;
  border-top: 1px solid #B9AAA0;
}

/* ==========================================================================
   Casa Lectio Divina — Component System (.cld-*)
   ========================================================================== */

/* --------------------------------------------------------------------------
   Hero
   -------------------------------------------------------------------------- */
.cld-hero-banner {
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin: 0;
  line-height: 0;
}

.cld-hero-banner-img {
  width: 100%;
  margin: 0;
}

.cld-hero-banner-img img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}

/* --------------------------------------------------------------------------
   Section shells & grids
   -------------------------------------------------------------------------- */
.cld-section-intro,
.cld-section-values,
.cld-section-about,
.cld-section-collection {
  padding-top: clamp(60px, 8vw, 100px);
  padding-bottom: clamp(60px, 8vw, 110px);
  padding-left: 24px;
  padding-right: 24px;
}

.cld-section-intro .alignwide,
.cld-section-values .alignwide,
.cld-section-about .alignwide,
.cld-section-collection .alignwide {
  max-width: 1224px;
  margin-left: auto;
  margin-right: auto;
}

.cld-section-manifesto {
  padding-top: 110px;
  padding-bottom: 110px;
  padding-left: 24px;
  padding-right: 24px;
  max-width: 780px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.cld-intro-grid,
.cld-values-grid,
.cld-about-grid,
.cld-collection-grid {
  gap: 24px;
}

.cld-intro-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.cld-intro-text > p,
.cld-about-content > p,
.cld-card-body {
  margin-bottom: 20px;
}

.cld-intro-text > p:last-of-type,
.cld-about-content > p:last-of-type {
  margin-bottom: 28px;
}

.cld-values-header {
  max-width: 1224px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 48px;
}

.cld-values-title,
.cld-collection-header h2,
.cld-about-title {
  font-family: var(--wp--preset--font-family--cochin);
  font-weight: 400;
  color: var(--wp--preset--color--espresso);
  line-height: 1.2;
  margin-bottom: 20px;
}

.cld-values-title {
  font-size: clamp(1.75rem, 3vw, 2.5rem);
}

.cld-collection-header {
  text-align: center;
  margin-bottom: 48px;
}

.cld-collection-header h2 {
  font-size: clamp(1.75rem, 3vw, 2.5rem);
}

.cld-collection-header p {
  font-family: var(--wp--preset--font-family--manrope);
  font-size: 16px;
  line-height: 1.7;
  color: rgba(31, 19, 15, 0.8);
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
}

.cld-collection-footer {
  margin-top: 48px;
}

/* --------------------------------------------------------------------------
   Editorial typography
   -------------------------------------------------------------------------- */
.cld-tag,
.cld-tag-gold,
.cld-substack-tag {
  font-family: var(--wp--preset--font-family--manrope);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  margin-bottom: 12px;
}

.cld-tag {
  color: var(--wp--preset--color--burdeos);
}

.cld-tag-gold {
  color: var(--wp--preset--color--cacao);
}

.cld-substack-tag {
  color: var(--wp--preset--color--marfil);
}

.cld-heading-h1 {
  font-family: var(--wp--preset--font-family--cochin);
  font-size: clamp(2.15rem, 5vw, 3.5rem);
  font-weight: 400;
  line-height: 1.15;
  color: var(--wp--preset--color--espresso);
  margin-bottom: 24px;
}

.cld-intro-list {
  font-family: var(--wp--preset--font-family--manrope);
  font-size: 16px;
  line-height: 1.8;
  padding-left: 20px;
  margin-bottom: 24px;
  color: var(--wp--preset--color--espresso);
}

.cld-intro-list li {
  margin-bottom: 8px;
}

.cld-intro-list li::marker {
  color: var(--wp--preset--color--cacao);
  font-size: 0.65em;
}

.cld-value-num {
  font-family: var(--wp--preset--font-family--cochin);
  font-size: 14px;
  letter-spacing: 1px;
  color: var(--wp--preset--color--taupe);
  margin-bottom: 16px;
}

.cld-value-title,
.cld-card-title {
  font-family: var(--wp--preset--font-family--cochin);
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.25;
  color: var(--wp--preset--color--espresso);
  margin-bottom: 16px;
}

.cld-value-text {
  font-family: var(--wp--preset--font-family--manrope);
  font-size: 15px;
  line-height: 1.7;
  color: rgba(31, 19, 15, 0.9);
}

.cld-card {
  display: flex;
  flex-direction: column;
}

.cld-card-img-wrap {
  margin-bottom: 24px;
}

.cld-card-body {
  font-family: var(--wp--preset--font-family--manrope);
  font-size: 15px;
  line-height: 1.7;
  color: rgba(31, 19, 15, 0.9);
  flex-grow: 1;
}

.cld-manifesto-quote {
  font-family: var(--wp--preset--font-family--cochin);
  font-size: clamp(1.5rem, 3vw, 2.5rem);
  font-weight: 400;
  font-style: italic;
  line-height: 1.3;
  color: var(--wp--preset--color--espresso);
  text-align: center;
  margin-bottom: 24px;
}

.cld-manifesto-desc {
  font-family: var(--wp--preset--font-family--manrope);
  font-size: 16px;
  line-height: 1.7;
  color: var(--wp--preset--color--cacao);
  text-align: center;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
}

.cld-about-title {
  font-size: clamp(1.75rem, 3vw, 2.5rem);
}

.cld-about-text {
  font-family: var(--wp--preset--font-family--manrope);
  font-size: 16px;
  line-height: 1.8;
  color: rgba(31, 19, 15, 0.9);
  margin-bottom: 20px;
}

/* --------------------------------------------------------------------------
   Covers — CTA & Substack
   -------------------------------------------------------------------------- */
.cld-section-cta,
.cld-section-substack {
  min-height: 500px;
  padding-top: 120px;
  padding-bottom: 120px;
}

.cld-section-cta .wp-block-cover__inner-container,
.cld-section-substack .wp-block-cover__inner-container {
  color: var(--wp--preset--color--marfil);
  text-align: center;
  width: 100%;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}

.cld-cta-title,
.cld-substack-title {
  font-family: var(--wp--preset--font-family--cochin);
  font-size: clamp(1.85rem, 3.5vw, 2.5rem);
  font-weight: 400;
  line-height: 1.2;
  color: var(--wp--preset--color--marfil);
  text-align: center;
  margin-bottom: 20px;
}

.cld-cta-desc,
.cld-substack-desc {
  font-family: var(--wp--preset--font-family--manrope);
  font-size: 16px;
  line-height: 1.7;
  color: rgba(251, 248, 242, 0.9);
  text-align: center;
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 32px;
}

/* --------------------------------------------------------------------------
   Buttons
   -------------------------------------------------------------------------- */
.cld-btn .wp-block-button__link.wp-element-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: var(--wp--preset--font-family--manrope) !important;
  font-size: 13px;
  font-weight: 500 !important;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  text-decoration: none;
  line-height: 1.2;
  border-radius: 2px !important;
  padding: 16px 32px;
  border: 1px solid transparent;
  transition: all 0.3s ease;
}

.cld-btn-dark .wp-block-button__link.wp-element-button {
  background-color: var(--wp--preset--color--espresso) !important;
  color: var(--wp--preset--color--marfil) !important;
}

.cld-btn-dark .wp-block-button__link.wp-element-button:hover {
  background-color: var(--wp--preset--color--cacao) !important;
}

.cld-btn-gold .wp-block-button__link.wp-element-button {
  background-color: var(--wp--preset--color--cacao) !important;
  color: var(--wp--preset--color--marfil) !important;
}

.cld-btn-gold .wp-block-button__link.wp-element-button:hover {
  background-color: var(--wp--preset--color--espresso) !important;
}

.cld-btn-substack .wp-block-button__link.wp-element-button {
  background-color: var(--wp--preset--color--marfil) !important;
  color: var(--wp--preset--color--espresso) !important;
}

.cld-btn-substack .wp-block-button__link.wp-element-button:hover {
  background-color: var(--wp--preset--color--espresso) !important;
  color: var(--wp--preset--color--marfil) !important;
}

.cld-btn-burgundy .wp-block-button__link.wp-element-button {
  background-color: var(--wp--preset--color--burdeos) !important;
  color: var(--wp--preset--color--marfil) !important;
}

.cld-btn-burgundy .wp-block-button__link.wp-element-button:hover {
  background-color: var(--wp--preset--color--cacao) !important;
}

.cld-btn-proposals .wp-block-button__link.wp-element-button {
  background-color: transparent !important;
  border-color: var(--wp--preset--color--taupe) !important;
  color: var(--wp--preset--color--espresso) !important;
}

.cld-btn-proposals .wp-block-button__link.wp-element-button:hover {
  background-color: var(--wp--preset--color--espresso) !important;
  border-color: var(--wp--preset--color--espresso) !important;
  color: var(--wp--preset--color--marfil) !important;
}

.cld-btn .wp-block-button__link.wp-element-button:hover,
.cld-btn.lift .wp-block-button__link.wp-element-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(31, 19, 15, 0.12);
}

/* --------------------------------------------------------------------------
   Image hover zoom
   -------------------------------------------------------------------------- */
.image--hover-zoom {
  overflow: hidden;
  border-radius: 2px;
}

.image--hover-zoom img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 0.5s ease;
  will-change: transform;
}

.image--hover-zoom:hover img {
  transform: scale(1.05);
}

/* --------------------------------------------------------------------------
   Scroll reveal animations
   -------------------------------------------------------------------------- */
.cld-reveal {
  opacity: 0;
  transition: opacity 0.8s ease, transform 0.8s ease;
}

.cld-reveal--fade {
  opacity: 0;
  transform: none;
}

.cld-reveal--slide {
  opacity: 0;
  transform: translateY(30px);
}

.cld-reveal--slide-right {
  opacity: 0;
  transform: translateX(30px);
}

.cld-reveal.is-revealed {
  opacity: 1;
  transform: translate(0, 0);
}

.cld-delay-1 {
  transition-delay: 0.15s;
}

.cld-delay-2 {
  transition-delay: 0.3s;
}

.cld-delay-3 {
  transition-delay: 0.45s;
}

/* --------------------------------------------------------------------------
   Responsive
   -------------------------------------------------------------------------- */
@media (max-width: 767px) {
  .cld-section-intro,
  .cld-section-manifesto,
  .cld-section-values,
  .cld-section-about,
  .cld-section-collection {
    padding-top: 60px !important;
    padding-bottom: 80px !important;
  }

  .cld-intro-grid,
  .cld-values-grid,
  .cld-about-grid,
  .cld-collection-grid {
    flex-direction: column !important;
  }

  .cld-about-grid {
    flex-direction: column-reverse !important;
  }

  .cld-intro-grid > .wp-block-column,
  .cld-values-grid > .wp-block-column,
  .cld-about-grid > .wp-block-column,
  .cld-collection-grid > .wp-block-column {
    flex-basis: 100% !important;
  }

  .cld-heading-h1 {
    font-size: clamp(1.85rem, 7vw, 2.5rem);
  }

  .cld-manifesto-quote,
  .cld-values-title,
  .cld-collection-header h2,
  .cld-about-title,
  .cld-cta-title,
  .cld-substack-title {
    font-size: clamp(1.45rem, 5.5vw, 2rem);
  }

  .cld-section-cta,
  .cld-section-substack {
    min-height: 400px;
    padding-top: 80px !important;
    padding-bottom: 80px !important;
  }

  .cld-values-header,
  .cld-collection-header {
    margin-bottom: 36px;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  .cld-section-intro,
  .cld-section-manifesto,
  .cld-section-values,
  .cld-section-about,
  .cld-section-collection {
    padding-top: 70px !important;
    padding-bottom: 90px !important;
  }

  .cld-heading-h1 {
    font-size: clamp(2rem, 4vw, 3rem);
  }

  .cld-section-cta,
  .cld-section-substack {
    min-height: 450px;
    padding-top: 100px !important;
    padding-bottom: 100px !important;
  }

  .cld-value-title,
  .cld-card-title {
    font-size: 1.35rem;
  }
}

/* ==========================================================================
   Scroll Reveal JavaScript — enqueue via functions.php (do not paste into CSS)
   ========================================================================== */
/*
(function () {
  'use strict';

  function initReveal() {
    var reveals = document.querySelectorAll('.cld-reveal');
    if (!reveals.length) return;

    var observer = new IntersectionObserver(function (entries, obs) {
      entries.forEach(function (entry) {
        if (entry.isIntersecting) {
          entry.target.classList.add('is-revealed');
          obs.unobserve(entry.target);
        }
      });
    }, {
      threshold: 0.1,
      rootMargin: '0px 0px -40px 0px'
    });

    reveals.forEach(function (el) {
      observer.observe(el);
    });
  }

  if (document.readyState === 'loading') {
    document.addEventListener('DOMContentLoaded', initReveal);
  } else {
    initReveal();
  }
})();
*/
