/* ============================================================
   ED ART — Design System compartilhado
   Identidade visual oficial (branding board ED.ART4):
   Areia #F3EBDD · Madeira #B8854A · Mel #C96A1D · Terracota #D0632C
   Azul Cacto #1A8B94 · Verde Mandacaru #96AB65 · Rosa #F0A2A7 · Grafite #2D2A28
   Tipografia: Fraunces (títulos) + Manrope (texto)
   Elementos: semicírculos orgânicos, ícones lineares, linhas de madeira
   ============================================================ */
:root{
  /* paleta oficial */
  --areia:#F3EBDD;
  --madeira:#B8854A;
  --mel:#C96A1D;
  --terracota:#D0632C;
  --azul-cacto:#1A8B94;
  --verde-mandacaru:#96AB65;
  --rosa:#F0A2A7;
  --grafite:#2D2A28;

  /* neutros derivados */
  --off-white:#FDF6EC;   /* fundo geral (do board) */
  --white:#FFFFFF;
  --bege:#F6EEDF;
  --ink:var(--grafite);

  --tx:var(--grafite);
  --tx-2:#6B6258;

  /* tipografia */
  --font-display:'Fraunces','Manrope',Georgia,serif;
  --font-body:'Manrope',Arial,sans-serif;

  /* layout */
  --max:1440px;
  --content:1240px;
  --gutter:32px;

  --radius:6px;
  --radius-img:10px;
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
img{display:block;max-width:100%}
body{
  font-family:var(--font-body);
  font-size:1.0625rem;
  line-height:1.65;
  color:var(--tx);
  background:var(--off-white);
  -webkit-font-smoothing:antialiased;
}
.wrap{max-width:var(--content);margin:0 auto;padding:0 var(--gutter)}
main{display:block}

/* ---------- Tipografia ---------- */
h1,h2,h3{font-family:var(--font-display);line-height:1.05;color:var(--ink);font-weight:600}
h1{font-size:clamp(2.8rem,6.5vw,5.8rem);letter-spacing:-.015em;line-height:1}
h2{font-size:clamp(2.1rem,4.2vw,3.6rem);letter-spacing:-.01em}
h3{font-size:clamp(1.25rem,1.9vw,1.6rem);font-weight:600}
.eyebrow{
  display:inline-block;font-family:var(--font-body);font-size:.8rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.08em;color:var(--terracota);margin-bottom:14px;
}
.lead{font-size:clamp(1.125rem,1.6vw,1.375rem);line-height:1.55;color:var(--tx-2)}
a{color:inherit}
::selection{background:var(--terracota);color:#fff}

/* ---------- Header sticky ---------- */
.site-header{
  position:sticky;top:0;z-index:60;
  background:rgba(253,246,236,.96);
  border-bottom:1px solid rgba(45,42,40,.08);
  transition:box-shadow .3s;
}
.site-header.is-scrolled{box-shadow:0 1px 0 rgba(45,42,40,.1)}
.header-inner{
  max-width:var(--max);margin:0 auto;padding:0 var(--gutter);
  height:84px;display:flex;align-items:center;justify-content:space-between;gap:24px;
  transition:height .25s;
}
.site-header.is-scrolled .header-inner{height:68px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;flex:0 0 auto}
.brand-logo{height:64px;width:auto}
.brand-logo-light{display:none}
.site-header .brand:hover .brand-logo{opacity:.85}
.main-nav{display:flex;align-items:center;gap:4px}
.main-nav a{
  font-size:.92rem;font-weight:600;text-decoration:none;color:var(--tx);
  padding:10px 13px;border-radius:4px;transition:color .2s,background .2s;
}
.main-nav a:hover{color:var(--terracota)}
.main-nav a[aria-current="page"]{color:var(--terracota)}
.header-cta{
  flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;
  font-size:.9rem;font-weight:700;text-decoration:none;
  border:2px solid var(--grafite);color:var(--grafite);
  padding:10px 20px;border-radius:4px;transition:background .2s,color .2s;
}
.header-cta:hover{background:var(--grafite);color:var(--off-white)}
.menu-toggle{display:none;background:none;border:0;cursor:pointer;padding:8px}
.menu-toggle svg{display:block}
@media (max-width:1099px){
  .main-nav,.header-cta{display:none}
  .menu-toggle{display:block}
  .brand-logo{height:50px}
}

/* ---------- Drawer mobile ---------- */
.drawer-backdrop{position:fixed;inset:0;background:rgba(45,42,40,.45);z-index:70;opacity:0;pointer-events:none;transition:opacity .25s}
.drawer{
  position:fixed;top:0;right:0;bottom:0;width:min(340px,86vw);z-index:80;
  background:var(--off-white);
  transform:translateX(100%);transition:transform .3s ease;
  display:flex;flex-direction:column;padding:24px;overflow-y:auto;
}
body.drawer-open .drawer{transform:translateX(0)}
body.drawer-open .drawer-backdrop{opacity:1;pointer-events:auto}
.drawer-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}
.drawer-close{background:none;border:0;cursor:pointer;padding:8px}
.drawer-nav{display:flex;flex-direction:column;gap:2px}
.drawer-nav a{
  font-family:var(--font-display);font-size:1.35rem;font-weight:600;text-decoration:none;
  color:var(--ink);padding:13px 6px;border-bottom:1px solid rgba(45,42,40,.08);
}
.drawer-nav a[aria-current="page"]{color:var(--terracota)}
.drawer-foot{margin-top:auto;padding-top:28px;font-size:.9rem;color:var(--tx-2)}
.drawer-foot a{color:var(--terracota);font-weight:600;text-decoration:none}

/* ---------- Botões ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  min-height:50px;padding:0 28px;border-radius:4px;
  font-family:var(--font-body);font-size:.95rem;font-weight:700;letter-spacing:.01em;
  text-decoration:none;cursor:pointer;border:2px solid transparent;
  transition:background .2s,color .2s,border-color .2s,transform .2s;
}
.btn-primary{background:var(--grafite);color:var(--off-white)}
.btn-primary:hover{background:var(--terracota);color:#fff;transform:translateY(-2px)}
.btn-secondary{background:transparent;color:var(--grafite);border-color:var(--grafite)}
.btn-secondary:hover{background:var(--grafite);color:var(--off-white)}
.btn-light{background:var(--off-white);color:var(--grafite)}
.btn-light:hover{background:#fff;transform:translateY(-2px)}
.btn .arr{transition:transform .25s}
.btn:hover .arr,.text-link:hover .arr{transform:translateX(5px)}
.text-link{
  display:inline-flex;align-items:center;gap:8px;
  font-weight:700;font-size:.95rem;text-decoration:none;color:var(--terracota);
}
.text-link:hover{color:var(--ink)}

/* ---------- Seções ---------- */
.section{padding:clamp(64px,9vw,140px) 0}
.section-head{margin-bottom:clamp(36px,5vw,56px)}
.section-head-row{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap}
.section-head-row .all-link{flex:0 0 auto;margin-bottom:6px}

/* fundos alternados = ritmo */
.bg-white{background:var(--white)}
.bg-bege{background:var(--bege)}
.bg-areia{background:var(--areia)}
.bg-azul{background:var(--azul-cacto);color:#EAF4F4}
.bg-azul h2,.bg-azul h3{color:#fff}
.bg-azul .lead{color:rgba(234,244,244,.9)}
.bg-rosa{background:var(--rosa);color:#4A2724}
.bg-rosa h2,.bg-rosa h3{color:#3E1F1D}
.bg-rosa .lead{color:#5C3330}
.bg-grafite{background:var(--grafite);color:#CFC5BB}
.bg-grafite h2{color:var(--off-white)}
.bg-mandacaru{background:var(--verde-mandacaru);color:#F2F5E9}
.bg-mandacaru h2,.bg-mandacaru h3{color:#fff}
.bg-mandacaru .lead{color:rgba(242,245,233,.9)}
.bg-madeira{background:var(--madeira);color:#F6EEDF}
.bg-madeira h2,.bg-madeira h3{color:#fff}
.bg-madeira .lead{color:rgba(246,238,223,.9)}
.bg-coral{background:var(--terracota);color:#FBEFE6}
.bg-coral h2,.bg-coral h3{color:#fff}
.bg-coral .lead{color:rgba(251,239,230,.92)}

/* ---------- Hero editorial ---------- */
.hero{position:relative;overflow:hidden}
.hero-grid{
  display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,4vw,64px);
  align-items:center;padding:clamp(56px,8vw,120px) 0;
}
.hero-copy .eyebrow{margin-bottom:18px}
.hero-copy h1{margin-bottom:22px}
.hero-copy .lead{max-width:34em;margin-bottom:34px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.hero-media{position:relative}
.hero-media .frame{aspect-ratio:4/5;border-radius:var(--radius-img);overflow:hidden;background:var(--bege)}
.hero-semicirculo{
  position:absolute;z-index:-1;width:64%;aspect-ratio:1;
  border-radius:50%;background:var(--areia);right:-4%;bottom:-8%;
  clip-path:inset(50% 0 0 0);
}
.hero-stripe{
  position:absolute;left:0;right:0;bottom:0;height:10px;
  background:repeating-linear-gradient(90deg,var(--terracota) 0 46px,var(--mel) 46px 92px,var(--azul-cacto) 92px 138px,var(--verde-mandacaru) 138px 184px);
}
@media (max-width:900px){
  .hero-grid{grid-template-columns:1fr}
  .hero-media .frame{aspect-ratio:16/10}
  .hero-copy h1{font-size:clamp(2.4rem,9.5vw,3.6rem)}
}

/* ---------- Página interna: hero ---------- */
.page-hero{position:relative;padding:clamp(56px,8vw,110px) 0 clamp(36px,5vw,64px)}
.page-hero h1{font-size:clamp(2.5rem,5.8vw,4.8rem);max-width:14em}
.page-hero .lead{max-width:38em;margin-top:22px}

/* ---------- Cards de descoberta ---------- */
.discover-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,36px)}
.discover-card{text-decoration:none;color:inherit;display:flex;flex-direction:column;gap:16px}
.discover-card .frame{aspect-ratio:4/5;border-radius:var(--radius-img);overflow:hidden;background:var(--bege)}
.discover-card h3{display:flex;align-items:center;gap:10px}
.discover-card h3 .arr{color:var(--terracota);transition:transform .25s}
.discover-card:hover h3 .arr{transform:translateX(5px)}
.discover-card p{color:var(--tx-2);font-size:.98rem}
@media (max-width:900px){.discover-grid{grid-template-columns:1fr}}

/* ---------- Imagens / frames ---------- */
.frame{position:relative;overflow:hidden;background:var(--bege)}
.frame img{width:100%;height:100%;object-fit:cover}
.frame.ph{display:flex;align-items:center;justify-content:center}
.zoomable img{transition:transform .45s ease}
.zoomable:hover img{transform:scale(1.03)}
figcaption,.caption{font-size:.85rem;color:var(--tx-2);line-height:1.4;margin-top:10px}

/* ---------- Grid de produtos ---------- */
.products-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(20px,2.5vw,32px)}
@media (max-width:1099px){.products-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:900px){.products-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:480px){.products-grid{grid-template-columns:1fr}}
.product-card{display:flex;flex-direction:column;gap:12px;text-decoration:none;color:inherit}
.product-card .frame{aspect-ratio:4/5;border-radius:var(--radius-img)}
.product-cat{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--terracota)}
.product-card h3{font-size:1.15rem}
.product-card .go{font-size:.9rem;font-weight:700;color:var(--terracota);display:inline-flex;align-items:center;gap:6px}
.product-card .go .arr{transition:transform .25s}
.product-card:hover .go .arr{transform:translateX(4px)}
.tag{
  display:inline-block;font-size:.72rem;font-weight:700;text-transform:uppercase;
  letter-spacing:.07em;padding:5px 12px;border-radius:999px;
  background:var(--rosa);color:#5A2C29;
}
.tag--novo{background:var(--verde-mandacaru);color:#fff}

/* ---------- Grid portfólio assimétrico ---------- */
.port-grid{display:grid;gap:clamp(20px,3vw,40px);grid-template-columns:repeat(12,1fr)}
.port-item{display:flex;flex-direction:column;gap:14px;text-decoration:none;color:inherit}
.port-item .frame{border-radius:var(--radius-img)}
.port-item.w7{grid-column:span 7}
.port-item.w5{grid-column:span 5}
.port-item.w6{grid-column:span 6}
.port-item.w4{grid-column:span 4}
.port-item.w8{grid-column:span 8}
.port-item .frame{aspect-ratio:4/3}
.port-item.tall .frame{aspect-ratio:4/5}
.port-meta{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--terracota)}
.port-item h3{font-size:clamp(1.3rem,2vw,1.8rem)}
.port-item .desc{color:var(--tx-2);font-size:.98rem}
@media (max-width:900px){
  .port-item.w7,.port-item.w5,.port-item.w6,.port-item.w4,.port-item.w8{grid-column:span 12}
}

/* ---------- Split imagem + texto ---------- */
.split{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(32px,5vw,72px);align-items:center}
.split .frame{aspect-ratio:4/3;border-radius:var(--radius-img)}
.split.reverse{grid-template-columns:1fr 1.2fr}
.split-body h2{margin-bottom:20px}
.split-body p{margin-bottom:18px;color:var(--tx-2)}
.split-body p strong{color:var(--ink)}
@media (max-width:900px){
  .split,.split.reverse{grid-template-columns:1fr}
  .split .frame{aspect-ratio:16/10}
}

/* ---------- Cards de conteúdo/blog ---------- */
.cards-3{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,36px)}
@media (max-width:900px){.cards-3{grid-template-columns:1fr;gap:28px}}
.post-card{display:flex;flex-direction:column;gap:14px;text-decoration:none;color:inherit}
.post-card .frame{aspect-ratio:3/2;border-radius:var(--radius-img)}
.post-meta{display:flex;align-items:center;gap:10px;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--terracota)}
.post-meta time{color:var(--tx-2);font-weight:600;letter-spacing:.02em;text-transform:none}
.post-card h3{font-size:1.25rem}
.blog-detail-body figure{margin:28px 0}.blog-detail-body figure img{width:100%;height:auto;border-radius:var(--radius-img)}.post-card p{color:var(--tx-2);font-size:.98rem}

/* Template editorial reutilizável dos posts — escopo exclusivo do BlogPost */
.blog-editorial{background:var(--off-white);padding:clamp(48px,7vw,92px) 0 clamp(64px,9vw,110px)}
.blog-editorial-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,300px);gap:clamp(28px,5vw,72px);align-items:start}
.blog-editorial-main{min-width:0}.blog-back-link{display:inline-block;color:var(--ink);font-size:.82rem;font-weight:700;text-decoration:none;margin-bottom:28px}.blog-back-link:hover{color:var(--terracota)}
.blog-editorial-meta{display:flex;align-items:center;gap:12px;color:var(--terracota);font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.blog-editorial-meta i{width:1px;height:14px;background:rgba(45,42,40,.25)}.blog-editorial-meta time{color:var(--tx-2);font-weight:600;letter-spacing:.04em;text-transform:none}
.blog-editorial-main h1{max-width:900px;margin:18px 0 14px;font-family:var(--font-display);font-size:clamp(2.8rem,6vw,5.8rem);line-height:.98;letter-spacing:-.035em;color:var(--ink)}
.blog-editorial-subtitle{max-width:680px;margin:0 0 34px;font-size:clamp(1.08rem,1.8vw,1.35rem);line-height:1.5;color:var(--tx-2)}
.blog-editorial-hero{margin:0 0 clamp(34px,5vw,62px)}.blog-editorial-hero-frame{aspect-ratio:16/8.8;position:relative;overflow:hidden;border-radius:var(--radius-img);background:var(--bege)}.blog-editorial-hero-frame img{width:100%;height:100%;object-fit:cover}.blog-editorial-hero figcaption{margin-top:10px;color:var(--tx-2);font-size:.78rem}
.blog-editorial-body{max-width:900px;text-align:left;font-size:1.05rem;line-height:1.8;color:var(--tx)}.blog-editorial-body p{margin:0 0 1.25em}.blog-editorial-body h2{margin:2.1em 0 .55em;font-family:var(--font-display);font-size:clamp(1.65rem,3vw,2.35rem);line-height:1.1;color:var(--terracota)}
.blog-editorial-highlight{font-family:var(--font-display);font-size:clamp(1.35rem,2.5vw,1.9rem);line-height:1.3;color:var(--terracota);margin:2em 0!important}.blog-editorial-quote{position:relative;margin:2.8em 0;padding:34px 34px 28px;background:var(--bege);border-radius:var(--radius-img);border-left:4px solid var(--terracota)}.blog-editorial-quote .quote-mark{display:block;height:28px;color:var(--terracota);font-family:Georgia,serif;font-size:4.5rem;line-height:.8}.blog-editorial-quote p{margin:0 0 14px;font-family:var(--font-display);font-size:clamp(1.35rem,2.5vw,2rem);font-style:italic;line-height:1.25;color:var(--ink)}.blog-editorial-quote cite{font-size:.75rem;font-style:normal;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--terracota)}
.blog-editorial-inline-image{margin:2em 0}.blog-editorial-inline-image img{display:block;width:100%;height:auto;border-radius:var(--radius-img)}.blog-editorial-inline-image figcaption{margin-top:8px;text-align:center;color:var(--tx2);font-size:.78rem}.blog-editorial-inline-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:2em 0}.blog-editorial-inline-gallery img{display:block;width:100%;aspect-ratio:1.15;object-fit:cover;border-radius:var(--radius-img)}.blog-editorial-separator{border:0;border-top:1px solid var(--line);margin:3em 0}.blog-editorial-spacer{height:42px}
.blog-editorial-sidebar{display:grid;gap:18px;padding-top:88px}.blog-side-card{padding:24px;background:var(--bege);border-radius:var(--radius-img)}.blog-side-card h2{margin:10px 0;font-family:var(--font-display);font-size:1.65rem;line-height:1.05;color:var(--ink)}.blog-side-card p{font-size:.88rem;line-height:1.55;color:var(--tx-2)}.blog-side-card a{color:var(--terracota);font-size:.78rem;font-weight:800;text-decoration:none}.blog-related-side{background:var(--white);border:1px solid rgba(45,42,40,.12)}.blog-related-side h2{font-size:1.45rem;margin-top:0}.blog-related-list{display:grid;gap:14px}.blog-related-item{display:grid;grid-template-columns:58px 1fr;gap:10px;color:inherit;text-decoration:none}.blog-related-thumb{width:58px;height:58px;border-radius:5px;background:var(--bege);overflow:hidden}.blog-related-thumb img{width:100%;height:100%;object-fit:cover}.blog-related-copy{display:grid;align-content:center;gap:3px}.blog-related-copy small,.blog-recommendation-copy small{font-size:.62rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--terracota)}.blog-related-copy strong{font-family:var(--font-display);font-size:1rem;line-height:1.05}.blog-related-copy time,.blog-recommendation-copy time{font-size:.68rem;color:var(--tx-2)}
.blog-recommendations{margin-top:clamp(54px,8vw,96px);padding-top:34px;border-top:1px solid rgba(45,42,40,.16)}.blog-recommendations-head h2{margin:8px 0 24px;font-family:var(--font-display);font-size:clamp(2rem,4vw,3rem);color:var(--terracota)}.blog-recommendations-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.blog-recommendation-card{position:relative;display:grid;grid-template-rows:130px auto;color:inherit;text-decoration:none;background:var(--white);border:1px solid rgba(45,42,40,.12);border-radius:var(--radius-img);overflow:hidden}.blog-recommendation-thumb{background:var(--bege)}.blog-recommendation-thumb img{width:100%;height:100%;object-fit:cover}.blog-recommendation-copy{display:grid;align-content:start;gap:5px;padding:16px 42px 18px 16px}.blog-recommendation-copy strong{font-family:var(--font-display);font-size:1.25rem;line-height:1.05}.blog-recommendation-arrow{position:absolute;right:14px;bottom:14px;width:27px;height:27px;display:grid;place-items:center;border:1px solid var(--terracota);border-radius:50%;color:var(--terracota)}
@media (max-width:900px){.blog-editorial-grid{grid-template-columns:minmax(0,1fr) 230px;gap:24px}.blog-editorial-main h1{font-size:clamp(2.5rem,6vw,4.7rem)}}
@media (max-width:700px){.blog-editorial{padding-top:34px}.blog-editorial-grid{display:block}.blog-editorial-sidebar{padding-top:42px}.blog-recommendations-grid{grid-template-columns:1fr}.blog-recommendation-card{grid-template-rows:180px auto}.blog-editorial-body{font-size:1rem}.blog-editorial-quote{padding:28px 24px 24px}}

.blog-sections{background:var(--areia)}
.blog-category-section{padding:clamp(22px,4vw,56px) 0 clamp(60px,8vw,112px);border-bottom:1px solid rgba(45,42,40,.12)}
.blog-category-section:last-child{border-bottom:0}
.blog-category-section .section-head{max-width:760px;margin-bottom:clamp(28px,4vw,44px)}
.blog-category-section .section-head h2{max-width:13em}
.post-read{display:inline-flex;align-items:center;gap:8px;color:var(--terracota);font-size:.9rem;font-weight:800;margin-top:auto}
.post-read span{transition:transform .25s ease}.post-card:hover .post-read span{transform:translateX(5px)}
.blog-category-list .post-card{background:var(--white);padding-bottom:22px;border-radius:var(--radius-img);overflow:hidden;box-shadow:0 8px 24px rgba(45,42,40,.05)}
.blog-category-list .post-card .frame{width:100%;border-radius:0}
.blog-category-list .post-card h3,.blog-category-list .post-card p,.blog-category-list .post-card .post-meta,.blog-category-list .post-card .post-read{margin-left:22px;margin-right:22px}
.blog-category-list .post-card .post-meta{margin-top:2px}

/* ---------- Banner CTA final ---------- */
.banner-cta{text-align:center;padding:clamp(64px,9vw,130px) 0}
.banner-cta h2{max-width:16em;margin:0 auto 18px}
.banner-cta .lead{max-width:36em;margin:0 auto 34px}

/* ---------- Detalhes / FAQ ---------- */
.detail-list{display:grid;gap:0;border-top:1px solid rgba(45,42,40,.12)}
.detail-list>div{display:grid;grid-template-columns:200px 1fr;gap:18px;padding:18px 0;border-bottom:1px solid rgba(45,42,40,.12)}
.detail-list dt{font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;color:var(--tx-2);padding-top:2px}
.detail-list dd{color:var(--tx)}
@media (max-width:640px){.detail-list>div{grid-template-columns:1fr;gap:6px}}

/* ---------- Filtros ---------- */
.filter-bar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:clamp(28px,4vw,44px)}
.filter-btn{
  font-family:var(--font-body);font-size:.85rem;font-weight:700;
  padding:9px 18px;border-radius:999px;cursor:pointer;
  background:transparent;border:1.5px solid rgba(45,42,40,.3);color:var(--ink);
  transition:background .2s,color .2s,border-color .2s;min-height:44px;
}
.filter-btn:hover{border-color:var(--ink)}
.filter-btn.is-active{background:var(--grafite);border-color:var(--grafite);color:var(--off-white)}

/* ---------- Estados vazios administráveis ---------- */
.empty-note{
  border:1.5px dashed rgba(45,42,40,.28);border-radius:var(--radius);
  padding:26px 24px;color:var(--tx-2);font-size:.95rem;background:rgba(255,255,255,.5);
}
.empty-note strong{color:var(--ink)}

/* ---------- Tabs (blog) ---------- */
.tabs{display:flex;gap:10px;flex-wrap:wrap;border-bottom:2px solid rgba(45,42,40,.12);margin-bottom:clamp(28px,4vw,44px)}
.tab-btn{
  font-family:var(--font-body);font-size:.95rem;font-weight:700;
  padding:12px 22px;border:0;background:transparent;cursor:pointer;color:var(--tx-2);
  border-bottom:3px solid transparent;margin-bottom:-2px;min-height:44px;
  transition:color .2s,border-color .2s;
}
.tab-btn:hover{color:var(--ink)}
.tab-btn.is-active{color:var(--terracota);border-bottom-color:var(--terracota)}
.tab-panel[hidden]{display:none}

/* ---------- Galeria Famosos (imagem + descrição abaixo) ---------- */
.famosos-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,36px)}
@media (max-width:1099px){.famosos-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.famosos-grid{grid-template-columns:1fr}}
.famoso-card{display:flex;flex-direction:column;gap:0}
.famoso-card .frame{aspect-ratio:3/4;border-radius:var(--radius-img)}
.famoso-desc{
  margin-top:14px;padding:16px 18px;background:var(--white);
  border:1px solid rgba(45,42,40,.1);border-radius:0 0 var(--radius-img) var(--radius-img);
}
.famoso-desc strong{display:block;font-family:var(--font-display);font-size:1.08rem;color:var(--ink);margin-bottom:6px}
.famoso-desc p{font-size:.93rem;color:var(--tx-2);line-height:1.55}
.famoso-desc .placeholder-note{font-size:.8rem;color:#9A8E80;font-style:italic}

/* ---------- Lista de posts (blog) ---------- */
.blog-list{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,36px)}
@media (max-width:1099px){.blog-list{grid-template-columns:repeat(2,1fr)}}
@media (max-width:700px){.blog-list{grid-template-columns:1fr}}
.search-box{display:flex;max-width:440px;margin-bottom:clamp(28px,4vw,40px)}
.search-box input{
  flex:1;min-height:48px;padding:0 16px;border:1.5px solid rgba(45,42,40,.3);
  border-right:0;border-radius:6px 0 0 6px;background:var(--white);
  font-family:var(--font-body);font-size:1rem;color:var(--ink);
}
.search-box input:focus{outline:2px solid var(--terracota);outline-offset:-2px}
.search-box button{
  min-height:48px;padding:0 20px;border:0;cursor:pointer;border-radius:0 6px 6px 0;
  background:var(--grafite);color:var(--off-white);font-weight:700;font-size:.9rem;
}

