/*
Theme Name: Desvenda Comigo
Description: Páginas editáveis do Lupapim com integração de catálogo e compra no WooCommerce.
Version: 1.3.0
Requires at least: 6.5
Requires PHP: 7.4
Text Domain: desvenda-comigo
*/

#dc-advento {
  color-scheme: light;
  --paper: #fbf6eb;
  --paper-deep: #f3e8d4;
  --cream: #fff9ed;
  --green: #123328;
  --green-dark: #0d291f;
  --green-text: #2d493b;
  --copper: #874725;
  --gold: #f1cb7d;
  --line: #ddceb3;
  --body: "DM Sans", "Trebuchet MS", sans-serif;
  --display: "DM Serif Text", Georgia, serif;
}

#dc-advento *, #dc-advento *::before, #dc-advento *::after { box-sizing: border-box; }
#dc-advento { margin: 0; background: var(--paper); color: var(--green); font: 1rem/1.62 var(--body); }
#dc-advento img { display: block; max-width: 100%; height: auto; }
#dc-advento a { color: inherit; }
#dc-advento h1, #dc-advento h2, #dc-advento h3, #dc-advento p, #dc-advento figure { margin: 0; }
#dc-advento h1, #dc-advento h2, #dc-advento h3 { font-family: var(--display); font-weight: 400; line-height: 1.08; }
#dc-advento h2 { font-size: clamp(2.1rem, 4.2vw, 3.65rem); letter-spacing: -.045em; }
#dc-advento h3 { font-size: 1.42rem; letter-spacing: -.025em; }
#dc-advento [id] { scroll-margin-top: 1.5rem; }
#dc-advento .wrap { width: min(1160px, calc(100% - 96px)); margin-inline: auto; }
#dc-advento :focus-visible { outline: 3px solid #a85023; outline-offset: 4px; }
#dc-advento .hero :focus-visible { outline-color: var(--gold); }


#dc-advento .hero { position: relative; isolation: isolate; overflow: hidden; background: radial-gradient(ellipse at 76% 46%, #315842 0%, var(--green) 48%, var(--green-dark) 100%); color: var(--cream); }
#dc-advento .hero::before { content: ""; position: absolute; inset: 12px; z-index: -1; border: 1px solid #e6c5853d; pointer-events: none; }
#dc-advento .hero-inner { display: grid; grid-template-columns: 1.14fr .86fr; align-items: center; min-height: 563px; gap: 1rem; padding-block: 2.6rem 3rem; }
#dc-advento .hero-copy { position: relative; z-index: 1; }
#dc-advento .eyebrow { color: var(--copper); font-size: .77rem; line-height: 1.45; font-weight: 700; text-transform: uppercase; letter-spacing: .145em; }
#dc-advento .hero .eyebrow { color: var(--gold); margin-bottom: 1.15rem; }
#dc-advento h1 { font-size: clamp(3rem, 5.1vw, 5rem); line-height: .99; letter-spacing: -.039em; }
#dc-advento h1 em { color: var(--gold); font-style: normal; white-space: nowrap; }
#dc-advento .hero-intro { max-width: 29rem; margin-top: 1.4rem; color: #f0e6d2; font-size: clamp(1rem, 1.7vw, 1.125rem); }
#dc-advento .hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 1rem 1.5rem; margin-top: 1.75rem; }
#dc-advento .button { display: inline-flex; justify-content: center; align-items: center; gap: .75rem; min-height: 50px; border: 1px solid transparent; border-radius: 5rem; padding: .68rem 1.24rem; font: 700 .94rem/1.3 var(--body); text-decoration: none; cursor: pointer; }
#dc-advento .seta { display: block; width: .46rem; height: .46rem; border-right: 1.5px solid; border-top: 1.5px solid; transform: rotate(45deg); }
#dc-advento .button.gold { background: var(--gold); color: #193628; }
#dc-advento .button.gold:hover { background: #ffdfa0; }
#dc-advento .button.dark { background: var(--green); color: var(--cream); }
#dc-advento .button.dark:hover { background: #234b3b; }
#dc-advento .hero-facts { display: flex; flex-wrap: wrap; gap: .3rem .85rem; margin: 1.45rem 0 0; padding: 0; list-style: none; color: #efe3ca; font-size: .85rem; }
#dc-advento .hero-facts li + li::before { content: "·"; margin-right: .85rem; color: var(--gold); }

