:root {
  --paus-white: #ffffff;
  --paus-light-gray: #f5f5f5;
  --paus-border: #e5e5e5;
  --paus-mid-gray: #9e9e9e;
  --paus-dark-gray: #757575;
  --paus-charcoal: #424242;
  --paus-text: #333333;
  --paus-heading: #1a1a1a;

  --cnvs-themecolor: var(--paus-heading);
  --cnvs-themecolor-bg: var(--paus-heading);
  --cnvs-contrast-0: var(--paus-white);
  --cnvs-contrast-1: var(--paus-light-gray);
  --cnvs-contrast-2: var(--paus-border);
  --cnvs-contrast-3: var(--paus-mid-gray);
  --bs-link-color: var(--paus-charcoal);
  --bs-link-hover-color: var(--paus-heading);
}

body {
  background-color: var(--paus-white);
  color: var(--paus-text);
}

#header.transparent-header:not(.dark) {
  border-bottom: 1px solid rgba(0,0,0,0.04);
}
#header.transparent-header:not(.dark) #header-wrap {
  background-color: transparent;
}
#header:not(.dark) #header-wrap {
  background-color: rgba(255,255,255,0.95);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

#header:not(.dark) .menu-link {
  color: var(--paus-text);
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
#header:not(.dark) .menu-link:hover {
  color: var(--paus-heading);
}
#header:not(.dark) .menu-item.current .menu-link {
  color: var(--paus-heading);
  font-weight: 500;
}

#logo img {
  opacity: 0.8;
  transition: opacity 0.3s ease;
}
#logo:hover img {
  opacity: 1;
}

#hero {
  background: linear-gradient(180deg, var(--paus-light-gray) 0%, var(--paus-white) 100%);
  min-height: 90vh;
}
.hero-label {
  font-size: 0.6875rem;
  text-transform: uppercase;
  letter-spacing: 0.25em;
  color: var(--paus-dark-gray);
  font-weight: 400;
}
#hero h1 {
  font-family: 'Tenor Sans', sans-serif;
  font-weight: 400;
  color: var(--paus-heading);
  letter-spacing: 0.05em;
}
.hero-subtitle {
  font-weight: 300;
  color: var(--paus-charcoal);
  font-size: 1.125rem;
  line-height: 1.8;
}
.hero-scroll .button {
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  padding: 12px 32px;
  text-transform: uppercase;
}

.section-label {
  font-size: 0.6875rem;
  text-transform: uppercase;
  letter-spacing: 0.25em;
  color: var(--paus-dark-gray);
  font-weight: 400;
}

.display-5 {
  font-family: 'Tenor Sans', sans-serif;
  font-weight: 400;
  color: var(--paus-heading);
}

.text-dark-gray {
  color: var(--paus-dark-gray) !important;
}

.bg-light-gray {
  background-color: var(--paus-light-gray) !important;
}

.divider i {
  color: var(--paus-border);
}

.fw-semibold {
  font-weight: 500;
}

.scent-quote {
  font-family: 'Tenor Sans', sans-serif;
  font-size: 1.25rem;
  color: var(--paus-charcoal);
  border: none;
  padding: 0;
}

/* Scent Flip Cards */
.scent-flip-card {
  position: relative;
  height: 100%;
  min-height: 380px;
}
.scent-flip-card .flip-card-front,
.scent-flip-card .flip-card-back {
  height: 100%;
  border-radius: 0;
  border: 1px solid var(--paus-border);
  padding: 0;
}
.scent-flip-card .flip-card-front {
  background-color: var(--paus-white) !important;
  color: var(--paus-text);
}
.scent-flip-card .flip-card-inner {
  position: relative;
  top: auto;
  left: auto;
  transform: none;
  width: 100%;
  padding: 2rem;
}
.scent-flip-card .scent-tagline {
  font-size: 0.8125rem;
  color: var(--paus-dark-gray);
  margin-bottom: 0.75rem;
}
.scent-flip-card .scent-brief {
  font-size: 0.8125rem;
  color: var(--paus-charcoal);
  line-height: 1.6;
  margin-bottom: 1rem;
}
.scent-flip-card .note {
  font-size: 0.6875rem;
  line-height: normal;
  font-weight: 400;
}
.scent-flip-card .flip-card-back {
  background: linear-gradient(135deg, #d4d4d4, #b0b0b0);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--paus-white);
}
.scent-flip-card .flip-card-back .flip-card-inner {
  text-align: center;
  padding: 1.5rem;
}
.scent-back-label {
  font-family: 'Tenor Sans', sans-serif;
  font-size: 1.5rem;
  font-weight: 400;
  color: var(--paus-white);
  letter-spacing: 0.08em;
  text-transform: lowercase;
}
.scent-number {
  font-size: 0.625rem;
  font-weight: 500;
  letter-spacing: 0.15em;
  color: var(--paus-mid-gray);
  margin-bottom: 0.75rem;
  text-transform: uppercase;
}
.scent-title {
  font-family: 'Tenor Sans', sans-serif;
  font-weight: 400;
  font-size: 1.25rem;
  color: var(--paus-heading);
  margin-bottom: 0.25rem;
  line-height: 1.3;
}
.scent-tagline {
  font-size: 0.8125rem;
  color: var(--paus-dark-gray);
  font-style: italic;
  margin-bottom: 0.75rem;
}
.scent-brief {
  font-size: 0.8125rem;
  color: var(--paus-charcoal);
  line-height: 1.6;
  margin-bottom: 1rem;
}
.scent-notes {
  display: flex;
  flex-wrap: wrap;
  gap: 0.375rem;
}
.note {
  display: inline-block;
  font-size: 0.6875rem;
  color: var(--paus-charcoal);
  background: var(--paus-light-gray);
  padding: 0.25rem 0.625rem;
  letter-spacing: 0.02em;
  border: 1px solid var(--paus-border);
}

/* Product Gallery */
#section-gallery {
  padding: 3rem 0;
}
.product-card {
  display: block;
  border: 1px solid var(--paus-border);
  transition: border-color 0.3s ease;
  line-height: 0;
}
.product-card img {
  width: 100%;
  display: block;
}
.product-card:hover {
  border-color: var(--paus-dark-gray);
}
.product-label {
  font-size: 0.75rem;
  color: var(--paus-dark-gray);
  letter-spacing: 0.08em;
  margin-top: 0.75rem;
  text-transform: uppercase;
  text-align: center;
}

/* Philosophy section */
#section-philosophy {
  background-color: var(--paus-white);
}
#section-philosophy .row .col-md-4 {
  padding: 1.5rem;
}
#section-philosophy h5 {
  font-size: 0.875rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--paus-heading);
}
#section-philosophy p.small {
  font-size: 0.8125rem;
  line-height: 1.7;
}

/* Contact section */
#section-contact {
  padding: 5rem 0;
}
#section-contact .button {
  font-size: 0.8125rem;
  letter-spacing: 0.1em;
  padding: 14px 40px;
  text-transform: uppercase;
}

/* Footer */
#footer {
  border-top: 1px solid var(--paus-border) !important;
}
#footer .small {
  font-size: 0.75rem;
  color: var(--paus-dark-gray);
}

/* Responsive adjustments */
@media (max-width: 768px) {
  #hero h1 {
    font-size: 3.5rem;
  }
  .scent-flip-card .flip-card-inner {
    padding: 1.5rem;
  }
}
