/* Brand-story entrance: official cover and editable text, shared with WordPress. */
.reference-about .brand-story-entry {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: minmax(0, .98fr) minmax(0, 1fr);
  align-items: center;
  gap: clamp(28px, 5vw, 76px);
  margin: 48px 3%;
  padding: clamp(40px, 5.8vw, 84px) 6%;
  overflow: hidden;
  border: 12px solid #eef2f6;
  border-radius: 44px;
  background: radial-gradient(ellipse at 100% 100%, #e5ebe454, transparent 45%),
    radial-gradient(ellipse at 0 0, #f1e9f452, transparent 42%), #fdfbf8;
  color: #3d4051;
  scroll-margin-top: 100px;
}
.brand-story-entry::before {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
  width: 660px;
  height: 160px;
  bottom: -108px;
  left: -170px;
  border: 1px solid #b7c7ba;
  border-radius: 50%;
  transform: rotate(14deg);
  opacity: .5;
}
.brand-story-entry .bse-anchor { position: absolute; top: 0; scroll-margin-top: 100px; }
.brand-story-entry .bse-copy { position: relative; min-width: 0; }
.reference-about .brand-story-entry .bse-label {
  margin: 0 0 24px;
  color: #89678d;
  font-family: 'Fufu Tilt', Arial, sans-serif !important;
  font-size: 14px;
  font-weight: 400 !important;
  line-height: 1.5;
  letter-spacing: .22em;
}
.reference-about .brand-story-entry h2 {
  margin: 0;
  font-size: clamp(30px, 3.35vw, 52px);
  line-height: 1.55;
  letter-spacing: -.025em;
  color: #3d4051;
  word-break: normal;
  overflow-wrap: anywhere;
}
.reference-about .brand-story-entry .bse-intro {
  margin: 22px 0 0;
  font-size: clamp(16px, 1.42vw, 22px);
  line-height: 1.9;
  color: #42495c;
}
.reference-about .brand-story-entry .bse-description {
  margin: 24px 0 0;
  font-size: 16px;
  line-height: 2;
  color: #62687a;
}
.brand-story-entry .bse-description span { display: inline-block; }
.brand-story-entry .bse-read {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  width: min(100%, 290px);
  min-height: 58px;
  box-sizing: border-box;
  margin-top: 30px;
  padding: 14px 32px;
  border-radius: 100px;
  background: linear-gradient(110deg, #704b73, #503655);
  color: #fff;
  box-shadow: 0 5px 12px #62416b20;
  font-family: 'Fufu Noto', sans-serif;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.6;
  text-decoration: none;
  transition: transform .2s ease, box-shadow .2s ease;
}
.brand-story-entry .bse-read span { font-size: 24px; line-height: 1; }
.brand-story-entry .bse-cover {
  display: block;
  justify-self: center;
  width: 100%;
  max-width: 560px;
  min-width: 0;
  background: #fff;
  border: 1px solid #e4e0d6;
  box-shadow: 0 24px 38px -16px #67513b55, 0 3px 9px #67513b20;
  transition: transform .25s ease;
}
.brand-story-entry .bse-cover img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  border-radius: 0;
  object-fit: contain;
  mix-blend-mode: normal;
}
.brand-story-entry a:focus-visible { outline: 3px solid #86669b; outline-offset: 6px; }
@media (hover: hover) {
  .brand-story-entry .bse-read:hover { transform: translateY(-3px); box-shadow: 0 9px 18px #62416b30; }
  .brand-story-entry .bse-cover:hover { transform: translateY(-4px); }
}
@media (max-width: 800px) {
  .reference-about .brand-story-entry {
    grid-template-columns: minmax(0, 1fr);
    gap: 36px;
    padding: 36px 7% 46px;
    border-width: 8px;
    border-radius: 30px;
    margin: 30px 3%;
  }
  .reference-about .brand-story-entry h2 { font-size: clamp(25px, 5.5vw, 40px); }
  .reference-about .brand-story-entry .bse-label { margin-bottom: 18px; }
  .reference-about .brand-story-entry .bse-intro { margin-top: 18px; }
  .reference-about .brand-story-entry .bse-description { margin-top: 16px; }
  .brand-story-entry .bse-read { margin-top: 24px; }
  .brand-story-entry .bse-cover { max-width: 450px; }
}
@media (prefers-reduced-motion: reduce) {
  .brand-story-entry .bse-read, .brand-story-entry .bse-cover { transition: none; }
}
