/* /assets/styles-pages.css */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

:root {
  --album: #004f9f;
  --font-inter: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif; 
}

html, body {
  height: auto !important;
  min-height: 100%;
  overflow-y: auto;
  font-family: var(--font-inter);
}

body.bg-light { background-color: #f8f9fa !important; }

.master-card {
  max-width: 744px;
  margin-left: auto;
  margin-right: auto;
  background: white;
  border:0;
}

/* Style for dynamically injected email link */
.info-email a,
.info-email a:link,
.info-email a:visited,
.info-email a:hover,
.info-email a:active,
.info-email a:focus {
  color: var(--album, #004f9f) !important;
  text-decoration: none !important;
}


/* ----- */
/* Brand */
/* ----- */

.brand-block {
  background-color: var(--brand-bg);
  border: 1px solid var(--brand-border);
  border-radius: .75rem;
  margin: 1rem;
}

@media (max-width: 576px) {
  .brand-block { margin: 1.25rem; 
  }
}

.brand-logo {
  width: 220px;
  margin: 2rem auto 0 auto;
  line-height: 0;          
}
.brand-logo svg {
  display: block;
  width: 100%;
  height: auto;
  vertical-align: top;
}

@media (max-width: 576px) {
  .brand-logo { 
	  width: 180px; 
	  margin: 1.5rem auto 0 auto; 
  }
}

/* ---------- */
/* Navigation */
/* ---------- */

.navigation {
  display: inline-flex;
  gap: 1.25rem;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 2rem;
  margin-bottom: 3rem;
  
}
.navigation a {
  color: #404040;
  font-family: var(--font-inter) !important;
  font-weight: 500;
  font-size: 1.08rem;
  text-decoration: none;
  font-optical-sizing: auto;
}
.navigation a:hover,
.navigation a:focus {
  color: #004f9f;
  text-decoration: none;
  text-underline-offset: 2px;
  outline: none;
}

@media (max-width: 576px) {
  .navigation a {
	font-size: 1rem;
  }
}

/* ------- */
/* Content */
/* ------- */

.title {
  font-family: var(--font-inter) !important;
  font-optical-sizing: auto;
  text-align: center;
  font-size: 1.6rem;
  font-weight: 700;
  color: var(--album);
}

@media (max-width: 576px) {
  .title { 
    font-size: 1.3rem; 
  }
}

.sub-title {
  font-family: var(--font-inter) !important;
  font-optical-sizing: auto;
  text-align: center;
  font-size: 1.2rem;
  font-weight: 700;
  color: var(--album);
}

@media (max-width: 576px) {
  .sub-title { 
    font-size: 1.3rem; 
  }
}

.intro {
  color: #343a40;
  font-size: 1rem;
  line-height: 1.85;
  padding-bottom: 1.25rem;
  text-align: left;
}

@media (max-width: 576px){
  .intro { 
	  font-size: 1rem; 
	  line-height: 1.5; }
}

/* Villkor */
/* ------- */
.villkor-list {
  font-size: 1rem;
  line-height: 1.7;
  color: #343a40;
  padding-left: 1.25rem;
}

.villkor-sub {
  font-family: var(--font-inter) !important;
  font-size: 1rem;
  font-weight: 700;
  color: #6c757d;
  margin-top: 2rem;
  margin-bottom: 1rem;
  text-align: center;
}

.villkor-list-en {
  font-size: 0.9rem;
  line-height: 1.3;
  color: #6c757d;
  padding-left: 1.25rem;
}

.subtitle-terms {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.7;
  color: #343a40;
  margin-top: 0.8rem;
}

.subtitle-terms-en {
  font-size: 0.9rem;
  font-weight: 700;
  color: #6c757d;
  margin-top: 0.8rem;
}

/* Integritetspolicy */
/* ----------------- */
.policy-list {
  font-size: 1rem;
  line-height: 1.7;
  color: #343a40;
  padding-left: 1.25rem;
}

.policy-sub {
  font-family: var(--font-inter) !important;
  font-size: 1rem;
  font-weight: 700;
  color: #6c757d;
  margin-top: 2rem;
  margin-bottom: 1rem;
  text-align: center;
}

.policy-list-en {
  font-size: 0.9rem;
  line-height: 1.3;
  color: #6c757d;
  padding-left: 1.25rem;
}

.subtitle-policy {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.7;
  color: #343a40;
  margin-top: 0.8rem;
}

.subtitle-policy-en {
  font-size: 0.9rem;
  font-weight: 700;
  color: #6c757d;
  margin-top: 0.8rem;
}


/* ------ */
/* Footer */
/* ------ */

.inner-footer {
  margin-top: .25rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
  text-align: center;
}

.inner-footer .links {
  display: flex;
  gap: 0.1rem;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: .5rem;
}

.inner-footer .links a {
  text-decoration: none;
  color: var(--bs-secondary-color, #6c757d) !important;
}

.inner-footer .links a:hover,
.inner-footer .links a:focus {
  text-decoration: none;
  color: var(--album) !important;
}

/* optional: ensure non-link text matches secondary color */
.inner-footer .links span.text-muted {
  color: var(--bs-secondary-color, #6c757d) !important;
}

.footer-logo {
  width: 200px;
  margin: 2rem auto 0 auto;
  line-height: 0;          
}
.footer-logo svg {
  display: block;
  width: 100%;
  height: auto;
  vertical-align: top;
}
