:root {
  --brand-orange: #e67e22;
  --brand-orange-dark: #cf6a16;
  --brand-ink: #1f2937;
  --brand-paper: #fffaf6;
  --brand-line: #f1dfc8;
  --brand-shadow: 0 14px 40px rgba(126, 76, 28, 0.1);
}

html {
  scroll-behavior: smooth;
}

body {
  background: var(--brand-paper);
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

.site-logo,
header img[src*="logo"],
.logo-wrap img,
.brand-logo {
  display: block;
  height: 46px;
  width: auto;
  max-width: min(240px, 52vw);
  object-fit: contain;
}

.checkout-header {
  box-shadow: 0 1px 0 rgba(15, 23, 42, 0.06);
}

.checkout-header .logo {
  height: 48px;
  max-width: 220px;
  width: auto;
  object-fit: contain;
}

/* Oferta */
#root {
  width: 100%;
}

#root > div {
  margin-left: auto;
  margin-right: auto;
  max-width: 1200px;
  width: 100%;
}

#root header a[href="/"] img,
#root header img[src*="logo"] {
  height: 44px !important;
  max-height: 44px !important;
  max-width: min(220px, 58vw) !important;
  width: auto !important;
}

#root header a[href="/"] {
  align-items: center;
  display: inline-flex;
  min-height: 52px;
}

#root header {
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.05);
}

#root .max-w-\[1200px\] {
  margin-left: auto;
  margin-right: auto;
}

#root .text-price,
#root .text-3xl.text-price {
  letter-spacing: -0.03em;
}

#root button[class*="bg-primary"],
#root .bg-primary {
  box-shadow: 0 10px 24px rgba(230, 126, 34, 0.22);
}

#root .border-primary\/20,
#root [class*="border-primary"] {
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

#root .rounded-lg.border.bg-card,
#root .rounded-md.border.bg-card,
#root article.rounded-lg {
  border-radius: 18px !important;
  box-shadow: var(--brand-shadow);
}

#root .bg-secondary\/60,
#root .bg-muted\/40 {
  border-radius: 16px;
}

#root footer {
  background: linear-gradient(180deg, #fff 0%, #faf6f1 100%);
}

#root h1 {
  letter-spacing: -0.03em;
  line-height: 1.15;
}

#root .aspect-video,
#root video {
  border-radius: 18px;
  overflow: hidden;
  background: #111;
}

#root .snap-x > button,
#root .snap-x > img {
  border-radius: 12px;
}

#root .review-card,
#root [class*="review"] .rounded-lg {
  border-radius: 16px;
}

/* Blog */
.topbar {
  box-shadow: 0 8px 24px rgba(126, 76, 28, 0.06);
}

.brand-logo-link {
  align-items: center;
  display: inline-flex;
}

.recipe-card,
.hero-card {
  transition: transform 0.22s ease, box-shadow 0.22s ease;
}

.recipe-card:hover,
.hero-card:hover {
  transform: translateY(-3px);
}

.recipe-detail {
  box-shadow: var(--brand-shadow);
}

/* Checkout */
.checkout-main .panel,
.checkout-main .form-card {
  border-radius: 18px;
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.06);
}

.next-button,
.checkout-main button[type="submit"]:not(.ghost-button) {
  border-radius: 14px;
  box-shadow: 0 12px 28px rgba(250, 84, 1, 0.24);
  transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.next-button:hover,
.checkout-main button[type="submit"]:not(.ghost-button):hover {
  transform: translateY(-1px);
}

.countdown {
  border-radius: 14px;
}

.summary-card {
  border: 1px solid #f3f4f6;
}

.testimonial {
  border-radius: 18px;
}

.store-banner .banner-frame {
  border-radius: 16px;
  overflow: hidden;
}

@media (min-width: 768px) {
  #root > div {
    box-shadow: 0 0 0 1px rgba(15, 23, 42, 0.04), 0 24px 80px rgba(126, 76, 28, 0.08);
  }
}

@media (max-width: 820px) {
  .site-logo,
  header img[src*="logo"],
  .logo-wrap img,
  .brand-logo {
    height: 40px;
    max-width: min(200px, 62vw);
  }
}

.pedra-full-description {
  color: #374151;
  font-size: 0.95rem;
  line-height: 1.65;
}

.pedra-desc h3 {
  color: #111827;
  font-size: 1rem;
  font-weight: 700;
  margin: 1.25rem 0 0.5rem;
}

.pedra-desc p {
  margin: 0.75rem 0;
}

.pedra-desc ul {
  margin: 0.5rem 0 0.75rem;
  padding-left: 1.25rem;
}

.pedra-desc li {
  margin: 0.35rem 0;
}
