/*
Theme Name: Carta Creations
Theme URI: https://example.com/carta-creations
Author: Carta Creations
Description: A minimalist, high-performance Full Site Editing (FSE) theme tailored for premium handcrafted albums.
Requires at least: 6.2
Tested up to: 6.4
Requires PHP: 7.4
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: carta-creations
Tags: full-site-editing, custom-background, custom-colors, custom-menu
*/

/* ── Carta Creations: Custom Utilities ─────────────────────────────── */

.carta-card-wrapper {
    position: relative;
    margin-bottom: 4rem;
}

.carta-image-badge {
    position: absolute;
    top: 1rem;
    left: 1rem;
    background-color: var(--wp--preset--color--base-light, #F9F8F6);
    color: var(--wp--preset--color--base-dark, #171717);
    padding: 0.2rem 0.6rem;
    font-size: 0.75rem;
    letter-spacing: 1px;
    z-index: 10;
    border: 1px solid rgba(0,0,0,0.1);
}

.carta-price-row {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin-top: 1.5rem;
    margin-bottom: 0.5rem;
    border-top: 1px solid rgba(0,0,0,0.1);
    padding-top: 1rem;
}

/* ── Card images custom masonry sizing ────────────────────────────── */

.carta-card figure {
    margin: 0 !important;
    overflow: hidden;
    line-height: 0;
}

.carta-card figure img,
.carta-card .wp-block-image img {
    width: 100% !important;
    display: block !important;
    object-fit: cover !important;
    object-position: center !important;
}

/* First Image */
.carta-card-1 figure img,
.carta-card-1 .wp-block-image img {
    aspect-ratio: 762 / 952 !important;
    height: auto !important;
}

/* Second Image */
.carta-card-2 figure img,
.carta-card-2 .wp-block-image img {
    aspect-ratio: 535 / 668 !important;
    height: auto !important;
}

/* Third Image */
.carta-card-3 figure img,
.carta-card-3 .wp-block-image img {
    aspect-ratio: 535 / 668 !important;
    height: auto !important;
}

/* Fourth Image */
.carta-card-4 figure img,
.carta-card-4 .wp-block-image img {
    aspect-ratio: 762 / 952 !important;
    height: auto !important;
}

/* Mobile */
@media (max-width: 768px) {
    .carta-card-1 figure img,
    .carta-card-2 figure img,
    .carta-card-3 figure img,
    .carta-card-4 figure img,
    .carta-card-1 .wp-block-image img,
    .carta-card-2 .wp-block-image img,
    .carta-card-3 .wp-block-image img,
    .carta-card-4 .wp-block-image img {
        width: 100% !important;
    }
}

/* ── Card hover lift ────────────────────────────────────────────────── */

.carta-card {
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.carta-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 32px rgba(28, 26, 23, 0.10);
}

/* ── Right column: masonry offset (desktop only) ───────────────────── */

@media (min-width: 782px) {
    .carta-offset-column {
        margin-top: 6rem;
    }
}

/* ── Section header: two-column label / heading layout ─────────────── */

.carta-section-header {
    align-items: flex-start !important;
    margin-bottom: 3.5rem !important;
}

.carta-section-header > .wp-block-column:first-child {
    flex-grow: 0 !important;
    flex-shrink: 0 !important;
    flex-basis: 220px !important;
}

/* Mobile: stack section header vertically */
@media (max-width: 600px) {
    .carta-section-header {
        flex-direction: column !important;
        margin-bottom: 2rem !important;
    }
    .carta-section-header > .wp-block-column:first-child {
        flex-basis: auto !important;
        width: 100% !important;
    }
    /* Remove offset on mobile */
    .carta-offset-column {
        margin-top: 0 !important;
    }
}

/* =========================================
   CSS  →  assets/css/b2b-section.css
   (or paste into Appearance → Customize →
   Additional CSS)
   ========================================= */

/* ── Section wrapper ── */
.carta-b2b-section {
  position: relative;
  overflow: hidden;
}

/* ── Two-column inner ── */
.carta-b2b-inner {
  min-height: 480px;
}

/* ── Image column ── */
.carta-b2b-image-col {
  position: relative;
  overflow: hidden;
  min-height: 480px;
}

.carta-b2b-image-col .carta-b2b-hero-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  min-height: 480px;
}

.carta-b2b-for-operators {
  position: absolute !important;
  bottom: 24px;
  left: 32px;
  text-transform: uppercase;
  font-family: 'Courier New', monospace;
  margin: 0 !important;
}

/* ── Content column ── */
.carta-b2b-content-col {
  background-color: #0e0c0a;
}

/* ── Eyebrow label ── */
.carta-b2b-eyebrow {
  text-transform: uppercase;
  font-family: 'Courier New', monospace;
}

/* ── Heading ── */
.carta-b2b-heading {
  font-family: 'Palatino Linotype', Palatino, 'Book Antiqua', Georgia, serif;
}
.carta-b2b-heading em {
  font-style: italic;
  font-family: 'Palatino Linotype', Palatino, 'Book Antiqua', Georgia, serif;
  color: #c9a84c;
}

/* ── Body copy ── */
.carta-b2b-body {
  font-family: Georgia, serif;
  max-width: 420px;
}

/* ── Custom Image Bullet Checklist ───────────────────────────── */

.carta-b2b-checklist {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 44px !important;
}

.carta-b2b-checklist li {
    position: relative;
    padding-left: 42px;
    margin-bottom: 16px;
    font-size: 0.85rem;
    color: #ffffff;
    font-family: Georgia, serif;
    letter-spacing: 0.01em;
    line-height: 1.6;
}

.carta-b2b-checklist li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.15em;
    width: 24px;
    height: 24px;
    background-image: url("https://cartacreations.extendedidea.com/wp-content/uploads/2026/06/Bullet-mark.jpg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.carta-b2b-checklist li::after {
    display: none !important;
}
/* ── CTA Button ── */
.carta-b2b-cta .wp-block-button__link {
  transition: background-color 0.25s ease, color 0.25s ease;
  text-transform: uppercase;
  font-family: 'Courier New', monospace;
  cursor: pointer;
}
.carta-b2b-cta .wp-block-button__link:hover {
  background-color: #c9a84c !important;
  color: #0e0c0a !important;
}

/* ── Responsive: stack on mobile ── */
@media (max-width: 768px) {
  .carta-b2b-inner {
    flex-direction: column !important;
  }
  .carta-b2b-content-col {
    padding: 48px 28px !important;
  }
}
/* ── B2B Section ── */
.carta-b2b-section {
  position: relative;
  overflow: hidden;
}

.carta-b2b-inner {
  min-height: 480px;
}

/* ── Image column: relative so the overlay text can be positioned inside ── */
.carta-b2b-image-col {
  position: relative;
  overflow: hidden;
  min-height: 480px;
}

.carta-b2b-image-col .carta-b2b-hero-image {
  margin: 0 !important;
  height: 100%;
}

.carta-b2b-image-col .carta-b2b-hero-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  min-height: 480px;
}

