/*
 * Rondaris concept 04 — presentation for the preserved public-page content.
 * Loaded after the vendor layouts and homepage style. All rules are scoped
 * to detail-site; the source copy, route anchors and interactions stay intact.
 */

body.detail-site .r-website {
  --r-ink: #092340;
  --r-body: #496078;
  --r-blue: #005e9c;
  --r-blue-dark: #004b7b;
  --r-line: #dfe8ee;
  --r-wash: #f0f7fb;
  font-family: var(--sans, "Manrope", Arial, sans-serif);
  color: var(--r-ink);
  background: #fff;
}

body.detail-site .r-website h1,
body.detail-site .r-website h2,
body.detail-site .r-website h3,
body.detail-site .r-brand-panel p {
  font-family: var(--sans, "Manrope", Arial, sans-serif);
  font-weight: 750;
  letter-spacing: -0.045em;
  overflow-wrap: break-word;
}

body.detail-site .r-website h1 {
  font-size: clamp(42px, 4.1vw, 58px);
  line-height: 1.13;
  letter-spacing: -0.055em;
}

body.detail-site .r-website h2 {
  font-size: clamp(32px, 3.4vw, 46px);
  line-height: 1.17;
}

body.detail-site .r-website h3 {
  font-size: 24px;
  line-height: 1.3;
  letter-spacing: -0.035em;
}

body.detail-site .r-website p {
  font-size: 16px;
  line-height: 1.85;
}

body.detail-site .r-website figure {
  min-width: 0;
  margin: 0;
}

body.detail-site .r-website .r-eyebrow {
  font: 500 11px/1.8 var(--mono, "IBM Plex Mono", monospace);
  letter-spacing: 0.055em;
  color: var(--r-blue);
  margin-bottom: 22px;
}

body.detail-site .r-container {
  width: min(1280px, calc(100% - 96px));
}

body.detail-site .r-website section[id] {
  scroll-margin-top: 32px;
}

body.detail-site .r-website .r-section,
body.detail-site .r-website .r-detail-section,
body.detail-site .r-website .r-review-section,
body.detail-site .r-website .r-actuals-section {
  padding-block: 88px;
}

body.detail-site .r-website .r-detail-section--wash,
body.detail-site .r-website .r-review-section,
body.detail-site .r-website .r-actuals-section {
  background: var(--r-wash);
}

body.detail-site .r-website .r-detail-grid,
body.detail-site .r-website .r-review-grid,
body.detail-site .r-website .r-actuals-grid {
  gap: 64px;
}

body.detail-site .r-website .r-detail-copy > p:not(.r-eyebrow),
body.detail-site .r-website .r-feature-copy > p:not(.r-eyebrow) {
  margin-top: 22px;
}

body.detail-site .r-website .r-section-heading {
  gap: 56px;
  margin-bottom: 42px;
}

body.detail-site .r-website .r-section-heading > p {
  max-width: 420px;
  font-size: 16px;
  line-height: 1.85;
}

/* The source SVGs are decorative; keep labels without adding replacements. */
body.detail-site .r-website svg[class*="lucide-arrow"],
body.detail-site .r-breadcrumb svg[class*="lucide-chevron"] {
  display: none;
}

body.detail-site .r-website .r-button {
  min-height: 52px;
  padding: 14px 22px;
  gap: 12px;
  background: var(--r-blue);
  color: #fff;
  border: 1px solid var(--r-blue);
  border-radius: 6px;
  font-family: inherit;
  font-size: 14px;
  font-weight: 750;
  line-height: 1.5;
  white-space: normal;
  text-align: center;
  box-shadow: none;
}

body.detail-site .r-website .r-button:hover {
  color: #fff;
  background: var(--r-blue-dark);
  border-color: var(--r-blue-dark);
  transform: none;
  box-shadow: 0 5px 14px #003e6417;
}

body.detail-site .r-website .r-button--quiet,
body.detail-site .r-website .r-button--white {
  color: var(--r-blue);
  background: #fff;
  border-color: #a9c6da;
}

body.detail-site .r-website .r-button--quiet:hover,
body.detail-site .r-website .r-button--white:hover {
  background: #e8f1f8;
  color: var(--r-blue-dark);
}

body.detail-site .r-website .r-text-link {
  min-height: 44px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.6;
  gap: 10px;
  color: var(--r-blue);
  max-width: 100%;
}

body.detail-site .r-website .r-text-link:hover {
  text-decoration: underline;
  text-underline-offset: 5px;
}

body.detail-site
  .r-website
  :is(a, button, input, textarea, select, summary):focus-visible {
  outline: 3px solid var(--r-blue);
  outline-offset: 4px;
}