/* ---------- Artigo ---------- */
.article-wrap{max-width:820px;margin:0 auto}
.article-wrap .frame{aspect-ratio:16/9;border-radius:var(--radius-img);margin-bottom:34px}
.article-body{font-size:1.1rem;line-height:1.75;color:var(--tx);text-align:left}
.article-body p{margin-bottom:1.3em}
.article-body strong{color:var(--ink)}
.about-story .section-head{margin-bottom:30px}
.about-story .article-body p{max-width:760px}
.about-story .about-signature{margin-top:2em;color:var(--terracota);font-family:var(--font-display);font-size:clamp(1.25rem,2vw,1.55rem);line-height:1.35}

/* ---------- Galeria ---------- */
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,2vw,24px)}
.gallery-grid figure{min-width:0;display:flex;flex-direction:column}
.gallery-grid figcaption{display:flex;flex:1;flex-direction:column;gap:3px;margin-top:12px;color:var(--ink)}
.gallery-grid figcaption strong{display:block;font-family:var(--font-display);font-size:1.25rem;font-weight:800}
.gallery-grid figcaption span{display:block;font-size:.83rem;color:var(--tx-2)}
.gallery-grid .frame{aspect-ratio:1;border-radius:var(--radius-img)}
@media (max-width:700px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}

