/* =========================================================
01. BASE GERAL DO SITE
Cores, fontes, reset e largura dos containers.
========================================================= */

/* =========================================================
02. CABEÇALHO, MENU, BUSCA E PERFIL
Edite aqui tamanhos do logo, menu superior, campo de busca e botão de perfil.
========================================================= */

/* =========================================================
03. HOME / BANNER / BENEFÍCIOS
Edite aqui o layout da página inicial, imagem principal e faixas de benefícios.
========================================================= */

/* =========================================================
04. CATÁLOGOS E CARDS DE PREÇO
Edite aqui os cards dos produtos, imagens, acordeões, quantidades e preços.
========================================================= */

/* =========================================================
05. PÁGINAS INTERNAS
Galeria, mascotes, manual, orçamento e contato.
========================================================= */

/* =========================================================
06. RODAPÉ, WHATSAPP FLUTUANTE, MODAL DE PERFIL E RESPONSIVO
========================================================= */


:root{--framboesa:#e5175b;--rosa-gelo:#f2d5db;--rosa-chiclete:#f59fb9;--neve:#fffbff;--feijao:#201c1d;--marrom:#6f5661;--linha:#f6b8c9;--sombra:rgba(110,45,71,.14);--titulo:"Lobster Two",Georgia,serif;--texto:"Montserrat Alternates",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--texto);background:var(--neve);color:var(--feijao)}a{color:inherit}img{max-width:100%;display:block}.container{width:min(1120px,calc(100% - 40px));margin:0 auto}.narrow{width:min(760px,calc(100% - 40px));text-align:center}
.top-strip{background:var(--framboesa);color:#fff;text-align:center;font-weight:900;font-size:.88rem;padding:10px 16px}.site-header{position:sticky;top:0;z-index:40;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:14px 20px;background:rgba(255,251,255,.96);border-bottom:1px solid var(--rosa-gelo);backdrop-filter:blur(10px)}.site-logo{width:132px}.main-nav{display:flex;justify-content:center;align-items:center;gap:16px;flex-wrap:nowrap}.nav-link{text-decoration:none;font-weight:900;font-size:.92rem;padding:8px 0;border-bottom:2px solid transparent;white-space:nowrap}.nav-link.active,.nav-link:hover{color:var(--framboesa);border-color:var(--framboesa)}.nav-tools{display:flex;align-items:center;gap:10px}.search-box{display:flex;align-items:center;gap:7px;padding:4px 2px;border-bottom:1px solid rgba(229,23,91,.35);color:rgba(32,28,29,.45)}.search-box input{width:110px;border:0;background:transparent;outline:0;font-family:var(--texto);font-weight:700}.profile-btn{width:42px;height:42px;border-radius:999px;border:1px solid var(--linha);background:#fff8fb;color:var(--framboesa);font-weight:900;cursor:pointer}.menu-toggle{display:none;background:var(--framboesa);color:#fff;border:0;border-radius:12px;font-size:24px;padding:8px 14px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border-radius:999px;text-decoration:none;font-weight:900;border:2px solid var(--framboesa);font-family:var(--texto);cursor:pointer;transition:.18s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--framboesa);color:#fff;box-shadow:0 14px 28px rgba(229,23,91,.18)}.btn-outline{background:transparent;color:var(--framboesa)}
.hero,.page-hero{background:linear-gradient(90deg,#fff9fc 0%,#fffbff 52%,#f7dfe7 100%)}.hero-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:18px;align-items:center;min-height:550px;padding:48px 0}.hero-copy h1{font-family:var(--titulo);font-size:clamp(2.7rem,4vw,4.15rem);line-height:.98;margin:18px 0 14px;letter-spacing:-.03em}.hero-copy p,.page-hero p,.section-title-wrap p{color:var(--marrom);font-size:1.06rem;line-height:1.7}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.eyebrow{display:inline-flex;align-items:center;justify-content:center;padding:10px 18px;border:1px solid var(--linha);background:#fff1f6;border-radius:999px;color:var(--framboesa);font-size:.88rem;font-weight:900;text-transform:uppercase;letter-spacing:.03em}.hero-art{display:flex;justify-content:flex-end;align-items:flex-start}.hero-art img{width:170%;max-width:none;transform:translateY(-20px);margin-right:-18%}.mini-benefits{display:flex;gap:18px;align-items:center;flex-wrap:nowrap;list-style:none;margin:34px 0 0;padding:0}.mini-benefits li{font-weight:900;white-space:nowrap;font-size:.95rem}.mini-benefits span,.feature-strip span{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;margin-right:8px;border-radius:50%;background:var(--rosa-gelo);color:var(--framboesa)}
.section,.section-soft,.compact-section{padding:54px 0}.section-soft{background:#fff8fb}.feature-strip{display:grid;grid-template-columns:repeat(3,1fr);background:#fff;border:1px solid var(--linha);border-radius:26px;box-shadow:0 18px 45px var(--sombra);overflow:hidden}.feature-strip.four-columns{grid-template-columns:repeat(4,1fr)}.feature-strip article{display:flex;align-items:center;gap:18px;padding:28px;border-right:1px dashed var(--linha)}.feature-strip article:last-child{border-right:0}.feature-strip h3,.step-card h3,.product-card h3,.pet-card h3{margin:0 0 8px;font-size:1.07rem}.feature-strip p,.notice-card p,.compact-card p{margin:0;color:var(--marrom);line-height:1.65}.two-col-small{display:grid;grid-template-columns:1fr 1fr;gap:24px}.notice-card,.compact-card,.product-card,.pet-card,.step-card,.check-card,.contact-card,.manual-preview{background:#fff;border:1px solid var(--linha);border-radius:24px;box-shadow:0 14px 35px var(--sombra);padding:28px}.notice-card h2,.compact-card h2,.section-title-wrap h2{font-family:var(--titulo);font-size:2rem;line-height:1.05;margin:14px 0 10px;color:var(--feijao)}.text-link{color:var(--framboesa);font-weight:900;text-decoration:none}
.page-hero{padding:46px 0}.mini-hero{padding:38px 0}.compact-hero{padding:44px 0}.page-hero h1{font-family:var(--titulo);font-size:clamp(2rem,2.8vw,2.75rem);line-height:1.06;margin:16px 0 10px}.artist-bg{background-color:#f9e7ed;background-image:linear-gradient(rgba(245,159,185,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(245,159,185,.18) 1px,transparent 1px);background-size:32px 32px}.section-title-wrap{text-align:center;margin:0 auto 34px;width:min(760px,100%)}.align-left{text-align:left;margin-left:0}.calendar-wrap{display:flex;justify-content:center;border:1px solid var(--linha);background:#fff;border-radius:24px;padding:18px;box-shadow:0 14px 35px var(--sombra)}.calendar-wrap iframe{width:100%;min-height:620px;border-radius:16px}
.product-catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.product-card{padding:0;overflow:hidden}.image-slot{min-height:180px;aspect-ratio:4/3;background:#fff4f8;display:grid;place-items:center;border-bottom:1px solid var(--linha);position:relative}.image-slot img{width:100%;height:100%;object-fit:contain;padding:16px}.image-placeholder{display:flex;line-height:1.6;text-align:center;align-items:center;justify-content:center;color:var(--framboesa);font-size:.86rem;padding:24px}.product-card-body{padding:24px}.product-card h3{font-size:1.5rem;color:var(--framboesa);margin:0 0 14px}.qty-box,.material-box{border:1px solid var(--linha);border-radius:18px;padding:14px 16px;margin-bottom:12px;background:#fff}.qty-box{background:#fff9fc}.qty-box strong,.material-box strong{display:block;color:var(--framboesa);font-size:.88rem;text-transform:uppercase;letter-spacing:.03em;margin-bottom:8px}.price-list{list-style:none;padding:0;margin:0}.price-list li{display:flex;justify-content:space-between;gap:20px;padding:6px 0;align-items:flex-start;border-bottom:1px dashed rgba(246,184,201,.6)}.price-list li:last-child{border-bottom:0}.price-list span{color:var(--marrom);line-height:1.45}.price-list b{white-space:nowrap;font-weight:900}.small-note{font-size:.93rem;line-height:1.6;color:var(--marrom);margin:10px 2px 0}.top-note{margin-top:12px;color:#7d5d69;font-size:.9rem}
.about-hero{display:grid;grid-template-columns:.8fr 1.2fr;gap:44px;align-items:center}.about-photo-card{background:#fff;border:1px solid var(--linha);border-radius:26px;padding:12px;box-shadow:0 14px 35px var(--sombra)}.about-photo-card img{border-radius:18px;width:100%;aspect-ratio:1/1;object-fit:cover}.about-copy h1{font-family:var(--titulo);font-size:clamp(2rem,2.8vw,3rem);line-height:1.08;margin:16px 0}.about-copy p,.pet-card p,.step-card p,.check-card li,.contact-card p{color:var(--marrom);line-height:1.7}
.gallery-title{font-family:var(--titulo);font-size:2rem;color:var(--framboesa);margin:26px 0 10px}.gallery-price-note{background:#fff8fb;border:1px solid var(--linha);border-radius:18px;padding:14px 18px;margin-bottom:18px;color:var(--marrom);font-weight:800}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.gallery-item{background:#fff;border:1px solid var(--linha);border-radius:22px;padding:12px;text-align:center;box-shadow:0 10px 25px rgba(110,45,71,.09)}.gallery-item img{width:100%;aspect-ratio:1/1;object-fit:contain;border-radius:16px;background:#fff7fa;padding:8px;margin-bottom:12px}.gallery-item span{display:block;font-weight:800;color:var(--feijao);line-height:1.4}
.pet-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.pet-card img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:18px;margin-bottom:16px}.steps-grid{display:grid;gap:18px}.steps-grid.four-steps{grid-template-columns:repeat(4,1fr)}.step-card span{display:grid;place-items:center;width:50px;height:50px;border-radius:50%;background:var(--framboesa);color:#fff;font-weight:900;margin-bottom:24px}.budget-builder{background:#fff;border:1px solid var(--linha);border-radius:26px;padding:32px;box-shadow:0 14px 35px var(--sombra)}.budget-form{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.budget-form label{display:grid;gap:8px;font-weight:800;color:var(--feijao)}.budget-form input,.budget-form textarea,.message-box textarea{width:100%;border:1px solid var(--linha);border-radius:16px;padding:14px 16px;font-family:var(--texto);background:#fff8fb;color:var(--feijao)}.full-field{grid-column:1/-1}.message-box{margin-top:24px}.message-box textarea{background:#fff;min-height:200px}
.manual-layout,.check-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.check-card ul{margin:0;padding-left:20px}.manual-preview-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.manual-preview{padding:12px}.manual-preview img{width:100%;border-radius:16px}.center-actions{text-align:center;margin-top:24px}
.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.contact-card{text-decoration:none}.contact-card span{font-size:2rem}.contact-card strong{color:var(--framboesa);font-size:.95rem}.footer{background:#fff3f7;border-top:1px solid var(--linha)}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1.2fr;gap:50px;padding:54px 0}.footer-logo{width:150px;margin-bottom:20px}.footer p{color:var(--marrom);line-height:1.7}.footer h3{color:var(--framboesa);margin:0 0 16px}.footer a{text-decoration:none;font-weight:800}.footer > .footer-grid a{display:block;margin:10px 0}.footer p a{display:inline}.footer-bottom{background:var(--framboesa);color:#fff;text-align:center;font-weight:900;padding:15px}
.floating-whatsapp{position:fixed;right:22px;bottom:22px;z-index:70;width:58px;height:58px;border-radius:999px;background:#25D366;color:white;text-decoration:none;display:grid;place-items:center;box-shadow:0 12px 28px rgba(37,211,102,.35)}.floating-whatsapp::before{content:"💬";font-size:24px}
.profile-modal{position:fixed;inset:0;background:rgba(32,28,29,.35);display:none;z-index:90;align-items:center;justify-content:center;padding:22px}.profile-modal.show{display:flex}.profile-card{position:relative;background:#fff;border:2px solid var(--linha);border-radius:26px;padding:34px;width:min(560px,100%);text-align:center;box-shadow:0 20px 60px rgba(32,28,29,.2)}.profile-card h2{font-family:var(--titulo);font-size:2.2rem;margin:12px 0 8px}.profile-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:22px}.profile-actions button,.modal-close{font-family:var(--texto);cursor:pointer}.profile-actions button{padding:14px 12px;border-radius:18px;border:1px solid var(--linha);background:#fff8fb;font-weight:900;color:var(--feijao)}.profile-actions button:hover{background:var(--framboesa);color:#fff;border-color:var(--framboesa)}.modal-close{position:absolute;right:14px;top:12px;border:0;background:transparent;color:var(--framboesa);font-size:28px}.access-lock{position:fixed;inset:0;background:rgba(32,28,29,.6);display:grid;place-items:center;z-index:85;padding:20px}.access-lock > div{background:#fff;border-radius:24px;padding:32px;max-width:520px;text-align:center;box-shadow:0 18px 44px rgba(0,0,0,.22)}.access-lock h2{font-family:var(--titulo);font-size:2rem;margin:0 0 10px}.hidden-by-search{display:none !important}.cute-list li{margin-bottom:8px}
@media(max-width:1320px){.site-logo{width:118px}.main-nav{gap:12px}.nav-link{font-size:.82rem}.hero-art img{width:150%;margin-right:-14%}}
@media(max-width:1100px){.site-header{display:flex;justify-content:space-between}.main-nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;padding:18px 24px;border-bottom:1px solid var(--linha);box-shadow:0 15px 30px var(--sombra)}.main-nav.open{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.menu-toggle{display:block}.hero-grid,.about-hero,.two-col-small,.product-catalog-grid,.pet-grid,.contact-grid,.manual-layout,.manual-preview-grid,.steps-grid.four-steps,.footer-grid,.gallery-grid{grid-template-columns:1fr}.feature-strip,.feature-strip.four-columns{grid-template-columns:1fr}.feature-strip article{border-right:0;border-bottom:1px dashed var(--linha)}.feature-strip article:last-child{border-bottom:0}.hero-art{justify-content:center}.hero-art img{width:100%;max-width:620px;transform:none;margin-right:0}.budget-form{grid-template-columns:1fr}}
@media(max-width:720px){.container,.narrow{width:min(100% - 28px,1120px)}.top-strip{font-size:.72rem}.site-header{padding:14px}.site-logo{width:122px}.search-box input{width:74px}.hero-grid{min-height:auto;padding:44px 0}.hero-copy h1{font-size:3rem}.hero-copy p br{display:none}.mini-benefits{flex-wrap:wrap}.page-hero h1{font-size:2.2rem}.section,.section-soft,.compact-section{padding:42px 0}.gallery-grid{grid-template-columns:repeat(2,1fr)}.profile-actions{grid-template-columns:1fr}.footer-grid{padding:42px 0;gap:24px}}

.access-lock[hidden]{display:none!important;}

.access-lock[hidden]{display:none!important;}
.center-actions{justify-content:center;gap:14px;margin-top:18px;flex-wrap:wrap}
.product-accordion{padding:0;overflow:hidden}
.product-accordion > summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;padding:24px 26px;background:#fff;border-radius:24px}
.product-accordion > summary::-webkit-details-marker{display:none}
.accordion-title{font-size:1.35rem;font-weight:900;color:var(--framboesa)}
.accordion-hint{font-size:.86rem;font-weight:900;color:var(--marrom);opacity:.9;text-transform:lowercase}
.accordion-arrow{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#fff0f5;color:var(--framboesa);font-weight:900;transition:.18s ease}
.product-accordion[open] .accordion-arrow{transform:rotate(180deg)}
.accordion-content{border-top:1px solid var(--linha)}
.product-accordion .image-slot{border-top:0}
.manual-main-grid{margin-top:0}
@media(max-width:720px){
  .product-accordion > summary{grid-template-columns:1fr auto;padding:20px}
  .accordion-hint{grid-column:1/-1;order:3}
}

/* Ajuste final: imagem sempre visível e abre/fecha abaixo da imagem */
.product-accordion{
  padding:0;
  overflow:hidden;
}
.product-accordion .accordion-static{
  padding:24px 26px 0;
}
.product-accordion .accordion-static h3{
  color:var(--framboesa);
  font-size:1.35rem;
  line-height:1.15;
  margin:0 0 16px;
}
.product-accordion .accordion-static .image-slot{
  border:1px solid var(--linha);
  border-radius:20px;
  overflow:hidden;
  margin:0 0 16px;
}
.product-accordion .accordion-details{
  border-top:1px solid var(--linha);
}
.product-accordion .accordion-details > summary{
  list-style:none;
  cursor:pointer;
  display:grid;
  grid-template-columns:1fr auto;
  gap:14px;
  align-items:center;
  padding:18px 26px;
  background:#fff;
}
.product-accordion .accordion-details > summary::-webkit-details-marker{
  display:none;
}
.product-accordion .accordion-hint{
  font-size:.9rem;
  font-weight:900;
  color:var(--marrom);
  text-transform:lowercase;
}
.product-accordion .accordion-arrow{
  width:34px;
  height:34px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#fff0f5;
  color:var(--framboesa);
  font-weight:900;
  transition:.18s ease;
}
.product-accordion .accordion-details[open] .accordion-arrow{
  transform:rotate(180deg);
}
.product-accordion .accordion-content{
  border-top:1px solid var(--linha);
}
.product-accordion .product-card-body{
  padding:24px 26px 26px;
}
@media(max-width:720px){
  .product-accordion .accordion-static{
    padding:20px 20px 0;
  }
  .product-accordion .accordion-details > summary{
    padding:16px 20px;
  }
}

/* =========================================================
AJUSTE FINAL: botão flutuante do WhatsApp com texto
========================================================= */
.floating-whatsapp{
  width:auto !important;
  min-width:220px !important;
  height:54px !important;
  padding:0 22px !important;
  border-radius:999px !important;
  font-size:.82rem !important;
  font-weight:900 !important;
  letter-spacing:.03em !important;
  text-transform:uppercase !important;
}
.floating-whatsapp::before{
  content:"ENTRE EM CONTATO AGORA" !important;
  font-size:.82rem !important;
}
@media(max-width:720px){
  .floating-whatsapp{
    min-width:185px !important;
    height:50px !important;
    padding:0 16px !important;
  }
  .floating-whatsapp::before{
    font-size:.74rem !important;
  }
}

/* =========================================================
AJUSTE FINAL: imagens dos produtos sempre quadradas e centralizadas
Use PNG/JPG 1080x1080 quando possível.
========================================================= */
.product-accordion .accordion-static .image-slot,
.product-card .image-slot{
  aspect-ratio: 1 / 1 !important;
  width: 100% !important;
  min-height: 0 !important;
  height: auto !important;
  display: grid !important;
  place-items: center !important;
  background: #fff4f8 !important;
  overflow: hidden !important;
}

.product-accordion .accordion-static .image-slot img,
.product-card .image-slot img,
.image-slot img{
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  transform: none !important;
}

/* Caso a imagem fique muito pequena visualmente, troque contain por cover acima. */

/* =========================================================
AJUSTE FINAL: botão flutuante do WhatsApp sem emoji, com texto
========================================================= */
.floating-whatsapp{
  width:auto !important;
  min-width:220px !important;
  height:54px !important;
  padding:0 22px !important;
  border-radius:999px !important;
  font-size:.82rem !important;
  font-weight:900 !important;
  letter-spacing:.03em !important;
  text-transform:uppercase !important;
  line-height:1 !important;
  gap:0 !important;
}
.floating-whatsapp::before{
  content:none !important;
}
@media(max-width:720px){
  .floating-whatsapp{
    min-width:185px !important;
    height:50px !important;
    padding:0 16px !important;
    font-size:.74rem !important;
  }
}

/* =========================================================
AJUSTE FINAL: tabela de preços dos imãs
========================================================= */
.price-table{margin-top:18px;}
.price-table h4{margin:0 0 12px;color:var(--framboesa);font-size:1rem;}
.price-group{margin:14px 0;padding:14px;border:1px solid var(--linha);border-radius:16px;background:#fffafc;}
.price-group h5{margin:0 0 10px;color:var(--marrom);font-size:.95rem;}
.price-list{list-style:none;padding:0;margin:0;display:grid;gap:8px;}
.price-list li{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:8px 0;border-bottom:1px dashed rgba(122,75,64,.22);}
.price-list li:last-child{border-bottom:0;}
.price-list b{color:var(--framboesa);white-space:nowrap;}

/* =========================================================
AJUSTE FINAL: categorias do catálogo geral
========================================================= */
.catalog-category-nav{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:28px 0 24px;
  padding:14px;
  border:1px solid var(--linha);
  border-radius:22px;
  background:#fffafc;
  position:static;
  top:auto;
  z-index:auto;
}
.category-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  border-radius:999px;
  background:#fff;
  border:1px solid var(--linha);
  color:var(--marrom);
  font-weight:900;
  font-size:.88rem;
  text-decoration:none;
}
.category-pill:hover,
.category-pill.active{
  background:var(--framboesa);
  color:#fff;
  border-color:var(--framboesa);
}
.catalog-category{
  margin:34px 0 44px;
  scroll-margin-top:140px;
}
.category-heading{
  margin-bottom:18px;
  padding:18px 20px;
  border-radius:22px;
  background:linear-gradient(135deg,#fff4f8,#fffaf0);
  border:1px solid var(--linha);
}
.category-heading h2{
  margin:0 0 6px;
  color:var(--framboesa);
  font-size:1.6rem;
}
.category-heading p{
  margin:0;
  color:var(--marrom);
  font-weight:700;
}
.category-product-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
}
@media(max-width:880px){
  .catalog-category-nav{
    position:static;
  }
  .category-product-grid{
    grid-template-columns:1fr;
  }
}

/* =========================================================
AJUSTE FINAL: categorias em blocos verticais
========================================================= */
.product-catalog-grid{
  display:block !important;
}
.catalog-category{
  display:block !important;
  width:100% !important;
  margin:34px 0 56px !important;
  scroll-margin-top:120px;
}
.category-heading{
  width:100% !important;
  margin:0 0 22px !important;
  box-sizing:border-box;
}
.category-product-grid{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:24px !important;
  align-items:start !important;
}
.category-product-grid .product-card,
.category-product-grid .product-accordion,
.product-card.product-accordion{
  height:auto !important;
  min-height:0 !important;
  align-self:start !important;
}
.product-accordion .accordion-details,
.product-accordion .accordion-content,
.product-accordion .product-card-body{
  height:auto !important;
  min-height:0 !important;
}

/* =========================================================
AJUSTE FINAL: menu de categorias recolhido
========================================================= */
.catalog-category-dropdown{
  margin:22px 0 28px !important;
  border:1px solid var(--linha);
  border-radius:22px;
  background:#fffafc;
  overflow:hidden;
}
.catalog-category-dropdown > summary{
  cursor:pointer;
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:16px 20px;
  color:var(--framboesa);
  font-weight:900;
  font-size:1rem;
}
.catalog-category-dropdown > summary::-webkit-details-marker{
  display:none;
}
.catalog-category-dropdown .dropdown-arrow{
  width:32px;
  height:32px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#fff0f5;
  color:var(--framboesa);
  transition:.18s ease;
}
.catalog-category-dropdown[open] .dropdown-arrow{
  transform:rotate(180deg);
}
.catalog-category-dropdown .catalog-category-nav{
  position:static !important;
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  margin:0 !important;
  padding:0 18px 18px !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
}
.catalog-category-dropdown:not([open]) .catalog-category-nav{
  display:none !important;
}

/* =========================================================
AJUSTE FINAL: rodapé mais compacto
========================================================= */
.footer{
  padding-top:24px !important;
}
.footer-grid{
  padding:22px 0 16px !important;
  gap:28px !important;
  align-items:flex-start !important;
}
.footer-logo{
  max-width:120px !important;
  margin-bottom:10px !important;
}
.footer p{
  margin:8px 0 !important;
  line-height:1.45 !important;
}
.footer h3{
  margin:0 0 12px !important;
}
.footer a{
  margin:7px 0 !important;
}
.footer-bottom{
  padding:10px 0 !important;
}

@media(max-width:880px){
  .category-product-grid{
    grid-template-columns:1fr !important;
  }
  .catalog-category{
    margin-bottom:42px !important;
  }
  .footer-grid{
    gap:22px !important;
  }
}

/* =========================================================
AJUSTE FINAL: barra de categorias aberta, não fixa
========================================================= */
.catalog-category-dropdown{
  display:block !important;
  border:0 !important;
  background:transparent !important;
  margin:0 !important;
  padding:0 !important;
}
.catalog-category-dropdown > summary{
  display:none !important;
}
.catalog-category-dropdown .catalog-category-nav,
.catalog-category-nav{
  position:static !important;
  top:auto !important;
  z-index:auto !important;
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  margin:22px 0 30px !important;
  padding:14px !important;
  border:1px solid var(--linha) !important;
  border-radius:22px !important;
  background:#fffafc !important;
}

/* =========================================================
AJUSTE FINAL: categorias grandes recolhíveis
========================================================= */
body[data-page="catalogo"] .product-catalog-grid{
  display:block !important;
}
body[data-page="catalogo"] .catalog-category{
  display:block !important;
  width:100% !important;
  margin:34px 0 58px !important;
  scroll-margin-top:120px;
  border:0 !important;
  background:transparent !important;
}
body[data-page="catalogo"] .catalog-category > summary.category-summary{
  list-style:none !important;
  cursor:pointer !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:16px !important;
  padding:0 !important;
}
body[data-page="catalogo"] .catalog-category > summary.category-summary::-webkit-details-marker{
  display:none !important;
}
body[data-page="catalogo"] .category-heading{
  flex:1 !important;
  width:100% !important;
  margin:0 0 22px !important;
  box-sizing:border-box !important;
}
body[data-page="catalogo"] .category-toggle-arrow{
  flex:0 0 auto;
  width:42px;
  height:42px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#fff0f5;
  color:var(--framboesa);
  font-weight:900;
  transition:.18s ease;
  margin-bottom:22px;
}
body[data-page="catalogo"] .catalog-category[open] .category-toggle-arrow{
  transform:rotate(180deg);
}
body[data-page="catalogo"] .category-product-grid{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:24px !important;
  align-items:start !important;
}
body[data-page="catalogo"] .category-product-grid .product-card,
body[data-page="catalogo"] .category-product-grid .product-accordion{
  height:auto !important;
  min-height:0 !important;
  align-self:start !important;
}
body[data-page="catalogo"] .product-accordion .accordion-details,
body[data-page="catalogo"] .product-accordion .accordion-content,
body[data-page="catalogo"] .product-accordion .product-card-body{
  height:auto !important;
  min-height:0 !important;
}

/* =========================================================
AJUSTE FINAL: Área do Artista separada e sem bug gigante
========================================================= */
body[data-page="artist"] .product-catalog-grid{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:24px !important;
  align-items:start !important;
}
body[data-page="artist"] .product-card,
body[data-page="artist"] .product-accordion{
  height:auto !important;
  min-height:0 !important;
  align-self:start !important;
  margin:0 !important;
}
body[data-page="artist"] .product-accordion .accordion-static{
  padding:22px 22px 0 !important;
}
body[data-page="artist"] .product-accordion .accordion-static .image-slot,
body[data-page="artist"] .product-card .image-slot{
  aspect-ratio:1 / 1 !important;
  max-height:360px !important;
  min-height:0 !important;
}
body[data-page="artist"] .product-accordion .accordion-details > summary{
  padding:16px 22px !important;
}

/* =========================================================
AJUSTE FINAL: rodapé bem mais compacto
========================================================= */
.footer{
  padding-top:12px !important;
}
.footer-grid{
  padding:14px 0 10px !important;
  gap:22px !important;
  align-items:flex-start !important;
}
.footer-logo{
  max-width:95px !important;
  margin-bottom:6px !important;
}
.footer p{
  margin:5px 0 !important;
  line-height:1.32 !important;
  font-size:.92rem !important;
}
.footer h3{
  margin:0 0 8px !important;
  font-size:1rem !important;
}
.footer a{
  margin:4px 0 !important;
  line-height:1.28 !important;
  font-size:.92rem !important;
}
.footer-bottom{
  padding:7px 0 !important;
  font-size:.8rem !important;
}
.footer .container{
  max-width:1100px !important;
}
@media(max-width:880px){
  body[data-page="catalogo"] .category-product-grid,
  body[data-page="artist"] .product-catalog-grid{
    grid-template-columns:1fr !important;
  }
  body[data-page="catalogo"] .catalog-category{
    margin-bottom:42px !important;
  }
  .footer-grid{
    gap:14px !important;
  }
}


/* =========================================================
INÍCIO: ajustes finais de publicação — Catálogo Geral
EDITE AQUI: visual da barra de categorias e abertura dos blocos grandes.
A barra superior de categorias não é fixa e rola junto com a página.
FIM: ajustes finais de publicação — Catálogo Geral
========================================================= */
body[data-page="catalogo"] .catalog-category-nav{
  position:static !important;
  top:auto !important;
  z-index:auto !important;
}
body[data-page="catalogo"] .catalog-category{
  scroll-margin-top:24px !important;
}

/* =========================================================
INÍCIO: ajustes finais de publicação — imagens do catálogo
EDITE AQUI: para trocar imagens, use assets/catalogo/produtos/ e mantenha PNG quadrado.
FIM: ajustes finais de publicação — imagens do catálogo
========================================================= */
body[data-page="catalogo"] .image-slot,
body[data-page="artist"] .image-slot{
  aspect-ratio:1 / 1 !important;
  background:#fff4f8 !important;
}
body[data-page="catalogo"] .image-slot img,
body[data-page="artist"] .image-slot img{
  object-fit:contain !important;
  object-position:center center !important;
}

/* =========================================================
INÍCIO: ajustes finais de publicação — Área do Artista
A Área do Artista usa grade própria para não herdar o layout recolhível do Catálogo Geral.
FIM: ajustes finais de publicação — Área do Artista
========================================================= */
body[data-page="artist"] .catalog-category,
body[data-page="artist"] .catalog-category-nav{
  display:none !important;
}
body[data-page="artist"] .product-catalog-grid{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:24px !important;
  align-items:start !important;
}

/* =========================================================
INÍCIO: ajustes finais de publicação — WhatsApp e rodapé compacto
EDITE AQUI: texto, posição e espaçamentos do botão/rodapé.
FIM: ajustes finais de publicação — WhatsApp e rodapé compacto
========================================================= */
.floating-whatsapp{
  right:22px !important;
  bottom:22px !important;
  width:auto !important;
  min-width:220px !important;
  height:54px !important;
  padding:0 22px !important;
  font-size:.82rem !important;
  font-weight:900 !important;
}
.floating-whatsapp::before{content:none !important;}
.footer-grid{padding:14px 0 10px !important;}
.footer-logo{max-width:95px !important;}
@media(max-width:880px){
  body[data-page="artist"] .product-catalog-grid{grid-template-columns:1fr !important;}
}

/* =========================================================
INÍCIO: EDITE AQUI: tipos de laminação nos produtos
Use este bloco para ajustar a aparência da lista de laminações exibida abaixo de “Quantidade por tamanho”.
FIM: tipos de laminação nos produtos
========================================================= */
.lamination-options .price-list li{
  display:block !important;
}
.lamination-options .price-list span,
.lamination-options .price-list b{
  display:block !important;
  white-space:normal !important;
}
.lamination-options .price-list b{
  margin-top:3px !important;
  line-height:1.45 !important;
}
