/* ==========================================================
   OPTION C — ART DECO
   Black and gold in a 1920s Art Deco style: Cinzel capitals,
   square corners, double gold frames, a gold sunburst arch
   behind the bottles and solid gold bands.
   ========================================================== */
@font-face { font-family: 'Cinzel'; font-style: normal; font-weight: 400; font-display: swap; src: url('fonts/cinzel-latin-400-normal.woff2') format('woff2'); }
@font-face { font-family: 'Cinzel'; font-style: normal; font-weight: 500; font-display: swap; src: url('fonts/cinzel-latin-500-normal.woff2') format('woff2'); }
@font-face { font-family: 'Cinzel'; font-style: normal; font-weight: 600; font-display: swap; src: url('fonts/cinzel-latin-600-normal.woff2') format('woff2'); }

:root {
  --ink: #080808;
  --ink-2: #101010;
  --gold: #d6b04a;
  --gold-2: #f1d985;
  --gold-deep: #876810;
  --cream: #fbf5e6;
  --sand: #f4ead2;
  --paper: #fffdf7;
  --text: #121212;
  --muted: #59534a;
  --line: rgba(160, 125, 30, 0.32);
  --line-dark: rgba(241, 217, 133, 0.26);
  --display: "Cinzel", "Trajan Pro", Georgia, serif;
  --metal: linear-gradient(120deg, #f9e8ab 0%, #e2c160 30%, #c79d33 56%, #f2d77f 80%, #d4ad42 100%);
  --radius: 0px;
}

/* typography */
.theme-c h1, .theme-c h2, .theme-c h3, .theme-c .brand, .theme-c .faq summary {
  font-family: var(--display); font-weight: 500; letter-spacing: 0.04em;
}
.theme-c h1 { font-size: clamp(2.3rem, 4.8vw, 4rem); line-height: 1.12; }
.theme-c h2 { font-size: clamp(1.7rem, 3.2vw, 2.6rem); line-height: 1.15; }
.theme-c h3 { font-size: 1.2rem; letter-spacing: 0.06em; }
.theme-c .page-hero h1 { font-size: clamp(2.1rem, 4.4vw, 3.6rem); }
.theme-c h1 em, .theme-c h2 em { font-style: normal; color: var(--gold-deep); }
.theme-c .on-dark h1 em, .theme-c .on-dark h2 em, .theme-c .section-dark h2 em { color: var(--gold-2); }
.theme-c .faq summary { font-size: 1.05rem; }
.theme-c .brand { font-size: 1.05rem; letter-spacing: 0.22em; }
.theme-c .product-body h2 { font-size: clamp(1.8rem, 2.8vw, 2.3rem); }

/* deco eyebrow: diamond ends */
.theme-c .eyebrow::before, .theme-c .center .eyebrow::after,
.theme-c .cta-band .eyebrow::after, .theme-c .page-hero .eyebrow::after, .theme-c .quote .eyebrow::after {
  width: 34px; height: 7px; opacity: 1; background:
    linear-gradient(currentColor, currentColor) center / 100% 1px no-repeat,
    linear-gradient(45deg, transparent 40%, currentColor 40%, currentColor 60%, transparent 60%) right center / 7px 7px no-repeat;
}

/* square buttons */
.theme-c .btn { border-radius: 0; letter-spacing: 0.2em; }
.theme-c .btn-gold { background: var(--metal); color: #080808; box-shadow: 0 0 0 1px #080808, 0 0 0 2px rgba(214, 176, 74, 0.6); }
.theme-c .btn-gold:hover { filter: brightness(1.08); }
.theme-c .btn-ghost { border-color: var(--gold); color: var(--gold-2); }
.theme-c .btn-line { border-color: #080808; color: #080808; }
.theme-c .btn-line:hover { background: #080808; color: var(--gold-2); }

/* header */
.theme-c .site-header { background: #080808; border-bottom: 1px solid var(--gold); box-shadow: 0 3px 0 -2px rgba(214, 176, 74, 0.35); }
.theme-c .nav a { color: rgba(255, 255, 255, 0.85); }

/* hero: sunburst arch */
.theme-c .hero {
  background:
    radial-gradient(700px 520px at 74% 60%, rgba(214, 176, 74, 0.26), transparent 62%),
    #080808;
}
.theme-c .hero .lead { color: rgba(255, 255, 255, 0.82); }
.theme-c .hero-visual::before {
  inset: 2% 12% 9%; border-radius: 999px 999px 0 0; border: 1px solid var(--gold);
  outline: 1px solid rgba(214, 176, 74, 0.45); outline-offset: 10px;
  background: repeating-conic-gradient(from 270deg at 50% 100%, rgba(241, 217, 133, 0.16) 0deg 1.4deg, transparent 1.4deg 8deg);
}
.theme-c .hero-visual::after { left: 10%; right: 10%; bottom: 30px; height: 2px; filter: none; background: var(--metal); }

/* solid gold strip */
.theme-c .strip { background: var(--metal); color: #080808; border: 0; }
.theme-c .strip-inner { font-weight: 500; }
.theme-c .strip-inner span::before { background: #080808; }

/* framed cards */
.theme-c .card, .theme-c .step, .theme-c .tip, .theme-c .product, .theme-c .form-card, .theme-c .contact-item {
  border-radius: 0; border: 1px solid var(--line);
}
.theme-c .card-media {
  background:
    repeating-conic-gradient(from 270deg at 50% 100%, rgba(241, 217, 133, 0.1) 0deg 1.2deg, transparent 1.2deg 9deg),
    radial-gradient(circle at 50% 70%, #2c2410 0%, #0d0c0a 70%);
  outline: 1px solid rgba(214, 176, 74, 0.55); outline-offset: -10px;
}
.theme-c .card:hover { box-shadow: 0 0 0 1px var(--gold), 0 24px 50px -30px rgba(0, 0, 0, 0.5); }
.theme-c .card-body { text-align: center; }
.theme-c .step { border-top: 3px solid var(--gold); }
.theme-c .step-num { font-family: var(--display); color: var(--gold); font-size: 2.4rem; }

/* black feature band with framed features */
.theme-c .section-dark { background: #080808; border-top: 1px solid var(--gold); border-bottom: 1px solid var(--gold); }
.theme-c .feature { border-radius: 0; border-color: rgba(214, 176, 74, 0.4); outline: 1px solid rgba(214, 176, 74, 0.18); outline-offset: -8px; background: transparent; text-align: center; }
.theme-c .feature svg { stroke: var(--gold-2); margin-inline: auto; }
.theme-c .feature h3 { font-size: 1.05rem; }

/* gold quote band */
.theme-c .quote { background: var(--metal); }
.theme-c .quote .eyebrow, .theme-c .quote .text-link { color: #080808; border-color: rgba(0, 0, 0, 0.35); }
.theme-c .quote .quote-line em { color: #080808; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 6px; }
.theme-c .quote .btn-line { border-color: #080808; }

.theme-c .cta-band, .theme-c .page-hero {
  background:
    repeating-conic-gradient(from 270deg at 50% 100%, rgba(241, 217, 133, 0.07) 0deg 1.2deg, transparent 1.2deg 9deg),
    #080808;
}
.theme-c .cta-band .container { border: 1px solid rgba(214, 176, 74, 0.5); outline: 1px solid rgba(214, 176, 74, 0.25); outline-offset: 8px; padding: 56px 32px; }
.theme-c .page-hero { border-bottom: 1px solid var(--gold); }
.theme-c .page-hero .lead { color: rgba(255, 255, 255, 0.8); }

/* collection */
.theme-c .product-media {
  background:
    repeating-conic-gradient(from 270deg at 50% 100%, rgba(241, 217, 133, 0.1) 0deg 1.2deg, transparent 1.2deg 9deg),
    radial-gradient(circle at 50% 70%, #2c2410 0%, #0d0c0a 72%);
  outline: 1px solid rgba(214, 176, 74, 0.5); outline-offset: -14px;
}
.theme-c .product-media img { filter: drop-shadow(0 30px 30px rgba(0, 0, 0, 0.6)); }
.theme-c .badge { border-radius: 0; border-color: var(--gold); color: var(--gold-deep); }
.theme-c .match { border-radius: 0; }

/* forms + contact */
.theme-c .field input, .theme-c .field select, .theme-c .field textarea { border-radius: 0; }
.theme-c .contact-item .icon { border-radius: 0; transform: rotate(45deg); width: 42px; height: 42px; margin: 0 4px; background: #080808; }
.theme-c .contact-item .icon svg { transform: rotate(-45deg); }

.theme-c .site-footer { background: #050505; border-top: 1px solid var(--gold); }
.theme-c .socials a { border-radius: 0; border-color: rgba(214, 176, 74, 0.5); }
.theme-c .wa-float { border-radius: 0; transform: rotate(45deg); background: var(--metal); color: #080808; }
.theme-c .wa-float svg { transform: rotate(-45deg); }
.theme-c .wa-float:hover { transform: rotate(45deg) scale(1.07); }

@media (max-width: 640px) {
  .theme-c .cta-band .container { padding: 40px 20px; width: calc(100% - 40px); }
}

/* gold rim light so black caps stand out on black */
.theme-c .card-media img, .theme-c .product-media img, .theme-c .hero-visual img {
  filter: drop-shadow(0 0 1px rgba(241, 217, 133, 0.9)) drop-shadow(0 0 10px rgba(214, 176, 74, 0.22)) drop-shadow(0 28px 26px rgba(0, 0, 0, 0.6));
}
.theme-c .quote .ornament { filter: brightness(0); opacity: 0.85; }

/* ==========================================================
   FINAL PRODUCTION: new logo + real product photos
   ========================================================== */
.theme-c .brand img { width: auto; height: 46px; }
.theme-c .footer-logo { display: inline-block; margin-bottom: 20px; }
.theme-c .footer-logo img { width: 150px; height: auto; }

/* photo cards on the home page */
.theme-c .card-media.photo {
  display: block; position: relative; overflow: hidden; padding: 0; height: auto;
  aspect-ratio: 3 / 4; background: #0d0c0a; outline: none;
}
.theme-c .card-media.photo img { width: 100%; height: 100%; object-fit: cover; filter: none; transition: transform 0.7s ease; }
.theme-c .card-media.photo::after {
  content: ""; position: absolute; inset: 10px; pointer-events: none;
  border: 1px solid rgba(214, 176, 74, 0.95);
}
.theme-c .card:hover .card-media.photo img { transform: scale(1.04); }

/* photo panels on the collection page */
.theme-c .product-media.photo {
  display: block; position: relative; overflow: hidden; padding: 0; min-height: 620px;
  background: #0d0c0a; outline: none;
}
.theme-c .product-media.photo img {
  position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: none;
}
.theme-c .product-media.photo::after {
  content: ""; position: absolute; inset: 14px; pointer-events: none;
  border: 1px solid rgba(214, 176, 74, 0.95); outline: 1px solid rgba(241, 217, 133, 0.35); outline-offset: -7px;
}

/* hero: product photo in a gold Art Deco arch */
.theme-c .arch-visual { display: flex; align-items: flex-end; justify-content: center; }
.theme-c .hero-arch {
  position: relative; z-index: 1; height: calc(100% - 66px); aspect-ratio: 3 / 4; margin-bottom: 34px;
  border-radius: 999px 999px 0 0; overflow: hidden; border: 1px solid var(--gold);
  box-shadow: 0 0 0 8px #080808, 0 0 0 9px rgba(214, 176, 74, 0.6), 0 40px 70px -30px rgba(0, 0, 0, 0.9);
}
.theme-c .hero-arch img { position: static; display: block; width: 100%; height: 100%; object-fit: cover; filter: none; transform: none; }

@media (max-width: 980px) {
  .theme-c .product-media.photo { min-height: 0; aspect-ratio: 3 / 4; }
  .theme-c .hero-visual.arch-visual { height: 460px; }
}
@media (max-width: 640px) {
  .theme-c .card-media.photo { aspect-ratio: 4 / 5; }
  .theme-c .hero-visual.arch-visual { height: 400px; }
  .theme-c .brand img { height: 40px; }
}
.theme-c .arch-visual::before { outline: none; }
.theme-c .hero-arch { margin-bottom: 46px; }
.theme-c .matcher { grid-template-columns: repeat(2, 1fr); }
@media (max-width: 640px) { .theme-c .matcher { grid-template-columns: 1fr; } }

/* ==========================================================
   HERO PRODUCT SLIDESHOW
   Real product photos in a faint gold arch, smooth crossfade
   every 3.5 s, plain arrows, perfume name underneath.
   ========================================================== */
.theme-c .hero-visual.arch-visual {
  height: 640px; flex-direction: column; align-items: center; justify-content: flex-end;
}
.theme-c .arch-visual::before { inset: 0 6% 58px; background: none; border-color: rgba(214, 176, 74, 0.08); }
.theme-c .arch-visual::after { display: none; }
.theme-c .hero-arch {
  height: calc(100% - 58px); margin-bottom: 0; background: #0d0c0a;
  border: 1px solid rgba(214, 176, 74, 0.14);
  box-shadow: 0 40px 80px -30px rgba(0, 0, 0, 0.9), 0 0 80px rgba(214, 176, 74, 0.07);
}
.theme-c .hero-slider { outline: none; }
.theme-c .hero-slider:focus-visible { box-shadow: 0 0 0 2px var(--gold); }
.theme-c .hero-slider::after {
  content: ""; position: absolute; inset: 0; z-index: 3; pointer-events: none; border-radius: inherit;
  box-shadow: inset 0 0 40px 6px rgba(8, 8, 8, 0.45);
}
.theme-c .hero-slider img.slide {
  position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: none;
  opacity: 0; z-index: 0; transform: scale(1.06);
  transition: opacity 1.2s ease, transform 5s ease-out;
}
.theme-c .hero-slider img.slide.is-prev { opacity: 1; z-index: 1; transform: scale(1); transition: none; }
.theme-c .hero-slider img.slide.is-active { opacity: 1; z-index: 2; transform: scale(1); }

/* plain arrows, no box */
.theme-c .slider-arrow {
  position: absolute; top: 50%; z-index: 4; width: 44px; height: 44px; padding: 0;
  display: grid; place-items: center; border: 0; background: none; cursor: pointer;
  color: var(--gold-2); opacity: 0.85; transform: translateY(-50%);
  filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.7));
  transition: opacity 0.25s, color 0.25s, transform 0.25s;
}
.theme-c .slider-arrow svg { width: 26px; height: 26px; transform: none; }
.theme-c .slider-arrow:hover, .theme-c .slider-arrow:focus-visible { opacity: 1; color: #fff; background: none; }
.theme-c .slider-arrow.prev { left: 8px; }
.theme-c .slider-arrow.next { right: 8px; }
.theme-c .slider-arrow.prev:hover { transform: translate(-3px, -50%); }
.theme-c .slider-arrow.next:hover { transform: translate(3px, -50%); }

/* perfume name only */
.theme-c .slider-meta { height: 58px; display: flex; align-items: center; justify-content: center; }
.theme-c .slider-caption {
  font-family: var(--display); font-size: 1.05rem; letter-spacing: 0.28em; text-transform: uppercase;
  color: var(--gold-2); text-decoration: none; transition: opacity 0.35s ease, color 0.25s;
}
.theme-c .slider-caption:hover { color: #fff; }
.theme-c .slider-caption.is-changing { opacity: 0; }

@media (prefers-reduced-motion: reduce) {
  .theme-c .hero-slider img.slide { transform: none; }
}
@media (max-width: 980px) {
  .theme-c .hero-visual.arch-visual { height: 580px; }
}
@media (max-width: 640px) {
  .theme-c .hero-visual.arch-visual { height: 490px; }
  .theme-c .slider-arrow svg { width: 22px; height: 22px; }
  .theme-c .slider-arrow.prev { left: 2px; }
  .theme-c .slider-arrow.next { right: 2px; }
  .theme-c .slider-caption { font-size: 0.95rem; }
}

/* arrows sit in the black space beside the arch, so they stay visible on light and dark photos */
.theme-c .slider-arrow { top: calc((100% - 58px) / 2); z-index: 4; filter: none; color: var(--gold-2); }
.theme-c .slider-arrow.prev { left: max(4px, calc(50% - 218px - 56px)); }
.theme-c .slider-arrow.next { right: max(4px, calc(50% - 218px - 56px)); }
@media (min-width: 981px) and (max-width: 1180px) {
  .theme-c .hero-visual.arch-visual { height: 580px; }
  .theme-c .slider-arrow.prev { left: max(0px, calc(50% - 196px - 50px)); }
  .theme-c .slider-arrow.next { right: max(0px, calc(50% - 196px - 50px)); }
}
@media (max-width: 980px) {
  .theme-c .slider-arrow.prev { left: max(0px, calc(50% - 196px - 54px)); }
  .theme-c .slider-arrow.next { right: max(0px, calc(50% - 196px - 54px)); }
}
@media (max-width: 640px) {
  /* little room beside the arch on phones: arrows rest on the photo edge with a soft shadow */
  .theme-c .slider-arrow { color: #fff; filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.9)) drop-shadow(0 0 6px rgba(0, 0, 0, 0.6)); }
  .theme-c .slider-arrow.prev { left: max(0px, calc(50% - 162px - 4px)); }
  .theme-c .slider-arrow.next { right: max(0px, calc(50% - 162px - 4px)); }
}

/* ==========================================================
   WEBSITE ASSISTANT (chat) + WhatsApp, stacked bottom-right
   ========================================================== */
.chat-dock { position: fixed; right: 26px; bottom: 26px; z-index: 70; display: flex; flex-direction: column; align-items: center; gap: 30px; }
.chat-dock .wa-float { position: static; }
.theme-c .chat-launcher {
  width: 54px; height: 54px; padding: 0; display: grid; place-items: center; cursor: pointer;
  background: #080808; color: var(--gold-2); border: 1px solid var(--gold);
  transform: rotate(45deg); box-shadow: 0 16px 34px -12px rgba(0, 0, 0, 0.6), 0 0 0 4px rgba(214, 176, 74, 0.12);
  transition: transform 0.25s, background 0.25s, color 0.25s;
}
.theme-c .chat-launcher svg { width: 24px; height: 24px; transform: rotate(-45deg); }
.theme-c .chat-launcher:hover, .theme-c .chat-launcher[aria-expanded="true"] { background: var(--gold); color: #080808; }
.theme-c .chat-launcher:hover { transform: rotate(45deg) scale(1.06); }

/* greeting bubble */
.theme-c .chat-teaser {
  position: absolute; right: 74px; bottom: 96px; width: 240px; padding: 16px 18px 16px;
  background: #fffdf7; color: #121212; border: 1px solid var(--gold);
  box-shadow: 0 20px 40px -18px rgba(0, 0, 0, 0.55);
  opacity: 0; transform: translateX(10px); pointer-events: none; transition: opacity 0.4s, transform 0.4s;
}
.theme-c .chat-teaser.show { opacity: 1; transform: none; pointer-events: auto; }
.theme-c .chat-teaser::after {
  content: ""; position: absolute; right: -7px; bottom: 20px; width: 12px; height: 12px;
  background: #fffdf7; border-top: 1px solid var(--gold); border-right: 1px solid var(--gold); transform: rotate(45deg);
}
.theme-c .chat-teaser p { margin: 0 18px 12px 0; font-size: 0.92rem; line-height: 1.45; }
.theme-c .chat-teaser-btn {
  font: inherit; font-size: 0.7rem; letter-spacing: 0.18em; text-transform: uppercase; font-weight: 500;
  padding: 0.7em 1.2em; border: 0; cursor: pointer; background: var(--metal); color: #080808;
}
.theme-c .chat-teaser-close {
  position: absolute; top: 4px; right: 6px; width: 28px; height: 28px; border: 0; background: none;
  font-size: 1.2rem; line-height: 1; color: #59534a; cursor: pointer;
}

/* chat window */
.theme-c .chat-panel {
  position: fixed; right: 26px; bottom: 190px; z-index: 80; width: 380px; height: min(560px, calc(100vh - 230px));
  display: flex; flex-direction: column; background: #0c0b09; color: #f3ede1;
  border: 1px solid var(--gold); outline: 1px solid rgba(214, 176, 74, 0.25); outline-offset: 5px;
  box-shadow: 0 30px 70px -20px rgba(0, 0, 0, 0.8);
  opacity: 0; transform: translateY(14px); transition: opacity 0.25s, transform 0.25s;
}
.theme-c .chat-panel.open { opacity: 1; transform: none; }
.theme-c .chat-head { display: flex; align-items: center; gap: 12px; padding: 14px 16px; border-bottom: 1px solid rgba(214, 176, 74, 0.35); background: #080808; }
.theme-c .chat-head img { width: 32px; height: auto; }
.theme-c .chat-titles { display: grid; flex: 1; line-height: 1.25; }
.theme-c .chat-titles strong { font-family: var(--display); font-weight: 500; letter-spacing: 0.16em; color: var(--gold-2); font-size: 0.95rem; text-transform: uppercase; }
.theme-c .chat-titles span { font-size: 0.72rem; color: rgba(243, 237, 225, 0.55); letter-spacing: 0.04em; }
.theme-c .chat-close { width: 36px; height: 36px; border: 0; background: none; color: var(--gold-2); font-size: 1.6rem; line-height: 1; cursor: pointer; }
.theme-c .chat-log { flex: 1; overflow-y: auto; padding: 16px; display: flex; flex-direction: column; gap: 10px; scroll-behavior: smooth; }
.theme-c .msg { max-width: 88%; padding: 10px 14px; font-size: 0.9rem; line-height: 1.5; }
.theme-c .msg-bot { align-self: flex-start; background: #1a1712; border-left: 2px solid var(--gold); }
.theme-c .msg-user { align-self: flex-end; background: var(--metal); color: #080808; }
.theme-c .typing { display: flex; gap: 5px; padding: 14px; }
.theme-c .typing span { width: 6px; height: 6px; border-radius: 50%; background: var(--gold-2); animation: toy-dot 1s infinite ease-in-out; }
.theme-c .typing span:nth-child(2) { animation-delay: 0.15s; }
.theme-c .typing span:nth-child(3) { animation-delay: 0.3s; }
@keyframes toy-dot { 0%, 80%, 100% { opacity: 0.25; transform: translateY(0); } 40% { opacity: 1; transform: translateY(-3px); } }
.theme-c .chat-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.theme-c .chip {
  font: inherit; font-size: 0.68rem; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 500;
  padding: 8px 11px; border: 1px solid rgba(214, 176, 74, 0.6); background: none; color: var(--gold-2);
  text-decoration: none; cursor: pointer; transition: background 0.2s, color 0.2s;
}
.theme-c .chip:hover { background: var(--gold); color: #080808; }
.theme-c .chip-wa { background: var(--metal); color: #080808; border-color: transparent; }
.theme-c .chat-cards { display: grid; gap: 8px; }
.theme-c .chat-card { display: grid; grid-template-columns: 76px 1fr; gap: 12px; padding: 10px; background: #14120e; border: 1px solid rgba(214, 176, 74, 0.3); }
.theme-c .chat-card img { width: 76px; height: 101px; object-fit: cover; }
.theme-c .chat-card-body strong { display: block; font-family: var(--display); font-weight: 500; letter-spacing: 0.12em; text-transform: uppercase; color: var(--gold-2); font-size: 0.9rem; }
.theme-c .chat-card-body em { display: block; font-family: var(--serif); font-size: 0.98rem; color: #e9dcc0; margin: 2px 0 4px; }
.theme-c .chat-card-body p { margin: 0 0 6px; font-size: 0.82rem; color: rgba(243, 237, 225, 0.8); }
.theme-c .chat-card-body ul { margin: 0 0 8px; padding: 0; list-style: none; font-size: 0.74rem; color: rgba(243, 237, 225, 0.6); }
.theme-c .chat-card-actions { display: flex; flex-wrap: wrap; gap: 6px; }
.theme-c .chat-card-actions .chip { padding: 6px 9px; font-size: 0.62rem; }
.theme-c .chat-list { display: grid; gap: 4px; }
.theme-c .chat-list a { display: grid; padding: 8px 12px; text-decoration: none; border: 1px solid rgba(214, 176, 74, 0.22); transition: border-color 0.2s; }
.theme-c .chat-list a:hover { border-color: var(--gold); }
.theme-c .chat-list strong { font-family: var(--display); font-weight: 500; letter-spacing: 0.12em; text-transform: uppercase; font-size: 0.8rem; color: var(--gold-2); }
.theme-c .chat-list span { font-size: 0.78rem; color: rgba(243, 237, 225, 0.7); }
.theme-c .chat-form { display: flex; gap: 8px; padding: 12px; border-top: 1px solid rgba(214, 176, 74, 0.3); }
.theme-c .chat-form input {
  flex: 1; min-width: 0; padding: 12px 14px; font: inherit; font-size: 0.92rem; color: #f3ede1;
  background: #14120e; border: 1px solid rgba(214, 176, 74, 0.35); border-radius: 0;
}
.theme-c .chat-form input:focus { outline: none; border-color: var(--gold); }
.theme-c .chat-send { width: 46px; border: 0; background: var(--metal); color: #080808; cursor: pointer; display: grid; place-items: center; }
.theme-c .chat-send svg { width: 20px; height: 20px; }
.theme-c .chat-foot { margin: 0; padding: 0 14px 10px; font-size: 0.68rem; color: rgba(243, 237, 225, 0.4); text-align: center; }

@media (max-width: 640px) {
  .chat-dock { right: 16px; bottom: 16px; gap: 26px; }
  .theme-c .chat-launcher { width: 50px; height: 50px; }
  .theme-c .chat-teaser { right: 66px; bottom: 84px; width: 210px; }
  .theme-c .chat-panel { left: 8px; right: 8px; top: 76px; bottom: 8px; width: auto; height: auto; }
  html.chat-open, html.chat-open body { overflow: hidden; }
}
/* the closed chat window must never cover the page */
.theme-c .chat-panel[hidden] { display: none; }
.theme-c .chat-panel:not(.open) { pointer-events: none; }