/* ---------- Sobre a Empresa: espaços para imagens ---------- */
.sobre-imgs{display:grid;grid-template-columns:1.35fr 1fr;gap:clamp(14px,1.8vw,22px)}
.sobre-imgs .main{grid-row:span 2;aspect-ratio:4/5;border-radius:var(--radius-img)}
.sobre-imgs .frame{aspect-ratio:4/3;border-radius:var(--radius-img)}
.img-slot-note{font-size:.78rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--tx-2);
  border:1.5px dashed rgba(45,42,40,.3);border-radius:6px;padding:8px 12px;text-align:center;margin-top:10px}
@media (max-width:900px){.sobre-imgs{grid-template-columns:1fr 1fr}.sobre-imgs .main{grid-row:auto;aspect-ratio:4/3}}
@media (max-width:600px){.sobre-imgs{grid-template-columns:1fr}.sobre-imgs .main{aspect-ratio:4/3}}

/* ---------- Seção O Artesão ---------- */
.artesao-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(32px,5vw,72px);align-items:center}
.artesao-grid .portrait{aspect-ratio:4/5;border-radius:var(--radius-img);max-width:460px}
.artesao-quote{
  font-family:var(--font-display);font-size:clamp(1.5rem,2.8vw,2.4rem);font-weight:600;
  line-height:1.2;letter-spacing:-.01em;margin-bottom:18px;
}
.artesao-quote .mark{color:var(--rosa)}
.bg-madeira .artesao-quote .mark{color:var(--areia)}
@media (max-width:900px){.artesao-grid{grid-template-columns:1fr}.artesao-grid .portrait{max-width:420px;margin:0 auto}}

