/* =========================================================
   GLOBAL TYPOGRAPHY (Elementor-controlled)
   ========================================================= */
:root {
  --e-global-typography-primary-font-family: "Lato";
  --e-global-typography-secondary-font-family: "Lato";
  --e-global-typography-text-font-family: "Lato";
  --e-global-typography-accent-font-family: "Lato";
}

/* Bridge Aura → Elementor (future-safe) */
:root {
  --aura-root__body--font-family: var(--e-global-typography-text-font-family);
  --aura-root__heading--font-family: var(--e-global-typography-primary-font-family);
}

/* =========================================================
   CORE DESIGN TOKENS (USED)
   ========================================================= */
:root {
  --aura-root__accent--color:#e53b55;
  --aura-root__accent--text-color:#fff;

  --aura-root__heading--color:#111;
  --aura-root__heading--link-color:#111;
  --aura-root__heading--hover-color:#555;

  --aura-root__body--color:#555;
  --aura-root__body--link-color:#e53b55;
  --aura-root__body--hover-color:#111;
  --aura-root__body--light-color:#999;
  --aura-root__body--muted-color:#bbb;

  --aura-root__general--border-color:#eee;
  --aura-root__general--background-color:#fff;
  --aura-root__general--background-alt-color:#eee;

  --aura-root__feedback--error-color:#f5414f;
  --aura-root__feedback--warning-color:#ffd137;

  --aura-root__text--base:16px;
  --aura-root__text--sm:1rem;
  --aura-root__text--md:1.125rem;
  --aura-root__text--lg:1.25rem;
  --aura-root__text--xl:1.5rem;
  --aura-root__text--xxl:1.75rem;
  --aura-root__text--xxxl:2rem;

  --aura-root__space--base:20px;
  --aura-root__space--sm:20px;
  --aura-root__space--md:25px;
  --aura-root__space--lg:40px;

  --aura-root__transition:.25s ease-out;
  --aura-root__box-shadow:0 1px 3px rgba(0,0,0,0.25);
}

/* =========================================================
   RESET / NORMALIZATION
   ========================================================= */
*,*::before,*::after { box-sizing:border-box }
html { line-height:1.15; -webkit-text-size-adjust:100% }
body {
  margin:0;
  color:var(--aura-root__body--color);
  font-family:var(--aura-root__body--font-family);
  font-size:var(--aura-root__text--sm);
  line-height:1.6;
}

h1,h2,h3,h4,h5,h6 {
  margin:0 0 var(--aura-root__space--sm);
  color:var(--aura-root__heading--color);
  font-family:var(--aura-root__heading--font-family);
  line-height:1.2;
}

h1 { font-size:var(--aura-root__text--xxxl) }
h2 { font-size:var(--aura-root__text--xxl) }
h3 { font-size:var(--aura-root__text--xl) }

p,ul,ol,dl,blockquote { margin-bottom:var(--aura-root__space--sm) }

a {
  color:var(--aura-root__body--link-color);
  transition:var(--aura-root__transition);
}
a:hover { color:var(--aura-root__body--hover-color); text-decoration:none }

/* =========================================================
   LAYOUT
   ========================================================= */
:root {
  --aura-container--width:1400px;
  --aura-container--gutter:15px;
}

.aura-container {
  max-width:calc(var(--aura-container--width) + (var(--aura-container--gutter) * 2));
  padding:0 var(--aura-container--gutter);
  margin:0 auto;
}

.aura-middle { padding:30px 0 }

/* =========================================================
   CONTENT / POSTS
   ========================================================= */
.aura-entry__title a {
  color:var(--aura-root__heading--link-color);
}
.aura-entry__title a:hover {
  color:var(--aura-root__heading--hover-color);
}

.aura-entry--layout-list {
  margin-bottom:40px;
}

.aura-entry--layout-list .aura-entry__title {
  font-size:21px;
  line-height:1.2;
}

/* =========================================================
   PAGINATION (KEEP – template safe)
   ========================================================= */
.aura-pagination {
  display:flex;
  justify-content:center;
  margin-top:40px;
}

.aura-pagination .page-numbers {
  font-size:14px;
}

/* =========================================================
   MEDIA / GALLERY
   ========================================================= */
.gallery {
  display:grid;
  gap:20px;
}
@media (min-width:426px) {
  .gallery { grid-template-columns:repeat(2,1fr) }
}
@media (min-width:1200px) {
  .gallery-columns-3 { grid-template-columns:repeat(3,1fr) }
}

/* =========================================================
   ACCESSIBILITY
   ========================================================= */
.screen-reader-text {
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
}
.screen-reader-text:focus {
  position:static;
  width:auto;
  height:auto;
}