/* A shared photographic opening, using the already reviewed homepage asset. */
body.detail-site .r-editorial-hero,
body.detail-site .r-calc-hero {
  position: relative;
  isolation: isolate;
  color: #fff;
  background: #003e64;
}

body.detail-site .r-editorial-hero::before,
body.detail-site .r-calc-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  background: url("/assets/website-v17-20261104/assets/rondaris-atmosfeer-v3.webp") center 35% / cover
    no-repeat;
}

body.detail-site .r-editorial-hero::after,
body.detail-site .r-calc-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(90deg, #092340e6 0%, #092340bd 53%, #092340b3 100%),
    linear-gradient(0deg, #003e64 0%, #003e6400 70%);
}

body.detail-site .r-calc-hero.r-container {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0 max(48px, calc((100vw - 1280px) / 2));
}

body.detail-site .r-editorial-hero-grid,
body.detail-site .r-calc-hero-grid {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 64px;
  align-items: center;
  padding-block: 36px 64px;
}

body.detail-site .r-editorial-hero-grid--text {
  display: block;
  padding-block: 30px 54px;
}

body.detail-site .r-editorial-intro,
body.detail-site .r-calc-hero-grid > div:first-child {
  min-width: 0;
}

body.detail-site .r-website :is(.r-editorial-hero, .r-calc-hero) h1 {
  color: #fff;
  font-size: clamp(39px, 3.85vw, 55px);
  line-height: 1.14;
  hyphens: manual;
}

body.detail-site .r-website :is(.r-editorial-hero, .r-calc-hero) h1 em,
body.detail-site .r-website :is(.r-editorial-hero, .r-calc-hero) .r-eyebrow {
  color: #6fb3e8;
}

body.detail-site .r-website :is(.r-editorial-hero, .r-calc-hero) .r-lead {
  color: #e8f1f8;
  font-size: 17px;
  line-height: 1.85;
  margin-top: 24px;
  max-width: 620px;
}

body.detail-site .r-breadcrumb,
body.detail-site .r-editorial-hero .r-breadcrumb {
  padding: 23px 0 15px;
  color: #e8f1f8;
  font-size: 13px;
  line-height: 1.6;
  gap: 16px;
  flex-wrap: wrap;
}

body.detail-site .r-breadcrumb a {
  color: #fff;
  text-decoration: underline;
  text-decoration-color: #6fb3e870;
  text-underline-offset: 5px;
}

body.detail-site .r-breadcrumb a:hover {
  color: #6fb3e8;
}

body.detail-site .r-page-actions,
body.detail-site .r-calc-hero .r-hero-actions {
  gap: 15px 24px;
  margin-top: 27px;
  align-items: center;
}

body.detail-site .r-website :is(.r-editorial-hero, .r-calc-hero) .r-text-link {
  color: #fff;
}

body.detail-site
  .r-website
  :is(.r-editorial-hero, .r-calc-hero)
  .r-text-link:hover {
  color: #6fb3e8;
}

body.detail-site .r-website :is(.r-editorial-hero, .r-calc-hero) .r-button {
  border-color: #6fb3e8;
}

body.detail-site .r-website :is(.r-editorial-hero, .r-calc-hero) .r-check-list {
  margin-block: 27px 0;
}

body.detail-site
  .r-website
  :is(.r-editorial-hero, .r-calc-hero)
  .r-check-list
  li {
  color: #e8f1f8;
  font-size: 14px;
  line-height: 1.75;
}

body.detail-site
  .r-website
  :is(.r-editorial-hero, .r-calc-hero)
  .r-check-list
  svg {
  color: #6fb3e8;
}

body.detail-site
  .r-website
  :is(.r-editorial-hero, .r-calc-hero, .r-invitation)
  :focus-visible {
  outline-color: #6fb3e8;
}

/* Frames show the actual application, without tilt, cropping or a fake shell. */
body.detail-site .r-website .r-browser-frame,
body.detail-site .r-website .r-product-figure .r-browser-frame,
body.detail-site .r-website .r-portal-product > figure {
  transform: none;
}

body.detail-site .r-website .r-browser-frame,
body.detail-site .r-website .r-product-video-frame {
  border: 1px solid var(--r-line);
  border-radius: 12px;
  box-shadow: 0 14px 42px #09234012;
  background: #fff;
}

body.detail-site .r-website .r-product-video-frame {
  aspect-ratio: auto;
}

body.detail-site .r-website .r-product-video {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin: 0;
}

body.detail-site .r-website .r-product-video video,
body.detail-site .r-website .r-product-video-frame > img,
body.detail-site .r-website .r-editorial-photo img,
body.detail-site .r-website .r-practice-figure img,
body.detail-site .r-website .r-product-figure img {
  width: 100%;
  height: auto;
  object-fit: contain;
  object-position: top center;
}

body.detail-site .r-website .r-product-video figcaption,
body.detail-site .r-website .r-demo-caption,
body.detail-site .r-website .r-practice-figure figcaption,
body.detail-site .r-website .r-editorial-photo figcaption,
body.detail-site .r-website .r-actuals-grid figcaption {
  font-size: 13px;
  color: var(--r-body);
  line-height: 1.8;
}

body.detail-site
  .r-website
  :is(.r-editorial-hero, .r-calc-hero)
  .r-product-video
  figcaption {
  color: #e8f1f8;
}

body.detail-site .r-website .r-product-video-dot {
  background: var(--r-blue);
}

body.detail-site
  .r-website
  :is(.r-editorial-hero, .r-calc-hero)
  .r-product-video-dot {
  background: #6fb3e8;
}

body.detail-site .r-website .r-video-toggle {
  min-height: 44px;
  color: var(--r-blue);
  background: #fff;
  border-color: #a9c6da;
  font-size: 13px;
}

body.detail-site .r-website .r-video-stappen {
  gap: 7px;
  margin-top: 12px;
}

body.detail-site .r-website .r-video-stappen button {
  min-height: 44px;
  font-family: inherit;
  font-size: 13px;
  font-weight: 650;
  line-height: 1.4;
  padding: 10px 14px;
}

body.detail-site .r-website .r-video-stappen button[aria-pressed="true"] {
  color: #fff;
  background: var(--r-blue);
  border-color: var(--r-blue);
}

body.detail-site .r-website .r-video-stappen button[aria-pressed="true"] span {
  color: #e8f1f8;
}

body.detail-site .r-website .r-handset {
  width: min(300px, 100%);
  border-color: #003e64;
  box-shadow: 0 14px 32px #09234017;
  border-radius: 24px;
}

body.detail-site .r-phone-figure::before {
  display: none;
}

/* Keep the original editorial structures; give them one common type scale. */
body.detail-site .r-website .r-calc-anchor-nav {
  background: #fff;
  border-color: var(--r-line);
}

body.detail-site .r-website .r-calc-anchor-nav > .r-container {
  overflow-x: auto;
  justify-content: flex-start;
  flex-wrap: nowrap;
  gap: 30px;
}

body.detail-site .r-website .r-calc-anchor-nav a {
  font-size: 13px;
  line-height: 1.6;
  padding-block: 20px;
  flex-shrink: 0;
  color: var(--r-blue);
}

body.detail-site .r-website .r-check-list li,
body.detail-site .r-website .r-detail-list dt {
  font-size: 16px;
  line-height: 1.75;
}

body.detail-site .r-website .r-detail-list dd,
body.detail-site .r-website .r-editorial-columns p,
body.detail-site .r-website .r-price-parts p,
body.detail-site .r-website .r-business-grid p {
  font-size: 15px;
  line-height: 1.85;
}

body.detail-site .r-website .r-detail-list dt {
  font-weight: 750;
}

body.detail-site .r-website .r-detail-list dd {
  margin-left: 0;
}

body.detail-site .r-website .r-price-parts article > span,
body.detail-site .r-website .r-business-grid article > span,
body.detail-site .r-website .r-review-steps li > span {
  font-size: 12px;
  line-height: 1.7;
  color: var(--r-blue);
}

body.detail-site .r-website .r-business-section .r-eyebrow,
body.detail-site .r-website .r-business-section article > span,
body.detail-site .r-website .r-business-section .r-text-link {
  color: #6fb3e8;
}

body.detail-site .r-website .r-business-section .r-text-link:hover {
  color: #fff;
}

body.detail-site .r-website .r-review-steps,
body.detail-site .r-website .r-journey,
body.detail-site .r-website .r-export-sheets,
body.detail-site .r-website .r-state-chain {
  list-style: none;
  padding-left: 0;
}

body.detail-site .r-website .r-review-steps strong {
  font-size: 14px;
  font-weight: 750;
}

body.detail-site .r-website .r-review-steps p,
body.detail-site .r-website .r-review-note,
body.detail-site .r-website .r-optional-note,
body.detail-site .r-website .r-business-note,
body.detail-site .r-website .r-margin-note p {
  font-size: 14px;
  line-height: 1.85;
}

body.detail-site .r-website .r-journey h2 {
  font-size: 21px;
  letter-spacing: -0.035em;
  line-height: 1.35;
}

body.detail-site .r-website .r-journey p {
  font-size: 14px;
  line-height: 1.8;
}

body.detail-site .r-website .r-handoff-flow {
  gap: 25px;
}

body.detail-site .r-website .r-handoff-flow strong {
  font-size: 24px;
}

body.detail-site .r-website .r-handoff-flow span,
body.detail-site .r-website .r-state-chain span {
  font-size: 12px;
  line-height: 1.7;
}

body.detail-site .r-website .r-feature-index .r-detail-list dd {
  font-size: 14px;
  line-height: 1.8;
}

body.detail-site .r-website .r-feature-index summary,
body.detail-site .r-website .r-faq summary {
  font-family: inherit;
  font-size: 17px;
  line-height: 1.65;
  font-weight: 650;
  min-height: 60px;
}

body.detail-site .r-website .r-faq details > p {
  font-size: 15px;
  line-height: 1.85;
}

body.detail-site .r-website .r-invitation {
  background: #003e64;
  color: #fff;
  padding-block: 72px;
}

body.detail-site .r-website .r-invitation::before {
  display: none;
}

body.detail-site .r-website .r-invitation-inner {
  padding-block: 0;
}

body.detail-site .r-website .r-invitation h2 {
  color: #fff;
}

body.detail-site .r-website .r-invitation .r-eyebrow {
  color: #6fb3e8;
}

body.detail-site .r-website .r-invitation p:not(.r-eyebrow),
body.detail-site .r-website .r-invitation-actions small {
  color: #e8f1f8;
  font-size: 15px;
  line-height: 1.85;
}

body.detail-site .r-website .r-invitation .r-button {
  background: var(--r-blue);
  color: #fff;
  border-color: #6fb3e8;
}

body.detail-site .r-website .r-invitation .r-button:hover {
  background: var(--r-blue-dark);
}

body.detail-site .r-website .r-invitation .r-text-link {
  color: #fff;
}

/* Company/contact openings stay compact; no invented portrait is introduced. */
body.detail-site[data-page="over"] .r-editorial-hero-grid {
  padding-block: 28px 48px;
}

body.detail-site .r-website .r-brand-panel {
  border: 1px solid #dfe8ee;
  border-radius: 12px;
  padding: 30px;
  background: #f0f7fb;
}

body.detail-site .r-website .r-brand-panel img {
  width: 210px;
  margin-bottom: 24px;
}

body.detail-site .r-website .r-brand-panel p {
  font-size: 26px;
  color: var(--r-ink);
  line-height: 1.35;
}

body.detail-site .r-website .r-brand-panel small {
  font-size: 13px;
  line-height: 1.8;
  margin-top: 20px;
}

body.detail-site .r-website .r-founder-portrait {
  aspect-ratio: auto;
  min-height: 250px;
  max-height: none;
  background: #f0f7fb;
  border: 1px solid var(--r-line);
  border-radius: 12px;
  padding: 32px;
  gap: 24px;
}

body.detail-site .r-website .r-founder-initial {
  width: 94px;
  height: 94px;
  background: white;
  color: #003e64;
  font-family: inherit;
  font-size: 49px;
  border-color: #dfe8ee;
}

body.detail-site .r-website .r-founder-portrait--compact {
  min-height: 0;
  border: 0;
  background: transparent;
  padding: 0;
}

body.detail-site .r-website .r-founder-portrait--compact .r-founder-initial {
  width: 58px;
  height: 58px;
  font-size: 28px;
  background: #e8f1f8;
}

body.detail-site .r-website .r-founder-letter p {
  font-size: 17px;
  line-height: 1.9;
}

body.detail-site .r-website .r-contact-section {
  padding-block: 64px 88px;
}

body.detail-site .r-website .r-contact-grid {
  gap: 72px;
}

body.detail-site .r-website .r-contact-form-wrap {
  padding: 32px;
  background: #f0f7fb;
  border-radius: 12px;
  box-shadow: none;
}

body.detail-site .r-website .r-field-label {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.7;
}

body.detail-site .r-website .r-field {
  font-family: inherit;
  font-size: 16px;
  min-height: 50px;
  border-color: #7a8ea2;
}

body.detail-site .r-website textarea.r-field {
  min-height: 160px;
}

body.detail-site .r-website .r-field::placeholder {
  color: #56697d;
}

body.detail-site .r-website .r-privacy-choice,
body.detail-site .r-website .r-contact-note,
body.detail-site .r-website .r-form-privacy {
  font-size: 13px !important;
  line-height: 1.85;
}

body.detail-site .r-website .r-contact-direct .r-text-link {
  font-size: clamp(16px, 1.7vw, 20px);
  overflow-wrap: anywhere;
}

/* The preserved QR preview also uses utility class names, rather than r-*. */
body.detail-site .r-qr-product > div {
  display: grid;
  grid-template-columns: minmax(140px, 0.85fr) minmax(0, 1.2fr);
  gap: 22px;
  align-items: center;
}

body.detail-site .r-qr-product > div > figure {
  width: 100%;
  max-width: 240px;
  margin: 0 auto;
  padding: 18px;
  border: 1px solid var(--r-line);
  border-radius: 9px;
  background: #fff;
  transform: none;
}

body.detail-site .r-qr-product figure > figcaption {
  display: flex;
  align-items: center;
  gap: 8px;
  padding-bottom: 13px;
  border-bottom: 1px solid var(--r-line);
  font-size: 13px;
  line-height: 1.6;
  font-weight: 750;
}

body.detail-site .r-qr-product figure > img {
  width: 100%;
  height: auto;
  margin: 15px auto 0;
}

body.detail-site .r-qr-product figure > div {
  margin-top: 9px;
  text-align: center;
  font-size: 12px;
  line-height: 1.75;
  color: var(--r-body);
}

body.detail-site .r-qr-product > div > a {
  overflow: hidden;
  border: 1px solid var(--r-line);
  border-radius: 9px;
  color: var(--r-ink);
  background: #fff;
}

body.detail-site .r-qr-product > div > a > div:first-child {
  padding: 17px 18px;
  background: #e8f1f8;
  border-bottom: 1px solid var(--r-line);
  font-size: 13px;
  line-height: 1.8;
}

body.detail-site .r-qr-product > div > a > div:first-child > div:nth-child(2) {
  font-size: 22px;
  font-weight: 750;
  color: #092340;
}

body.detail-site .r-qr-product > div > a > div:nth-child(2) {
  padding-inline: 18px;
}

body.detail-site .r-qr-product > div > a > div:nth-child(2) > div {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding-block: 14px;
  font-size: 13px;
  line-height: 1.75;
  border-bottom: 1px solid var(--r-line);
}

body.detail-site .r-qr-product > div > a > div:last-child {
  padding: 14px 18px;
  color: #005e9c;
  font-weight: 750;
  font-size: 13px;
  line-height: 1.75;
}

/* Privacy is SSR content with dashboard/Tailwind class names, not a hero grid. */
body.detail-site[data-page="privacy"] .r-privacy-content > div,
body.detail-site[data-page="privacy"] .r-privacy-content > div > div {
  max-width: none;
  width: 100%;
  margin: 0;
  padding: 0;
  background: #fff;
}

body.detail-site[data-page="privacy"] .r-privacy-content header {
  max-width: none;
  width: 100%;
  margin: 0 0 42px;
  padding: 46px max(48px, calc((100vw - 1280px) / 2)) 48px;
  color: #fff;
  background:
    linear-gradient(90deg, #092340ed, #092340bd),
    url("/assets/website-v17-20261104/assets/rondaris-atmosfeer-v3.webp") center 40% / cover no-repeat;
}

body.detail-site[data-page="privacy"] .r-privacy-content header > div {
  display: flex;
  align-items: center;
  gap: 17px;
  max-width: 900px;
}

body.detail-site[data-page="privacy"] .r-privacy-content header > div > span {
  display: grid;
  place-items: center;
  flex-shrink: 0;
  width: 42px;
  height: 42px;
  background: #ffffff14;
  border: 1px solid #6fb3e870;
  border-radius: 9px;
  color: #6fb3e8;
}

body.detail-site[data-page="privacy"] .r-privacy-content header svg {
  width: 23px;
  height: 23px;
}

body.detail-site[data-page="privacy"] .r-privacy-content header h1 {
  color: #fff;
  font-size: clamp(34px, 3.8vw, 50px);
  line-height: 1.2;
}

body.detail-site[data-page="privacy"] .r-privacy-content header > p {
  max-width: 800px;
  margin-top: 20px;
  color: #e8f1f8;
  font-size: 16px;
  line-height: 1.85;
}

body.detail-site[data-page="privacy"] .r-privacy-content .dashboard-panel {
  width: min(900px, calc(100% - 96px));
  margin: 0 auto;
  padding: 34px 0;
  background: none;
  border: 0;
  border-bottom: 1px solid var(--r-line);
  border-radius: 0;
  box-shadow: none;
}

body.detail-site[data-page="privacy"]
  .r-privacy-content
  .dashboard-panel-header {
  padding: 0;
  margin: 0 0 17px;
  background: none;
  border: 0;
}

body.detail-site[data-page="privacy"] .r-privacy-content .dashboard-panel h2 {
  font-size: 27px;
  line-height: 1.35;
  color: #092340;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
}

body.detail-site[data-page="privacy"]
  .r-privacy-content
  .dashboard-panel
  > div:last-child {
  padding: 0;
  font-size: 16px;
  line-height: 1.9;
  color: #496078;
}

body.detail-site[data-page="privacy"] .r-privacy-content .dashboard-panel p,
body.detail-site[data-page="privacy"] .r-privacy-content .dashboard-panel li {
  font-size: 16px;
  line-height: 1.9;
  color: #496078;
}

body.detail-site[data-page="privacy"] .r-privacy-content .dashboard-panel p + p,
body.detail-site[data-page="privacy"]
  .r-privacy-content
  .dashboard-panel
  p
  + ul,
body.detail-site[data-page="privacy"]
  .r-privacy-content
  .dashboard-panel
  ul
  + p {
  margin-top: 15px;
}

body.detail-site[data-page="privacy"] .r-privacy-content .dashboard-panel ul {
  margin-bottom: 0;
  padding-left: 22px;
  list-style: disc;
}

body.detail-site[data-page="privacy"]
  .r-privacy-content
  .dashboard-panel
  li
  + li {
  margin-top: 8px;
}

body.detail-site[data-page="privacy"] .r-privacy-content strong {
  color: #092340;
  font-weight: 750;
}

body.detail-site[data-page="privacy"] .r-privacy-content a {
  color: #005e9c;
  font-weight: 650;
  text-decoration: underline;
  text-underline-offset: 4px;
  overflow-wrap: anywhere;
}

body.detail-site[data-page="privacy"]
  .r-privacy-content
  :is(.pv-contactlink, p[class*="flex"]) {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 9px;
}

body.detail-site[data-page="privacy"] .r-privacy-content .dashboard-panel svg {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  color: #496078;
}

body.detail-site[data-page="privacy"] .r-privacy-content p[class*="text-xs"],
body.detail-site[data-page="privacy"] .r-privacy-content footer {
  font-size: 13px;
  line-height: 1.8;
  color: #496078;
}

body.detail-site[data-page="privacy"] .r-privacy-content footer {
  width: min(900px, calc(100% - 96px));
  margin: 0 auto;
  padding-block: 28px 72px;
}

@media (max-width: 1100px) {
  body.detail-site .r-editorial-hero-grid,
  body.detail-site .r-calc-hero-grid,
  body.detail-site .r-website .r-detail-grid,
  body.detail-site .r-website .r-review-grid,
  body.detail-site .r-website .r-actuals-grid {
    gap: 40px;
  }

  body.detail-site .r-website .r-contact-grid {
    gap: 45px;
  }

  body.detail-site .r-website .r-invitation-inner {
    gap: 40px;
  }
}

@media (max-width: 900px) {
  body.detail-site .r-container {
    width: calc(100% - 64px);
  }

  body.detail-site .r-calc-hero.r-container {
    width: 100%;
    padding-inline: 32px;
  }

  body.detail-site .r-editorial-hero-grid,
  body.detail-site .r-calc-hero-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 34px;
    padding-block: 30px 46px;
  }

  body.detail-site .r-editorial-intro,
  body.detail-site .r-calc-hero-grid > div:first-child {
    max-width: 740px;
  }

  body.detail-site .r-editorial-visual,
  body.detail-site .r-calc-hero-grid > .r-product-video {
    width: 100%;
    max-width: 760px;
    min-width: 0;
  }

  body.detail-site[data-page="over"] .r-editorial-hero-grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 0.8fr);
    align-items: center;
    gap: 32px;
  }

  body.detail-site .r-website .r-section-heading {
    gap: 32px;
  }

  body.detail-site[data-page="privacy"] .r-privacy-content header {
    padding-inline: 32px;
  }

  body.detail-site[data-page="privacy"] .r-privacy-content .dashboard-panel,
  body.detail-site[data-page="privacy"] .r-privacy-content footer {
    width: calc(100% - 64px);
  }
}

