/* Shared personality layer for the public and internal catalogs. */
:root { --muted: #b5a58d; --atelier-peach: #e4a17e; --atelier-mint: #93cbb1; --atelier-lilac: #bca5e1; }
::selection { background: #c56b4c; color: #fff9f2; }
.hero-bg { background: radial-gradient(ellipse at 80% 25%, #603e224d, transparent 55%), #0f0d0a; }
.hero h1 em { position: relative; width: fit-content; }
.hero h1 em::after { content: ''; position: absolute; bottom: -.06em; left: 2%; width: 96%; height: .06em; border-radius: 50%; background: #c56b4c75; transform: rotate(-2deg); }
.hero-eyebrow { border-radius: 30px; padding: .55rem .85rem; background: #30231588; }
.atelier-sparks { position: absolute; inset: 0; z-index: 1; pointer-events: none; }
.atelier-spark,.section-spark { position: absolute; display: grid; place-items: center; animation: atelier-float 8s ease-in-out infinite; }
.atelier-spark img,.section-spark img { width: 100%; height: 100%; object-fit: contain; display: block; }
.spark-pets { width: 126px; height: 126px; top: 3%; right: 5%; --turn: 5deg; }
.spark-hanger { width: 108px; height: 108px; bottom: 1%; left: 0; --turn: -9deg; animation-delay: -2.4s; }
.spark-pets { animation-delay: -4.6s; }
.about-section,#personalize { position: relative; overflow: hidden; }
.about-inner,#personalize > div:not(.section-sparks) { position: relative; z-index: 1; }
.section-sparks { position: absolute; inset: 0; z-index: 0; pointer-events: none; }
.section-spark { width: 92px; height: 92px; opacity: .82; }
.about-sparks .section-spark:first-child { top: 4%; right: 3%; --turn: 8deg; }
.about-sparks .section-spark:last-child { bottom: 3%; left: 3%; width: 76px; height: 76px; --turn: -8deg; animation-delay: -3s; }
.personalize-sparks .section-spark:first-child { top: 2%; right: 3%; width: 94px; height: 94px; --turn: 7deg; animation-delay: -1.5s; }
.personalize-sparks .section-spark:last-child { bottom: 2%; left: 2%; width: 82px; height: 82px; --turn: -6deg; animation-delay: -4s; }
.hero-circle { border: 2px solid #bd99555c; }
.hero-ctas { align-items: center; }
.btn-primary, .btn-ghost { border-radius: 10px; }
.btn-primary { box-shadow: 0 3px 0 #743025; }
.section-eyebrow { color: var(--atelier-peach); }
.section-header h2 em { color: var(--gold); }
.product-card { --card-accent: var(--gold); border-radius: 16px; border-top: 3px solid var(--card-accent); background: linear-gradient(145deg,#ffffff03,transparent),var(--card); }
.product-card:nth-child(3n + 2) { --card-accent: var(--atelier-mint); }
.product-card:nth-child(3n) { --card-accent: var(--atelier-lilac); }
.product-card .product-img-wrap { overflow: hidden; }
.product-badge { border-radius: 0 0 10px 0; }
.categories { gap: .65rem; flex-wrap: wrap; }
.cat-btn { border-radius: 30px; transition: background .2s, border-color .2s, transform .2s; }
.feature { border: 1px solid #57422d80; border-radius: 14px; padding: 1rem; background: #ffffff03; }
.feature-icon { display: grid; place-items: center; flex-shrink: 0; width: 72px; height: 72px; }
.feature-art { width: 100%; height: 100%; object-fit: contain; }
.option-heading { display: flex; align-items: center; gap: .45rem; margin-bottom: .9rem; color: var(--cream); font-size: .85rem; font-weight: 500; }
.option-art { width: 44px; height: 44px; object-fit: contain; margin: -9px 0; }
.notice-art { width: 64px; height: 64px; flex-shrink: 0; object-fit: contain; }
.photo-notice-art { width: 76px; height: 76px; }
.catalog-callout > div > svg { display: none; }
.help-icon { width: 68px; height: 68px; flex-shrink: 0; object-fit: contain; }
.contact-link-icon img { width: 42px; height: 42px; object-fit: contain; display: block; }
.availability { position: relative; background: linear-gradient(100deg,#21291f,#252017,#28202e); border-block-color: #776237; }
.availability p { color: #d9c8aa; }
.availability strong { color: #f0d69c; }
.cta-box { border-radius: 20px; border-top: 3px solid var(--atelier-peach); background: radial-gradient(ellipse at 100% 0,#64513355,transparent 75%),var(--bg3); }
.elem-card { border-radius: 12px; }
.elem-card.selected { box-shadow: 0 0 0 2px #c9a84c55; }
.cor-btn { transition: transform .18s, box-shadow .18s; }
#fundo-resumo { border-left: 3px solid var(--gold) !important; }
.contact-link { border-radius: 12px; }
.footer-links { flex-wrap: wrap; }
@media (hover:hover) {
  .cat-btn:hover { transform: translateY(-2px); }
  .cor-btn:hover:not(:disabled) { transform: translateY(-3px); }
  .feature:hover { border-color: #a88846; }
  .product-card:hover { border-color: var(--card-accent); box-shadow: 0 12px 32px #0004; }
}
@keyframes atelier-float { 0%,100% { transform: translateY(0) rotate(var(--turn, 0deg)); } 50% { transform: translateY(-9px) rotate(calc(var(--turn, 0deg) + 3deg)); } }
html[data-page-hidden] * { animation-play-state: paused !important; }
@media (max-width:768px) {
  .spark-pets { width: 84px; height: 84px; top: 2%; right: 1%; }
  .spark-hanger { width: 72px; height: 72px; bottom: 4%; left: 2%; }
  .section-spark { display: none; }
  .feature { padding: .9rem; gap: .9rem; }
  .feature-icon { width: 72px; height: 72px; }
  .option-art { width: 40px; height: 40px; }.help-icon { width: 60px; height: 60px; }.notice-art { width: 58px; height: 58px; }.photo-notice-art { width: 66px; height: 66px; }
  .hero-circle { border-color: transparent; }
}
@media (prefers-reduced-motion:reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  .atelier-reveal { opacity: 1 !important; transform: none !important; }
}
@media print { .atelier-sparks,.section-sparks { display: none !important; } .atelier-reveal { opacity: 1 !important; transform: none !important; } }
