:root {
  --db-gold: #bd9141;
  --db-gold-bright: #e2c37f;
  --db-gold-deep: #8d6524;
  --db-ink: #1d1813;
  --db-night: #15120f;
  --db-cream: #fffaf0;
  --db-paper: #f5efe5;
  --db-teal: #4b7774;
  --db-muted: #71675b;
  --db-line: rgba(72, 53, 27, 0.15);
  --db-dark-line: rgba(244, 216, 157, 0.16);
  --db-serif: Iowan Old Style, Baskerville, Times New Roman, serif;
  --db-sans: Avenir Next, Avenir, Helvetica Neue, Helvetica, Arial, sans-serif;
  --db-shell: min(1420px, calc(100% - 48px));
  --db-radius-xl: 40px;
  --db-radius-lg: 28px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }

body.corporate-site,
body.catalogue-page {
  margin: 0;
  min-width: 320px;
  background: radial-gradient(circle at 10% 28%, rgba(189,145,65,.08), transparent 26rem), var(--db-paper);
  color: var(--db-ink);
  font-family: var(--db-sans);
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}

body.nav-open { overflow: hidden; }
img { display: block; max-width: 100%; }
a { color: inherit; }
button, input, select, textarea { font: inherit; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 3px solid rgba(189,145,65,.42);
  outline-offset: 4px;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}

.skip-link {
  position: fixed;
  z-index: 1000;
  top: 12px;
  left: 12px;
  padding: 10px 16px;
  border-radius: 999px;
  background: var(--db-night);
  color: white;
  transform: translateY(-160%);
  transition: transform 160ms ease;
}

.skip-link:focus { transform: translateY(0); }
.section-shell { width: var(--db-shell); margin-inline: auto; }

.db-header {
  position: sticky;
  z-index: 50;
  top: 0;
  padding: 12px 0;
  background: rgba(245,239,229,.76);
  border-bottom: 1px solid rgba(78,56,23,.08);
  backdrop-filter: blur(18px);
}

.db-header-inner {
  width: var(--db-shell);
  min-height: 68px;
  display: grid;
  grid-template-columns: minmax(180px,.9fr) auto minmax(180px,.9fr);
  gap: 24px;
  align-items: center;
  margin-inline: auto;
  padding: 0 10px;
}

.db-brand {
  width: fit-content;
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--db-muted);
  font-size: .58rem;
  font-weight: 750;
  letter-spacing: .12em;
  text-decoration: none;
  text-transform: uppercase;
}

.db-brand img {
  width: 142px;
  height: 58px;
  object-fit: contain;
  mix-blend-mode: multiply;
}

.db-brand span {
  max-width: 90px;
  padding-left: 12px;
  border-left: 1px solid var(--db-line);
  line-height: 1.4;
}

.db-nav {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 5px;
  border: 1px solid rgba(73,53,24,.11);
  border-radius: 999px;
  background: rgba(255,252,246,.62);
  box-shadow: 0 10px 32px rgba(57,40,19,.045);
}

.db-nav a {
  padding: 9px 13px;
  border-radius: 999px;
  color: #63594d;
  font-size: .68rem;
  font-weight: 650;
  text-decoration: none;
  transition: color 160ms ease, background 160ms ease;
  white-space: nowrap;
}

.db-nav a:hover,
.db-nav a[aria-current="page"] { background: var(--db-night); color: var(--db-cream); }

.header-cta {
  justify-self: end;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 46px;
  padding: 0 16px 0 19px;
  border: 1px solid rgba(128,91,30,.25);
  border-radius: 999px;
  color: var(--db-ink);
  font-size: .7rem;
  font-weight: 700;
  text-decoration: none;
  transition: background 160ms ease, color 160ms ease, transform 160ms ease;
}

.header-cta span {
  display: grid;
  width: 27px;
  height: 27px;
  place-items: center;
  border-radius: 50%;
  background: var(--db-gold);
  color: white;
}

.header-cta:hover { background: var(--db-night); color: var(--db-cream); transform: translateY(-1px); }
.nav-toggle { display: none; }

.home-hero {
  position: relative;
  width: var(--db-shell);
  min-height: min(790px, calc(100vh - 112px));
  display: grid;
  align-items: center;
  margin: 8px auto 0;
  overflow: hidden;
  border: 1px solid rgba(235,202,139,.16);
  border-radius: var(--db-radius-xl);
  background: var(--db-night);
  box-shadow: 0 34px 90px rgba(39,26,13,.22);
  isolation: isolate;
}

.home-hero-image,
.home-hero-shade,
.home-hero-grid { position: absolute; inset: 0; }
.home-hero-image { z-index: -3; width: 100%; height: 100%; object-fit: cover; }
.home-hero-shade {
  z-index: -2;
  background: linear-gradient(90deg, rgba(13,11,9,.97) 0%, rgba(18,14,10,.88) 32%, rgba(20,15,10,.18) 69%, rgba(20,15,10,.08) 100%), linear-gradient(0deg, rgba(12,10,8,.78), transparent 36%);
}
.home-hero-grid {
  z-index: -1;
  opacity: .11;
  background-image: linear-gradient(rgba(255,255,255,.12) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.12) 1px, transparent 1px);
  background-size: 90px 90px;
  mask-image: linear-gradient(90deg, black, transparent 60%);
}