@media (max-width: 700px) {
  body.detail-site .r-container {
    width: calc(100% - 40px);
  }

  body.detail-site .r-website h1 {
    font-size: clamp(33px, 8.6vw, 43px);
    line-height: 1.15;
    letter-spacing: -0.05em;
  }

  body.detail-site .r-website h2 {
    font-size: clamp(29px, 7.7vw, 37px);
    line-height: 1.19;
    letter-spacing: -0.045em;
  }

  body.detail-site .r-website h3 {
    font-size: 23px;
  }

  body.detail-site .r-website p {
    font-size: 15px;
    line-height: 1.85;
  }

  body.detail-site .r-website .r-section,
  body.detail-site .r-website .r-detail-section,
  body.detail-site .r-website .r-review-section,
  body.detail-site .r-website .r-actuals-section {
    padding-block: 57px;
  }

  body.detail-site .r-website .r-detail-grid,
  body.detail-site .r-website .r-detail-grid--reverse,
  body.detail-site .r-website .r-review-grid,
  body.detail-site .r-website .r-actuals-grid,
  body.detail-site .r-website .r-founder-grid,
  body.detail-site .r-website .r-contact-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 32px;
  }

  body.detail-site .r-website .r-section-heading {
    gap: 22px;
    margin-bottom: 30px;
  }

  body.detail-site .r-website .r-section-heading > p,
  body.detail-site .r-website .r-detail-list dd,
  body.detail-site .r-website .r-editorial-columns p,
  body.detail-site .r-website .r-price-parts p,
  body.detail-site .r-website .r-business-grid p {
    font-size: 15px;
    line-height: 1.85;
  }

  body.detail-site .r-calc-hero.r-container {
    width: 100%;
    padding-inline: 20px;
  }

  body.detail-site .r-editorial-hero::before,
  body.detail-site .r-calc-hero::before {
    background-position: 61% center;
  }

  body.detail-site .r-editorial-hero::after,
  body.detail-site .r-calc-hero::after {
    background: linear-gradient(90deg, #092340ed, #092340c9);
  }

  body.detail-site .r-editorial-hero-grid,
  body.detail-site .r-calc-hero-grid,
  body.detail-site[data-page="over"] .r-editorial-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 29px;
    padding-block: 23px 34px;
  }

  body.detail-site .r-editorial-hero-grid--text {
    display: block;
    padding-bottom: 35px;
  }

  body.detail-site .r-website :is(.r-editorial-hero, .r-calc-hero) h1 {
    font-size: clamp(32px, 8.4vw, 41px);
    line-height: 1.18;
  }

  body.detail-site .r-website :is(.r-editorial-hero, .r-calc-hero) .r-lead {
    font-size: 15px;
    line-height: 1.8;
    margin-top: 21px;
  }

  body.detail-site .r-breadcrumb,
  body.detail-site .r-editorial-hero .r-breadcrumb {
    font-size: 12px;
    padding-block: 18px 8px;
    gap: 13px;
  }

  body.detail-site .r-editorial-visual,
  body.detail-site .r-calc-hero-grid > .r-product-video {
    order: initial;
    max-width: 100%;
  }

  body.detail-site
    .r-website
    .r-editorial-hero-grid:has(.r-product-video)
    .r-editorial-visual {
    order: initial;
  }

  body.detail-site .r-website .r-product-video {
    order: initial;
    max-width: 100%;
  }

  body.detail-site
    .r-website
    :is(.r-editorial-hero, .r-calc-hero)
    :is(.r-page-actions, .r-hero-actions) {
    flex-direction: column;
    align-items: stretch;
    text-align: left;
    gap: 12px;
  }

  body.detail-site .r-website :is(.r-editorial-hero, .r-calc-hero) .r-button {
    width: 100%;
  }

  body.detail-site
    .r-website
    :is(.r-editorial-hero, .r-calc-hero)
    .r-text-link {
    align-self: flex-start;
  }

  body.detail-site .r-website .r-product-video.r-product-video--staand {
    max-width: 360px;
    margin-inline: auto;
  }

  body.detail-site .r-website .r-product-video-frame {
    aspect-ratio: auto;
    border-radius: 10px;
  }

  body.detail-site .r-website .r-product-video--staand .r-product-video-frame {
    aspect-ratio: auto;
    border: 1px solid #dfe8ee;
    background: #fff;
    border-radius: 15px;
  }

  body.detail-site .r-website .r-product-video figcaption {
    flex-wrap: wrap;
    font-size: 12px;
    line-height: 1.75;
  }

  body.detail-site .r-website .r-video-stappen {
    gap: 7px;
  }

  body.detail-site .r-website .r-video-stappen button {
    font-size: 12px;
    min-height: 44px;
    padding-inline: 11px;
  }

  body.detail-site .r-website .r-calc-anchor-nav > .r-container {
    gap: 25px;
  }

  body.detail-site .r-website .r-calc-anchor-nav a {
    padding-block: 17px;
    font-size: 12px;
  }

  body.detail-site .r-website .r-check-list li,
  body.detail-site .r-website .r-detail-list dt {
    font-size: 15px;
    line-height: 1.8;
  }

  body.detail-site .r-website .r-detail-list dd,
  body.detail-site .r-website .r-feature-index .r-detail-list dd {
    font-size: 14px;
    line-height: 1.85;
  }

  body.detail-site .r-website .r-price-parts,
  body.detail-site .r-website .r-editorial-columns,
  body.detail-site .r-website .r-business-grid,
  body.detail-site .r-website .r-feature-index .r-detail-list {
    grid-template-columns: minmax(0, 1fr);
  }

  body.detail-site .r-website .r-journey {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px 20px;
    padding-block: 34px;
  }

  body.detail-site .r-website .r-journey h2 {
    font-size: 19px;
    line-height: 1.4;
  }

  body.detail-site .r-website .r-journey p {
    font-size: 13px;
    line-height: 1.8;
  }

  body.detail-site .r-website .r-review-steps {
    grid-template-columns: minmax(0, 1fr);
    gap: 20px;
  }

  body.detail-site .r-website .r-review-steps strong {
    font-size: 15px;
  }

  body.detail-site .r-website .r-review-steps p {
    font-size: 14px;
    line-height: 1.8;
  }

  body.detail-site .r-website .r-handoff-flow {
    flex-wrap: wrap;
    gap: 22px;
    padding-block: 26px;
  }

  body.detail-site .r-website .r-handoff-flow > div {
    flex: 1 0 100%;
  }

  body.detail-site .r-website .r-handoff-flow strong {
    font-size: 22px;
    margin-top: 6px;
  }

  body.detail-site .r-website .r-margin-note {
    padding: 22px 20px;
    gap: 15px;
    align-items: flex-start;
  }

  body.detail-site .r-website .r-faq summary,
  body.detail-site .r-website .r-feature-index summary {
    font-size: 16px;
  }

  body.detail-site .r-website .r-invitation {
    padding-block: 50px;
  }

  body.detail-site .r-website .r-invitation-inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 27px;
  }

  body.detail-site .r-website .r-invitation-actions {
    align-items: stretch;
  }

  body.detail-site .r-website .r-invitation-actions .r-button,
  body.detail-site .r-website .r-invitation-actions .r-text-link {
    justify-content: center;
    width: 100%;
  }

  body.detail-site .r-website .r-invitation-actions small {
    font-size: 13px;
    line-height: 1.8;
  }

  body.detail-site .r-website .r-brand-panel {
    padding: 26px;
  }

  body.detail-site .r-website .r-brand-panel p {
    font-size: 25px;
  }

  body.detail-site .r-website .r-founder-portrait {
    min-height: 190px;
    padding: 26px;
  }

  body.detail-site .r-website .r-founder-portrait--compact {
    min-height: 0;
    padding: 0;
  }

  body.detail-site .r-website .r-founder-letter p {
    font-size: 16px;
  }

  body.detail-site .r-website .r-contact-section {
    padding-block: 43px 57px;
  }

  body.detail-site .r-website .r-contact-form-wrap {
    padding: 23px 20px;
  }

  body.detail-site .r-website .r-contact-fields {
    grid-template-columns: minmax(0, 1fr);
    gap: 21px;
  }

  body.detail-site .r-qr-product > div {
    grid-template-columns: minmax(0, 1fr);
    gap: 25px;
  }

  body.detail-site .r-qr-product > div > a {
    width: 100%;
  }

  body.detail-site .r-website .r-field-label {
    font-size: 14px;
  }

  body.detail-site[data-page="privacy"] .r-privacy-content header {
    padding: 34px 20px 36px;
    margin-bottom: 18px;
    background-position: 61% center;
  }

  body.detail-site[data-page="privacy"] .r-privacy-content header > div {
    gap: 12px;
    align-items: flex-start;
  }

  body.detail-site[data-page="privacy"] .r-privacy-content header > div > span {
    width: 34px;
    height: 34px;
    margin-top: 2px;
  }

  body.detail-site[data-page="privacy"] .r-privacy-content header h1 {
    font-size: clamp(29px, 7.7vw, 37px);
    line-height: 1.2;
  }

  body.detail-site[data-page="privacy"] .r-privacy-content header > p {
    font-size: 15px;
    line-height: 1.85;
    margin-top: 18px;
  }

  body.detail-site[data-page="privacy"] .r-privacy-content .dashboard-panel,
  body.detail-site[data-page="privacy"] .r-privacy-content footer {
    width: calc(100% - 40px);
  }

  body.detail-site[data-page="privacy"] .r-privacy-content .dashboard-panel {
    padding-block: 27px;
  }

  body.detail-site[data-page="privacy"] .r-privacy-content .dashboard-panel h2 {
    font-size: 23px;
    line-height: 1.35;
  }

  body.detail-site[data-page="privacy"] .r-privacy-content .dashboard-panel p,
  body.detail-site[data-page="privacy"] .r-privacy-content .dashboard-panel li {
    font-size: 15px;
    line-height: 1.9;
  }

  body.detail-site[data-page="privacy"] .r-privacy-content footer {
    padding-block: 25px 50px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.detail-site .r-website *,
  body.detail-site .r-website *::before,
  body.detail-site .r-website *::after {
    scroll-behavior: auto;
    transition: none !important;
    animation: none !important;
  }
}
