/* ============================================================
   WordPress integration layer for the Reserva Natural design.
   (base.css = design system; pages/*.css = per-page design.)
   ============================================================ */

/* accessibility helpers */
.screen-reader-text{border:0; clip:rect(1px,1px,1px,1px); clip-path:inset(50%); height:1px; margin:-1px; overflow:hidden; padding:0; position:absolute !important; width:1px; word-wrap:normal !important}
.skip-link:focus{clip:auto; clip-path:none; height:auto; width:auto; background:var(--gold); color:#fff; padding:10px 16px; z-index:100; inset-inline-start:10px; top:10px; text-decoration:none}
.rn-hp{position:absolute !important; inset-inline-start:-9999px; width:1px; height:1px; opacity:0}

/* sticky header under the admin bar */
body.admin-bar header.site{top:32px}
@media (max-width:782px){ body.admin-bar header.site{top:46px} }
@media (max-width:600px){ body.admin-bar header.site{top:0} }

.brand a{display:flex; align-items:center}
.contact-line a{color:inherit; text-decoration:none}
.contact-line a:hover{text-decoration:underline; text-underline-offset:3px}

/* list items: inner text wrapper (keeps the design grid with icon/number + text) */
.li-c{display:block}
.care-list li::before{content:""; width:20px; height:20px; margin-top:4px; background:var(--olive);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8.2'/%3E%3Cpath d='M12 8v5M12 16h.01'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8.2'/%3E%3Cpath d='M12 8v5M12 16h.01'/%3E%3C/svg%3E") center/contain no-repeat}

/* whole-card links (cards built from blocks) */
.card-link{position:relative; cursor:pointer}
.card-link a.stretched{text-decoration:none}
.card-link a.stretched::after{content:""; position:absolute; inset:0; z-index:1}

/* shared blog card bits */
.blog-reviewer{font-size:.84rem; color:#6b604c; opacity:1 !important}
.blog-reviewer b{color:var(--olive)}
.blog-img img{background:var(--sand)}
.related-posts{background:var(--sand)}
.related-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important; max-width:860px; margin-inline:auto}
.post-cover-empty{display:none}
.post-hero:has(.post-cover-empty){padding-bottom:40px}
.post-hero:has(.post-cover-empty) + .post-body-wrap{padding-top:56px}

/* forms */
.form-error{background:#FBEDEA; color:#8A2A1B; border-radius:2px; padding:10px 14px; font-size:.88rem; margin-bottom:14px}

/* default template (pages made in the editor without a "Design" template) */
.page-band{background:#EBDDC8}
.page-band .inner{padding-block:52px 44px; max-width:1060px}
.page-band h1{font-size:clamp(1.9rem,4vw,2.6rem); line-height:1.35}
.page-band .lead{margin-top:10px; color:#4a4337}
.page-band .cta-row{margin-top:22px}
.crumbs{font-size:.82rem; color:#6b604c; display:flex; flex-wrap:wrap; gap:8px; margin-bottom:16px}
.crumbs a{color:#6b604c; text-decoration:none}
.crumbs a:hover{color:var(--gold)}

.entry-content{max-width:860px; font-size:1.04rem; line-height:2}
.entry-content > * + *{margin-top:16px}
.entry-content h2{font-size:clamp(1.35rem,2.6vw,1.7rem); margin-top:40px}
.entry-content h3{font-size:1.2rem; margin-top:30px}
.entry-content a{color:var(--gold)}
.entry-content ul,.entry-content ol{padding-inline-start:22px}
.entry-content img{height:auto; border-radius:4px}
.entry-content figure{margin-inline:0}
.entry-content figcaption{font-size:.85rem; opacity:.75; margin-top:6px; text-align:center}
.entry-content blockquote{border-inline-start:3px solid var(--gold); margin-inline:0; padding:6px 20px; font-size:1.1rem; color:var(--olive)}
.article figure{margin-inline:0; margin-block:24px}
.article img{height:auto}
.article > h3{margin-top:30px; margin-bottom:10px}
.article > ol:not(.art-steps){padding-inline-start:22px; margin-block:12px; display:flex; flex-direction:column; gap:6px}
.article a:not(.btn){color:var(--gold)}

/* buttons added from the editor (no design class) */
.wp-block-buttons:not(.cta-row){display:flex; flex-wrap:wrap; gap:12px}

/* pagination */
.pager{margin-top:36px; display:flex; justify-content:center}
.pager .nav-links{display:flex; gap:8px}
.pager .page-numbers{min-width:40px; height:40px; display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--border); border-radius:2px; color:var(--fg); text-decoration:none; padding-inline:10px}
.pager .page-numbers.current{background:var(--gold); color:#fff; border-color:var(--gold)}

/* WordPress alignment helpers inside editor-made content */
.alignleft{float:left; margin:0 24px 16px 0}
.alignright{float:right; margin:0 0 16px 24px}
.aligncenter{margin-inline:auto}
