/*--------------------------------------------------------------
>>> Variable definitions
--------------------------------------------------------------*/
:root {
  --bg-color: #ffffff;
  --text-color: #777777;
  --action-text-color: #000000;
  --header-bg-color: #e2e8f0;
  --heading-text-color: #555555;
  --accent: #FF9900;
}

.dark {
  --bg-color: #000000;
  --text-color: #e2e8f0;
  --action-text-color: #ffffff;
  --header-bg-color: #15171c;
  --heading-text-color: #e2e8f0;
}

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
1.0 - Reset
2.0 - Typography
3.0 - Elements
4.0 - Inputs and buttons
5.0 - Navigation
	5.1 - Links
	5.2 - Menus
6.0 - Accessibility
7.0 - Alignments
8.0 - Clearings
9.0 - Widgets
10.0 - Content
	10.1 - Posts and pages
	10.2 - Asides
	10.3 - Comments
	10.7 - Pagination
11.0 - Infinite scroll
12.0 - Media
13.0 - Footer
--------------------------------------------------------------*/

/*--------------------------------------------------------------
1.0 - Reset
--------------------------------------------------------------*/
/* Modern CSS Reset */
html {
  box-sizing: border-box;
  font-size: 62.5%;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

*, *::before, *::after {
  box-sizing: inherit;
}

body, h1, h2, h3, h4, h5, h6, p, figure, blockquote, dl, dd {
  margin: 0;
}

ul, ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

img, embed, iframe, object {
  max-width: 100%;
  height: auto;
  display: block;
}

a {
  text-decoration: none;
  color: inherit;
}

button, input, select, textarea {
  font: inherit;
  color: inherit;
  background: none;
  border: none;
  outline: none;
}

body {
  background: var(--bg-color);
}

/*--------------------------------------------------------------
2.0 Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
textarea {
  color: var(--text-color);
  font-family: 'Open Sans', Arial, sans-serif;
  font-weight: 300;
  font-size: 1.6rem;
  line-height: 1.6;
  word-wrap: break-word;
  hyphens: auto;
}

h1, h2, h3, h4, h5, h6 {
  color: var(--heading-text-color);
  font-weight: 300;
  margin: 0 0 0.5em 0;
}

h1 { font-size: 1.8em; }
h2 { font-size: 1.6em; }
h3 { font-size: 1.2em; }
h4 { font-size: 1.1em; }
h5 { font-size: 1em; }
h6 { font-size: 0.9em; }

p {
  margin-bottom: 1.5em;
}

b, strong { font-weight: bold; }
dfn, cite, em, i { font-style: italic; }
blockquote { margin: 0 1.5em; }
address { margin: 0 0 1.5em; }
pre, code, kbd, tt, var {
  font-family: "Courier 10 Pitch", Courier, monospace;
  font-size: 1.5rem;
  background: #eee;
  padding: 1em;
  border-radius: 4px;
  overflow-x: auto;
}
abbr, acronym {
  border-bottom: 1px dotted #666;
  cursor: help;
}
mark, ins {
  background: #fff9c0;
  text-decoration: none;
}
sup, sub {
  font-size: 75%;
  position: relative;
  vertical-align: baseline;
}
sup { bottom: 1ex; }
sub { top: .5ex; }
small { font-size: 75%; }
big { font-size: 125%; }

/*--------------------------------------------------------------
3.0 Elements
--------------------------------------------------------------*/
hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}
ul, ol {
	margin: 0 0 0.5em 1em;
}
ul {
	list-style: disc;
}
ol {
	list-style: decimal;
}
li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}
dt {
	font-weight: bold;
}
dd {
	margin: 0 1.5em 1.5em;
}
figure {
	margin: 0;
}
table {
	margin: 0 0 1.5em;
	width: 100%;
}
th {
	font-weight: bold;
}

/*--------------------------------------------------------------
4.0 Inputs and buttons
--------------------------------------------------------------*/
/* Modern Inputs and Buttons */
input,
select,
textarea {
  font-size: 1em;
  margin: 0;
  vertical-align: baseline;
  color: #666;
  border: 1px solid #ccc;
  border-radius: 3px;
  padding: 3px;
}