.home-hero-copy { width: min(760px,59%); padding: 80px 0 152px 72px; color: var(--db-cream); }
.page-eyebrow {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 22px;
  color: var(--db-gold-deep);
  font-size: .62rem;
  font-weight: 760;
  letter-spacing: .17em;
  text-transform: uppercase;
}
.page-eyebrow span { width: 34px; height: 1px; background: currentColor; }
.page-eyebrow.light { color: #e3c37f; }

.home-hero h1,
.section-heading-block h2,
.section-topline h2,
.beauty-spotlight h2,
.process-heading h2,
.closing-cta h2 {
  margin: 0;
  font-family: var(--db-serif);
  font-weight: 400;
  letter-spacing: -.055em;
  line-height: .9;
}

.home-hero h1 { max-width: 760px; font-size: clamp(4.8rem,7.3vw,8.2rem); }
h1 em, h2 em { color: var(--db-gold-bright); font-weight: 400; }
.home-hero-lede { max-width: 620px; margin: 30px 0; color: rgba(255,250,240,.68); font-size: .98rem; line-height: 1.75; }
.button-row { display: flex; flex-wrap: wrap; gap: 10px; }

.db-button {
  min-height: 52px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  padding: 0 22px;
  border: 1px solid transparent;
  border-radius: 999px;
  font-size: .72rem;
  font-weight: 750;
  letter-spacing: .02em;
  text-decoration: none;
  transition: transform 160ms ease, background 160ms ease, border-color 160ms ease;
}

.db-button:hover { transform: translateY(-2px); }
.db-button-gold { background: var(--db-gold); color: #18130e; box-shadow: 0 13px 34px rgba(194,145,56,.2); }
.db-button-gold:hover { background: var(--db-gold-bright); }
.db-button-ghost { border-color: rgba(255,246,226,.28); background: rgba(255,255,255,.04); color: var(--db-cream); backdrop-filter: blur(10px); }
.db-button-ghost:hover { border-color: rgba(255,246,226,.54); background: rgba(255,255,255,.09); }

.hero-side-note {
  position: absolute;
  top: 80px;
  right: 42px;
  display: flex;
  align-items: center;
  gap: 14px;
  color: rgba(255,250,240,.6);
  font-size: .58rem;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
  writing-mode: vertical-rl;
}
.hero-side-note span:first-child { color: var(--db-gold-bright); }

.hero-facts {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  display: grid;
  grid-template-columns: repeat(4,1fr);
  margin: 0;
  border-top: 1px solid rgba(245,219,166,.16);
  background: rgba(13,11,9,.7);
  backdrop-filter: blur(13px);
}
.hero-facts div { min-height: 116px; padding: 25px 30px; border-right: 1px solid rgba(245,219,166,.14); }
.hero-facts div:last-child { border-right: 0; }
.hero-facts dt { color: #ead098; font-family: var(--db-serif); font-size: 2.1rem; line-height: 1; }
.hero-facts dd { margin: 8px 0 0; color: rgba(255,250,240,.48); font-size: .6rem; letter-spacing: .1em; text-transform: uppercase; }

.marquee-strip { margin-top: 24px; overflow: hidden; border-block: 1px solid var(--db-line); background: rgba(255,250,240,.48); }
.marquee-strip div { width: var(--db-shell); min-height: 74px; display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-inline: auto; color: #40372e; font-family: var(--db-serif); font-size: 1.22rem; }
.marquee-strip i { color: var(--db-gold); font-size: .66rem; font-style: normal; }

.intro-split { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(360px,.7fr); gap: 90px; padding-block: 138px 118px; }
.section-heading-block h2, .section-topline h2, .process-heading h2 { font-size: clamp(3.2rem,5.3vw,6.2rem); }
.section-heading-block h2 em, .section-topline h2 em, .process-heading h2 em { color: var(--db-gold-deep); }
.intro-copy-block { padding-top: 48px; color: var(--db-muted); font-size: .92rem; }
.intro-copy-block .lead-copy { margin: 0 0 25px; color: var(--db-ink); font-family: var(--db-serif); font-size: 1.85rem; letter-spacing: -.025em; line-height: 1.2; }

.text-link, .service-card a, .sector-card a {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 22px;
  padding-bottom: 5px;
  border-bottom: 1px solid currentColor;
  color: var(--db-gold-deep);
  font-size: .71rem;
  font-weight: 740;
  text-decoration: none;
}

.visual-manifesto {
  min-height: 620px;
  display: grid;
  grid-template-columns: minmax(0,1.45fr) minmax(330px,.55fr);
  margin-bottom: 110px;
  overflow: hidden;
  border-radius: var(--db-radius-xl);
  background: var(--db-night);
  box-shadow: 0 28px 78px rgba(42,29,15,.16);
}
.manifesto-image-wrap { position: relative; min-width: 0; }
.manifesto-image-wrap img { width: 100%; height: 100%; object-fit: cover; }
.image-label { position: absolute; bottom: 20px; left: 20px; padding: 8px 12px; border: 1px solid rgba(255,255,255,.2); border-radius: 999px; background: rgba(16,13,10,.62); color: rgba(255,250,240,.72); font-size: .58rem; letter-spacing: .1em; text-transform: uppercase; backdrop-filter: blur(10px); }
.manifesto-card { display: flex; flex-direction: column; justify-content: center; padding: 56px; border-left: 1px solid var(--db-dark-line); background: radial-gradient(circle at 100% 0%, rgba(191,146,63,.18), transparent 45%), var(--db-night); color: var(--db-cream); }
.card-index { color: var(--db-gold-bright); font-size: .62rem; font-weight: 750; letter-spacing: .13em; }
.manifesto-card blockquote { margin: 34px 0 25px; font-family: var(--db-serif); font-size: clamp(2.1rem,3.2vw,3.9rem); letter-spacing: -.04em; line-height: .98; }
.manifesto-card > p:last-child { color: rgba(255,250,240,.55); font-size: .82rem; line-height: 1.7; }

.dark-section { padding-block: 120px; overflow: hidden; background: radial-gradient(circle at 12% 18%, rgba(183,135,51,.17), transparent 28rem), linear-gradient(135deg,#211a14,#100e0c 68%); color: var(--db-cream); }
.section-topline { display: grid; grid-template-columns: minmax(0,1fr) minmax(280px,.44fr); gap: 70px; align-items: end; margin-bottom: 56px; }
.section-topline > p { margin: 0 0 8px; color: var(--db-muted); font-size: .86rem; line-height: 1.7; }
.light-heading h2 { color: var(--db-cream); }
.light-heading > p { color: rgba(255,250,240,.53); }
.service-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.service-card { min-height: 410px; display: flex; flex-direction: column; padding: 34px; border: 1px solid var(--db-dark-line); border-radius: var(--db-radius-lg); background: rgba(255,255,255,.025); transition: transform 180ms ease, border-color 180ms ease, background 180ms ease; }
.service-card:hover { transform: translateY(-6px); border-color: rgba(233,198,129,.38); background: rgba(255,255,255,.05); }
.service-card.featured { background: radial-gradient(circle at 80% 16%, rgba(255,255,255,.14), transparent 26%), linear-gradient(145deg,#a97c31,#714b1b); }
.service-number { color: #d9b469; font-family: var(--db-serif); font-size: .86rem; }
.service-card h3 { margin: auto 0 18px; font-family: var(--db-serif); font-size: 3rem; font-weight: 400; letter-spacing: -.04em; }
.service-card p { margin: 0; color: rgba(255,250,240,.55); font-size: .79rem; line-height: 1.7; }
.service-card.featured p { color: rgba(255,250,240,.76); }
.service-card a { align-self: flex-start; color: #eacb8a; }

.sectors-showcase { padding-block: 128px 116px; }
.sector-grid { display: grid; grid-template-columns: 1.3fr .85fr .85fr; gap: 14px; }
.sector-card { position: relative; min-height: 570px; display: flex; flex-direction: column; overflow: hidden; padding: 28px; border: 1px solid var(--db-line); border-radius: var(--db-radius-lg); background: rgba(255,251,243,.7); box-shadow: 0 16px 46px rgba(58,42,22,.06); }
.sector-card-topline { position: relative; z-index: 3; display: flex; align-items: center; justify-content: space-between; gap: 14px; color: var(--db-muted); font-size: .6rem; font-weight: 720; letter-spacing: .08em; text-transform: uppercase; }
.status-pill { padding: 6px 9px; border-radius: 999px; font-size: .52rem; white-space: nowrap; }
.status-pill.available { background: #244f45; color: #d8f0e3; }
.status-pill.developing { background: rgba(189,145,65,.17); color: var(--db-gold-deep); }
.status-pill.enquiry { background: rgba(75,119,116,.14); color: #345d59; }

.beauty-product-cluster { position: relative; height: 310px; margin-top: 15px; }
.beauty-product-cluster::before { content: ""; position: absolute; width: 300px; height: 300px; left: 50%; top: 50%; border-radius: 50%; background: radial-gradient(circle, rgba(224,196,137,.5), transparent 69%); transform: translate(-50%,-50%); }
.beauty-product-cluster img { position: absolute; width: 210px; height: 260px; object-fit: contain; mix-blend-mode: multiply; filter: drop-shadow(0 22px 24px rgba(55,39,19,.13)); }
.beauty-product-cluster img:nth-child(1) { left: 2%; top: 32px; transform: rotate(-7deg); }
.beauty-product-cluster img:nth-child(2) { left: 31%; top: 2px; z-index: 2; }
.beauty-product-cluster img:nth-child(3) { right: 1%; top: 38px; transform: rotate(7deg); }

.sector-card-copy { position: relative; z-index: 3; margin-top: auto; }
.sector-card h3 { margin: 0; font-family: var(--db-serif); font-size: 2.2rem; font-weight: 400; letter-spacing: -.035em; line-height: 1; }
.sector-card p { margin: 14px 0 0; color: var(--db-muted); font-size: .78rem; line-height: 1.6; }
.appliance-sector { background: radial-gradient(circle at 50% 34%, rgba(213,177,106,.24), transparent 34%), #eee4d4; }
.appliance-orbit { position: relative; height: 250px; display: grid; place-items: center; }
.appliance-orbit::before, .appliance-orbit::after, .appliance-orbit span { content: ""; position: absolute; border: 1px solid rgba(130,91,29,.24); border-radius: 50%; }
.appliance-orbit::before { width: 210px; height: 210px; }
.appliance-orbit::after { width: 150px; height: 150px; }
.appliance-orbit span { width: 86px; height: 86px; background: rgba(255,255,255,.35); }
.appliance-orbit b { z-index: 2; color: var(--db-gold-deep); font-family: var(--db-serif); font-size: 3.2rem; font-weight: 400; }
.other-sector { background: var(--db-night); color: var(--db-cream); }
.other-sector .sector-card-topline, .other-sector p { color: rgba(255,250,240,.55); }
.sector-lines { position: relative; height: 250px; display: grid; align-content: center; gap: 24px; }
.sector-lines span { height: 1px; display: block; background: linear-gradient(90deg,transparent,#c89b49,transparent); transform-origin: center; }
.sector-lines span:first-child { transform: rotate(18deg); }
.sector-lines span:nth-child(2) { transform: rotate(-12deg); }
.sector-lines span:last-child { transform: rotate(6deg); }
.other-sector a { color: #e1bd73; }

.beauty-spotlight { width: var(--db-shell); min-height: 720px; display: grid; grid-template-columns: .82fr 1.18fr; margin: 0 auto 120px; overflow: hidden; border-radius: var(--db-radius-xl); background: radial-gradient(circle at 13% 18%, rgba(187,140,55,.18), transparent 30rem), var(--db-night); box-shadow: 0 30px 80px rgba(40,27,14,.18); }
.beauty-spotlight-copy { display: flex; flex-direction: column; justify-content: center; padding: 70px; color: var(--db-cream); }
.beauty-spotlight h2, .closing-cta h2 { font-size: clamp(3.5rem,5.4vw,6.5rem); }
.beauty-spotlight-copy > p:not(.page-eyebrow) { max-width: 520px; margin: 28px 0; color: rgba(255,250,240,.58); font-size: .87rem; line-height: 1.75; }
.beauty-spotlight-copy dl { display: grid; grid-template-columns: repeat(3,1fr); margin: 0 0 34px; border-block: 1px solid var(--db-dark-line); }
.beauty-spotlight-copy dl div { padding: 20px 14px 20px 0; }
.beauty-spotlight-copy dt { color: #e4c47f; font-family: var(--db-serif); font-size: 2rem; }
.beauty-spotlight-copy dd { margin: 3px 0 0; color: rgba(255,250,240,.43); font-size: .55rem; letter-spacing: .09em; text-transform: uppercase; }
.beauty-spotlight-copy .db-button { align-self: flex-start; }
.beauty-spotlight-stage { position: relative; min-height: 720px; overflow: hidden; background: radial-gradient(circle at 50% 44%, #f6ead4 0 22%, rgba(218,185,120,.45) 23% 36%, transparent 37%), linear-gradient(145deg,#b88639,#7a4e1f 62%,#40291a); }
.beauty-spotlight-stage::before { content: ""; position: absolute; inset: 0; opacity: .16; background-image: linear-gradient(rgba(255,255,255,.5) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.5) 1px,transparent 1px); background-size: 64px 64px; }
.spotlight-product { position: absolute; margin: 0; }
.spotlight-product img { width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; }
.spotlight-product figcaption { width: fit-content; margin: 8px auto 0; padding: 6px 9px; border-radius: 999px; background: rgba(27,20,14,.72); color: #f8e2b3; font-size: .52rem; letter-spacing: .08em; text-transform: uppercase; }
.spotlight-product.p-one { width: 230px; height: 340px; left: 8%; top: 25%; transform: rotate(-7deg); }
.spotlight-product.p-two { z-index: 2; width: 280px; height: 430px; left: 36%; top: 14%; }
.spotlight-product.p-three { width: 220px; height: 330px; right: 5%; top: 30%; transform: rotate(8deg); }

.process-section { display: grid; grid-template-columns: .9fr 1.1fr; gap: 90px; padding-bottom: 130px; }
.process-list { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--db-line); }
.process-list li { display: grid; grid-template-columns: 52px 1fr; gap: 22px; padding: 25px 0; border-bottom: 1px solid var(--db-line); }
.process-list li > span { color: var(--db-gold-deep); font-family: var(--db-serif); font-size: 1.05rem; }
.process-list h3 { margin: 0; font-family: var(--db-serif); font-size: 1.65rem; font-weight: 400; }
.process-list p { margin: 4px 0 0; color: var(--db-muted); font-size: .76rem; }

.closing-cta { display: grid; grid-template-columns: 1.3fr .7fr; gap: 70px; align-items: end; margin-bottom: 28px; padding: 74px; overflow: hidden; border-radius: var(--db-radius-xl); background: radial-gradient(circle at 90% 10%, rgba(204,160,76,.22), transparent 29rem), var(--db-night); color: var(--db-cream); }
.closing-cta > div:last-child p { margin: 0 0 27px; color: rgba(255,250,240,.55); font-size: .86rem; line-height: 1.7; }

.db-footer { min-height: 0; display: block; padding: 74px 0 24px; background: #e9dfcf; text-transform: none; letter-spacing: normal; }
.db-footer-main { display: grid; grid-template-columns: 1.8fr repeat(3,.55fr); gap: 62px; padding-bottom: 60px; }
.footer-brand-block img { width: 176px; mix-blend-mode: multiply; }
.footer-brand-block p { max-width: 410px; margin: 18px 0 0; color: var(--db-muted); font-size: .76rem; line-height: 1.7; }
.footer-link-group { display: grid; align-content: start; gap: 9px; }
.footer-link-group p { margin: 0 0 9px; color: var(--db-gold-deep); font-size: .59rem; font-weight: 750; letter-spacing: .11em; text-transform: uppercase; }
.footer-link-group a { width: fit-content; color: #5f5549; font-size: .74rem; text-decoration: none; }
.footer-link-group a:hover { color: var(--db-ink); }
.db-footer-bottom { min-height: 70px; display: flex; align-items: center; justify-content: space-between; gap: 20px; border-top: 1px solid var(--db-line); color: #74695c; font-size: .59rem; letter-spacing: .08em; text-transform: uppercase; }

.reveal { opacity: 0; transform: translateY(24px); transition: opacity 650ms ease, transform 650ms ease; }
.reveal.is-visible { opacity: 1; transform: none; }

/* Inner pages */
.inner-page main { overflow: hidden; }
.inner-hero { position: relative; min-height: 720px; display: grid; grid-template-columns: .88fr 1.12fr; gap: 70px; align-items: center; padding: 70px 0 112px; }
.inner-hero-copy { position: relative; z-index: 2; }
.inner-hero h1, .contact-hero h1, .legal-hero h1 { max-width: 830px; margin: 20px 0 28px; font-family: var(--db-serif); font-size: clamp(4.4rem,7vw,8.6rem); font-weight: 400; letter-spacing: -.065em; line-height: .84; }
.inner-hero h1 em, .contact-hero h1 em, .legal-hero h1 em { color: var(--db-gold-deep); font-weight: 400; }
.inner-hero-copy > p:last-child { max-width: 650px; margin: 0; color: var(--db-muted); font-size: .92rem; line-height: 1.8; }
.inner-hero-media { position: relative; height: 570px; margin: 0; overflow: hidden; border-radius: var(--db-radius-xl); box-shadow: 0 30px 80px rgba(38,27,16,.16); }
.inner-hero-media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg,transparent 62%,rgba(18,14,11,.66)); pointer-events: none; }
.inner-hero-media img { width: 100%; height: 100%; object-fit: cover; }
.inner-hero-media figcaption { position: absolute; z-index: 2; inset: auto 28px 24px; display: flex; justify-content: space-between; gap: 18px; color: #fff5df; font-size: .58rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.inner-hero-number { position: absolute; z-index: -1; left: -3vw; bottom: -2rem; color: rgba(157,113,40,.07); font-family: var(--db-serif); font-size: 18rem; line-height: 1; }

.story-section { display: grid; grid-template-columns: .8fr 1.2fr; gap: 100px; padding: 108px 0 118px; border-top: 1px solid var(--db-line); }
.story-section h2, .service-intro h2, .scope-note h2, .faq-section h2, .contact-sidebar h2, .builder-heading h2 { margin: 20px 0 0; font-family: var(--db-serif); font-size: clamp(3.1rem,5vw,6.2rem); font-weight: 400; letter-spacing: -.055em; line-height: .94; }
.story-section h2 em { color: var(--db-gold-deep); font-weight: 400; }
.story-copy { max-width: 700px; }
.story-copy p { color: var(--db-muted); font-size: .84rem; line-height: 1.8; }
.story-copy .lead-copy { margin-top: 0; color: var(--db-ink); font-family: var(--db-serif); font-size: 1.9rem; line-height: 1.36; }
.fact-rail { background: var(--db-night); color: var(--db-cream); }
.fact-rail > div { display: grid; grid-template-columns: 1.5fr 1fr 1fr; }
.fact-rail div > div { min-height: 210px; display: flex; flex-direction: column; justify-content: center; padding: 34px; border-right: 1px solid var(--db-dark-line); }
.fact-rail div > div:last-child { border-right: 0; }
.fact-rail span { color: var(--db-gold-bright); font-size: .58rem; letter-spacing: .1em; }
.fact-rail strong { margin: 17px 0 9px; font-family: var(--db-serif); font-size: 1.65rem; font-weight: 400; line-height: 1.2; }
.fact-rail small { color: rgba(255,250,240,.44); font-size: .58rem; letter-spacing: .1em; text-transform: uppercase; }
.purpose-section { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; padding-block: 120px; }
.purpose-card { min-height: 500px; display: flex; flex-direction: column; justify-content: flex-end; padding: 55px; border: 1px solid var(--db-line); border-radius: var(--db-radius-xl); background: radial-gradient(circle at 85% 12%,rgba(208,170,96,.22),transparent 15rem),#eee4d5; }
.purpose-card.dark { background: radial-gradient(circle at 15% 10%,rgba(190,142,61,.19),transparent 18rem),var(--db-night); color: var(--db-cream); }
.purpose-card h2 { max-width: 590px; margin: auto 0 22px; font-family: var(--db-serif); font-size: clamp(2.7rem,4.2vw,5.2rem); font-weight: 400; letter-spacing: -.05em; line-height: .95; }
.purpose-card > p:last-child { max-width: 520px; margin: 0; color: var(--db-muted); font-size: .8rem; line-height: 1.75; }
.purpose-card.dark > p:last-child { color: rgba(255,250,240,.5); }
.values-section { padding-bottom: 128px; }
.value-grid { display: grid; grid-template-columns: repeat(5,1fr); margin-top: 56px; border-top: 1px solid var(--db-line); }
.value-grid article { min-height: 265px; padding: 28px 22px; border-right: 1px solid var(--db-line); }
.value-grid article:last-child { border-right: 0; }
.value-grid span { color: var(--db-gold-deep); font-size: .58rem; }
.value-grid h3 { margin: 54px 0 14px; font-family: var(--db-serif); font-size: 1.65rem; font-weight: 400; }
.value-grid p { margin: 0; color: var(--db-muted); font-size: .71rem; line-height: 1.7; }

/* Services */
.service-intro { display: grid; grid-template-columns: .5fr 1fr .65fr; gap: 55px; align-items: end; padding: 92px 0 75px; border-top: 1px solid var(--db-line); }
.service-intro h2 { margin: 0; }
.service-intro > p:last-child { margin: 0; color: var(--db-muted); font-size: .83rem; line-height: 1.75; }
.service-details { padding-bottom: 120px; }
.service-detail { scroll-margin-top: 110px; min-height: 610px; display: grid; grid-template-columns: .42fr 1.58fr; margin-top: 22px; overflow: hidden; border-radius: var(--db-radius-xl); background: linear-gradient(135deg,#eadcc5,#f9f4eb); }
.service-detail.reverse { background: radial-gradient(circle at 82% 18%,rgba(196,146,60,.2),transparent 18rem),var(--db-night); color: var(--db-cream); }
.service-detail-number { min-height: 100%; display: grid; place-items: center; border-right: 1px solid var(--db-line); color: rgba(141,101,36,.34); font-family: var(--db-serif); font-size: clamp(7rem,13vw,15rem); line-height: 1; }
.service-detail.reverse .service-detail-number { border-color: var(--db-dark-line); color: rgba(224,190,119,.19); }
.service-detail-copy { max-width: 810px; display: flex; flex-direction: column; justify-content: center; padding: 68px; }
.service-detail-copy h2 { margin: 16px 0 24px; font-family: var(--db-serif); font-size: clamp(3rem,5.3vw,6rem); font-weight: 400; letter-spacing: -.055em; line-height: .92; }
.service-detail-copy h2 em { color: var(--db-gold-deep); font-weight: 400; }
.service-detail.reverse h2 em { color: var(--db-gold-bright); }
.service-detail-copy > p:not(.page-eyebrow) { max-width: 690px; margin: 0; color: var(--db-muted); font-size: .83rem; line-height: 1.75; }
.service-detail.reverse .service-detail-copy > p:not(.page-eyebrow) { color: rgba(255,250,240,.52); }
.service-detail-copy ul { display: grid; grid-template-columns: 1fr 1fr; gap: 0 25px; margin: 30px 0; padding: 0; list-style: none; border-top: 1px solid var(--db-line); }
.service-detail-copy li { padding: 13px 0; border-bottom: 1px solid var(--db-line); color: #574c40; font-size: .7rem; }
.service-detail-copy li::before { content: "↗"; margin-right: 9px; color: var(--db-gold-deep); }
.service-detail.reverse li { border-color: var(--db-dark-line); color: rgba(255,250,240,.62); }
.service-detail .text-link { margin-top: 0; }
.service-detail.reverse .text-link { color: var(--db-gold-bright); }
.service-process { padding-block: 110px; }
.light-process { max-width: 960px; margin: 58px 0 0 auto; border-color: var(--db-dark-line); color: var(--db-cream); }
.light-process li { border-color: var(--db-dark-line); }
.light-process p { color: rgba(255,250,240,.45); }
.scope-note { display: grid; grid-template-columns: 1fr 1fr; gap: 100px; align-items: center; margin-block: 100px; padding: 60px; border: 1px solid var(--db-line); border-radius: var(--db-radius-lg); background: #eee4d4; }
.scope-note h2 { font-size: clamp(2.6rem,4vw,4.8rem); }
.scope-note > p { margin: 0; color: var(--db-muted); font-size: .82rem; line-height: 1.8; }
.faq-section { display: grid; grid-template-columns: .65fr 1.35fr; gap: 90px; padding-bottom: 120px; }
.faq-list { border-top: 1px solid var(--db-line); }
.faq-list details { border-bottom: 1px solid var(--db-line); }
.faq-list summary { padding: 25px 42px 25px 0; cursor: pointer; color: var(--db-ink); font-family: var(--db-serif); font-size: 1.35rem; }
.faq-list details p { max-width: 730px; margin: -6px 0 28px; color: var(--db-muted); font-size: .78rem; line-height: 1.75; }

/* Sectors */
.sector-hero { grid-template-columns: 1fr 1fr; }
.sector-hero-art { position: relative; height: 580px; display: grid; place-items: center; overflow: hidden; border-radius: 50%; background: radial-gradient(circle,rgba(218,182,111,.32) 0 8%,transparent 8.5% 16%,rgba(197,151,70,.17) 16.5% 17%,transparent 17.5%),var(--db-night); color: var(--db-cream); }
.sector-hero-art::before { content: ""; position: absolute; inset: 8%; border: 1px solid var(--db-dark-line); border-radius: 50%; }
.sector-hero-art strong { z-index: 2; color: var(--db-gold-bright); font-family: var(--db-serif); font-size: 4rem; font-weight: 400; }
.sector-ring { position: absolute; z-index: 3; width: 100%; height: 100%; }
.sector-ring span { position: absolute; padding: 7px 10px; border: 1px solid var(--db-dark-line); border-radius: 999px; background: rgba(21,18,15,.8); color: rgba(255,250,240,.68); font-size: .52rem; letter-spacing: .1em; text-transform: uppercase; }
.ring-one span { top: 11%; left: 40%; }.ring-two span { top: 52%; right: 3%; }.ring-three span { bottom: 12%; left: 20%; }
.readiness-key { display: grid; grid-template-columns: 1fr repeat(3,1.1fr); gap: 24px; align-items: center; padding: 27px 0; border-block: 1px solid var(--db-line); }
.readiness-key > p { margin: 0; color: var(--db-gold-deep); font-size: .62rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.readiness-key > div { display: grid; grid-template-columns: 12px 1fr; gap: 2px 10px; }
.readiness-key strong { font-size: .68rem; }.readiness-key small { grid-column: 2; color: var(--db-muted); font-size: .58rem; }
.status-dot { width: 8px; height: 8px; margin-top: 4px; border-radius: 50%; }.status-dot.live { background:#6d9a68; box-shadow:0 0 0 4px rgba(109,154,104,.12); }.status-dot.developing { background:var(--db-gold); }.status-dot.enquiry { border:1px solid var(--db-gold-deep); }
.sector-detail { padding-block: 120px; }
.sector-detail-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 80px; align-items: center; }
.sector-detail-copy h2 { margin: 20px 0 30px; font-family: var(--db-serif); font-size: clamp(4rem,7vw,8rem); font-weight: 400; letter-spacing: -.06em; line-height: .84; }
.sector-detail-copy h2 em { color: var(--db-gold-deep); font-weight: 400; }
.sector-detail-copy > p:not(.page-eyebrow) { max-width: 630px; color: var(--db-muted); font-size: .84rem; line-height: 1.8; }
.beauty-detail, .other-detail { background: var(--db-night); color: var(--db-cream); }
.beauty-detail .sector-detail-copy > p:not(.page-eyebrow), .other-detail .sector-detail-copy > p:not(.page-eyebrow) { color: rgba(255,250,240,.5); }
.beauty-detail h2 em, .other-detail h2 em { color: var(--db-gold-bright); }
.sector-detail-copy dl { display: grid; grid-template-columns: repeat(3,1fr); margin: 34px 0; border-block: 1px solid var(--db-dark-line); }
.sector-detail-copy dl div { padding: 17px 8px 17px 0; }
.sector-detail-copy dt { color: var(--db-gold-bright); font-family: var(--db-serif); font-size: 2.5rem; }
.sector-detail-copy dd { margin: 2px 0 0; color: rgba(255,250,240,.42); font-size: .55rem; letter-spacing: .1em; text-transform: uppercase; }
.sector-products { position: relative; min-height: 650px; overflow: hidden; border-radius: var(--db-radius-xl); background: radial-gradient(circle at 50% 42%,#fff7e9 0 17%,rgba(219,183,111,.45) 17.5% 33%,transparent 34%),linear-gradient(145deg,#bb8738,#63401f); }
.sector-products::before { content:""; position:absolute; inset:0; opacity:.18; background-image:linear-gradient(rgba(255,255,255,.5) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.5) 1px,transparent 1px); background-size:60px 60px; }
.sector-products figure { position: absolute; width: 33%; height: 55%; margin: 0; }.sector-products figure:first-child { left: 2%; top: 24%; transform:rotate(-7deg); }.sector-products figure:nth-child(2) { z-index:2; left:34%; top:14%; height:65%; }.sector-products figure:last-child { right:2%; top:27%; transform:rotate(7deg); }
.sector-products img { width:100%; height:100%; object-fit:contain; mix-blend-mode:multiply; }.sector-products figcaption { width:fit-content; margin:7px auto 0; padding:6px 9px; border-radius:999px; background:rgba(18,14,11,.72); color:#f5deb0; font-size:.5rem; letter-spacing:.08em; text-transform:uppercase; }
.light-detail { background: transparent; }
.sector-appliance-art { position: relative; height: 650px; overflow: hidden; border-radius: var(--db-radius-xl); }
.sector-appliance-art::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 36%,rgba(18,14,11,.82)); }
.sector-appliance-art img { width:100%; height:100%; object-fit:cover; object-position:61% center; }
.appliance-art-label { position:absolute; z-index:2; inset:auto 40px 36px; display:flex; align-items:flex-end; justify-content:space-between; color:#fff7e8; }.appliance-art-label span { font-size:.56rem; letter-spacing:.1em; }.appliance-art-label strong { font-family:var(--db-serif); font-size:2.4rem; font-weight:400; line-height:1; text-align:right; }
.other-detail .sector-detail-grid { grid-template-columns: 1fr 1fr; }
.opportunity-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.opportunity-grid span { aspect-ratio:1; display:grid; place-items:center; border:1px solid var(--db-dark-line); border-radius:50%; color:rgba(255,250,240,.7); font-family:var(--db-serif); font-size:1.25rem; }

/* Contact */
.contact-hero { min-height: 570px; display:grid; grid-template-columns:1.25fr .75fr; gap:90px; align-items:center; padding-block:75px 100px; }
.contact-hero-copy > p:last-child { max-width:740px; color:var(--db-muted); font-size:.9rem; line-height:1.8; }
.instagram-card { min-height:280px; display:flex; flex-direction:column; justify-content:flex-end; padding:38px; border-radius:var(--db-radius-lg); background:radial-gradient(circle at 85% 10%,rgba(211,164,79,.3),transparent 15rem),var(--db-night); color:var(--db-cream); text-decoration:none; transition:transform 180ms ease; }
.instagram-card:hover { transform:translateY(-4px); }.instagram-card > span { margin-bottom:auto; color:rgba(255,250,240,.42); font-size:.58rem; letter-spacing:.1em; text-transform:uppercase; }.instagram-card strong { font-family:var(--db-serif); font-size:2.5rem; font-weight:400; }.instagram-card small { margin-top:12px; color:var(--db-gold-bright); font-size:.68rem; }.instagram-card b { float:right; }
.contact-layout { display:grid; grid-template-columns:.58fr 1.42fr; gap:70px; align-items:start; padding-bottom:120px; }
.contact-sidebar { position:sticky; top:120px; padding-right:30px; }.contact-sidebar h2 { font-size:clamp(2.8rem,4.2vw,4.9rem); }.contact-sidebar ol { margin:42px 0; padding:0; list-style:none; border-top:1px solid var(--db-line); }.contact-sidebar li { display:grid; grid-template-columns:42px 1fr; gap:14px; padding:18px 0; border-bottom:1px solid var(--db-line); color:var(--db-muted); font-size:.72rem; }.contact-sidebar li span { color:var(--db-gold-deep); }.privacy-mini { padding:18px; border-left:2px solid var(--db-gold); background:rgba(225,197,143,.13); color:var(--db-muted); font-size:.68rem; line-height:1.7; }.privacy-mini a { color:var(--db-gold-deep); }
.enquiry-builder { padding:54px; border:1px solid var(--db-line); border-radius:var(--db-radius-xl); background:rgba(255,252,246,.78); box-shadow:0 26px 70px rgba(46,32,17,.08); }
.builder-heading { margin-bottom:40px; }.builder-heading h2 { font-size:clamp(3rem,4.8vw,5.6rem); }.builder-heading > p:last-child { color:var(--db-muted); font-size:.68rem; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }.field { display:grid; gap:8px; }.field-wide { grid-column:1 / -1; }.field > span { color:#5c5146; font-size:.62rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }.field input,.field select,.field textarea { width:100%; border:0; border-bottom:1px solid rgba(86,63,30,.26); border-radius:0; padding:13px 2px; background:transparent; color:var(--db-ink); }.field textarea { resize:vertical; }.field input:focus,.field select:focus,.field textarea:focus { outline:0; border-color:var(--db-gold-deep); box-shadow:0 1px 0 var(--db-gold-deep); }.field input::placeholder,.field textarea::placeholder { color:#a69b8e; }
.form-submit { margin-top:34px; }.form-status { min-height:1.4em; margin:14px 0 0; color:var(--db-gold-deep); font-size:.68rem; }
.enquiry-result { margin-top:42px; padding-top:40px; border-top:1px solid var(--db-line); }.enquiry-result h3 { margin:12px 0 20px; font-family:var(--db-serif); font-size:2rem; font-weight:400; }.enquiry-result textarea { width:100%; padding:22px; border:1px solid var(--db-line); border-radius:16px; background:#f1e9dd; color:var(--db-ink); font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.72rem; line-height:1.7; resize:vertical; }.result-actions { display:flex; gap:12px; margin-top:16px; }.enquiry-result > p { color:var(--db-muted); font-size:.65rem; line-height:1.65; }
.db-button-dark { background:var(--db-night); color:var(--db-cream); }.db-button-outline { border:1px solid var(--db-line); background:transparent; color:var(--db-ink); }
.contact-confirmation { display:grid; grid-template-columns:.75fr 1.25fr; gap:80px; margin-bottom:120px; padding:45px; border-radius:var(--db-radius-lg); background:#e9decc; }.contact-confirmation div { display:grid; gap:8px; }.contact-confirmation span { color:var(--db-gold-deep); font-size:.58rem; letter-spacing:.1em; text-transform:uppercase; }.contact-confirmation strong { font-family:var(--db-serif); font-size:1.8rem; font-weight:400; }.contact-confirmation > p { margin:0; color:var(--db-muted); font-size:.76rem; line-height:1.75; }

/* Legal */
.legal-shell { padding:85px 0 120px; }
.legal-hero { max-width:1180px; padding-bottom:85px; }.legal-hero > p:not(.page-eyebrow) { max-width:720px; color:var(--db-muted); font-size:.84rem; line-height:1.8; }.legal-hero dl { display:grid; grid-template-columns:repeat(3,1fr); margin:48px 0 0; border-block:1px solid var(--db-line); }.legal-hero dl div { padding:18px 14px 18px 0; }.legal-hero dt { color:var(--db-gold-deep); font-size:.56rem; letter-spacing:.1em; text-transform:uppercase; }.legal-hero dd { margin:6px 0 0; font-family:var(--db-serif); font-size:1.2rem; }
.legal-layout { display:grid; grid-template-columns:.34fr 1fr; gap:90px; align-items:start; padding-top:70px; border-top:1px solid var(--db-line); }.legal-nav { position:sticky; top:118px; display:grid; gap:4px; }.legal-nav p { color:var(--db-gold-deep); font-size:.59rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }.legal-nav a { width:fit-content; padding:6px 0; color:var(--db-muted); font-size:.7rem; text-decoration:none; }.legal-nav a:hover { color:var(--db-ink); }
.legal-content { max-width:860px; }.legal-content section { position:relative; padding:0 0 56px 62px; }.legal-content section > span { position:absolute; left:0; top:5px; color:var(--db-gold-deep); font-family:var(--db-serif); font-size:1rem; }.legal-content h2 { margin:0 0 18px; font-family:var(--db-serif); font-size:2.5rem; font-weight:400; letter-spacing:-.035em; }.legal-content p { color:var(--db-muted); font-size:.79rem; line-height:1.8; }.legal-content a { color:var(--db-gold-deep); }.legal-review-note { margin-left:62px; padding:28px; border-radius:18px; background:var(--db-night); color:var(--db-cream); }.legal-review-note strong { color:var(--db-gold-bright); font-size:.62rem; letter-spacing:.1em; text-transform:uppercase; }.legal-review-note p { margin-bottom:0; color:rgba(255,250,240,.54); }

/* Catalogue shell integration */
.catalogue-page .db-header { margin-bottom:24px; }
.catalogue-page .db-footer { width:100%; margin:0; color:var(--db-ink); font-size:inherit; }
.catalogue-page .db-footer span:first-child { font-weight:inherit; }
.catalogue-page .footer-link-group { display:grid; align-content:start; gap:9px; }
.catalogue-page .footer-link-group p { margin:0 0 9px; color:var(--db-gold-deep); font-size:.59rem; font-weight:750; letter-spacing:.11em; text-transform:uppercase; }
.catalogue-page .footer-link-group a,.catalogue-page .footer-link-group span { width:fit-content; color:#5f5549; font-size:.74rem; letter-spacing:normal; text-decoration:none; text-transform:none; }
.catalogue-page .db-footer-bottom { width:var(--db-shell); margin-inline:auto; }
.footer-column { display:grid; align-content:start; gap:9px; }.footer-column h2 { margin:0 0 9px; color:var(--db-gold-deep); font-family:var(--db-sans); font-size:.59rem; letter-spacing:.11em; text-transform:uppercase; }.footer-column a,.footer-column span { width:fit-content; color:#5f5549; font-size:.74rem; letter-spacing:normal; text-decoration:none; text-transform:none; }

.error-page { margin:0; min-width:320px; background:var(--db-night); color:var(--db-cream); font-family:var(--db-sans); }
.error-shell { width:min(1200px,calc(100% - 48px)); min-height:100vh; display:flex; flex-direction:column; justify-content:space-between; margin:auto; padding-block:42px; background:radial-gradient(circle at 78% 38%,rgba(196,147,60,.2),transparent 23rem); }
.error-shell .db-brand img { mix-blend-mode:screen; filter:brightness(1.4); }.error-shell > div { max-width:850px; }.error-shell h1 { margin:18px 0 25px; font-family:var(--db-serif); font-size:clamp(4rem,9vw,9rem); font-weight:400; letter-spacing:-.06em; line-height:.86; }.error-shell h1 em { color:var(--db-gold-bright); font-weight:400; }.error-shell > div > p:not(.page-eyebrow) { max-width:640px; color:rgba(255,250,240,.54); font-size:.84rem; line-height:1.8; }.error-shell small { color:rgba(255,250,240,.34); font-size:.58rem; letter-spacing:.1em; text-transform:uppercase; }

@media (max-width: 1180px) {
  .db-header-inner { grid-template-columns: auto 1fr auto; }
  .db-brand span { display: none; }
  .db-nav { justify-self: center; }
  .db-nav a { padding-inline: 10px; }
  .home-hero-copy { width: 65%; padding-left: 54px; }
  .intro-split, .process-section { gap: 54px; }
  .sector-grid { grid-template-columns: 1fr 1fr; }
  .beauty-sector { grid-column: 1 / -1; }
  .beauty-product-cluster { width: 620px; max-width: 100%; margin-inline: auto; }
  .spotlight-product.p-one { left: 1%; }
  .spotlight-product.p-three { right: 0; }
}

@media (max-width: 900px) {
  :root { --db-shell: min(100% - 28px, 760px); }
  .db-header { padding: 8px 0; }
  .db-header-inner { min-height: 62px; grid-template-columns: 1fr auto; }
  .db-brand img { width: 124px; height: 52px; }
  .nav-toggle { width: 44px; height: 44px; display: grid; place-content: center; gap: 4px; border: 1px solid var(--db-line); border-radius: 50%; background: rgba(255,250,240,.76); }
  .nav-toggle > span:not(.sr-only) { width: 18px; height: 1px; background: var(--db-ink); transition: transform 160ms ease, opacity 160ms ease; }
  .nav-toggle[aria-expanded="true"] > span:first-child { transform: translateY(5px) rotate(45deg); }
  .nav-toggle[aria-expanded="true"] > span:nth-child(2) { opacity: 0; }
  .nav-toggle[aria-expanded="true"] > span:nth-child(3) { transform: translateY(-5px) rotate(-45deg); }
  .db-nav { position: fixed; inset: 78px 14px auto; display: none; align-items: stretch; flex-direction: column; padding: 18px; border-radius: 24px; background: rgba(25,21,17,.97); box-shadow: 0 28px 80px rgba(22,15,8,.28); }
  .db-nav[data-open] { display: flex; }
  .db-nav a { padding: 14px 16px; color: rgba(255,250,240,.72); font-size: .78rem; }
  .db-nav a:hover, .db-nav a[aria-current="page"] { background: rgba(255,255,255,.08); }
  .header-cta { display: none; }
  .home-hero { min-height: 820px; align-items: start; border-radius: 28px; }
  .home-hero-image { object-position: 63% center; }
  .home-hero-shade { background: linear-gradient(180deg,rgba(13,11,9,.95) 0%,rgba(15,12,9,.72) 54%,rgba(13,11,9,.9) 100%),linear-gradient(90deg,rgba(13,11,9,.7),transparent); }
  .home-hero-copy { width: 100%; padding: 70px 30px 160px; }
  .home-hero h1 { font-size: clamp(4rem,13vw,6.6rem); }
  .hero-side-note { display: none; }
  .hero-facts { grid-template-columns: repeat(2,1fr); }
  .hero-facts div { min-height: 94px; padding: 19px 22px; border-top: 1px solid rgba(245,219,166,.1); }
  .hero-facts dt { font-size: 1.65rem; }
  .marquee-strip div { justify-content: flex-start; overflow-x: auto; scrollbar-width: none; }
  .marquee-strip span, .marquee-strip i { flex: none; }
  .intro-split, .section-topline, .process-section, .closing-cta { grid-template-columns: 1fr; }
  .intro-split { gap: 20px; padding-block: 92px 80px; }
  .intro-copy-block { max-width: 620px; padding-top: 10px; }
  .visual-manifesto { grid-template-columns: 1fr; margin-bottom: 80px; border-radius: 28px; }
  .manifesto-image-wrap { min-height: 410px; }
  .manifesto-card { border-top: 1px solid var(--db-dark-line); border-left: 0; }
  .dark-section { padding-block: 90px; }
  .section-topline { gap: 22px; }
  .service-grid { grid-template-columns: 1fr; }
  .service-card { min-height: 330px; }
  .sector-grid { grid-template-columns: 1fr; }
  .beauty-sector { grid-column: auto; }
  .beauty-spotlight { grid-template-columns: 1fr; }
  .beauty-spotlight-copy { padding: 58px 38px; }
  .beauty-spotlight-stage { min-height: 610px; }
  .process-section { gap: 42px; }
  .closing-cta { gap: 34px; padding: 52px 38px; }
  .db-footer-main { grid-template-columns: 1fr 1fr; }
  .footer-brand-block { grid-column: 1 / -1; }
}

@media (max-width: 560px) {
  .home-hero { min-height: 830px; }
  .home-hero-copy { padding: 52px 22px 170px; }
  .home-hero h1 { font-size: clamp(3.6rem,17vw,5rem); }
  .home-hero-lede { font-size: .85rem; }
  .button-row { display: grid; }
  .db-button { width: 100%; }
  .hero-facts dd { font-size: .49rem; }
  .section-heading-block h2, .section-topline h2, .process-heading h2 { font-size: clamp(3rem,14vw,4.5rem); }
  .intro-copy-block .lead-copy { font-size: 1.55rem; }
  .manifesto-image-wrap { min-height: 300px; }
  .manifesto-card { padding: 36px 28px; }
  .manifesto-card blockquote { font-size: 2.2rem; }
  .service-card, .sector-card { border-radius: 22px; }
  .service-card { min-height: 300px; padding: 26px; }
  .sectors-showcase { padding-block: 88px; }
  .sector-card { min-height: 530px; padding: 22px; }
  .sector-card-topline { align-items: flex-start; flex-direction: column; }
  .beauty-product-cluster img { width: 150px; height: 220px; }
  .beauty-product-cluster img:nth-child(2) { left: 27%; }
  .beauty-spotlight { margin-bottom: 88px; border-radius: 28px; }
  .beauty-spotlight h2, .closing-cta h2 { font-size: clamp(3.1rem,14vw,4.5rem); }
  .beauty-spotlight-copy { padding: 46px 24px; }
  .beauty-spotlight-copy dl { grid-template-columns: 1fr; }
  .beauty-spotlight-copy dl div { display: flex; align-items: baseline; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--db-dark-line); }
  .beauty-spotlight-stage { min-height: 470px; }
  .spotlight-product.p-one { width: 140px; height: 250px; left: -2%; top: 24%; }
  .spotlight-product.p-two { width: 175px; height: 310px; left: 28%; top: 13%; }
  .spotlight-product.p-three { width: 135px; height: 240px; right: -3%; top: 31%; }
  .closing-cta { padding: 40px 24px; border-radius: 28px; }
  .db-footer-main { grid-template-columns: 1fr; gap: 36px; }
  .footer-brand-block { grid-column: auto; }
  .db-footer-bottom { min-height: 100px; align-items: flex-start; flex-direction: column; justify-content: center; }
}

@media (max-width: 900px) {
  .inner-hero, .sector-hero { min-height:0; grid-template-columns:1fr; gap:38px; padding:64px 0 90px; }
  .inner-hero h1, .contact-hero h1, .legal-hero h1 { font-size:clamp(4rem,12vw,6.8rem); }
  .inner-hero-media, .sector-hero-art { height:490px; }
  .inner-hero-number { display:none; }
  .story-section, .service-intro, .scope-note, .faq-section, .contact-layout, .contact-confirmation, .legal-layout { grid-template-columns:1fr; gap:38px; }
  .story-section { padding-block:80px; }
  .fact-rail > div { grid-template-columns:1fr; }
  .fact-rail div > div { min-height:150px; border-right:0; border-bottom:1px solid var(--db-dark-line); }
  .purpose-section { grid-template-columns:1fr; padding-block:80px; }
  .purpose-card { min-height:430px; }
  .value-grid { grid-template-columns:1fr 1fr; }
  .value-grid article { border-bottom:1px solid var(--db-line); }
  .value-grid article:nth-child(2n) { border-right:0; }
  .service-intro { padding-block:74px 55px; }
  .service-detail { min-height:0; grid-template-columns:1fr; }
  .service-detail-number { min-height:190px; border-right:0; border-bottom:1px solid var(--db-line); font-size:8rem; }
  .service-detail-copy { padding:48px; }
  .scope-note { padding:42px; }
  .light-process { margin-left:0; }
  .readiness-key { grid-template-columns:1fr 1fr; }
  .readiness-key > p { grid-column:1 / -1; }
  .sector-detail-grid, .other-detail .sector-detail-grid { grid-template-columns:1fr; }
  .sector-detail { padding-block:90px; }
  .beauty-detail .sector-detail-copy { order:1; }.beauty-detail .sector-products { order:2; }
  .sector-products, .sector-appliance-art { min-height:540px; height:540px; }
  .contact-hero { min-height:0; grid-template-columns:1fr; gap:45px; padding-block:64px 80px; }
  .instagram-card { min-height:240px; }
  .contact-sidebar { position:static; padding:0; }
  .enquiry-builder { padding:42px; }
  .contact-confirmation { margin-bottom:90px; }
  .legal-layout { padding-top:50px; }
  .legal-nav { position:static; grid-template-columns:repeat(3,1fr); padding-bottom:32px; border-bottom:1px solid var(--db-line); }
  .legal-nav p { grid-column:1 / -1; }
}

@media (max-width: 560px) {
  .inner-hero, .sector-hero { padding-block:48px 70px; }
  .inner-hero h1, .contact-hero h1, .legal-hero h1 { font-size:clamp(3.5rem,17vw,5rem); }
  .inner-hero-media, .sector-hero-art { height:380px; border-radius:26px; }
  .inner-hero-media figcaption { inset:auto 18px 18px; flex-wrap:wrap; }
  .story-section { gap:28px; padding-block:66px; }
  .story-copy .lead-copy { font-size:1.55rem; }
  .purpose-section { padding-block:66px; }.purpose-card { min-height:390px; padding:34px 26px; border-radius:26px; }
  .value-grid { grid-template-columns:1fr; }.value-grid article { min-height:210px; border-right:0; }
  .service-detail { border-radius:26px; }.service-detail-number { min-height:145px; font-size:6rem; }.service-detail-copy { padding:35px 24px; }.service-detail-copy ul { grid-template-columns:1fr; }
  .scope-note { margin-block:68px; padding:30px 24px; }.faq-section { padding-bottom:80px; }
  .readiness-key { grid-template-columns:1fr; }.sector-hero-art { border-radius:50%; }.sector-detail { padding-block:72px; }.sector-detail-copy h2 { font-size:clamp(3.6rem,16vw,5rem); }.sector-products,.sector-appliance-art { min-height:430px; height:430px; border-radius:26px; }.appliance-art-label { inset:auto 22px 24px; }.appliance-art-label strong { font-size:1.8rem; }.opportunity-grid { grid-template-columns:1fr 1fr; }
  .contact-hero { padding-block:48px 65px; }.instagram-card { padding:28px; }.instagram-card strong { font-size:2rem; }
  .contact-layout { padding-bottom:80px; }.enquiry-builder { padding:30px 20px; border-radius:26px; }.form-grid { grid-template-columns:1fr; }.field-wide { grid-column:auto; }.result-actions { display:grid; }.result-actions .db-button { width:100%; }.contact-confirmation { padding:30px 24px; }
  .legal-shell { padding-block:60px 90px; }.legal-hero dl { grid-template-columns:1fr; }.legal-hero dl div { border-bottom:1px solid var(--db-line); }.legal-nav { grid-template-columns:1fr 1fr; }.legal-content section { padding-left:36px; }.legal-content h2 { font-size:2rem; }.legal-review-note { margin-left:0; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .reveal { opacity: 1; transform: none; }
}
