/* Sajt 1 — layout enligt Raketbolaget mockup (ljus isblå canvas) */

body.theme-1 {
  --rb-soot: #171717;
  --rb-steel: #a8b0b7;
  --rb-ice: #dcecf4;
  --rb-orange: #e86a24;
  --rb-flame: #b7d9e8;
  --rb-font-display: "Space Grotesk", system-ui, sans-serif;
  --rb-font-body: "Inter", system-ui, sans-serif;

  font-family: var(--rb-font-body);
  font-weight: 400;
  color: var(--rb-soot);
  background: var(--rb-ice);
  line-height: 1.5;
}

body.theme-1::before {
  display: none;
}

body.theme-1 .site-wrap--rb1 {
  max-width: none;
  padding: 0;
  margin: 0;
}

body.theme-1 .rb-page {
  margin: 0;
}

/* —— Hero (foto + vit text + nav längst ner) —— */
body.theme-1 .rb-hero {
  position: relative;
  min-height: min(72vh, 640px);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  overflow: hidden;
  background: #2a3238;
}

body.theme-1 .rb-hero__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

body.theme-1 .rb-hero__shade {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    180deg,
    rgba(23, 23, 23, 0.15) 0%,
    rgba(23, 23, 23, 0.35) 45%,
    rgba(23, 23, 23, 0.55) 100%
  );
  pointer-events: none;
}

body.theme-1 .rb-hero__content {
  position: relative;
  z-index: 2;
  padding: 2.5rem 1.5rem 2.5rem;
  max-width: 1200px;
  margin: 0 auto;
  width: 100%;
}

body.theme-1 .rb-hero h1 {
  margin: 0 0 0.35rem;
  font-family: var(--rb-font-display);
  font-size: clamp(2.25rem, 6vw, 3.75rem);
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #fff;
  line-height: 1.05;
}

body.theme-1 .rb-hero__tagline {
  margin: 0;
  max-width: 28em;
  font-family: var(--rb-font-display);
  font-size: clamp(0.95rem, 2.2vw, 1.2rem);
  font-weight: 400;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.92);
}

/* —— Ljus canvas —— */
body.theme-1 .rb-canvas {
  position: relative;
  background: var(--rb-ice);
  padding: 0 0 2.5rem;
  overflow: hidden;
}

body.theme-1 .rb-canvas__inner {
  position: relative;
  z-index: 1;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 1rem;
}

body.theme-1 .rb-deco--dots {
  position: absolute;
  right: 4%;
  bottom: 18%;
  width: 120px;
  height: 80px;
  background-image: radial-gradient(circle, rgba(23, 23, 23, 0.12) 1.5px, transparent 1.5px);
  background-size: 10px 10px;
  pointer-events: none;
}

body.theme-1 .rb-deco--cross {
  position: absolute;
  width: 16px;
  height: 16px;
  pointer-events: none;
}

body.theme-1 .rb-deco--cross::before,
body.theme-1 .rb-deco--cross::after {
  content: "";
  position: absolute;
  background: var(--rb-orange);
  opacity: 0.65;
}

body.theme-1 .rb-deco--cross::before {
  top: 50%;
  left: 0;
  right: 0;
  height: 1px;
  margin-top: -0.5px;
}

body.theme-1 .rb-deco--cross::after {
  left: 50%;
  top: 0;
  bottom: 0;
  width: 1px;
  margin-left: -0.5px;
}

body.theme-1 .rb-deco--cross-1 {
  left: 8%;
  top: 42%;
}

body.theme-1 .rb-deco--cross-2 {
  right: 22%;
  bottom: 28%;
}

/* —— Rad med fyra rektangulära paneler —— */
body.theme-1 .rb-row-four {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  padding-top: 10px;
  padding-bottom: 10px;
}

body.theme-1 .rb-row-four__photo {
  margin: 0;
  aspect-ratio: 5 / 4;
  overflow: hidden;
  background: #fff;
  border: 1px solid rgba(23, 23, 23, 0.06);
}

body.theme-1 .rb-row-four__photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

body.theme-1 .rb-row-four__photo--placeholder {
  background: rgba(255, 255, 255, 0.35);
  border-style: dashed;
  border-color: rgba(23, 23, 23, 0.1);
}

body.theme-1 .rb-prototype {
  position: relative;
  padding: 1.1rem 1rem 1.15rem;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.55);
  border: 1px solid rgba(23, 23, 23, 0.08);
}

body.theme-1 .rb-row-four__status {
  aspect-ratio: 5 / 4;
  min-height: 0;
}

body.theme-1 .rb-prototype__bg {
  position: absolute;
  inset: 0;
  opacity: 0.14;
  pointer-events: none;
}

body.theme-1 .rb-prototype__bg img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: right bottom;
  mix-blend-mode: multiply;
}

body.theme-1 .rb-prototype__body {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 100%;
}

body.theme-1 .rb-prototype__title {
  margin: 0 0 0.75rem;
  font-family: var(--rb-font-display);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--rb-soot);
}

body.theme-1 .rb-checklist {
  list-style: none;
  margin: 0 0 auto;
  padding: 0;
}

body.theme-1 .rb-checklist__item {
  display: flex;
  align-items: flex-start;
  gap: 0.6rem;
  margin-bottom: 0.4rem;
  font-size: 0.8rem;
  color: var(--rb-soot);
}

body.theme-1 .rb-checklist__item:not(.is-done) {
  color: #4a5259;
}