/* ---------- Divisor faixa artesanal ---------- */
.strip{
  height:10px;
  background:repeating-linear-gradient(90deg,var(--terracota) 0 46px,var(--mel) 46px 92px,var(--azul-cacto) 92px 138px,var(--verde-mandacaru) 138px 184px);
}

/* ---------- Footer ---------- */
.site-footer{background:var(--grafite);color:var(--areia)}
.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr 1.3fr;gap:clamp(28px,4vw,56px);padding:clamp(56px,7vw,90px) 0 clamp(40px,5vw,64px)}
.footer-brand{display:flex;align-items:center;margin-bottom:18px}
.footer-brand .brand-logo{height:68px}
.footer-brand .brand-logo-light{display:block}
.footer-brand .brand-logo-dark{display:none}
.footer-about{color:rgba(243,235,221,.82);font-size:.95rem;max-width:30em;margin-bottom:22px}
.site-footer h4{
  font-family:var(--font-body);font-size:.8rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.1em;color:var(--mel);margin-bottom:18px;
}
.footer-nav{list-style:none;display:flex;flex-direction:column;gap:10px}
.footer-nav a{color:rgba(243,235,221,.9);text-decoration:none;font-size:.95rem}
.footer-nav a:hover{color:var(--mel)}
.footer-contact li{display:flex;gap:10px;align-items:flex-start;color:rgba(243,235,221,.9);font-size:.95rem;margin-bottom:12px}
.footer-contact{list-style:none}
.footer-contact a{color:var(--mel);text-decoration:none;font-weight:600}
.footer-contact-icons{display:flex;gap:16px;align-items:center}
.footer-contact-icons li{margin:0}
.footer-contact-icons a{display:inline-flex;color:var(--mel);transition:color .2s,transform .2s}
.footer-contact-icons a:hover{color:var(--rosa);transform:translateY(-2px)}
.footer-social{display:flex;gap:12px;margin-top:6px}
.footer-social a{
  display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;
  border:1px solid rgba(243,235,221,.4);border-radius:50%;color:var(--areia);
  transition:background .2s,color .2s,border-color .2s;
}
.footer-social a:hover{background:var(--terracota);border-color:var(--terracota);color:#fff}
.footer-bottom{
  border-top:1px solid rgba(243,235,221,.18);
  padding:22px 0;font-size:.85rem;color:rgba(243,235,221,.65);
  display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;
}
@media (max-width:1000px){.footer-top{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.footer-top{grid-template-columns:1fr}}

/* ---------- Reveals ---------- */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .5s ease,transform .5s ease}
.reveal.is-visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}

/* ---------- Focus ---------- */
a:focus-visible,button:focus-visible,input:focus-visible,[tabindex]:focus-visible{
  outline:3px solid var(--azul-cacto);outline-offset:2px;border-radius:2px;
}
.skip-link{
  position:absolute;left:-9999px;top:0;z-index:100;
  background:var(--grafite);color:#fff;padding:12px 20px;font-weight:700;text-decoration:none;
}
.skip-link:focus{left:12px;top:12px}

/* ---------- EDARTE COMPATIBILITY LAYOUT ---------- */
html,body{overflow-x:hidden}
/* The public HTML uses the classes below; keep this block last so the
   layout remains stable while older shared design rules coexist. */
