/*
Theme Name: Paras Prithvi Jewels Landing Page
Theme URI: https://www.prithvijewels.com/
Author: Paras Prithvi Jewels
Description: Luxury one-page WordPress landing page theme converted from the supplied static landing page. Sections, content, images, menu labels, WhatsApp number, lead shortcode and gold-rate shortcode are editable from Appearance > Customize.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: paras-prithvi-jewels
*/

/* PARAS PRITHVI JEWELS — Luxury Landing Page */
:root {
  --maroon: #6A0D32;
  --cream: #FAF5EB;
  --gold: #D4A017;
  --charcoal: #2B2320;
  --light-maroon: #F3DDE5;
  --white: #FFFDF8;
  --border: rgba(106, 13, 50, .16);
  --shadow: 0 20px 60px rgba(43, 35, 32, .10);
  --serif: "Cormorant Garamond", Georgia, serif;
  --display: "Playfair Display", Georgia, serif;
  --sans: "Montserrat", Arial, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--cream);
  color: var(--charcoal);
  font-family: var(--sans);
  line-height: 1.7;
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
.container { width: min(1180px, calc(100% - 48px)); margin: 0 auto; }
.maroon-section { background: var(--maroon); color: var(--white); }
.cream-section { background: var(--cream); }
.gold-text { color: var(--gold); }
.maroon-text { color: var(--maroon); }
.eyebrow {
  margin: 0 0 14px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .22em;
  text-transform: uppercase;
}
.section { padding: 105px 0; }
.section-heading { text-align: center; max-width: 720px; margin: 0 auto 55px; }
.section-heading h2, .rate-head h2 {
  margin: 0;
  font: 600 clamp(42px, 5vw, 68px)/1 var(--serif);
}
.section-heading p:last-child { margin: 18px auto 0; max-width: 560px; color: #6d625c; }

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 12px 24px;
  border: 1px solid transparent;
  border-radius: 3px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .11em;
  text-transform: uppercase;
  transition: transform .25s ease, background .25s ease, color .25s ease;
}
.btn:hover { transform: translateY(-2px); }
.btn-gold { background: var(--gold); color: var(--charcoal); }
.btn-gold:hover { background: #e1b02c; }
.btn-outline { border-color: rgba(255,255,255,.65); color: var(--white); background: transparent; }
.btn-outline:hover { background: rgba(255,255,255,.08); }
.btn-small { min-height: 38px; padding: 9px 15px; font-size: 9px; }
.full { width: 100%; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: var(--maroon);
  color: var(--white);
  box-shadow: 0 6px 25px rgba(0,0,0,.10);
}
.nav-wrap { min-height: 78px; display: flex; align-items: center; gap: 28px; }
.brand { width: 150px; flex: 0 0 auto; }
.brand img { width: 100%; height: 55px; object-fit: contain; object-position: left center; }
.desktop-nav { display: flex; align-items: center; justify-content: center; gap: 22px; flex: 1; }
.desktop-nav a, .icon-link { font-size: 10px; letter-spacing: .07em; text-transform: uppercase; opacity: .92; }
.desktop-nav a:hover, .icon-link:hover { color: var(--gold); }
.nav-actions { display: flex; align-items: center; gap: 12px; }
.icon-link { font-size: 20px; line-height: 1; }
.whatsapp-mini { color: var(--gold); font-size: 19px; }
.menu-toggle { display: none; border: 0; background: transparent; color: var(--white); font-size: 25px; cursor: pointer; }
.mobile-menu { display: none; padding: 12px 24px 24px; }
.mobile-menu a { display: block; padding: 12px 0; border-bottom: 1px solid rgba(255,255,255,.12); font-size: 12px; text-transform: uppercase; letter-spacing: .1em; }

.hero { position: relative; min-height: 760px; overflow: hidden; display: flex; align-items: center; }
.hero-grid { display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: 50px; position: relative; z-index: 2; }
.hero h1, .diamond-copy h2, .lead-copy h2, .final-content h2 {
  margin: 0;
  font: 600 clamp(54px, 6.2vw, 90px)/.94 var(--serif);
  letter-spacing: -.03em;
}
.hero h1 em, .diamond-copy h2 em, .lead-copy h2 em, .final-content h2 em { font-style: italic; color: var(--gold); }
.hero-text { max-width: 530px; margin: 25px 0 30px; color: rgba(255,255,255,.82); font-size: 15px; }
.hero-actions { display: flex; gap: 12px; flex-wrap: wrap; }
.tagline { margin: 45px 0 0; font: italic 400 30px/1 var(--display); color: var(--white); }
.hero-art { min-height: 590px; display: flex; align-items: center; justify-content: center; }
.hero-frame {
  width: min(560px, 100%);
  aspect-ratio: 4/5;
  border: 1px solid rgba(212,160,23,.55);
  padding: 12px;
  transform: rotate(1deg);
  box-shadow: 0 30px 80px rgba(0,0,0,.25);
}
.jewel-placeholder {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 25px;
  background:
    radial-gradient(circle at 50% 38%, rgba(212,160,23,.18), transparent 24%),
    linear-gradient(145deg, rgba(255,255,255,.07), rgba(0,0,0,.22));
  border: 1px solid rgba(255,255,255,.12);
  color: rgba(255,255,255,.9);
}
.jewel-placeholder span { font: 500 30px/1.1 var(--serif); letter-spacing: .04em; }
.jewel-placeholder small { margin-top: 12px; max-width: 260px; color: rgba(255,255,255,.55); font-size: 10px; line-height: 1.5; }
.hero-orbit { position: absolute; border: 1px solid rgba(212,160,23,.25); border-radius: 50%; }
.orbit-one { width: 650px; height: 650px; right: -270px; top: -250px; }
.orbit-two { width: 350px; height: 350px; left: -190px; bottom: -200px; }

.product-grid { display: grid; grid-template-columns: 1.25fr repeat(2, 1fr); gap: 18px; }
.product-card { min-height: 390px; display: flex; flex-direction: column; border: 1px solid var(--border); background: rgba(255,255,255,.35); transition: transform .3s ease, box-shadow .3s ease; }
.product-card:hover { transform: translateY(-5px); box-shadow: var(--shadow); }
.product-large { grid-row: span 2; min-height: 798px; }
.image-placeholder, .editorial-placeholder {
  flex: 1;
  min-height: 270px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background:
    radial-gradient(circle at 50% 45%, rgba(212,160,23,.20), transparent 18%),
    linear-gradient(145deg, #f1e5d4, #e2d4c0);
  color: var(--maroon);
  font: 500 23px/1 var(--serif);
  letter-spacing: .08em;
  text-align: center;
}
.product-large .image-placeholder { min-height: 620px; }
.product-info { padding: 20px 22px; display: grid; grid-template-columns: 32px 1fr auto; align-items: center; gap: 12px; }
.product-info span { color: var(--gold); font-size: 11px; }
.product-info h3 { margin: 0; font: 600 25px/1 var(--serif); }
.product-info a { color: var(--maroon); font-size: 10px; text-transform: uppercase; letter-spacing: .1em; }

.category-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 14px; }
.category-card { padding: 35px 20px; text-align: center; border: 1px solid var(--border); background: rgba(255,255,255,.24); transition: .3s ease; }
.category-card:hover { background: var(--maroon); color: var(--white); transform: translateY(-4px); }
.category-icon { display: block; color: var(--gold); font: 45px/1 var(--serif); margin-bottom: 15px; }
.category-card h3 { margin: 0 0 8px; font: 600 25px/1 var(--serif); }
.category-card span:last-child { font-size: 9px; letter-spacing: .14em; text-transform: uppercase; }

.rate-section { padding: 75px 0; background: var(--light-maroon); border-top: 1px solid rgba(106,13,50,.10); border-bottom: 1px solid rgba(106,13,50,.10); }
.rate-head { display: flex; align-items: end; justify-content: space-between; gap: 25px; margin-bottom: 30px; }
.updated { font-size: 11px; letter-spacing: .06em; color: #75666b; }
.rate-grid { display: grid; grid-template-columns: repeat(3, 1fr) 1.1fr; gap: 12px; }
.rate-card { min-height: 175px; padding: 28px; background: rgba(255,255,255,.56); border: 1px solid rgba(106,13,50,.13); text-align: center; display: flex; flex-direction: column; justify-content: center; }
.rate-card span { color: var(--maroon); font-size: 10px; font-weight: 700; letter-spacing: .18em; }
.rate-card strong { margin: 8px 0 0; color: var(--gold); font: 600 39px/1 var(--serif); }
.rate-card small { margin-top: 6px; font-size: 10px; letter-spacing: .13em; }
.rate-more { display: flex; align-items: center; justify-content: center; gap: 10px; background: var(--maroon); color: var(--white); text-align: center; font: 500 23px/1.05 var(--serif); }
.rate-more b { color: var(--gold); }
.rate-note { margin: 18px 0 0; font-size: 9px; color: #75666b; text-align: center; }

.promise-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; }
.promise { padding: 25px 5px; text-align: center; }
.promise-icon { color: var(--gold); font-size: 30px; margin-bottom: 14px; }
.promise h3 { margin: 0 0 8px; font: 600 27px/1 var(--serif); color: var(--maroon); }
.promise p { margin: 0; color: #6d625c; font-size: 12px; }

.diamond-feature { padding: 105px 0; }
.diamond-grid { display: grid; grid-template-columns: 1.15fr .85fr; align-items: center; gap: 85px; }
.diamond-art { min-height: 590px; border: 1px solid rgba(212,160,23,.45); padding: 12px; }
.diamond-art .jewel-placeholder { background: radial-gradient(circle at 50% 40%, rgba(212,160,23,.24), transparent 20%), linear-gradient(145deg, #7d2448, #3e0821); }
.diamond-copy p:not(.eyebrow) { max-width: 520px; margin: 25px 0 30px; color: rgba(255,255,255,.8); }

.lead-section { padding: 100px 0; }
.lead-grid { display: grid; grid-template-columns: 1fr .85fr; align-items: center; gap: 80px; }
.lead-copy > p:not(.eyebrow) { max-width: 570px; color: rgba(255,255,255,.78); }
.benefits { display: flex; flex-wrap: wrap; gap: 18px 28px; margin-top: 35px; }
.benefits span { font-size: 10px; color: var(--white); letter-spacing: .05em; }
.lead-form { background: var(--cream); color: var(--charcoal); padding: 35px; box-shadow: 0 25px 70px rgba(0,0,0,.25); }
.lead-form h3 { margin: 0 0 22px; color: var(--maroon); font: 600 35px/1 var(--serif); }
.lead-form label { display: block; margin-bottom: 14px; font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.lead-form input, .lead-form select { width: 100%; margin-top: 7px; padding: 13px 12px; border: 1px solid #d8cabb; background: #fffdf8; color: var(--charcoal); font: 12px var(--sans); outline: none; }
.lead-form input:focus, .lead-form select:focus { border-color: var(--maroon); }
.lead-form fieldset { border: 0; padding: 0; margin: 5px 0 18px; }
.lead-form legend { margin-bottom: 9px; font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.lead-form .radio { display: inline-flex; align-items: center; margin: 0 20px 0 0; font-size: 10px; font-weight: 500; text-transform: none; letter-spacing: 0; }
.lead-form .radio input { width: auto; margin: 0 6px 0 0; }
.form-note { margin: 10px 0 0; text-align: center; color: #796e67; font-size: 9px; }
.success-message { display: none; margin-top: 15px; padding: 13px; border: 1px solid rgba(106,13,50,.15); background: var(--light-maroon); color: var(--maroon); font-size: 11px; }
.success-message.show { display: block; }

.appointment-section { padding: 85px 0; background: var(--light-maroon); text-align: center; }
.appointment-inner { max-width: 800px; }
.appointment-inner h2 { margin: 0; font: 600 clamp(43px, 5vw, 70px)/1 var(--serif); color: var(--maroon); }
.appointment-inner p:not(.eyebrow) { margin: 18px auto 30px; color: #675c57; }

.journal-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.journal-card { border: 1px solid var(--border); background: rgba(255,255,255,.35); }
.editorial-placeholder { min-height: 280px; background: linear-gradient(145deg, #ead7d8, #d7c0c8); }
.journal-card > div:last-child { padding: 20px; }
.journal-card small { color: var(--maroon); font-size: 8px; letter-spacing: .14em; font-weight: 700; }
.journal-card h3 { margin: 7px 0; font: 600 26px/1 var(--serif); }
.journal-card p { margin: 0; font-size: 11px; color: #6d625c; }

.testimonial { max-width: 860px; margin: auto; padding: 55px; text-align: center; border: 1px solid var(--border); background: rgba(255,255,255,.35); }
.quote-mark { color: var(--gold); font: 80px/.6 var(--serif); }
.testimonial blockquote { margin: 20px auto 25px; font: 500 clamp(24px, 3vw, 38px)/1.3 var(--serif); }
.testimonial-meta { color: var(--maroon); font-size: 9px; font-weight: 700; letter-spacing: .16em; }

.final-cta { position: relative; min-height: 600px; overflow: hidden; display: flex; align-items: center; }
.final-image { position: absolute; inset: 0 0 0 45%; opacity: .85; }
.final-image .jewel-placeholder { border: 0; background: linear-gradient(90deg, var(--maroon), rgba(106,13,50,.28)), radial-gradient(circle at 70% 50%, rgba(212,160,23,.18), transparent 30%); }
.final-content { position: relative; z-index: 2; }
.final-content > p:not(.eyebrow) { color: rgba(255,255,255,.78); margin: 22px 0 28px; }

.site-footer { background: var(--charcoal); color: var(--white); padding: 75px 0 25px; }
.footer-grid { display: grid; grid-template-columns: 1.5fr repeat(3, 1fr); gap: 50px; padding-bottom: 55px; }
.footer-brand img { width: 180px; height: 65px; object-fit: contain; object-position: left center; }
.footer-tagline { color: var(--gold); font: italic 24px var(--display); }
.site-footer h4 { margin: 0 0 17px; color: var(--gold); font: 600 22px var(--serif); }
.site-footer a, .site-footer p { display: block; margin: 8px 0; color: rgba(255,255,255,.72); font-size: 10px; }
.footer-bottom { padding-top: 22px; border-top: 1px solid rgba(255,255,255,.12); display: flex; justify-content: space-between; gap: 20px; color: rgba(255,255,255,.45); font-size: 9px; }

.floating-whatsapp { position: fixed; right: 22px; bottom: 22px; z-index: 900; width: 56px; height: 56px; display: grid; place-items: center; border-radius: 50%; background: var(--gold); color: var(--charcoal); box-shadow: 0 10px 30px rgba(0,0,0,.22); font-size: 22px; }

.reveal { opacity: 0; transform: translateY(24px); transition: opacity .8s ease, transform .8s ease; }
.reveal.visible { opacity: 1; transform: none; }

@media (max-width: 1050px) {
  .desktop-nav { gap: 12px; }
  .desktop-nav a { font-size: 8px; }
  .brand { width: 125px; }
  .nav-actions .icon-link { display: none; }
  .product-grid { grid-template-columns: repeat(2, 1fr); }
  .product-large { grid-row: auto; min-height: 500px; }
  .product-large .image-placeholder { min-height: 390px; }
  .category-grid { grid-template-columns: repeat(5, minmax(130px, 1fr)); overflow-x: auto; padding-bottom: 8px; }
  .promise-grid { grid-template-columns: repeat(2, 1fr); }
  .journal-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 760px) {
  .container { width: min(100% - 30px, 600px); }
  .section { padding: 72px 0; }
  .desktop-nav, .nav-actions { display: none; }
  .menu-toggle { display: block; margin-left: auto; }
  .mobile-menu.open { display: block; }
  .nav-wrap { min-height: 68px; }
  .brand { width: 135px; }
  .brand img { height: 48px; }

  .hero { min-height: auto; padding: 75px 0 65px; }
  .hero-grid, .diamond-grid, .lead-grid { grid-template-columns: 1fr; gap: 45px; }
  .hero h1, .diamond-copy h2, .lead-copy h2, .final-content h2 { font-size: clamp(47px, 14vw, 72px); }
  .hero-art { min-height: 450px; }
  .hero-frame { max-width: 430px; }
  .tagline { margin-top: 30px; }

  .product-grid { grid-template-columns: 1fr; }
  .product-large { min-height: 500px; }
  .product-large .image-placeholder { min-height: 400px; }
  .category-grid { display: flex; }
  .category-card { min-width: 145px; }
  .rate-head { display: block; }
  .rate-head h2 { font-size: 47px; }
  .updated { margin-top: 15px; }
  .rate-grid { grid-template-columns: 1fr; }
  .rate-card { min-height: 145px; }
  .rate-more { min-height: 90px; }
  .promise-grid { grid-template-columns: 1fr; }
  .diamond-feature { padding: 72px 0; }
  .diamond-art { min-height: 420px; }
  .lead-section { padding: 72px 0; }
  .lead-form { padding: 24px; }
  .journal-grid { grid-template-columns: 1fr; }
  .testimonial { padding: 32px 20px; }
  .final-cta { min-height: 650px; align-items: end; padding-bottom: 60px; }
  .final-image { inset: 0; opacity: .48; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 35px 25px; }
  .footer-brand { grid-column: 1 / -1; }
  .footer-bottom { flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .reveal { transition: none; transform: none; opacity: 1; }
}


/* WordPress theme additions */
.admin-only-shortcode-note { padding: 16px; border: 1px dashed rgba(106,13,50,.25); text-align:center; }
.pp-image { width:100%; height:100%; object-fit:cover; }
.pp-section-hidden { display:none !important; }
.lead-shortcode-wrap { width:100%; }
@media (max-width: 900px) {
  .desktop-nav, .nav-actions { display:none; }
  .menu-toggle { display:block; margin-left:auto; }
  .mobile-menu.open { display:block; }
  .hero-grid { grid-template-columns:1fr; }
  .hero-art { min-height:450px; }
  .product-grid { grid-template-columns:1fr 1fr; }
  .product-large { grid-row:span 1; min-height:390px; }
  .product-large .image-placeholder { min-height:270px; }
  .category-grid { grid-template-columns:repeat(2,1fr); }
  .rate-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width: 560px) {
  .container { width:min(100% - 30px, 1180px); }
  .section { padding:75px 0; }
  .product-grid, .category-grid, .rate-grid { grid-template-columns:1fr; }
  .rate-head { align-items:flex-start; flex-direction:column; }
}

.custom-logo { max-height:55px; width:auto; object-fit:contain; }
.site-footer { background:var(--charcoal); color:var(--white); padding:70px 0 25px; }
.footer-grid { display:grid; grid-template-columns:1.4fr 1fr .8fr; gap:40px; }
.footer-grid h3 { font:600 32px/1 var(--serif); margin:0 0 15px; color:var(--gold); }
.footer-grid p,.footer-grid a { color:rgba(255,255,255,.72); font-size:12px; }
.footer-bottom { margin-top:50px; padding-top:18px; border-top:1px solid rgba(255,255,255,.12); display:flex; justify-content:space-between; gap:20px; font-size:10px; letter-spacing:.08em; text-transform:uppercase; color:rgba(255,255,255,.5); }
.diamond-grid { display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:center; }
.diamond-copy h2 { margin:0 0 22px; font:600 clamp(42px,5vw,72px)/.98 var(--serif); }
.diamond-copy h2 em { font-style:italic; color:var(--gold); }
.diamond-copy p { color:rgba(255,255,255,.78); max-width:560px; }
.diamond-art { min-height:480px; }
.diamond-art .pp-image,.diamond-art .image-placeholder { width:100%; height:480px; object-fit:cover; }
.editorial-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.editorial-card { border:1px solid var(--border); background:rgba(255,255,255,.35); }
.editorial-card .pp-image,.editorial-card .image-placeholder { height:270px; width:100%; object-fit:cover; }
.editorial-copy { padding:22px; }
.editorial-copy span { color:var(--maroon); font-size:9px; letter-spacing:.15em; }
.editorial-copy h3 { font:600 29px/1.05 var(--serif); margin:12px 0; }
.editorial-copy p { color:#6d625c; font-size:13px; }
.testimonial { font:italic 400 28px/1.4 var(--serif); max-width:800px; margin:20px auto !important; }
@media (max-width:900px){.diamond-grid,.editorial-grid,.footer-grid{grid-template-columns:1fr;}.diamond-art{min-height:360px}.diamond-art .pp-image,.diamond-art .image-placeholder{height:360px}.footer-grid{gap:15px}}


/* =========================================================
   PRITHVI JEWELS REFERENCE DESIGN — FULL LANDING PAGE
   ========================================================= */
.container-wide{width:min(1840px,calc(100% - 64px));margin:0 auto}
.lux-hero{min-height:809px;position:relative;overflow:hidden;background:#52001f url("assets/reference/Exceptional Moments Jewellery Hero(7).png") center/cover no-repeat}
.lux-hero-bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(75,0,28,.97) 0%,rgba(75,0,28,.82) 38%,rgba(75,0,28,.10) 72%,rgba(30,0,0,.08) 100%)}
.lux-hero-inner{min-height:809px;display:flex;align-items:center;position:relative;z-index:2}
.lux-hero-copy{width:52%;padding:80px 0}
.lux-hero-copy h1{font:600 clamp(60px,6.5vw,104px)/.9 var(--serif);letter-spacing:-.04em;margin:0;color:#fff9ed}
.lux-hero-copy>p:not(.eyebrow){max-width:650px;color:#fff4e9;font:400 22px/1.25 var(--serif);margin:28px 0}
.lux-hero-copy .eyebrow{font-size:14px;letter-spacing:.28em}
.hero-actions{display:flex;gap:18px;flex-wrap:wrap}
.hero-promise-row{display:grid;grid-template-columns:repeat(4,1fr);max-width:720px;margin-top:75px;border-top:1px solid rgba(212,160,23,.4);padding-top:22px;gap:0}
.hero-promise-row span{display:flex;flex-direction:column;align-items:center;text-align:center;color:#e8b632;font-size:28px;border-right:1px solid rgba(212,160,23,.4);gap:7px}
.hero-promise-row span:last-child{border-right:0}
.hero-promise-row b{font:500 12px/1.5 var(--serif);letter-spacing:.15em;color:#fff;text-transform:uppercase}

.signature-section{padding-top:100px;padding-bottom:85px}
.signature-head{display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:end;margin-bottom:48px}
.signature-head h2,.promise-heading h2,.journal-head h2{font:600 clamp(48px,5.2vw,88px)/.93 var(--serif);margin:0;letter-spacing:-.035em}
.signature-intro{padding-bottom:7px;max-width:580px;font:400 21px/1.35 var(--serif)}
.signature-intro a{color:var(--maroon);font-weight:600;border-bottom:1px solid var(--gold)}
.gold-rule-text{letter-spacing:.34em;font-size:11px;color:#765e48;margin:25px 0 0}
.wc-products-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:12px}
.wc-product-card{border:1px solid rgba(106,13,50,.12);background:#fbf6ed;min-width:0}
.wc-product-image{display:block;position:relative;aspect-ratio:1/1.12;overflow:hidden;background:#5a0324}
.wc-product-image .pp-image{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.wc-product-card:hover .wc-product-image .pp-image{transform:scale(1.04)}
.featured-badge{position:absolute;top:10px;left:10px;padding:5px 11px;background:var(--maroon);color:#fff;border:1px solid var(--gold);font-size:9px;letter-spacing:.12em}
.wc-product-info{padding:14px 14px 18px}
.wc-product-info h3{font:600 20px/1.1 var(--serif);margin:0 0 8px}
.wc-product-info h3 a{color:var(--charcoal)}
.wc-product-info>a{color:var(--maroon);font:600 13px var(--serif)}
.woocommerce-product-price{margin:6px 0 8px;font-family:var(--sans);font-size:12px;color:var(--maroon)}

.category-section{padding-top:85px;padding-bottom:85px}
.center-heading{text-align:center;max-width:900px;margin:0 auto 45px}
.center-heading h2{font:600 clamp(50px,5vw,82px)/.92 var(--serif);margin:0}
.center-heading p:last-child{font:400 20px var(--serif);margin:10px 0 0}
.category-carousel{position:relative;overflow:hidden}
.category-track{display:flex;gap:18px;transition:transform .55s ease;will-change:transform}
.category-card-live{flex:0 0 calc((100% - 72px)/5);border:1px solid rgba(106,13,50,.12);background:#fbf6ed;padding-bottom:22px;text-align:center}
.category-image{aspect-ratio:1/1.08;overflow:hidden}
.category-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.category-card-live:hover .category-image img{transform:scale(1.05)}
.category-card-live h3{font:600 25px/1 var(--serif);letter-spacing:.13em;text-transform:uppercase;margin:18px 10px 10px}
.category-card-live>span{color:var(--maroon);font:600 14px var(--serif)}
.cat-arrow{position:absolute;top:44%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;border:1px solid var(--gold);background:rgba(250,245,235,.96);color:var(--maroon);font-size:30px;cursor:pointer;z-index:4}
.cat-prev{left:10px}.cat-next{right:10px}

.promise-section{position:relative;overflow:hidden}
.promise-heading{display:grid;grid-template-columns:1fr 260px;gap:50px;align-items:end;margin-bottom:60px}
.promise-heading>div:first-child>p:last-child{font:400 21px var(--serif);margin:14px 0 0}
.promise-side{border-left:1px solid #b98a3b;padding-left:30px;color:var(--maroon);letter-spacing:.23em;font-size:13px;line-height:1.8}
.promise-grid{display:grid;grid-template-columns:repeat(4,1fr) 300px;gap:0;align-items:stretch}
.promise{padding:10px 38px 35px;text-align:center;border-right:1px solid rgba(106,13,50,.2)}
.promise-circle{width:102px;height:102px;border:1px solid #d8b47e;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 18px;color:#b47a16;font-size:38px}
.promise strong{font:600 30px var(--serif);color:#b47a16}
.promise h3{font:600 17px/1.3 var(--serif);letter-spacing:.15em;text-transform:uppercase;color:var(--maroon);margin:8px 0 18px}
.promise p{font:400 17px/1.35 var(--serif);margin:0}
.promise-visual{min-height:380px;background:#5a0626;overflow:hidden}
.promise-visual img{width:100%;height:100%;object-fit:cover}

.diamond-section{padding:0 0 55px;overflow:hidden}
.diamond-layout{min-height:700px;display:grid;grid-template-columns:1fr 1fr;align-items:center}
.diamond-copy{padding:80px 60px 80px 30px}
.diamond-copy h2{font:600 clamp(55px,6vw,92px)/.9 var(--serif);margin:0}
.diamond-copy h2 em{color:var(--gold);font-style:normal}
.diamond-copy>p:not(.eyebrow){font:400 21px/1.3 var(--serif);max-width:650px;margin:30px 0}
.diamond-visual{height:700px;overflow:hidden}
.diamond-visual img{width:100%;height:100%;object-fit:cover;object-position:center}
.diamond-features{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(212,160,23,.4);border-bottom:1px solid rgba(212,160,23,.4)}
.diamond-feature{min-height:150px;padding:18px 24px;display:flex;gap:16px;align-items:center;border-right:1px solid rgba(212,160,23,.4)}
.diamond-feature:last-child{border-right:0}
.diamond-feature .pp-image,.diamond-feature .image-placeholder{width:100px;height:100px;object-fit:cover;flex:0 0 100px}
.diamond-feature h3{font:600 14px/1.3 var(--serif);letter-spacing:.18em;text-transform:uppercase;margin:0;color:#fff}
.diamond-feature p{font:400 13px/1.35 var(--serif);margin:6px 0;color:rgba(255,255,255,.75)}

.lead-section{padding:0}
.split-panel{display:grid;grid-template-columns:1.1fr .9fr;min-height:730px}
.split-image{min-height:730px;background:#5b0325;overflow:hidden}
.split-image .pp-image{width:100%;height:100%;object-fit:cover}
.split-content{padding:75px 65px;background:var(--cream);color:var(--charcoal)}
.split-content h2{font:600 clamp(48px,5vw,76px)/.94 var(--serif);margin:0}
.split-content>p:not(.eyebrow){font:400 20px/1.35 var(--serif);max-width:580px}
.lead-form-panel .lead-shortcode-wrap{margin-top:30px}
.lead-form-panel input,.lead-form-panel select,.lead-form-panel textarea{width:100%;border:1px solid #dfcfb9;background:#fffaf2;padding:14px;margin-bottom:12px}

.appointment-layout{display:grid;grid-template-columns:1fr 1fr;min-height:670px;background:#f6dce3}
.appointment-image{min-height:670px;background:#4c001e;overflow:hidden}
.appointment-image .pp-image{width:100%;height:100%;object-fit:cover}
.appointment-content{padding:80px 70px;display:flex;flex-direction:column;justify-content:center}
.appointment-content h2{font:600 clamp(55px,5vw,88px)/.9 var(--serif);color:var(--maroon);margin:0}
.appointment-content>p:not(.eyebrow){font:400 22px var(--serif);margin:20px 0 35px}
.appointment-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;border-top:1px solid rgba(106,13,50,.2);border-bottom:1px solid rgba(106,13,50,.2);padding:25px 0;margin-bottom:35px}
.appointment-benefits span{display:flex;flex-direction:column;align-items:center;text-align:center;color:var(--maroon);font-size:28px;border-right:1px solid rgba(106,13,50,.15)}
.appointment-benefits span:last-child{border:0}
.appointment-benefits b{font:600 10px/1.5 var(--serif);letter-spacing:.13em;margin-top:7px}
.btn-maroon{background:var(--maroon);color:#fff;border:1px solid var(--gold)}

.stories-grid{display:grid;grid-template-columns:2fr 1fr;gap:24px;min-height:430px}
.story-visual{overflow:hidden;background:#4d001e}
.story-visual img{width:100%;height:100%;object-fit:cover}
.story-quote{background:#4d001e;color:#fff;padding:60px 45px;display:flex;flex-direction:column;justify-content:center}
.story-quote .testimonial{font:italic 400 32px/1.25 var(--serif);margin:0 0 30px}
.story-quote span{color:#e6bd72;letter-spacing:.22em;font-size:10px}

.journal-section{padding-bottom:100px}
.journal-head{display:grid;grid-template-columns:1fr 360px;gap:60px;align-items:end;margin-bottom:45px}
.journal-head>div:first-child>p:last-child{font:400 21px var(--serif);margin:12px 0 0}
.journal-side{font:italic 400 32px/1.15 var(--serif);color:var(--maroon);padding-bottom:8px}
.journal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.journal-card{min-width:0}
.journal-image{display:block;position:relative;aspect-ratio:1.45/1;overflow:hidden;background:#e9dfd0}
.journal-image .pp-image{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.journal-card:hover .journal-image .pp-image{transform:scale(1.04)}
.journal-image>span{position:absolute;left:18px;bottom:0;background:var(--maroon);color:#fff;padding:8px 12px;font-size:9px;letter-spacing:.14em}
.journal-copy h3{font:600 29px/1.03 var(--serif);margin:17px 0 10px}
.journal-copy p{font:400 16px/1.25 var(--serif);margin:0 0 18px}
.journal-copy>a{color:var(--maroon);font-size:11px;letter-spacing:.18em;font-weight:700}
.journal-more{text-align:center;margin-top:42px}

.lux-footer{background:#241d1a;color:#f9e8c7;position:relative;overflow:hidden}
.footer-main{display:grid;grid-template-columns:1.25fr 1fr 1.15fr 1.25fr 1fr;padding:80px 0 60px;gap:42px}
.footer-brand img{width:210px;filter:none;margin-bottom:22px}
.footer-brand p{letter-spacing:.28em;font-size:13px}
.footer-brand>span{display:block;margin-top:45px;font-size:10px;letter-spacing:.22em}
.footer-col{border-left:1px solid rgba(218,174,96,.35);padding-left:28px}
.footer-col h3{font:600 15px var(--serif);letter-spacing:.22em;color:#e7b85d;margin:0 0 24px}
.footer-col a,.footer-col p{display:block;color:#f3e9db;font:400 15px/1.65 var(--serif);margin:0 0 8px}
.socials{display:flex;gap:14px;margin:8px 0 35px}
.socials a{width:48px;height:48px;border:1px solid #e0aa45;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#f4ca78;font-family:var(--sans);font-size:20px}
.footer-story{margin:0 0 20px!important;letter-spacing:.14em;font-size:11px!important;color:#e8c37d!important}
.footer-story strong{font-size:16px;letter-spacing:.05em}
.footer-wa{border:1px solid #e0aa45;padding:13px 15px!important;text-align:center;color:#f3dfbf!important;letter-spacing:.1em;font-family:var(--sans)!important;font-size:10px!important}
.footer-values{border-top:1px solid rgba(218,174,96,.45);border-bottom:1px solid rgba(218,174,96,.45);display:grid;grid-template-columns:repeat(4,1fr);padding:24px max(32px,calc((100% - 1840px)/2));gap:0}
.footer-values span{border-right:1px solid rgba(218,174,96,.35);padding:0 30px;font:600 13px var(--serif);letter-spacing:.17em}
.footer-values span:last-child{border-right:0}
.footer-values small{color:#a99a8d;font-size:9px;letter-spacing:.2em}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding:22px 0;font:400 12px var(--serif);color:#b9a99c}
.footer-bottom a{color:#d8c9bb}

.full-note{grid-column:1/-1;padding:40px;text-align:center}

@media(max-width:1200px){
 .wc-products-grid{grid-template-columns:repeat(4,1fr)}
 .promise-grid{grid-template-columns:repeat(2,1fr)}
 .promise-visual{grid-column:span 2}
 .footer-main{grid-template-columns:1.2fr 1fr 1fr}
 .social-col{grid-column:span 1}
}
@media(max-width:900px){
 .container-wide{width:min(100% - 30px,1180px)}
 .lux-hero{min-height:760px;background-position:65% center}
 .lux-hero-inner{min-height:760px}
 .lux-hero-copy{width:68%;padding-top:40px}
 .hero-promise-row{margin-top:45px}
 .signature-head,.promise-heading,.diamond-layout,.split-panel,.appointment-layout,.stories-grid,.journal-head{grid-template-columns:1fr}
 .wc-products-grid{grid-template-columns:repeat(3,1fr)}
 .category-card-live{flex-basis:calc((100% - 36px)/3)}
 .diamond-copy{padding:70px 20px}
 .diamond-visual{height:520px}
 .diamond-features{grid-template-columns:repeat(2,1fr)}
 .diamond-feature:nth-child(2){border-right:0}
 .split-image,.appointment-image{min-height:520px}
 .split-content,.appointment-content{padding:55px 35px}
 .journal-grid{grid-template-columns:repeat(2,1fr)}
 .footer-main{grid-template-columns:repeat(2,1fr)}
 .footer-values{grid-template-columns:repeat(2,1fr);gap:20px}
 .footer-values span:nth-child(2){border-right:0}
 .footer-values span{padding:0 12px}
}
@media(max-width:600px){
 .lux-hero{min-height:700px;background-position:68% center}
 .lux-hero-inner{min-height:700px}
 .lux-hero-copy{width:100%;padding:30px 10px 40px;background:linear-gradient(90deg,rgba(75,0,28,.9),rgba(75,0,28,.3));}
 .lux-hero-copy h1{font-size:54px}
 .lux-hero-copy>p:not(.eyebrow){font-size:18px}
 .hero-promise-row{grid-template-columns:repeat(2,1fr);margin-top:35px}
 .hero-promise-row span{border-bottom:1px solid rgba(212,160,23,.3);padding:12px}
 .wc-products-grid{grid-template-columns:repeat(2,1fr)}
 .category-card-live{flex-basis:calc((100% - 18px)/2)}
 .promise-grid,.diamond-features,.journal-grid{grid-template-columns:1fr}
 .promise{border-right:0;border-bottom:1px solid rgba(106,13,50,.15)}
 .promise-visual{grid-column:auto}
 .diamond-feature{border-right:0;border-bottom:1px solid rgba(212,160,23,.3)}
 .appointment-benefits{grid-template-columns:repeat(2,1fr)}
 .appointment-benefits span:nth-child(2){border-right:0}
 .footer-main{grid-template-columns:1fr}
 .footer-col{border-left:0;border-top:1px solid rgba(218,174,96,.3);padding:25px 0 0}
 .footer-values{grid-template-columns:1fr}
 .footer-values span{border-right:0;border-bottom:1px solid rgba(218,174,96,.25);padding:12px 0}
 .footer-bottom{flex-direction:column}
}

/* Shortcode-driven product/category blocks */
.shortcode-block { width:100%; }
.shortcode-block ul { margin:0; padding:0; }
.shortcode-block img { max-width:100%; height:auto; }
.shortcode-block a { text-decoration:none; }