#dc-advento .hero-art { position: relative; min-width: 0; min-height: 425px; display: grid; place-items: center; }
#dc-advento .art-orbit { position: absolute; width: 91%; aspect-ratio: 1; border: 1px solid #efcf8b36; border-radius: 50%; transform: translateX(1%); background: radial-gradient(circle, #f4d99115 0%, transparent 72%); }
#dc-advento .art-orbit::after { content: ""; position: absolute; inset: 13px; border: 1px dashed #efcf8b2e; border-radius: 50%; }
#dc-advento .case-paper { position: absolute; z-index: 0; top: 16%; right: 9%; width: 47%; height: 63%; transform: rotate(13deg); border: 1px solid #fbdf96; border-radius: .28rem .5rem .35rem .28rem; background: repeating-linear-gradient(0deg, #96702b0c 0px, #96702b0c 1px, transparent 1px, transparent 5px), linear-gradient(132deg, #f4e6c8, #d2a566); color: #55391d; box-shadow: 11px 15px 40px #071b15a8; }
#dc-advento .case-paper::before { content: ""; position: absolute; inset: .7rem; border: 1px solid #855a37a8; border-radius: .2rem; }
#dc-advento .case-paper span:first-child { position: absolute; top: 13%; right: 10%; font: 700 clamp(.44rem, .7vw, .69rem)/1.3 var(--body); text-transform: uppercase; letter-spacing: .12em; text-align: right; }
#dc-advento .case-paper .selo { position: absolute; bottom: 8%; right: 9%; width: 26%; height: auto; }
#dc-advento .mascot { z-index: 1; width: min(82%, 402px); max-height: 475px; object-fit: contain; transform: translateX(-5%); filter: drop-shadow(4px 20px 19px #071912ad); }
#dc-advento .star { position: absolute; z-index: 2; line-height: 1; color: var(--gold); text-shadow: 0 0 15px #efc96b55; }
#dc-advento .star-one { top: 12%; right: 10%; font-size: 2.35rem; }
#dc-advento .star-two { bottom: 21%; right: 2%; font-size: 1.55rem; }
#dc-advento .star-three { bottom: 17%; left: 7%; font-size: 1.15rem; }
#dc-advento .star-four { top: 17%; left: 7%; font-size: 1.5rem; }

#dc-advento .como { padding-block: 4.6rem 4.4rem; }
#dc-advento .section-intro { margin-bottom: 1.85rem; }
#dc-advento .section-intro p, #dc-advento .produto-copy > p, #dc-advento .amostra > div > p:last-child { margin-top: .56rem; color: var(--green-text); }
#dc-advento .passos { list-style: none; display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem; padding: 0; margin: 0; }
#dc-advento .passos .dc-passo { border-top: 1px solid var(--line); padding-top: 1rem; }
#dc-advento .step { display: block; margin-bottom: .45rem; color: var(--copper); font-size: .8rem; font-weight: 700; }
#dc-advento .passos p:not(.step) { color: var(--green-text); margin-top: .46rem; max-width: 18rem; }