/* ── "FOR YOUR OPERATORS" overlaid on the image, bottom-left ── */
.carta-b2b-image-col::after {
  content: "FOR YOUR OPERATORS";
  position: absolute;
  bottom: 24px;
  left: 32px;
  color: #8a7a6a;
  font-size: 10px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  font-family: 'Courier New', monospace;
  pointer-events: none;
}

/* ── Content column ── */
.carta-b2b-content-col {
  background-color: #0e0c0a;
}

/* ── Heading ── */
.carta-b2b-heading {
  font-family: 'Palatino Linotype', Palatino, 'Book Antiqua', Georgia, serif;
}
.carta-b2b-heading em {
  font-style: italic;
  color: #c9a84c;
}



/* ── CTA Button ── */
.carta-b2b-cta .wp-block-button__link {
  transition: background-color 0.25s ease, color 0.25s ease;
  text-transform: uppercase;
  font-family: 'Courier New', monospace;
  cursor: pointer;
}
.carta-b2b-cta .wp-block-button__link:hover {
  background-color: #c9a84c !important;
  color: #0e0c0a !important;
}

/* ── Responsive ── */
@media (max-width: 768px) {
  .carta-b2b-inner {
    flex-direction: column !important;
  }
  .carta-b2b-content-col {
    padding: 48px 28px !important;
  }
}

/* ── Legacy Section ── */
.carta-legacy-section {
  position: relative;
}

/* ── Image ── */
.carta-legacy-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 2px;
}

/* ── Caption below image ── */
.carta-legacy-caption {
  font-family: 'Courier New', monospace;
}

/* ── Heading ── */
.carta-legacy-heading {
  font-family: 'Palatino Linotype', Palatino, 'Book Antiqua', Georgia, serif !important;
}
.carta-legacy-heading em {
  font-style: italic;
  color: #8C6F3E;
}

/* ── Drop-cap paragraph ── */
.carta-legacy-dropcap::first-letter {
  float: left;
  font-family: 'Palatino Linotype', Palatino, 'Book Antiqua', Georgia, serif;
  font-size: 4.2rem;
  font-weight: 300;
  line-height: 0.75;
  margin: 6px 10px 0 0;
  color: #8C6F3E;
}

/* ── Stats row ── */
.carta-legacy-stats {
  border-top: 1px solid #D4C9B8 !important;
  padding-top: 28px !important;
}

.carta-legacy-stat {
  padding: 0 20px 0 0 !important;
}

.carta-legacy-stat--bordered {
  border-left: 1px solid #D4C9B8 !important;
  padding-left: 20px !important;
}

/* ── Responsive ── */
@media (max-width: 768px) {
  .carta-legacy-image-col,
  .carta-legacy-content-col {
    flex-basis: 100% !important;
    width: 100% !important;
  }
  .carta-legacy-stats .wp-block-columns {
    flex-wrap: wrap;
  }
  .carta-legacy-stat {
    flex-basis: 45% !important;
    margin-bottom: 20px;
  }
}

.wp-site-blocks,
.entry-content,
.wp-block-post-content {
    width: 80%;
    max-width: 80%;
    margin-left: auto;
    margin-right: auto;
}

.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
    width: 80% !important;
    max-width: 1600px !important;
}

.is-layout-constrained > * {
    max-width: 80% !important;
}