input[type="button"],
input[type="reset"],
input[type="submit"] {
  border-radius: 4px;
  background-color: #444;
  color: #fff;
  font-size: 1em;
  padding: 10px 15px;
  cursor: pointer;
  border: none;
  transition: background 0.3s;
}

input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover,
input[type="button"]:focus,
input[type="reset"]:focus,
input[type="submit"]:focus {
  background-color: #666;
}

input[type="checkbox"],
input[type="radio"] {
  padding: 0;
}

input[type="search"] {
  box-sizing: border-box;
  width: 95%;
}

textarea {
  overflow: auto;
  vertical-align: top;
  width: 98%;
  padding-left: 3px;
}

/*--------------------------------------------------------------
5.0 Navigation
--------------------------------------------------------------*/
.header-imagebwrap{
	margin-bottom:-1.4em;
}
.site-headerbwrap{
	border-bottom: 1px solid #ccc;
	-moz-box-shadow: 0px 1px 3px #ddd;
	-webkit-box-shadow: 0px 1px 3px #ddd;
	box-shadow: 0px 1px 3px #ddd;
	background:var(--header-bg-color);
}
.site-brandingbwrap {
	border-bottom: 1px solid #eee;
	text-align:center;
	padding-bottom:1em;	
}

.site-brandingbwrap a {
	text-decoration:none;	
}
.site-title, .site-title a {
	margin-top:1em;
}
.site-description{
	font-size:1.25em;
}
/*--------------------------------------------------------------
5.1 Links
--------------------------------------------------------------*/
a {
	color: var(--heading-text-color);
	font-weight:300;
	text-decoration:none;
}
a:visited {
	font-weight:300;
	color: var(--heading-text-color);
}
a:hover,
a:focus,
a:active {
	font-weight:300;
	color: var(--accent);
}

/*--------------------------------------------------------------
5.2 Menus
--------------------------------------------------------------*/
.navmenubwrap{
	text-align:center;
}
.main-navigationbwrap {
	clear: both;
	display: block;
	float: left;
	width: 100%;
}
.main-navigationbwrap ul {
	display:block;
	list-style: none;
	margin: 0;
	padding-left: 0;	
}
.main-navigationbwrap li {
	display:inline-block;
}
.main-navigationbwrap a {
	display:block;
	text-decoration: none;
	padding:1em;
	text-align:center;
	color:#888;
}
.main-navigationbwrap ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	display: none;
	position: absolute;
 	top:auto;
	background:#444;
	z-index: 1;
}
.main-navigationbwrap ul ul ul {
	left: 100%;
	top:100%;
	margin-top:-57px;
}
.main-navigationbwrap ul ul a {
	width: 200px;
	text-align:left;
}
.main-navigationbwrap ul ul li {
	display:block;
	text-align:left;
}
.main-navigationbwrap li:hover > a {
	background: var(--accent);
	color:#fff;
}
.main-navigationbwrap ul ul :hover > a {
	background: var(--accent);
	color:#fff;
}
.main-navigationbwrap ul ul a:hover {
	background: var(--accent);
	color:#fff;
}
.main-navigationbwrap ul li:hover > ul {
	display: block;
}
.main-navigationbwrap .current_page_item a,
.main-navigationbwrap .current-menu-item a {
}
/* Small menu */

.menu-togglebwrap {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  position: relative;
  font-size: 1.2em;
  cursor: pointer;
  background: none;
  border: none;
  padding: 1em;
  margin-left: 0;
  margin-right: auto;
}

.menu-togglebwrap .burger {
  display: inline-block;
  width: 28px;
  height: 22px;
  position: relative;
  margin-right: 8px;
  transition: all 0.3s;
}

.menu-togglebwrap .burger span {
  display: block;
  height: 4px;
  width: 100%;
  background: var(--action-text-color);
  border-radius: 2px;
  position: absolute;
  left: 0;
  transition: all 0.3s;
}