#dc-advento .produto { display: grid; grid-template-columns: 1.03fr .97fr; gap: clamp(2rem, 5vw, 5rem); align-items: center; border-radius: 1.05rem; background: var(--paper-deep); padding: clamp(1.6rem, 5vw, 4.25rem); }
#dc-advento .produto-copy h2 { margin-top: 1.5rem; }
#dc-advento .inclui { padding-left: 1.15rem; margin: .6rem 0 0; color: var(--green-text); }
#dc-advento .inclui li + li { margin-top: .3rem; }
#dc-advento .edicao-card { background: var(--cream); border: 1px solid var(--line); border-radius: .8rem; padding: clamp(1rem, 3vw, 1.85rem); }
#dc-advento .idades { display: grid; grid-template-columns: repeat(3, 1fr); gap: .5rem; list-style: none; padding: 0; margin: .7rem 0 0; }
#dc-advento .edicao-card .button { margin-top: .95rem; width: 100%; }
#dc-advento .edicao-note { margin-top: .55rem; color: var(--green-text); text-align: center; font-size: .81rem; }

#dc-advento .amostra { display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: 2rem; padding-block: 4.7rem; border-bottom: 1px solid var(--line); }
#dc-advento .amostra .eyebrow { margin-bottom: .65rem; }
#dc-advento .amostra h2 { font-size: clamp(2rem, 3.5vw, 3rem); }
#dc-advento .cartao { background: var(--paper-deep); border-left: 3px solid #a46238; padding: 1.2rem 1.4rem; }
#dc-advento .cartao > p { font: 400 1.28rem/1.35 var(--display); }
#dc-advento .cartao details { margin-top: .48rem; }
#dc-advento summary { cursor: pointer; font-weight: 700; }
#dc-advento summary:hover { text-decoration: underline; text-underline-offset: .2em; }
#dc-advento details p { margin-top: .48rem; color: var(--green-text); }
#dc-advento .faq { display: grid; grid-template-columns: .85fr 1.15fr; gap: 1.5rem; padding-block: 3.8rem 4.8rem; }
#dc-advento .faq-list details { padding: .85rem 0; border-bottom: 1px solid var(--line); }
#dc-advento .faq-list details:first-child { border-top: 1px solid var(--line); }


@media (max-width: 930px) {
  #dc-advento .wrap { width: calc(100% - 64px); }
  #dc-advento .hero-inner { min-height: 510px; }
  #dc-advento .hero-art { min-height: 350px; }
  #dc-advento .desktop-break { display: none; }
}

@media (max-width: 690px) {
  #dc-advento .wrap { width: calc(100% - 36px); }
  #dc-advento .hero::before { inset: 7px; }
  #dc-advento .hero-inner { grid-template-columns: 1fr; gap: .5rem; padding: 2.05rem .45rem 1.25rem; }
  #dc-advento .hero h1 { font-size: clamp(2.7rem, 9.6vw, 4.1rem); }
  #dc-advento .hero .eyebrow { margin-bottom: .82rem; }
  #dc-advento .hero-intro, #dc-advento .hero-actions { margin-top: 1rem; }
  #dc-advento .hero-facts { margin-top: .95rem; }
  #dc-advento .hero-art { width: min(100%, 340px); min-height: auto; margin-inline: auto; }
  #dc-advento .mascot { width: 74%; }
  #dc-advento .art-orbit { width: 78%; }
  #dc-advento .case-paper { right: 12%; }
  #dc-advento .como, #dc-advento .amostra, #dc-advento .faq { padding-block: 2.65rem; }
  #dc-advento .passos, #dc-advento .produto, #dc-advento .amostra, #dc-advento .faq { grid-template-columns: 1fr; gap: 1.1rem; }
  #dc-advento .passos p { max-width: 24rem; }
  #dc-advento .produto { padding: 1.35rem; }
  #dc-advento .amostra { gap: 1.3rem; }
}