body.theme-1 .rb-checklist__mark {
  flex-shrink: 0;
  width: 12px;
  height: 12px;
  margin-top: 0.25rem;
  border: 1px solid var(--rb-steel);
  border-radius: 50%;
  background: transparent;
}

body.theme-1 .rb-checklist__item.is-done .rb-checklist__mark {
  border-color: var(--rb-orange);
  background: var(--rb-orange);
}

body.theme-1 .rb-below {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr;
  gap: 10px;
  align-items: start;
  padding-bottom: 10px;
}

body.theme-1 .rb-panel {
  padding: 1.35rem 1.15rem;
  background: rgba(255, 255, 255, 0.45);
  border: 1px solid rgba(23, 23, 23, 0.08);
}

body.theme-1 .rb-panel__title {
  margin: 0 0 0.75rem;
  font-family: var(--rb-font-display);
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--rb-soot);
}

body.theme-1 .rb-panel p {
  margin: 0 0 1rem;
  font-size: 0.92rem;
  color: #3d454c;
  max-width: 36em;
}

body.theme-1 .rb-panel--newsletter {
  margin: 0;
  max-width: 100%;
}

body.theme-1 .rb-panel--newsletter p {
  max-width: none;
}

body.theme-1 .rb-panel--contact p {
  margin: 0;
}

body.theme-1 .rb-contact-email {
  font-family: var(--rb-font-display);
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: var(--rb-orange);
  text-decoration: none;
  word-break: break-all;
}

body.theme-1 .rb-contact-email:hover {
  color: var(--rb-soot);
}

/* —— Formulär —— */
body.theme-1 .newsletter-form label {
  font-family: var(--rb-font-display);
  font-size: 0.65rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--rb-soot);
}

body.theme-1 .newsletter-form input[type="email"] {
  width: 100%;
  max-width: none;
  padding: 0.55rem 0.6rem;
  border: 1px solid rgba(23, 23, 23, 0.15);
  border-radius: 0;
  background: #fff;
  font-size: 0.95rem;
}

body.theme-1 .newsletter-form .checkbox {
  font-size: 0.78rem;
  color: #4a5259;
  max-width: none;
}

body.theme-1 .btn-primary {
  border-radius: 0;
  background: var(--rb-orange);
  color: #fff;
  font-family: var(--rb-font-display);
  font-size: 0.68rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  padding: 0.65rem 1.25rem;
}

body.theme-1 .btn-primary:hover {
  background: #d45f1f;
}

body.theme-1 .alert {
  border-radius: 0;
  margin-top: 10px;
}

body.theme-1 .alert-ok {
  background: rgba(255, 255, 255, 0.7);
  color: var(--rb-soot);
  border: 1px solid rgba(23, 23, 23, 0.1);
}

body.theme-1 .alert-err {
  background: rgba(232, 106, 36, 0.12);
  color: #8a3d12;
}

/* —— Sidfot i canvas —— */
body.theme-1 .rb-below .rb-partner-badge {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.5rem;
  padding: 0.5rem 0 0;
  max-width: 100%;
}

body.theme-1 .rb-below .rb-partner-badge__logo {
  display: block;
  width: 100%;
  max-width: 300px;
  height: auto;
}

body.theme-1 .rb-below .rb-partner-badge__label {
  margin: 0;
  font-family: var(--rb-font-body);
  font-size: 0.78rem;
  font-weight: 500;
  color: #4a5259;
  line-height: 1.35;
  max-width: 300px;
}

body.theme-1 .rb-site-footer {
  position: relative;
  z-index: 1;
  max-width: 1200px;
  margin: 1.5rem auto 0;
  padding: 0 1rem;
  text-align: right;
}

body.theme-1 .rb-site-footer__site {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  font-family: var(--rb-font-display);
  font-size: 0.68rem;
  font-weight: 500;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--rb-soot);
  text-decoration: none;
}

body.theme-1 .rb-site-footer__site::before {
  content: "";
  width: 24px;
  height: 2px;
  background: var(--rb-orange);
}

/* Dölj generisk footer (ersatt ovan) */
body.theme-1 .site-footer {
  display: none;
}

body.theme-1 .fire-audio-toggle {
  background: #fff;
  color: var(--rb-soot);
  border: 1px solid rgba(23, 23, 23, 0.15);
  border-radius: 0;
  font-family: var(--rb-font-display);
  font-size: 0.65rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.theme-1 .modal {
  background: var(--rb-ice);
  color: var(--rb-soot);
  border-radius: 0;
  border: 1px solid rgba(23, 23, 23, 0.12);
}

body.theme-1 .panel {
  background: transparent;
  border: none;
  box-shadow: none;
  padding: 0;
}

/* —— Responsivt —— */
@media (max-width: 900px) {
  body.theme-1 .rb-row-four {
    grid-template-columns: repeat(2, 1fr);
  }

  body.theme-1 .rb-below {
    grid-template-columns: 1fr;
  }

  body.theme-1 .rb-below .rb-partner-badge {
    align-items: center;
    text-align: center;
  }

  body.theme-1 .rb-below .rb-partner-badge__label {
    max-width: none;
  }

  body.theme-1 .rb-below .rb-partner-badge__logo {
    margin: 0 auto;
  }
}

@media (max-width: 520px) {
  body.theme-1 .rb-row-four {
    grid-template-columns: 1fr;
  }
}