.menu-togglebwrap .burger span:nth-child(1) { top: 0; }
.menu-togglebwrap .burger span:nth-child(2) { top: 9px; }
.menu-togglebwrap .burger span:nth-child(3) { top: 18px; }

/* Animación a X cuando está abierto */
.menu-togglebwrap.open .burger span:nth-child(1) {
  transform: rotate(45deg);
  top: 9px;
}
.menu-togglebwrap.open .burger span:nth-child(2) {
  opacity: 0;
}
.menu-togglebwrap.open .burger span:nth-child(3) {
  transform: rotate(-45deg);
  top: 9px;
}

/* Solo muestra el burger en móvil */
.menu-togglebwrap {
  display: none;
}

@media (max-width: 600px) {
  .menu-togglebwrap {
    display: flex !important;
    align-items: center;
    position: fixed;
    top: 10px;
    left: 10px;
    right: auto;
    background: #fff;
    border-radius: 6px;
    box-shadow: 0 2px 8px #eee;
    padding: 1em;
    cursor: pointer;
  }
}

/* Oculta el menú en móvil por defecto */
@media (max-width: 600px) {
  .headersec {
    display: none;
  }
  .main-navigationbwrap ul {
    display: none;
  }
  .main-navigationbwrap.toggled ul {
    display: block;
    position: absolute;
    left: 0;
    top: 60px;
    width: 100vw;
    background: #fff;
    box-shadow: 0 2px 8px #eee;
  }
  .main-navigationbwrap ul li {
    display: block;
    text-align: left;
    padding: 1em;
    border-bottom: 1px solid #eee;
  }
}

.mobile-headerbwrap {
  display: none;
}

@media (max-width: 600px) {
  .mobile-headerbwrap {
    display: flex !important;
    align-items: center;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: 56px;
    background: var(--header-bg-color);
    padding: 0 1em;
  }
  .menu-togglebwrap {
    position: static;
    margin: 0;
    padding: 0;
    background: none;
    box-shadow: none;
  }
  .mobile-titlebwrap {
    font-size: 1.3em;
    font-weight: 600;
    margin-left: 1em;
    color: var(--heading-text-color, #555);
    transition: opacity 0.3s;
  }
  .main-navigationbwrap {
    margin-top: 56px;
  }
}

/*--------------------------------------------------------------
Sticky nav
--------------------------------------------------------------*/
.main-navigationbwrap.fix{
	position: fixed !important;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    max-width: 100%;
	background:var(--header-bg-color);
	border-bottom: 1px solid #ccc;
	-moz-box-shadow: 0px 1px 3px #ddd;
	-webkit-box-shadow: 0px 1px 3px #ddd;
	box-shadow: 0px 1px 3px #ddd;
}
nav#site-navigationbwrap.main-navigationbwrap.fix{
	margin:0px !important;
	padding:0px !important;
}
.main-navigationbwrap.fix ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	display: none;
	position:absolute;
	top: auto;
	background:#444;
	z-index: 1;
}
.admin-bar .main-navigationbwrap.fix {
    top: 25px;
}

/*--------------------------------------------------------------
6.0 Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers */
.screen-reader-textbwrap {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
}

.screen-reader-textbwrap:hover,
.screen-reader-textbwrap:active,
.screen-reader-textbwrap:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 1; /* Above WP toolbar */
}

/*--------------------------------------------------------------
7.0 Alignments
--------------------------------------------------------------*/
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}
.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}
.aligncenter {
	clear: both;
	display: block;
	margin: 0 auto;
}

