/* Premium editorial system: Tiffany turquoise, ink, silver and generous space. */
body[data-refinement] .revaion-editorial-row { max-width:1180px; margin:64px auto 20px; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:48px; align-items:center; padding:0 24px; }
body[data-refinement] .revaion-editorial-row .luxury-film { width:100%; max-width:none; margin:0; aspect-ratio:960/544; background:#fff; }
body[data-refinement] .revaion-editorial-row .luxury-film-video { object-fit:contain; }
.revaion-film-copy { color:#25474c; }
.revaion-film-copy > p:first-child { color:#008b91; font-size:12px; letter-spacing:.15em; }
.revaion-film-copy h2 { color:#083d43; font:500 clamp(28px,3vw,44px)/1.3 Georgia,'Noto Serif TC',serif; margin:14px 0 20px; }
.revaion-film-copy p { font-size:17px; line-height:1.9; }
.revaion-film-copy ul { padding-left:20px; line-height:1.85; }
.revaion-film-copy li { margin-bottom:10px; }
@media(max-width:760px) { body[data-refinement] .revaion-editorial-row { grid-template-columns:1fr; gap:26px; margin:32px auto; padding:0 22px; } }
.restored-brand-hero { position:relative; max-width:1440px; margin:auto; isolation:isolate; }
.restored-brand-hero > img { display:block; width:100%; height:auto; }
.restored-brand-hero::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,rgba(245,250,239,.94),rgba(245,250,239,.6) 36%,transparent 67%); z-index:0; }
.restored-brand-hero > div { position:absolute; z-index:1; top:50%; left:6%; transform:translateY(-50%); max-width:48%; color:#073e40; }
.restored-brand-hero h1 { font:500 clamp(32px,4.5vw,66px)/1.25 Georgia,'Noto Serif TC',serif; margin:22px 0; }
.restored-brand-hero p { line-height:1.8; }
body[data-refinement] .home-banner-directory { max-width:1180px; margin:30px auto 80px; display:grid; gap:26px; }
.home-route-banner { display:grid; grid-template-columns:2fr 1fr; color:#073e40; text-decoration:none; background:#fff; border:1px solid #e1e9eb; overflow:hidden; }
.home-route-banner > img { width:100%; aspect-ratio:16/7; object-fit:cover; display:block; }
.home-route-banner > div { padding:30px; display:flex; flex-direction:column; justify-content:center; }
.home-route-banner h2 { font:500 clamp(25px,2.5vw,38px)/1.4 Georgia,'Noto Serif TC',serif; margin:16px 0; }
.home-route-banner small { color:#008689; }
.home-route-banner b { font-size:26px; }
.home-route-banner:hover { background:#f5fbff; }
.home-route-banner:focus-visible, .revaion-click-cover:focus-visible { outline:3px solid #007e83; outline-offset:5px; }
.revaion-click-cover { position:absolute; inset:0; z-index:3; width:100%; border:0; color:white; cursor:pointer; background:linear-gradient(90deg,rgba(3,40,44,.7),rgba(3,40,44,.12)),url('/dibifree180-tiffany-blue-product.jpg') center/cover; display:flex; align-items:center; justify-content:center; flex-direction:column; gap:15px; font-size:18px; }
.revaion-click-cover strong { font-size:34px; letter-spacing:.16em; }
.revaion-click-cover[hidden] { display:none; }
@media(max-width:760px) {
 .restored-brand-hero > div { position:relative; transform:none; top:auto; left:auto; max-width:none; padding:26px 22px; }
 .restored-brand-hero::after { display:none; }
 body[data-refinement] .home-banner-directory { margin:26px 18px 55px; gap:22px; }
 .home-route-banner { grid-template-columns:1fr; }
 .home-route-banner > img { aspect-ratio:16/9; }
 .home-route-banner > div { padding:20px 24px; }
}
body[data-refinement] {
  --luxury-ink: #063b3e;
  --luxury-tiffany: #00a9ab;
  --luxury-pale: #ffffff;
  --luxury-silver: #d9e2df;
  --luxury-copper: #b96f4e;
  background: var(--luxury-pale);
}
body[data-refinement] .site-header { background: rgba(250,252,249,.94); border-bottom: 1px solid rgba(6,59,62,.10); box-shadow: none; }
body[data-refinement] .site-header .page-nav { gap: clamp(12px, 1.8vw, 30px); }
body[data-refinement] .site-header .nav-item { color: var(--luxury-ink); font-size: 13px; font-weight: 700; letter-spacing: .035em; }
body[data-refinement] .site-header .nav-item.is-active { color: var(--luxury-tiffany); }
body[data-refinement] .floating-contact { background: var(--luxury-copper); box-shadow: 0 12px 30px rgba(109,54,34,.22); }
body[data-refinement] .luxury-home { background: var(--luxury-pale); color: var(--luxury-ink); padding-bottom: 0; }
body[data-refinement] .luxury-film { position: relative; max-width: 1180px; aspect-ratio: 16 / 8.2; margin: 42px auto 0; overflow: hidden; background: #dceeed url('/dibifree180-tiffany-blue-product.jpg') center / cover no-repeat; }
body[data-refinement] .luxury-film::after { content: ''; position: absolute; inset: 0; pointer-events: none; box-shadow: inset 0 0 0 1px rgba(255,255,255,.45); }
body[data-refinement] .luxury-film-video { display: block; position: relative; z-index: 1; width: 100%; height: 100%; object-fit: cover; object-position: center; }
body[data-refinement] .luxury-film-caption { position: absolute; z-index: 2; left: 24px; right: 24px; bottom: 20px; display: flex; align-items: center; justify-content: space-between; color: white; font-size: 11px; letter-spacing: .15em; }
body[data-refinement] .luxury-sound { appearance: none; border: 1px solid rgba(255,255,255,.8); background: rgba(3,32,34,.45); color: white; padding: 10px 13px; font: inherit; letter-spacing: .05em; cursor: pointer; }
body[data-refinement] .luxury-product-intro { max-width: 1180px; margin: 0 auto; padding: 88px 0 52px; display: grid; grid-template-columns: minmax(0,.78fr) minmax(0,1.22fr); align-items: center; gap: 44px; }
body[data-refinement] .luxury-eyebrow { color: var(--luxury-tiffany); font-size: 11px; font-weight: 800; letter-spacing: .16em; }
body[data-refinement] .luxury-product-intro h1 { margin: 18px 0 20px; color: #062f33; font-family: Georgia, 'Noto Serif TC', 'Songti TC', serif; font-size: clamp(42px, 5vw, 75px); font-weight: 500; line-height: 1.12; letter-spacing: -.045em; }
body[data-refinement] .luxury-lead { max-width: 35rem; color: #386165; font-size: 17px; line-height: 1.85; }
body[data-refinement] .luxury-actions { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 28px; }
body[data-refinement] .luxury-actions a { display: inline-flex; align-items: center; gap: 16px; padding: 15px 19px; color: white; background: var(--luxury-ink); text-decoration: none; font-weight: 700; }
body[data-refinement] .luxury-actions .luxury-quiet { color: var(--luxury-ink); background: transparent; border: 1px solid rgba(6,59,62,.4); }
body[data-refinement] .luxury-product-figure { min-height: 440px; margin: 0; position: relative; overflow: hidden; background: #c2e8e9; }
body[data-refinement] .luxury-product-figure img { width: 100%; height: 100%; min-height: 440px; object-fit: cover; object-position: 70% center; display: block; filter: saturate(.96) contrast(1.04); }
body[data-refinement] .luxury-product-figure figcaption { position: absolute; left: 24px; bottom: 20px; color: white; font-size: 10px; font-weight: 800; letter-spacing: .16em; text-shadow: 0 1px 7px rgba(0,0,0,.45); }
body[data-refinement] .luxury-proof-strip { max-width: 1180px; margin: 0 auto 94px; padding: 26px 0; display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid #b6ccca; border-bottom: 1px solid #b6ccca; }
body[data-refinement] .luxury-proof-strip a { padding: 8px 34px; color: var(--luxury-ink); text-decoration: none; border-left: 1px solid #b6ccca; display: grid; gap: 4px; }
body[data-refinement] .luxury-proof-strip a:first-child { border-left: 0; }
body[data-refinement] .luxury-proof-strip small { color: var(--luxury-tiffany); font-weight: 800; letter-spacing: .12em; }
body[data-refinement] .luxury-proof-strip .lang { font-family: Georgia, 'Noto Serif TC', serif; font-size: 20px; }
body[data-refinement] .luxury-visual-atlas { max-width: 1180px; margin: 0 auto 96px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
body[data-refinement] .luxury-visual-atlas a { position: relative; display: block; min-height: 310px; overflow: hidden; color: #fff; background: #063b3e; text-decoration: none; }
body[data-refinement] .luxury-visual-atlas img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .65s ease; }
body[data-refinement] .luxury-visual-atlas a::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,0) 35%, rgba(2,37,39,.78) 100%); }
body[data-refinement] .luxury-visual-atlas span { position: relative; z-index: 1; min-height: 310px; padding: 26px; display: flex; flex-direction: column; justify-content: flex-end; }
body[data-refinement] .luxury-visual-atlas small { margin-bottom: 9px; font-weight: 800; font-size: 10px; letter-spacing: .13em; color: #a7f0ea; }
body[data-refinement] .luxury-visual-atlas strong { font-family: Georgia, 'Noto Serif TC', 'Songti TC', serif; font-weight: 500; font-size: 26px; letter-spacing: -.03em; }
body[data-refinement] .luxury-visual-atlas a:hover img { transform: scale(1.045); }
body[data-refinement] .luxury-editorial { max-width: 1180px; margin: 0 auto 90px; padding: 54px; display: grid; grid-template-columns: .85fr 1.15fr; gap: 52px; background: #e7efeb; }
body[data-refinement] .luxury-editorial h2 { margin: 12px 0 0; color: var(--luxury-ink); font-family: Georgia, 'Noto Serif TC', serif; font-size: clamp(31px,3.4vw,50px); font-weight: 500; line-height: 1.2; }
body[data-refinement] .luxury-editorial-links { display: grid; }
body[data-refinement] .luxury-editorial-links a { display: grid; grid-template-columns: 48px 1fr auto; align-items: center; padding: 18px 0; border-bottom: 1px solid #b6ccca; color: var(--luxury-ink); text-decoration: none; font-size: 20px; }
body[data-refinement] .luxury-editorial-links strong { color: var(--luxury-tiffany); font-size: 12px; letter-spacing: .08em; }
body[data-refinement] .luxury-editorial-links b { color: var(--luxury-copper); }
/* Service pages keep their content but gain one coherent, high-contrast editorial rhythm. */
body[data-refinement] .page-view:not(.luxury-home) .page-hero,
body[data-refinement] .page-view:not(.luxury-home) .service-hero-surface { background-color: #edf4f0; }
body[data-refinement] .page-view:not(.luxury-home) .page-hero-copy h1,
body[data-refinement] .page-view:not(.luxury-home) .chapter-heading h2 { color: var(--luxury-ink); font-family: Georgia, 'Noto Serif TC', 'Songti TC', serif; font-weight: 500; letter-spacing: -.035em; }
body[data-refinement] .page-view:not(.luxury-home) .page-hero-copy p { color: #355e61; }
body[data-refinement] .page-view:not(.luxury-home) .page-hero .button,
body[data-refinement] .page-view:not(.luxury-home) .chapter-link { border-radius: 0; }
body[data-refinement] .page-view:not(.luxury-home) .page-hero .button.primary,
body[data-refinement] .page-view:not(.luxury-home) .chapter-link.solid-link { background: var(--luxury-ink); }
body[data-refinement] .page-view[data-page="science"] .study-details,
body[data-refinement] .page-view[data-page="science"] .paper-section { max-width: 1180px; margin-left: auto; margin-right: auto; }
body[data-refinement] .page-view[data-page="science"] .study-outcomes article { background: #f8fbf8; border: 1px solid #cbdcda; box-shadow: none; }
body[data-refinement] .page-view[data-page="ai-care"] { background: #ffffff; }
body[data-refinement] .page-view[data-page="ai-care"] .ai-commercial-hero { background: #063b3e; }
body[data-refinement] .page-view[data-page="diabetes"] .ingredient-card,
body[data-refinement] .page-view[data-page="weight"] .glp-reading article { box-shadow: none; border-color: #c7d9d5; }
@media (max-width: 760px) {
  body[data-refinement] .luxury-film { margin: 16px 0 0; aspect-ratio: 4 / 3; }
  body[data-refinement] .luxury-film-caption { left: 14px; right: 14px; bottom: 12px; font-size: 9px; }
  body[data-refinement] .luxury-sound { padding: 8px 9px; }
  body[data-refinement] .luxury-product-intro { padding: 52px 22px 32px; grid-template-columns: 1fr; gap: 32px; }
  body[data-refinement] .luxury-product-intro h1 { font-size: 45px; }
  body[data-refinement] .luxury-lead { font-size: 16px; }
  body[data-refinement] .luxury-product-figure, body[data-refinement] .luxury-product-figure img { min-height: 300px; }
  body[data-refinement] .luxury-proof-strip { margin: 0 22px 58px; grid-template-columns: 1fr; padding: 10px 0; }
  body[data-refinement] .luxury-proof-strip a, body[data-refinement] .luxury-proof-strip a:first-child { border-left: 0; border-top: 1px solid #b6ccca; padding: 14px 0; }
  body[data-refinement] .luxury-proof-strip a:first-child { border-top: 0; }
  body[data-refinement] .luxury-visual-atlas { margin: 0 0 58px; grid-template-columns: 1fr; gap: 10px; }
  body[data-refinement] .luxury-visual-atlas a, body[data-refinement] .luxury-visual-atlas span { min-height: 218px; }
  body[data-refinement] .luxury-editorial { margin: 0 0 52px; padding: 38px 22px; grid-template-columns: 1fr; gap: 28px; }
}

/* 2026-09-19 approved DM direction: desktop half-image storytelling. */
body[data-refinement] .restored-brand-hero {
  max-width: 1180px;
  margin: 38px auto 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  align-items: stretch;
  background: #f3f8f8;
}
body[data-refinement] .restored-brand-hero::after { display: none; }
body[data-refinement] .restored-brand-copy {
  position: static;
  max-width: none;
  padding: clamp(42px,5vw,72px);
  transform: none;
  color: #073e40;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
body[data-refinement] .restored-brand-hero > img {
  width: 100%;
  height: 100%;
  min-height: 520px;
  object-fit: cover;
  object-position: center;
}
body[data-refinement] .restored-brand-hero h1 {
  margin: 18px 0 22px;
  font-size: clamp(38px,4vw,58px);
  line-height: 1.25;
}
body[data-refinement] .home-hero-intro p {
  margin: 0;
  color: #365f63;
  font-size: 16px;
  line-height: 1.75;
}
body[data-refinement] .home-hero-intro p + p { margin-top: 12px; }
body[data-refinement] .home-hero-invite {
  margin: 22px 0 0;
  padding-top: 18px;
  border-top: 1px solid #cfe0e1;
  color: #007f84;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.7;
}
body[data-refinement] .luxury-product-intro {
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 54px;
  padding: 86px 24px 54px;
}
body[data-refinement] .luxury-product-intro h2 {
  margin: 18px 0 20px;
  color: #062f33;
  font: 500 clamp(32px,3.2vw,48px)/1.25 Georgia,'Noto Serif TC','Songti TC',serif;
  letter-spacing: -.025em;
}
body[data-refinement] .luxury-product-figure,
body[data-refinement] .luxury-product-figure img {
  min-height: 360px;
}
body[data-refinement] .revaion-editorial-row {
  grid-template-columns: repeat(2,minmax(0,1fr));
  margin: 44px auto 92px;
  gap: 54px;
}
body[data-refinement] .revaion-film-copy ul {
  margin: 22px 0 0;
  padding: 20px 0 0;
  list-style: none;
  border-top: 1px solid #d3e0e1;
}
body[data-refinement] .revaion-film-copy li {
  position: relative;
  margin: 0;
  padding: 8px 0 8px 22px;
}
body[data-refinement] .revaion-film-copy li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 19px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #00a9ab;
}
body[data-refinement] .home-brand-story {
  max-width: 1180px;
  margin: 0 auto 90px;
  padding: 0 24px;
}
body[data-refinement] .home-brand-story > header {
  max-width: 760px;
  margin: 0 auto 46px;
  text-align: center;
}
body[data-refinement] .home-brand-story > header h2 {
  margin: 14px 0 18px;
  color: #073e40;
  font: 500 clamp(32px,3.8vw,52px)/1.25 Georgia,'Noto Serif TC','Songti TC',serif;
}
body[data-refinement] .home-brand-story > header p:last-child {
  color: #42676a;
  font-size: 17px;
  line-height: 1.9;
}
body[data-refinement] .home-story-list { display: grid; gap: 32px; }
body[data-refinement] .home-story-panel {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  min-height: 360px;
  color: #073e40;
  background: #f6f9fa;
  border: 1px solid #dbe5e6;
  text-decoration: none;
  overflow: hidden;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
body[data-refinement] .home-story-panel > img {
  width: 100%;
  height: 100%;
  min-height: 360px;
  object-fit: cover;
}
body[data-refinement] .home-story-panel:nth-child(2) > img { object-position: left center; }
body[data-refinement] .home-story-panel:nth-child(3) > img { object-position: right center; }
body[data-refinement] .home-story-panel > div {
  position: relative;
  padding: clamp(34px,5vw,64px);
  display: flex;
  flex-direction: column;
  justify-content: center;
}
body[data-refinement] .home-story-panel.is-reversed > img { order: 2; }
body[data-refinement] .home-story-panel small {
  color: #008b91;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .12em;
}
body[data-refinement] .home-story-panel h3 {
  margin: 15px 0;
  font: 500 clamp(28px,3vw,42px)/1.3 Georgia,'Noto Serif TC','Songti TC',serif;
}
body[data-refinement] .home-story-panel p {
  margin: 0;
  color: #42676a;
  font-size: 16px;
  line-height: 1.85;
}
body[data-refinement] .home-story-panel b {
  margin-top: 24px;
  color: #008b91;
  font-size: 26px;
  font-weight: 400;
}
body[data-refinement] .home-story-panel:hover {
  border-color: #75bfc1;
  box-shadow: 0 16px 40px rgba(17,77,81,.10);
  transform: translateY(-2px);
}
body[data-refinement] .home-story-panel:focus-visible {
  outline: 3px solid #007e83;
  outline-offset: 5px;
}
@media (max-width: 760px) {
  body[data-refinement] .restored-brand-hero {
    margin: 0;
    grid-template-columns: 1fr;
  }
  body[data-refinement] .restored-brand-copy { padding: 40px 22px; }
  body[data-refinement] .restored-brand-hero > img {
    min-height: 0;
    aspect-ratio: 16/10;
  }
  body[data-refinement] .restored-brand-hero h1 { font-size: 37px; }
  body[data-refinement] .home-hero-intro p { font-size: 16px; line-height: 1.8; }
  body[data-refinement] .luxury-product-intro {
    padding: 58px 22px 30px;
    grid-template-columns: 1fr;
    gap: 28px;
  }
  body[data-refinement] .luxury-product-intro h2 { font-size: 34px; }
  body[data-refinement] .revaion-editorial-row {
    grid-template-columns: 1fr;
    gap: 28px;
    margin: 30px auto 66px;
    padding: 0 22px;
  }
  body[data-refinement] .home-brand-story {
    margin-bottom: 58px;
    padding: 0 18px;
  }
  body[data-refinement] .home-brand-story > header {
    margin-bottom: 30px;
    text-align: left;
  }
  body[data-refinement] .home-story-panel { grid-template-columns: 1fr; }
  body[data-refinement] .home-story-panel > img {
    min-height: 0;
    aspect-ratio: 16/10;
  }
  body[data-refinement] .home-story-panel.is-reversed > img { order: 0; }
  body[data-refinement] .home-story-panel > div { padding: 30px 24px; }
}
