/* DigitaLéman native Bricks content. Scope excludes existing header/footer.
   Brand from baseline: violet #5e36e2, deep violet #1c0c50, Inter.
   Native content only: no injected HTML, JS, fonts, or remote assets. */
.dlr-section {
  --dlr-violet: #5e36e2;
  --dlr-deep: #1c0c50;
  --dlr-ink: #241d37;
  --dlr-muted: #625c70;
  --dlr-paper: #f6f5fa;
  --dlr-line: #ded9e9;
  --dlr-radius: 18px;
  box-sizing: border-box;
  width: 100%;
  padding: clamp(56px, 7vw, 104px) 28px;
  background: #fff;
  color: var(--dlr-ink);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.7;
  isolation: isolate;
}
.dlr-section *, .dlr-section *::before, .dlr-section *::after { box-sizing: border-box; }
.dlr-section .dlr-wrap { width: 100%; max-width: 1180px; margin-inline: auto; display: flex; flex-direction: column; align-items: stretch; gap: 36px; min-width: 0; }
.dlr-section :is(.dlr-stack, .dlr-section-heading) { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; min-width: 0; width: 100%; }
.dlr-section :is(.dlr-h1, .dlr-h2, .dlr-h3, .dlr-copy, .dlr-lead, .dlr-price, .dlr-small, .dlr-eyebrow, .dlr-price-note, .dlr-brief-label, .dlr-brief-value) { margin: 0; padding: 0; color: inherit; width: auto; max-width: 100%; overflow-wrap: break-word; }
.dlr-section .dlr-h1 { font-size: clamp(36px, 4.7vw, 66px); line-height: 1.06; letter-spacing: -.047em; font-weight: 750; text-wrap: balance; max-width: 16ch; }
.dlr-section .dlr-h2 { font-size: clamp(28px, 3.2vw, 43px); line-height: 1.15; letter-spacing: -.033em; font-weight: 700; text-wrap: balance; max-width: 25ch; }
.dlr-section .dlr-h3 { font-size: 22px; line-height: 1.3; letter-spacing: -.02em; font-weight: 650; text-wrap: balance; }
.dlr-section .dlr-copy { color: var(--dlr-muted); max-width: 68ch; }
.dlr-section .dlr-lead { font-size: 18px; line-height: 1.7; max-width: 60ch; color: var(--dlr-muted); }
.dlr-section .dlr-eyebrow { color: var(--dlr-violet); font-size: 11px; line-height: 1.7; font-weight: 750; text-transform: uppercase; letter-spacing: .13em; }
.dlr-section .dlr-small { font-size: 14px; line-height: 1.65; color: var(--dlr-muted); max-width: 90ch; }
.dlr-section .dlr-price { font-size: clamp(24px, 2.7vw, 34px); line-height: 1.2; letter-spacing: -.035em; font-weight: 750; color: var(--dlr-violet); }
.dlr-section .dlr-price-note { font-size: 14px; font-weight: 650; }
.dlr-section .dlr-actions { display: flex; flex-direction: row; flex-wrap: wrap; align-items: center; gap: 12px; width: 100%; margin-top: 8px; }
.dlr-section .dlr-button { display: inline-flex; align-items: center; justify-content: center; align-self: flex-start; width: auto; min-height: 48px; max-width: 100%; padding: 14px 23px; background: var(--dlr-violet); color: #fff; border: 1px solid var(--dlr-violet); border-radius: 999px; font-size: 15px; line-height: 1.35; font-weight: 650; text-align: center; text-decoration: none; white-space: normal; transition: background-color .15s ease, border-color .15s ease; }
.dlr-section .dlr-button:hover { background: #4824bc; border-color: #4824bc; color: #fff; }
.dlr-section .dlr-button-secondary { background: transparent; color: var(--dlr-violet); border-color: #b3a4dd; }
.dlr-section .dlr-button-secondary:hover { background: #ede8fc; border-color: var(--dlr-violet); color: #4824bc; }
/* Override legacy Core Framework button colours, scoped to new layouts. */
#brx-content .dlr-section .dlr-button { color: #fff !important; background-color: #5e36e2 !important; }
#brx-content .dlr-section .dlr-button-secondary { color: #5e36e2 !important; background-color: transparent !important; }
#brx-content .dlr-hero:not(.dlr-hero-artisans) .dlr-button { color: #4320aa !important; background-color: #fff !important; }
#brx-content .dlr-hero:not(.dlr-hero-artisans) .dlr-button-secondary { color: #fff !important; background-color: transparent !important; }
/* Original reviews: readable cards and a verified business-page link. */
#brxe-rvg004 { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
#brxe-rvg004 > .dlr-card { min-width: 0; display: flex; flex-direction: column; gap: 14px; }
#brxe-rvg004 .dlr-body { flex: 1; line-height: 1.75; }
#brxe-rvg004 .dlr-h3 { font-size: 18px; margin: 0; }
#brxe-rvg017 { align-self: flex-start; margin-top: 24px; }
@media(max-width: 900px) { #brxe-rvg004 { grid-template-columns: 1fr; } }
.dlr-section a:focus-visible { outline: 3px solid #df9b00; outline-offset: 5px; }
/* Signature: an editorial project brief, not decorative dashboard metrics. */
.dlr-section.dlr-hero { padding-block: clamp(64px, 8vw, 112px); background: var(--dlr-deep); color: #fff; }
.dlr-section .dlr-hero-grid { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: clamp(32px, 6vw, 84px); align-items: center; }
.dlr-hero .dlr-lead, .dlr-dark .dlr-copy, .dlr-dark .dlr-small { color: #ded8ed; }
.dlr-hero .dlr-eyebrow, .dlr-dark .dlr-eyebrow { color: #c8b8ff; }
.dlr-hero .dlr-button { background: #fff; border-color: #fff; color: #4320aa; }
.dlr-hero .dlr-button:hover { background: #e8e0ff; border-color: #e8e0ff; }
.dlr-hero .dlr-button-secondary { background: transparent; border-color: #9f8dca; color: #fff; }
.dlr-hero .dlr-button-secondary:hover { background: #372164; border-color: #fff; color: #fff; }
.dlr-section .dlr-brief { display: flex; flex-direction: column; gap: 0; align-items: stretch; padding: 30px; background: #fff; color: var(--dlr-ink); border-radius: 3px var(--dlr-radius) var(--dlr-radius) 3px; border-left: 5px solid #9d7dff; width: 100%; box-shadow: 0 18px 48px #10062726; }
.dlr-brief > .dlr-eyebrow { color: var(--dlr-violet); margin-bottom: 12px; }
.dlr-section .dlr-brief-row { display: flex; flex-direction: column; gap: 4px; padding-block: 20px; border-bottom: 1px solid var(--dlr-line); }
.dlr-section .dlr-brief-label { color: var(--dlr-muted); font-size: 13px; }
.dlr-section .dlr-brief-value { font-size: 20px; font-weight: 650; line-height: 1.35; }
.dlr-brief > .dlr-small { margin-top: 22px; }
.dlr-section.dlr-hero-artisans { background: var(--dlr-paper); color: var(--dlr-ink); }
.dlr-hero-artisans .dlr-lead { color: var(--dlr-muted); }
.dlr-hero-artisans .dlr-eyebrow { color: var(--dlr-violet); }
.dlr-hero-artisans .dlr-button { background: var(--dlr-violet); color: #fff; border-color: var(--dlr-violet); }
.dlr-hero-artisans .dlr-button-secondary { background: transparent; color: var(--dlr-violet); border-color: #b3a4dd; }
.dlr-section.dlr-hero-maintenance .dlr-brief { border-left-color: #5e36e2; }
.dlr-section .dlr-editorial { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(32px, 7vw, 96px); }
.dlr-section.dlr-tint { background: var(--dlr-paper); }
.dlr-section.dlr-dark { background: var(--dlr-deep); color: #fff; }
.dlr-section .dlr-offer-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; width: 100%; }
.dlr-section .dlr-offer { display: flex; flex-direction: column; align-items: flex-start; gap: 22px; padding: clamp(24px, 3vw, 40px); background: #fff; border: 1px solid var(--dlr-line); border-top: 4px solid var(--dlr-violet); border-radius: 0 0 var(--dlr-radius) var(--dlr-radius); min-width: 0; }
.dlr-section .dlr-offer .dlr-button { margin-top: auto; }
.dlr-section .dlr-wide-note { width: 100%; }
.dlr-section .dlr-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
.dlr-section .dlr-step { display: flex; flex-direction: column; gap: 20px; min-width: 0; padding-top: 26px; border-top: 2px solid var(--dlr-violet); }
.dlr-section .dlr-faq { display: flex; flex-direction: column; gap: 0; width: 100%; }
.dlr-section .dlr-faq-item { display: flex; flex-direction: column; gap: 16px; padding-block: 28px; border-top: 1px solid var(--dlr-line); }
.dlr-section .dlr-faq-item:first-child { padding-top: 0; border-top: 0; }
.dlr-section .dlr-price-strip { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; width: 100%; border-block: 1px solid var(--dlr-line); }
.dlr-section .dlr-price-cell { display: flex; flex-direction: column; gap: 12px; padding: 26px; border-right: 1px solid var(--dlr-line); }
.dlr-section .dlr-price-cell:first-child { padding-left: 0; }
.dlr-section .dlr-price-cell:last-child { border-right: 0; }
.dlr-section.dlr-closing { background: #eee9fc; }
.dlr-closing .dlr-wrap { align-items: flex-start; gap: 24px; }
.dlr-closing .dlr-h2 { max-width: 28ch; }
.dlr-closing .dlr-small { max-width: 92ch; }
@media (max-width: 991px) {
  .dlr-section .dlr-hero-grid { grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 28px; }
  .dlr-section .dlr-brief { padding: 24px; }
  .dlr-section .dlr-editorial { grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); gap: 32px; }
  .dlr-section .dlr-steps { grid-template-columns: 1fr; gap: 28px; }
}
@media (max-width: 767px) {
  .dlr-section { padding: 52px 20px; }
  .dlr-section.dlr-hero { padding-block: 54px; }
  .dlr-section :is(.dlr-hero-grid, .dlr-editorial, .dlr-offer-grid) { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .dlr-section .dlr-h1 { max-width: 19ch; }
  .dlr-section .dlr-h2 { max-width: 30ch; }
  .dlr-section .dlr-lead { font-size: 17px; }
  .dlr-section .dlr-offer { padding: 26px; }
  .dlr-section .dlr-price-strip { grid-template-columns: 1fr; }
  .dlr-section .dlr-price-cell, .dlr-section .dlr-price-cell:first-child { padding: 22px 0; border-right: 0; border-bottom: 1px solid var(--dlr-line); }
  .dlr-section .dlr-price-cell:last-child { border-bottom: 0; }
}
@media (max-width: 420px) {
  .dlr-section { padding-inline: 18px; }
  .dlr-section .dlr-actions { align-items: stretch; flex-direction: column; }
  .dlr-section .dlr-actions .dlr-button { width: 100%; }
  .dlr-section .dlr-brief { padding: 24px 20px; }
}
@media (prefers-reduced-motion: reduce) {
  .dlr-section *, .dlr-section *::before, .dlr-section *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
@media print {
  .dlr-section { padding: 28px 0; break-inside: auto; }
  .dlr-section.dlr-hero, .dlr-section.dlr-dark, .dlr-section.dlr-closing { background: #fff; color: #000; }
  .dlr-section :is(.dlr-copy, .dlr-lead, .dlr-small, .dlr-eyebrow) { color: #333; }
  .dlr-section .dlr-brief { box-shadow: none; border: 1px solid #999; }
}

/* DLV3 licensed editorial photography; no global chrome changes. */
.dlr-section.dlr-hero {padding-block:clamp(44px,5vw,76px);}
.dlr-section .dlv3-hero-media {display:flex;flex-direction:column;gap:12px;width:100%;min-width:0;margin:0;padding:0;}
.dlr-section .dlv3-hero-photo {display:block;width:100%;aspect-ratio:4/5;max-height:550px;object-fit:cover;object-position:center;border-radius:20px;overflow:hidden;}
.dlr-section .dlv3-hero-photo img {width:100%;height:100%;object-fit:cover;}
.dlr-section .dlv3-photo-credit {font-size:12px;line-height:1.6;color:#d6cde9;margin:0;}
.dlr-hero-artisans .dlv3-photo-credit {color:#625c70;}
#brx-content .dlr-section .dlv3-credit-link {padding:0;min-height:24px;background:transparent!important;border:0;color:inherit!important;font-size:12px;text-decoration:underline;align-self:flex-start;}
#brxe-rvg001 {width:100%;max-width:1180px;margin-inline:auto;gap:28px;align-items:stretch;}
#brxe-rvg004 > .dlr-card {padding:28px;border:1px solid #ded9e9;border-radius:18px;background:#f6f5fa;}
#brxe-rvg004 .dlr-note {font-size:13px;color:#625c70;}
@media(max-width:767px){.dlr-section .dlv3-hero-photo{aspect-ratio:4/3;max-height:400px;object-position:center 48%;}.dlr-section .dlv3-hero-media{gap:8px;}}
