/* Santuario UI v3.7.0 — refinamiento editorial de la colección y páginas institucionales. */

/* Artículo Puntaje SCA: diseño aislado, semántica nativa conservada. */
.santuario-sca-article { background: #fff !important; }
.santuario-sca-article :is(#page,.site,.site-content,.content-area,.site-main,main,article) { background:#fff !important; }
.santuario-sca-article .site-main {
  width:calc(100% - 48px); max-width:1180px; margin:32px auto 58px !important; padding:40px !important;
  border:1px solid rgba(165,129,66,.28); box-sizing:border-box; background:#fff;
  box-shadow:inset 0 0 0 18px #fff,inset 0 0 0 19px rgba(76,64,56,.13),0 12px 38px rgba(47,37,31,.045);
}
.santuario-sca-article :is(.entry-content,.wp-block-post-content,.page-content) {
  width:calc(100% - 50px); max-width:980px; margin:0 auto !important; padding:52px 64px 72px !important;
  box-sizing:border-box; color:#4c4038; font:16.5px/1.72 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
}
.santuario-sca-article :is(.entry-title,.page-title) { display:none !important; }
.santuario-sca-article :is(.entry-content,.wp-block-post-content,.page-content)>h1:first-child {
  position:relative; margin:0 !important; padding:0 0 34px !important; color:#2f251f !important;
  font:500 clamp(38px,5vw,54px)/1.08 Georgia,"Times New Roman",serif !important; letter-spacing:-.025em; text-align:center;
}
.santuario-sca-article :is(.entry-content,.wp-block-post-content,.page-content)>h1:first-child::after {
  content:""; position:absolute; left:50%; bottom:14px; width:min(300px,48%); height:1px; transform:translateX(-50%);
  background:linear-gradient(90deg,transparent,rgba(165,129,66,.65) 22%,#a58142 50%,rgba(165,129,66,.65) 78%,transparent);
}
.santuario-sca-article .santuario-sca-hero { margin:22px -64px 38px !important; }
.santuario-sca-article .santuario-sca-hero img { display:block; width:100%; max-height:560px; object-fit:cover; }
.santuario-sca-article :is(h2,h3) { text-transform:none !important; }
.santuario-sca-article :is(.entry-content,.wp-block-post-content,.page-content)>h2 {
  margin:62px 0 18px !important; color:#332820 !important; font:500 clamp(27px,3.4vw,34px)/1.18 Georgia,"Times New Roman",serif !important;
  letter-spacing:-.016em;
}
.santuario-sca-article :is(.entry-content,.wp-block-post-content,.page-content)>h2::after {
  content:""; display:block; width:92px; height:1px; margin-top:13px; background:linear-gradient(90deg,#a58142,transparent);
}
.santuario-sca-article p { margin:0 0 20px; }
.santuario-sca-article .santuario-sca-criteria { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin:28px 0 32px; padding:0; list-style:none; }
.santuario-sca-article .santuario-sca-criteria li { position:relative; margin:0; padding:42px 12px 14px; border:1px solid rgba(165,129,66,.24); text-align:center; font-weight:600; background:#fffdf9; }
.santuario-sca-article .santuario-sca-criteria li::before { content:"✦"; position:absolute; top:12px; left:50%; transform:translateX(-50%); color:#a58142; font-family:Georgia,serif; font-size:18px; }
.santuario-sca-article .santuario-sca-scale { margin:34px 0; padding:28px 30px; border:1px solid rgba(165,129,66,.28); background:#fbf8f1; }
.santuario-sca-article .santuario-sca-scale-labels { display:flex; justify-content:space-between; margin-bottom:10px; color:#6d5a4a; font-size:13px; letter-spacing:.08em; text-transform:uppercase; }
.santuario-sca-article .santuario-sca-scale-track { position:relative; height:8px; border-radius:10px; background:linear-gradient(90deg,#ded8cf 0 79.5%,#a58142 80% 100%); }
.santuario-sca-article .santuario-sca-scale-marker { position:absolute; left:80%; top:50%; width:2px; height:24px; background:#332820; transform:translate(-1px,-50%); }
.santuario-sca-article .santuario-sca-scale-note { margin:15px 0 0; color:#44372e; font-family:Georgia,serif; font-size:18px; text-align:right; }
.santuario-sca-article .santuario-sca-journey { display:grid; grid-template-columns:repeat(5,1fr); gap:10px; margin:28px 0 42px; counter-reset:stage; }
.santuario-sca-article .santuario-sca-stage { counter-increment:stage; padding:24px 15px 20px; border-top:1px solid #a58142; background:#fbf8f1; }
.santuario-sca-article .santuario-sca-stage::before { content:"0" counter(stage); display:block; margin-bottom:12px; color:#a58142; font:16px Georgia,serif; }
.santuario-sca-article .santuario-sca-stage h3 { margin:0 0 10px !important; color:#392e27 !important; font:500 20px/1.2 Georgia,serif !important; }
.santuario-sca-article .santuario-sca-stage p { margin:0; font-size:14px; line-height:1.55; }
.santuario-sca-article .santuario-sca-health { margin:58px -20px 46px; padding:34px 36px 18px; border-left:3px solid #a58142; background:#f7f3eb; }
.santuario-sca-article .santuario-sca-health h2 { margin:0 0 18px !important; color:#332820 !important; font:500 clamp(27px,3vw,33px)/1.2 Georgia,serif !important; }
.santuario-sca-article .santuario-sca-scores { display:grid; grid-template-columns:repeat(5,1fr); gap:12px; margin:30px 0 34px; padding:0; list-style:none; }
.santuario-sca-article .santuario-sca-scores li { display:flex; min-height:126px; margin:0; padding:18px 12px; border:1px solid rgba(165,129,66,.3); align-items:center; justify-content:center; text-align:center; background:#fff; color:#382d25; font-family:Georgia,serif; font-size:16px; line-height:1.4; }
.santuario-sca-article .santuario-sca-faqs { margin-top:28px; border-top:1px solid rgba(165,129,66,.3); }
.santuario-sca-article .santuario-sca-faq { border-bottom:1px solid rgba(165,129,66,.28); }
.santuario-sca-article .santuario-sca-faq h3 { position:relative; margin:0 !important; padding:22px 48px 22px 0; color:#392e27 !important; font:500 20px/1.35 Georgia,serif !important; cursor:pointer; }
.santuario-sca-article .santuario-sca-faq h3::after { content:"+"; position:absolute; right:8px; top:50%; color:#a58142; font:300 28px/1 Georgia,serif; transform:translateY(-50%); }
.santuario-sca-article .santuario-sca-faq.is-open h3::after { content:"−"; }
.santuario-sca-article .santuario-sca-faq-answer { display:none; padding:0 46px 22px 0; }
.santuario-sca-article .santuario-sca-faq.is-open .santuario-sca-faq-answer { display:block; }
.santuario-sca-article .santuario-sca-faq-answer p { margin:0; }
.santuario-sca-article .post-edit-link { display:none !important; }
@media(max-width:900px){
  .santuario-sca-article .santuario-sca-criteria{grid-template-columns:repeat(2,1fr)}
  .santuario-sca-article .santuario-sca-journey{grid-template-columns:repeat(2,1fr)}
  .santuario-sca-article .santuario-sca-scores{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:700px){
  .santuario-sca-article .site-main{width:calc(100% - 20px);margin:14px auto 28px !important;padding:18px !important;box-shadow:inset 0 0 0 8px #fff,inset 0 0 0 9px rgba(76,64,56,.13)}
  .santuario-sca-article :is(.entry-content,.wp-block-post-content,.page-content){width:100%;padding:34px 22px 48px !important;font-size:16px;line-height:1.68}
  .santuario-sca-article .santuario-sca-hero{margin:18px -22px 30px !important}
  .santuario-sca-article .santuario-sca-criteria,.santuario-sca-article .santuario-sca-journey,.santuario-sca-article .santuario-sca-scores{grid-template-columns:1fr}
  .santuario-sca-article .santuario-sca-health{margin:46px -8px 38px;padding:28px 22px 10px}
  .santuario-sca-article .santuario-sca-scale{padding:22px 18px}
}

/* v3.7.3 — escala informativa, tarjetas con imagen e iconografía editorial. */
.santuario-sca-article .santuario-sca-hero-wrap {
  position:relative; min-height:420px; margin:-52px -64px 48px; overflow:hidden; background:#2f251f;
}
.santuario-sca-article .santuario-sca-hero-wrap .santuario-sca-hero { position:absolute; inset:0; margin:0 !important; }
.santuario-sca-article .santuario-sca-hero-wrap .santuario-sca-hero img { width:100%; height:100%; max-height:none; object-fit:cover; }
.santuario-sca-article .santuario-sca-hero-wrap .santuario-sca-hero,
.santuario-sca-article .santuario-sca-hero-wrap .santuario-sca-hero img {
  filter:none !important; opacity:1 !important; -webkit-mask-image:none !important; mask-image:none !important;
  backdrop-filter:none !important; mix-blend-mode:normal !important;
}
.santuario-sca-article .santuario-sca-hero-wrap .santuario-sca-hero::before,
.santuario-sca-article .santuario-sca-hero-wrap .santuario-sca-hero::after { content:none !important; display:none !important; }
.santuario-sca-article .santuario-sca-hero-wrap::after {
  content:none !important; display:none !important; background:none !important;
}
.santuario-sca-article .santuario-sca-hero-wrap>h1 {
  position:absolute; z-index:2; left:clamp(28px,7%,70px); top:50%; width:min(590px,70%); margin:0 !important; padding:0 0 18px !important;
  color:#fffaf2 !important; font:500 clamp(40px,5.7vw,66px)/1.04 Georgia,"Times New Roman",serif !important;
  letter-spacing:-.03em; text-align:left; text-shadow:0 2px 18px rgba(0,0,0,.24); transform:translateY(-50%);
}
.santuario-sca-article .santuario-sca-hero-wrap>h1::after {
  left:0; bottom:0; width:min(250px,55%); transform:none;
  background:linear-gradient(90deg,#c8a65b 0%,rgba(200,166,91,.65) 58%,transparent 100%);
}
.santuario-sca-article .santuario-sca-scale { padding:28px 30px 24px; }
.santuario-sca-article .santuario-sca-scale-labels { margin-bottom:0; align-items:flex-end; }
.santuario-sca-article .santuario-sca-scale-labels span { width:1px; transform:translateX(-50%); white-space:nowrap; }
.santuario-sca-article .santuario-sca-scale-ruler {
  display:grid; grid-template-columns:repeat(5,1fr); position:relative; height:30px; margin:7px 0 0;
  border-top:2px solid #5b4a3d; background:repeating-linear-gradient(90deg,transparent 0,transparent calc(2% - 1px),rgba(91,74,61,.34) calc(2% - 1px),rgba(91,74,61,.34) 2%);
}
.santuario-sca-article .santuario-sca-scale-ruler span { position:relative; border-left:1px solid #5b4a3d; }
.santuario-sca-article .santuario-sca-scale-ruler span:last-child { border-right:1px solid #5b4a3d; }
.santuario-sca-article .santuario-sca-landmarks { position:relative; height:104px; margin-top:-30px; pointer-events:none; }
.santuario-sca-article .santuario-sca-landmarks>span { position:absolute; top:0; padding-top:35px; color:#4a3b31; font-size:11px; line-height:1.25; }
.santuario-sca-article .santuario-sca-landmarks>span::before { content:""; position:absolute; top:0; left:0; height:30px; border-left:2px solid #a58142; }
.santuario-sca-article .santuario-sca-landmarks .is-threshold { left:80%; transform:translateX(-100%); padding-right:8px; text-align:right; }
.santuario-sca-article .santuario-sca-landmarks .is-threshold::before { left:auto; right:0; }
.santuario-sca-article .santuario-sca-landmarks .is-santuario { left:82%; top:-18px; min-width:176px; padding:9px 12px 10px 18px; border-left:3px solid #a58142; background:#f2eadb; box-shadow:0 8px 20px rgba(62,45,32,.10); }
.santuario-sca-article .santuario-sca-landmarks .is-santuario::before { top:18px; left:-3px; height:30px; border-left:3px solid #a58142; }
.santuario-sca-article .santuario-sca-landmarks .is-santuario em { display:block; margin-bottom:2px; color:#765d36; font:600 9px/1.2 Inter,sans-serif; letter-spacing:.13em; text-transform:uppercase; }
.santuario-sca-article .santuario-sca-landmarks .is-santuario b { color:#a58142; font-size:34px; }
.santuario-sca-article .santuario-sca-landmarks b { display:block; color:#332820; font:600 15px/1.1 Georgia,serif; }
.santuario-sca-article .santuario-sca-landmarks small { display:block; max-width:145px; margin-top:3px; color:#77685e; font-size:10px; }
.santuario-sca-article .santuario-sca-scale-key { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; margin:28px 0 0; }
.santuario-sca-article .santuario-sca-scale-key span { min-height:146px; padding:15px 13px; border-top:2px solid #a58142; background:#fff; color:#6d5a4a; font-size:12px; text-align:left; }
.santuario-sca-article .santuario-sca-scale-key span.is-alert { border-top-color:#8b3e2f; background:#fbf4f1; }
.santuario-sca-article .santuario-sca-scale-key b { display:block; margin-bottom:7px; color:#332820; font:600 23px/1 Georgia,serif; }
.santuario-sca-article .santuario-sca-scale-key .is-alert b { color:#8b3e2f; }
.santuario-sca-article .santuario-sca-scale-key strong { display:block; margin-bottom:8px; color:#493c33; font-size:12px; line-height:1.3; }
.santuario-sca-article .santuario-sca-scale-key small { display:block; font-size:11px; line-height:1.5; }
.santuario-sca-article .santuario-sca-quality-warning { margin:14px 0 0 !important; padding:13px 16px 13px 42px; border:1px solid rgba(139,62,47,.28); background:#fbf4f1; color:#71372d; font-size:13px; line-height:1.5; }
.santuario-sca-article .santuario-sca-quality-warning::before { content:"!"; float:left; width:22px; height:22px; margin:0 0 0 -30px; border:1px solid #8b3e2f; border-radius:50%; font:bold 13px/20px Georgia,serif; text-align:center; }
.santuario-sca-article .santuario-sca-criteria-intro { max-width:720px; margin:-4px 0 24px; color:#74665d; font-size:15px; line-height:1.6; }
.santuario-sca-article .santuario-sca-journey { gap:12px; }
.santuario-sca-article .santuario-sca-stage { position:relative; min-height:205px; padding:58px 16px 20px; overflow:hidden; }
.santuario-sca-article .santuario-sca-stage::before { position:absolute; top:17px; right:15px; margin:0; opacity:.72; }
.santuario-sca-article .santuario-sca-stage-icon { position:absolute; top:11px; left:14px; width:42px; height:42px; color:#a58142; }
.santuario-sca-article .santuario-sca-stage-icon svg,.santuario-sca-article .santuario-sca-criterion-icon svg { width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.05; stroke-linecap:round; stroke-linejoin:round; }
.santuario-sca-article .santuario-sca-criteria li { padding-top:72px; }
.santuario-sca-article .santuario-sca-criteria li::before { content:none; }
.santuario-sca-article .santuario-sca-criterion-icon { position:absolute; top:10px; left:50%; width:56px; height:56px; color:#667057; transform:translateX(-50%); }
.santuario-sca-article .santuario-sca-stage p { color:#665950; font-size:13.5px; }
.santuario-sca-article .santuario-sca-scores li {
  display:grid; grid-template-rows:minmax(138px,1fr) auto auto; min-height:232px; padding:0 0 18px; overflow:hidden;
}
.santuario-sca-article .santuario-sca-origin-image { display:block; width:100%; height:138px; margin:0 0 15px; overflow:hidden; }
.santuario-sca-article .santuario-sca-origin-image :is(figure,.wp-block-image) { width:100%; height:100%; margin:0 !important; }
.santuario-sca-article .santuario-sca-origin-image img { display:block; width:100%; height:100%; object-fit:cover; }
.santuario-sca-article .santuario-sca-origin-art { display:block; width:112px; height:76px; margin:0 auto; }
.santuario-sca-article .santuario-sca-origin-art svg { width:100%; height:100%; fill:none; stroke:#6f6259; stroke-width:1.1; stroke-linecap:round; stroke-linejoin:round; }
.santuario-sca-article .santuario-sca-origin-name { color:#392e27; font:500 17px/1.25 Georgia,serif; }
.santuario-sca-article .santuario-sca-origin-score { margin-top:5px; color:#a58142; font:600 24px/1 Georgia,serif; }
.santuario-sca-article :is(.entry-content,.wp-block-post-content,.page-content) li::marker { color:#a58142; }
.santuario-sca-article .santuario-sca-closing { position:relative; margin:18px -20px 55px !important; padding:38px 46px 38px 72px; border:1px solid #b79a61; border-left:7px solid #a58142; background:#e9dfcc; box-shadow:0 14px 34px rgba(62,45,32,.10); color:#30251f; font:600 clamp(21px,2.5vw,28px)/1.45 Georgia,serif; }
.santuario-sca-article .santuario-sca-closing::before { content:"“"; position:absolute; left:20px; top:12px; color:#a58142; font:54px/1 Georgia,serif; }
.santuario-sca-article .santuario-sca-shop-cta {
  display:table; margin:4px auto 52px; padding:14px 28px; border:1px solid #765d36; background:#765d36; color:#fff !important;
  font:600 12px/1 Inter,system-ui,sans-serif; letter-spacing:.1em; text-decoration:none !important; text-transform:uppercase; transition:.2s ease;
}
.santuario-sca-article .santuario-sca-shop-cta:hover { background:#a58142; border-color:#a58142; color:#fff !important; transform:translateY(-1px); }
.santuario-sca-article .santuario-sca-guide-link { display:inline-flex; gap:7px; align-items:center; padding:2px 7px; border-bottom:1px solid #a58142; background:linear-gradient(transparent 58%,rgba(165,129,66,.16) 58%); color:#765d36 !important; font-weight:700; text-decoration:none !important; }
.santuario-sca-article .santuario-sca-guide-link::after { content:"\2197"; color:#a58142; font-size:.9em; }
@media(max-width:700px){
  .santuario-sca-article .santuario-sca-hero-wrap{min-height:390px;margin:-34px -22px 36px}
  .santuario-sca-article .santuario-sca-hero-wrap>h1{left:24px;width:calc(100% - 48px);font-size:clamp(34px,10vw,46px)!important}
  .santuario-sca-article .santuario-sca-scale{padding:22px 16px 20px}
  .santuario-sca-article .santuario-sca-scale-labels{font-size:10px}
  .santuario-sca-article .santuario-sca-scale-key{grid-template-columns:1fr;gap:7px}
  .santuario-sca-article .santuario-sca-scale-key span{min-height:0}
  .santuario-sca-article .santuario-sca-landmarks{height:78px}
  .santuario-sca-article .santuario-sca-landmarks .is-threshold{left:78%}
  .santuario-sca-article .santuario-sca-landmarks .is-santuario{left:84%}
  .santuario-sca-article .santuario-sca-landmarks small{display:none}
  .santuario-sca-article .santuario-sca-closing{margin:8px 0 42px!important;padding:26px 24px 26px 48px}
  .santuario-sca-article .santuario-sca-stage{min-height:0}
}

/* v3.6.15 — lectura editorial, fondo uniforme y marco aislados para el Aviso de privacidad. */
.santuario-privacy-policy {
  background: #fff !important;
}

.santuario-privacy-policy :is(#page, .site, .site-content, .content-area, .site-main, main, article) {
  background-color: #fff !important;
}

.santuario-privacy-policy :is(.site-main, main, article) {
  color: #332a24;
}

.santuario-privacy-policy .site-main {
  position: relative;
  width: calc(100% - 48px);
  max-width: 1080px;
  margin: 32px auto 54px !important;
  padding: 40px !important;
  border: 1px solid rgba(165, 129, 66, .28);
  box-sizing: border-box;
  background: #fff;
  box-shadow: inset 0 0 0 18px #fff, inset 0 0 0 19px rgba(76, 64, 56, .13), 0 12px 38px rgba(47, 37, 31, .045);
}

.santuario-privacy-policy :is(.entry-content, .wp-block-post-content, .page-content, .elementor-widget-theme-post-content > .elementor-widget-container) {
  width: calc(100% - 48px);
  max-width: 920px;
  margin-right: auto !important;
  margin-left: auto !important;
  padding: 68px 72px 76px !important;
  box-sizing: border-box;
  background: #fff;
  color: #4c4038;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16.5px;
  line-height: 1.72;
  box-shadow: 0 10px 32px rgba(47, 37, 31, .045);
}

.santuario-privacy-policy :is(.entry-title, .page-title, .wp-block-post-title, .entry-content > h1:first-child, .wp-block-post-content > h1:first-child, .page-content > h1:first-child) {
  position: relative;
  max-width: 920px;
  margin: 0 auto !important;
  padding: 62px 72px 50px !important;
  box-sizing: border-box;
  background: #fff;
  color: #2f251f !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(34px, 4.2vw, 42px) !important;
  font-weight: 500 !important;
  line-height: 1.14 !important;
  letter-spacing: -.02em;
  text-align: center !important;
  text-transform: none !important;
}

.santuario-privacy-policy :is(.entry-title, .page-title, .wp-block-post-title, .entry-content > h1:first-child, .wp-block-post-content > h1:first-child, .page-content > h1:first-child)::after {
  content: "";
  position: absolute;
  bottom: 23px;
  left: 50%;
  width: min(270px, 42%);
  height: 1px;
  transform: translateX(-50%);
  background: linear-gradient(90deg, transparent 0%, rgba(165, 129, 66, .58) 20%, #a58142 50%, rgba(165, 129, 66, .58) 80%, transparent 100%);
}

/* El título de esta página está dentro del contenido, no en la cabecera del tema. */
.santuario-privacy-policy :is(.entry-content, .wp-block-post-content, .page-content) > h1:first-child {
  max-width: none;
  margin: 0 0 34px !important;
  padding: 0 0 46px !important;
  background: transparent;
}

.santuario-privacy-policy :is(.entry-content, .wp-block-post-content, .page-content) > h1:first-child::after {
  bottom: 20px;
}

.santuario-privacy-policy .santuario-privacy-contact-icon {
  display: inline-flex;
  width: 16px;
  height: 16px;
  margin-right: 7px;
  vertical-align: -2px;
  color: #a58142;
}

.santuario-privacy-policy .santuario-privacy-contact-icon svg {
  display: block;
  width: 100%;
  height: 100%;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.45;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.santuario-privacy-policy :is(.entry-content, .wp-block-post-content, .page-content) > :first-child {
  margin-top: 0 !important;
}

.santuario-privacy-policy :is(.entry-content, .wp-block-post-content, .page-content) h2 {
  margin: 58px 0 16px !important;
  color: #3a2f28 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(24px, 3vw, 28px) !important;
  font-weight: 500 !important;
  line-height: 1.25 !important;
  letter-spacing: -.012em;
  text-transform: none !important;
}

.santuario-privacy-policy :is(.entry-content, .wp-block-post-content, .page-content) h3 {
  margin: 38px 0 12px !important;
  color: #4a3b31 !important;
  font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
  font-size: 19px !important;
  font-weight: 650 !important;
  line-height: 1.35 !important;
  letter-spacing: .01em;
  text-transform: none !important;
}

.santuario-privacy-policy :is(.entry-content, .wp-block-post-content, .page-content) :is(h4, h5, h6) {
  margin: 30px 0 10px !important;
  color: #5a4739 !important;
  font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
  font-size: 16.5px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  letter-spacing: .025em;
  text-transform: none !important;
}

.santuario-privacy-policy :is(.entry-content, .wp-block-post-content, .page-content) :is(p, ul, ol) {
  margin-top: 0;
  margin-bottom: 18px;
}

.santuario-privacy-policy :is(.entry-content, .wp-block-post-content, .page-content) :is(ul, ol) {
  padding-left: 1.35em;
}

.santuario-privacy-policy :is(.entry-content, .wp-block-post-content, .page-content) li {
  margin-bottom: 9px;
  padding-left: .2em;
}

.santuario-privacy-policy :is(.entry-content, .wp-block-post-content, .page-content) li::marker {
  color: #a58142;
}

.santuario-privacy-policy :is(.entry-content, .wp-block-post-content, .page-content) a {
  color: #725e38;
  text-decoration-color: rgba(165, 129, 66, .62);
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.santuario-privacy-policy :is(.entry-content, .wp-block-post-content, .page-content) a:hover,
.santuario-privacy-policy :is(.entry-content, .wp-block-post-content, .page-content) a:focus-visible {
  color: #3f3128;
  text-decoration-color: #a58142;
}

.santuario-privacy-policy .post-edit-link {
  display: none !important;
}

@media (max-width: 700px) {
  .santuario-privacy-policy .site-main {
    width: calc(100% - 20px);
    margin: 14px auto 28px !important;
    padding: 18px !important;
    box-shadow: inset 0 0 0 8px #fff, inset 0 0 0 9px rgba(76, 64, 56, .13);
  }

  .santuario-privacy-policy :is(.entry-title, .page-title, .wp-block-post-title, .entry-content > h1:first-child, .wp-block-post-content > h1:first-child, .page-content > h1:first-child) {
    width: 100%;
    padding: 42px 24px 48px !important;
  }

  .santuario-privacy-policy :is(.entry-title, .page-title, .wp-block-post-title, .entry-content > h1:first-child, .wp-block-post-content > h1:first-child, .page-content > h1:first-child)::after {
    bottom: 22px;
    width: min(210px, 58%);
  }

  .santuario-privacy-policy :is(.entry-content, .wp-block-post-content, .page-content) > h1:first-child {
    padding: 0 0 44px !important;
  }

  .santuario-privacy-policy :is(.entry-content, .wp-block-post-content, .page-content, .elementor-widget-theme-post-content > .elementor-widget-container) {
    width: 100%;
    padding: 36px 24px 48px !important;
    font-size: 16px;
    line-height: 1.68;
    box-shadow: none;
  }

  .santuario-privacy-policy :is(.entry-content, .wp-block-post-content, .page-content) h2 {
    margin-top: 44px !important;
  }

  .santuario-privacy-policy :is(.entry-content, .wp-block-post-content, .page-content) h3 {
    margin-top: 32px !important;
    font-size: 18px !important;
  }
}

/* Reduce el vacío entre el Hero del Kit y la colección sin alterar las tarjetas. */
.santuario-product-section {
  margin-top: 0 !important;
  padding-top: 42px !important;
}

/* v3.6.0 — confirmación editorial del formulario de Contacto. */
.santuario-contact-page {
  background: #fff !important;
}

.santuario-contact-page :is(#page, .site, .site-content, .content-area, .site-main, main, article) {
  background-color: #fff !important;
}

/* Marco común para el formulario y la confirmación de Jetpack. */
.santuario-contact-page .site-main {
  position: relative;
  width: calc(100% - 48px);
  max-width: 1080px;
  margin: 32px auto 54px !important;
  padding: 40px !important;
  border: 1px solid rgba(165, 129, 66, .28);
  box-sizing: border-box;
  background: #fff;
  box-shadow: inset 0 0 0 18px #fff, inset 0 0 0 19px rgba(76, 64, 56, .13), 0 12px 38px rgba(47, 37, 31, .045);
}

/* Título visible de Contacto, con respaldo para Gutenberg y Elementor. */
.santuario-contact-page:not(.santuario-contact-confirmed) :is(
  .entry-title,
  .page-title,
  .wp-block-post-title,
  .entry-content > h1:first-child,
  .wp-block-post-content > h1:first-child,
  .page-content > h1:first-child,
  .elementor-widget-heading:first-child .elementor-heading-title,
  .santuario-contact-page-title
) {
  position: relative;
  padding-bottom: 34px !important;
  color: #2f251f !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-weight: 500 !important;
  line-height: 1.14 !important;
  letter-spacing: -.02em !important;
  text-transform: none !important;
}

.santuario-contact-page:not(.santuario-contact-confirmed) :is(
  .entry-title,
  .page-title,
  .wp-block-post-title,
  .entry-content > h1:first-child,
  .wp-block-post-content > h1:first-child,
  .page-content > h1:first-child,
  .elementor-widget-heading:first-child .elementor-heading-title,
  .santuario-contact-page-title
)::after {
  content: "";
  position: absolute;
  bottom: 13px;
  left: 50%;
  width: min(240px, 42%);
  height: 1px;
  transform: translateX(-50%);
  background: linear-gradient(90deg, transparent 0%, rgba(165, 129, 66, .58) 20%, #a58142 50%, rgba(165, 129, 66, .58) 80%, transparent 100%);
}

/* v3.6.17 — alcanza el encabezado real de Contacto sin depender de su clase.
   El remate nace del borde izquierdo del título, no del eje del formulario. */
.santuario-contact-page:not(.santuario-contact-confirmed) .site-main :is(
  .entry-content,
  .wp-block-post-content,
  .page-content,
  .elementor-widget-container
) > :is(h1, h2, h3):first-child,
.santuario-contact-page:not(.santuario-contact-confirmed) .site-main .santuario-contact-page-title {
  position: relative !important;
  padding-bottom: 27px !important;
  color: #2f251f !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-weight: 500 !important;
  line-height: 1.14 !important;
  letter-spacing: -.02em !important;
  text-transform: none !important;
}

.santuario-contact-page:not(.santuario-contact-confirmed) .site-main :is(
  .entry-content,
  .wp-block-post-content,
  .page-content,
  .elementor-widget-container
) > :is(h1, h2, h3):first-child::after,
.santuario-contact-page:not(.santuario-contact-confirmed) .site-main .santuario-contact-page-title::after {
  content: "" !important;
  position: absolute !important;
  right: auto !important;
  bottom: 10px !important;
  left: 0 !important;
  width: 190px !important;
  max-width: 48% !important;
  height: 1px !important;
  transform: none !important;
  background: linear-gradient(90deg, transparent 0%, rgba(165, 129, 66, .72) 18%, #a58142 50%, rgba(165, 129, 66, .72) 82%, transparent 100%) !important;
}

/* v3.6.18 — el título real es un párrafo Gutenberg, no un heading. */
.santuario-contact-page:not(.santuario-contact-confirmed) .site-main p.has-large-font-size.wp-block-paragraph:first-of-type {
  position: relative !important;
  padding-bottom: 27px !important;
  color: #2f251f !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-weight: 500 !important;
  line-height: 1.14 !important;
  letter-spacing: -.02em !important;
  text-transform: none !important;
}

.santuario-contact-page:not(.santuario-contact-confirmed) .site-main p.has-large-font-size.wp-block-paragraph:first-of-type::after {
  content: "" !important;
  position: absolute !important;
  right: auto !important;
  bottom: 10px !important;
  left: 0 !important;
  width: 190px !important;
  max-width: 48% !important;
  height: 1px !important;
  transform: none !important;
  background: linear-gradient(90deg, transparent 0%, rgba(165, 129, 66, .72) 18%, #a58142 50%, rgba(165, 129, 66, .72) 82%, transparent 100%) !important;
}

/* v3.6.19 — remate real dentro del título; no depende de pseudoelementos del tema. */
.santuario-contact-page:not(.santuario-contact-confirmed) .santuario-contact-page-title::after {
  content: none !important;
  display: none !important;
}

.santuario-contact-page:not(.santuario-contact-confirmed) .santuario-contact-page-title {
  padding-bottom: 0 !important;
}

.santuario-contact-page:not(.santuario-contact-confirmed) .santuario-contact-title-rule {
  display: block !important;
  width: 190px !important;
  max-width: 48% !important;
  height: 1px !important;
  margin: 16px 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: linear-gradient(90deg, transparent 0%, rgba(165, 129, 66, .72) 18%, #a58142 50%, rgba(165, 129, 66, .72) 82%, transparent 100%) !important;
}

.contact-form .santuario-contact-message-field {
  margin-top: 34px !important;
}

/* v3.6.11 — conserva la paleta Santuario al completar o validar los campos. */
form.contact-form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
form.contact-form textarea,
form.contact-form select,
form.contact-form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):valid,
form.contact-form textarea:valid,
form.contact-form select:valid {
  background-color: #fffdf9 !important;
  background-image: none !important;
}

form.contact-form input:-webkit-autofill,
form.contact-form input:-webkit-autofill:hover,
form.contact-form input:-webkit-autofill:focus,
form.contact-form textarea:-webkit-autofill,
form.contact-form textarea:-webkit-autofill:hover,
form.contact-form textarea:-webkit-autofill:focus,
form.contact-form select:-webkit-autofill,
form.contact-form select:-webkit-autofill:hover,
form.contact-form select:-webkit-autofill:focus {
  -webkit-text-fill-color: #201b17 !important;
  caret-color: #201b17;
  box-shadow: 0 0 0 1000px #fffdf9 inset !important;
  -webkit-box-shadow: 0 0 0 1000px #fffdf9 inset !important;
  transition: background-color 9999s ease-out 0s;
}

/* Replica la tipografía del CTA “Seguir descubriendo orígenes” sin tocar colores. */
form.contact-form :is(button[type="submit"], input[type="submit"]) {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: .45px !important;
  text-transform: uppercase !important;
}

.santuario-contact-privacy {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  margin: 22px 0 18px;
  color: #5d5149;
  font-size: 13px;
  line-height: 1.55;
}

.santuario-contact-privacy input[type="checkbox"] {
  flex: 0 0 auto;
  width: 17px;
  height: 17px;
  margin: 2px 0 0;
  padding: 0 !important;
  border: 1px solid #8b7767 !important;
  border-radius: 3px !important;
  background-color: #fffdf9 !important;
  background-image: none !important;
  box-shadow: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  cursor: pointer;
}

/* Neutraliza la marca verde que Grocery Store dibuja con pseudoelementos. */
.santuario-contact-privacy input[type="checkbox"]::before,
.santuario-contact-privacy input[type="checkbox"]::after {
  content: none !important;
  display: none !important;
}

.santuario-contact-privacy input[type="checkbox"]:checked {
  border-color: #725e38 !important;
  background-color: #725e38 !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23fffdf9' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M3.25 8.25 6.5 11.5 12.75 4.75'/%3E%3C/svg%3E") !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: 15px 15px !important;
}

.santuario-contact-privacy input[type="checkbox"]:focus-visible {
  outline: 2px solid rgba(184, 153, 85, .62) !important;
  outline-offset: 3px;
}

.santuario-contact-privacy label {
  margin: 0;
  cursor: pointer;
}

.santuario-contact-privacy a {
  color: #4d3f35;
  text-decoration: underline;
  text-decoration-color: rgba(184, 153, 85, .72);
  text-underline-offset: 3px;
}

.santuario-contact-privacy a:hover,
.santuario-contact-privacy a:focus-visible {
  color: #725e38;
}

.santuario-contact-success {
  width: calc(100% - 40px);
  max-width: 650px;
  margin: 72px auto 84px;
  padding: 52px 42px;
  box-sizing: border-box;
  text-align: center;
  background: #fffdf9;
  border: 1px solid rgba(184, 153, 85, .34);
}

.santuario-contact-success__icon {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  margin: 0 auto 24px;
  border: 1px solid var(--st-gold, #b89955);
  border-radius: 50%;
  color: #725e38;
  font-size: 22px;
  line-height: 1;
}

.santuario-contact-success__title {
  margin: 0 0 16px !important;
  color: #2f251f;
  font-family: Georgia, "Times New Roman", serif !important;
  font-weight: 500 !important;
  font-size: clamp(30px, 4vw, 42px) !important;
  line-height: 1.15 !important;
  text-transform: none !important;
}

.santuario-contact-success__message {
  max-width: 520px;
  margin: 0 auto 30px !important;
  color: #5d5149;
  font-size: 16px;
  line-height: 1.7;
}

.santuario-contact-success__cta {
  display: inline-flex;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  padding: 0 26px;
  background: #201b17;
  color: #fffdf9 !important;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .45px;
  text-decoration: none !important;
  text-transform: uppercase;
  transition: background-color .25s ease, color .25s ease;
}

.santuario-contact-success__cta:hover,
.santuario-contact-success__cta:focus-visible {
  background: var(--st-gold, #b89955);
  color: #2f251f !important;
}

@media (max-width: 600px) {
  .santuario-contact-page .site-main {
    width: calc(100% - 24px);
    margin: 18px auto 34px !important;
    padding: 24px !important;
    box-shadow: inset 0 0 0 10px #fff, inset 0 0 0 11px rgba(76, 64, 56, .13), 0 8px 24px rgba(47, 37, 31, .04);
  }

  .santuario-contact-success {
    width: calc(100% - 28px);
    margin: 42px auto 58px;
    padding: 40px 22px;
  }

  .santuario-contact-success__cta {
    width: 100%;
    padding-right: 16px;
    padding-left: 16px;
  }
}

.santuario-product-section .santuario-product-grid,
.santuario-product-grid {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Divisor fino, sin rombo y con extremos que se desvanecen. */
.santuario-product-card .santuario-card-price::before {
  left: 15% !important;
  right: 15% !important;
  height: 1px !important;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(184, 153, 85, .12) 14%,
    rgba(184, 153, 85, .58) 50%,
    rgba(184, 153, 85, .12) 86%,
    transparent 100%
  ) !important;
}

.santuario-product-card .santuario-card-price::after {
  content: none !important;
  display: none !important;
}

/* El precio informa sin competir con el origen ni con el CTA. */
.santuario-product-card .santuario-card-price,
.santuario-product-card .santuario-card-price .elementor-heading-title,
.santuario-product-card .santuario-card-price h1,
.santuario-product-card .santuario-card-price h2,
.santuario-product-card .santuario-card-price h3,
.santuario-product-card .santuario-card-price h4,
.santuario-product-card .santuario-card-price h5,
.santuario-product-card .santuario-card-price h6 {
  color: var(--st-text) !important;
}

.santuario-product-card .santuario-card-price .santuario-price-currency {
  color: var(--st-text-soft) !important;
  opacity: .86 !important;
}

@media (max-width: 1024px) {
  .santuario-product-section {
    padding-top: 34px !important;
  }
}

@media (max-width: 767px) {
  .santuario-product-section {
    padding-top: 26px !important;
  }
}

/* v3.5.8 — segunda pasada de refinamiento, deliberadamente moderada. */

/* Un mismo lenguaje de esquinas para tarjeta y CTA. */
.santuario-product-card {
  border-radius: 12px !important;
  box-shadow: 0 5px 18px rgba(49, 34, 24, .035) !important;
}

.santuario-product-card:hover,
.santuario-product-card:focus-within {
  transform: translate3d(0,-3px,0) !important;
  box-shadow: 0 12px 30px rgba(49, 34, 24, .07) !important;
}

/* Botón más fino, menos pesado y ligeramente separado del borde inferior. */
.santuario-product-card .santuario-card-button {
  margin-bottom: 10px !important;
}

.santuario-product-card .santuario-card-button :is(.elementor-button,.e-button,a[role="button"],a,button),
.santuario-product-card button.e-button-base,
.santuario-product-card .e-button-base,
body .santuario-product-card button[class*="e-button-base"] {
  min-height: 38px !important;
  height: 38px !important;
  padding: 0 14px !important;
  border-radius: 12px !important;
  background-color: #2f251f !important;
  box-shadow: none !important;
}

.santuario-product-card .santuario-card-button :is(.elementor-button,.e-button,a[role="button"],a,button):hover,
.santuario-product-card button.e-button-base:hover,
.santuario-product-card .e-button-base:hover,
body .santuario-product-card button[class*="e-button-base"]:hover {
  background-color: #3a2e27 !important;
  box-shadow: 0 5px 14px rgba(47, 37, 31, .10) !important;
}

/* Da un poco más de aire antes de las notas sensoriales. */
.santuario-product-card .santuario-card-price {
  margin-bottom: 10px !important;
}

@media (max-width: 767px) {
  .santuario-product-card .santuario-card-button :is(.elementor-button,.e-button,a[role="button"],a,button),
  .santuario-product-card button.e-button-base,
  .santuario-product-card .e-button-base,
  body .santuario-product-card button[class*="e-button-base"] {
    min-height: 40px !important;
    height: 40px !important;
  }
}


/* v3.5.9 — Únicamente botones de las tarjetas: mismo lenguaje visual que los CTA editoriales. */
.santuario-product-card .santuario-card-button :is(.elementor-button,.e-button,a[role="button"],a,button),
.santuario-product-card button.e-button-base,
.santuario-product-card .e-button-base,
body .santuario-product-card button[class*="e-button-base"] {
  min-height: 41px !important;
  height: 41px !important;
  padding: 0 24px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #201b17 !important;
  color: #fffdf9 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: .45px !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
  transform: none !important;
  transition: background-color .25s ease, color .25s ease !important;
}

.santuario-product-card .santuario-card-button :is(.elementor-button,.e-button,a[role="button"],a,button):hover,
.santuario-product-card button.e-button-base:hover,
.santuario-product-card .e-button-base:hover,
body .santuario-product-card button[class*="e-button-base"]:hover {
  background: var(--st-gold, #b89955) !important;
  color: #2f251f !important;
  box-shadow: none !important;
  transform: none !important;
}

.santuario-product-card .santuario-card-button :is(.elementor-button,.e-button,a[role="button"],a,button):active,
.santuario-product-card button.e-button-base:active,
.santuario-product-card .e-button-base:active,
body .santuario-product-card button[class*="e-button-base"]:active {
  transform: none !important;
}

@media (max-width: 767px) {
  .santuario-product-card .santuario-card-button :is(.elementor-button,.e-button,a[role="button"],a,button),
  .santuario-product-card button.e-button-base,
  .santuario-product-card .e-button-base,
  body .santuario-product-card button[class*="e-button-base"] {
    min-height: 41px !important;
    height: 41px !important;
  }
}