@media (max-width: 360px) {
  #dc-advento .idades { grid-template-columns: repeat(2, 1fr); }
}
#dc-advento .idades li {
  display: grid;
  place-items: center;
  min-height: 38px;
  padding-inline: .25rem;
  border: 1px solid var(--line);
  border-radius: .35rem;
  font-size: .85rem;
  font-weight: 700;
  white-space: nowrap;
}
#dc-advento .skip {
  position: absolute;
  top: .5rem;
  left: .5rem;
  z-index: 4;
  transform: translateY(-160%);
  padding: .5rem 1rem;
  background: var(--cream);
}
#dc-advento .skip:focus { transform: none; }
#dc-advento .topo { background: var(--paper); }
#dc-advento .nav, #dc-advento .rodape .wrap {
  min-height: 76px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
}
#dc-advento .brand {
  display: inline-flex;
  align-items: center;
  gap: .65rem;
  font: 400 1.12rem/1.15 var(--display);
  text-decoration: none;
}
#dc-advento .nav nav { display: flex; align-items: center; gap: clamp(1rem, 3vw, 2.4rem); }
#dc-advento .nav nav a { font-size: .89rem; font-weight: 700; text-decoration: none; }
#dc-advento .nav nav a:hover { text-decoration: underline; text-underline-offset: .25em; }
#dc-advento .nav-cta { border: 1px solid #9e927c; border-radius: 5rem; padding: .55rem 1.12rem; white-space: nowrap; }
#dc-advento .rodape { background: var(--green-dark); color: var(--cream); }
#dc-advento .rodape :focus-visible { outline-color: var(--gold); }
#dc-advento .edicao-note { margin-top: .8rem; }

@media (max-width: 690px) {
  #dc-advento .nav, #dc-advento .rodape .wrap { min-height: 64px; gap: .5rem; }
  #dc-advento .brand { gap: .38rem; font-size: .93rem; }
  #dc-advento .brand img { width: 35px; }
  #dc-advento .nav nav .nav-cta { padding: .42rem .65rem; font-size: .77rem; }
}


#dc-advento .dc-content { min-height: 55vh; padding-block: clamp(2.3rem, 5vw, 4rem); }
#dc-advento .dc-content > article > h1, #dc-advento .dc-content > h1,
#dc-advento .dc-content .product_title, #dc-advento .dc-content .woocommerce-products-header__title {
  margin-bottom: 1.35rem;
  font-size: clamp(2.05rem, 4.35vw, 3.45rem);
  line-height: 1.1;
}
#dc-advento .dc-content p + p { margin-top: .8rem; }
#dc-advento .dc-content .wp-block-woocommerce-cart,
#dc-advento .dc-content .wp-block-woocommerce-checkout { margin-block: 1rem; }
#dc-advento .rodape-links { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .45rem 1rem; }
#dc-advento .rodape-links a { font-size: .85rem; text-underline-offset: .25em; }

@media (max-width: 690px) {
  #dc-advento .nav nav { gap: .55rem; }
  #dc-advento .nav nav .nav-cart { font-size: .77rem; }
}

