/* A balanced image/text panel with equal breathing room on every edge. */
.div-block-23 {
  width: calc(100% - 60px);
  max-width: 1440px;
  margin: 60px auto;
  padding: 20px;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 24px;
  align-items: center;
  box-sizing: border-box;
}
.div-block-23 .home-section-wrap {
  width: 100%;
  min-width: 0;
  max-width: 620px;
  margin: 0 auto;
  padding: 0;
  align-self: center;
}
.div-block-23 .paragraph-5 { margin-bottom: 0; }
.div-block-23 > .image-7 {
  display: block;
  width: 100%;
  max-width: none;
  height: 100%;
  padding: 0;
  margin: 0;
  object-fit: cover;
  object-position: center;
  align-self: stretch;
  justify-self: center;
}
.div-block-23 .mobile-image { display: none; }

/* A centered two-by-two grid; both faces contribute to each card's height. */
.home-expect-section { margin: 0; }
.home-expect-section .section-3 {
  width: 100%;
  max-width: 1192px;
  margin: 0 auto;
  padding: 12px 36px 72px;
  box-sizing: border-box;
}
.home-expect-section .grid-4 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: none;
  grid-auto-flow: row;
  grid-auto-rows: 1fr;
  grid-template-areas: none;
  gap: 32px;
  width: 100%;
  margin: 0;
  padding: 0;
  align-items: stretch;
  justify-items: stretch;
}
.home-expect-section .expect-card {
  position: relative;
  width: 100%;
  min-width: 0;
  height: auto;
  min-height: 350px;
  margin: 0;
  padding: 0;
  perspective: 1200px;
  cursor: pointer;
  display: block;
}
.home-expect-section .card-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  width: 100%;
  height: 100%;
  min-height: 350px;
  position: relative;
  transform-style: preserve-3d;
  transition: transform .7s ease;
}
.home-expect-section .expect-card:hover .card-inner,
.home-expect-section .expect-card:focus-within .card-inner { transform: rotateY(180deg); }
.home-expect-section .card-front,
.home-expect-section .card-back {
  grid-area: 1 / 1;
  position: relative;
  inset: auto;
  width: 100%;
  min-width: 0;
  height: auto;
  padding: clamp(24px, 3vw, 40px);
  box-sizing: border-box;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  border: 3px solid #1b2a4a;
  border-radius: 6px;
  background: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.home-expect-section .card-front { transform: rotateY(0deg); }
.home-expect-section .card-back { transform: rotateY(180deg); border-color: #b88e23; }
.home-expect-section .card-front h1 {
  width: 100%;
  margin: 0;
  font-size: clamp(26px, 2.5vw, 34px);
  line-height: 1.2;
  word-break: normal;
  overflow-wrap: normal;
}
.home-expect-section .card-back p {
  width: 100%;
  margin: 0;
  font-size: clamp(16px, 1.4vw, 18px);
  line-height: 1.6;
}
@media screen and (max-width: 991px) {
  .div-block-23 { grid-template-columns: minmax(0, 1fr); }
  .div-block-23 > .image-7 { display: none; }
  .div-block-23 .mobile-image {
    display: block;
    width: 100%;
    max-width: 560px;
    height: auto;
    margin: 24px auto;
    padding: 0;
    object-fit: contain;
  }
}
@media screen and (max-width: 767px) {
  .div-block-23 { display: grid; width: calc(100% - 32px); margin: 32px auto; padding: 24px; }
  .home-expect-section .section-3 { padding: 12px 24px 48px; }
  .home-expect-section .grid-4 { grid-template-columns: minmax(0, 1fr); grid-auto-rows: auto; gap: 24px; max-width: 560px; margin: 0 auto; }
  .home-expect-section .expect-card { min-height: 0; perspective: none; cursor: default; }
  .home-expect-section .card-inner {
    display: block;
    height: auto;
    min-height: 0;
    transform: none !important;
    transform-style: flat;
    transition: none;
    border: 2px solid #b88e23;
    border-radius: 6px;
    background: #fff;
    padding: 28px 24px;
    box-sizing: border-box;
  }
  .home-expect-section .card-front,
  .home-expect-section .card-back {
    display: block;
    position: static;
    transform: none;
    backface-visibility: visible;
    -webkit-backface-visibility: visible;
    padding: 0;
    border: 0;
    background: transparent;
  }
  .home-expect-section .card-front { margin-bottom: 20px; }
  .home-expect-section .card-front h1 { font-size: 28px; }
  .home-expect-section .card-back p { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .home-expect-section .card-inner { transition: none; }
}

.div-block-23 .heading-20 { font-size: clamp(28px, 2.7vw, 36px); line-height: 1.25; }
.div-block-23 .paragraph-5 { padding-top: 12px; line-height: 1.65; }
