/* Base · Cartonajes Sánchez */
:root{
	--cs-primary:#7A232B;
	--cs-primary-dark:#601920;
	--cs-secondary:#9B5B46;
	--cs-kraft:#B99A75;
	--cs-sand:#E8DDD0;
	--cs-ivory:#F8F4EE;
	--cs-dark:#292522;
	--cs-muted:#6b625c;
	--cs-white:#FFFFFF;
	--cs-font-heading:'Playfair Display',Georgia,serif;
	--cs-font-body:'Poppins',Arial,Helvetica,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--cs-dark);font-family:var(--cs-font-body);font-size:15px;line-height:1.75;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg,video{max-width:100%;height:auto}
a{color:var(--cs-primary)}
a:hover{color:var(--cs-primary-dark)}
:focus-visible{outline:2px solid var(--cs-primary);outline-offset:3px}
[id]{scroll-margin-top:110px}

body .ct-skip{position:absolute;left:-9999px;top:0;z-index:1000000;background:var(--cs-primary);color:#fff;padding:10px 16px;border-radius:0 0 8px 0;font-weight:600}
body .ct-skip:focus{left:0;color:#fff}
.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}

/* Barra de administración con la cabecera fija */
.admin-bar .cs9{top:32px}
@media(max-width:782px){.admin-bar .cs9{top:46px}}

/* Ocultar imagen destacada en páginas sin eliminarla de WordPress (CSS heredado) */
body.page .post-thumbnail,body.page .entry-thumbnail,body.page .featured-image,body.page .post-featured-image,body.page .wp-post-image:not(.cv-page-content img),body.page .elementor-post__thumbnail,body.page .page-header .featured-image,body.page .entry-header .post-thumbnail,body.page .entry-header .featured-image{display:none!important}
/* Excepción: tarjetas de «Enlaces de interés» y listados sí muestran su imagen */
body.page .csei .csei-media .wp-post-image,body.page .csei .csei-media img{display:block!important}

/* Páginas y entradas sin Elementor */
body .ct-wrap{width:min(1240px,calc(100% - 44px));margin-left:auto;margin-right:auto}
body .ct-narrow{width:min(820px,calc(100% - 44px))}
body .ct-page{padding-bottom:80px}
body .ct-page-head{background:var(--cs-ivory);border-bottom:1px solid var(--cs-sand);padding:62px 0 48px;margin-bottom:48px}
body .ct-kicker{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--cs-primary);margin-bottom:8px}
body .ct-page-title{font-size:clamp(30px,3.6vw,48px);line-height:1.15;letter-spacing:-.035em;font-weight:700;margin:0;color:var(--cs-dark)}
body .ct-content h2,body .ct-content h3,body .ct-content h4{line-height:1.25;letter-spacing:-.02em;margin:1.8em 0 .6em}
body .ct-content h2{font-size:clamp(24px,2.4vw,32px)}
body .ct-content h3{font-size:21px}
body .ct-content p,body .ct-content ul,body .ct-content ol{margin:0 0 1.2em}
body .ct-content img{border-radius:6px}
body .ct-content blockquote{margin:1.6em 0;padding:4px 0 4px 22px;border-left:3px solid var(--cs-primary);color:var(--cs-muted)}
body .ct-content table{width:100%;border-collapse:collapse;margin:0 0 1.4em}
body .ct-content th,body .ct-content td{border:1px solid var(--cs-sand);padding:10px 12px;text-align:left}
body .alignleft{float:left;margin:0 1.5em 1em 0}body .alignright{float:right;margin:0 0 1em 1.5em}body .aligncenter{display:block;margin-left:auto;margin-right:auto}
body .wp-caption-text{font-size:12px;color:var(--cs-muted)}

body .ct-btn{display:inline-flex;align-items:center;gap:10px;padding:14px 22px;background:var(--cs-primary);border:1px solid var(--cs-primary);border-radius:6px;color:#fff!important;font-weight:600;font-size:14px;text-decoration:none}
body .ct-btn:hover{background:var(--cs-primary-dark)}
body .ct-btn-ghost{background:transparent;color:var(--cs-primary)!important}
body .ct-btn-ghost:hover{background:#f4e7e4}

body .ct-single-thumb{margin-bottom:36px}body .ct-single-thumb img{width:100%;border-radius:8px;display:block}
body .ct-postnav{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--cs-sand);margin-top:40px;padding-top:22px;font-size:13px;font-weight:600}
body .ct-postnav a{text-decoration:none}

/* Listado del blog */
body .ct-postgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
body .ct-postcard{display:flex;flex-direction:column;background:#fff;border:1px solid #ece6df;text-decoration:none;color:var(--cs-dark);transition:transform .2s,border-color .2s}
body .ct-postcard:hover{transform:translateY(-3px);border-color:#d0b6ae;color:var(--cs-dark)}
body .ct-postcard img,body .ct-postcard-ph{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;background:var(--cs-ivory)}
body .ct-postcard-body{padding:18px;display:flex;flex-direction:column;flex:1}
body .ct-postcard small{font-size:11px;color:var(--cs-muted)}
body .ct-postcard h2{font-size:16px;line-height:1.35;margin:4px 0 8px;letter-spacing:-.01em}
body .ct-postcard p{font-size:12.5px;line-height:1.65;color:#756d67;margin:0 0 14px;flex:1}
body .ct-postcard span{font-size:12px;font-weight:700;color:var(--cs-primary);display:flex;justify-content:space-between}
body .nav-links{display:flex;gap:6px;justify-content:center;margin-top:40px}
body .nav-links .page-numbers{min-width:40px;height:40px;display:inline-grid;place-items:center;border:1px solid var(--cs-sand);border-radius:6px;text-decoration:none;font-weight:600;font-size:13px}
body .nav-links .page-numbers.current{background:var(--cs-primary);border-color:var(--cs-primary);color:#fff}

/* 404 y búsqueda */
body .ct-404{padding:90px 0 110px}
body .ct-404 .ct-page-title{margin-bottom:14px}
body .ct-404-actions{display:flex;flex-wrap:wrap;gap:12px;margin:26px 0 30px}
body .search-form{display:flex;gap:8px;max-width:460px}
body .search-form label{flex:1}
body .search-field{width:100%;padding:12px 14px;border:1px solid #ddd5cd;border-radius:6px;font:inherit}
body .search-submit{padding:12px 18px;border:0;border-radius:6px;background:var(--cs-primary);color:#fff;font:inherit;font-weight:600;cursor:pointer}

/* Comentarios */
body .ct-comments{margin-top:50px;border-top:1px solid var(--cs-sand);padding-top:30px}
body .ct-comments input[type=text],body .ct-comments input[type=email],body .ct-comments input[type=url],body .ct-comments textarea{width:100%;padding:11px 13px;border:1px solid #ddd5cd;border-radius:6px;font:inherit}
body .ct-comments .submit{padding:12px 20px;border:0;border-radius:6px;background:var(--cs-primary);color:#fff;font:inherit;font-weight:600;cursor:pointer}

@media(max-width:980px){.ct-postgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.ct-postgrid{grid-template-columns:1fr}body .ct-wrap,body .ct-narrow{width:calc(100% - 30px)}body .ct-page-head{padding:44px 0 34px;margin-bottom:34px}}