#dc-advento .dc-editorial { min-height: 55vh; }
#dc-advento .dc-editorial .hero-inner,
#dc-advento .dc-editorial .hero-copy .hero-actions { margin-bottom: 0; }
#dc-advento .mascot img { width: 100%; }
#dc-advento .hero-actions .wp-block-button__link,
#dc-advento .dc-action .wp-block-button__link {
  display: inline-flex;
  align-items: center;
  min-height: 50px;
  border-radius: 5rem;
  padding: .68rem 1.24rem;
  font: 700 .94rem/1.3 var(--body);
  text-decoration: none;
}
#dc-advento .dc-button-gold .wp-block-button__link { background: var(--gold); color: #193628; }
#dc-advento .dc-button-gold .wp-block-button__link:hover { background: #ffdfa0; }
#dc-advento .dc-button-text .wp-block-button__link { background: transparent; color: var(--cream); padding-inline: 0; text-decoration: underline; text-underline-offset: .3em; }
#dc-advento .dc-button-text .wp-block-button__link:hover { color: var(--gold); }
#dc-advento .dc-button-dark .wp-block-button__link { background: var(--green); color: var(--cream); }
#dc-advento .dc-button-dark .wp-block-button__link:hover { background: #234b3b; }
#dc-advento .dc-page-space { padding-block: clamp(2.5rem, 5vw, 4.6rem); }
#dc-advento .dc-page-action { padding-block: 0 2.6rem; }
#dc-advento .amostra + .dc-page-action { padding-block-start: 1.5rem; }
#dc-advento .dc-home-links { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem; }
#dc-advento .dc-home-link { padding-top: 1rem; border-top: 1px solid var(--line); }
#dc-advento .dc-home-link h2 { font-size: clamp(1.42rem, 2.2vw, 1.9rem); letter-spacing: -.025em; }
#dc-advento .dc-home-link a { text-underline-offset: .22em; }
#dc-advento .dc-home-link p { margin-top: .5rem; color: var(--green-text); }
#dc-advento .dc-editorial :is(.section-intro, .produto-copy, .faq) h1 { font-size: clamp(2.25rem, 4.5vw, 3.65rem); line-height: 1.08; }
#dc-advento .amostra { padding-block-start: 0; }
#dc-advento .nav nav a[aria-current="page"] { text-decoration: underline; text-underline-offset: .25em; }

@media (max-width: 690px) {
  #dc-advento .nav { align-items: flex-start; flex-direction: column; padding-block: .75rem; }
  #dc-advento .nav nav { flex-wrap: wrap; gap: .35rem .85rem; }
  #dc-advento .nav nav a { font-size: .82rem; }
  #dc-advento .dc-home-links { grid-template-columns: 1fr; gap: 1rem; }
  #dc-advento .hero h1 br { display: none; }
}

#dc-advento :is(.dc-passo, .produto) h2 { font-size: 1.42rem; letter-spacing: -.025em; }

#dc-advento .dc-legal { max-width: 780px; }
#dc-advento .dc-legal h2 { margin-block: 1.75rem .55rem; font-size: clamp(1.35rem, 2.4vw, 1.8rem); line-height: 1.2; }
#dc-advento .dc-legal a { text-underline-offset: .22em; overflow-wrap: anywhere; }