.header-wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gutter);height:84px;display:flex;align-items:center;justify-content:space-between;gap:24px;transition:height .25s}
.site-header.is-scrolled .header-wrap{height:68px}
.logo{display:flex;align-items:center;flex:0 0 auto;text-decoration:none}
.logo-img{display:block;width:auto;height:44px;max-width:180px;object-fit:contain}
.nav-main{display:flex;align-items:center;gap:4px;margin-left:auto}
.nav-list{display:flex;align-items:center;gap:4px;list-style:none}
.nav-list a{font-size:.92rem;font-weight:600;text-decoration:none;color:var(--tx);padding:10px 13px;border-radius:4px;transition:color .2s,background .2s}
.nav-list a:hover,.nav-list a.active{color:var(--terracota)}
.header-cta{display:inline-flex;align-items:center;flex:0 0 auto}
.nav-link--accent{font-size:.9rem;font-weight:700;text-decoration:none;border:2px solid var(--grafite);color:var(--grafite);padding:10px 20px;border-radius:4px;transition:background .2s,color .2s}
.nav-link--accent:hover{background:var(--grafite);color:var(--off-white)}
.mobile-drawer{position:fixed;inset:0;z-index:70;background:rgba(45,42,40,.45);opacity:0;pointer-events:none;overflow:hidden;transition:opacity .25s}
.mobile-drawer.open{opacity:1;pointer-events:auto}
.mobile-drawer .drawer-nav{position:absolute;top:0;right:0;bottom:0;width:min(340px,86vw);background:var(--off-white);padding:88px 24px 24px;overflow-y:auto;transform:translateX(100%);transition:transform .3s ease}
.mobile-drawer.open .drawer-nav{transform:translateX(0)}
.mobile-drawer .drawer-nav ul{list-style:none;display:flex;flex-direction:column;gap:2px}
.mobile-drawer .drawer-nav a{display:block;font-family:var(--font-display);font-size:1.35rem;font-weight:600;text-decoration:none;color:var(--ink);padding:13px 6px;border-bottom:1px solid rgba(45,42,40,.08)}
.hero{max-width:var(--content);margin:0 auto;display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,4vw,64px);align-items:center;padding:clamp(56px,8vw,120px) var(--gutter)}
.hero-media{grid-column:1;grid-row:1;min-width:0}
.hero-text{grid-column:2;grid-row:1;min-width:0}
.hero-text h1{margin-bottom:22px}
.hero-text .lead{max-width:34em;margin-bottom:34px}
.hero-graphic{position:absolute;right:0;bottom:0;pointer-events:none}
.hero-graphic .shape{display:block;position:absolute;border-radius:50%;opacity:.25}
.hero-graphic .shape-1{width:260px;height:260px;background:var(--rosa);right:-100px;bottom:-140px}
.hero-graphic .shape-2{width:170px;height:170px;background:var(--azul-cacto);right:80px;bottom:-100px}
.sobre-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,72px);align-items:center}
.sobre-grid .frame{aspect-ratio:4/5;border-radius:var(--radius-img)}
.sobre-texto{max-width:38em}
.sobre-texto h3{margin-bottom:18px}
.sobre-texto p{color:var(--tx-2);margin-bottom:20px}
.artesao-grid .img-slot{aspect-ratio:4/5;border-radius:var(--radius-img);max-width:460px}
.artesao-texto{min-width:0}
.quote{font-family:var(--font-display);font-size:clamp(1.5rem,2.8vw,2.4rem);font-weight:600;line-height:1.2;letter-spacing:-.01em;margin-bottom:18px}
.bg-madeira .quote{color:var(--off-white)}
.grid-4col{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(20px,2.5vw,32px)}
.grid-3col{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,36px)}
.card{min-width:0}
.card-img{position:relative;overflow:hidden;background:var(--bege);border-radius:var(--radius-img)}
.card-img img{width:100%;height:100%;object-fit:cover}
.card--product .card-img{aspect-ratio:4/5;padding:22px;display:flex;flex-direction:column;justify-content:flex-end}
.card--content .card-img{aspect-ratio:3/2;margin-bottom:16px}
.masonry{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(20px,3vw,40px)}
.card--work{grid-column:span 5}
.card--w7{grid-column:span 7}
.card--work .card-img{aspect-ratio:4/3;padding:22px;display:flex;flex-direction:column;justify-content:flex-end}
.card--work h3,.card--product h3{color:var(--ink)}
.card--work .eyebrow,.card--product .eyebrow{position:relative;z-index:1}
.bg-branco{background:var(--white)}
.bg-terracota{background:var(--terracota);color:#FBEFE6}
.bg-terracota h2,.bg-terracota h3{color:#fff}
.bg-terracota .lead{color:rgba(251,239,230,.92)}
.menu-toggle{width:44px;height:44px;align-items:center;justify-content:center;color:var(--grafite)}
.menu-toggle .bar{display:block;width:22px;height:2px;margin:3px 0;background:currentColor;border-radius:2px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.3fr;gap:clamp(28px,4vw,56px);padding:clamp(56px,7vw,90px) 0 clamp(40px,5vw,64px)}
.footer-col{min-width:0}
.footer-logo{display:block;width:auto;height:44px;max-width:180px;margin-bottom:18px}
.footer-summary{color:rgba(243,235,221,.82);font-size:.95rem;max-width:30em;margin-bottom:22px}
.footer-copy,.footer-disclaimer{color:rgba(243,235,221,.65);font-size:.85rem;margin-top:18px}
.footer-col>h4{font-family:var(--font-body);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--mel);margin-bottom:18px}
.footer-col>ul{list-style:none;display:flex;flex-direction:column;gap:10px}
.footer-col>ul a{color:rgba(243,235,221,.9);text-decoration:none;font-size:.95rem}
.footer-col>ul a:hover{color:var(--mel)}
.footer-legal{grid-column:1/-1;border-top:1px solid rgba(243,235,221,.18);padding-top:22px;font-size:.85rem;color:rgba(243,235,221,.65)}
@media (max-width:1000px){.footer-grid{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.footer-grid{grid-template-columns:1fr}.footer-legal{grid-column:auto}}
.img-note{font-size:.78rem;color:var(--tx-2);margin-top:12px}
.link-arrow{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:.95rem;text-decoration:none;color:var(--terracota)}
.section-head>.link-arrow{margin-top:14px}
@media (max-width:1099px){.nav-main{display:none}.menu-toggle{display:block}.grid-4col{grid-template-columns:repeat(2,1fr)}}
@media (max-width:900px){
  .hero{grid-template-columns:1fr;padding-top:56px;padding-bottom:72px}
  .hero-media,.hero-text{grid-column:1;grid-row:auto}
  .hero-media{order:1}.hero-text{order:2}
  .hero-media .frame{aspect-ratio:16/10}
  .sobre-grid{grid-template-columns:1fr}
  .sobre-grid .frame{aspect-ratio:16/10;max-width:620px}
  .grid-3col{grid-template-columns:1fr}
  .masonry{grid-template-columns:1fr}
  .card--work,.card--w7{grid-column:span 1}
}
@media (max-width:600px){
  :root{--gutter:20px}
  .header-wrap{height:72px}
  .logo-img{height:36px;max-width:150px}
  .grid-4col{grid-template-columns:1fr}
}

/* ---------- HOME EDITORIAL ED.ART4 ---------- */
.site-header{position:fixed;left:0;right:0;width:100%;background:rgba(253,246,236,.97);backdrop-filter:blur(8px)}
body{padding-top:84px}
.home-hero{position:relative;min-height:calc(100vh - 84px);display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);gap:clamp(32px,7vw,110px);align-items:center;max-width:var(--content);margin:0 auto;padding:clamp(70px,9vw,150px) var(--gutter);overflow:hidden;background:var(--off-white)}
.home-hero-copy{position:relative;z-index:2;max-width:650px}
.home-hero h1{font-size:clamp(3.4rem,7vw,6.7rem);margin-bottom:28px}
.carved-title,.carve-heading{
  text-shadow:1px 1px 0 rgba(255,248,235,.72),-1px -1px 0 rgba(92,61,38,.22),0 3px 8px rgba(92,61,38,.1);
}
.carved-title{color:var(--madeira)}
.carved-title em{color:var(--terracota);white-space:nowrap;text-shadow:1px 1px 0 rgba(255,248,235,.72),-1px -1px 0 rgba(139,94,60,.4),0 3px 8px rgba(139,94,60,.14)}
.carved-title .carve-char,.carve-heading .carve-char{display:inline-block;white-space:pre;opacity:0;animation:carve-letter .5s cubic-bezier(.2,.7,.25,1) forwards}
.carved-title .carve-word,.carve-heading .carve-word{display:inline-block;white-space:nowrap}
@keyframes carve-letter{
  0%{opacity:0;clip-path:inset(0 100% 0 0);transform:translateY(4px);text-shadow:5px 2px 0 rgba(92,61,38,.2)}
  70%{opacity:1;clip-path:inset(0 0 0 0);transform:translateY(-1px);text-shadow:2px 2px 0 rgba(255,248,235,.78),-2px -2px 0 rgba(92,61,38,.3),0 3px 6px rgba(92,61,38,.12)}
  100%{opacity:1;transform:none}
}
@media (prefers-reduced-motion:reduce){.carved-title .carve-char,.carve-heading .carve-char{opacity:1;animation:none;clip-path:none}}
.home-hero h1 em{font-style:normal;color:var(--terracota)}
.home-hero .lead{max-width:31em;margin-bottom:34px}
.home-hero-art{position:relative;min-height:470px;background:var(--areia);border-radius:52% 48% 46% 54% / 42% 40% 60% 58%;overflow:hidden;color:var(--azul-cacto)}
.hero-sun{position:absolute;width:92px;height:92px;right:16%;top:12%;border-radius:50%;background:var(--mel)}
.hero-cactus{position:absolute;width:150px;height:225px;left:18%;bottom:13%;color:var(--azul-cacto)}
.hero-house{position:absolute;width:150px;height:125px;right:12%;bottom:9%;background:var(--rosa);border:4px solid var(--grafite);border-bottom:0;border-radius:8px 8px 0 0;transform:skewY(-1deg)}
.hero-house:before{content:"";position:absolute;left:-21px;top:-58px;width:130px;height:130px;background:var(--rosa);border-left:4px solid var(--grafite);border-top:4px solid var(--grafite);transform:rotate(45deg) scale(.7);z-index:-1}
.hero-line{position:absolute;left:8%;right:8%;bottom:7%;height:3px;background:var(--madeira);transform:rotate(-2deg)}
.home-about{background:var(--white)}
.home-about-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,9vw,140px);align-items:start}
.home-about h2,.artesao-section h2,.process-section h2,.gallery-section h2,.blog-section h2,.order-section h2{margin-bottom:20px}
.home-about-copy{max-width:560px}.home-about-copy p{margin-bottom:20px}.home-about-copy .lead{color:var(--ink)}
.home-about-heading{position:sticky;top:112px;align-self:start}
.home-about-media{aspect-ratio:4/5;margin-top:34px;border-radius:var(--radius-img);overflow:hidden;background:var(--bege);transition:transform .35s ease}
.home-about-media img{width:100%;height:100%;object-fit:cover}
.about-gallery-layer{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .55s ease}
.about-gallery-layer.is-active{opacity:1}
.home-about-media.is-changing{transform:scale(.985)}
.home-about-story p{max-width:560px}
.home-about-story .about-signature{margin-top:2em;color:var(--terracota);font-family:var(--font-display);font-size:clamp(1.25rem,2vw,1.55rem);line-height:1.35}
.artesao-section{color:var(--off-white)}.artesao-section h2{color:var(--off-white)}
.eyebrow-light{color:var(--areia)}
.artesao-overlap{position:relative;min-height:560px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(30px,6vw,90px)}
.artesao-image{border:8px solid var(--off-white);box-shadow:12px 14px 0 rgba(45,42,40,.18);background:var(--bege)}
.artesao-image-primary{width:min(100%,450px);aspect-ratio:4/5;z-index:1}
.artesao-image-secondary{position:absolute;width:min(48%,300px);aspect-ratio:4/5;left:32%;bottom:-2%;z-index:2;border-color:var(--rosa);box-shadow:10px 10px 0 var(--azul-cacto)}
.artesao-copy{position:relative;z-index:3;max-width:450px;margin-left:auto}.artesao-copy p:not(.artesao-quote){color:rgba(243,235,221,.88);margin-bottom:24px}.artesao-quote{font-family:var(--font-display);font-size:clamp(1.8rem,3.2vw,3rem);line-height:1.1;color:var(--areia);margin-bottom:24px}
.image-note{font-size:.8rem;color:rgba(243,235,221,.65);margin-top:24px}
.process-section{background:var(--off-white)}.process-section .section-head{max-width:650px}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(18px,3vw,36px)}
.process-step{position:relative}.process-number{font-family:var(--font-display);font-size:1.25rem;color:var(--terracota);margin-bottom:12px}.process-image{aspect-ratio:4/3;border-radius:var(--radius-img);margin-bottom:18px;background:var(--bege)}.process-step h3{margin-bottom:8px}.process-step p{font-size:.94rem;color:var(--tx-2)}
.gallery-section{background:var(--areia)}.craft-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,3vw,42px)}.craft-gallery figure{min-width:0;display:flex;flex-direction:column}.craft-gallery .frame{aspect-ratio:1;border-radius:var(--radius-img);background:var(--off-white)}.craft-gallery figcaption{display:flex;flex:1;flex-direction:column;gap:3px;margin-top:12px;color:var(--ink)}.craft-gallery figcaption strong{font-family:var(--font-display);font-size:1.25rem}.craft-gallery figcaption span{font-size:.83rem;color:var(--tx-2)}
.blog-section{background:var(--white)}.blog-teasers{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,3vw,42px)}.blog-teasers article .frame{aspect-ratio:3/2;background:var(--bege);border-radius:var(--radius-img);margin-bottom:18px}.blog-teasers article .eyebrow{margin-bottom:8px}.blog-teasers h3{margin-bottom:8px}.blog-teasers p{font-size:.94rem;color:var(--tx-2)}
.order-section{background:var(--grafite);color:var(--areia)}.order-card{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(32px,8vw,120px)}.order-card h2{color:var(--areia)}.order-card .lead{color:rgba(243,235,221,.84);margin-bottom:28px}.btn-teal{background:var(--azul-cacto);color:#fff}.btn-teal:hover{background:var(--madeira);color:#fff;transform:translateY(-2px)}.footer-order{color:var(--rosa);font-weight:700;text-decoration:none}.footer-order:hover{color:var(--off-white)}
@media (max-width:1000px){.process-grid{grid-template-columns:repeat(2,1fr)}.artesao-overlap{min-height:500px}.artesao-image-secondary{left:28%}.footer-top{grid-template-columns:1fr 1fr}}
@media (max-width:760px){body{padding-top:72px}.home-hero{min-height:auto;grid-template-columns:1fr;padding-top:70px;padding-bottom:70px}.home-hero-art{min-height:330px;order:-1}.hero-cactus{height:170px;width:115px}.hero-house{transform:scale(.75);transform-origin:bottom right}.home-about-grid,.order-card{grid-template-columns:1fr;gap:32px}.home-about-heading{position:static}.home-about-media{aspect-ratio:4/5;max-height:72svh;max-width:min(480px,88%);margin-top:28px;margin-left:auto;margin-right:auto}.artesao-overlap{display:flex;flex-direction:column;align-items:stretch;min-height:0}.artesao-image-primary{width:78%;margin:0 auto}.artesao-image-secondary{position:relative;width:48%;left:auto;bottom:auto;margin:-100px 4% 0 auto}.artesao-copy{margin:34px 0 0}.craft-gallery,.blog-teasers{grid-template-columns:1fr 1fr}.craft-gallery figure:last-child,.blog-teasers article:last-child{grid-column:1/-1;max-width:calc(50% - 12px)}}
@media (max-width:520px){.process-grid,.craft-gallery,.blog-teasers{grid-template-columns:1fr}.craft-gallery figure:last-child,.blog-teasers article:last-child{grid-column:auto;max-width:none}.home-hero h1{font-size:clamp(2.5rem,12vw,3.4rem);line-height:1.02;overflow-wrap:break-word}.footer-top{grid-template-columns:1fr}}

/* Ajuste mobile exclusivo da home: preservar conteúdo e enquadramento da hero */
@media (max-width:760px){
  .home-hero{min-width:0}
  .home-hero-copy{min-width:0}
  .carved-title em{white-space:normal}
  .home-hero-art{min-height:0;aspect-ratio:4 / 5}
  .home-hero-art.frame>.hero-fill-image{object-fit:contain;object-position:center;background:var(--bege)}
  .hero-actions{align-items:flex-start}
}

/* Hero: moldura editável para a imagem principal */
.home-hero-art{background:var(--areia);border-radius:52% 48% 46% 54% / 42% 40% 60% 58%;padding:0}
.hero-image-frame{position:absolute;inset:12% 12% 13%;z-index:1;overflow:hidden;background-color:var(--bege);background-size:cover;background-position:center;border:10px solid var(--off-white);outline:3px solid var(--grafite);outline-offset:-13px;box-shadow:14px 14px 0 var(--terracota);transform:rotate(2deg);border-radius:4px}
.hero-image-frame:empty:after{content:'Adicione uma imagem';position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:clamp(1.1rem,2vw,1.6rem);color:var(--tx-2);background:rgba(253,246,236,.18)}
.hero-image-frame img{width:100%;height:100%;object-fit:cover}
.hero-sun{z-index:2;pointer-events:none}.hero-line{z-index:2;pointer-events:none}
@media (max-width:760px){.hero-image-frame{inset:11% 11% 14%;border-width:8px;outline-offset:-11px;box-shadow:10px 10px 0 var(--terracota)}.hero-sun{width:66px;height:66px}}

/* A forma orgânica do Hero é o próprio container da fotografia. */
.home-hero-art.frame{position:relative;padding:0;overflow:hidden;background-color:var(--bege);background-size:cover;background-position:center}
.home-hero-art.frame>.hero-fill-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:1}
.home-hero-art.frame>.hero-sun,.home-hero-art.frame>.hero-line{z-index:2}
.blog-gallery{position:relative;isolation:isolate}
.blog-gallery-layer{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;z-index:1;transition:opacity 700ms ease}
.blog-gallery-layer.is-active{opacity:1}
@media (prefers-reduced-motion:reduce){.blog-gallery-layer{transition:none}}

