/* Only new registered Spanish pages. Existing EN/ZH layouts remain untouched. */
body.sc-es-page { --sc-es-green: #2f7a2c; --sc-es-border: #d9e1d8; }
body.sc-es-page .top-header { min-height: 0; height: auto; padding: 28px 0; }
body.sc-es-page .top-header h1 { font-size: clamp(1.65rem, 4vw, 2.65rem); line-height: 1.2; overflow-wrap: anywhere; }
body.sc-es-page #bulk-content { width: 100%; max-width: 1200px; margin: 0 auto; float: none; }
body.sc-es-page #bulk-content > article,
body.sc-es-page #bulk-content .article-content { width: 100%; float: none; }
body.sc-es-page .sc-es-content { width: 100%; max-width: 1120px; margin: 0 auto; padding: 24px clamp(12px, 3vw, 28px) 48px; color: #222; line-height: 1.7; }
body.sc-es-page .sc-es-content > :first-child { margin-top: 0; }
body.sc-es-page .sc-es-content h2 { margin: 1.6em 0 .65em; font-size: clamp(1.3rem, 2.3vw, 1.8rem); line-height: 1.3; }
body.sc-es-page .sc-es-content h3 { margin: 1.35em 0 .5em; font-size: 1.2rem; line-height: 1.4; }
body.sc-es-page .sc-es-content p { margin: 0 0 1em; }
body.sc-es-page .sc-es-content ul { padding-left: 1.4em; }
body.sc-es-page .sc-es-content li { margin-bottom: .45em; }
body.sc-es-page .sc-es-content a:not(.button):not(.checkout-button):not(.single_add_to_cart_button) { color: var(--sc-es-green); text-underline-offset: 3px; }
body.sc-es-page .sc-es-content a:focus-visible,
body.sc-es-page .sc-es-content button:focus-visible,
body.sc-es-page .sc-es-content summary:focus-visible { outline: 3px solid #1d5e9a; outline-offset: 3px; }
body.sc-es-page .sc-es-content figure { margin: 1.4em auto; max-width: 920px; }
body.sc-es-page .sc-es-content img { max-width: 100%; height: auto; }
body.sc-es-page .sc-es-content iframe { max-width: 100%; }
body.sc-es-page .sc-es-content table { width: 100%; border-collapse: collapse; margin: 16px 0 28px; table-layout: auto; }
body.sc-es-page .sc-es-content th,
body.sc-es-page .sc-es-content td { padding: 10px 14px; border-bottom: 1px solid var(--sc-es-border); vertical-align: top; overflow-wrap: anywhere; }
body.sc-es-page .sc-es-content th { text-align: left; background: #f5f8f4; }
body.sc-es-page .sc-es-buy,
body.sc-es-page .sc-es-simulator { padding: 20px 24px; margin: 20px 0 28px; border: 1px solid var(--sc-es-border); border-left: 4px solid var(--sc-es-green); background: #f5faf3; border-radius: 8px; }
body.sc-es-page .sc-es-buy > a,
body.sc-es-page .sc-es-content .button { display: inline-block; padding: 11px 20px; border: 0; border-radius: 6px; background: var(--sc-es-green); color: #fff !important; text-decoration: none; font-weight: 600; white-space: normal; line-height: 1.4; }
body.sc-es-page .sc-es-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
body.sc-es-page .sc-es-card-grid > section { padding: 22px; border: 1px solid var(--sc-es-border); border-radius: 9px; background: #fff; }
body.sc-es-page .sc-es-card-grid h2 { margin-top: 0; }
body.sc-es-page .sc-es-faq details { padding: 15px 0; border-bottom: 1px solid var(--sc-es-border); }
body.sc-es-page .sc-es-faq summary { cursor: pointer; font-weight: 600; line-height: 1.5; }
body.sc-es-page .sc-es-faq details p { margin: 12px 0 0; }
body.sc-es-page .sc-es-related { border-top: 1px solid var(--sc-es-border); margin-top: 32px; padding-top: 8px; }
body.sc-es-page .sc-es-content .woocommerce div.product { width: 100%; max-width: none; }
body.sc-es-page .sc-es-content .woocommerce div.product .summary { min-width: 0; }
body.sc-es-page .sc-es-content .woocommerce input,
body.sc-es-page .sc-es-content .woocommerce select,
body.sc-es-page .sc-es-content .woocommerce textarea { max-width: 100%; }
body.sc-es-page .sc-es-content .woocommerce form .form-row input.input-text,
body.sc-es-page .sc-es-content .woocommerce form .form-row textarea { width: 100%; }
@media (max-width: 767px) {
    body.sc-es-page .sc-es-card-grid { grid-template-columns: 1fr; }
    body.sc-es-page .sc-es-buy,
    body.sc-es-page .sc-es-simulator { padding: 16px; }
    body.sc-es-page .sc-es-content { padding-left: 12px; padding-right: 12px; }
    body.sc-es-page .sc-es-content th,
    body.sc-es-page .sc-es-content td { padding: 8px; }
    body.sc-es-page .sc-es-content .woocommerce div.product div.images,
    body.sc-es-page .sc-es-content .woocommerce div.product div.summary { float: none; width: 100%; }
    body.sc-es-page .sc-es-content .woocommerce #customer_details .col-1,
    body.sc-es-page .sc-es-content .woocommerce #customer_details .col-2 { float: none; width: 100%; }
}

/* Policy columns become labelled cards on narrow screens. */
@media (max-width: 600px) {
    body.sc-es-page .sc-es-content table.sc-es-policy-table,
    body.sc-es-page .sc-es-content .sc-es-policy-table tbody,
    body.sc-es-page .sc-es-content .sc-es-policy-table tbody tr,
    body.sc-es-page .sc-es-content .sc-es-policy-table tbody td { display: block; width: 100%; }
    body.sc-es-page .sc-es-content .sc-es-policy-table thead { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
    body.sc-es-page .sc-es-content .sc-es-policy-table tbody tr { box-sizing: border-box; padding: 10px 14px; margin-bottom: 14px; border: 1px solid var(--sc-es-border); border-radius: 8px; background: #fff; }
    body.sc-es-page .sc-es-content .sc-es-policy-table tbody td { box-sizing: border-box; padding: 6px 0; border: 0; }
    body.sc-es-page .sc-es-content .sc-es-policy-table tbody td::before { content: attr(data-label); display: block; margin-bottom: 2px; font-weight: 600; color: #2d462b; }
}