#dc-advento .dc-sala-hero {
  position: relative;
  color: var(--cream);
  background:
    linear-gradient(90deg, #0b281fe8 0%, #0b281f99 49%, #0b281f00 88%),
    var(--green-dark) url("imagens/sala-lupapim.webp") center 51% / cover no-repeat;
}
#dc-advento .dc-sala-hero::before {
  content: "";
  position: absolute;
  inset: .65rem;
  border: 1px solid #f1cb7d55;
  pointer-events: none;
}
#dc-advento .dc-sala-hero-inner {
  display: grid;
  grid-template-columns: 1.05fr .75fr;
  align-items: center;
  gap: 1rem;
  min-height: 23.5rem;
  padding-block: 1.75rem;
}
#dc-advento .dc-sala-hero h1 {
  max-width: 10ch;
  font-size: clamp(2.8rem, 5.5vw, 5rem);
  line-height: 1.01;
}
#dc-advento .dc-sala-hero p {
  max-width: 29rem;
  margin-top: .95rem;
  color: #fbefd9;
  font-size: clamp(1rem, 1.7vw, 1.15rem);
}
#dc-advento .dc-sala-lupapim {
  justify-self: center;
  width: min(100%, 20rem);
  filter: drop-shadow(0 1rem 1.2rem #07140e9e);
}
#dc-advento .dc-sala-conta {
  display: flow-root;
  min-height: 45vh;
  padding-block: clamp(2rem, 4vw, 3.6rem);
}
#dc-advento .dc-sala-conta .woocommerce-MyAccount-navigation {
  padding: .75rem 1.1rem;
  border: 1px solid var(--line);
  border-radius: .75rem;
  background: var(--paper-deep);
}
#dc-advento .dc-sala-conta .woocommerce-MyAccount-navigation ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
#dc-advento .dc-sala-conta .woocommerce-MyAccount-navigation li + li { border-top: 1px solid var(--line); }
#dc-advento .dc-sala-conta .woocommerce-MyAccount-navigation a {
  display: block;
  padding-block: .62rem;
  text-underline-offset: .22em;
}
#dc-advento .dc-sala-conta .woocommerce-MyAccount-navigation .is-active a { font-weight: 700; }
#dc-advento .dc-sala-conta .woocommerce-MyAccount-content > p + p { margin-top: .55rem; }
#dc-advento .dc-sala-conta :is(form.login, form.register) {
  background: var(--cream);
  border-color: var(--line);
  border-radius: .75rem;
}
#dc-advento .dc-sala-atalhos {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .85rem;
  margin-block: 1.35rem;
}
#dc-advento .dc-sala-card {
  display: flex;
  flex-direction: column;
  gap: .48rem;
  padding: 1rem;
  border: 1px solid var(--line);
  border-top: 3px solid var(--copper);
  border-radius: .65rem;
  background: var(--cream);
  text-decoration: none;
}
#dc-advento .dc-sala-card:hover { background: var(--paper-deep); }
#dc-advento .dc-sala-card strong {
  font: 400 1.25rem/1.2 var(--display);
  text-decoration: underline;
  text-underline-offset: .16em;
}
#dc-advento .dc-sala-card span { color: var(--green-text); font-size: .9rem; line-height: 1.4; }
#dc-advento .dc-sala-panel {
  padding: 1.15rem 1.3rem;
  margin-block: 1rem;
  border: 1px solid var(--line);
  border-radius: .65rem;
  background: var(--cream);
}
#dc-advento .dc-sala-panel h2 { margin-bottom: .55rem; font-size: 1.5rem; letter-spacing: -.02em; }
#dc-advento .dc-campanhas-list { list-style: none; margin: .65rem 0 0; padding: 0; }
#dc-advento .dc-campanhas-list li { padding-block: .7rem; border-top: 1px solid var(--line); }
#dc-advento .dc-campanhas-list code { color: var(--green-dark); font-weight: 700; overflow-wrap: anywhere; }
#dc-advento .dc-campanha-data { font-size: .86rem; color: var(--green-text); }
#dc-advento .dc-marketing-check {
  display: flex;
  align-items: flex-start;
  gap: .65rem;
  margin-block: .7rem .9rem;
  cursor: pointer;
}
#dc-advento .dc-marketing-check input { margin-top: .35rem; accent-color: var(--green); }
#dc-advento figure.dc-editorial-pose {
  display: flex;
  justify-content: flex-end;
  margin: -1.5rem auto 0;
  padding-bottom: 1.4rem;
}
#dc-advento .dc-editorial-pose img { width: clamp(8rem, 17vw, 12rem); }
#dc-advento .faq ~ .dc-editorial-pose { justify-content: flex-start; }

@media (max-width: 920px) {
  #dc-advento .dc-sala-atalhos { grid-template-columns: 1fr; }
}
@media (max-width: 690px) {
  #dc-advento .dc-sala-hero-inner {
    grid-template-columns: 1fr;
    gap: .65rem;
    min-height: 0;
    padding-block: 2.2rem 1.2rem;
  }
  #dc-advento .dc-sala-hero h1 { max-width: 11ch; }
  #dc-advento .dc-sala-lupapim { justify-self: end; width: min(58%, 13rem); }
  #dc-advento .dc-sala-hero { background-position: center, 70% center; }
  #dc-advento .dc-sala-conta .woocommerce-MyAccount-navigation,
  #dc-advento .dc-sala-conta .woocommerce-MyAccount-content { float: none; width: 100%; }
  #dc-advento .dc-sala-conta .woocommerce-MyAccount-content { margin-top: 1.3rem; }
}