/* Narrativa editorial da seção O Artesão */
.artesao-overlap>.artesao-copy{grid-column:2;grid-row:1;align-self:start;margin-top:0}
.artesao-overlap>.artesao-image-primary{grid-column:1;grid-row:1;align-self:start}
.artesao-intro{font-size:clamp(1.15rem,1.8vw,1.45rem);line-height:1.55;color:var(--off-white);max-width:29em;margin-bottom:clamp(38px,5vw,64px)}
.artesao-story{display:flex;flex-direction:column;gap:clamp(28px,4vw,48px)}
.artesao-story-block{border-top:1px solid rgba(243,235,221,.35);padding-top:18px}
.artesao-story-block h3{font-size:clamp(1.2rem,1.8vw,1.55rem);color:var(--rosa);margin-bottom:9px}
.artesao-story-block p{color:rgba(243,235,221,.86);max-width:34em;line-height:1.6}
.artesao-signature{font-family:var(--font-display);font-size:clamp(1.35rem,2.2vw,2rem);line-height:1.2;color:var(--areia);border-top:2px solid var(--rosa);padding-top:20px;margin-top:clamp(38px,5vw,64px);max-width:22em}
.artesao-overlap>.artesao-image-secondary{grid-column:1;grid-row:1}
@media (max-width:760px){
  .artesao-overlap>.artesao-copy{order:1}
  .artesao-overlap>.artesao-image-primary{order:2}
  .artesao-overlap>.artesao-image-secondary{order:3}
}