/*--------------------------------------------------------------
8.0 Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-headerbwrap:before,
.site-headerbwrap:after,
.site-contentbwrap:before,
.site-contentbwrap:after,
.site-footerbwrap:before,
.site-footerbwrap:after {
	content: '';
	display: table;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-headerbwrap:after,
.site-contentbwrap:after,
.site-footerbwrap:after {
	clear: both;
}

/*--------------------------------------------------------------
9.0 Widgets
--------------------------------------------------------------*/
#secondarybwrap .widget {
	margin: 0 0 1.5em;
	border: 1px solid #e5e5e5;
	padding:0.5em 0.8em;
	background:var(--panel-color);
	-moz-box-shadow: 0px 2px 0px #eee;
	-webkit-box-shadow: 0px 2px 0px #eee;
	box-shadow: 0px 2px 0px #eee;
}
#colophonbwrap .widget {
	margin: 0 0 1.5em;
	border: 1px solid #e5e5e5;
	padding:0.5em 0.8em;
	background:var(--panel-color);
	-moz-box-shadow: 0px 2px 0px #eee;
	-webkit-box-shadow: 0px 2px 0px #eee;
	box-shadow: 0px 2px 0px #eee;
}
#secondarybwrap .widget ul{
	margin-left: 0px !important;
	list-style:none;
}
#colophonbwrap .widget ul{
	margin-left: 0px !important;
	list-style:none;	
}
#secondarybwrap .widget li{
	border-bottom: 1px solid #eee;
	margin: -8px -12px 10px;
	padding: 10px;
}
#colophonbwrap .widget li{
	border-bottom: 1px solid #eee;
	margin: -8px -12px 10px;
	padding: 10px;
}
#secondarybwrap .widget ul.children, #secondarybwrap .widget ul.children li, #secondarybwrap .widget ul.sub-menu li {
	border-bottom:none;
	padding:5px 0px 0px 10px;
	margin:0px !important;
}
#colophonbwrap .widget ul.children, #colophonbwrap .widget ul.children li, #colophonbwrap .widget ul.sub-menu li {
	border-bottom:none;
	padding:5px 0px 0px 10px;
	margin:0px !important;
}
#secondarybwrap .widget ul.children li:before , #secondarybwrap .widget ul.sub-menu li:before {
	content: "-";
	padding:5px;
}
#colophonbwrap .widget ul.children li:before , #colophonbwrap .widget ul.sub-menu li:before {
	content: "-";
	padding:5px;
}
/* Make sure select elements fit in widgets */
.widget select {
	max-width: 100%;
}

/* Search widget */
.widget_search .search-submit {
	display: none;
}
#secondarybwrap .widget h2, #secondarybwrap .widget h3 {
	text-shadow: 1px 1px 0 #fff;
	color:#666;
	background-color: #f9f9f9;
	margin: -7px -12px 10px;
	padding: 10px;
	border: 1px solid #fff;
	border-bottom: 1px solid #e5e5e5;
	font-weight:300;
	font-size: 19px;
}
#colophonbwrap .widget h2, #colophonbwrap .widget h3 {
	text-shadow: 1px 1px 0 #fff;
	color:#666;
	background-color: #f9f9f9;
	margin: -7px -12px 10px;
	padding: 10px;
	border: 1px solid #fff;
	border-bottom: 1px solid #e5e5e5;
	font-weight:300;
	font-size: 19px;
}
/*--------------------------------------------------------------
10.0 Content
--------------------------------------------------------------*/

/*--------------------------------------------------------------
10.1 Posts and pages
--------------------------------------------------------------*/
.sticky {
}
.hentry {
	margin: 0 0 1.5em;
}
.byline,
.updated {
}
.single .byline,
.group-blog .byline {
	display: inline;
}
.page-content,
.entry-content,
.entry-summary {
	margin: 1.0em 0 0;
}
.page-links {
	clear: both;
	margin: 0 0 1.5em;
}
article {
	border: 1px solid #e5e5e5;
	padding:1em;
	background:var(--panel-color);
	-moz-box-shadow: 0px 2px 0px #eee;
	-webkit-box-shadow: 0px 2px 0px #eee;
	box-shadow: 0px 2px 0px #eee;
}
.entry-metabwrap {
	border-top: 2px dotted #eee;
	border-bottom: 2px dotted #eee;
	padding-top:0.5em;
	padding-bottom:0.5em;
	margin-top:0.5em;
	margin-bottom:0.5em;
	color:#aaa;
	font-size:0.8em;
}
b.fn{
	margin-bottom:6em !important ;
	}