/* Mesma hierarquia editorial na página A Empresa */
.artesao-page-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(36px,7vw,110px);align-items:start}
.artesao-page-copy{grid-column:1;grid-row:1;max-width:620px}
.artesao-page-layout>.portrait{grid-column:2;grid-row:1;width:100%;max-width:420px;margin-left:auto;aspect-ratio:4/5;border:8px solid var(--off-white);box-shadow:12px 14px 0 rgba(45,42,40,.18)}
.artesao-page-layout .artesao-intro{margin-bottom:clamp(38px,5vw,64px)}
@media (max-width:760px){
  .artesao-page-layout{display:flex;flex-direction:column;gap:34px}
  .artesao-page-copy{order:1;max-width:none}
  .artesao-page-layout>.portrait{order:2;width:78%;margin:0 auto}
}

/* Ajuste: segunda foto encostada no canto inferior direito da principal. */
.artesao-overlap{
  grid-template-columns:minmax(0,450px) minmax(0,1fr);
}
.artesao-image-primary{
  width:100%;
}
.artesao-image-secondary{
  width:min(48%,300px);
  left:auto;
  right:calc(100% - 450px);
  bottom:12%;
  right:calc(100% - 450px - 28px);
}
@media (max-width:1000px){
  .artesao-overlap{grid-template-columns:minmax(0,420px) minmax(0,1fr)}
  .artesao-image-secondary{width:min(48%,280px);right:calc(100% - 420px - 24px);bottom:12%}
}
@media (max-width:760px){
  .artesao-overlap{display:flex}
  .artesao-image-primary{width:78%;margin:0 auto}
  .artesao-image-secondary{position:relative;width:48%;left:auto;right:auto;bottom:auto;margin:-15vw 7% 0 auto}
}

.gallery-more{display:flex;justify-content:center;margin-top:clamp(34px,5vw,56px)}
.blog-post h1{max-width:900px;margin:22px 0 34px;font-size:clamp(2.5rem,6vw,5.5rem)}
.blog-post>.wrap>.post-meta{margin-top:34px}
.post-hero{width:min(100%,900px);aspect-ratio:16/9;border-radius:var(--radius-img);background:var(--bege);margin-bottom:clamp(32px,5vw,64px)}
.post-body{max-width:900px;margin:0;text-align:left;font-size:1.08rem;line-height:1.75}
.post-body .lead{font-size:clamp(1.2rem,2vw,1.5rem);line-height:1.55;color:var(--ink);margin-bottom:28px}
.post-body p{margin-bottom:24px}
.post-gallery{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:38px}
.post-gallery .frame{aspect-ratio:1;border-radius:var(--radius-img);background:var(--bege)}
.post-card{transition:transform .3s ease}
.post-card:hover{transform:translateY(-4px)}
@media (max-width:700px){.post-gallery{grid-template-columns:1fr}.blog-post h1{margin-bottom:26px}}

.home-hero-art,
.artesao-image,
.process-image,
.craft-gallery .frame,
.gallery-grid .frame{
  transition:transform .45s cubic-bezier(.22,.61,.36,1),box-shadow .45s ease;
  will-change:transform;
}
@media (hover:hover) and (pointer:fine){
  .home-hero-art:hover,
  .artesao-image:hover,
  .process-image:hover,
  .craft-gallery .frame:hover,
  .gallery-grid .frame:hover{
    transform:translateY(-6px) scale(1.025) rotate(-.35deg);
  }
}
@media (hover:none), (pointer:coarse){
  .home-hero-art.is-in-view,
  .artesao-image.is-in-view,
  .process-image.is-in-view,
  .craft-gallery .frame.is-in-view,
  .gallery-grid .frame.is-in-view{
    transform:translateY(-5px) scale(1.015);
  }
}



/* ---------- Rodapé editorial ED.ARTE ---------- */
.site-footer{position:relative;overflow:hidden}
.site-footer:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.09;background:radial-gradient(circle at 88% 28%,var(--terracota) 0 3px,transparent 4px),linear-gradient(135deg,transparent 0 72%,var(--areia) 72% 72.5%,transparent 72.5%),radial-gradient(ellipse at 93% 88%,var(--azul-cacto) 0 42px,transparent 43px);background-size:130px 130px,100% 100%,auto}
.site-footer>.wrap{position:relative;z-index:1}
.footer-top{grid-template-columns:minmax(0,1.35fr) minmax(150px,.7fr) minmax(0,1.2fr);gap:clamp(42px,7vw,112px);padding:clamp(64px,8vw,104px) 0 clamp(52px,6vw,78px)}
.footer-brand-column,.footer-navigation,.footer-orders{min-width:0}
.footer-brand{margin-bottom:20px}
.footer-brand .brand-logo{height:76px;width:auto}
.footer-about{font-size:1rem;line-height:1.65;max-width:25em;margin-bottom:18px}
.footer-signature{font-family:var(--font-display);font-size:clamp(1.35rem,2.2vw,1.75rem);line-height:1.2;color:var(--terracota);margin:0 0 24px}
.footer-social{gap:10px;margin:0 0 24px}
.footer-social a{width:44px;height:44px;border-color:rgba(243,235,221,.36)}
.footer-location{display:flex;align-items:center;gap:9px;color:rgba(243,235,221,.68);font-size:.88rem;margin:0}
.footer-location svg{color:var(--terracota);flex:0 0 auto}
.site-footer h4{font-size:.78rem;letter-spacing:.14em;margin-bottom:22px}
.footer-nav{gap:13px}
.footer-nav a{font-size:1rem;transition:color .2s,transform .2s}
.footer-nav a:hover{transform:translateX(3px)}
.footer-orders h2{font-family:var(--font-display);font-size:clamp(2rem,3.6vw,3.25rem);line-height:.98;color:var(--areia);margin:0 0 20px}
.footer-orders p{max-width:30em;color:rgba(243,235,221,.78);line-height:1.65;margin:0 0 28px}
.footer-order-button{display:inline-flex;background:var(--azul-cacto);color:#fff;border:0;min-height:48px;padding:12px 20px}
.footer-order-button:hover{background:var(--terracota);color:#fff}
.footer-bottom{align-items:center;padding:24px 0 28px;gap:20px}
.footer-legal{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.footer-legal a{color:rgba(243,235,221,.72);text-decoration:none}
.footer-privacy{color:rgba(243,235,221,.72)}
.footer-legal a:hover{color:var(--mel)}
.footer-motto{color:rgba(243,235,221,.72)}
.footer-cactus{display:inline-block;vertical-align:middle;color:var(--terracota);width:18px;height:22px;margin-left:4px}
@media (max-width:1000px){.footer-top{grid-template-columns:1fr 1fr;gap:52px}.footer-brand-column{grid-column:1/-1}.footer-orders{grid-column:2;grid-row:2}}
@media (max-width:600px){.footer-top{grid-template-columns:1fr;gap:44px;padding-top:56px}.footer-brand-column,.footer-orders{grid-column:auto;grid-row:auto}.footer-orders h2{font-size:2.55rem}.footer-order-button{width:min(100%,320px);justify-content:center}.footer-bottom{align-items:flex-start;flex-direction:column}.footer-legal{gap:10px 18px;flex-direction:column;align-items:flex-start}}


/* Ajustes da coluna da marca e dos contatos de encomenda */
.footer-brand-column{text-align:center}
.footer-brand{justify-content:center}
.footer-brand .brand-logo{height:96px}
.footer-brand-column .footer-about{margin-left:auto;margin-right:auto}
.footer-social{justify-content:center}
.footer-location{justify-content:center}
.footer-order-links{display:flex;flex-wrap:wrap;align-items:center;gap:18px}
.footer-instagram-link{color:var(--mel);font-weight:700;text-decoration:none;transition:color .2s,transform .2s}
.footer-instagram-link:hover{color:var(--rosa);transform:translateX(3px)}
@media (max-width:600px){.footer-order-links{align-items:stretch;flex-direction:column;width:min(100%,320px)}.footer-order-button{width:100%}.footer-instagram-link{text-align:center}}


/* Ajuste final do rodapé: fundo sólido e fechamento vertical */
.site-footer:before{display:none}
.footer-brand .brand-logo{height:120px}
.footer-bottom{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:10px}
.footer-legal{display:block}
.footer-motto{display:block}
@media (max-width:600px){.footer-bottom{gap:10px}.footer-brand .brand-logo{height:108px}}


/* Fechamento do rodapé sem divisória extra */
.footer-bottom{border-top:0;flex-direction:row;align-items:center;justify-content:space-between;gap:20px}
.footer-legal{display:block}
.footer-motto{display:block;margin-left:auto;text-align:right}
@media (max-width:600px){.footer-bottom{flex-direction:column;align-items:flex-start;gap:10px}.footer-motto{margin-left:0;text-align:left}}


/* Ajuste de proximidade da marca e divisória integral do fechamento */
.footer-brand{margin-bottom:8px}
.footer-brand-column .footer-about{margin-top:0;margin-bottom:12px}
.footer-signature{margin-bottom:16px}
.footer-social{margin-bottom:16px}
.footer-bottom{border-top:1px solid rgba(243,235,221,.18);padding-top:22px}
@media (max-width:600px){.footer-bottom{border-top:1px solid rgba(243,235,221,.18);padding-top:20px}}


/* Remove a borda interna antiga do bloco legal */
.footer-legal{border-top:0;padding-top:0}


/* Catálogo e experiência de compra */
.header-inner{position:relative}.main-nav{justify-content:center;flex:1}.contact-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,4vw,56px);max-width:980px;margin:auto}.contact-choice{display:block;padding:clamp(30px,5vw,64px);background:var(--white);border:1px solid rgba(45,42,40,.12);text-decoration:none;transition:transform .2s,box-shadow .2s}.contact-choice:hover{transform:translateY(-4px);box-shadow:0 14px 35px rgba(45,42,40,.12)}.contact-choice h2{margin-bottom:14px}.contact-choice p{color:var(--tx-2);margin-bottom:28px}.contact-choice strong{color:var(--terracota)}.product-price{display:block;margin-top:8px;font-weight:800;color:var(--terracota);font-size:.92rem}.product-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:auto;padding-top:14px;flex-wrap:wrap}.product-add{font-size:.78rem;padding:9px 13px}.cart-trigger{margin-left:12px;border:1px solid var(--grafite);background:var(--grafite);color:var(--off-white);border-radius:999px;padding:8px 14px;font:700 .78rem Manrope,sans-serif;cursor:pointer}.cart-count{display:inline-flex;min-width:18px;height:18px;align-items:center;justify-content:center;margin-left:4px;border-radius:50%;background:var(--terracota);font-size:.7rem}.cart-drawer{position:fixed;z-index:100;top:0;right:0;bottom:0;width:min(410px,92vw);padding:28px;background:var(--off-white);box-shadow:-12px 0 34px rgba(45,42,40,.2);transform:translateX(105%);transition:transform .25s;overflow:auto}.cart-open .cart-drawer{transform:none}.cart-backdrop{position:fixed;inset:0;z-index:99;background:rgba(45,42,40,.4);opacity:0;pointer-events:none;transition:opacity .25s}.cart-open .cart-backdrop{opacity:1;pointer-events:auto}.cart-drawer-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}.cart-drawer-head h2{font-size:2rem}.cart-close{border:0;background:none;font-size:1.8rem;cursor:pointer}.cart-row{display:flex;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid rgba(45,42,40,.12)}.cart-row small{display:block;color:var(--tx-2);font-size:.75rem;margin-top:4px}.cart-row-actions{display:flex;align-items:center;gap:10px}.cart-row-actions button{border:0;background:none;color:var(--terracota);cursor:pointer;font-size:1.2rem}.cart-empty{color:var(--tx-2);margin-bottom:20px}.cart-total{font-size:.84rem;color:var(--tx-2);margin:20px 0}.cart-whatsapp{width:100%;justify-content:center}.btn-primary{background:var(--terracota);color:#fff;border:0;cursor:pointer;padding:12px 20px;border-radius:4px;font-weight:800;width:max-content}
@media (max-width:760px){.contact-choice-grid{grid-template-columns:1fr}.cart-trigger{margin-left:auto}.main-nav{flex:initial}}

/* Correção final mobile da home: conteúdo inteiro e imagem sem corte */
@media (max-width:760px){
  .home-hero{min-width:0}
  .home-hero-copy{min-width:0}
  .carved-title em{white-space:normal}
  .home-hero-art{min-height:0;aspect-ratio:4 / 5}
  .home-hero-art.frame>.hero-fill-image{object-fit:contain;object-position:center;background:var(--bege)}
  .hero-actions{align-items:flex-start}
}

/* Correção mobile do carrinho: drawer ocupa a viewport sem corte */
@media (max-width:760px){
  body{overflow-x:hidden}
  .cart-drawer{width:100vw;max-width:100vw;right:0;padding:20px;overflow-x:hidden}
  .cart-drawer-head{margin-bottom:22px}
  .cart-row{min-width:0}
  .cart-row>div:first-child{min-width:0;overflow-wrap:anywhere}
  .cart-whatsapp{white-space:normal;line-height:1.3}
}