/*--------------------------------------------------------------
10.2 Asides
--------------------------------------------------------------*/
.blog .format-aside .entry-title,
.archive .format-aside .entry-title {
	display: none;
}

/*--------------------------------------------------------------
10.3 Comments
--------------------------------------------------------------*/
.comment-content a {
	word-wrap: break-word;
}
.bypostauthor {
}

/*--------------------------------------------------------------
12.0 Media
--------------------------------------------------------------*/
img {
	max-width: 100%;
	height:auto;
}
/* Make sure embeds and iframes fit their containers */
embed,
iframe,
object {
	max-width: 100%;
}

/*--------------------------------------------------------------
13.0 Footer
--------------------------------------------------------------*/
.site-footerbwrap {
	padding:1em 0em;
	border-top: 1px solid #ccc;
}
.site-infobwrap {
	text-align:center;
}
.site-infobwrap a {
}
.site-infobwrap a:hover, .site-infobwrap a:focus, .site-infobwrap a:active {
}

/* Modern responsive grid replacement for Blogger theme */
/* filepath: /home/luda/Dev/github/alpinejs/theme/ludablog.xml */

/* Container: max-width and centering */
/* --- Layout moderno sin clases de columnas heredadas --- */

/* Container: ancho fluido en móvil, centrado y limitado en desktop */
.container {
  width: 100%;
  margin: 0 auto;
  padding: 0 1rem;
  box-sizing: border-box;
}

@media (min-width: 900px) {
  .container {
    max-width: 1100px;
    padding: 0 2rem;
  }
}

/* Main: dos columnas con flex */
.site-contentbwrap {
  display: flex;
  gap: 2rem;
  padding-top: 2em !important;
  padding-bottom: 2em !important;
}

#primarybwrap {
  flex: 2 1 0;
  min-width: 0;
}

#secondarybwrap {
  flex: 1 1 0;
  min-width: 0;
}

/* Footer: cards responsivas con grid */
.widget-footerbwrap {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 2rem;
  padding: 2rem 1rem;
}

.widget-footerbwrap > div {
  background: var(--panel-color);
  border-radius: 8px;
  box-shadow: 0 2px 8px #eee;
  padding: 1.5rem;
  min-width: 0;
}

/* Responsive sin media queries: flex y grid se adaptan automáticamente */
img, embed, iframe, object {
  max-width: 100%;
  height: auto;
}

/* Opcional: centrar el texto en el footer */
.site-infobwrap {
  text-align: center;
  font-size: 0.95em;
  color: #888;
  margin-top: 2em;
}

/* Opcional: mejora visual en cards */
.widget-footerbwrap h2,
.widget-footerbwrap .title {
  font-size: 1.2em;
  margin-bottom: 0.5em;
  color: #333;
}

/* Opcional: apilar columnas en pantallas muy pequeñas (solo si quieres media queries)*/
@media (max-width: 700px) {
  .site-contentbwrap {
    flex-direction: column;
    gap: 1rem;
  }
  #primarybwrap, #secondarybwrap {
    width: 100%;
    flex: unset;
  }
}

/*--------------------------------------------------------------
>>> Thumbnails
--------------------------------------------------------------*/
.pbtthumbimg {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0.5em auto;
  padding: 4px;
  border: 1px solid #eee;
  background: var(--shadow-color);
  border-radius: 6px;
  box-shadow: 0 2px 8px #eee;
}

/*--------------------------------------------------------------
>>> Theme Icon
--------------------------------------------------------------*/

.theme-toggle-btn {
  position: fixed;
  top: 10px;
  right: 20px;
  z-index: 2;
  border: 0;
  background: none;
  cursor: pointer;
  padding: 0;
  transition: background 0.2s;
}
.sun { fill: black; }
.moon { fill: transparent; }
.dark .sun { fill: transparent; }
.dark .moon { fill: white; }